| [613] | 1 | KMPRBD01 ;OAK/RAK - RUM Daily/Weekly Compression ;11/19/04  10:31
 | 
|---|
 | 2 |  ;;2.0;CAPACITY MANAGEMENT - RUM;**1**;May 28, 2003
 | 
|---|
 | 3 |  ;
 | 
|---|
 | 4 | EN ;-- entry point for Background Driver.
 | 
|---|
 | 5 |  ;
 | 
|---|
 | 6 |  S:'$G(DT) DT=$$DT^XLFDT
 | 
|---|
 | 7 |  ;
 | 
|---|
 | 8 |  N ENDT,STR
 | 
|---|
 | 9 |  ;
 | 
|---|
 | 10 |  S STR=$$NOW^XLFDT
 | 
|---|
 | 11 |  D DAILY^KMPRBD02(+$H)
 | 
|---|
 | 12 |  ; store start, stop and delta times for daily background job
 | 
|---|
 | 13 |  D STRSTP^KMPDUTL2(2,1,1,STR)
 | 
|---|
 | 14 |  ;
 | 
|---|
 | 15 |  ; clean up old "job" nodes.
 | 
|---|
 | 16 |  D CLEAN
 | 
|---|
 | 17 |  ;
 | 
|---|
 | 18 |  ; if sunday do weekly compression
 | 
|---|
 | 19 |  I '$$DOW^XLFDT(DT,1) D 
 | 
|---|
 | 20 |  .; store weekly start/stop stats.
 | 
|---|
 | 21 |  .S STR=$$NOW^XLFDT
 | 
|---|
 | 22 |  .D WEEKLY^KMPRBD04(DT)
 | 
|---|
 | 23 |  .; store start, stop and delta times for weekly background job
 | 
|---|
 | 24 |  .D STRSTP^KMPDUTL2(2,2,1,STR)
 | 
|---|
 | 25 |  ;
 | 
|---|
 | 26 |  ; check for errors.
 | 
|---|
 | 27 |  D ERRORS
 | 
|---|
 | 28 |  ;
 | 
|---|
 | 29 |  Q
 | 
|---|
 | 30 |  ;
 | 
|---|
 | 31 | CLEAN ;-- clean up old "JOB" nodes
 | 
|---|
 | 32 |  ;
 | 
|---|
 | 33 |  N JOB,NODE S NODE=""
 | 
|---|
 | 34 |  F  S NODE=$O(^KMPTMP("KMPR","JOB",NODE)) Q:NODE=""  D
 | 
|---|
 | 35 |  .S JOB=0 F  S JOB=$O(^XTMP("KMPR","JOB",NODE,JOB)) Q:'+JOB  D
 | 
|---|
 | 36 |  ..I '$D(^XUTL("XQ",JOB)) K ^KMPTMP("KMPR","JOB",NODE,JOB)
 | 
|---|
 | 37 |  ;
 | 
|---|
 | 38 |  ; Store the number of active user jobs into ^XTMP("KMPR","ACTIVE")
 | 
|---|
 | 39 |  ; D CLUSTER^%ZKMPRC1
 | 
|---|
 | 40 |  ;
 | 
|---|
 | 41 |  Q
 | 
|---|
 | 42 |  ;
 | 
|---|
 | 43 | ERRORS ; check and process errors.
 | 
|---|
 | 44 |  ;
 | 
|---|
 | 45 |  Q:'$D(^XTMP("KMPR","ERR"))
 | 
|---|
 | 46 |  ;
 | 
|---|
 | 47 |  N H,I,LN,N,O,SITE,TEXT,XMSUB,X,XMTEXT,XMY,XMZ,Y,Z
 | 
|---|
 | 48 |  ;
 | 
|---|
 | 49 |  S SITE=$$SITE^VASITE
 | 
|---|
 | 50 |  S XMSUB="RUM Error at site "_$P(SITE,U,3)_" on "_$$FMTE^XLFDT($$DT^XLFDT)
 | 
|---|
 | 51 |  S TEXT(1)="  The following error(s) have been logged at "_$P(SITE,U,2)_" ("_$P(SITE,U,3)_") "
 | 
|---|
 | 52 |  S TEXT(2)="  while moving data from ^XTMP(""KMPR"",""DLY"") to file 8971.1."
 | 
|---|
 | 53 |  S H="",LN=3
 | 
|---|
 | 54 |  ; H = date in $H format (+$H).
 | 
|---|
 | 55 |  ; N = node name.
 | 
|---|
 | 56 |  ; O = option.
 | 
|---|
 | 57 |  F  S H=$O(^XTMP("KMPR","ERR",H)) Q:H=""  S N="" D 
 | 
|---|
 | 58 |  .F  S N=$O(^XTMP("KMPR","ERR",H,N)) Q:N=""  S O="" D 
 | 
|---|
 | 59 |  ..F  S O=$O(^XTMP("KMPR","ERR",H,N,O)) Q:O=""  D 
 | 
|---|
 | 60 |  ...S TEXT(LN)="",LN=LN+1
 | 
|---|
 | 61 |  ...S TEXT(LN)="Date..: "_H_"    Node: "_N,LN=LN+1
 | 
|---|
 | 62 |  ...S TEXT(LN)="Option: "_O,LN=LN+1
 | 
|---|
 | 63 |  ...; prime time.
 | 
|---|
 | 64 |  ...S TEXT(LN)="Prime Time     = "_$G(^XTMP("KMPR","ERR",H,N,O,0)),LN=LN+1
 | 
|---|
 | 65 |  ...; non-prime time.
 | 
|---|
 | 66 |  ...S TEXT(LN)="Non-Prime Time = "_$G(^XTMP("KMPR","ERR",H,N,O,1)),LN=LN+1
 | 
|---|
 | 67 |  ...; message.
 | 
|---|
 | 68 |  ...F I=0:0 S I=$O(^XTMP("KMPR","ERR",H,N,O,"MSG",I)) Q:'I  D 
 | 
|---|
 | 69 |  ....S TEXT(LN)=^XTMP("KMPR","ERR",H,N,O,"MSG",I),LN=LN+1
 | 
|---|
 | 70 |  S XMTEXT="TEXT("
 | 
|---|
 | 71 |  S XMY("G.KMP2-RUM@ISC-ALBANY.VA.GOV")=""
 | 
|---|
 | 72 |  D ^XMD
 | 
|---|
 | 73 |  ;
 | 
|---|
 | 74 |  K ^KMPTMP("KMPR","ERR")
 | 
|---|
 | 75 |  ;
 | 
|---|
 | 76 |  Q
 | 
|---|