[613] | 1 | SCRPW302 ;BPFO/JRC - Performance Monitor Report Utils; 30 Jul 2003
|
---|
| 2 | ;;5.3;SCHEDULING;**292**;AUG 13, 2003
|
---|
| 3 | ;
|
---|
| 4 | TLMT(SCRNARR) ; Set Time Limit into screen array
|
---|
| 5 | ;Input : SCRNARR - Screen array full global reference
|
---|
| 6 | ;Output : 1 = OK 0 = User abort/timeout
|
---|
| 7 | ; @SCRNARR@("TLMT") = Time Limit (days)
|
---|
| 8 | ;Note : @SCRNARR@("TLMT") is initialized (KILLed) on input
|
---|
| 9 | ;
|
---|
| 10 | ; Declare variables
|
---|
| 11 | N DIR,X,Y,DIRUT,DIROUT,DTOUT,DUOUT
|
---|
| 12 | K @SCRNARR@("TLMT")
|
---|
| 13 | ; Prompt user for number of days
|
---|
| 14 | S DIR(0)="N^2:100:0"
|
---|
| 15 | S DIR("A")="Enter number of days for Elapsed Time: "
|
---|
| 16 | S DIR("B")=10
|
---|
| 17 | D ^DIR
|
---|
| 18 | I $D(DIRUT) Q 0
|
---|
| 19 | S @SCRNARR@("TLMT")=X
|
---|
| 20 | Q 1
|
---|
| 21 | ;
|
---|
| 22 | DATE(MIN,MAX,SCRNARR) ; Set Date Range into screen array
|
---|
| 23 | ;Input : SCRNARR - Screen array full global reference
|
---|
| 24 | ; MIN - Minimum date (FileMan) (default to MAX - time limit)
|
---|
| 25 | ; MAX - Maximum date (FileMan) (default to T - time limit)
|
---|
| 26 | ; @SCRNARR@("TLMT") - Time limit (optional - default to 10)
|
---|
| 27 | ;Output : 1 = OK 0 = User abort/timeout
|
---|
| 28 | ; @SCRNARR@("RANGE") = StartDate^EndDate
|
---|
| 29 | ;Note : @SCRNARR@("RANGE") is initialized (KILLed) on input
|
---|
| 30 | ;
|
---|
| 31 | ;Declare variables
|
---|
| 32 | N STDATE,ENDDATE,DATE,DIR,X,Y,TLMT,DIRUT,DIROUT,DTOUT,DUOUT
|
---|
| 33 | K @SCRNARR@("RANGE")
|
---|
| 34 | S MIN=$P($G(MIN),".",1)
|
---|
| 35 | S MAX=$P($G(MAX),".",1)
|
---|
| 36 | ;Get time limit out of screen array (default to 10)
|
---|
| 37 | S TLMT=+$G(@SCRNARR@("TLMT")) S:'TLMT TLMT=10
|
---|
| 38 | ;Maximum date can't be more then Today minus time limit
|
---|
| 39 | S DATE=$$FMADD^XLFDT($$DT^XLFDT(),-TLMT)
|
---|
| 40 | I ('MAX)!(MAX>DATE) S MAX=DATE
|
---|
| 41 | ;Minimum date can't be after maximum date
|
---|
| 42 | I (MAX'>MIN) S MIN=$$FMADD^XLFDT(MAX,-TLMT)
|
---|
| 43 | ;Prompt user for start date
|
---|
| 44 | S DIR(0)="D^"_MIN_":"_MAX_":PEX"
|
---|
| 45 | S DIR("A")="Enter Report Start Date"
|
---|
| 46 | S DATE=$S('MIN:$$FMADD^XLFDT(MAX,-TLMT),1:MIN)
|
---|
| 47 | S DIR("B")=$$FMTE^XLFDT(DATE,"5D")
|
---|
| 48 | D ^DIR
|
---|
| 49 | I $D(DIRUT) Q 0
|
---|
| 50 | S STDATE=Y
|
---|
| 51 | ;Prompt user for end date
|
---|
| 52 | K DIR,X,Y
|
---|
| 53 | S MIN=STDATE
|
---|
| 54 | S DIR(0)="D^"_MIN_":"_MAX_":PEX"
|
---|
| 55 | S DIR("A")="Enter Report Stop Date"
|
---|
| 56 | S DIR("B")=$$FMTE^XLFDT($$FMADD^XLFDT(STDATE,TLMT),"5D")
|
---|
| 57 | D ^DIR
|
---|
| 58 | I $D(DIRUT) K @SCRNARR@("RANGE") Q 0
|
---|
| 59 | S ENDDATE=Y
|
---|
| 60 | S @SCRNARR@("RANGE")=STDATE_"^"_ENDDATE
|
---|
| 61 | Q 1
|
---|
| 62 | DIV(SCRNARR) ; Set Divisions into screen array (prompt is one/many/all)
|
---|
| 63 | ;Input : SCRNARR - Screen array full global reference
|
---|
| 64 | ;Output : 1 = OK 0 = User abort/timeout
|
---|
| 65 | ; @SCRNARR@("DIVISION") = User pick all divisions ?
|
---|
| 66 | ; 1 = Yes (all) 0 = No
|
---|
| 67 | ; @SCRNARR@("DIVISION",PtrDiv) = Division name
|
---|
| 68 | ;Note : @SCRNARR@("DIVISION") is initialized (KILLed) on input
|
---|
| 69 | ; : @SCRNARR@("DIVISION",PtrDiv) is only set when the user
|
---|
| 70 | ; picked individual divisions (i.e. didn't pick all)
|
---|
| 71 | ;
|
---|
| 72 | ;Declare variables
|
---|
| 73 | N VAUTD,Y
|
---|
| 74 | K @SCRNARR@("DIVISION")
|
---|
| 75 | ;Get division selection
|
---|
| 76 | D DIVISION^VAUTOMA
|
---|
| 77 | I Y<0 Q 0
|
---|
| 78 | M @SCRNARR@("DIVISION")=VAUTD
|
---|
| 79 | Q 1
|
---|
| 80 | ;
|
---|
| 81 | PROV(SCRNARR) ; Set Providers into screen array (prompt is one/many/all)
|
---|
| 82 | ;Input : SCRNARR - Screen array full global reference
|
---|
| 83 | ;Output : 1 = OK 0 = User abort/timeout
|
---|
| 84 | ; @SCRNARR@("PROVIDERS") = User pick all providers ?
|
---|
| 85 | ; 1 = Yes (all) 0 = No
|
---|
| 86 | ; @SCRNARR@("PROVIDERS",PtrProvider) = Provider name
|
---|
| 87 | ;Note : @SCRNARR@("PROVIDERS") is initialized (KILLed) on input
|
---|
| 88 | ; : @SCRNARR@("PROVIDERS",PtrProvider) is only set when the user
|
---|
| 89 | ; picked individual providers (i.e. didn't pick all)
|
---|
| 90 | ;
|
---|
| 91 | ;Declare variables
|
---|
| 92 | N DIC,VAUTSTR,VAUTVB,VAUTNI,SCANARR,Y
|
---|
| 93 | K @SCRNARR@("PROVIDERS")
|
---|
| 94 | ;Get provider selection
|
---|
| 95 | S DIC="^VA(200,"
|
---|
| 96 | S VAUTSTR="PROVIDER"
|
---|
| 97 | S VAUTVB="SCANARR"
|
---|
| 98 | S VAUTNI=2
|
---|
| 99 | D FIRST^VAUTOMA
|
---|
| 100 | I Y<0 Q 0
|
---|
| 101 | M @SCRNARR@("PROVIDERS")=SCANARR
|
---|
| 102 | Q 1
|
---|
| 103 | ;
|
---|
| 104 | SCAN(SCRNARR) ; Set Scanned Notes into screen array
|
---|
| 105 | ;Input : SCRNARR - Screen array full global reference
|
---|
| 106 | ;Output : 1 = OK 0 = User abort/timeout
|
---|
| 107 | ; @SCRNARR@("SCANNED") = Include count of encounters with
|
---|
| 108 | ; scanned notes 1 = Yes 0 = No
|
---|
| 109 | ;Note : @SCRNARR@("SCANNED") is initialized (KILLed) on input
|
---|
| 110 | ;
|
---|
| 111 | ;Declare variables
|
---|
| 112 | N DIR,X,Y,DIRUT,DIROUT,DTOUT,DUOUT
|
---|
| 113 | K @SCRNARR@("SCANNED")
|
---|
| 114 | ;Prompt user
|
---|
| 115 | S DIR(0)="Y"
|
---|
| 116 | S DIR("B")="NO"
|
---|
| 117 | S DIR("A")="Would you like to include SCANNED notes "
|
---|
| 118 | D ^DIR
|
---|
| 119 | I $D(DIRUT) Q 0
|
---|
| 120 | S @SCRNARR@("SCANNED")=Y
|
---|
| 121 | Q 1
|
---|