Changeset 623 for WorldVistAEHR/trunk/r/CLINICAL_REMINDERS-PXRM/PXRMLPHS.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/PXRMLPHS.m
r613 r623 1 PXRMLPHS ; SLC/PJH,PKR - Run Health Summaries from Patient List ;03/26/2007 2 ;;2.0;CLINICAL REMINDERS;**4,6**;Feb 04, 2005;Build 123 3 ; 4 ;External Ref DBIA #398 5 ; 6 HSA(LISTIEN) ;Run health summary for all patients on this patient list. 7 N HSIEN,PLNODE 8 ;Initialise 9 D FULL^VALM1 10 ;Reset screen mode 11 W IORESET 12 ; 13 ;Select Health Summary 14 D HSEL(.HSIEN) Q:$D(DTOUT)!$D(DUOUT) 15 ; 16 S PLNODE="PXRMLPHS"_$J_$$NOW^XLFDT 17 K ^XTMP(PLNODE) 18 S ^XTMP(PLNODE,0)=$$FMADD^XLFDT(DT,2)_U_DT_"HSI LIST" 19 D SORT(LISTIEN,PLNODE) 20 D QUE(HSIEN,PLNODE) 21 Q 22 ; 23 HSEL(IEN) ;Select Health Summary Type 24 N X,Y,DIC 25 HS1 S DIC=142,DIC(0)="QAEMZ" 26 S DIC("A")="Select HEALTH SUMMARY TYPE: " 27 W ! 28 D ^DIC 29 I X="" W !,"A health summary type name must be entered" G HS1 30 I X=(U_U) S DTOUT=1 31 I Y=-1 S DUOUT=1 32 I $D(DTOUT)!$D(DUOUT) Q 33 ;Return HS ien 34 S IEN=$P(Y,U) 35 Q 36 ; 37 HSI(PLNODE) ;Print health summary for selected patients. 38 N HSIEN 39 ;Initialise 40 D FULL^VALM1 41 ;Reset screen mode 42 W IORESET 43 ; 44 ;Select Health Summary 45 D HSEL(.HSIEN) Q:$D(DTOUT)!$D(DUOUT) 46 D QUE(HSIEN,PLNODE) 47 Q 48 ; 49 PRINT(HSIEN,PLNODE) ;Print HS for Patient List IEN 50 N DFN,DIROUT,SUB 51 ;Print HS for each patient 52 S SUB=0 53 F S SUB=$O(^XTMP(PLNODE,SUB)) Q:(SUB="")!$D(DIROUT) D 54 .S DFN=^XTMP(PLNODE,SUB) 55 .D ENX^GMTSDVR(DFN,HSIEN,"","") ; DBIA #398 56 ; 57 ;Clear workfile 58 K ^XTMP(PLNODE) 59 Q 60 ; 61 QUE(HSIEN,PLNODE) ;Determine whether the report should be queued. 62 N PXRMQUE,%ZIS,ZTDESC,ZTRTN,ZTSK,ZTSAVE 63 S %ZIS="M" 64 S ZTDESC="Patient List Health Summaries - print" 65 S ZTRTN="PRINT^PXRMLPHS(HSIEN,PLNODE)" 66 S ZTSAVE("HSIEN")="" 67 S ZTSAVE("PLNODE")="" 68 S PXRMQUE=$$DEVICE^PXRMXQUE(ZTRTN,ZTDESC,.ZTSAVE,.%ZIS,1) 69 S VALMBCK="R" 70 Q 71 ; 72 SORT(LISTIEN,PLNODE) ;Sort workfile as required 73 N DATA,DFN,IND,PNAME 74 ;Build the list in alphabetical order. 75 S IND=0 76 F S IND=$O(^PXRMXP(810.5,LISTIEN,30,IND)) Q:'IND D 77 .S DATA=$G(^PXRMXP(810.5,LISTIEN,30,IND,0)) Q:DATA="" 78 .S DFN=$P(DATA,U) Q:'DFN 79 .;DBIA #10035 80 .S PNAME=$P(^DPT(DFN,0),U,1) Q:PNAME="" 81 .S ^XTMP(PLNODE,PNAME)=DFN 82 Q 83 ; 1 PXRMLPHS ; SLC/PJH,PKR - Run Health Summaries from Patient List ;08/08/2005 2 ;;2.0;CLINICAL REMINDERS;**4**;Feb 04, 2005;Build 21 3 ; 4 ;External Ref DBIA #398 5 ; 6 HSA(LISTIEN) ;Run health summary for all patients on this patient list. 7 N HSIEN,PLNODE 8 ;Initialise 9 D FULL^VALM1 10 ;Reset screen mode 11 W IORESET 12 ; 13 ;Select Health Summary 14 D HSEL(.HSIEN) Q:$D(DTOUT)!$D(DUOUT) 15 ; 16 S PLNODE="PXRMLPHS"_$J_$$NOW^XLFDT 17 K ^XTMP(PLNODE) 18 S ^XTMP(PLNODE,0)=$$FMADD^XLFDT(DT,2)_U_DT_"HSI LIST" 19 D SORT(LISTIEN,PLNODE) 20 D QUE(HSIEN,PLNODE) 21 Q 22 ; 23 HSEL(IEN) ;Select Health Summary Type 24 N X,Y,DIC 25 HS1 S DIC=142,DIC(0)="QAEMZ" 26 S DIC("A")="Select HEALTH SUMMARY TYPE: " 27 W ! 28 D ^DIC 29 I X="" W !,"A health summary type name must be entered" G HS1 30 I X=(U_U) S DTOUT=1 31 I Y=-1 S DUOUT=1 32 I $D(DTOUT)!$D(DUOUT) Q 33 ;Return HS ien 34 S IEN=$P(Y,U) 35 Q 36 ; 37 HSI(PLNODE) ;Print health summary for selected patients. 38 N HSIEN 39 ;Initialise 40 D FULL^VALM1 41 ;Reset screen mode 42 W IORESET 43 ; 44 ;Select Health Summary 45 D HSEL(.HSIEN) Q:$D(DTOUT)!$D(DUOUT) 46 D QUE(HSIEN,PLNODE) 47 Q 48 ; 49 PRINT(HSIEN,PLNODE) ;Print HS for Patient List IEN 50 N DFN,DIROUT,SUB 51 ;Print HS for each patient 52 S SUB=0 53 F S SUB=$O(^XTMP(PLNODE,SUB)) Q:(SUB="")!$D(DIROUT) D 54 .S DFN=^XTMP(PLNODE,SUB) 55 .D ENX^GMTSDVR(DFN,HSIEN,"","") ; DBIA #398 56 ; 57 ;Clear workfile 58 K ^XTMP(PLNODE) 59 Q 60 ; 61 QUE(HSIEN,PLNODE) ;Determine whether the report should be queued. 62 N PXRMQUE,RETZTSK,%ZIS,ZTDESC,ZTRTN,ZTSK,ZTSAVE 63 S %ZIS="M" 64 S ZTDESC="Patient List Health Summaries - print" 65 S ZTRTN="PRINT^PXRMLPHS(HSIEN,PLNODE)" 66 S ZTSAVE("HSIEN")="" 67 S ZTSAVE("PLNODE")="" 68 S RETZTSK=1 69 S PXRMQUE=$$DEVICE^PXRMXQUE(ZTRTN,ZTDESC,.ZTSAVE,.%ZIS,.RETZTSK) 70 S VALMBCK="R" 71 Q 72 ; 73 SORT(LISTIEN,PLNODE) ;Sort workfile as required 74 N DATA,DFN,IND,PNAME 75 ;Build the list in alphabetical order. 76 S IND=0 77 F S IND=$O(^PXRMXP(810.5,LISTIEN,30,IND)) Q:'IND D 78 .S DATA=$G(^PXRMXP(810.5,LISTIEN,30,IND,0)) Q:DATA="" 79 .S DFN=$P(DATA,U) Q:'DFN 80 .;DBIA #10035 81 .S PNAME=$P(^DPT(DFN,0),U,1) Q:PNAME="" 82 .S ^XTMP(PLNODE,PNAME)=DFN 83 Q 84 ;
Note:
See TracChangeset
for help on using the changeset viewer.