| [613] | 1 | PRCGARCG ;WIRMFO@ALTOONA/CTB/BGJ  IFCAP ARCHIVE FIND ROUTINE ;12/10/97  9:07 AM [8/17/98 9:01am]
 | 
|---|
 | 2 | V ;;5.1;IFCAP;;Oct 20, 2000
 | 
|---|
 | 3 |  ;Per VHA Directive 10-93-142, this routine should not be modified.
 | 
|---|
 | 4 |  W @IOF S X="I will now begin compiling a list of archive documents for this process from file 442 for FY "_AFY_" and earlier." D MSG^PRCFQ
 | 
|---|
 | 5 |  I CLEANFIL=1 D
 | 
|---|
 | 6 |  . S X="But First - I will delete all current entries in the IFCAP Pending Archive file for Station - "_PRC("SITE")
 | 
|---|
 | 7 |  . D MSG^PRCFQ
 | 
|---|
 | 8 |  . D ^PRCGARCH
 | 
|---|
 | 9 |  . R X:5 W @IOF
 | 
|---|
 | 10 |  . QUIT
 | 
|---|
 | 11 |  I $D(UPOUT) K UPOUT D END^PRCGU,END QUIT
 | 
|---|
 | 12 |  D WAIT^PRCFYN
 | 
|---|
 | 13 |  S EFY=$E(FY,1,3)_"0930"
 | 
|---|
 | 14 |  S BFY=$E(FY,1,3)-1_"1001"
 | 
|---|
 | 15 |  S NX=0 F I=0:1 S NX=$O(^PRC(442,"AB",NX)) Q:(NX>FY)!(NX="")
 | 
|---|
 | 16 |  I I=0 S X="There are no records on file for FY "_AFY_" or earlier.  No action taken.*" D MSG^PRCFQ QUIT
 | 
|---|
 | 17 |  S TREC=I,RECCOUNT=0
 | 
|---|
 | 18 |  S MESSAGE="FINDING IFCAP RECORDS FOR ARCHIVE/PURGE"
 | 
|---|
 | 19 |  S ITEMS="days"
 | 
|---|
 | 20 |  D BEGIN^PRCGU
 | 
|---|
 | 21 |  S NX=0 D PERCENT^PRCGU
 | 
|---|
 | 22 |  F XCOUNT=1:1 S NX=$O(^PRC(442,"AB",NX)) Q:(NX>FY)!(NX="")!($D(UPOUT))  D  D:'$D(ZTQUEUED) PERCENT^PRCGU
 | 
|---|
 | 23 |  . S MX=0 F  S MX=$O(^PRC(442,"AB",NX,MX)) Q:'MX  D  R X:0 I X["^" W !!!,"Option Terminated.",*7 S UPOUT="" QUIT
 | 
|---|
 | 24 |  . . S ZERONODE=$G(^PRC(442,MX,0))
 | 
|---|
 | 25 |  . . I $P(ZERONODE,"-")'=PRC("SITE") QUIT
 | 
|---|
 | 26 |  . . S FLAG=$$CHECK(MX,ZERONODE) QUIT:'FLAG
 | 
|---|
 | 27 |  . . S X=$P(ZERONODE,"^",1)
 | 
|---|
 | 28 |  . . D ADD(MX,X,FLAG) Q:Y<0  S RECCOUNT=RECCOUNT+1
 | 
|---|
 | 29 |  . . QUIT
 | 
|---|
 | 30 |  . QUIT
 | 
|---|
 | 31 |  I $D(UPOUT) D END^PRCGU,END K UPOUT QUIT
 | 
|---|
 | 32 |  D END^PRCGU
 | 
|---|
 | 33 |  W !!,RECCOUNT," documents were found and added to the IFCAP Pending Archive File."
 | 
|---|
 | 34 | END K FY,BFY,EFY,CFY,AFY,NX,MX,ZERONODE,FLAG,X,Y,TREC,CREC,LREC,XPOS,DX,CY,MOP,ARCBIT,DIC,DLAYGO,A,N,M,PERCENT,RECCOUNT
 | 
|---|
 | 35 |  K %DT,ARCHECK,CURSOR,CLEANFIL,D0,DG,DICR,DIG,DIH,DIU,DIV,DIW,ITEMS,MESSAGE,OUT,RTIME,TTIME,YPOS,BTIME,DA,LASTENT,LINE,SS,TIME,XCOUNT
 | 
|---|
 | 36 |  QUIT
 | 
|---|
 | 37 | ADD(DA,X,FLAG) ;add record to 443.9
 | 
|---|
 | 38 |  NEW MOP,Z
 | 
