[613] | 1 | PRCOCSC ;WISC/DJM - Generic Code Sheet Status Change ;4/23/96 9:53 AM
|
---|
| 2 | V ;;5.0;IFCAP;**70**;4/21/95
|
---|
| 3 | ;CREATED FROM Tampa/RAK
|
---|
| 4 | EN ;-- entry point.
|
---|
| 5 | N %ZIS,CRDT,DIRPOP,PRINT,X,Y,ZTDESC,ZTRTN,ZTSAVE,%
|
---|
| 6 | S %H="56673,0"
|
---|
| 7 | D YMD^%DTC
|
---|
| 8 | S CRDT=X
|
---|
| 9 | ;
|
---|
| 10 | W @IOF,*7,!!
|
---|
| 11 | W !?10,"This routine changes ALL code sheets created before "
|
---|
| 12 | W !?10,"'",$$FMTE^XLFDT(CRDT),"' that have a status of 'TRANSMITTED'"
|
---|
| 13 | W !?10,"and changes the status to 'ACCEPTED BY FMS'."
|
---|
| 14 | ;
|
---|
| 15 | K DIR S DIR(0)="Y",DIR("A")="Do you wish to continue",DIR("B")="NO"
|
---|
| 16 | W !! D ^DIR Q:Y'=1
|
---|
| 17 | ;
|
---|
| 18 | K DIR S DIR(0)="Y",DIR("B")="NO"
|
---|
| 19 | S DIR("A")="Do you wish to print the Document Identifier of each code"
|
---|
| 20 | S DIR("A")=DIR("A")_"sheet changed"
|
---|
| 21 | W ! D ^DIR Q:Y="^" S PRINT=+Y
|
---|
| 22 | ;
|
---|
| 23 | ;-- get output device.
|
---|
| 24 | S %ZIS("S")="S AA=$G(^%ZIS(1,Y,""SUBTYPE"")) I AA>0,$E($G(^%ZIS(2,AA,0)),1)[""P"""
|
---|
| 25 | S %ZIS="QM",%ZIS("A")="Device: ",%ZIS("B")=""
|
---|
| 26 | W ! D ^%ZIS I POP W " no action taken." Q
|
---|
| 27 | I $D(IO("Q")) K IO("Q") D Q
|
---|
| 28 | .S ZTDESC="Change Generic Code Sheet Status"
|
---|
| 29 | .S ZTRTN="EN1^PRCOCSC",ZTSAVE("CRDT")="",ZTSAVE("PRINT")=""
|
---|
| 30 | .D ^%ZTLOAD W:$G(ZTSK) !,"Task #",ZTSK
|
---|
| 31 | .Q
|
---|
| 32 | ;
|
---|
| 33 | EN1 ;-- entry point from taskman.
|
---|
| 34 | N COUNT,DATA,FDA,IEN,MESSAGE,NUMBER,OFFSET,PRTNUM,AA
|
---|
| 35 | S COUNT=0,OFFSET=25,NUMBER=IOM\OFFSET,PRTNUM=1
|
---|
| 36 | S CRDT=$G(CRDT),PRINT=+$G(PRINT)
|
---|
| 37 | I 'CRDT W !,"No Create Date (CRDT). Program exiting." D EXIT Q
|
---|
| 38 | U IO
|
---|
| 39 | W !,$$FMTE^XLFDT($$NOW^XLFDT)
|
---|
| 40 | W !
|
---|
| 41 | W !,"Changing Generic Code Sheets created before ",$$FMTE^XLFDT(CRDT)
|
---|
| 42 | W !," from a status of 'TRANSMITTED'"
|
---|
| 43 | W !," to a status of 'ACCEPTED BY FMS'."
|
---|
| 44 | W !
|
---|
| 45 | S IEN=0
|
---|
| 46 | ;-- $order through the "AS" x-ref (STATUS).
|
---|
| 47 | F S IEN=$O(^GECS(2100.1,"AS","T",IEN)) Q:'IEN D
|
---|
| 48 | .Q:'$D(^GECS(2100.1,IEN,0)) S DATA=^(0)
|
---|
| 49 | .;
|
---|
| 50 | .;-- quit if DATE@TIME CREATED is not less than CRDT.
|
---|
| 51 | .Q:$P(DATA,U,3)'<CRDT
|
---|
| 52 | .;
|
---|
| 53 | .;-- make sure STATUS is 'transmitted'.
|
---|
| 54 | .Q:$P(DATA,U,4)'="T"
|
---|
| 55 | .;
|
---|
| 56 | .;-- if user selected to print document identifier.
|
---|
| 57 | .I PRINT D
|
---|
| 58 | ..W:PRTNUM=1 !
|
---|
| 59 | ..W ?($S(PRTNUM=1:0,1:OFFSET*(PRTNUM-1))),$P(DATA,U)
|
---|
| 60 | ..S PRTNUM=$S(PRTNUM=NUMBER:1,1:PRTNUM+1)
|
---|
| 61 | .;
|
---|
| 62 | .K FDA,MESSAGE
|
---|
| 63 | .;
|
---|
| 64 | .;-- status.
|
---|
| 65 | .S FDA($J,2100.1,IEN_",",3)="A"
|
---|
| 66 | .;
|
---|
| 67 | .;-- change STATUS to'accepted by fms'.
|
---|
| 68 | .D FILE^DIE("","FDA($J)","MESSAGE")
|
---|
| 69 | .;
|
---|
| 70 | .;-- if error.
|
---|
| 71 | .I $D(MESSAGE) D Q
|
---|
| 72 | ..W !,$P(DATA,U),!
|
---|
| 73 | ..D MSG^DIALOG("W","",60,10,"MESSAGE")
|
---|
| 74 | ..W !
|
---|
| 75 | .;
|
---|
| 76 | .S COUNT=COUNT+1
|
---|
| 77 | .;
|
---|
| 78 | .;-- if not printing document identifier and output is to a terminal
|
---|
| 79 | .;-- then print dots.
|
---|
| 80 | .W:'PRINT&($E(IOST,1,2)="C-")&('(COUNT#100)) "."
|
---|
| 81 | ;
|
---|
| 82 | W !!,COUNT," record",$S(COUNT=1:"",1:"s")," updated."
|
---|
| 83 | ;
|
---|
| 84 | EXIT ;
|
---|
| 85 | S:$D(ZTQUEUED) ZTREQ="@"
|
---|
| 86 | D ^%ZISC
|
---|
| 87 | S X="PRCOCSC"
|
---|
| 88 | S AA=^%ZOSF("DEL")
|
---|
| 89 | X AA
|
---|
| 90 | Q
|
---|