SDXRAM ; GENERATED FROM 'SD-AMB-RAM-DISPLAY' PRINT TEMPLATE (#230) ; 06/13/96 ; (FILE 409.81, 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
 I Y W $P("JAN^FEB^MAR^APR^MAY^JUN^JUL^AUG^SEP^OCT^NOV^DEC",U,$E(Y,4,5))_" " W:Y#100 $J(Y#100\1,2)_"," W Y\10000+1700 W:Y#1 "  "_$E(Y_0,9,10)_":"_$E(Y_"000",11,12) Q
 W Y Q
M D @DIXX
 Q
BEGIN ;
 S:'$D(DN) DN=1 S DISTP=$G(DISTP),DILCT=$G(DILCT)
 I $D(DXS)<9 F X=0:0 S X=$O(^DIPT(230,"DXS",X)) Q:'X  S Y=$O(^(X,"")) F X=X:0 Q:Y=""  S DXS(X,Y)=^(Y),Y=$O(^(Y))
 D T Q:'DN  D N W ?0 W ""
 D N:$X>0 Q:'DN  W ?0 W "RAM Group"
 D N:$X>19 Q:'DN  W ?19 W "Weight [1 - low ; 4 - high]"
 D N:$X>0 Q:'DN  W ?0 W "---------"
 D N:$X>19 Q:'DN  W ?19 W "------"
 S X=$G(^SD(409.81,D0,0)) D N:$X>0 Q:'DN  W ?0,$E($P(X,U,1),1,30)
 D N:$X>21 Q:'DN  W ?21 S Y=$P(X,U,2) W:Y]"" $J(Y,3,0)
 D T Q:'DN  D N W ?0 W ""
 D N:$X>4 Q:'DN  W ?4 W "Effective Date"
 D N:$X>24 Q:'DN  W ?24 W "Reimbursement"
 D N:$X>4 Q:'DN  W ?4 W "--------------"
 D N:$X>24 Q:'DN  W ?24 W "-------------"
 D N:$X>4 Q:'DN  W ?4 W "** Current **"
 D N:$X>21 Q:'DN  W ?21 S %=$O(^SD(409.82,"AIVDT",D0,(9999998-DT))) S X=$S('%:0,$D(^SD(409.82,+$O(^(%,0)),0)):$P(^(0),U,3),1:0) W:X'?."*" $J(X,11,2) K Y(409.81,203)
 S DIXX(1)="A1",I(0,0)=D0 S I(0,0)=$S($D(D0):D0,1:"") X DXS(1,9.2) S X="" S D0=I(0,0)
 G A1R
A1 ;
 I $D(DSC(409.82)) X DSC(409.82) E  Q
 W:$X>34 ! S I(100)="^SD(409.82,",J(100)=409.82
 S X=$G(^SD(409.82,D0,0)) D N:$X>4 Q:'DN  W ?4 S Y=$P(X,U,1) D DT
 D N:$X>22 Q:'DN  W ?22 S Y=$P(X,U,3) W:Y]"" $J(Y,10,2)
 Q
A1R ;
 K J(100),I(100) S:$D(I(0,0)) D0=I(0,0)
 D T Q:'DN  D N D N:$X>0 Q:'DN  W ?0 S X="-",DIP(1)=X,DIP(2)=X,X=$S($D(IOM):IOM,1:80) S X=X,X1=DIP(1) S %=X1 X:%]"" "F X=X:0 S %=%_X1 Q:$L(%)>X" S X=$E(%,1,X) K DIP K:DN Y W X
 K Y
 Q
HEAD ;
 W !,"--------------------------------------------------------------------------------",!!
 
