| 1 | RMPRPIYY ;HINCIO/ODJ - PIP EDIT - PROMPTS AND BARCODE ;3/8/01 | 
|---|
| 2 | ;;3.0;PROSTHETICS;**61,132**;Feb 09, 1996;Build 13 | 
|---|
| 3 | Q | 
|---|
| 4 | ; The following subroutines are for selecting Orders (661.41) | 
|---|
| 5 | ; | 
|---|
| 6 | ;***** OK - Prompt for an OK | 
|---|
| 7 | OK(RMPRYN,RMPREXC) ; | 
|---|
| 8 | N DIR,X,Y,DA,DUOUT,DTOUT,DIROUT,DIRUT | 
|---|
| 9 | S RMPREXC="" | 
|---|
| 10 | S RMPRYN="N" | 
|---|
| 11 | S DIR("A")="         ...OK" | 
|---|
| 12 | S DIR("B")="Yes" | 
|---|
| 13 | S DIR(0)="Y" | 
|---|
| 14 | D ^DIR | 
|---|
| 15 | I $D(DTOUT) S RMPREXC="T" G OKX | 
|---|
| 16 | I $D(DIROUT) S RMPREXC="P" G OKX | 
|---|
| 17 | I X=""!(X["^") S RMPREXC="^" G OKX | 
|---|
| 18 | S RMPRYN="N" S:Y RMPRYN="Y" | 
|---|
| 19 | OKX Q | 
|---|
| 20 | ; | 
|---|
| 21 | ;***** PVEN - Prompt for an Open order | 
|---|
| 22 | PORD(RMPRSTN,RMPRHCPC,RMPRITM,RMPR41,RMPREXC) ; | 
|---|
| 23 | N RMPRERR,DIR,X,Y,DUOUT,DTOUT,DIROUT,DA,DIRUT,RMPRA,RMPRGBLR,RMPRIEN1 | 
|---|
| 24 | N RMPRMAX,RMPRLIN,RMPRGBL,RMPR41I,RMPRS,STS,RMPROCNT,RMPRIEN,RMPRD | 
|---|
| 25 | S (RMPRERR,RMPROCNT)=0 | 
|---|
| 26 | S RMPREXC="" | 
|---|
| 27 | S RMPRMAX=15 | 
|---|
| 28 | S RMPRLIN=0 | 
|---|
| 29 | K RMPR41 | 
|---|
| 30 | ; | 
|---|
| 31 | ; See if just 1 record - no need to list if there is | 
|---|
| 32 | ; Loop on open orders | 
|---|
| 33 | K RMPRORD,RMPRIEN1 | 
|---|
| 34 | F STS="O","R" S RMPRD="" F  S RMPRD=$O(^RMPR(661.41,"ASSHID",RMPRSTN,STS,RMPRHCPC,RMPRITM,RMPRD)) Q:RMPRD=""  D  Q:RMPRERR | 
|---|
| 35 | . S RMPRIEN="" | 
|---|
| 36 | . F  S RMPRIEN=$O(^RMPR(661.41,"ASSHID",RMPRSTN,STS,RMPRHCPC,RMPRITM,RMPRD,RMPRIEN)) Q:RMPRIEN=""  D  Q:RMPRERR | 
|---|
| 37 | .. K RMPR41 S RMPR41("IEN")=RMPRIEN | 
|---|
| 38 | .. S RMPRERR=$$GET^RMPRPIXN(.RMPR41,) | 
|---|
| 39 | .. I RMPRERR S RMPRERR=99 Q | 
|---|
| 40 | .. I RMPR41("BALANCE QTY")<1 Q | 
|---|
| 41 | .. S RMPRORD(RMPRD,RMPRIEN)=STS,RMPRIEN1=RMPRIEN,RMPROCNT=RMPROCNT+1 | 
|---|
| 42 | .. Q | 
|---|
| 43 | . Q | 
|---|
| 44 | I RMPROCNT=0 K RMPR41 G PORDX | 
|---|
| 45 | I RMPROCNT=1 S RMPR41("IEN")=RMPRIEN1 G PORDG | 
|---|
| 46 | ; | 
|---|
| 47 | ; Selection list of current stock records | 
|---|
| 48 | PORDL1 S RMPRD=0 | 
|---|
| 49 | PORDL1A S RMPRD=$O(RMPRORD(RMPRD)) I RMPRD="" G:'RMPRLIN PORDX G PORDP | 
|---|
| 50 | PORDL1B S RMPRIEN=$O(RMPRORD(RMPRD,RMPRIEN)) G:RMPRIEN="" PORDL1A | 
|---|
| 51 | K RMPR41,RMPR41I | 
|---|
| 52 | S RMPR41("IEN")=RMPRIEN | 
|---|
| 53 | S RMPR41I("IEN")=RMPR41("IEN") | 
|---|
| 54 | S RMPRERR=$$GETI^RMPRPIXN(.RMPR41I,) | 
|---|
| 55 | S RMPRERR=$$GET^RMPRPIXN(.RMPR41,) | 
|---|
| 56 | I RMPRLIN,'(RMPRLIN#RMPRMAX) D  G PORDP | 
|---|
| 57 | . S DIR("A",1)="Press <RETURN> to see more, '^' to exit this list, or" | 
|---|
| 58 | . Q | 
|---|
| 59 | PORDL2 S RMPRLIN=RMPRLIN+1 | 
|---|
| 60 | I RMPRLIN=1 D PORDH | 
|---|
| 61 | S RMPRS=$P(RMPR41I("DATE ORDER"),".",1) | 
|---|
| 62 | W !,$J(RMPRLIN,2)," ",$E(RMPRS,4,5)_"/"_$E(RMPRS,6,7)_"/"_$E(RMPRS,2,3) | 
|---|
| 63 | W ?11,$J(RMPR41("ORDER QTY"),5,0) | 
|---|
| 64 | W ?18,$E(RMPR41("VENDOR"),1,30) | 
|---|
| 65 | I +RMPR41("RECEIVE QTY") D | 
|---|
| 66 | . W ?49,$J(RMPR41("RECEIVE QTY"),5,0) | 
|---|
| 67 | . S RMPRS=$P(RMPR41I("DATE RECEIVE"),".",1) | 
|---|
| 68 | . W "  ",$E(RMPRS,4,5)_"/"_$E(RMPRS,6,7)_"/"_$E(RMPRS,2,3) | 
|---|
| 69 | . Q | 
|---|
| 70 | S RMPRA(RMPRLIN)=RMPR41("IEN") | 
|---|
| 71 | K RMPR41,RMPR41I | 
|---|
| 72 | G PORDL1B | 
|---|
| 73 | ; | 
|---|
| 74 | ; Prompt for selection | 
|---|
| 75 | PORDP S DIR(0)="FAO" | 
|---|
| 76 | S DIR("A")="Choose 1 - "_RMPRLIN_" : " | 
|---|
| 77 | D ^DIR | 
|---|
| 78 | I $D(DTOUT) S RMPREXC="T" G PORDX | 
|---|
| 79 | I $D(DIROUT) S RMPREXC="P" G PORDX | 
|---|
| 80 | I X="",$D(DIR("A",1)) K DIR("A",1) D PORDH G PORDL2 | 
|---|
| 81 | I X="" S RMPREXC="^" G PORDX | 
|---|
| 82 | I X["^"!($D(DUOUT)) S RMPREXC="^" G PORDX | 
|---|
| 83 | I '$D(RMPRA(X)) D  G PORDP | 
|---|
| 84 | . W !,"Please select a stock order record" | 
|---|
| 85 | . W !,"by entering a line number in range 1 - " | 
|---|
| 86 | . W RMPRLIN | 
|---|
| 87 | . Q | 
|---|
| 88 | S RMPR41("IEN")=RMPRA(X) | 
|---|
| 89 | PORDG K RMPR41I | 
|---|
| 90 | S RMPR41I("IEN")=RMPR41("IEN") | 
|---|
| 91 | S RMPRERR=$$GETI^RMPRPIXN(.RMPR41I,) | 
|---|
| 92 | S RMPRERR=$$GET^RMPRPIXN(.RMPR41,) | 
|---|
| 93 | S RMPR41("VENDOR IEN")=RMPR41I("VENDOR") | 
|---|
| 94 | PORDX Q | 
|---|
| 95 | PORDE() ; | 
|---|
| 96 | Q:$QS(RMPRGBL,1)'=661.41 1 | 
|---|
| 97 | Q:$QS(RMPRGBL,2)'="ASSHID" 1 | 
|---|
| 98 | Q:$QS(RMPRGBL,3)'=RMPRSTN 1 | 
|---|
| 99 | Q:$QS(RMPRGBL,4)'="O" 1 | 
|---|
| 100 | Q:$QS(RMPRGBL,5)'=RMPRHCPC 1 | 
|---|
| 101 | Q:$QS(RMPRGBL,6)'=RMPRITM 1 | 
|---|
| 102 | Q 0 | 
|---|
| 103 | PORDH W ! | 
|---|
| 104 | W !,"Select a current stock order record, or ^ if not receiving against an order.",! | 
|---|
| 105 | W ?3,"Date",?13,"Qty",?18,"Vendor",?49,"Received" | 
|---|
| 106 | Q | 
|---|
| 107 | ; | 
|---|
| 108 | ;***** NLAB - call prompt for number of labels to print | 
|---|
| 109 | NLAB S RMPRNLAB=RMPR6("QUANTITY") | 
|---|
| 110 | W ! D NLABP^RMPRPIYS(.RMPRNLAB,RMPR6("QUANTITY"),.RMPREXC) | 
|---|
| 111 | I RMPREXC="T" G RCX | 
|---|
| 112 | I RMPREXC="P" G RCNX | 
|---|
| 113 | I RMPREXC="^" G RCNX | 
|---|
| 114 | I RMPRNLAB=0 G RCNX | 
|---|
| 115 | ; | 
|---|
| 116 | ;***** SELP - call prompt for barcode print device | 
|---|
| 117 | SELP ; | 
|---|
| 118 | I RMPREXC'="" G NLAB | 
|---|
| 119 | ;K RMPR7I | 
|---|
| 120 | ;S RMPRERR=$$ETOI^RMPRPIX7(.RMPR7,.RMPR7I) | 
|---|
| 121 | S RMPRBARC=RMPR11("HCPCS")_"-"_$P(RMPR6("DATE&TIME"),".",1)_$P(RMPR6("DATE&TIME"),".",2) | 
|---|
| 122 | S RMPRITXT("DATE")=$E(RMPR6("DATE&TIME"),4,5)_"/"_$E(RMPR6("DATE&TIME"),6,7)_"/"_(1700+$E(RMPR6("DATE&TIME"),1,3)) | 
|---|
| 123 | S RMPRITXT("ITEM")=RMPR11("HCPCS-ITEM") | 
|---|
| 124 | S RMPRITXT("ITEM DESC")=RMPR11("DESCRIPTION") | 
|---|
| 125 | S RMPRITXT("MASTER DESC")=RMPR11("ITEM MASTER") | 
|---|
| 126 | S RMPRITXT("UNIT PRICE")=RMPRUCST | 
|---|
| 127 | S RMPRITXT("VENDOR")=RMPRVEND("NAME") | 
|---|
| 128 | S RMPRITXT("LOCATION")=RMPR5("NAME") | 
|---|
| 129 | D PRINT^RMPRPIYS | 
|---|
| 130 | RCNX ;K RMPR6,RMPRTVAL,RMPRQTY,RMPRUCST,RMPRBCP,RMPRQ,RMPRIOP,RMPRNLAB | 
|---|
| 131 | ;K RMPRBARC,RMPRITXT,RMPR41N,RMPR41,RMPRVEND | 
|---|
| 132 | RCX Q | 
|---|