1 | DGAINP3 ;ALB/RMO - Set-up Utility and Print Inpatient AMIS's 334-341 ; 27 DEC 89 1:37 pm
|
---|
2 | ;;5.3;Registration;;Aug 13, 1993
|
---|
3 | ;==============================================================
|
---|
4 | ;Set-up Utility Global to print inpatient AMIS segments for
|
---|
5 | ;a selected Month/Year.
|
---|
6 | ;
|
---|
7 | ;Input:
|
---|
8 | ; DGMYR -(Optional) Month/Year being printed in internal date format
|
---|
9 | ;==============================================================
|
---|
10 | EN ;Entry point for IMS and MAS Inpatient AMIS 334-341 Print
|
---|
11 | I '$D(DGMYR) S DIC("A")="Select AMIS 334-341 MONTH/YEAR: ",DIC="^DGAM(334,",DIC(0)="AEMQ" W ! D ^DIC K DIC G Q:Y<0 S DGMYR=+Y
|
---|
12 | S DGPGM="START^DGAINP3",DGVAR="DGMYR" D ZIS^DGUTQ G Q:POP
|
---|
13 | ;
|
---|
14 | START U IO K ^UTILITY($J,"DGAINP") F DGSEG=0:0 S DGSEG=$O(^DGAM(334,DGMYR,"SE",DGSEG)) Q:'DGSEG D DIV
|
---|
15 | D ^DGAINP4
|
---|
16 | ;
|
---|
17 | Q K ^UTILITY($J,"DGAINP"),%,DGAM,DGAM0,DGDIV,DGEND,DGMYR,DGPGM,DGSEG,DGVAR,I,POP W ! D CLOSE^DGUTQ
|
---|
18 | Q
|
---|
19 | ;
|
---|
20 | DIV ;Loop through AMIS Segments by Division to set the Utility Global
|
---|
21 | S DGEND=$S(DGSEG=334!(DGSEG=336):15,1:14)
|
---|
22 | F DGDIV=0:0 S DGDIV=$O(^DGAM(334,DGMYR,"SE",DGSEG,"D",DGDIV)) Q:'DGDIV I $D(^(DGDIV,0)) S DGAM0=^(0) D SET
|
---|
23 | Q
|
---|
24 | ;
|
---|
25 | SET ;Set Utility Global by Month/Year, Segment and Division
|
---|
26 | S DGAM="" F I=1:1:DGEND S $P(DGAM,"^",I)=0
|
---|
27 | I DGSEG=334 F I=1:1:DGEND S $P(DGAM,"^",I)=$S(I=12:+$P(DGAM0,"^",24),I=13:+$P(DGAM0,"^",I),I>13:+$P(DGAM0,"^",I+4),1:+$P(DGAM0,"^",I+1))
|
---|
28 | I DGSEG>334,DGSEG<342 F I=1:1:DGEND S $P(DGAM,"^",I)=$S(I<13:+$P(DGAM0,"^",I+1),I=15:0,1:+$P(DGAM0,"^",I+5))
|
---|
29 | S ^UTILITY($J,"DGAINP",DGMYR,DGSEG,DGDIV)=DGAM
|
---|
30 | Q
|
---|