Changeset 623 for WorldVistAEHR/trunk/r/CLINICAL_REMINDERS-PXRM/PXRMPDR.m
- Timestamp:
- Dec 4, 2009, 12:11:15 AM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
WorldVistAEHR/trunk/r/CLINICAL_REMINDERS-PXRM/PXRMPDR.m
r613 r623 1 PXRMPDR ;SLC/AGP,PKR - Patient List Demographic report main routine ;11/16/2007 2 ;;2.0;CLINICAL REMINDERS;**4,6**;Feb 04, 2005;Build 123 3 ; 4 EN(PLIEN) ; -- main entry point for PXRM PATIENT LIST DEMOGRAPHIC 5 N ARRAY,DC,DDATA,DELIM,DTOUT,DUOUT 6 W @IOF 7 K ^TMP("PXRMPLD",$J),^TMP("PXRMPLN",$J) 8 S DELIM=0 9 OPTION ; 10 W !,"Select the items to include on the report." 11 ADDSEL D ADDSEL^PXRMPDRS(.DDATA,"ADD") 12 I $D(DTOUT)!$D(DUOUT) Q 13 APPSEL D APPSEL^PXRMPDRS(.DDATA,"APP") 14 I $D(DTOUT)!$D(DUOUT) G ADDSEL 15 DEMSEL D DEMSEL^PXRMPDRS(.DDATA,"DEM") 16 I $D(DTOUT)!$D(DUOUT) G APPSEL 17 PFACSEL S DDATA("PFAC",0)=$$ASKYN^PXRMEUT("N","Include the patient's preferred facility") 18 I $D(DTOUT)!$D(DUOUT) G DEMSEL 19 S DDATA("PFAC","LEN")=$S(DDATA("PFAC",0)=1:1,1:0) 20 ELIGSEL D ELIGSEL^PXRMPDRS(.DDATA,"ELIG") 21 I $D(DTOUT)!$D(DUOUT) G PFACSEL 22 DATASEL D DATASEL^PXRMPDRS(PLIEN,.DDATA,"FIND") 23 I $D(DTOUT)!$D(DUOUT) G ELIGSEL 24 INPSEL D INPSEL^PXRMPDRS(.DDATA,"INP") 25 I $D(DTOUT)!$D(DUOUT) G DATASEL 26 REMDATA D REMSEL^PXRMPDRS(PLIEN,.DDATA,"REM") 27 I $D(DTOUT)!$D(DUOUT) G INPSEL 28 S DELIM=$$ASKYN^PXRMEUT("Y","Delimited Report:") 29 I $D(DTOUT)!$D(DUOUT) G REMDATA 30 S DC=$S(DELIM:$$DELIMSEL^PXRMXSD,1:U) 31 I $D(DTOUT)!$D(DUOUT) G OPTION 32 DEVICE ; 33 N DESC,DIR,PXRMQUE,RTN,SAVE,%ZIS 34 S %ZIS="M" 35 S DESC="Patient List Demographic Report" 36 S RTN="GETPDATA^PXRMPDR(DELIM,DC,PLIEN,.DDATA)" 37 S SAVE("DELIM")="",SAVE("DC")="",SAVE("PLIEN")="" 38 S SAVE("DDATA(")="" 39 S PXRMQUE=$$DEVICE^PXRMXQUE(RTN,DESC,.SAVE,.%ZIS,1) 40 I PXRMQUE'="" G EXIT 41 I $D(DTOUT)!$D(DUOUT) G EXIT 42 S DIR(0)="E" D ^DIR 43 EXIT D KVA^VADPT 44 K ^TMP("PXRMPLD",$J),^TMP("PXRMPLN",$J) 45 Q 46 ; 47 GETPDATA(DELIM,DC,PLIEN,DDATA) ; 48 N DATA,DATE,DCREAT,DFN,DTYPE,ERRMSG 49 N GETADD,GETAPP,GETDEM,GETELIG,GETFIND,GETINP,GETREM 50 N IEN,IND,JND,KND,LND 51 N LISTNAME,PIECE 52 N PDATA,PNAME,RIEN,TDATA 53 K ^TMP("PXRMPD",$J) 54 S LISTNAME=$P(^PXRMXP(810.5,PLIEN,0),U,1) 55 S DCREAT=$P(^PXRMXP(810.5,PLIEN,0),U,4) 56 S GETDEM=$S(DDATA("DEM","LEN")>0:1,1:0) 57 S GETADD=$S(DDATA("ADD","LEN")>0:1,1:0) 58 S GETINP=$S(DDATA("INP","LEN")>0:1,1:0) 59 S GETELIG=$S(DDATA("ELIG","LEN")>0:1,1:0) 60 S GETAPP=$S(DDATA("APP","LEN")>0:1,1:0) 61 S GETFIND=$S(DDATA("FIND","LEN")>0:1,1:0) 62 S GETREM=$S(DDATA("REM","LEN")>0:1,1:0) 63 S IEN=0 64 F S IEN=+$O(^PXRMXP(810.5,PLIEN,30,IEN)) Q:IEN=0 D 65 . S DFN=$P(^PXRMXP(810.5,PLIEN,30,IEN,0),U,1) I DFN="" Q 66 .;#DBIA 10035 67 . S PNAME=$P($G(^DPT(DFN,0)),U,1) 68 . I PNAME="" S PNAME="UNDEFINED"_DFN 69 . S ^TMP("PXRMPLN",$J,PNAME,DFN)="" 70 . S PDATA="" 71 . I GETDEM D 72 .. N VADM 73 .. D DEM^VADPT 74 .. F IND=1:1:DDATA("DEM","LEN") D 75 ... S JND=$P(DDATA("DEM"),",",IND) 76 ... S KND=0 77 ... F S KND=$O(DDATA("DEM",JND,KND)) Q:KND="" D 78 .... S PIECE=$P(DDATA("DEM",JND,KND),U,2) 79 .... S TDATA=$P(VADM(KND),U,PIECE) 80 .... S LND="" 81 .... F S LND=$O(VADM(KND,LND)) Q:LND="" D 82 ..... I TDATA'="" S TDATA=TDATA_"~" 83 ..... S TDATA=TDATA_$P(VADM(KND,LND),U,PIECE) 84 .... I KND=2,'DDATA("DEM","FULLSSN") S TDATA=$E(TDATA,8,11) 85 .... S $P(PDATA,U,KND)=TDATA 86 .. I PDATA'="" S ^TMP("PXRMPLD",$J,DFN,"DEM")=PDATA,PDATA="" 87 . I DDATA("PFAC",0)=1 D 88 ..;DBIA #1850 89 .. S TDATA=$$GET1^DIQ(2,DFN,27.02,"E","","ERRMSG") 90 .. I TDATA="" S TDATA="NONE" 91 .. S ^TMP("PXRMPLD",$J,DFN,"PFAC")=TDATA 92 . I GETADD D 93 .. N VAPA 94 .. D ADD^VADPT 95 .. F IND=1:1:DDATA("ADD","LEN") D 96 ... S JND=$P(DDATA("ADD"),",",IND) 97 ... S KND=0 98 ... F S KND=$O(DDATA("ADD",JND,KND)) Q:KND="" D 99 .... S PIECE=$P(DDATA("ADD",JND,KND),U,2) 100 .... S TDATA=$P(VAPA(KND),U,PIECE) 101 .... S $P(PDATA,U,KND)=TDATA 102 .. I PDATA'="" S ^TMP("PXRMPLD",$J,DFN,"ADD")=PDATA,PDATA="" 103 . I GETINP D 104 .. N VAIP 105 .. D INP^VADPT 106 .. F IND=1:1:DDATA("INP","LEN") D 107 ... S JND=$P(DDATA("INP"),",",IND) 108 ... S KND=0 109 ... F S KND=$O(DDATA("INP",JND,KND)) Q:KND="" D 110 .... S PIECE=$P(DDATA("INP",JND,KND),U,2) 111 .... S TDATA=$P(VAIN(KND),U,PIECE) 112 .... S $P(PDATA,U,KND)=TDATA 113 .. I PDATA'="" S ^TMP("PXRMPLD",$J,DFN,"INP")=PDATA,PDATA="" 114 . I GETELIG D 115 .. N VAEL 116 .. D ELIG^VADPT 117 .. F IND=1:1:DDATA("ELIG","LEN") D 118 ... S JND=$P(DDATA("ELIG"),",",IND) 119 ... S KND=0 120 ... F S KND=$O(DDATA("ELIG",JND,KND)) Q:KND="" D 121 .... S PIECE=$P(DDATA("ELIG",JND,KND),U,2) 122 .... S TDATA=$P(VAEL(KND),U,PIECE) 123 .... I KND=4 S TDATA=$S(TDATA=1:"YES",1:"NO") 124 .... S $P(PDATA,U,KND)=TDATA 125 .. I PDATA'="" S ^TMP("PXRMPLD",$J,DFN,"ELIG")=PDATA,PDATA="" 126 . D KVA^VADPT 127 . I GETREM D 128 .. S IND=0 129 .. F S IND=$O(DDATA("REM","IEN",IND)) Q:IND="" D 130 ... S PDATA=$G(^PXRMXP(810.5,PLIEN,30,IEN,"REM",IND,0)) 131 ... I PDATA="" Q 132 ... S RIEN=$P(PDATA,U,1) 133 ... S ^TMP("PXRMPLD",$J,DFN,"REM",RIEN)=PDATA,PDATA="" 134 . I GETFIND D 135 .. N DL 136 .. F IND=1:1:DDATA("FIND","LEN") D 137 ... S JND=$P(DDATA("FIND"),",",IND) 138 ... S DTYPE=DDATA("FIND",JND,JND) 139 ... S KND=$O(^PXRMXP(810.5,PLIEN,30,IEN,"DATA","B",DTYPE,"")) 140 ... S DL=$S(KND="":0,1:$L(^PXRMXP(810.5,PLIEN,30,IEN,"DATA",KND,0),U)) 141 ... S DATA=$S(KND="":"",1:$P(^PXRMXP(810.5,PLIEN,30,IEN,"DATA",KND,0),U,2,DL)) 142 ... S ^TMP("PXRMPLD",$J,DFN,"FIND",JND)=DATA 143 ;Get appointment data for all patients on the list. 144 I GETAPP D 145 . N ARRAY,COUNT 146 . S ARRAY(1)=DT,ARRAY(3)="I;R" 147 . S ARRAY(4)="^TMP($J,""PXRMPL""",ARRAY("FLDS")="" 148 . F IND=1:1:DDATA("APP","LEN") D 149 .. S JND=$P(DDATA("APP"),",",IND) 150 .. S KND=0 151 .. F S KND=$O(DDATA("APP",JND,KND)) Q:KND="" S ARRAY("FLDS")=ARRAY("FLDS")_KND_";" 152 . K ^TMP($J,"PXRMPL"),^TMP($J,"SDAMA301") 153 . S IND=0 154 . F S IND=+$O(^PXRMXP(810.5,PLIEN,30,IND)) Q:IND=0 D 155 .. S DFN=$P(^PXRMXP(810.5,PLIEN,30,IND,0),U,1) 156 .. I DFN'="" S ^TMP($J,"PXRMPL",DFN)="" 157 . S COUNT=$$SDAPI^SDAMA301(.ARRAY) 158 . I COUNT=-1 D Q 159 .. D APPERR^PXRMPDRS 160 .. S DDATA("APP","ERROR")="" 161 .. K ^TMP($J,"PXRMPL"),^TMP($J,"SDAMA301") 162 . F IND=1:1:COUNT D 163 .. S DFN="" 164 .. F S DFN=$O(^TMP($J,"SDAMA301",DFN)) Q:DFN="" D 165 ... S (JND,KND)=0 166 ... F S JND=$O(^TMP($J,"SDAMA301",DFN,JND)) Q:JND="" D 167 .... S DATE=0 168 .... F S DATE=$O(^TMP($J,"SDAMA301",DFN,JND,DATE)) Q:DATE="" D 169 ..... S KND=KND+1 170 ..... S TDATA=^TMP($J,"SDAMA301",DFN,JND,DATE) 171 ..... S PDATA=$$FMTE^XLFDT($P(TDATA,U,1)) 172 ..... S TDATA=$P(TDATA,U,2),TDATA=$P(TDATA,";",2) 173 ..... S PDATA=PDATA_U_TDATA 174 ..... S ^TMP("PXRMPLD",$J,DFN,"APP",KND)=PDATA 175 . K ^TMP($J,"PXRMPL"),^TMP($J,"SDAMA301") 176 I DELIM=1 D DELIMPR^PXRMPDRP(DC,PLIEN,.DDATA) 177 I DELIM=0 D REGPR^PXRMPDRP(PLIEN,.DDATA) 178 Q 179 ; 180 LENGTH(STR,STR1) ; 181 I ($L(STR)+$L(STR1))>245 W !,STR S STR=STR1 182 E S STR=STR_U_STR1,STR1="" 183 Q 184 ; 185 PAGE ; 186 I ($E(IOST,1,2)="C-")&(IO=IO(0)) D 187 .S DIR(0)="E" 188 .W ! 189 .D ^DIR K DIR 190 I $D(DUOUT)!($D(DTOUT))!($D(DIROUT)) S DONE=1 Q 191 W:$D(IOF) @IOF 192 S PAGE=PAGE+1 193 I ($E(IOST,1,2)="C-")&(IO=IO(0)) W @IOF 194 Q 195 ; 1 PXRMPDR ;SLC/AGP,PKR - Patient List Demographic report main routine ;07/17/2006 2 ;;2.0;CLINICAL REMINDERS;**4**;Feb 04, 2005;Build 21 3 ; 4 EN(PLIEN) ; -- main entry point for PXRM PATIENT LIST DEMOGRAPHIC 5 N ADDDATA,APPDATA,ARRAY,BACK,CNT,DC,DEMDATA,DELIM,DIC,DIR,DTOUT,DUOUT 6 N ELIGDATA,IEN,INPDATA 7 N FINDDATA,NAME,NODE,PFACDATA,PTIEN 8 N QUIT,REMDATA 9 N X,Y,YESNO 10 W @IOF 11 K ^TMP("PXRMPLD",$J),^TMP("PXRMPLN",$J) 12 S BACK=0,DELIM=0,QUIT=0 13 OPTION ; 14 W !,"Select the items to include on the report." 15 ADDSEL D ADDSEL^PXRMPDRS(.ADDDATA) 16 I $D(DTOUT)!$D(DUOUT) Q 17 APPSEL D APPSEL^PXRMPDRS(.APPDATA) 18 I $D(DTOUT)!$D(DUOUT) G ADDSEL 19 DEMSEL D DEMSEL^PXRMPDRS(.DEMDATA) 20 I $D(DTOUT)!$D(DUOUT) G APPSEL 21 PFACSEL S PFACDATA(0)=$$ASKYN^PXRMEUT("N","Include the patient's preferred facility") 22 I $D(DTOUT)!$D(DUOUT) G DEMSEL 23 S PFACDATA("LEN")=$S(PFACDATA(0)=1:1,1:0) 24 ELIGSEL D ELIGSEL^PXRMPDRS(.ELIGDATA) 25 I $D(DTOUT)!$D(DUOUT) G PFACSEL 26 DATASEL D DATASEL^PXRMPDRS(PLIEN,.FINDDATA) 27 I $D(DTOUT)!$D(DUOUT) G ELIGSEL 28 INPSEL D INPSEL^PXRMPDRS(.INPDATA) 29 I $D(DTOUT)!$D(DUOUT) G DATASEL 30 REMDATA D REMSEL^PXRMPDRS(PLIEN,.REMDATA) 31 I $D(DTOUT)!$D(DUOUT) G INPSEL 32 S DELIM=$$ASKYN^PXRMEUT("Y","Delimited Report:") 33 I $D(DTOUT)!$D(DUOUT) G REMDATA 34 I DELIM S DC=$$DELIMSEL^PXRMXSD 35 I $D(DTOUT)!$D(DUOUT) G OPTION 36 DEVICE ; 37 N DIR,PXRMQUE,%ZIS,ZTDESC,ZTRTN,ZTSAVE 38 S %ZIS="M" 39 S ZTDESC="Patient List Demographic" 40 S ZTRTN="GETDATA^PXRMPDR(DELIM,PLIEN,.DEMDATA,.PFACDATA,.ADDDATA,.INPDATA,.APPDATA,.FINDDATA,.REMDATA)" 41 S ZTSAVE("*")="" 42 S PXRMQUE=0 43 S PXRMQUE=$$DEVICE^PXRMXQUE(ZTRTN,ZTDESC,.ZTSAVE,.%ZIS,.ZTSK) 44 I PXRMQUE=1 G EXIT 45 I $D(DTOUT)!$D(DUOUT) G EXIT 46 ; 47 S DIR(0)="E" D ^DIR 48 EXIT D KVA^VADPT 49 K ^TMP("PXRMPLD",$J),^TMP("PXRMPLN",$J) 50 Q 51 ; 52 GETDATA(DELIM,PLIEN,DEMDATA,PFACDATA,ADDDATA,INPDATA,APPDATA,FINDDATA,REMDATA) ; 53 N DATA,DATE,DCREAT,DFN,DTYPE,ERRMSG 54 N GETADD,GETAPP,GETDEM,GETELIG,GETFIND,GETINP,GETREM 55 N IEN,IND,JND,KND,LND 56 N LISTNAME,PIECE 57 N PDATA,PNAME,RIEN,TDATA 58 K ^TMP("PXRMPD",$J) 59 S LISTNAME=$P(^PXRMXP(810.5,PLIEN,0),U,1) 60 S DCREAT=$P(^PXRMXP(810.5,PLIEN,0),U,4) 61 S GETDEM=$S(DEMDATA("LEN")>0:1,1:0) 62 S GETADD=$S(ADDDATA("LEN")>0:1,1:0) 63 S GETINP=$S(INPDATA("LEN")>0:1,1:0) 64 S GETELIG=$S(ELIGDATA("LEN")>0:1,1:0) 65 S GETAPP=$S(APPDATA("LEN")>0:1,1:0) 66 S GETFIND=$S(FINDDATA("LEN")>0:1,1:0) 67 S GETREM=$S(REMDATA("LEN")>0:1,1:0) 68 S IEN=0 69 F S IEN=+$O(^PXRMXP(810.5,PLIEN,30,IEN)) Q:IEN=0 D 70 . S DFN=$P(^PXRMXP(810.5,PLIEN,30,IEN,0),U,1) I DFN="" Q 71 .;#DBIA 10035 72 . S PNAME=$P($G(^DPT(DFN,0)),U,1) 73 . I PNAME="" S PNAME="UNDEFINED"_DFN 74 . S ^TMP("PXRMPLN",$J,PNAME,DFN)="" 75 . S PDATA="" 76 . I GETDEM D 77 .. N VADM 78 .. D DEM^VADPT 79 .. F IND=1:1:DEMDATA("LEN") D 80 ... S JND=$P(DEMDATA,",",IND) 81 ... S KND=0 82 ... F S KND=$O(DEMDATA(JND,KND)) Q:KND="" D 83 .... S PIECE=$P(DEMDATA(JND,KND),U,2) 84 .... S TDATA=$P(VADM(KND),U,PIECE) 85 .... S LND="" 86 .... F S LND=$O(VADM(KND,LND)) Q:LND="" D 87 ..... I TDATA'="" S TDATA=TDATA_"~" 88 ..... S TDATA=TDATA_$P(VADM(KND,LND),U,PIECE) 89 .... I KND=2,'DEMDATA("FULLSSN") S TDATA=$E(TDATA,8,11) 90 .... S $P(PDATA,U,KND)=TDATA 91 .. I PDATA'="" S ^TMP("PXRMPLD",$J,DFN,"DEMDATA")=PDATA,PDATA="" 92 . I PFACDATA(0)=1 D 93 ..;DBIA #1850 94 .. S TDATA=$$GET1^DIQ(2,DFN,27.02,"E","","ERRMSG") 95 .. I TDATA="" S TDATA="NONE" 96 .. S ^TMP("PXRMPLD",$J,DFN,"PFACDATA")=TDATA 97 . I GETADD D 98 .. N VAPA 99 .. D ADD^VADPT 100 .. F IND=1:1:ADDDATA("LEN") D 101 ... S JND=$P(ADDDATA,",",IND) 102 ... S KND=0 103 ... F S KND=$O(ADDDATA(JND,KND)) Q:KND="" D 104 .... S PIECE=$P(ADDDATA(JND,KND),U,2) 105 .... S TDATA=$P(VAPA(KND),U,PIECE) 106 .... S $P(PDATA,U,KND)=TDATA 107 .. I PDATA'="" S ^TMP("PXRMPLD",$J,DFN,"ADDDATA")=PDATA,PDATA="" 108 . I GETINP D 109 .. N VAIP 110 .. D INP^VADPT 111 .. F IND=1:1:INPDATA("LEN") D 112 ... S JND=$P(INPDATA,",",IND) 113 ... S KND=0 114 ... F S KND=$O(INPDATA(JND,KND)) Q:KND="" D 115 .... S PIECE=$P(INPDATA(JND,KND),U,2) 116 .... S TDATA=$P(VAIN(KND),U,PIECE) 117 .... S $P(PDATA,U,KND)=TDATA 118 .. I PDATA'="" S ^TMP("PXRMPLD",$J,DFN,"INPDATA")=PDATA,PDATA="" 119 . I GETELIG D 120 .. N VAEL 121 .. D ELIG^VADPT 122 .. F IND=1:1:ELIGDATA("LEN") D 123 ... S JND=$P(ELIGDATA,",",IND) 124 ... S KND=0 125 ... F S KND=$O(ELIGDATA(JND,KND)) Q:KND="" D 126 .... S PIECE=$P(ELIGDATA(JND,KND),U,2) 127 .... S TDATA=$P(VAEL(KND),U,PIECE) 128 .... I KND=4 S TDATA=$S(TDATA=1:"YES",1:"NO") 129 .... S $P(PDATA,U,KND)=TDATA 130 .. I PDATA'="" S ^TMP("PXRMPLD",$J,DFN,"ELIGDATA")=PDATA,PDATA="" 131 . D KVA^VADPT 132 . I GETREM D 133 .. S IND=0 134 .. F S IND=$O(REMDATA("IEN",IND)) Q:IND="" D 135 ... S PDATA=$G(^PXRMXP(810.5,PLIEN,30,IEN,"REM",IND,0)) 136 ... I PDATA="" Q 137 ... S RIEN=$P(PDATA,U,1) 138 ... S ^TMP("PXRMPLD",$J,DFN,"REMDATA",RIEN)=PDATA,PDATA="" 139 . I GETFIND D 140 .. N DL 141 .. F IND=1:1:FINDDATA("LEN") D 142 ... S JND=$P(FINDDATA,",",IND) 143 ... S DTYPE=FINDDATA(JND,JND) 144 ... S KND=$O(^PXRMXP(810.5,PLIEN,30,IEN,"DATA","B",DTYPE,"")) 145 ... S DL=$S(KND="":0,1:$L(^PXRMXP(810.5,PLIEN,30,IEN,"DATA",KND,0),U)) 146 ... S DATA=$S(KND="":"",1:$P(^PXRMXP(810.5,PLIEN,30,IEN,"DATA",KND,0),U,2,DL)) 147 ... S ^TMP("PXRMPLD",$J,DFN,"FINDDATA",JND)=DATA 148 ;Get appointment data for all patients on the list. 149 I GETAPP D 150 . N ARRAY,COUNT 151 . S ARRAY(1)=DT,ARRAY(3)="I;R" 152 . S ARRAY(4)="^TMP($J,""PXRMPL""",ARRAY("FLDS")="" 153 . F IND=1:1:APPDATA("LEN") D 154 .. S JND=$P(APPDATA,",",IND) 155 .. S KND=0 156 .. F S KND=$O(APPDATA(JND,KND)) Q:KND="" S ARRAY("FLDS")=ARRAY("FLDS")_KND_";" 157 . K ^TMP($J,"PXRMPL"),^TMP($J,"SDAMA301") 158 . S IND=0 159 . F S IND=+$O(^PXRMXP(810.5,PLIEN,30,IND)) Q:IND=0 D 160 .. S DFN=$P(^PXRMXP(810.5,PLIEN,30,IND,0),U,1) 161 .. I DFN'="" S ^TMP($J,"PXRMPL",DFN)="" 162 . S COUNT=$$SDAPI^SDAMA301(.ARRAY) 163 . I COUNT=-1 D Q 164 .. D APPERR^PXRMPDRS 165 .. S APPDATA("ERROR")="" 166 .. K ^TMP($J,"PXRMPL"),^TMP($J,"SDAMA301") 167 . F IND=1:1:COUNT D 168 .. S DFN="" 169 .. F S DFN=$O(^TMP($J,"SDAMA301",DFN)) Q:DFN="" D 170 ... S (JND,KND)=0 171 ... F S JND=$O(^TMP($J,"SDAMA301",DFN,JND)) Q:JND="" D 172 .... S DATE=0 173 .... F S DATE=$O(^TMP($J,"SDAMA301",DFN,JND,DATE)) Q:DATE="" D 174 ..... S KND=KND+1 175 ..... S TDATA=^TMP($J,"SDAMA301",DFN,JND,DATE) 176 ..... S PDATA=$$FMTE^XLFDT($P(TDATA,U,1)) 177 ..... S TDATA=$P(TDATA,U,2),TDATA=$P(TDATA,";",2) 178 ..... S PDATA=PDATA_U_TDATA 179 ..... S ^TMP("PXRMPLD",$J,DFN,"APPDATA",KND)=PDATA 180 . K ^TMP($J,"PXRMPL"),^TMP($J,"SDAMA301") 181 I DELIM=1 D DELIMPR^PXRMPDRP(DC,PLIEN,.ADDDATA,.APPDATA,.DEMDATA,.FINDDATA,.INPDATA,.PFACDATA,.REMDATA) 182 I DELIM=0 D REGPR^PXRMPDRP(PLIEN,.ADDDATA,.APPDATA,.DEMDATA,.FINDDATA,.INPDATA,.PFACDATA,.REMDATA) 183 Q 184 ; 185 LENGTH(STR,STR1) ; 186 I ($L(STR)+$L(STR1))>245 W !,STR S STR=STR1 187 E S STR=STR_U_STR1,STR1="" 188 Q 189 ; 190 PAGE ; 191 I ($E(IOST)="C")&(IO=IO(0)) D 192 .S DIR(0)="E" 193 .W ! 194 .D ^DIR K DIR 195 I $D(DUOUT)!($D(DTOUT))!($D(DIROUT)) S DONE=1 Q 196 W:$D(IOF) @IOF 197 S PAGE=PAGE+1 198 I $E(IOST)="C",IO=IO(0) W @IOF 199 Q 200 ;
Note:
See TracChangeset
for help on using the changeset viewer.