Changeset 623 for WorldVistAEHR/trunk/r/CLINICAL_REMINDERS-PXRM/PXRMETM.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/PXRMETM.m
r613 r623 1 PXRMETM ; SLC/PKR/PJH - Extract/Transmission Management ;09/06/2007 2 ;;2.0;CLINICAL REMINDERS;**4,6**;Feb 04, 2005;Build 123 3 ; 4 ;Main entry point for PXRM EXTRACT MANAGEMENT 5 START N PXRMDONE,VALMBCK,VALMCNT,VALMSG,X,XMZ,XQORM,XQORNOD 6 S X="IORESET" 7 D ENDR^%ZISS 8 S VALMCNT=0 9 D EN^VALM("PXRM EXTRACT MANAGEMENT") 10 W IORESET 11 D KILL^%ZISS 12 Q 13 ; 14 BLDLIST ;Build workfile 15 K ^TMP("PXRMETM",$J) 16 N IEN,IND,PLIST 17 D LIST("PXRMETM",.VALMCNT) 18 Q 19 ; 20 ENTRY ;Entry code 21 D BLDLIST,XQORM 22 Q 23 ; 24 EXIT ;Exit code 25 K ^TMP("PXRMETM",$J) 26 K ^TMP("PXRMETMH",$J) 27 D CLEAN^VALM10 28 D FULL^VALM1 29 S VALMBCK="Q" 30 Q 31 ; 32 FMT(NUMBER,NAME,CLASS) ;Format entry number, name 33 ;and date packed. 34 N TCLASS,TEMP,TNAME,TSOURCE 35 S TEMP=$$RJ^XLFSTR(NUMBER,5," ") 36 S TNAME=$E(NAME,1,46) 37 S TEMP=TEMP_" "_$$LJ^XLFSTR(TNAME,60," ") 38 S TCLASS=$S(CLASS="N":"NATIONAL",CLASS="V":"VISN",1:"LOCAL") 39 S TEMP=TEMP_" "_TCLASS 40 Q TEMP 41 ; 42 GEN ;Ad hoc report option 43 ;Reset Screen Mode 44 W IORESET 45 ; 46 N IND,LISTIEN,VALMY 47 D EN^VALM2(XQORNOD(0)) 48 ;If there is no list quit. 49 I '$D(VALMY) Q 50 S PXRMDONE=0 51 S IND="" 52 F S IND=$O(VALMY(IND)) Q:(+IND=0)!(PXRMDONE) D 53 .;Get the ien. 54 .S LISTIEN=^TMP("PXRMETM",$J,"SEL",IND) 55 .D GENSEL(LISTIEN) 56 ; 57 S VALMBCK="R" 58 Q 59 ; 60 GENSEL(IEN) ;Report for selected extract definition 61 N ANS,BEGIN,END,RTN,TEXT 62 D DATES^PXRMEUT(.BEGIN,.END,"Report") 63 ;Options 64 S RTN="PXRMETM",TEXT="Run compliance report for this period" 65 S ANS=$$ASKYN^PXRMEUT("N",TEXT,RTN,1) Q:'ANS Q:$D(DUOUT)!$D(DTOUT) 66 ;Print Report 67 D ADHOC^PXRMETCO(IEN,BEGIN,END) 68 Q 69 ; 70 HDR ; Header code 71 S VALMHDR(1)="Available Extract Definitions:" 72 S VALMSG="+ Next Screen - Prev Screen ?? More Actions" 73 Q 74 ; 75 HELP(CALL) ;General help text routine 76 N HTEXT 77 I CALL=1 D 78 .S HTEXT(1)="Select EDM to edit/display extract definitions.\\" 79 .S HTEXT(2)="Select VSE to view previous extracts or" 80 .S HTEXT(3)="initiate a manual extract or transmission." 81 D HELP^PXRMEUT(.HTEXT) 82 Q 83 ; 84 HLIST ;Extract History 85 N IND,LISTIEN,VALMY 86 D EN^VALM2(XQORNOD(0)) 87 ;If there is no list quit. 88 I '$D(VALMY) Q 89 S PXRMDONE=0 90 S IND="" 91 F S IND=$O(VALMY(IND)) Q:(+IND=0)!(PXRMDONE) D 92 .;Get the ien. 93 .S LISTIEN=^TMP("PXRMETM",$J,"SEL",IND) 94 .D START^PXRMETH(LISTIEN) 95 S VALMBCK="R" 96 Q 97 ; 98 HLP ;Help code 99 N ORU,ORUPRMT,SUB,XQORM 100 S SUB="PXRMETMH" 101 D EN^VALM("PXRM EXTRACT HELP") 102 Q 103 ; 104 INIT ;Init 105 S VALMCNT=0 106 Q 107 ; 108 LIST(NODE,VALMCNT) ;Build a list of extract definition entries. 109 N EPCLASS,IND,FNAME,NAME 110 ;Build the list in alphabetical order. 111 S VALMCNT=0 112 S NAME="" 113 F S NAME=$O(^PXRM(810.2,"B",NAME)) Q:NAME="" D 114 .S IND=$O(^PXRM(810.2,"B",NAME,"")) Q:'IND 115 .S FNAME=$P($G(^PXRM(810.2,IND,0)),U) 116 .S EPCLASS=$P($G(^PXRM(810.2,IND,100)),U) 117 .S VALMCNT=VALMCNT+1 118 .S ^TMP(NODE,$J,VALMCNT,0)=$$FMT(VALMCNT,FNAME,EPCLASS) 119 .S ^TMP(NODE,$J,"IDX",VALMCNT,VALMCNT)="" 120 .S ^TMP(NODE,$J,"SEL",VALMCNT)=IND 121 Q 122 ; 123 PEXIT ;Protocol exit code 124 S VALMSG="+ Next Screen - Prev Screen ?? More Actions" 125 ;Reset after page up/down etc 126 D XQORM 127 Q 128 ; 129 PLIST ;Extract Definition Inquiry 130 N IND,EPIEN,VALMY 131 D EN^VALM2(XQORNOD(0)) 132 ;If there is no list quit. 133 I '$D(VALMY) Q 134 S PXRMDONE=0 135 S IND="" 136 F S IND=$O(VALMY(IND)) Q:(+IND=0)!(PXRMDONE) D 137 .;Get the ien. 138 .S EPIEN=^TMP("PXRMETM",$J,"SEL",IND) 139 .D START^PXRMEPED(EPIEN) 140 S VALMBCK="R" 141 Q 142 ; 143 XQORM S XQORM("#")=$O(^ORD(101,"B","PXRM EXTRACT MANAGEMENT SELECT ENTRY",0))_U_"1:"_VALMCNT 144 S XQORM("A")="Select Item: " 145 Q 146 ; 147 XSEL ;PXRM EXTRACT MANAGEMENT SELECT ENTRY validation 148 N EDIEN,SEL 149 S SEL=$P(XQORNOD(0),"=",2) 150 ;Remove trailing , 151 I $E(SEL,$L(SEL))="," S SEL=$E(SEL,1,$L(SEL)-1) 152 ;Invalid selection 153 I SEL["," D Q 154 .W $C(7),!,"Only one item number allowed." H 2 155 .S VALMBCK="R" 156 I ('SEL)!(SEL>VALMCNT)!('$D(@VALMAR@("SEL",SEL))) D Q 157 .W $C(7),!,SEL_" is not a valid item number." H 2 158 .S VALMBCK="R" 159 ; 160 ;Get the list ien. 161 S EDIEN=^TMP("PXRMETM",$J,"SEL",SEL) 162 ; 163 ;Full screen mode 164 D FULL^VALM1 165 ; 166 ;Options 167 N X,Y,DIR,OPTION K DIROUT,DIRUT,DTOUT,DUOUT 168 S DIR(0)="SBM"_U_"EDM:Extract Definition Management;" 169 S DIR(0)=DIR(0)_"VSE:Examine/Schedule Extract;" 170 S DIR("A")="Select Action" 171 S DIR("B")="VSE" 172 S DIR("?")="Select from the codes displayed. For detailed help type ??" 173 S DIR("??")=U_"D HELP^PXRMETM(1)" 174 D ^DIR K DIR 175 I $D(DIROUT) S DTOUT=1 176 I $D(DTOUT)!($D(DUOUT)) S VALMBCK="R" Q 177 S OPTION=Y 178 ; 179 ;Display Extract Definitions 180 I OPTION="EDM" D START^PXRMEPED(EDIEN) 181 ; 182 ;Examine/Run Extract 183 I OPTION="VSE" D START^PXRMETH(EDIEN) 184 ; 185 ;Examine/Run Extract 186 I OPTION="ERE" D GENSEL(EDIEN) 187 ; 188 S VALMBCK="R" 189 Q 190 ; 1 PXRMETM ; SLC/PKR/PJH - Extract/Transmission Management ;05/15/2006 2 ;;2.0;CLINICAL REMINDERS;**4**;Feb 04, 2005;Build 21 3 ; 4 ;Main entry point for PXRM EXTRACT MANAGEMENT 5 START N PXRMDONE,VALMBCK,VALMCNT,VALMSG,X,XMZ,XQORM,XQORNOD 6 S X="IORESET" 7 D ENDR^%ZISS 8 S VALMCNT=0 9 D EN^VALM("PXRM EXTRACT MANAGEMENT") 10 W IORESET 11 D KILL^%ZISS 12 Q 13 ; 14 BLDLIST ;Build workfile 15 K ^TMP("PXRMETM",$J) 16 N IEN,IND,PLIST 17 D LIST(.PLIST,.IEN) 18 M ^TMP("PXRMETM",$J)=PLIST 19 S VALMCNT=PLIST("VALMCNT") 20 F IND=1:1:VALMCNT D 21 .S ^TMP("PXRMETM",$J,"IDX",IND,IND)=IEN(IND) 22 Q 23 ; 24 LIST(RLIST,IEN) ;Build a list of extract definition entries. 25 N EPCLASS,IND,FNAME,NAME 26 ;Build the list in alphabetical order. 27 S VALMCNT=0 28 S NAME="" 29 F S NAME=$O(^PXRM(810.2,"B",NAME)) Q:NAME="" D 30 .S IND=$O(^PXRM(810.2,"B",NAME,"")) Q:'IND 31 .S FNAME=$P($G(^PXRM(810.2,IND,0)),U) 32 .S EPCLASS=$P($G(^PXRM(810.2,IND,100)),U) 33 .S VALMCNT=VALMCNT+1 34 .S RLIST(VALMCNT,0)=$$FRE(VALMCNT,FNAME,EPCLASS) 35 .S IEN(VALMCNT)=IND 36 S RLIST("VALMCNT")=VALMCNT 37 Q 38 ; 39 FRE(NUMBER,NAME,CLASS) ;Format entry number, name 40 ;and date packed. 41 N TCLASS,TEMP,TNAME,TSOURCE 42 S TEMP=$$RJ^XLFSTR(NUMBER,5," ") 43 S TNAME=$E(NAME,1,46) 44 S TEMP=TEMP_" "_$$LJ^XLFSTR(TNAME,60," ") 45 S TCLASS=$S(CLASS="N":"NATIONAL",CLASS="V":"VISN",1:"LOCAL") 46 S TEMP=TEMP_" "_TCLASS 47 Q TEMP 48 ; 49 ENTRY ;Entry code 50 D BLDLIST,XQORM 51 Q 52 ; 53 EXIT ;Exit code 54 K ^TMP("PXRMETM",$J) 55 K ^TMP("PXRMETMH",$J) 56 D CLEAN^VALM10 57 D FULL^VALM1 58 S VALMBCK="Q" 59 Q 60 ; 61 HDR ; Header code 62 S VALMHDR(1)="Available Extract Definitions:" 63 S VALMSG="+ Next Screen - Prev Screen ?? More Actions" 64 Q 65 ; 66 HLP ;Help code 67 N ORU,ORUPRMT,SUB,XQORM 68 S SUB="PXRMETMH" 69 D EN^VALM("PXRM EXTRACT HELP") 70 Q 71 ; 72 INIT ;Init 73 S VALMCNT=0 74 Q 75 ; 76 PEXIT ;Protocol exit code 77 S VALMSG="+ Next Screen - Prev Screen ?? More Actions" 78 ;Reset after page up/down etc 79 D XQORM 80 Q 81 ; 82 XQORM S XQORM("#")=$O(^ORD(101,"B","PXRM EXTRACT MANAGEMENT SELECT ENTRY",0))_U_"1:"_VALMCNT 83 S XQORM("A")="Select Item: " 84 Q 85 ; 86 XSEL ;PXRM EXTRACT MANAGEMENT SELECT ENTRY validation 87 N SEL,IEN 88 S SEL=$P(XQORNOD(0),"=",2) 89 ;Remove trailing , 90 I $E(SEL,$L(SEL))="," S SEL=$E(SEL,1,$L(SEL)-1) 91 ;Invalid selection 92 I SEL["," D Q 93 .W $C(7),!,"Only one item number allowed." H 2 94 .S VALMBCK="R" 95 I ('SEL)!(SEL>VALMCNT)!('$D(@VALMAR@("IDX",SEL))) D Q 96 .W $C(7),!,SEL_" is not a valid item number." H 2 97 .S VALMBCK="R" 98 ; 99 ;Get the list ien. 100 S IEN=^TMP("PXRMETM",$J,"IDX",SEL,SEL) 101 ; 102 ;Full screen mode 103 D FULL^VALM1 104 ; 105 ;Options 106 N X,Y,DIR,OPTION K DIROUT,DIRUT,DTOUT,DUOUT 107 S DIR(0)="SBM"_U_"EDM:Extract Definition Management;" 108 S DIR(0)=DIR(0)_"VSE:Examine/Schedule Extract;" 109 S DIR("A")="Select Action" 110 S DIR("B")="VSE" 111 S DIR("?")="Select from the codes displayed. For detailed help type ??" 112 S DIR("??")=U_"D HELP^PXRMETM(1)" 113 D ^DIR K DIR 114 I $D(DIROUT) S DTOUT=1 115 I $D(DTOUT)!($D(DUOUT)) S VALMBCK="R" Q 116 S OPTION=Y 117 ; 118 ;Display Extract Definitions 119 I OPTION="EDM" D 120 .D START^PXRMEPED(IEN) 121 ; 122 ;Examine/Run Extract 123 I OPTION="VSE" D 124 .D START^PXRMETH(IEN) 125 ; 126 ;Examine/Run Extract 127 I OPTION="ERE" D 128 .D GENSEL(IEN) 129 ; 130 S VALMBCK="R" 131 Q 132 ; 133 HELP(CALL) ;General help text routine 134 N HTEXT 135 I CALL=1 D 136 .S HTEXT(1)="Select EDM to edit/display extract definitions." 137 .S HTEXT(2)="extract. Select VSE to view previous extracts or " 138 .S HTEXT(3)="initiate a manual extract or transmission." 139 ; 140 D HELP^PXRMEUT(.HTEXT) 141 Q 142 ; 143 GEN ;Ad hoc report option 144 ; 145 ;Reset Screen Mode 146 W IORESET 147 ; 148 N IND,LISTIEN,VALMY 149 D EN^VALM2(XQORNOD(0)) 150 ;If there is no list quit. 151 I '$D(VALMY) Q 152 S PXRMDONE=0 153 S IND="" 154 F S IND=$O(VALMY(IND)) Q:(+IND=0)!(PXRMDONE) D 155 .;Get the ien. 156 .S LISTIEN=^TMP("PXRMETM",$J,"IDX",IND,IND) 157 .D GENSEL(LISTIEN) 158 ; 159 S VALMBCK="R" 160 Q 161 ; 162 GENSEL(IEN) ;Report for selected extract definition 163 N ANS,BEGIN,END,RTN,TEXT 164 D DATES^PXRMEUT(.BEGIN,.END,"Report") 165 ;Options 166 S RTN="PXRMETM",TEXT="Run compliance report for this period" 167 S ANS=$$ASKYN^PXRMEUT("N",TEXT,RTN,1) Q:'ANS Q:$D(DUOUT)!$D(DTOUT) 168 ;Print Report 169 D ADHOC^PXRMETCO(IEN,BEGIN,END) 170 Q 171 ; 172 HLIST ;Extract History 173 N IND,LISTIEN,VALMY 174 D EN^VALM2(XQORNOD(0)) 175 ;If there is no list quit. 176 I '$D(VALMY) Q 177 S PXRMDONE=0 178 S IND="" 179 F S IND=$O(VALMY(IND)) Q:(+IND=0)!(PXRMDONE) D 180 .;Get the ien. 181 .S LISTIEN=^TMP("PXRMETM",$J,"IDX",IND,IND) 182 .D START^PXRMETH(LISTIEN) 183 S VALMBCK="R" 184 Q 185 ; 186 PLIST ;Extract Definition Inquiry 187 N IND,EPIEN,VALMY 188 D EN^VALM2(XQORNOD(0)) 189 ;If there is no list quit. 190 I '$D(VALMY) Q 191 S PXRMDONE=0 192 S IND="" 193 F S IND=$O(VALMY(IND)) Q:(+IND=0)!(PXRMDONE) D 194 .;Get the ien. 195 .S EPIEN=^TMP("PXRMETM",$J,"IDX",IND,IND) 196 .D START^PXRMEPED(EPIEN) 197 ; 198 S VALMBCK="R" 199 Q
Note:
See TracChangeset
for help on using the changeset viewer.