| [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
 | 
|---|