| 1 | PRCH7C ;WISC/PLT-PURCHASE CARD PROSTHETICS AMEND/RECONCILE INTERFACE; 4/1/98
 | 
|---|
| 2 | V ;;5.1;IFCAP;;Oct 20, 2000
 | 
|---|
| 3 |  ;Per VHA Directive 10-93-142, this routine should not be modified.
 | 
|---|
| 4 |  QUIT  ;invalid entry
 | 
|---|
| 5 |  ;
 | 
|---|
| 6 |  ; prca=ien of 442, prcb=new order amount
 | 
|---|
| 7 |  ; X-return value=1 if amendment done, 0=not done
 | 
|---|
| 8 | AMEND(PRCA,PRCB) ;amendment
 | 
|---|
| 9 |  N PRC,PRCPROST,PRCRI,PRCHAUTH,PRCPAMT
 | 
|---|
| 10 |  N PRCF,RETURN,PRCHAM,PRCHPO,PRCHNEW,OUT,CAN,PRCHAU,PRCHER,PRCHON
 | 
|---|
| 11 |  N A,B,ER,FL,FIS,DELIVER,PRCHAMDA,PRCHAV,PRCHL1,PRCHLN,PRCHRET,LCNT
 | 
|---|
| 12 |  N PRCHL2,ROU,DIC,I,PRCHAMT,PRCHAREC,PRCHEDI,PRCHN,PRCHO,SFUND
 | 
|---|
| 13 |  N PRCHX,PRCHIMP,PRCHNRQ,PRCHP,REPO,PRCHNORE,%,%A,%B,D0,D1,J
 | 
|---|
| 14 |  N DA
 | 
|---|
| 15 |  D DUZ^PRCFSITE
 | 
|---|
| 16 |  S PRCRI(442)=+PRCA,PRCRI(443.6)=+PRCA,PRCPAMT=PRCB
 | 
|---|
| 17 |  ;
 | 
|---|
| 18 |  ; Clean up arrays NEW, PRCFMO and PRCTMP before their first call.
 | 
|---|
| 19 |  K NEW,PRCFMO,PRCTMP
 | 
|---|
| 20 |  D KILL^PRCHMA1 S PRCHNEW="",PRCHNORE=1,CAN=0
 | 
|---|
| 21 |  D DUZ^PRCFSITE
 | 
|---|
| 22 |  S PRCHAUTH=1,PRCPROST=6
 | 
|---|
| 23 |  S A=$P(^PRC(442,PRCRI(442),0),"^"),PRC("SITE")=$P(A,"-")
 | 
|---|
| 24 |  S PRCHPO=PRCRI(442) I $D(^PRC(443.6,PRCRI(442),0)) S PRCHNEW=111
 | 
|---|
| 25 |  ; S B=5 D ICLOCK^PRC0B("^PRC(442,"_PRCHPO_",",.B)
 | 
|---|
| 26 |  ;
 | 
|---|
| 27 |  ; The next two lines are needed when adding amendments in Prosthetics.
 | 
|---|
| 28 |  L +^PRC(442,PRCHPO):0 E  W !,"Someone else is editing this entry, try later." G AMEEX
 | 
|---|
| 29 |  S PRCENTRY=PRCHPO
 | 
|---|
| 30 |  ; D AMENDNO^PRCHAMU D DCLOCK^PRC0B("^PRC(442,"_PRCHPO_",") G:'$G(PRCHAM) AMEEX
 | 
|---|
| 31 |  D AMENDNO^PRCHAMU G:'$G(PRCHAM) AMEEX
 | 
|---|
| 32 |  S PRCHAMT=0,FL=0 D INFO^PRCHAMU G:$D(PRCHAV)!ER AMEEX
 | 
|---|
| 33 |  S X=$P($G(^PRC(443.6,PRCHPO,0)),U,16) D EN2^PRCHAMXB
 | 
|---|
| 34 |  I PRCHNEW="" S DA(1)=PRCHPO,DA=PRCHAM,PRCHX=X,X=0,PRCHAMDA=34 D EN8^PRCHAMXB S X=PRCHX
 | 
|---|
| 35 |  I $P(^PRC(443.6,PRCHPO,6,PRCHAM,0),U,4)=5!($P(^(0),U,4)=15) S CAN=1
 | 
|---|
| 36 |  K NOCAN,DTOUT,DUOUT,REPONUM S PRCHAMDA=23,ROU=$P(^PRCD(442.2,PRCHAMDA,0),U,3),ROU=$TR(ROU,"~","^")
 | 
|---|
| 37 |  S PRCHL1=$P(^PRCD(442.2,PRCHAMDA,1),U),PRCHL2=$P(^(1),U,2)
 | 
|---|
| 38 |  D @ROU
 | 
|---|
| 39 |  D CAN1^PRCHMA
 | 
|---|
| 40 | AMEEX D KILL^PRCHMA1 S X=$S(PRCPROST=6.9:1,1:0)
 | 
|---|
| 41 |  ;
 | 
|---|
| 42 |  ; Clean up arrays NEW, PRCFMO, and PRCTMP after use.
 | 
|---|
| 43 |  K NEW,PRCFMO,PRCTMP
 | 
|---|
| 44 |  QUIT
 | 
|---|
| 45 |  ;
 | 
|---|
| 46 | RECON(PRCA,PRCB) ;prca=ri of file 442, prcb=ri of file 200
 | 
|---|
| 47 |  ; X-return value 1 if final charge, 0=else
 | 
|---|
| 48 |  N A
 | 
|---|
| 49 |  I $G(IOSTBM)="" S X="IOSTBM" D ENDR^%ZISS I $G(IOSTBM)="" D EN^DDIOL("Wrong type terminal (missing IOSTBM)!") S X=0 QUIT
 | 
|---|
| 50 |  S A=+^PRC(442,PRCA,0),A=$P(^PRC(411,A,9),U,7)
 | 
|---|
| 51 |  D RECON^PRCH1A2(PRCA,PRCB,A)
 | 
|---|
| 52 |  QUIT
 | 
|---|