Ignore:
Timestamp:
Dec 4, 2009, 12:11:15 AM (14 years ago)
Author:
George Lilly
Message:

revised back to 6/30/08 version

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         ;
     1PXRMETM ; 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
     5START 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 ;
     14BLDLIST ;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 ;
     24LIST(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 ;
     39FRE(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 ;
     49ENTRY ;Entry code
     50 D BLDLIST,XQORM
     51 Q
     52 ;
     53EXIT ;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 ;
     61HDR ; Header code
     62 S VALMHDR(1)="Available Extract Definitions:"
     63 S VALMSG="+ Next Screen   - Prev Screen   ?? More Actions"
     64 Q
     65 ;
     66HLP ;Help code
     67 N ORU,ORUPRMT,SUB,XQORM
     68 S SUB="PXRMETMH"
     69 D EN^VALM("PXRM EXTRACT HELP")
     70 Q
     71 ;
     72INIT ;Init
     73 S VALMCNT=0
     74 Q
     75 ;
     76PEXIT ;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 ;
     82XQORM S XQORM("#")=$O(^ORD(101,"B","PXRM EXTRACT MANAGEMENT SELECT ENTRY",0))_U_"1:"_VALMCNT
     83 S XQORM("A")="Select Item: "
     84 Q
     85 ;
     86XSEL ;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 ;
     133HELP(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 ;
     143GEN ;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 ;
     162GENSEL(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 ;
     172HLIST ;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 ;
     186PLIST ;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.