Ignore:
Timestamp:
Dec 4, 2009, 8:26:01 PM (14 years ago)
Author:
George Lilly
Message:

WorldVistAEHR overlayed on FOIAVistA

Location:
FOIAVistA/tag/r
Files:
1 edited
1 copied

Legend:

Unmodified
Added
Removed
  • FOIAVistA/tag/r/CLINICAL_REMINDERS-PXRM/PXRMETT.m

    r628 r636  
    1 PXRMETT ; SLC/PJH - Extract Summary Display ;04/09/2007
    2  ;;2.0;CLINICAL REMINDERS;**4,6**;Feb 04, 2005;Build 123
    3  ;
    4  ;Main entry point for PXRM EXTRACT SUMMARY
     1PXRMETT ; SLC/PKR/PJH - Reminder Patient List Patients ;08/08/2006
     2 ;;2.0;CLINICAL REMINDERS;**4**;Feb 04, 2005;Build 21
     3 ;
     4 ;Main entry point for PXRM PATIENT LIST
    55START(IEN) N TOGGLE,TOGGLE1,VALMBCK,VALMBG,VALMCNT,VALMSG,X,XMZ,XQORM,XQORNOD
    66 S X="IORESET"
     
    1111 ;
    1212BLDLIST(IEN,FINDINGS,PATIENT) ;Build workfile.
    13  ;FINDINGS=1 means display finding totals
    1413 K ^TMP("PXRMETT",$J)
    1514 ;Build a list of extract summary totals.
    1615 N APPL,DATA,DUE,IND,LIST,NDUE,NAPPL,OLIST
    17  N PLCNT,PLIST,RIEN,RNAME,SARRAY,SEQ,SNAME,STATION,TOT
     16 N PLCNT,PLIST,RIEN,RNAME,SARRAY,SNAME,STATION,TOT
    1817 ;Build the list in alphabetical order.
    19  S VALMCNT=0,OLIST="",PLCNT=0
    20  S IND=0 F  S IND=$O(^PXRMXT(810.3,IEN,3,IND)) Q:IND'>0  D
     18 S IND=0,VALMCNT=0,OLIST="",PLCNT=0
     19 F  S IND=$O(^PXRMXT(810.3,IEN,3,IND)) Q:'IND  D
    2120 .S DATA=$G(^PXRMXT(810.3,IEN,3,IND,0)) Q:DATA=""
    2221 .S RIEN=$P(DATA,U,2) Q:'RIEN
    23  .S RNAME=$P(^PXD(811.9,RIEN,0),U,3)
    24  .I RNAME="" S RNAME=$P(^PXD(811.9,RIEN,0),U,1)
     22 .S RNAME=$P($G(^PXD(811.9,RIEN,0)),U)
    2523 .S STATION=$P(DATA,U,3),SARRAY=""
    2624 .D GETS^DIQ(4,STATION,99,"E","SARRAY")
     
    3129 .S PLIST=$P(DATA,U,4)
    3230 .I PLIST,PLIST'=OLIST D
    33  ..I PLCNT>0 D
    34  ...S VALMCNT=VALMCNT+1
    35  ...S ^TMP("PXRMETT",$J,VALMCNT,0)=""
    36  ...S ^TMP("PXRMETT",$J,"IDX",VALMCNT,PLCNT)=""
    3731 ..S PLNAME=$P($G(^PXRMXP(810.5,PLIST,0)),U),OLIST=PLIST Q:PLNAME=""
    3832 ..S VALMCNT=VALMCNT+1,PLCNT=PLCNT+1
     
    4034 ..S ^TMP("PXRMETT",$J,"SEL",PLCNT)=PLIST
    4135 ..S ^TMP("PXRMETT",$J,VALMCNT,0)=$$RJ^XLFSTR(PLCNT,4," ")_" "_PLNAME
     36 ..S VALMCNT=VALMCNT+1
     37 ..S ^TMP("PXRMETT",$J,VALMCNT,0)=""
     38 ..S ^TMP("PXRMETT",$J,"IDX",VALMCNT,PLCNT)=""
    4239 .S VALMCNT=VALMCNT+1
    4340 .S ^TMP("PXRMETT",$J,VALMCNT,0)=$$FRE(VALMCNT,RNAME,SNAME,TOT,APPL,NAPPL,DUE,NDUE)
     41 .S ^TMP("PXRMETT",$J,"IDX",VALMCNT,PLCNT)=""
     42 .S VALMCNT=VALMCNT+1
     43 .S ^TMP("PXRMETT",$J,VALMCNT,0)=""
    4444 .S ^TMP("PXRMETT",$J,"IDX",VALMCNT,PLCNT)=""
    4545 .;Finding totals
     
    4747 ;
    4848 S ^TMP("PXRMETT",$J,"VALMCNT")=VALMCNT
    49  Q
    50  ;
    51 ENTRY ;Entry code
    52  D BLDLIST(IEN,TOGGLE,TOGGLE1),XQORM
    53  Q
    54  ;
    55 EXIT ;Exit code
    56  K ^TMP("PXRMETT",$J)
    57  K ^TMP("PXRMETTH",$J)
    58  D CLEAN^VALM10
    59  D FULL^VALM1
    60  S VALMBCK="Q"
     49 ;M ^TMP("PXRMETT",$J)=LIST
    6150 Q
    6251 ;
     
    9180 Q
    9281 ;
     82PBLD(IEN,IND,SUB) ;
     83 N ARRAY,NAME,LEN,PCNT,DFN,CNT,USTR
     84 S VALMCNT=VALMCNT+1,CNT=0
     85 S PCNT=0 F  S PCNT=$O(^PXRMXT(810.3,IEN,3,IND,1,SUB,1,PCNT)) Q:PCNT'>0  D
     86 .S DFN=$P($G(^PXRMXT(810.3,IEN,3,IND,1,SUB,1,PCNT,0)),U) Q:DFN'>0
     87 .S NAME=$P($G(^DPT(DFN,0)),U)
     88 .S CNT=CNT+1,ARRAY(NAME)=""
     89 S ^TMP("PXRMETT",$J,VALMCNT,0)="     "_$$RJ^XLFSTR("Unique Applicable Patients ("_CNT_")",36," ")
     90 S USTR=$P($G(^TMP("PXRMETT",$J,VALMCNT,0)),"U"),LEN=$L(USTR)
     91 S ^TMP("PXRMETT",$J,"IDX",VALMCNT,PLCNT)=""
     92 S NAME="" F  S NAME=$O(ARRAY(NAME)) Q:NAME=""  D
     93 .S VALMCNT=VALMCNT+1
     94 .S ^TMP("PXRMETT",$J,VALMCNT,0)=USTR_$$LJ^XLFSTR(NAME,36," ")
     95 .S ^TMP("PXRMETT",$J,"IDX",VALMCNT,PLCNT)=""
     96 S VALMCNT=VALMCNT+1
     97 S ^TMP("PXRMETT",$J,VALMCNT,0)="  "
     98 S ^TMP("PXRMETT",$J,"IDX",VALMCNT,PLCNT)=""
     99 Q
     100 ;
    93101FLIST ;Toggle list with/without finding totals
    94102 S TOGGLE=(TOGGLE+1)#2
    95103 I TOGGLE=0 S TOGGLE1=0
     104 ;Rebuild Workfile
     105 D BLDLIST(IEN,TOGGLE,TOGGLE1)
     106 ;Refresh
     107 S VALMBCK="R",VALMBG=1
     108 Q
     109 ;
     110PLIST1 ;Toggle list with/without finding totals
     111 S TOGGLE1=(TOGGLE1+1)#2
    96112 ;Rebuild Workfile
    97113 D BLDLIST(IEN,TOGGLE,TOGGLE1)
     
    125141 Q TEMP
    126142 ;
     143ENTRY ;Entry code
     144 D BLDLIST(IEN,TOGGLE,TOGGLE1),XQORM
     145 Q
     146 ;
     147EXIT ;Exit code
     148 K ^TMP("PXRMETT",$J)
     149 K ^TMP("PXRMETTH",$J)
     150 D CLEAN^VALM10
     151 D FULL^VALM1
     152 S VALMBCK="Q"
     153 Q
     154 ;
    127155HDR ; Header code
    128156 S VALMHDR(1)="Extract Summary Name: "_$P($G(^PXRMXT(810.3,IEN,0)),U)
    129157 S VALMHDR(2)="      Extract Period: "_$$FMTE^XLFDT($P($G(^PXRMXT(810.3,IEN,0)),U,2),"5Z")_" - "_$$FMTE^XLFDT($P($G(^PXRMXT(810.3,IEN,0)),U,3),"5Z")
    130158 S VALMHDR(2)=VALMHDR(2)_"   Created: "_$$FMTE^XLFDT($P($G(^PXRMXT(810.3,IEN,0)),U,6),"5Z")
     159 ;S VALMHDR(3)=VALMHDR(3)_"        Transmitted: "_$$FMTE^XLFDT($P($G(^PXRMXT(810.3,IEN,0)),U,4),"5Z")
    131160 S VALMSG="+ Next Screen   - Prev Screen   ?? More Actions"
    132161 Q
     
    142171 Q
    143172 ;
    144 PBLD(IEN,IND,SUB) ;
    145  N ARRAY,NAME,LEN,PCNT,DFN,CNT,USTR
    146  S VALMCNT=VALMCNT+1,CNT=0
    147  S PCNT=0 F  S PCNT=$O(^PXRMXT(810.3,IEN,3,IND,1,SUB,1,PCNT)) Q:PCNT'>0  D
    148  .S DFN=$P($G(^PXRMXT(810.3,IEN,3,IND,1,SUB,1,PCNT,0)),U) Q:DFN'>0
    149  .S NAME=$P($G(^DPT(DFN,0)),U)
    150  .S CNT=CNT+1,ARRAY(NAME)=""
    151  S ^TMP("PXRMETT",$J,VALMCNT,0)="     "_$$RJ^XLFSTR("Unique Applicable Patients ("_CNT_")",36," ")
    152  S USTR=$P($G(^TMP("PXRMETT",$J,VALMCNT,0)),"U"),LEN=$L(USTR)
    153  S ^TMP("PXRMETT",$J,"IDX",VALMCNT,PLCNT)=""
    154  S NAME="" F  S NAME=$O(ARRAY(NAME)) Q:NAME=""  D
    155  .S VALMCNT=VALMCNT+1
    156  .S ^TMP("PXRMETT",$J,VALMCNT,0)=USTR_$$LJ^XLFSTR(NAME,36," ")
    157  .S ^TMP("PXRMETT",$J,"IDX",VALMCNT,PLCNT)=""
    158  S VALMCNT=VALMCNT+1
    159  S ^TMP("PXRMETT",$J,VALMCNT,0)="  "
    160  S ^TMP("PXRMETT",$J,"IDX",VALMCNT,PLCNT)=""
     173XQORM S XQORM("#")=$O(^ORD(101,"B","PXRM EXTRACT SUMMARY SELECT ENTRY",0))_U_"1:"_VALMCNT
     174 S XQORM("A")="Select Item: "
     175 Q
     176 ;
     177XSEL ;PXRM EXTRACT TOTALS SELECT ENTRY validation
     178 N SEL,PLIEN
     179 S SEL=$P(XQORNOD(0),"=",2)
     180 ;Remove trailing ,
     181 I $E(SEL,$L(SEL))="," S SEL=$E(SEL,1,$L(SEL)-1)
     182 ;Invalid selection
     183 I SEL["," D  Q
     184 .W $C(7),!,"Only one item number allowed." H 2
     185 .S VALMBCK="R"
     186 I ('SEL)!(SEL>VALMCNT)!('$D(@VALMAR@("SEL",SEL))) D  Q
     187 .W $C(7),!,SEL_" is not a valid item number." H 2
     188 .S VALMBCK="R"
     189 ;
     190 ;Get the list ien.
     191 S PLIEN=^TMP("PXRMETT",$J,"SEL",SEL)
     192 ;
     193 D START^PXRMLPP(PLIEN)
     194 ;
     195 S VALMBCK="R"
    161196 Q
    162197 ;
     
    178213 .S PLIEN=^TMP("PXRMETT",$J,"SEL",IND)
    179214 .D START^PXRMLPP(PLIEN)
     215 ;
    180216 S VALMBCK="R"
    181217 Q
    182  ;
    183 PLIST1 ;Toggle list with/without finding totals
    184  S TOGGLE1=(TOGGLE1+1)#2
    185  ;Rebuild Workfile
    186  D BLDLIST(IEN,TOGGLE,TOGGLE1)
    187  ;Refresh
    188  S VALMBCK="R",VALMBG=1
    189  Q
    190  ;
    191 XQORM S XQORM("#")=$O(^ORD(101,"B","PXRM EXTRACT SUMMARY SELECT ENTRY",0))_U_"1:"_VALMCNT
    192  S XQORM("A")="Select Item: "
    193  Q
    194  ;
    195 XSEL ;PXRM EXTRACT TOTALS SELECT ENTRY validation
    196  N SEL,PLIEN
    197  S SEL=$P(XQORNOD(0),"=",2)
    198  ;Remove trailing ,
    199  I $E(SEL,$L(SEL))="," S SEL=$E(SEL,1,$L(SEL)-1)
    200  ;Invalid selection
    201  I SEL["," D  Q
    202  .W $C(7),!,"Only one item number allowed." H 2
    203  .S VALMBCK="R"
    204  I ('SEL)!(SEL>VALMCNT)!('$D(@VALMAR@("SEL",SEL))) D  Q
    205  .W $C(7),!,SEL_" is not a valid item number." H 2
    206  .S VALMBCK="R"
    207  ;Get the list ien.
    208  S PLIEN=^TMP("PXRMETT",$J,"SEL",SEL)
    209  D START^PXRMLPP(PLIEN)
    210  S VALMBCK="R"
    211  Q
    212  ;
Note: See TracChangeset for help on using the changeset viewer.