--- Routine Detail   --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HSDXRAM   2111     printed  Sep 23, 2025@20:40:28                                                                                                                                                                                                      Page 2
SDXRAM    ; GENERATED FROM 'SD-AMB-RAM-DISPLAY' PRINT TEMPLATE (#230) ; 06/13/96 ; (FILE 409.81, 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        IF Y
               WRITE $PIECE("JAN^FEB^MAR^APR^MAY^JUN^JUL^AUG^SEP^OCT^NOV^DEC",U,$EXTRACT(Y,4,5))_" "
               if Y#100
                   WRITE $JUSTIFY(Y#100\1,2)_","
               WRITE Y\10000+1700
               if Y#1
                   WRITE "  "_$EXTRACT(Y_0,9,10)_":"_$EXTRACT(Y_"000",11,12)
               QUIT 
 +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
               FOR X=0:0
                   SET X=$ORDER(^DIPT(230,"DXS",X))
                   if 'X
                       QUIT 
                   SET Y=$ORDER(^(X,""))
                   FOR X=X:0
                       if Y=""
                           QUIT 
                       SET DXS(X,Y)=^(Y)
                       SET Y=$ORDER(^(Y))
 +3        DO T
           if 'DN
               QUIT 
           DO N
           WRITE ?0
           WRITE ""
 +4        if $X>0
               DO N
           if 'DN
               QUIT 
           WRITE ?0
           WRITE "RAM Group"
 +5        if $X>19
               DO N
           if 'DN
               QUIT 
           WRITE ?19
           WRITE "Weight [1 - low ; 4 - high]"
 +6        if $X>0
               DO N
           if 'DN
               QUIT 
           WRITE ?0
           WRITE "---------"
 +7        if $X>19
               DO N
           if 'DN
               QUIT 
           WRITE ?19
           WRITE "------"
 +8        SET X=$GET(^SD(409.81,D0,0))
           if $X>0
               DO N
           if 'DN
               QUIT 
           WRITE ?0,$EXTRACT($PIECE(X,U,1),1,30)
 +9        if $X>21
               DO N
           if 'DN
               QUIT 
           WRITE ?21
           SET Y=$PIECE(X,U,2)
           if Y]""
               WRITE $JUSTIFY(Y,3,0)
 +10       DO T
           if 'DN
               QUIT 
           DO N
           WRITE ?0
           WRITE ""
 +11       if $X>4
               DO N
           if 'DN
               QUIT 
           WRITE ?4
           WRITE "Effective Date"
 +12       if $X>24
               DO N
           if 'DN
               QUIT 
           WRITE ?24
           WRITE "Reimbursement"
 +13       if $X>4
               DO N
           if 'DN
               QUIT 
           WRITE ?4
           WRITE "--------------"
 +14       if $X>24
               DO N
           if 'DN
               QUIT 
           WRITE ?24
           WRITE "-------------"
 +15       if $X>4
               DO N
           if 'DN
               QUIT 
           WRITE ?4
           WRITE "** Current **"
 +16       if $X>21
               DO N
           if 'DN
               QUIT 
           WRITE ?21
           SET %=$ORDER(^SD(409.82,"AIVDT",D0,(9999998-DT)))
           SET X=$SELECT('%:0,$DATA(^SD(409.82,+$ORDER(^(%,0)),0)):$PIECE(^(0),U,3),1:0)
           if X'?."*"
               WRITE $JUSTIFY(X,11,2)
           KILL Y(409.81,203)
 +17       SET DIXX(1)="A1"
           SET I(0,0)=D0
           SET I(0,0)=$SELECT($DATA(D0):D0,1:"")
           XECUTE DXS(1,9.2)
           SET X=""
           SET D0=I(0,0)
 +18       GOTO A1R
A1        ;
 +1        IF $DATA(DSC(409.82))
               XECUTE DSC(409.82)
              IF '$TEST
                   QUIT 
 +2        if $X>34
               WRITE !
           SET I(100)="^SD(409.82,"
           SET J(100)=409.82
 +3        SET X=$GET(^SD(409.82,D0,0))
           if $X>4
               DO N
           if 'DN
               QUIT 
           WRITE ?4
           SET Y=$PIECE(X,U,1)
           DO DT
 +4        if $X>22
               DO N
           if 'DN
               QUIT 
           WRITE ?22
           SET Y=$PIECE(X,U,3)
           if Y]""
               WRITE $JUSTIFY(Y,10,2)
 +5        QUIT 
A1R       ;
 +1        KILL J(100),I(100)
           if $DATA(I(0,0))
               SET D0=I(0,0)
 +2        DO T
           if 'DN
               QUIT 
           DO N
           if $X>0
               DO N
           if 'DN
               QUIT 
           WRITE ?0
           SET X="-"
           SET DIP(1)=X
           SET DIP(2)=X
           SET X=$SELECT($DATA(IOM):IOM,1:80)
           SET X=X
           SET X1=DIP(1)
           SET %=X1
           if %]""
               XECUTE "F X=X:0 S %=%_X1 Q:$L(%)>X"
           SET X=$EXTRACT(%,1,X)
           KILL DIP
           if DN
               KILL Y
           WRITE X
 +3        KILL Y
 +4        QUIT 
HEAD      ;
 +1        WRITE !,"--------------------------------------------------------------------------------",!!