Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Routine: PXRMACT

PXRMACT.m

Go to the documentation of this file.
  1. PXRMACT ; SLC/PJH - Activity File Update ;06/03/1999
  1. ;;2.0;CLINICAL REMINDERS;;Feb 04, 2005
  1. ;
  1. ; This is a bit ruff 'cos we don't have a file to update yet
  1. ;
  1. ;Initialize fields
  1. START N PXRMITEM,DFN,ADATE,ATYPE,RDATE,EDATE,STATUS,NDATE,ROLL,EPROC,AEDATE
  1. N PSEX,AAGE,DOD,AFAC,HLOC,SPEC,CSTOP,CSEX,MINAGE,MAXAGE
  1. ;
  1. ;Get patient cache items
  1. D CACHE
  1. ;Get finding items
  1. D FIND
  1. ;Update Activity file
  1. D UPD
  1. ;
  1. END Q
  1. ;
  1. ;Get Cache items
  1. ;---------------
  1. CACHE Q
  1. ;
  1. ;Get Finding Items
  1. FIND Q
  1. ;
  1. ;Create activity record - file #801 ??
  1. ;-------------------------------------
  1. UPD N ARRAY,DATA,DESC,IEN,STRING,SUB,TAG,FDA,FDAIEN
  1. ;Get each reminder in turn
  1. S STRING="Building activity record"
  1. D BMES^XPDUTL(STRING)
  1. ;Build FDA array
  1. K FDAIEN,FDA
  1. S FDA(801,"+1,",.01)=PXRMITEM
  1. S FDA(801,"+1,",.02)=DFN
  1. S FDA(801,"+1,",.03)=ADATE
  1. S FDA(801,"+1,",.04)=ATYPE
  1. S FDA(801,"+1,",.05)=RDATE
  1. S FDA(801,"+1,",.06)=EDATE
  1. S FDA(801,"+1,",.07)=STATUS
  1. S FDA(801,"+1,",.08)=NDATE
  1. S FDA(801,"+1,",.09)=ROLL
  1. S FDA(801,"+1,",.1)=EPROC
  1. S FDA(801,"+1,",.11)=AEDATE
  1. S FDA(801,"+1,",2.01)=PSEX
  1. S FDA(801,"+1,",2.02)=AAGE
  1. S FDA(801,"+1,",2.03)=DOD
  1. S FDA(801,"+1,",4.01)=AFAC
  1. S FDA(801,"+1,",4.02)=HLOC
  1. S FDA(801,"+1,",4.03)=SPEC
  1. S FDA(801,"+1,",4.04)=CSTOP
  1. S FDA(801,"+1,",7.01)=CSEX
  1. S FDA(801,"+1,",7.02)=MINAGE
  1. S FDA(801,"+1,",7.03)=MAXAGE
  1. ;
  1. ;Store findings multiple(s)
  1. N CNT S CNT=0
  1. D MFDA(801.002,"?","?")
  1. D MFDA(801.002,"?","?")
  1. D MFDA(801.002,"?","?")
  1. D MFDA(801.002,"?","?")
  1. D MFDA(801.002,"?","?")
  1. ;
  1. S FDA(801,"+1,",200.1)="?"
  1. D UPDATE^DIE("","FDA","FDAIEN","MSG")
  1. I $D(MSG) D ERR
  1. Q
  1. ;
  1. MFDA(FILE,FIELD,DATA) ;
  1. I FIELD=".01" S CNT=CNT+1
  1. S FDA(FILE,"+"_CNT_",?1,",FIELD)=DATA
  1. Q
  1. ;
  1. ;Error Handler
  1. ;-------------
  1. ERR N ERROR,IC,REF
  1. S ERROR(1)="Error in UPDATE^DIE, needs further investigation"
  1. ;Move MSG into ERROR
  1. S REF="MSG"
  1. F IC=2:1 S REF=$Q(@REF) Q:REF="" S ERROR(IC)=REF_"="_@REF
  1. ;Screen message
  1. D BMES^XPDUTL(.ERROR)
  1. ;Mail Message - this should become a standard facility
  1. ;D ERR^PXRMPV1E(.ERROR)
  1. Q