- YSCPAG ; GENERATED FROM 'YSSR 10-2683 PRINT' PRINT TEMPLATE (#560) ; 06/01/18 ; (FILE 615.2, MARGIN=132)
- 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(560,"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="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
- S X=$G(^YS(615.2,D0,0)) D N:$X>10 Q:'DN W ?10 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,20)
- S I(1)=5,J(1)=615.34 F D1=0:0 Q:$O(^YS(615.2,D0,5,D1))'>0 X $G(DSC(615.34)) S D1=$O(^(D1)) Q:D1'>0 D:$X>32 T Q:'DN D A1
- G A1R
- A1 ;
- S X=$G(^YS(615.2,D0,5,D1,0)) D N:$X>32 Q:'DN W ?32 S Y=$P(X,U,1) S Y=$S(Y="":Y,$D(^YSR(615.6,Y,0))#2:$P(^(0),U),1:Y) W $E(Y,1,12)
- Q
- A1R ;
- D N:$X>53 Q:'DN W ?53 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>61 Q:'DN W ?61 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>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
- S X=$G(^YS(615.2,D0,25)) D N:$X>79 Q:'DN W ?79 S Y=$P(X,U,1) S Y=$S(Y="":Y,$D(^VA(200,Y,0))#2:$P(^(0),U),1:Y) W $E(Y,1,12)
- S X=$G(^YS(615.2,D0,0)) D N:$X>95 Q:'DN W ?95 S Y=$P(X,U,5) S Y=$S(Y="":Y,$D(^VA(200,Y,0))#2:$P(^(0),U),1:Y) W $E(Y,1,13)
- S X=$G(^YS(615.2,D0,7)) D N:$X>110 Q:'DN S DIWL=111,DIWR=132 S Y=$P(X,U,1) S X=Y D ^DIWP
- D 0^DIWW
- D ^DIWW
- D N:$X>10 Q:'DN W ?10 X "N I,Y "_$P(^DD(615.2,9,0),U,5,99) S DIP(1)=X S X="xxx-xx-"_DIP(1) K DIP K:DN Y W X
- D N:$X>61 Q:'DN W ?61 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
- S I(1)=10,J(1)=615.21 F D1=0:0 Q:$O(^YS(615.2,D0,10,D1))'>0 X $G(DSC(615.21)) S D1=$O(^(D1)) Q:D1'>0 D:$X>89 T Q:'DN D B1
- G B1R
- B1 ;
- D N:$X>110 Q:'DN W ?110 X DXS(1,9.2) S X=$P($G(^YSR(615.5,+$P(DIP(1),U,1),0)),U) S D0=I(0,0) S D1=I(1,0) K DIP K:DN Y W $E(X,1,20)
- Q
- B1R ;
- D N:$X>0 Q:'DN W ?0 W "GENERAL COMMENTS: "
- D N:$X>18 Q:'DN W ?18 S:'$D(DIWF) DIWF="" S:DIWF'["N" DIWF=DIWF_"N" S X="" S I(1)=30,J(1)=615.27 F D1=0:0 Q:$O(^YS(615.2,D0,30,D1))'>0 S D1=$O(^(D1)) D:$X>20 T Q:'DN D C1
- G C1R
- C1 ;
- S X=$G(^YS(615.2,D0,30,D1,0)) S DIWL=19,DIWR=130 D ^DIWP
- Q
- C1R ;
- D 0^DIWW
- D ^DIWW
- 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-2,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
- K Y K DIWF
- Q
- HEAD ;
- W !,?0,"D"
- W !,?0,"PARSE^YSSRU"
- W !,?0,"NUMDATE(YSPARAM(""YSAT""))"
- W !,?32,"TYPE OF"
- W !,?10,"NAME",?32,"SECLUSION/RESTRAINT",?53,"YSPARAM(""YSAT1"")"
- W !,?61,"YSPARAM(""YSRT1"")"
- W !,?71,"YSPARAM(""YSTT"")"
- W !,?95,"NAME OF NURSE"
- W !,?79,"ORDERED BY",?95,"PRESENT",?110,"DIAGNOSIS"
- W !,?110,"REASONS FOR"
- W !,?61,"NUMDATE(YSPARAM(""YSRT""))",?110,"S/R:REASONS"
- W !,?18,"GENERAL COMMENTS"
- W !,?0,"DUP(""+"",IOM-2)"
- W !,"------------------------------------------------------------------------------------------------------------------------------------",!!
- --- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HYSCPAG 3564 printed Dec 13, 2024@02:14:01 Page 2
- YSCPAG ; GENERATED FROM 'YSSR 10-2683 PRINT' PRINT TEMPLATE (#560) ; 06/01/18 ; (FILE 615.2, MARGIN=132)
- +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(560,"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="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
- +6 SET X=$GET(^YS(615.2,D0,0))
- if $X>10
- DO N
- if 'DN
- QUIT
- WRITE ?10
- 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,20)
- +7 SET I(1)=5
- SET J(1)=615.34
- FOR D1=0:0
- if $ORDER(^YS(615.2,D0,5,D1))'>0
- QUIT
- XECUTE $GET(DSC(615.34))
- SET D1=$ORDER(^(D1))
- if D1'>0
- QUIT
- if $X>32
- DO T
- if 'DN
- QUIT
- DO A1
- +8 GOTO A1R
- A1 ;
- +1 SET X=$GET(^YS(615.2,D0,5,D1,0))
- if $X>32
- DO N
- if 'DN
- QUIT
- WRITE ?32
- SET Y=$PIECE(X,U,1)
- SET Y=$SELECT(Y="":Y,$DATA(^YSR(615.6,Y,0))#2:$PIECE(^(0),U),1:Y)
- WRITE $EXTRACT(Y,1,12)
- +2 QUIT
- A1R ;
- +1 if $X>53
- DO N
- if 'DN
- QUIT
- WRITE ?53
- 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
- +2 if $X>61
- DO N
- if 'DN
- QUIT
- WRITE ?61
- 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
- +3 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
- +4 SET X=$GET(^YS(615.2,D0,25))
- if $X>79
- DO N
- if 'DN
- QUIT
- WRITE ?79
- SET Y=$PIECE(X,U,1)
- SET Y=$SELECT(Y="":Y,$DATA(^VA(200,Y,0))#2:$PIECE(^(0),U),1:Y)
- WRITE $EXTRACT(Y,1,12)
- +5 SET X=$GET(^YS(615.2,D0,0))
- if $X>95
- DO N
- if 'DN
- QUIT
- WRITE ?95
- SET Y=$PIECE(X,U,5)
- SET Y=$SELECT(Y="":Y,$DATA(^VA(200,Y,0))#2:$PIECE(^(0),U),1:Y)
- WRITE $EXTRACT(Y,1,13)
- +6 SET X=$GET(^YS(615.2,D0,7))
- if $X>110
- DO N
- if 'DN
- QUIT
- SET DIWL=111
- SET DIWR=132
- SET Y=$PIECE(X,U,1)
- SET X=Y
- DO ^DIWP
- +7 DO 0^DIWW
- +8 DO ^DIWW
- +9 if $X>10
- DO N
- if 'DN
- QUIT
- WRITE ?10
- XECUTE "N I,Y "_$PIECE(^DD(615.2,9,0),U,5,99)
- SET DIP(1)=X
- SET X="xxx-xx-"_DIP(1)
- KILL DIP
- if DN
- KILL Y
- WRITE X
- +10 if $X>61
- DO N
- if 'DN
- QUIT
- WRITE ?61
- 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
- +11 SET I(1)=10
- SET J(1)=615.21
- FOR D1=0:0
- if $ORDER(^YS(615.2,D0,10,D1))'>0
- QUIT
- XECUTE $GET(DSC(615.21))
- SET D1=$ORDER(^(D1))
- if D1'>0
- QUIT
- if $X>89
- DO T
- if 'DN
- QUIT
- DO B1
- +12 GOTO B1R
- B1 ;
- +1 if $X>110
- DO N
- if 'DN
- QUIT
- WRITE ?110
- XECUTE DXS(1,9.2)
- SET X=$PIECE($GET(^YSR(615.5,+$PIECE(DIP(1),U,1),0)),U)
- SET D0=I(0,0)
- SET D1=I(1,0)
- KILL DIP
- if DN
- KILL Y
- WRITE $EXTRACT(X,1,20)
- +2 QUIT
- B1R ;
- +1 if $X>0
- DO N
- if 'DN
- QUIT
- WRITE ?0
- WRITE "GENERAL COMMENTS: "
- +2 if $X>18
- DO N
- if 'DN
- QUIT
- WRITE ?18
- if '$DATA(DIWF)
- SET DIWF=""
- if DIWF'["N"
- SET DIWF=DIWF_"N"
- SET X=""
- SET I(1)=30
- SET J(1)=615.27
- FOR D1=0:0
- if $ORDER(^YS(615.2,D0,30,D1))'>0
- QUIT
- SET D1=$ORDER(^(D1))
- if $X>20
- DO T
- if 'DN
- QUIT
- DO C1
- +3 GOTO C1R
- C1 ;
- +1 SET X=$GET(^YS(615.2,D0,30,D1,0))
- SET DIWL=19
- SET DIWR=130
- DO ^DIWP
- +2 QUIT
- C1R ;
- +1 DO 0^DIWW
- +2 DO ^DIWW
- +3 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-2
- 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
- +4 KILL Y
- KILL DIWF
- +5 QUIT
- HEAD ;
- +1 WRITE !,?0,"D"
- +2 WRITE !,?0,"PARSE^YSSRU"
- +3 WRITE !,?0,"NUMDATE(YSPARAM(""YSAT""))"
- +4 WRITE !,?32,"TYPE OF"
- +5 WRITE !,?10,"NAME",?32,"SECLUSION/RESTRAINT",?53,"YSPARAM(""YSAT1"")"
- +6 WRITE !,?61,"YSPARAM(""YSRT1"")"
- +7 WRITE !,?71,"YSPARAM(""YSTT"")"
- +8 WRITE !,?95,"NAME OF NURSE"
- +9 WRITE !,?79,"ORDERED BY",?95,"PRESENT",?110,"DIAGNOSIS"
- +10 WRITE !,?110,"REASONS FOR"
- +11 WRITE !,?61,"NUMDATE(YSPARAM(""YSRT""))",?110,"S/R:REASONS"
- +12 WRITE !,?18,"GENERAL COMMENTS"
- +13 WRITE !,?0,"DUP(""+"",IOM-2)"
- +14 WRITE !,"------------------------------------------------------------------------------------------------------------------------------------",!!