$TXT Created by ALVIN JR at MBOXCACHE.FO-BIRM.DOMAIN.EXT (KIDS) on Thursday, 07/17/25 at 12:45 ============================================================================= Run Date: SEP 03, 2025 Designation: PSO*7*797 Package : PSO - OUTPATIENT PHARMACY Priority: Mandatory Version : 7 SEQ #659 Status: Released Compliance Date: OCT 04, 2025 ============================================================================= Associated patches: (v)PSO*7*772 <<= must be installed BEFORE `PSO*7*797' Subject: SPMP ASAP VERSION 4.2A,4.2B and 5.0 REMEDIATION Category: - Routine Description: ============ This patch addresses issues with the VistA State Prescription Monitoring Program (SPMP) functionality used to edit American Society for Automation in Pharmacy (ASAP) definitions. This patch includes the following enhancement to the SPMP functionality: 1. Enhancement Description ----------------------- Remove the ability to enter alphanumeric characters in the Edit Delimiters (ED) action in the View/Edit ASAP Definitions [PSO SPMP ASAP DEFINITIONS] option. Technical Description: ---------------------- Modify EDITDELIM^PSOSPMA3 to pattern match the entered values for DATA ELEMENT DELIMITER CHAR and SEGMENT TERMINATOR CHAR to prevent alphanumeric characters. This patch addresses the following long term issues with the SPMP ASAP edit functionality: 2. Defect Description --------------------- The DATA ELEMENT DELIMITER CHAR delimiter value may be deleted using the Edit Delimiters (ED) action in the View/Edit ASAP Definitions [PSO SPMP ASAP DEFINITIONS] option. Defect Resolution ------------------ Remove the ability to delete the DATA ELEMENT DELIMITER CHAR delimiter value using the Edit Delimiters (ED) action in the View/Edit ASAP Definitions [PSO SPMP ASAP DEFINITIONS] option. Technical Description ---------------------- Modify EDITDELIM^PSOSPMA3 to display the message "Deletion not allowed." and re-prompt the user for a different value when the "@" character is entered at the DATA ELEMENT DELIMITER CHAR field. This prevents the deletion of the DATA ELEMENT DELIMITER CHAR field (#.02) in the VERSION sub-file (#58.4001) of the SPMP ASAP RECORD DEFINITION file (#58.4) via the Edit Delimiters (ED) action in the View/Edit ASAP Definitions [PSO SPMP ASAP DEFINITIONS] option. 3. Defect Description --------------------- The "Copy Customizations?" prompt in the Copy ASAP Version (CV) action in the View/Edit ASAP Definitions [PSO SPMP ASAP DEFINITIONS] option is not documented - there is no help text and no explanation of the implications of selecting "No". Defect Resolution --------------------- The "Copy Customizations?" prompt was legacy code that was inadvertently activated by enhancements in patch PSO*7*772. Remove the "Copy Customizations?" prompt when using the Copy ASAP Version (CV) action. All customizations will automatically be included when copying ASAP versions. Technical Description --------------------- Modify CV^PSOSPMA3 to set the DEFTYPE variable to "B" so that both standard definitions and custom definitions are included in the newly copied version. 4. Defect Description ------------------- When the Customize Element (CE) action is used in the View/Edit ASAP Definitions [PSO SPMP ASAP DEFINITIONS] option to customize a data element for an ASAP version that was copied after the installation of PSO*7.0*772, the prompt "Save Custom Data Element?" displays when no changes were made to the data element, and an asterisk displays beside the data element if "YES" is entered at the prompt, even if the data element is not customized. Defect Resolution ----------------- When the Customize Element (CE) action in the View/Edit ASAP Definitions [PSO SPMP ASAP DEFINITIONS] option is selected for an ASAP version that was copied after the installation of PSO*7.0*772 and no changes are made to the data element, do not display the prompt "Save Custom Data Element?". Instead, display the message "** No changes made, nothing saved. **" and re-prompt for DATA ELEMENT ID. No asterisk will display beside the data element unless it was already customized. Functionality is unchanged for ASAP versions that existed prior to PSO*7.0*772 installation. Technical Description ---------------------- Create subroutine $$ELMDIFF^PSOSPMU0() to accept as input the values entered by the user and compare them to the values of an input array. Modify CEE^PSOSPMA3 to call $$ELMDIFF^PSOSPMU0() if the ASAP version being customized exists in the STDASAP array (indicating the ASAP version was copied after patch PSO*7.0*772 was installed). After all the Customize Element (CE) action prompts have been displayed to the user, but prior to prompting the user to save their changes, if there are no differences in the pre-action values and post-action values, display the message "** No changes made, nothing saved. **" and quit, so that the loop continues and re-prompts the user for DATA ELEMENT ID. 5. Defect Description ------------------- In the View/Edit ASAP Definitions [PSO SPMP ASAP DEFINITIONS] option, segments display as selectable for deletion via the Delete Customization (DC) action when neither the segment nor any of the data elements in the segment are customized. Defect Resolution ----------------- Do not display segments as selectable for deletion via the Delete Customization (DC) action in the View/Edit ASAP Definitions [PSO SPMP ASAP DEFINITIONS] option when neither the segment nor any of the data elements in the segment are customized. This includes when a segment is selected using the Customize Segment (CS) action but no changes are made, and when the Customize Segment (CS) action is used to remove customizations by editing the segment back to its standard values. Technical Description ---------------------- Modify CSE^PSOSPMA3 to call STDSEGCU^PSOSPMU2 if the ASAP version being customized exists in the STDASAP array, indicating the ASAP Version is stored in the STANDARD ASAP DEFINITION node of the SPMP ASAP RECORD DEFINITION file (#58.4), meaning the ASAP version was copied after the installation of PSO*7.0*772. If the ASAP version was copied prior to the installation of PSO*7.0*772, there is no change in functionality. Modify STDSEGCU^PSOSPMU2 to compare the values entered by the user in the TMPASAP array to the values that existed prior to prompting the user in the Customize Segment (CS) action. If no changes were made, display the message "** No changes made, nothing saved. **" and do not prompt the user to save changes. Modify STDSEGCU^PSOSPMU2 to call DELCUS^PSOSPMU3() to delete the segment from the version in the custom (,2) node of the SPMP ASAP RECORD DEFINITION file (#58.4) if the Customize Segment (CS) action was used to remove all customizations by editing the segment back to its standard values and there are no customized data elements in the segment. 6. Defect Description -------------------- In the View/Edit ASAP Definitions [PSO SPMP ASAP DEFINITIONS] option, when the Delete Customization (DC) action is used to remove all customizations from a data element, and there are no other customized data elements displayed with asterisks in that segment, and the segment definition is not modified from its standard values or displayed with an asterisk, the segment continues to display in the list of segments available for deletion using the Delete Customization (DC) action. Defect Resolution ------------------ When the Delete Customization (DC) action is used to remove all customizations from a data element, and there are no other customized data elements displayed with asterisks in that segment, and the segment definition is not modified from its standard values or displayed with an asterisk, remove the segment from the list of segments available for deletion using the Delete Customization (DC) action. Technical Description ---------------------- Modify CEE^PSOSPMA3 to call DELCUS^PSOSPMA3() to delete the customized segment from the version in the custom node (,2) of the SPMP ASAP RECORD DEFINITION file (#58.4) when the Delete Customization (DC) action is used to delete a customized element, and that segment has no other data elements in the CUSTOM ASAP DEFINITION node of the SPMP ASAP RECORD DEFINITION file (#58.4), and the segment definition has not been customized. 7. Defect Description ------------------- In the View/Edit ASAP Definitions [PSO SPMP ASAP DEFINITIONS] option, the segment continues to display in the list of segments available for deletion via the Delete Customization (DC) action when there are no customized data elements in the segment and all customizations are removed from the segment by editing the segment back to its standard values via the Customize Segment (CS) action. Defect Resolution ---------------- Remove the segment from the list selectable for deletion via the Delete Customization (DC) action when there are no customized data elements in the segment and all customizations are removed from the segment by editing the segment back to its standard values via the Customize Segment (CS) action. If the ASAP version was copied prior to the installation of PSO*7.0*772, there is no change in functionality. Technical Description --------------------- Modify CEE^PSOSPMA3 to call DELCUS^PSOSPMA3() to delete the customized segment from the version in the custom node of the SPMP ASAP RECORD DEFINITION file (#58.4) if there are no customized data elements in the segment and the segment itself has been customized back to its standard values via the Customize Segment (CS) action. 8. Defect Description ------------------- The IS03 data element in standard ASAP versions 5.0 and 5.0Z in the SPMP ASAP RECORD DEFINITION file (#58.4) contain a mismatch between the text dates and the coded dates in the description example. The text contains "December", and the coded dates contain "02" for February. Defect Resolution ----------------- Modify the IS03 data element descriptions in standard ASAP versions 5.0 and 5.0Z in the SPMP ASAP RECORD DEFINITION file (#58.4) to correct the mismatch between the text dates and the coded dates. The word "December" has been changed to "February" for consistency. Technical Description ----------------------- Modify the DESCRIPTION field (.07) in the DATA ELEMENT sub-file (#58.400111) of the SEGMENT sub-file (#58.40011) in the VERSION sub-file (#58.4001) of the SPMP ASAP RECORD DEFINITION file (#58.4) for the IS03 data element in the standard ASAP versions 5.0 and 5.0Z to correct the mismatch between the text dates and the coded dates. The text "December" has been changed to "February" to align with the coded dates. EHRM Impact Statement: ---------------------- This patch should have no EHRM impact, and can be installed at all sites, including EHRM converted sites. Patch Components: ----------------- Files & Fields Associated: File Name (Number) Field Name (Number) New/Modified/Deleted ------------------ ------------------- -------------------- N/A Forms Associated: Form Name File Number New/Modified/Deleted --------- ----------- -------------------- N/A Mail Groups Associated: Mail Group Name New/Modified/Deleted --------------- -------------------- N/A Options Associated: Option Name Type New/Modified/Deleted ----------- ---- -------------------- N/A Protocols Associated: Protocol Name New/Modified/Deleted ------------- -------------------- N/A Security Keys Associated: Security Key Name ----------------- N/A Templates Associated: Template Name Type File Name (Number) New/Modified/Deleted ------------- ---- ------------------ -------------------- N/A Remote Procedure Calls: Remote Procedure Name New/Modified/Deleted --------------------- -------------------- N/A Parameter Definitions Associated: Parameter Name New/Modified/Deleted -------------- -------------------- N/A Additional Information: ----------------------- Blood Bank Team Coordination: N/A New Service Requests (NSRs): N/A Patient Safety Issues (PSIs): N/A Test Sites: ---------- Jesse Brown VAMC, Chicago, IL Manchester VAMC, Manchester, NH Omaha VAMC, Omaha, NE Test Sites - SNOW Change Orders: ----------------------------------- Chicago - CHG0638651 Manchester - CHG0637558 Omaha - CHG0636894 Documentation Retrieval Instructions: ------------------------------------- The software for this patch is being released in a PackMan message. Documentation describing the new functionality is included in this release. Documentation can be found on the VA Software Documentation Library at: https://www.domain.ext/vdl/. Documentation can also be obtained at https://download.vista.domain.ext/index.html/SOFTWARE. Title File Name ------------------------------------------------------------------ Outpatient Pharmacy Manager's PSO_7_0_P797_MAN_UM.DOCX User Manual PSO_7_0_P797_MAN_UM.PDF PSO*7*797 Deployment, Installation PSO_7_0_P797_DIBRG.DOCX Back-Out and Rollback Guide PSO_7_0_P797_DIBRG.PDF Patch Installation: ------------------- See the PSO*7*797 Deployment, Installation, Back-Out and Rollback Guide (DIBRG) for this patch for detailed installation instructions. Post-Installation: ------------------------------- See the PSO*7*797 Deployment, Installation, Back-Out and Rollback Guide (DIBRG) for this patch for post-installation instructions. Back-Out/Roll Back Plan: ------------------------ The backout plan is provided as part of the PSO*7*797 Deployment, Installation, Back-Out and Rollback Guide (DIBRG) for this patch. Refer to section 5, Back-Out Procedure. Routine Information: ==================== The second line of each of these routines now looks like: ;;7.0;OUTPATIENT PHARMACY;**[Patch List]**;DEC 1997;Build 7 The checksums below are new checksums, and can be checked with CHECK1^XTSUMBLD. Routine Name: PSO797PI Before: n/a After: B17700463 **797** Routine Name: PSOSPMA3 Before:B194309910 After:B206263943 **451,625,772,797** Routine Name: PSOSPMU0 Before: B44818174 After: B79538227 **451,625,772,797** Routine Name: PSOSPMU2 Before: B66763079 After: B73957849 **451,625,772,797** Routine Name: PSOSPMU3 Before:B197984134 After:B196843378 **451,625,772,797** Routine list of preceding patches: 772 ============================================================================= User Information: Entered By : Date Entered : JUL 08, 2025 Completed By: Date Completed: SEP 03, 2025 Released By : Date Released : SEP 03, 2025 ============================================================================= Packman Mail Message: ===================== $END TXT