$TXT Created by YORTY,M. ROBERT at MNTVLL.FO-ALBANY.MED.VA.GOV (KIDS) on Thursday, 07/22/10 at 15:39 ============================================================================= Run Date: NOV 10, 2010 Designation: ECX*3*123 Package : ECX - DSS EXTRACTS Priority: Mandatory Version : 3 SEQ #115 Status: Released Compliance Date: DEC 11, 2010 ============================================================================= Associated patches: (v)ECX*3*33 <<= must be installed BEFORE `ECX*3*123' (v)ECX*3*44 <<= must be installed BEFORE `ECX*3*123' (v)ECX*3*49 <<= must be installed BEFORE `ECX*3*123' (v)ECX*3*92 <<= must be installed BEFORE `ECX*3*123' Subject: REVISIONS FOR UNSUPPORTED FIELDS IN FILE 81 Category: - Routine Description: ============ A number of routines in the DSS EXTRACTS namespace (ECX) have been found with references to fields in the CPT file (#81), which will no longer be supported or available after installation of patch ICPT*6*46. These references have been removed and replaced with calls to the supported functions within the Code Set API. (1) Routine ECXAECS - Event Capture (ECS) Extract Audit [ECX ECS SOURCE AUDIT] menu option. Supported function $$CPT^ICPTCOD is used to get the Procedure Name instead of pulling the data directly from the CPT file (#81). (2) Routine ECXAECQ - QUASAR (ECQ) Extract Audit [ECX QSR SOURCE AUDIT] menu option. Supported function $$CPT^ICPTCOD is used to get the Procedure Name instead of pulling the data directly from the CPT file (#81). (3) Routine ECXASUR - Surgery (SUR) Extract Audit [ECX SUR SOURCE AUDIT] menu option. Supported function $$CPT^ICPTCOD is used to get the CPT COde and Procedure Name instead of pulling the data directly from the CPT file (#81). (4) Routine ECXFEKEY - Print Feeder Keys [ECXFEKEY] menu option. (a) ECS feeder list Supported function $$CPT^ICPTCOD is used to get the CPT COde and Procedure Name instead of pulling the data directly from the CPT file (#81). (b) RAD feeder list Supported function $$CODEN^ICPTCOD is used to get the CPT COde instead of pulling the data directly from the CPT file (#81). (5) Routine ECXUCPT - CPT Inquiry [ECX CPT INQUIRY] menu option. Supported functions $$CPT^ICPTCOD and $$CPTD^ICPTCOD are used to get the CPT Code, Short Name, Category, and Description instead of pulling the data directly from the CPT file (#81). ASSOCIATED REMEDY: ================== N/A ASSOCIATED NSR(s): ================== N/A PARTICIPATING TEST SITES: ========================= Bay Pines FL Montana HCS New Jersey HCS INSTALLATION INSTRUCTIONS: ========================== This patch may be run with users on the system, but it is recommended that it be run after normal business hours. Installation will take less than 2 minutes. Suggested time to install: non-peak requirement hours. 1. Use the INSTALL/CHECK MESSAGE option on the PackMan menu. 2. From the Kernel Installation & Distribution System menu, select the Installation menu. 3. From this menu, you may select to use the following options (when prompted for INSTALL NAME, enter ECX*3.0*123) a. Backup a Transport Global - this option will create a backup message of any routines exported with the patch. It will NOT backup any other changes such as DDs or templates. b. Compare Transport Global to Current System - this option will allow you to view all changes that will be made when the patch is installed. It compares all components of the patch (routines, DDs, templates, etc.). c. Verify Checksums in Transport Global - this option will ensure the integrity of the routines that are in the transport global. d. Print Transport Global - this option will allow you to view the components of the KIDS build. 4. Use the Install Package(s) option and select the package ECx*3.0*123. 5. When prompted "Want KIDS to INHIBIT LOGONs during the install? NO//" you may accept the default. 6. When prompted "Want to DISABLE Scheduled Options, Menu Options, and Protocols? NO//" you may accept the default. Routine Information: ==================== The second line of each of these routines now looks like: ;;3.0;DSS EXTRACTS;**[Patch List]**;Dec 22, 1997;Build 8 The checksums below are new checksums, and can be checked with CHECK1^XTSUMBLD. Routine Name: ECXAECQ Before: B46660004 After: B46632186 **8,33,35,43,44,123** Description of Changes: PROCESS+33:PROCESS+34 --------------------- before: ...S ECNIEN=0,ECNIEN=$O(^ICPT("B",PROC,ECNIEN)) Q:'ECNIEN ...S PROCN=$P($G(^ICPT(ECNIEN,0)),U,2) after: ...S ECNIEN=0,ECNIEN=$$CODEN^ICPTCOD(PROC) I +ECNIEN>0 S PROCN=$P($$CPT ^ICPTCOD(PROC,DATE),U,3) Routine Name: ECXAECS Before: B40273391 After: B40379474 **8,33,123** Description of Changes: PROCESS+33 ---------- before: ...S PIEN=$O(^ICPT("B",PROC,"")) I +PIEN>0 S PROCN= $P($G(^ICPT(PIEN,0)),U,2) after: ...S PIEN=$$CODEN^ICPTCOD(PROC) I +PIEN>0 S PROCN= $P($$CPT^ICPTCOD(PROC,DATE),U,3) Routine Name: ECXASUR Before: B36233284 After: B36103500 **8,33,44,123** Description of Changes: PROCESS+23:PROCESS+24 --------------------- before: ..K Y S DIC="^ICPT(",DIC(0)="XZ",X=PROC D ^DIC ..S CPT=$P($G(Y(0)),U,1),PROCN=$P($G(Y(0)),U,2) after: ..S Y=$$CPT^ICPTCOD(PROC,DATE) ..S CPT=$P($G(Y),U,2),PROCN=$P($G(Y),U,3) Routine Name: ECXFEKEY Before: B48332216 After: B48603574 **10,11,8,40,84,92,123** Description of Changes: ECS+5:ECS+6 ----------- before: ..S EC3=$P(EC1,"-",2) Q:'+EC3 S EC3=$S(EC3["ICPT":$P($G(^ICPT(+EC3,0)),U), +EC3<90000:$P($G(^EC(725,+EC3,0)),U,2)_"N", 1:$P($G(^EC(725,+EC3,0)),U,2)_"L") ..S EC5=$P(EC1,"-",2),EC5=$S(EC5["ICPT":$E($P($G(^ICPT(+EC5,0)),U,2),1,25), EC5["EC":$E($P($G(^EC(725,+EC5,0)),U),1,25),1:"UNKNOWN") after: ..S EC3=$P(EC1,"-",2) Q:'+EC3 S EC3=$S(EC3["ICPT":$P($$CPT^ICPTCOD(+EC3), U,2),+EC3<90000:$P($G(^EC(725,+EC3,0)),U,2)_"N",1:$P($G(^EC(725,+EC3,0)), U,2)_"L") ..S EC5=$P(EC1,"-",2),EC5=$S(EC5["ICPT":$E($P($$CPT^ICPTCOD(+EC5),U,3), 1,25),EC5["EC":$E($P($G(^EC(725,+EC5,0)),U),1,25),1:"UNKNOWN") ECS2+9:ECS2+16 -------------- before: ..S EC3=$P(EC1,"-",2) Q:'+EC3 S EC3=$S(EC3["ICPT":$P($G(^ICPT(+EC3,0)),U), +EC3<90000:$P($G(^EC(725,+EC3,0)),U,2)_"N",1:$P($G(^EC(725,+EC3,0)), U,2)_"L") ..S EC5=$P(EC1,"-",2),EC5=$S(EC5["ICPT":$E($P($G(^ICPT(+EC5,0)),U,2),1,25), EC5["EC":$E($P($G(^EC(725,+EC5,0)),U),1,25),1:"UNKNOWN") ..S EC5=$$LOW(EC5) ..I EC1["ICPT" S EC5=$$UPP(EC5),EC3="A;"_EC3 ..S EC6=$P(EC1,"-",2),EC7="",EC8="" ..I EC6["EC(725," D ...S EC6=$S(+EC6>0:$P($G(^EC(725,+EC6,0)),U,5),1:"") S EC7=$S(+EC6>0: $P($G(^ICPT(+EC6,0)),U),1:"") ...S EC8=$S(+EC6>0:$E($P($G(^ICPT(+EC6,0)),U,2),1,25),1:"") after: ..S EC3=$P(EC1,"-",2) Q:'+EC3 S EC3=$S(EC3["ICPT":$P($$CPT^ICPTCOD(+EC3), U,2),+EC3<90000:$P($G(^EC(725,+EC3,0)),U,2)_"N",1:$P($G(^EC(725,+EC3,0)), U,2)_"L") ..S EC5=$P(EC1,"-",2),EC5=$S(EC5["ICPT":$E($P($$CPT^ICPTCOD(+EC5),U,3), 1,25),EC5["EC":$E($P($G(^EC(725,+EC5,0)),U),1,25),1:"UNKNOWN") ..S EC5=$$LOW(EC5) ..I EC1["ICPT" S EC5=$$UPP(EC5),EC3="A;"_EC3 ..S EC6=$P(EC1,"-",2),EC7="",EC8="" ..I EC6["EC(725," D ...S EC6=$S(+EC6>0:$P($G(^EC(725,+EC6,0)),U,5),1:"") S EC7=$S(+EC6>0: $P($$CPT^ICPTCOD(+EC6),U,2),1:"") ...S EC8=$S(+EC6>0:$E($P($$CPT^ICPTCOD(+EC6),U,3),1,25),1:"") RAD:RAD+2 --------- before: RAD S EC=0 F S EC=$O(^RAMIS(71,EC)) Q:'EC I $D(^(EC,0)) S EC1=^(0), ECD=$P(EC1,U),EC2=$P($G(^ICPT(+$P(EC1,U,9),0)),U) S:EC2="" EC2="Unknown" S ^TMP($J,"RAD",EC2,EC)=ECD S ^TMP($J,"RAD",88888,88888)="Portable procedure", ^TMP($J,"RAD",99999,99999)="OR procedure" Q after: RAD S EC=0 F S EC=$O(^RAMIS(71,EC)) Q:'EC D .I $D(^(EC,0)) S EC1=^(0),ECD=$P(EC1,U),EC2=$$CODEN^ICPTCOD( +$P(EC1,U,9)) .S:EC2=-1 EC2="Unknown" S ^TMP($J,"RAD",EC2,EC)=ECD S ^TMP($J,"RAD",88888,88888)="Portable procedure", ^TMP($J,"RAD",99999,99999)="OR procedure" Q Routine Name: ECXUCPT Before: B2891121 After: B3005384 **49,123** Description of Changes: SELECT+1:SELECT+6 ----------------- before: N OUT,DIC,X,Y,DIR,ECXARR,ECXERR,ECXIEN S DIC="^ICPT(",DIC(0)="AZEMQ" D ^DIC I Y<0 S QFLG=1 Q S ECXIEN=+Y D GETS^DIQ(81,ECXIEN,".01;2;3;50*","E","ECXARR","ECXERR") I $D(ECXERR) W !,"CPT Code Error." S QFLG=1 Q after: N OUT,DIC,X,Y,DIR,CIEN,ECXARR,ECXIEN S DIC="^ICPT(",DIC(0)="AZEMQ" D ^DIC I Y<0 S QFLG=1 Q S ECXIEN=+Y S ECXARR=$$CPT^ICPTCOD(ECXIEN) I +ECXARR=-1 W !,"CPT Code Error." S QFLG=1 Q S CIEN=$P(ECXARR,U,4) I CIEN S ECXARR(81.1)=$$GET1^DIQ(81.1,CIEN_",",.01) S X=$$CPTD^ICPTCOD(ECXIEN,"ECXARR(81.01,") PRINT+4:PRINT+12 -------------- before: S DA=ECXIEN S DA=DA_"," W !,"CPT Code: ",ECXARR(81,DA,.01,"E") W ?30,"Short Name: ",ECXARR(81,DA,2,"E") W !!,"Category: ",ECXARR(81,DA,3,"E") W !!,"Description: " F LN=1:1 S DESCDA=LN_","_DA Q:'$D(ECXARR(81.01,DESCDA,.01,"E")) D .W ECXARR(81.01,DESCDA,.01,"E"),! W !!! Q after: W !,"CPT Code: ",$P(ECXARR,U,2) W ?30,"Short Name: ",$P(ECXARR,U,3) W !!,"Category: ",$G(ECXARR(81.1)) W !!,"Description: " F DESCDA=1:1 Q:'$D(ECXARR(81.01,DESCDA)) D .W ECXARR(81.01,DESCDA),! W !!! Q Routine list of preceding patches: 44, 49, 92 ============================================================================= User Information: Entered By : PAJERSKI,JAN Date Entered : APR 21, 2009 Completed By: BARBER,HAROLDINE Date Completed: OCT 04, 2010 Released By : STRICKLAND,JOAN C Date Released : NOV 10, 2010 ============================================================================= Packman Mail Message: ===================== $END TXT