|---|
 | 39 |  S MOP=$P(FLAG,"^",2),FLAG=$P(FLAG,"^")
 | 
|---|
 | 40 |  L +^PRC(443.9):5 I '$T S Y=-1 Q
 | 
|---|
 | 41 |  S:'$D(^PRC(443.9,DA)) Y=$P(^PRC(443.9,0),"^",4),Y=Y+1,$P(^(0),"^",3,4)=DA_"^"_Y
 | 
|---|
 | 42 |  S ^PRC(443.9,DA,0)=DA_"^"_FLAG_"^"_MOP_"^"_X,^PRC(443.9,"B",DA,DA)="",^PRC(443.9,"AC",X,DA)=""
 | 
|---|
 | 43 |  L -^PRC(443.9)
 | 
|---|
 | 44 |  S Y=DA QUIT
 | 
|---|
 | 45 | CHECK(DA,ZNODE) ;;BEGIN CHECK ARCHIVE CRITERON?
 | 
|---|
 | 46 |  N MOP,ARCBIT
 | 
|---|
 | 47 |  S MOP=$P(ZNODE,"^",2)
 | 
|---|
 | 48 |  I 'MOP QUIT 2
 | 
|---|
 | 49 |  I MOP=5!(MOP=6) D
 | 
|---|
 | 50 |  .  S $P(^PRC(442,DA,0),U,2)=1
 | 
|---|
 | 51 |  .  S MOP=1
 | 
|---|
 | 52 |  .  QUIT
 | 
|---|
 | 53 |  S MOP=$P($G(^PRCD(442.5,MOP,0)),"^",2)
 | 
|---|
 | 54 |  I MOP="" Q 2
 | 
|---|
 | 55 |  S ARCBIT="" D @MOP QUIT ARCBIT_"^"_MOP
 | 
|---|
 | 56 | IS ;;ISSUES
 | 
|---|
 | 57 | TA ;;TRAVEL
 | 
|---|
 | 58 | OTA ;;OPEN TRAVEL
 | 
|---|
 | 59 |  QUIT
 | 
|---|
 | 60 | AR ;;ACCOUNTS RECEIVABLE
 | 
|---|
 | 61 |  S ARCBIT=3
 | 
|---|
 | 62 |  QUIT
 | 
|---|
 | 63 | CI ;;CERTIFIED INVOICE
 | 
|---|
 | 64 | PIA ;;PAYMENT IN ADVANCE
 | 
|---|
 | 65 | DD ;;GUARANTEED DELIVERY
 | 
|---|
 | 66 |  NEW SS,FS
 | 
|---|
 | 67 |  S SS=+$G(^PRC(442,DA,7))
 | 
|---|
 | 68 |  I 'SS S ARCBIT=2 QUIT
 | 
|---|
 | 69 |  S FS=$P($G(^PRCD(442.3,SS,0)),"^",3)
 | 
|---|
 | 70 |  S:FS>10 ARCBIT=1 I ((SS<11)!(SS>34)) S ARCBIT=$G(ARCBIT)+2
 | 
|---|
 | 71 |  QUIT
 | 
|---|
 | 72 | 1358 ;;1358
 | 
|---|
 | 73 |  NEW SS,FS
 | 
|---|
 | 74 |  S SS=+$G(^PRC(442,DA,7))
 | 
|---|
 | 75 |  I 'SS S ARCBIT=2 QUIT
 | 
|---|
 | 76 |  S FS=$P($G(^PRCD(442.3,SS,0)),"^",3)
 | 
|---|
 | 77 |  S:FS>10 ARCBIT=1 I ((FS<11)!((FS>34)&(FS'=100))) S ARCBIT=$G(ARCBIT)+2
 | 
|---|
 | 78 |  QUIT
 | 
|---|
 | 79 | ST ;;INVOICE/RECEIVING REPORT
 | 
|---|
 | 80 | IF ;;IMPREST FUND/CASHIER
 | 
|---|
 | 81 | RQ ;;REQUISITION
 | 
|---|
 | 82 | PC ;;PURCHASE CARD
 | 
|---|
 | 83 | AB ;;AUTOBANK
 | 
|---|
 | 84 |  S SS=+$G(^PRC(442,DA,7))
 | 
|---|
 | 85 |  I 'SS S ARCBIT=2 QUIT
 | 
|---|
 | 86 |  S SS=$P($G(^PRCD(442.3,SS,0)),"^",2)
 | 
|---|
 | 87 |  S:SS>10 ARCBIT=1 I ((SS<11)!(SS>29)) S ARCBIT=$G(ARCBIT)+2
 | 
|---|
 | 88 |  QUIT
 | 
|---|