- SDAMOCC ;IOFIO BAYPINES/TEH - AM Mgt Reports ; 12/1/91
- ;;5.3;Scheduling;**487**;Aug 13, 1993
- ;
- EN ; main entry point
- N DIC,SDBEG,SDEND,SDSEL,VAUTD,VAUTC,SDSORT,SDAMLIST,Y,VAUTNI,VAUTSTR,VAUTVB,DIRUT
- EN1 I '$$INIT G ENQ
- ;
- ASKBDT ;
- W !!,$$LINE("Date Range Selection"),!
- S %DT="AEX",%DT("A")="Select Beginning Date: "
- D ^%DT S SDBEG=Y
- I X="^" Q
- I Y=-1 W !!,"Invalid Date!",! G ASKBDT
- K %DT,Y
- ASKEDT ;
- S %DT="AEX",%DT("A")="Select Ending Date: "
- D ^%DT S SDEND=Y
- I X="^" Q
- I Y=-1 W !!,"Invalid Date!",! G ASKEDT
- I SDEND<SDBEG W !!,"Ending Date must be equal to or greater than Beginning Date." G ASKEDT
- K %DT,Y
- ;I '$$RANGE G ENQ
- S SDSEL=1
- S SDSEL=SDSEL+4 ; for backwards compatibility
- G STATS^SDAMOC
- ENQ Q
- ;
- INIT() ; -- init vars
- Q 1
- ;
- RANGE() ; select date range
- ; input: none
- ; output: SDBEG := begin date
- ; SDEND := end date
- ; return: was selection made [ 1|yes 0|no]
- ;
- W !!,$$LINE("Date Range Selection")
- Q $$RANGE^SDAMQ(.SDBEG,.SDEND)
- ;
- SELECT() ; -- get selection criteria
- ; input: none
- ; output: SDSEL := criteria selected
- ; return: was selection made [ 1|yes 0|no]
- ;
- W !!,$$LINE("Statisitcs Criteria")
- S X="S^"
- S X=X_"1:Statistics;"
- S X=X_"2:Division(s) Only Statistics"
- S DIR(0)=X,DIR("A")="Which Visits",DIR("B")="Statistics"
- D ^DIR K DIR S SDSEL=$S($D(DIRUT):0,1:+Y)
- Q SDSEL>0
- ;
- DIV() ; -- get division data
- ; input: none
- ; output: VAUTD := divs selected (VAUTD=1 for all)
- ; return: was selection made [ 1|yes 0|no]
- ;
- W:$P($G(^DG(43,1,"GL")),U,2) !!,$$LINE("Division Selection")
- D ASK2^SDDIV I Y<0 K VAUTD
- Q $D(VAUTD)>0
- ;
- CLINIC() ; -- get clinic data
- ; input: VAUTD := divisions selected
- ; output: VAUTC := clinic selected (VAUTC=1 for all)
- ; return: was selection made [ 1|yes 0|no]
- ;
- W !!,$$LINE("Clinic Selection")
- D CLINIC^SDAMO0
- I Y<0 K VAUTC
- CLINICQ Q $D(VAUTC)>0
- ;
- STOP() ; -- get stop code data
- ; output: VAUTC := stop codes selected (VAUTC=1 for all)
- ; return: was selection made [ 1|yes 0|no]
- ;
- W !!,$$LINE("Stop Codes Selection")
- S DIC="^DIC(40.7,",VAUTSTR="stop code",VAUTVB="VAUTC",VAUTNI=2
- D FIRST^VAUTOMA
- I Y<0 K VAUTC
- STOPQ Q $D(VAUTC)>0
- ;
- ;
- LINE(STR) ; -- print line
- ; input: STR := text to insert
- ; output: none
- ; return: text to use
- ;
- N X
- S:STR]"" STR=" "_STR_" "
- S $P(X,"_",(IOM/2)-($L(STR)/2))=""
- Q X_STR_X
- ;
- --- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HSDAMOCC 2431 printed Feb 19, 2025@00:14:18 Page 2
- SDAMOCC ;IOFIO BAYPINES/TEH - AM Mgt Reports ; 12/1/91
- +1 ;;5.3;Scheduling;**487**;Aug 13, 1993
- +2 ;
- EN ; main entry point
- +1 NEW DIC,SDBEG,SDEND,SDSEL,VAUTD,VAUTC,SDSORT,SDAMLIST,Y,VAUTNI,VAUTSTR,VAUTVB,DIRUT
- EN1 IF '$$INIT
- GOTO ENQ
- +1 ;
- ASKBDT ;
- +1 WRITE !!,$$LINE("Date Range Selection"),!
- +2 SET %DT="AEX"
- SET %DT("A")="Select Beginning Date: "
- +3 DO ^%DT
- SET SDBEG=Y
- +4 IF X="^"
- QUIT
- +5 IF Y=-1
- WRITE !!,"Invalid Date!",!
- GOTO ASKBDT
- +6 KILL %DT,Y
- ASKEDT ;
- +1 SET %DT="AEX"
- SET %DT("A")="Select Ending Date: "
- +2 DO ^%DT
- SET SDEND=Y
- +3 IF X="^"
- QUIT
- +4 IF Y=-1
- WRITE !!,"Invalid Date!",!
- GOTO ASKEDT
- +5 IF SDEND<SDBEG
- WRITE !!,"Ending Date must be equal to or greater than Beginning Date."
- GOTO ASKEDT
- +6 KILL %DT,Y
- +7 ;I '$$RANGE G ENQ
- +8 SET SDSEL=1
- +9 ; for backwards compatibility
- SET SDSEL=SDSEL+4
- +10 GOTO STATS^SDAMOC
- ENQ QUIT
- +1 ;
- INIT() ; -- init vars
- +1 QUIT 1
- +2 ;
- RANGE() ; select date range
- +1 ; input: none
- +2 ; output: SDBEG := begin date
- +3 ; SDEND := end date
- +4 ; return: was selection made [ 1|yes 0|no]
- +5 ;
- +6 WRITE !!,$$LINE("Date Range Selection")
- +7 QUIT $$RANGE^SDAMQ(.SDBEG,.SDEND)
- +8 ;
- SELECT() ; -- get selection criteria
- +1 ; input: none
- +2 ; output: SDSEL := criteria selected
- +3 ; return: was selection made [ 1|yes 0|no]
- +4 ;
- +5 WRITE !!,$$LINE("Statisitcs Criteria")
- +6 SET X="S^"
- +7 SET X=X_"1:Statistics;"
- +8 SET X=X_"2:Division(s) Only Statistics"
- +9 SET DIR(0)=X
- SET DIR("A")="Which Visits"
- SET DIR("B")="Statistics"
- +10 DO ^DIR
- KILL DIR
- SET SDSEL=$SELECT($DATA(DIRUT):0,1:+Y)
- +11 QUIT SDSEL>0
- +12 ;
- DIV() ; -- get division data
- +1 ; input: none
- +2 ; output: VAUTD := divs selected (VAUTD=1 for all)
- +3 ; return: was selection made [ 1|yes 0|no]
- +4 ;
- +5 if $PIECE($GET(^DG(43,1,"GL")),U,2)
- WRITE !!,$$LINE("Division Selection")
- +6 DO ASK2^SDDIV
- IF Y<0
- KILL VAUTD
- +7 QUIT $DATA(VAUTD)>0
- +8 ;
- CLINIC() ; -- get clinic data
- +1 ; input: VAUTD := divisions selected
- +2 ; output: VAUTC := clinic selected (VAUTC=1 for all)
- +3 ; return: was selection made [ 1|yes 0|no]
- +4 ;
- +5 WRITE !!,$$LINE("Clinic Selection")
- +6 DO CLINIC^SDAMO0
- +7 IF Y<0
- KILL VAUTC
- CLINICQ QUIT $DATA(VAUTC)>0
- +1 ;
- STOP() ; -- get stop code data
- +1 ; output: VAUTC := stop codes selected (VAUTC=1 for all)
- +2 ; return: was selection made [ 1|yes 0|no]
- +3 ;
- +4 WRITE !!,$$LINE("Stop Codes Selection")
- +5 SET DIC="^DIC(40.7,"
- SET VAUTSTR="stop code"
- SET VAUTVB="VAUTC"
- SET VAUTNI=2
- +6 DO FIRST^VAUTOMA
- +7 IF Y<0
- KILL VAUTC
- STOPQ QUIT $DATA(VAUTC)>0
- +1 ;
- +2 ;
- LINE(STR) ; -- print line
- +1 ; input: STR := text to insert
- +2 ; output: none
- +3 ; return: text to use
- +4 ;
- +5 NEW X
- +6 if STR]""
- SET STR=" "_STR_" "
- +7 SET $PIECE(X,"_",(IOM/2)-($LENGTH(STR)/2))=""
- +8 QUIT X_STR_X
- +9 ;