1 | PRCPAGS0 ;WISC/RFJ-autogenerate secondary order ;01 Dec 92
|
---|
2 | ;;5.1;IFCAP;;Oct 20, 2000
|
---|
3 | ;Per VHA Directive 10-93-142, this routine should not be modified.
|
---|
4 | D ^PRCPUSEL Q:'$G(PRCP("I"))
|
---|
5 | I PRCP("DPTYPE")'="S" W !!,"THIS OPTION CAN ONLY BE USED BY SECONDARY INVENTORY POINTS." Q
|
---|
6 | N %,D,INVPT,PRCPEXIT,PRCPFLAG,PRCPFNON,PRCPFONE,V,X,Y
|
---|
7 | S %="========== PART 1: SELECTION OF DISTRIBUTION INVENTORY POINTS ==========" W !!?(80-$L(%)\2),%
|
---|
8 | W !!,"Selected distribution inventory points will be used to auto-generate the order."
|
---|
9 | K ^TMP($J,"PRCPAG")
|
---|
10 | S INVPT=$$FROMCHEK^PRCPUDPT(PRCP("I"),0)
|
---|
11 | I $G(PRCPFNON) W !!,"THIS INVENTORY POINT IS NOT STOCKED BY A PRIMARY INVENTORY POINT." Q
|
---|
12 | I $G(PRCPFONE) S %=$$INVNAME^PRCPUX1(INVPT) W !!,"This inventory point is only stocked by: ",% S ^TMP($J,"PRCPAG","V",INVPT)=% G AUTOGEN
|
---|
13 | K PRCPFLAG D ALL Q:$G(PRCPFLAG)
|
---|
14 | F D Q:$G(PRCPFLAG)
|
---|
15 | . I $O(^TMP($J,"PRCPAG","V",0)) D
|
---|
16 | . . W !!!," Currently selected distribution inventory points:",!," "
|
---|
17 | . . S V=0 F S V=$O(^TMP($J,"PRCPAG","V",V)) Q:'V S %=$E(^(V),1,20),%=%_$E(" ",$L(%),20) W:$X>70 !," " W %," "
|
---|
18 | . . W !," You can DE-select one of the above distribution points by reselecting it."
|
---|
19 | . W !!,"Select the name of the inventory point that stocks your secondary, '^' to exit."
|
---|
20 | . I '$O(^TMP($J,"PRCPAG","V",0)) W !,"Press return without a selection to select ALL distribution inventory points."
|
---|
21 | . S Y=$$FROM^PRCPUDPT(PRCP("I")) I Y["^" S (PRCPEXIT,PRCPFLAG)=1 Q
|
---|
22 | . I 'Y,'$O(^TMP($J,"PRCPAG","V",0)) D ALL S:$G(PRCPFLAG) PRCPEXIT=1 Q
|
---|
23 | . I 'Y S PRCPFLAG=1 Q
|
---|
24 | . I $D(^TMP($J,"PRCPAG","V",+Y)) K ^(+Y) W !?10,"DE-selected !" Q
|
---|
25 | . S ^TMP($J,"PRCPAG","V",+Y)=$$INVNAME^PRCPUX1(Y) W !?10,"selected !"
|
---|
26 | I $G(PRCPEXIT) D Q Q
|
---|
27 | ;
|
---|
28 | AUTOGEN ; start autogen with selected distribution points
|
---|
29 | S %="========== PART 2: START AUTO-GENERATION ==========" W !!?(80-$L(%)\2),%
|
---|
30 | I '$O(^TMP($J,"PRCPAG","V",0)) W !!,"NO DISTRIBUTION INVENTORY POINTS SELECTED." Q
|
---|
31 | W !!,"Auto-generating from the following distribution inventory points:",!
|
---|
32 | S V=0 F S V=$O(^TMP($J,"PRCPAG","V",V)) Q:'V S %=$E(^(V),1,20),%=%_$E(" ",$L(%),20) W:$X>70 ! W %," "
|
---|
33 | ;
|
---|
34 | ; check to see if there are outstanding distribution orders
|
---|
35 | ; unreleased
|
---|
36 | K PRCPFLAG S X=0 F S X=$O(^PRCP(445.3,"AD",PRCP("I"),X)) Q:'X S D=$G(^PRCP(445.3,X,0)) I D'="",$P(D,"^",6)="" D
|
---|
37 | . I '$G(PRCPFLAG) W !!,"The following distribution orders have not been released for filling:"
|
---|
38 | . W !?5,$P(D,"^"),?15,"primary ",$$INVNAME^PRCPUX1(+$P(D,"^",2)),?50,"Date: ",$E($P(D,"^",4),4,5),"-",$E($P(D,"^",4),6,7),"-",$E($P(D,"^",4),2,3)
|
---|
39 | . S PRCPFLAG=1
|
---|
40 | S %=1 I $G(PRCPFLAG) S %=2 W !,"Since the DUE-INS have not been created for the above orders, you may want to",!,"check them before continuing with auto-generating the new distribution order."
|
---|
41 | S XP="ARE YOU SURE YOU WANT TO START AUTO-GENERATION",XH="Enter 'YES' to start auto-generating the order, 'NO' or '^' to exit."
|
---|
42 | W !! I $$YN^PRCPUYN(%)=1 D START^PRCPAGS1
|
---|
43 | Q K ^TMP($J,"PRCPAG") Q
|
---|
44 | ;
|
---|
45 | ;
|
---|
46 | ALL ; select all distribution inventory points
|
---|
47 | S XP=" Do you want to select ALL distribution inventory points",XH=" Enter 'YES' to autogen from ALL distribution inventory points,",XH(1)=" 'NO' or '^' to exit."
|
---|
48 | W ! S %=$$YN^PRCPUYN(1)
|
---|
49 | I %=2 Q
|
---|
50 | I %=1 D Q
|
---|
51 | . S X=0 F S X=$O(^PRCP(445,"AB",PRCP("I"),X)) Q:'X S ^TMP($J,"PRCPAG","V",X)=$$INVNAME^PRCPUX1(X)
|
---|
52 | S PRCPFLAG=1 Q
|
---|