| 1 | LA7CHKFP ;DALISC/JMC - Print Lab Messaging File Integrity Report; 2/26/97 11:00;
 | 
|---|
| 2 |  ;;5.2;LAB MESSAGING;**27**;Sep 27, 1994
 | 
|---|
| 3 |  ;This routine prints file integrity report for Lab Messaging.
 | 
|---|
| 4 | EN ; Select report to print
 | 
|---|
| 5 |  K ^TMP($J,"LA7ICLIST")
 | 
|---|
| 6 |  D HED1
 | 
|---|
| 7 |  S LA7IC="LA7IC",(LA7CNT,LA7DA,LA7QUIT)=0
 | 
|---|
| 8 |  F  S LA7IC=$O(^XTMP(LA7IC)) Q:LA7IC=""!($P(LA7IC,"^")'="LA7IC")  D  Q:LA7QUIT!(LA7DA)
 | 
|---|
| 9 |  . N LA7X
 | 
|---|
| 10 |  . S LA7DT=$$FMTE^XLFDT($P(LA7IC,"^",2))
 | 
|---|
| 11 |  . S LA7CNT=LA7CNT+1,^TMP($J,"LA7ICLIST",LA7CNT)=LA7DT_"^"_LA7IC
 | 
|---|
| 12 |  . S LA7X=^XTMP(LA7IC,0)
 | 
|---|
| 13 |  . S LA7ECNT=$S($P(LA7X,"^",7):$P(LA7X,"^",7),1:"NO")_" errors"
 | 
|---|
| 14 |  . I '$P(LA7X,"^",5) D
 | 
|---|
| 15 |  . . L +^XTMP(LA7IC,0):1
 | 
|---|
| 16 |  . . I $T L -^XTMP(LA7IC,0) S LA7ECNT=LA7ECNT_" - Did NOT finish" Q
 | 
|---|
| 17 |  . . S LA7ECNT=LA7ECNT_" - Still running"
 | 
|---|
| 18 |  . W !,$J(LA7CNT,3),"  ",LA7DT,"  [",LA7ECNT,"]"
 | 
|---|
| 19 |  . I $Y+10>IOSL D
 | 
|---|
| 20 |  . . D ASK
 | 
|---|
| 21 |  . . I LA7QUIT Q
 | 
|---|
| 22 |  . . D HED1
 | 
|---|
| 23 |  I LA7QUIT Q
 | 
|---|
| 24 |  I 'LA7CNT D EN^DDIOL("No reports on file!","","!?5")
 | 
|---|
| 25 |  I 'LA7DA D ASK
 | 
|---|
| 26 |  I 'LA7DA Q
 | 
|---|
| 27 |  S LA7IC=$P($G(^TMP($J,"LA7ICLIST",LA7DA)),"^",2,3)
 | 
|---|
| 28 | DEV ; Ask device to print report.
 | 
|---|
| 29 |  K %ZIS
 | 
|---|
| 30 |  S %ZIS="Q" D ^%ZIS
 | 
|---|
| 31 |  I POP D HOME^%ZIS Q
 | 
|---|
| 32 |  I $D(IO("Q")) D  Q
 | 
|---|
| 33 |  . N MSG,ZTDESC,ZTDTH,ZTIO,ZTSK,ZTRTN,ZTSAVE
 | 
|---|
| 34 |  . S ZTRTN="DQ^LA7CHKFP",ZTDESC="Print LA7 Messaging Integrity Check"
 | 
|---|
| 35 |  . S ZTSAVE("LA7IC")=""
 | 
|---|
| 36 |  . D ^%ZTLOAD,^%ZISC
 | 
|---|
| 37 |  . S MSG="Task "_$S($G(ZTSK):"",1:"NOT ")_"Queued"
 | 
|---|
| 38 |  . D EN^DDIOL(MSG,"","!")
 | 
|---|
| 39 |  ;
 | 
|---|
| 40 | DQ ; Entry point from taskman
 | 
|---|
| 41 |  N LA7ECNT,LA7EDT,LA7I,LA7LINE,LA7PAGE,LA7RDT,LA7SDT,LA7X,X,Y
 | 
|---|
| 42 |  U IO
 | 
|---|
| 43 |  S $P(LA7LINE,"-",IOM)=""
 | 
|---|
| 44 |  S (LA7EXIT,LA7PAGE)=0
 | 
|---|
| 45 |  S LA7X=$G(^XTMP(LA7IC,0))
 | 
|---|
| 46 |  S LA7RDT=$$FMTE^XLFDT($P(LA7IC,"^",2))
 | 
|---|
| 47 |  S LA7SDT=$P(LA7X,"^",4)_"^"_$$FMTE^XLFDT($P(LA7X,"^",4))
 | 
|---|
| 48 |  S LA7EDT=$P(LA7X,"^",5)_"^"_$$FMTE^XLFDT($P(LA7X,"^",5))
 | 
|---|
| 49 |  S LA7TCNT=+$P(LA7X,"^",6) ; Count of # of entries checked
 | 
|---|
| 50 |  S LA7ECNT=+$P(LA7X,"^",7) ; Count of number of errors
 | 
|---|
| 51 |  S LA7NOW=$$NOW^XLFDT
 | 
|---|
| 52 |  S $P(LA7NOW,"^",2)=$$FMTE^XLFDT(LA7NOW)
 | 
|---|
| 53 |  D HED Q:$G(LA7EXIT)
 | 
|---|
| 54 |  I '$O(^XTMP(LA7IC,0)) W !,"    NO entries to print"
 | 
|---|
| 55 |  S LA7I=0
 | 
|---|
| 56 |  F  S LA7I=$O(^XTMP(LA7IC,LA7I)) Q:'LA7I  D  Q:$G(LA7EXIT)
 | 
|---|
| 57 |  . I $Y+5>IOSL D HED Q:$G(LA7EXIT)
 | 
|---|
| 58 |  . W !,^XTMP(LA7IC,LA7I)
 | 
|---|
| 59 |  I '$G(LA7EXIT) D
 | 
|---|
| 60 |  . I $Y+5>IOSL D HED Q:$G(LA7EXIT)
 | 
|---|
| 61 |  . W !!,"   Total number of entries: ",LA7TCNT
 | 
|---|
| 62 |  . W !,"    Total number of errors: ",LA7ECNT
 | 
|---|
| 63 |  . W !," Integrity Checker Started: ",$P(LA7SDT,"^",2)
 | 
|---|
| 64 |  . W !,"Integrity Checker Finished: ",$P(LA7EDT,"^",2)
 | 
|---|
| 65 |  I '$G(LA7EXIT),$E(IOST,1,2)="C-" D TERM
 | 
|---|
| 66 |  I $D(ZTQUEUED) S ZTREQ="@"
 | 
|---|
| 67 |  E  W:$E(IOST,1,2)="P-" @IOF D ^%ZISC
 | 
|---|
| 68 |  Q
 | 
|---|
| 69 |  ;
 | 
|---|
| 70 | TERM ;
 | 
|---|
| 71 |  I 'LA7PAGE W @IOF Q
 | 
|---|
| 72 |  N DIR,DIRUT,DTOUT,DUOUT,X,Y
 | 
|---|
| 73 |  W !
 | 
|---|
| 74 |  S DIR(0)="E" D ^DIR S:$D(DIRUT) LA7EXIT=1
 | 
|---|
| 75 |  Q
 | 
|---|
| 76 |  ;
 | 
|---|
| 77 | ASK ; Ask for report to print
 | 
|---|
| 78 |  N DIR,DIROUT,DIRUT,DUOUT,X,Y
 | 
|---|
| 79 |  W !
 | 
|---|
| 80 |  S DIR(0)="NO^1:"_LA7CNT_":0",DIR("A")="Select Report"
 | 
|---|
| 81 |  D ^DIR
 | 
|---|
| 82 |  I $D(DUOUT) S LA7QUIT=1 Q
 | 
|---|
| 83 |  I Y S LA7DA=Y
 | 
|---|
| 84 |  Q
 | 
|---|
| 85 |  ;
 | 
|---|
| 86 | HED1 ; Print selection header
 | 
|---|
| 87 |  W @IOF,$$CJ^XLFSTR("--- Lab Messaging Integrity Checker Report ---",IOM),!
 | 
|---|
| 88 |  Q
 | 
|---|
| 89 |  ;
 | 
|---|
| 90 | HED ; Print header
 | 
|---|
| 91 |  I $E(IOST,1,2)="C-" D TERM Q:$G(LA7EXIT)
 | 
|---|
| 92 |  I LA7PAGE W @IOF
 | 
|---|
| 93 |  S LA7PAGE=LA7PAGE+1
 | 
|---|
| 94 |  W !,"Lab Messaging File Integrity Checker Report",?IOM-30,"Printed: ",$P(LA7NOW,"^",2)
 | 
|---|
| 95 |  W !,"For Date: ",LA7RDT,?IOM-27,"Page: ",LA7PAGE
 | 
|---|
| 96 |  W !,LA7LINE,!
 | 
|---|
| 97 |  Q
 | 
|---|