| 1 | PRCPAGSS ;WISC/RFJ-scheduled autogen secondary order build         ;01 Dec 92
 | 
|---|
| 2 | V ;;5.1;IFCAP;**1**;Oct 20, 2000
 | 
|---|
| 3 |  ;Per VHA Directive 10-93-142, this routine should not be modified.
 | 
|---|
| 4 |  Q
 | 
|---|
| 5 |  ;
 | 
|---|
| 6 |  ; entry point for supply station secondaries
 | 
|---|
| 7 | SSS N PRCPSCHE
 | 
|---|
| 8 |  S PRCPSCHE=1
 | 
|---|
| 9 |  D BUILD
 | 
|---|
| 10 |  Q
 | 
|---|
| 11 |  ;
 | 
|---|
| 12 |  ; entry point for non-supply station secondaries
 | 
|---|
| 13 | NSS N PRCPSCHE
 | 
|---|
| 14 |  S PRCPSCHE=2
 | 
|---|
| 15 |  D BUILD
 | 
|---|
| 16 |  Q
 | 
|---|
| 17 |  ;
 | 
|---|
| 18 | BUILD L +^TMP("PRCPSCHE",PRCPSCHE):0 I $T=0 QUIT  ; process already running
 | 
|---|
| 19 |  N PRCP,PRCPDP,PRCPFONE,PRCPFNON,PRCPIP,PRCPSS,PRCPXMY
 | 
|---|
| 20 |  N ITEM,XMB,XMDUZ,XMTEXT,XMY
 | 
|---|
| 21 |  K ^TMP($J,"PRCPAGSS")
 | 
|---|
| 22 |  S PRCPIP=0
 | 
|---|
| 23 |  I +$O(^PRCP(445,0))'>0 G QUIT
 | 
|---|
| 24 |  F  S PRCPIP=$O(^PRCP(445,PRCPIP)) G BACKORD:+PRCPIP'>0  D
 | 
|---|
| 25 |  . I '$D(^PRCP(445,PRCPIP,0)) QUIT
 | 
|---|
| 26 |  . I $P($G(^PRCP(445,PRCPIP,0)),"^",3)'="S" QUIT
 | 
|---|
| 27 |  . I $P($G(^PRCP(445,PRCPIP,0)),"^",1)["***INACTIVE_" QUIT
 | 
|---|
| 28 |  . S PRCPSS=$P($G(^PRCP(445,PRCPIP,5)),"^",1)
 | 
|---|
| 29 |  . I PRCPSS]"",PRCPSCHE'=1 QUIT
 | 
|---|
| 30 |  . I PRCPSS']"",PRCPSCHE'=2 QUIT
 | 
|---|
| 31 |  . S PRCPDP=$$FROMCHEK^PRCPUDPT(PRCPIP,0)
 | 
|---|
| 32 |  . I $G(PRCPFNON)!'$G(PRCPFONE) QUIT  ; secondary must have only 1 supplier
 | 
|---|
| 33 |  . S PRCP("I")=PRCPIP
 | 
|---|
| 34 |  . K ^TMP($J,"PRCPAG")
 | 
|---|
| 35 |  . S ^TMP($J,"PRCPAG","V",PRCPDP)=$$INVNAME^PRCPUX1(PRCPDP)
 | 
|---|
| 36 |  . D START^PRCPAGS1
 | 
|---|
| 37 |  . I $P(PRCPSCHE,"^",2)']"" QUIT  ; successfully processed
 | 
|---|
| 38 |  . I $P(PRCPSCHE,"^",2)'=4 D BLDLIST ; No order numbers left or FileMan can't generate record or nothing to be ordered
 | 
|---|
| 39 |  . I $P(PRCPSCHE,"^",2)=4 S ^TMP($J,"PRCPAGSS",PRCPIP)="" ; IP in use
 | 
|---|
| 40 |  . S PRCPSCHE=+PRCPSCHE ; remove error codes if set
 | 
|---|
| 41 |  . QUIT
 | 
|---|
| 42 |  ;
 | 
|---|
| 43 |  ; process any IP's that were in use, if possible
 | 
|---|
| 44 | BACKORD S PRCPIP=0
 | 
