PRCPCRDK ;WISC/RFJ-instrument kit definition ;01 Sep 93 ;;5.1;IFCAP;;Oct 20, 2000 ;Per VHA Directive 10-93-142, this routine should not be modified. D ^PRCPUSEL Q:'$G(PRCP("I")) N ALLKITS,X K X S X(1)="The Definition Instrument Kit Report will print a list of selected instrument kits displaying the items and quantities needed to assemble a instrument kit." S X(2)="The items in the instrument kit are sorted by the sequence number." D DISPLAY^PRCPUX2(40,79,.X) D INSTRKIT^PRCPCRU1 I '$O(^TMP($J,"PRCPKITS",0)),'$D(ALLKITS) Q I $D(ALLKITS) W !!,"NOTE -- This option will use a lot of paper!" W ! S %ZIS="Q" D ^%ZIS Q:POP I $D(IO("Q")) D D ^%ZTLOAD K IO("Q"),ZTSK D Q Q . S ZTDESC="Instrument Kit Definition Report",ZTRTN="DQ^PRCPCRDK" . S ZTSAVE("PRCP*")="",ZTSAVE("ALLKITS")="",ZTSAVE("^TMP($J,""PRCPKITS"",")="",ZTSAVE("ZTREQ")="@" W !!,"<*> please wait <*>" DQ ; queue starts here N IKITEM,PRCPFLAG,SCREEN,X,Y S SCREEN=$$SCRPAUSE^PRCPUREP I $D(ALLKITS) S IKITEM=0 F S IKITEM=$O(^PRCP(445.8,IKITEM)) Q:'IKITEM!($G(PRCPFLAG)) D . D PRINT I $G(PRCPFLAG) Q . I SCREEN,$O(^PRCP(445.8,IKITEM)) D P^PRCPUREP ; I '$D(ALLKITS) S IKITEM=0 F S IKITEM=$O(^TMP($J,"PRCPKITS",IKITEM)) Q:'IKITEM D PRINT Q D ^%ZISC K ^TMP($J,"PRCPKITS"),^TMP($J,"PRCPCRDK") Q ; ; PRINT ; print a instrument kit definition N %,%I,CATALOG,IKDATA,IKDATE,IKLOC,IKNAME,IKUSER,DATA,EDITDATE,EDITUSER,ITEMDA,LOCATION,NOW,ONHAND,PAGE,PRCPINNM,PRCPINPT,REUSABLE,SEQUENCE,VENDOR ; sort by sequence number K ^TMP($J,"PRCPCRDK") S ITEMDA=0 F S ITEMDA=$O(^PRCP(445.8,IKITEM,1,ITEMDA)) Q:'ITEMDA S DATA=$G(^(ITEMDA,0)),^TMP($J,"PRCPCRDK",+$P(DATA,"^",3),ITEMDA)="" ; S IKDATA=$G(^PRCP(445.8,IKITEM,0)) S PRCPINPT=+$P(IKDATA,"^",2),PRCPINNM=$$INVNAME^PRCPUX1(PRCPINPT) S IKNAME=$$DESCR^PRCPUX1(PRCPINPT,IKITEM),IKUSER=$$USER^PRCPUREP($P(IKDATA,"^",3)),Y=$P(IKDATA,"^",4) D DD^%DT S IKDATE=Y,EDITUSER=$$USER^PRCPUREP($P(IKDATA,"^",5)),Y=$P(IKDATA,"^",6) D DD^%DT S EDITDATE=Y S IKLOC=$$STORAGE^PRCPESTO(PRCPINPT,IKITEM),ONHAND=$G(^PRCP(445,PRCPINPT,1,IKITEM,0)),ONHAND=$S(ONHAND="":"NOT STORED IN INVENTORY POINT",1:+$P(ONHAND,"^",7)) D NOW^%DTC S Y=% D DD^%DT S NOW=Y,PAGE=1 U IO D H S SEQUENCE="" F S SEQUENCE=$O(^TMP($J,"PRCPCRDK",SEQUENCE)) Q:SEQUENCE=""!($G(PRCPFLAG)) S ITEMDA=0 F S ITEMDA=$O(^TMP($J,"PRCPCRDK",SEQUENCE,ITEMDA)) Q:'ITEMDA!($G(PRCPFLAG)) D . S DATA=$G(^PRCP(445.8,IKITEM,1,ITEMDA,0)) I DATA="" Q . S VENDOR=$$MANDSRCE^PRCPU441(ITEMDA),CATALOG=$P($G(^PRC(441,ITEMDA,2,+VENDOR,0)),"^",4) I $E(CATALOG,16)'="" S CATALOG=$E(CATALOG,1,15)_"+" . S LOCATION=$$STORAGE^PRCPESTO(PRCPINPT,ITEMDA) . S REUSABLE=$$REUSABLE^PRCPU441(ITEMDA),REUSABLE=$S(REUSABLE:"R",1:"D") . W !,$J(+$P(DATA,"^",2),7),?10,$E($$DESCR^PRCPUX1(PRCPINPT,ITEMDA),1,20),?31,ITEMDA,?38,REUSABLE,?40,VENDOR,?48,CATALOG,?67,$E(LOCATION,1,12) . I $Y>(IOSL-4) D:SCREEN P^PRCPUREP Q:$D(PRCPFLAG) D H I $G(PRCPFLAG) Q I $Y>(IOSL-6) D:SCREEN P^PRCPUREP Q:$D(PRCPFLAG) D H W !!,"METHOD OF STERILIZATION : ",$$STERILE(IKITEM) W !,"METHOD OF WRAPPING/PACKAGING: ",$$WRAPPING(IKITEM) I $Y>(IOSL-7) D:SCREEN P^PRCPUREP Q:$G(PRCPFLAG) D H W !!,"SPECIAL INSTRUCTIONS/REMARKS:" S X=0 F S X=$O(^PRCP(445.8,IKITEM,2,X)) Q:'X!($G(PRCPFLAG)) S DATA=$G(^(X,0)) D . I $Y>(IOSL-4) D:SCREEN P^PRCPUREP Q:$D(PRCPFLAG) D H . W !,DATA D END^PRCPUREP Q ; ; H S %=NOW_" PAGE "_PAGE,PAGE=PAGE+1 I PAGE'=2!(SCREEN) W @IOF W $C(13),"DEFINITION OF INSTRUMENT KIT REPORT FOR: ",$E(PRCPINNM,1,20),?(80-$L(%)),% W !?9,"NAME: ",IKNAME," (#",IKITEM,") ",?46,"LOCATION: ",IKLOC W !?15,"CURRENT QUANTITY ASSEMBLED: ",ONHAND W !?3,"CREATED BY: ",IKUSER,?50,"DATE: ",IKDATE W !?1,"LAST EDIT BY: ",EDITUSER,?50,"DATE: ",EDITDATE S %="",$P(%,"-",81)="" W !,$J("QTY",7),?10,"DESCRIPTION",?31,"MI#",?37,"RD",?40,"VEND#",?48,"CATALOG#",?67,"LOCATION",!,% Q ; ; STERILE(V1) ; return method of sterilization for ik v1 N % S %=$P($G(^PRCP(445.8,+V1,0)),"^",7) I %'="" S %=$P($P($P(^DD(445.8,11,0),"^",3),%_":",2),";") Q % ; ; WRAPPING(V1) ; return method of wrapping for ik v1 N % S %=$P($G(^PRCP(445.8,+V1,0)),"^",8) I %'="" S %=$P($P($P(^DD(445.8,12,0),"^",3),%_":",2),";") Q %