| 1 | PRCHDSP5 ;WISC/DJM-PRINT AMENDMENT, ROUTINE #2 ;9/15/95  11:43 AM | 
|---|
| 2 | V ;;5.1;IFCAP;**21**;Oct 20, 2000 | 
|---|
| 3 | ;Per VHA Directive 10-93-142, this routine should not be modified. | 
|---|
| 4 | ; | 
|---|
| 5 | E22 ;LINE ITEM Delete PRINT | 
|---|
| 6 | N FIELD,CHANGE,CHANGES,OLD,ITEM,ITEM0,ITEM1,ITEM2,LCNT,DATA,I,UOP | 
|---|
| 7 | S FIELD=0 K ITEM D LCNT^PRCHPAM5(.LCNT) | 
|---|
| 8 | F  S FIELD=$O(^PRC(442,PRCHPO,6,PRCHAM,3,"AC",AMEND,FIELD)) Q:FIELD'>0  D | 
|---|
| 9 | .S CHANGE=0 F  S CHANGE=$O(^PRC(442,PRCHPO,6,PRCHAM,3,"AC",AMEND,FIELD,CHANGE)) Q:CHANGE'>0  D | 
|---|
| 10 | ..S CHANGES=^PRC(442,PRCHPO,6,PRCHAM,3,CHANGE,0),OLD=^PRC(442,PRCHPO,6,PRCHAM,3,CHANGE,1,1,0) | 
|---|
| 11 | ..S ITEM=$P(CHANGES,U,4) Q:$D(ITEM(ITEM))  S ITEM(ITEM)=1 | 
|---|
| 12 | ..S ITEM0=$G(^PRC(442,PRCHPO,2,ITEM,0)) | 
|---|
| 13 | ..I ITEM0="" Q | 
|---|
| 14 | ..S ITEM1=$G(^PRC(442,PRCHPO,2,ITEM,1,1,0)) | 
|---|
| 15 | ..D LINE^PRCHPAM5(.LCNT,2) S DATA="The following line item has been cancelled:" D DATA^PRCHPAM5(.LCNT,DATA) | 
|---|
| 16 | ..S DATA="Item No. "_$P(ITEM0,U)_"     Item Master File No. " | 
|---|
| 17 | ..S DATA=DATA_$P(ITEM0,U,5)_"     BOC: "_+$P(ITEM0,U,4) | 
|---|
| 18 | ..S DATA=DATA_"   CONTRACT: "_$P($G(^PRC(442,PRCHPO,2,ITEM,2)),U,2) | 
|---|
| 19 | ..D DATA^PRCHPAM5(.LCNT,DATA) | 
|---|
| 20 | ..D NEW^PRCHDSP6 | 
|---|
| 21 | ..S UOP=$S($P(ITEM0,U,3)>0:$P($G(^PRCD(420.5,$P(ITEM0,U,3),0)),U),1:"") | 
|---|
| 22 | ..S DATA="    Items per "_UOP_": "_$P(ITEM0,U,12) | 
|---|
| 23 | ..F I=1:1:26-$L(DATA) S DATA=DATA_" " | 
|---|
| 24 | ..S DATA=DATA_"NSN: "_$P(ITEM0,U,13) D DATA^PRCHPAM5(.LCNT,DATA) | 
|---|
| 25 | ..I $P(ITEM0,U,6)]"" S DATA="    STK#: "_$P(ITEM0,U,6) D DATA^PRCHPAM5(.LCNT,DATA) | 
|---|
| 26 | ..S QTY=$$FETCH(2,ITEM) | 
|---|
| 27 | ..S AUC=$$FETCH(5,ITEM) | 
|---|
| 28 | ..S UOP=$S($P(ITEM0,U,3)>0:$P($G(^PRCD(420.5,$P(ITEM0,U,3),0)),U),1:"") | 
|---|
| 29 | ..S DATA="    "_QTY_" "_UOP_" at $"_$J(AUC,12,4)_" = $"_$J(QTY*AUC,9,2) D DATA^PRCHPAM5(.LCNT,DATA),LCNT1^PRCHPAM5(LCNT) | 
|---|
| 30 | Q | 
|---|
| 31 | ; | 
|---|
| 32 | E23 ;LINE ITEM Edit PRINT | 
|---|
| 33 | N FIELD,CHANGE,CHANGES,IMF,BOC,OLD,ITEM,ITEM0,ITEM1,ITEMZ,QTY,AUC,UOP,UOP1,NSN,UCF,LCNT,DATA,DES,VAL,PRCHLN,ABC,VSN,CONOLD,CON442 | 
|---|
| 34 | S FIELD=0 K ITEM D LCNT^PRCHPAM5(.LCNT) | 
|---|
| 35 | F  S FIELD=$O(^PRC(442,PRCHPO,6,PRCHAM,3,"AC",AMEND,FIELD)) Q:FIELD'>0  D | 
|---|
| 36 | .S CHANGE=0 F  S CHANGE=$O(^PRC(442,PRCHPO,6,PRCHAM,3,"AC",AMEND,FIELD,CHANGE)) Q:CHANGE'>0  D | 
|---|
| 37 | ..S CHANGES=^PRC(442,PRCHPO,6,PRCHAM,3,CHANGE,0),OLD=^PRC(442,PRCHPO,6,PRCHAM,3,CHANGE,1,1,0) | 
|---|
| 38 | ..S ITEM=$P(CHANGES,U,4) Q:$D(ITEM(ITEM))  S ITEM(ITEM)=1 | 
|---|
| 39 | ..S ITEM0=$G(^PRC(442,PRCHPO,2,ITEM,0)) | 
|---|
| 40 | ..I ITEM0="" Q | 
|---|
| 41 | ..I $P(ITEM0,U,2)=0,$P(ITEM0,U,9)=0 Q | 
|---|
| 42 | ..S ITEM1=$G(^PRC(442,PRCHPO,2,ITEM,1,1,0)) | 
|---|
| 43 | ..S (ABC,DES)=$$FETCH(1,ITEM) S PRCHLN=VAL | 
|---|
| 44 | ..S IMF=$$FETCH(1.5,ITEM) I IMF'>0 S IMF=$P(ITEM0,U,5) | 
|---|
| 45 | ..S BOC=+$$FETCH(3.5,ITEM) I BOC'>0 S BOC=+$P(ITEM0,U,4) | 
|---|
| 46 | ..S QTY=$$FETCH(2,ITEM) I QTY'>0 S QTY=$P(ITEM0,U,2) | 
|---|
| 47 | ..S AUC=$$FETCH(5,ITEM) I AUC="" S AUC=$P(ITEM0,U,9) | 
|---|
| 48 | ..S UOP=$$FETCH(3,ITEM) I UOP'>0 S UOP=$P(ITEM0,U,3) | 
|---|
| 49 | ..S NSN=$$FETCH(9.5,ITEM) I NSN="" S NSN=$P(ITEM0,U,13) | 
|---|
| 50 | ..S UCF=$$FETCH(3.1,ITEM) I UCF'>0 S UCF=$P(ITEM0,U,12) | 
|---|
| 51 | ..S VSN=$$FETCH(9,ITEM) I VSN="" S VSN=$P(ITEM0,U,6) | 
|---|
| 52 | ..S CONOLD=$$FETCH(4,ITEM) | 
|---|
| 53 | ..S CON442=$P($G(^PRC(442,PRCHPO,2,ITEM,2)),U,2) | 
|---|
| 54 | ..I CONOLD="",CON442'="" S CONOLD=CON442 | 
|---|
| 55 | ..D LINE^PRCHPAM5(.LCNT,2) S DATA="**Currently:" | 
|---|
| 56 | ..D DATA^PRCHPAM5(.LCNT,DATA) | 
|---|
| 57 | ..S DATA="Item No. "_$P(ITEM0,U)_"     Item Master File No. " | 
|---|
| 58 | ..S DATA=DATA_IMF_"     BOC: "_BOC_"   CONTRACT: "_CONOLD | 
|---|
| 59 | ..D DATA^PRCHPAM5(.LCNT,DATA) | 
|---|
| 60 | ..I $L(ABC)>0 D OLD^PRCHDSP6 | 
|---|
| 61 | ..I $L(ABC)'>0 S ITEMZ=ITEM1 D NEW^PRCHDSP6 | 
|---|
| 62 | ..S UOP1=$S($L(UOP)>0:$P($G(^PRCD(420.5,UOP,0)),U),1:"") | 
|---|
| 63 | ..S DATA="    Items per "_UOP1_": "_UCF | 
|---|
| 64 | ..F I=1:1:26-$L(DATA) S DATA=DATA_" " | 
|---|
| 65 | ..S DATA=DATA_"NSN: "_NSN D DATA^PRCHPAM5(.LCNT,DATA) | 
|---|
| 66 | ..I $L(VSN)>0 S DATA="    STK#: "_VSN D DATA^PRCHPAM5(.LCNT,DATA) | 
|---|
| 67 | ..S UOP1=$S($L(UOP)>0:$P($G(^PRCD(420.5,UOP,0)),U),1:"") | 
|---|
| 68 | ..S DATA="    "_QTY_" "_UOP1_" at $"_$J(AUC,12,2)_" = $"_$J(QTY*AUC,9,2) D DATA^PRCHPAM5(.LCNT,DATA) | 
|---|
| 69 | ..S DATA="                                                    " | 
|---|
| 70 | ..D DATA^PRCHPAM5(.LCNT,DATA) | 
|---|
| 71 | ..S DATA=" **Will now be AMENDED to read:" D DATA^PRCHPAM5(.LCNT,DATA) | 
|---|
| 72 | ..S DATA="Item No. "_$P(ITEM0,U)_"     Item Master File No. " | 
|---|
| 73 | ..S DATA=DATA_$P(ITEM0,U,5)_"     BOC: "_+$P(ITEM0,U,4) | 
|---|
| 74 | ..S DATA=DATA_"   CONTRACT: "_CON442 | 
|---|
| 75 | ..D DATA^PRCHPAM5(.LCNT,DATA) | 
|---|
| 76 | ..S:$D(ITEMZ) ITEM1=ITEMZ D NEW^PRCHDSP6 | 
|---|
| 77 | ..S UOP1=$S($P(ITEM0,U,3)>0:$P($G(^PRCD(420.5,$P(ITEM0,U,3),0)),U),1:"") | 
|---|
| 78 | ..S DATA="    Items per "_UOP1_": "_$P(ITEM0,U,12) | 
|---|
| 79 | ..F I=1:1:26-$L(DATA) S DATA=DATA_" " | 
|---|
| 80 | ..S DATA=DATA_"NSN: "_$P(ITEM0,U,13) D DATA^PRCHPAM5(.LCNT,DATA) | 
|---|
| 81 | ..I $P(ITEM0,U,6)]"" S DATA="    STK#: "_$P(ITEM0,U,6) D DATA^PRCHPAM5(.LCNT,DATA) | 
|---|
| 82 | ..S UOP1=$S($P(ITEM0,U,3)>0:$P($G(^PRCD(420.5,$P(ITEM0,U,3),0)),U),1:"") | 
|---|
| 83 | ..S DATA="    "_$P(ITEM0,U,2)_" "_UOP1_" $"_$J($P(ITEM0,U,9),12,4)_" = $"_$J($P(ITEM0,U,2)*$P(ITEM0,U,9),9,2) | 
|---|
| 84 | ..D DATA^PRCHPAM5(.LCNT,DATA),LCNT1^PRCHPAM5(LCNT) | 
|---|
| 85 | Q | 
|---|
| 86 | ; | 
|---|
| 87 | FETCH(FIELD,ITEM) ;EXTRINSIC FUNCTION TO RETURN THE 'VALUE' FOR A FIELD FROM 'LINE ITEM | 
|---|
| 88 | ;AMENDMENT' OPTIONS. | 
|---|
| 89 | N VAL1 | 
|---|
| 90 | S VAL=0 F  S VAL=$O(^PRC(442,PRCHPO,6,PRCHAM,3,"AC",21,FIELD,VAL)) Q:VAL'>0  S VAL1=$P(^PRC(442,PRCHPO,6,PRCHAM,3,VAL,0),U,4) I VAL1=ITEM S VAL1=0 G EXIT | 
|---|
| 91 | S VAL=0 F  S VAL=$O(^PRC(442,PRCHPO,6,PRCHAM,3,"AC",22,FIELD,VAL)) Q:VAL'>0  S VAL1=$P(^PRC(442,PRCHPO,6,PRCHAM,3,VAL,0),U,4) I VAL1=ITEM D  G EXIT | 
|---|
| 92 | .S VAL1=^PRC(442,PRCHPO,6,PRCHAM,3,VAL,1,1,0) | 
|---|
| 93 | .Q | 
|---|
| 94 | S VAL=0 F  S VAL=$O(^PRC(442,PRCHPO,6,PRCHAM,3,"AC",23,FIELD,VAL)) Q:VAL'>0  S VAL1=$P(^PRC(442,PRCHPO,6,PRCHAM,3,VAL,0),U,4) I VAL1=ITEM D  G EXIT | 
|---|
| 95 | .S VAL1=^PRC(442,PRCHPO,6,PRCHAM,3,VAL,1,1,0) | 
|---|
| 96 | .Q | 
|---|
| 97 | S VAL1="" | 
|---|
| 98 | EXIT Q VAL1 | 
|---|