|---|
| 45 |  I $O(^TMP($J,"PRCPAGSS",0))']"" G QUIT
 | 
|---|
| 46 |  F  S PRCPIP=$O(^TMP($J,"PRCPAGSS",PRCPIP)) G QUIT:+PRCPIP'>0 D
 | 
|---|
| 47 |  . I '$D(^PRCP(445,PRCPIP,0)) QUIT
 | 
|---|
| 48 |  . S PRCPSS=$P($G(^PRCP(445,PRCPIP,5)),"^",1)
 | 
|---|
| 49 |  . I PRCPSS]"",PRCPSCHE'=1 QUIT
 | 
|---|
| 50 |  . I PRCPSS']"",PRCPSCHE'=2 QUIT
 | 
|---|
| 51 |  . S PRCPDP=$$FROMCHEK^PRCPUDPT(PRCPIP,0)
 | 
|---|
| 52 |  . I $G(PRCPFNON)!'$G(PRCPFONE) QUIT  ; secondary must have only 1 supplier
 | 
|---|
| 53 |  . S PRCP("I")=PRCPIP
 | 
|---|
| 54 |  . K ^TMP($J,"PRCPAG")
 | 
|---|
| 55 |  . S ^TMP($J,"PRCPAG","V",PRCPDP)=$$INVNAME^PRCPUX1(PRCPDP)
 | 
|---|
| 56 |  . D START^PRCPAGS1
 | 
|---|
| 57 |  . I $P(PRCPSCHE,"^",2)']"" QUIT  ; successfully processed
 | 
|---|
| 58 |  . D BLDLIST
 | 
|---|
| 59 |  . S PRCPSCHE=+PRCPSCHE ; remove error codes if set
 | 
|---|
| 60 |  . QUIT
 | 
|---|
| 61 |  ;
 | 
|---|
| 62 | BLDLIST D GETUSER^PRCPXTRM(PRCPIP) Q:'$O(PRCPXMY(""))  ; inventory point users
 | 
|---|
| 63 |  S ITEM=0
 | 
|---|
| 64 |  ; restrict to managers
 | 
|---|
| 65 |  F  S ITEM=$O(PRCPXMY(ITEM)) Q:ITEM'>0  I PRCPXMY(ITEM)=1 S XMY(ITEM)=""
 | 
|---|
| 66 |  K ^TMP($J,"PRCPAGSSM")
 | 
|---|
| 67 |  I $P(PRCPSCHE,"^",2)=1 S ^TMP($J,"PRCPAGSSM",1,1,0)="There are no available order numbers.  Please delete or post orders."
 | 
|---|
| 68 |  I $P(PRCPSCHE,"^",2)=2 S ^TMP($J,"PRCPAGSSM",1,1,0)="The system was unable to add a new order."
 | 
|---|
| 69 |  I $P(PRCPSCHE,"^",2)=3 S ^TMP($J,"PRCPAGSSM",1,1,0)="No items needed to be ordered."
 | 
|---|
| 70 |  I $P(PRCPSCHE,"^",2)=4 S ^TMP($J,"PRCPAGSSM",1,1,0)="The inventory point was in use."
 | 
|---|
| 71 |  S ^TMP($J,"PRCPAGSSM",1,0)=1
 | 
|---|
| 72 | SEND S XMTEXT="^TMP($J,""PRCPAGSSM"",1,"
 | 
|---|
| 73 |  S XMB="PRCP_ORDER_NOT_GENERATED"
 | 
|---|
| 74 |  S XMB(1)=$$INVNAME^PRCPUX1(PRCPIP)
 | 
|---|
| 75 |  S XMDUZ="SCHEDULED ORDER BUILDER"
 | 
|---|
| 76 |  D EN^XMB
 | 
|---|
| 77 |  Q
 | 
|---|
| 78 |  ;
 | 
|---|
| 79 | QUIT L -^TMP("PRCPSCHE",PRCPSCHE)
 | 
|---|
| 80 |  K ^TMP($J,"PRCPAG"),^TMP($J,"PRCPAGSSM")
 | 
|---|
| 81 |  QUIT
 | 
|---|