YSCPAL ; GENERATED FROM 'YSSR PT INQ HEADER' PRINT TEMPLATE (#563) ; 06/01/18 ; (FILE 615.2, MARGIN=80)
G BEGIN
N W !
T W:$X ! I '$D(DIOT(2)),DN,$D(IOSL),$S('$D(DIWF):1,$P(DIWF,"B",2):$P(DIWF,"B",2),1:1)+$Y'<IOSL,$D(^UTILITY($J,1))#2,^(1)?1U1P1E.E X ^(1)
S DISTP=DISTP+1,DILCT=DILCT+1 D:'(DISTP#100) CSTP^DIO2
Q
DT I $G(DUZ("LANG"))>1,Y W $$OUT^DIALOGU(Y,"DD") Q
X ^DD("DD")
W Y Q
M D @DIXX
Q
BEGIN ;
S:'$D(DN) DN=1 S DISTP=$G(DISTP),DILCT=$G(DILCT)
I $D(DXS)<9 M DXS=^DIPT(563,"DXS")
S I(0)="^YS(615.2,",J(0)=615.2
W ?0 D PARSE^YSSRU K DIP K:DN Y
D N:$X>0 Q:'DN W ?0 S X="YSLCN",X=$S(X=""!(X'?.ANP):"",$D(YSDIPA($E(X,1,30))):YSDIPA($E(X,1,30)),1:"") K DIP K:DN Y W X
D N:$X>67 Q:'DN W ?67 S X="PAGE: ",DIP(1)=$G(X),X=$S($D(DC)#2:DC,1:"") S Y=X,X=DIP(1),X=X S X=X_Y K DIP K:DN Y W X
D N:$X>0 Q:'DN W ?0 S X="INDIVIDUAL PATIENT INQUIRY",X=$J("",$S($D(DIWR)+$D(DIWL)=2:DIWR-DIWL+1,$D(IOM):IOM,1:80)-$L(X)\2-$X)_X K DIP K:DN Y W X
D N:$X>28 Q:'DN W ?28 X DXS(1,9.2) S DIP(2)=X,X=Y S Y=X X ^DD("DD") S X=DIP(2)_Y,X=$J("",$S($D(DIWR)+$D(DIWL)=2:DIWR-DIWL+1,$D(IOM):IOM,1:80)-$L(X)\2-$X)_X K DIP K:DN Y W X
D T Q:'DN D N D N:$X>0 Q:'DN W ?0 W "NAME:"
S X=$G(^YS(615.2,D0,0)) D N:$X>6 Q:'DN W ?6 S Y=$P(X,U,2) S Y=$S(Y="":Y,$D(^DPT(Y,0))#2:$P(^(0),U),1:Y) W $E(Y,1,30)
D N:$X>28 Q:'DN W ?28 W "FROM:"
D N:$X>34 Q:'DN W ?34 S X="YSAT",X=$S(X=""!(X'?.ANP):"",$D(YSDIPA($E(X,1,30))):YSDIPA($E(X,1,30)),1:"") S X=X S:X X=$E(X,4,5)_"/"_$E(X,6,7)_"/"_$E(X,2,3) K DIP K:DN Y W X
D N:$X>43 Q:'DN W ?43 S X="YSAT1",X=$S(X=""!(X'?.ANP):"",$D(YSDIPA($E(X,1,30))):YSDIPA($E(X,1,30)),1:"") K DIP K:DN Y W X
D N:$X>50 Q:'DN W ?50 W "TO:"
D N:$X>54 Q:'DN W ?54 S X="YSRT",X=$S(X=""!(X'?.ANP):"",$D(YSDIPA($E(X,1,30))):YSDIPA($E(X,1,30)),1:"") S X=X S:X X=$E(X,4,5)_"/"_$E(X,6,7)_"/"_$E(X,2,3) K DIP K:DN Y W X
D N:$X>63 Q:'DN W ?63 S X="YSRT1",X=$S(X=""!(X'?.ANP):"",$D(YSDIPA($E(X,1,30))):YSDIPA($E(X,1,30)),1:"") K DIP K:DN Y W X
D N:$X>70 Q:'DN W ?70 W "("
D N:$X>71 Q:'DN W ?71 S X="YSTT",X=$S(X=""!(X'?.ANP):"",$D(YSDIPA($E(X,1,30))):YSDIPA($E(X,1,30)),1:"") K DIP K:DN Y W X
D N:$X>77 Q:'DN W ?77 W ")"
D N:$X>0 Q:'DN W ?0 W "SSN: xxx-xx-"
D N:$X>13 Q:'DN W ?13 S X=$E($P($G(^DPT($P(^YS(615.2,D0,0),U,2),0)),U,9),6,9) W $E(X,1,4) K Y(615.2,9)
D N:$X>28 Q:'DN W ?28 W "WARD:"
S X=$G(^YS(615.2,D0,0)) D N:$X>34 Q:'DN W ?34 S Y=$P(X,U,4) S Y=$S(Y="":Y,$D(^SC(Y,0))#2:$P(^(0),U),1:Y) W $E(Y,1,30)
D N:$X>0 Q:'DN W ?0 S X="=",DIP(1)=$G(X),DIP(2)=$G(X),X=$G(IOM,80) S X=X,X1=DIP(1) S %=X,X="" S:X1]"" $P(X,X1,%\$L(X1)+1)=X1,X=$E(X,1,%) K DIP K:DN Y W X
W ?11 W " "
K Y
Q
HEAD ;
W !,"--------------------------------------------------------------------------------",!!
--- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HYSCPAL 2753 printed Dec 13, 2024@02:14:04 Page 2
YSCPAL ; GENERATED FROM 'YSSR PT INQ HEADER' PRINT TEMPLATE (#563) ; 06/01/18 ; (FILE 615.2, MARGIN=80)
+1 GOTO BEGIN
N WRITE !
T if $X
WRITE !
IF '$DATA(DIOT(2))
IF DN
IF $DATA(IOSL)
IF $SELECT('$DATA(DIWF):1,$PIECE(DIWF,"B",2):$PIECE(DIWF,"B",2),1:1)+$Y'<IOSL
IF $DATA(^UTILITY($JOB,1))#2
IF ^(1)?1U1P1E.E
XECUTE ^(1)
+1 SET DISTP=DISTP+1
SET DILCT=DILCT+1
if '(DISTP#100)
DO CSTP^DIO2
+2 QUIT
DT IF $GET(DUZ("LANG"))>1
IF Y
WRITE $$OUT^DIALOGU(Y,"DD")
QUIT
+1 XECUTE ^DD("DD")
+2 WRITE Y
QUIT
M DO @DIXX
+1 QUIT
BEGIN ;
+1 if '$DATA(DN)
SET DN=1
SET DISTP=$GET(DISTP)
SET DILCT=$GET(DILCT)
+2 IF $DATA(DXS)<9
MERGE DXS=^DIPT(563,"DXS")
+3 SET I(0)="^YS(615.2,"
SET J(0)=615.2
+4 WRITE ?0
DO PARSE^YSSRU
KILL DIP
if DN
KILL Y
+5 if $X>0
DO N
if 'DN
QUIT
WRITE ?0
SET X="YSLCN"
SET X=$SELECT(X=""!(X'?.ANP):"",$DATA(YSDIPA($EXTRACT(X,1,30))):YSDIPA($EXTRACT(X,1,30)),1:"")
KILL DIP
if DN
KILL Y
WRITE X
+6 if $X>67
DO N
if 'DN
QUIT
WRITE ?67
SET X="PAGE: "
SET DIP(1)=$GET(X)
SET X=$SELECT($DATA(DC)#2:DC,1:"")
SET Y=X
SET X=DIP(1)
SET X=X
SET X=X_Y
KILL DIP
if DN
KILL Y
WRITE X
+7 if $X>0
DO N
if 'DN
QUIT
WRITE ?0
SET X="INDIVIDUAL PATIENT INQUIRY"
SET X=$JUSTIFY("",$SELECT($DATA(DIWR)+$DATA(DIWL)=2:DIWR-DIWL+1,$DATA(IOM):IOM,1:80)-$LENGTH(X)\2-$X)_X
KILL DIP
if DN
KILL Y
WRITE X
+8 if $X>28
DO N
if 'DN
QUIT
WRITE ?28
XECUTE DXS(1,9.2)
SET DIP(2)=X
SET X=Y
SET Y=X
XECUTE ^DD("DD")
SET X=DIP(2)_Y
SET X=$JUSTIFY("",$SELECT($DATA(DIWR)+$DATA(DIWL)=2:DIWR-DIWL+1,$DATA(IOM):IOM,1:80)-$LENGTH(X)\2-$X)_X
KILL DIP
if DN
KILL Y
WRITE X
+9 DO T
if 'DN
QUIT
DO N
if $X>0
DO N
if 'DN
QUIT
WRITE ?0
WRITE "NAME:"
+10 SET X=$GET(^YS(615.2,D0,0))
if $X>6
DO N
if 'DN
QUIT
WRITE ?6
SET Y=$PIECE(X,U,2)
SET Y=$SELECT(Y="":Y,$DATA(^DPT(Y,0))#2:$PIECE(^(0),U),1:Y)
WRITE $EXTRACT(Y,1,30)
+11 if $X>28
DO N
if 'DN
QUIT
WRITE ?28
WRITE "FROM:"
+12 if $X>34
DO N
if 'DN
QUIT
WRITE ?34
SET X="YSAT"
SET X=$SELECT(X=""!(X'?.ANP):"",$DATA(YSDIPA($EXTRACT(X,1,30))):YSDIPA($EXTRACT(X,1,30)),1:"")
SET X=X
if X
SET X=$EXTRACT(X,4,5)_"/"_$EXTRACT(X,6,7)_"/"_$EXTRACT(X,2,3)
KILL DIP
if DN
KILL Y
WRITE X
+13 if $X>43
DO N
if 'DN
QUIT
WRITE ?43
SET X="YSAT1"
SET X=$SELECT(X=""!(X'?.ANP):"",$DATA(YSDIPA($EXTRACT(X,1,30))):YSDIPA($EXTRACT(X,1,30)),1:"")
KILL DIP
if DN
KILL Y
WRITE X
+14 if $X>50
DO N
if 'DN
QUIT
WRITE ?50
WRITE "TO:"
+15 if $X>54
DO N
if 'DN
QUIT
WRITE ?54
SET X="YSRT"
SET X=$SELECT(X=""!(X'?.ANP):"",$DATA(YSDIPA($EXTRACT(X,1,30))):YSDIPA($EXTRACT(X,1,30)),1:"")
SET X=X
if X
SET X=$EXTRACT(X,4,5)_"/"_$EXTRACT(X,6,7)_"/"_$EXTRACT(X,2,3)
KILL DIP
if DN
KILL Y
WRITE X
+16 if $X>63
DO N
if 'DN
QUIT
WRITE ?63
SET X="YSRT1"
SET X=$SELECT(X=""!(X'?.ANP):"",$DATA(YSDIPA($EXTRACT(X,1,30))):YSDIPA($EXTRACT(X,1,30)),1:"")
KILL DIP
if DN
KILL Y
WRITE X
+17 if $X>70
DO N
if 'DN
QUIT
WRITE ?70
WRITE "("
+18 if $X>71
DO N
if 'DN
QUIT
WRITE ?71
SET X="YSTT"
SET X=$SELECT(X=""!(X'?.ANP):"",$DATA(YSDIPA($EXTRACT(X,1,30))):YSDIPA($EXTRACT(X,1,30)),1:"")
KILL DIP
if DN
KILL Y
WRITE X
+19 if $X>77
DO N
if 'DN
QUIT
WRITE ?77
WRITE ")"
+20 if $X>0
DO N
if 'DN
QUIT
WRITE ?0
WRITE "SSN: xxx-xx-"
+21 if $X>13
DO N
if 'DN
QUIT
WRITE ?13
SET X=$EXTRACT($PIECE($GET(^DPT($PIECE(^YS(615.2,D0,0),U,2),0)),U,9),6,9)
WRITE $EXTRACT(X,1,4)
KILL Y(615.2,9)
+22 if $X>28
DO N
if 'DN
QUIT
WRITE ?28
WRITE "WARD:"
+23 SET X=$GET(^YS(615.2,D0,0))
if $X>34
DO N
if 'DN
QUIT
WRITE ?34
SET Y=$PIECE(X,U,4)
SET Y=$SELECT(Y="":Y,$DATA(^SC(Y,0))#2:$PIECE(^(0),U),1:Y)
WRITE $EXTRACT(Y,1,30)
+24 if $X>0
DO N
if 'DN
QUIT
WRITE ?0
SET X="="
SET DIP(1)=$GET(X)
SET DIP(2)=$GET(X)
SET X=$GET(IOM,80)
SET X=X
SET X1=DIP(1)
SET %=X
SET X=""
if X1]""
SET $PIECE(X,X1,%\$LENGTH(X1)+1)=X1
SET X=$EXTRACT(X,1,%)
KILL DIP
if DN
KILL Y
WRITE X
+25 WRITE ?11
WRITE " "
+26 KILL Y
+27 QUIT
HEAD ;
+1 WRITE !,"--------------------------------------------------------------------------------",!!