$TXT Created by at CLN2G2.AAC.DOMAIN.EXT (KIDS) on Thursday, 04/23/20 at 09:36 ============================================================================= Run Date: SEP 11, 2020 Designation: PSO*7*602 Package : PSO - OUTPATIENT PHARMACY Priority: Mandatory Version : 7 SEQ #504 Status: Released Compliance Date: OCT 12, 2020 ============================================================================= Subject: CANNOT FIND PRICE FOR UNIT PRICE OF DRUG Category: - Data Dictionary Description: ============ This patch will resolve the following issue: INC9558577 - "Cannot Find Price for Item" Patch Components: ----------------- Files & Fields Associated: File Name (Number) Field Name (Number) New/Modified/Deleted ------------------ -------------------------- -------------------- PRESCRIPTION (#52) UNIT PRICE OF DRUG (#17) Modified REFILL (sub-file) (#52.1) CURRENT UNIT PRICE OF DRUG Modified (#1.2) DRUG (#50) PRICE PER ORDER UNIT (#13) Modified New Service Requests (NSRs): N/A Defect Tracking System Ticket(s) & Overview: =========================================== 1. INC9558577 Sites' seeing Not ECME Billable: Cannot find price for Item Problem: ------- During Patient Prescription Processing [PSO LM BACKDOOR ORDERS] of a third-party claim and finished, the billing data is sent to the Electronic Claims Management System (ECME). ECME sends a message back to Outpatient Pharmacy displaying the status of the claim. When the UNIT PRICE OF DRUG (#17) or the CURRENT UNIT PRICE OF DRUG (#1.2) of the REFILL Multiple (#52.1) of the PRESCRIPTION File (#52) is a higher value than 9999.0000 a message is displayed "Cannot Find Price for Item". When the system attempts to file a value larger than 9,999.0000 into those two fields, the value is not stored, and the field is left blank. The Input Transform of the UNIT PRICE OF DRUG Field (#17) and CURRENT UNIT PRICE OF DRUG (#1.2) of the REFILL Multiple (#52.1) in the PRESCRIPTION File (#52) prevents a value from being stored when it is greater than 9999.0000. Resolution: ---------- Routine SPPDU^PSONDCUT saves the PRICE PER DISPENSE UNIT (#17). The Input Transform of the UNIT PRICE OF DRUG Field (#17) and CURRENT UNIT PRICE OF DRUG (#1.2) of the REFILL Multiple (#52.1) in the PRESCRIPTION File (#52) are modified to allow a maximum value of 999999.0000. The Input Transform of the PRICE PER ORDER UNIT Field (#13) in the DRUG File (#50) has been modified to allow a maximum value of 999999.00. Data Dictionaries Before: ======================== 50,13 PRICE PER ORDER UNIT 660;3 NUMBER INPUT TRANSFORM: S:X["$" X=$P(X,"$",2) K:X'?.N.1".".2N!(X>99999 )!(X<0)!(X?.E1"."3.N) X LAST EDITED: APR 17, 2020 HELP-PROMPT: Type a Dollar Amount between 0 and 99999, 2 Decimal Digits. DESCRIPTION: This is the price per order unit for this drug. GROUP: PS NOTES: XXXX--CAN'T BE ALTERED EXCEPT BY PROGRAMMER CROSS-REFERENCE: ^^TRIGGER^50^16 1)= K DIV S DIV=X,D0=DA,DIV(0)=D0 S Y(0)=X S Y( 1)=$S($D(^PSDRUG(D0,660)):^(660),1:"") S X=$P(Y (1),U,5)>0 I X S X=DIV S Y(1)=$S($D(^PSDRUG(D0, 660)):^(660),1:"") S X=$P(Y(1),U,6),X=X S DIU=X K Y X ^DD(50,13,1,1,1.1) X ^DD(50,13,1,1,1.4) 1.1)= S X=DIV S Y(1)=$S($D(^PSDRUG(D0,660)):^(6 60),1:"") S X=DIV,X=$S($P(Y(1),U,5):X/$P(Y(1),U ,5),1:"*******"),Y(2)=$G(X) S X=1,Y(3)=$G(X) S X=4,X=$J(Y(2),Y(3),X) 1.4)= S DIH=$G(^PSDRUG(DIV(0),660)),DIV=X S $P( ^(660),U,6)=DIV,DIH=50,DIG=16 D ^DICR 2)= K DIV S DIV=X,D0=DA,DIV(0)=D0 S Y(1)=$S($D( ^PSDRUG(D0,660)):^(660),1:"") S X=$P(Y(1),U,6), X=X S DIU=X K Y S X="" S DIH=$G(^PSDRUG(DIV(0), 660)),DIV=X S $P(^(660),U,6)=DIV,DIH=50,DIG=16 D ^DICR CREATE CONDITION)= #15>0 CREATE VALUE)= $J(#13/#15,1,4) DELETE VALUE)= @ FIELD)= #16 CROSS-REFERENCE: 50^PRC^MUMPS 1)= D ST^PSSPRICE(DA,DUZ,DI) 2)= S:X'="" X=X Cross-reference to set history of price change multiple (field #950) for changes to this field. 52,17 UNIT PRICE OF DRUG 0;17 NUMBER (Required) INPUT TRANSFORM: K:+X'=X!(X>9999)!(X<0)!(X?.E1"."5N.N) X LAST EDITED: FEB 27, 2020 HELP-PROMPT: Type a Number between 0 and 9999, 4 Decimal Digits DESCRIPTION: Price per dispense unit. TECHNICAL DESCR: This is the price per dispense unit (per ML/MG etc.) that is calculated when entering the price per order unit, e.g. Price per order unit (bottle) =$0.49, dispense unit is ML & the bottle has 1000ML. Price per dispense unit = $(0.49/1000) = $0.00049 = $0.0005 (rounded to the 4th decimal). 52.1,1.2 CURRENT UNIT PRICE OF DRUG 0;11 NUMBER INPUT TRANSFORM: K:+X'=X!(X>9999)!(X<0)!(X?.E1"."5N.N) X LAST EDITED: MAR 30, 2020 HELP-PROMPT: Type a Number between 0 and 9999, 4 Decimal Digits DESCRIPTION: This field is used to show the current unit cost of the drug at time of refill. TECHNICAL DESCR: This is the price per dispense unit (per ML/MG) at the time of fill. Data Dictionaries After: ======================= 50,13 PRICE PER ORDER UNIT 660;3 NUMBER INPUT TRANSFORM: S:X["$" X=$P(X,"$",2) K:X'?.N.1".".2N!(X>999999 )!(X<0)!(X?.E1"."3.N) X LAST EDITED: APR 17, 2020 HELP-PROMPT: Type a Dollar Amount between 0 and 999999, 2 Decimal Digits. DESCRIPTION: This is the price per order unit for this drug. GROUP: PS NOTES: XXXX--CAN'T BE ALTERED EXCEPT BY PROGRAMMER CROSS-REFERENCE: ^^TRIGGER^50^16 1)= K DIV S DIV=X,D0=DA,DIV(0)=D0 S Y(0)=X S Y( 1)=$S($D(^PSDRUG(D0,660)):^(660),1:"") S X=$P(Y (1),U,5)>0 I X S X=DIV S Y(1)=$S($D(^PSDRUG(D0, 660)):^(660),1:"") S X=$P(Y(1),U,6),X=X S DIU=X K Y X ^DD(50,13,1,1,1.1) X ^DD(50,13,1,1,1.4) 1.1)= S X=DIV S Y(1)=$S($D(^PSDRUG(D0,660)):^(6 60),1:"") S X=DIV,X=$S($P(Y(1),U,5):X/$P(Y(1),U ,5),1:"*******"),Y(2)=$G(X) S X=1,Y(3)=$G(X) S X=4,X=$J(Y(2),Y(3),X) 1.4)= S DIH=$G(^PSDRUG(DIV(0),660)),DIV=X S $P( ^(660),U,6)=DIV,DIH=50,DIG=16 D ^DICR 2)= K DIV S DIV=X,D0=DA,DIV(0)=D0 S Y(1)=$S($D( ^PSDRUG(D0,660)):^(660),1:"") S X=$P(Y(1),U,6), X=X S DIU=X K Y S X="" S DIH=$G(^PSDRUG(DIV(0), 660)),DIV=X S $P(^(660),U,6)=DIV,DIH=50,DIG=16 D ^DICR CREATE CONDITION)= #15>0 CREATE VALUE)= $J(#13/#15,1,4) DELETE VALUE)= @ FIELD)= #16 CROSS-REFERENCE: 50^PRC^MUMPS 1)= D ST^PSSPRICE(DA,DUZ,DI) 2)= S:X'="" X=X Cross-reference to set history of price change multiple (field #950) for changes to this field. 52,17 UNIT PRICE OF DRUG 0;17 NUMBER (Required) INPUT TRANSFORM: K:+X'=X!(X>999999)!(X<0)!(X?.E1"."5N.N) X LAST EDITED: FEB 27, 2020 HELP-PROMPT: Type a Number between 0 and 999999, 4 Decimal Digits DESCRIPTION: Price per dispense unit. TECHNICAL DESCR: This is the price per dispense unit (per ML/MG etc.) that is calculated when entering the price per order unit, e.g. Price per order unit (bottle) =$0.49, dispense unit is ML & the bottle has 1000ML. Price per dispense unit = $(0.49/1000) = $0.00049 = $0.0005 (rounded to the 4th decimal). 52.1,1.2 CURRENT UNIT PRICE OF DRUG 0;11 NUMBER INPUT TRANSFORM: K:+X'=X!(X>999999)!(X<0)!(X?.E1"."5N.N) X LAST EDITED: MAR 30, 2020 HELP-PROMPT: Type a Number between 0 and 999999, 4 Decimal Digits DESCRIPTION: This field is used to show the current unit cost of the drug at time of refill. TECHNICAL DESCR: This is the price per dispense unit (per ML/MG) at the time of fill. Test Sites: ----------- Salem VAMC (Salem, VA) Upstate NY HCS (Upstate NY,NY) Software and Documentation Retrieval Instructions: -------------------------------------------------- The software for this patch is being released in a PackMan message. Patch Installation: ------------------ Pre-Installation Instructions: This patch may be loaded with users on the system. You may wish to install it during non-peak hours. Installation will take less than 1 minute. Installation Instructions: 1. Choose the PackMan message containing this build. Then select the INSTALL/CHECK MESSAGE PackMan option to load the build. 2. From the Kernel Installation and Distribution System Menu, select the Installation Menu. From this menu, A. Select the Verify Checksums in Transport Global option to confirm the integrity of the routines that are in the transport global. When prompted for the INSTALL NAME enter the patch or build name. (PSO*7.0*602) NOTE: Using will not bring up a Multi-Package build even if it was loaded immediately before this step. It will only bring up the last patch in the build. B. Select the Backup a Transport Global option to create a backup message of any routines exported with this patch. It will not backup any other changes such as DDs or templates. C. You may also elect to use the following options: i. Print Transport Global - This option will allow you to view the components of the KIDS build. ii. Compare Transport Global to Current System - This option will allow you to view all changes that will be made when this patch is installed. It compares all of the components of this patch, such as routines, DDs, templates, etc. D. Select the Install Package(s) option and choose the patch to install. i. When prompted 'Want KIDS to INHIBIT LOGONs during the install? NO//', respond NO. ii. When prompted 'Want to DISABLE Scheduled Options, Menu Options, and Protocols? NO//', respond NO. Back-out/Rollback Strategy: ========================== In the event of a catastrophic failure, the Facility CIO may make the decision to back-out the patch. The back-out plan is to edit the Data Dictionaries returning them to original pre-install state. To verify the back-out completed successfully, INPUT TRANSFORMS have been edited as follows. Using FileMan, go to UTILITY FUNCTIONS, INPUT TRANSFORM (SYNTAX) Select OPTION: 6 UTILITY FUNCTIONS Select UTILITY OPTION: 5 INPUT TRANSFORM (SYNTAX) Modify what File: PRESCRIPTION// (1863777 entries) Select FIELD: 17 UNIT PRICE OF DRUG UNIT PRICE OF DRUG INPUT TRANSFORM: K:+X'=X!(X>999999)!(X<0)!(X?.E1"."5N.N) X Replace 999999 With 9999 Replace K:+X'=X!(X>9999)!(X<0)!(X?.E1"."5N.N) X 'HELP'-PROMPT: Type a Number between 0 and 999999, 4 Decimal Digits Replace 999999 With 9999 Replace Type a Number between 0 and 999999, 4 Decimal Digits Replace 999999 With 9999 Replace XECUTABLE 'HELP': Modify what File: PRESCRIPTION// (1863799 entries) Select FIELD: REFILL (multiple) Select REFILL SUB-FIELD: 1.2 CURRENT UNIT PRICE OF DRUG CURRENT UNIT PRICE OF DRUG INPUT TRANSFORM: K:+X'=X!(X>999999)!(X<0)!(X?.E1"."5N .N) X Replace 999999 With 9999 Replace 'HELP'-PROMPT: Type a Number between 0 and 999999, 4 Decimal Digits Replace 999999 With 9999 Replace XECUTABLE 'HELP': Modify what File: DRUG// (5542 entries) Select FIELD: 13 PRICE PER ORDER UNIT PRICE PER ORDER UNIT INPUT TRANSFORM: S:X["$" X=$P(X,"$",2) K:X'?.N.1".".2N!(X>9 99999)!(X<0)!(X?.E1"."3.N) X Replace 999999 With 99999 Replace S:X["$" X=$P(X,"$",2) K:X'?.N.1".".2N!(X>99999)!(X<0)!(X?.E1"."3.N) X 'HELP'-PROMPT: Type a Dollar Amount between 0 and 999999, 2 Decimal Digits. Replace 999999 With 99999 Routine Information: ==================== No routines included. ============================================================================= User Information: Entered By : Date Entered : FEB 27, 2020 Completed By: Date Completed: SEP 11, 2020 Released By : Date Released : SEP 11, 2020 ============================================================================= Packman Mail Message: ===================== $END TXT