1 | MCESLIST ;WISC/DCB-This routine will list reports by release status ;5/2/96 09:58
|
---|
2 | ;;2.3;Medicine;;09/13/1996
|
---|
3 | START ;
|
---|
4 | N MCAR,MCARCODE,MCARDE,MCARGDT2,MCARGNAM,MCARGNUM,MCARP,MCBP,MCBS
|
---|
5 | N MCEPROC,MCESKEY,MCESON,MCESS,MCESSEC,MCFILE,MCFILE1,MCOUNT
|
---|
6 | N MCPATFLD,MCPOSTP,MCPRO,MCPRTRTN,MCROUT,MCSUP,NOPT,MCOPT,PATN,LOC
|
---|
7 | N PROC,OPTION,DIR,Y,DTOUT,DIRUT,DIROUT,DUOUT,DHIT,DIOEND,DIROUR
|
---|
8 | S OPTION=$P(XQY0,U)
|
---|
9 | S MCPRO=$P(OPTION,"MCESSTATUS",2)
|
---|
10 | K ^TMP($J,"MC","STATUS")
|
---|
11 | D MCPPROC^MCARP1
|
---|
12 | I 'MCESON S MCESSEC=$D(^XUSEC(MCESKEY,DUZ)) W !,"Release Control/Elec Signature is turn off"
|
---|
13 | I 'MCESSEC W !,"You don't have the required key [",MCESKEY,"]" Q
|
---|
14 | D ASK
|
---|
15 | I '$D(OUT) D PRINT
|
---|
16 | K ^TMP($J,"MC","STATUS"),OUT Q
|
---|
17 | ASK ;SELECT STATUS
|
---|
18 | S DIR(0)="S^1:Release;2:Draft;3:Both"
|
---|
19 | S DIR("B")="Both"
|
---|
20 | S DIR("A")="Which type of listing do you want see?"
|
---|
21 | S DIR("?",1)="1 Release Status - will only release information"
|
---|
22 | S DIR("?",2)="2 Draft Status - will only show reports that are in draft status"
|
---|
23 | S DIR("?",3)="3 Both - will show all reports"
|
---|
24 | S DIR("?")="Help"
|
---|
25 | D ^DIR I $D(DTOUT)!$D(DIRUT)!$D(DUOUT)!$D(DIROUR) S OUT="" Q
|
---|
26 | S MCOPT=Y
|
---|
27 | Q
|
---|
28 | TEST(REC,OPT,MCFILE) ;Screens out information
|
---|
29 | N STATUS,TEST
|
---|
30 | S STATUS=$P($G(^MCAR(MCFILE,REC,"ES")),U,7) S:STATUS="" STATUS="D"
|
---|
31 | S TEST=OPT+$S(STATUS["D":1,1:0)
|
---|
32 | Q $S(STATUS="S":0,OPT=3:1,TEST=1:1,TEST=3:1,1:0)
|
---|
33 | STAT ;TOTALS OF STATUS
|
---|
34 | N STATUS
|
---|
35 | S STATUS=$P($G(^MCAR(MCFILE,D0,"ES")),U,7) S:STATUS="" STATUS="NS"
|
---|
36 | S ^TMP($J,"MC","STATUS",STATUS)=$G(^TMP($J,"MC","STATUS",STATUS))+1
|
---|
37 | Q
|
---|
38 | PRINT ; Sets up variables for the DIP call
|
---|
39 | N DIS,DHD,DA,DIASKHD,PG,L
|
---|
40 | S L=""
|
---|
41 | S DIC=^DIC(MCFILE,0,"GL")
|
---|
42 | S FLDS=".01;""Date/Time"";C1,"_MCPATFLD_";""Patient"";C22;L30,"""";""Status"";C53,1506;""Status"";C53;W;X",BY=".01"
|
---|
43 | S DIS(0)="I $$TEST^MCESLIST(D0,MCOPT,MCFILE)"
|
---|
44 | S:MCFILE=699 DIS(1)="I $D(^MCAR(697.2,""D"",MCARCODE,+$P(^MCAR(699,+D0,0),U,12)))"
|
---|
45 | S DHD=$S(MCOPT=1:"Release Status Report",MCOPT=2:"Draft Status Report",1:"Status Report"),MCDHD=DHD
|
---|
46 | S DIOEND="D STATUS^MCESLIST"
|
---|
47 | S DHIT="D STAT^MCESLIST"
|
---|
48 | D EN1^DIP
|
---|
49 | Q
|
---|
50 | STATUS ; Prints a status count
|
---|
51 | N LOOP,STATUS,INFO,COUNT,TOTAL,LINE,DIR,Y,%
|
---|
52 | S LINE="" S $P(LINE,"-",80)=""
|
---|
53 | I $E(IOST,1,2)="C-" K DIR S DIR(0)="E" D ^DIR I $D(DTOUT)!$D(DIRUT)!$D(DUOUT)!$D(DIROUR) S OUT="" Q
|
---|
54 | W @IOF,MCDHD_" statistics"
|
---|
55 | D NOW^%DTC S Y=% D DD^%DT W ?46,$P(Y,"@")_" "_$P(Y,"@",2)
|
---|
56 | W !,LINE,!!
|
---|
57 | S STATUS=$S(MCOPT=1:"R",MCOPT=2:"D",1:"")
|
---|
58 | F LOOP="D","PD","RV","ROV","RNV","SRV","SROV","NS" D
|
---|
59 | .I LOOP="NS"&(STATUS="D") S STATUS=""
|
---|
60 | .I STATUS=""!(LOOP[STATUS) D
|
---|
61 | ..S COUNT=+$G(^TMP($J,"MC","STATUS",LOOP))
|
---|
62 | ..S TOTAL=$G(TOTAL)+COUNT
|
---|
63 | ..I LOOP'="NS" S INFO=$$STATUS^MCESEDT(MCFILE,LOOP)
|
---|
64 | ..E S INFO="NO STATUS/DRAFT"
|
---|
65 | ..S INFO=$J(INFO,45)_": "
|
---|
66 | ..W !,INFO,?50,$J($FN(COUNT,",",0),10)
|
---|
67 | W !,?50,$E(LINE,1,10),!,?50,$J($FN(TOTAL,",",0),10),!!
|
---|
68 | I $E(IOST,1,2)="C-" K DIR S DIR(0)="E" D ^DIR
|
---|
69 | W @IOF
|
---|
70 | Q
|
---|