| 1 | SD376P ;BP-OIFO/esw,swo - POSTINSTALL DRIVER ; 10/27/04 3:39pm
 | 
|---|
| 2 |  ;;5.3;Scheduling;**376**;Aug 13, 1993
 | 
|---|
| 3 | EN ;manual entry point
 | 
|---|
| 4 |  ;ST   :  station number
 | 
|---|
| 5 |  ;STR  :  list of stations receiving AA ack's only
 | 
|---|
| 6 |  ;STS  :  current station number with comma's concatenated
 | 
|---|
| 7 |  I '$$PROD^XUPROD(1) D  Q
 | 
|---|
| 8 |  . D BMES^XPDUTL("NOT A PRODUCTION SYSTEM.  POST INIT CANCELLED")
 | 
|---|
| 9 | EN1 N ST,STR,STS
 | 
|---|
| 10 |  S ST=$P($$SITE^VASITE(),"^",3)
 | 
|---|
| 11 |  Q:ST=""
 | 
|---|
| 12 |  S STR=","_$P($T(STAT),";;",2)_","
 | 
|---|
| 13 |  S STS=","_ST_","
 | 
|---|
| 14 |  I STR[STS D EN^SDRPA18,CLEAN Q  ;process stations that received AA ack only then quit
 | 
|---|
| 15 |  I ST=674 D EN^SDRPA17(ST),EN^SDRPA18,CLEAN Q
 | 
|---|
| 16 |  I ST<529 D EN^SDRPA10(ST),EN^SDRPA18,CLEAN Q 
 | 
|---|
| 17 |  I ST<547 D EN^SDRPA11(ST),EN^SDRPA18,CLEAN Q
 | 
|---|
| 18 |  I ST<555 D EN^SDRPA12(ST),EN^SDRPA18,CLEAN Q
 | 
|---|
| 19 |  I ST<571 D EN^SDRPA13(ST),EN^SDRPA18,CLEAN Q
 | 
|---|
| 20 |  I ST<619 D EN^SDRPA14(ST),EN^SDRPA18,CLEAN Q
 | 
|---|
| 21 |  I ST<664 D EN^SDRPA15(ST),EN^SDRPA18,CLEAN Q
 | 
|---|
| 22 |  D EN^SDRPA16(ST),EN^SDRPA18,CLEAN Q
 | 
|---|
| 23 |  Q
 | 
|---|
| 24 | PR(SB,SM,ER,SQ) ;process the message number and error code
 | 
|---|
| 25 |  ;SB - Batch #
 | 
|---|
| 26 |  ;SM - Message #
 | 
|---|
| 27 |  ;ER - Error code
 | 
|---|
| 28 |  ;SQ - Sequence number
 | 
|---|
| 29 |  ;V1 - Run number
 | 
|---|
| 30 |  ;V2 - ien in appt multiple
 | 
|---|
| 31 |  ;V3 - ien in batch tracking multiple
 | 
|---|
| 32 |  ;SM is the batch # found in the "AMSG" xref and corresponds to the message control id
 | 
|---|
| 33 |  ;SB is our batch control, use for the 2 node multiples B xref lookups
 | 
|---|
| 34 |  N V1,V2,V3
 | 
|---|
| 35 |  ;get the run number
 | 
|---|
| 36 |  S V1=$O(^SDWL(409.6,"AMSG",SM,SQ,"")) Q:'V1  D
 | 
|---|
| 37 |  . ;get the ien in that run
 | 
|---|
| 38 |  . S V2=$O(^SDWL(409.6,"AMSG",SM,SQ,V1,"")) Q:'V2  D
 | 
|---|
| 39 |  .. ;now get the ien of the batch tracking entry
 | 
|---|
| 40 |  .. S V3=$O(^SDWL(409.6,V1,2,"B",SB,"")) Q:'V3  D
 | 
|---|
| 41 |  ... ;quit if there is an ack date
 | 
|---|
| 42 |  ... I $P($G(^SDWL(409.6,V1,2,V3,0)),"^",4)'="" Q
 | 
|---|
| 43 |  ... ;update batch tracking
 | 
|---|
| 44 |  ... I ER="" S DA=V3,DA(1)=V1,DIE="^SDWL(409.6,"_V1_",2,",DR=".04///"_$$NOW^XLFDT_";.05///AE" D ^DIE K DIE,DA,DR Q
 | 
|---|
| 45 |  ...;
 | 
|---|
| 46 |  ...;update error codes
 | 
|---|
| 47 |  ... S DA=V2,DA(1)=V1,DIE="^SDWL(409.6,"_V1_",1,"
 | 
|---|
| 48 |  ... S DR="7////"_$O(^SCPT(404.472,"B",ER,"")) D ^DIE
 | 
|---|
| 49 |  ... I $D(^SDWL(409.6,"AE","Y",V1,V2)) Q
 | 
|---|
| 50 |  ... I $D(^SDWL(409.6,"AE","N",V1,V2)) D
 | 
|---|
| 51 |  .... S DR="4///Y" D ^DIE K DIE,DA,DR
 | 
|---|
| 52 |  Q
 | 
|---|
| 53 | CLEAN ;clean up batches previous to current one by checking for "AE",("S" or "R") xref and
 | 
|---|
| 54 |  ;deleting if entry in xref exists
 | 
|---|
| 55 |  ;RUN  :  run #           (ien of multiple entry)
 | 
|---|
| 56 |  ;V1   :  previous run #  (ien of multiple entry)  
 | 
|---|
| 57 |  ;V2   :  ien           (ien in multiple)
 | 
|---|
| 58 |  N V1,V2,V3,ZNODE
 | 
|---|
| 59 |  S V1=9999999 F  S V1=$O(^SDWL(409.6,V1),-1) Q:'V1  D
 | 
|---|
| 60 |  .F V3="R","S" S V2=0 F  S V2=$O(^SDWL(409.6,"AE",V3,V1,V2)) Q:'V2  D
 | 
|---|
| 61 |  ..S ZNODE=$G(^SDWL(409.6,V1,1,V2,0))
 | 
|---|
| 62 |  ..S DIK="^SDWL(409.6,"_V1_",1,"
 | 
|---|
| 63 |  ..S DA(1)=V1,DA=V2 D ^DIK K DIK
 | 
|---|
| 64 |  Q
 | 
|---|
| 65 |  ;listing of all stations that received only AA ack - no rejection
 | 
|---|
| 66 | STAT ;;358,405,463,503,516,517,523,538,540,542,552,564,575,583,600,613,632,649,653,656,676,679,687,692,693,757
 | 
|---|