$TXT Created by G at CHY0077.FO-BAYPINES.DOMAIN.EXT (KIDS) on Tuesday, 12/30/25 at 10:42 ============================================================================= Run Date: JAN 13, 2026 Designation: SD*5.3*927 Package : SD - SCHEDULING Priority: Mandatory Version : 5.3 SEQ #776 Status: Released Compliance Date: JAN 28, 2026 ============================================================================= Associated patches: (v)SD*5.3*630 <<= must be installed BEFORE `SD*5.3*927' (v)SD*5.3*843 <<= must be installed BEFORE `SD*5.3*927' (v)SD*5.3*885 <<= must be installed BEFORE `SD*5.3*927' (v)SD*5.3*887 <<= must be installed BEFORE `SD*5.3*927' (v)SD*5.3*918 <<= must be installed BEFORE `SD*5.3*927' (v)SD*5.3*919 <<= must be installed BEFORE `SD*5.3*927' Subject: SCHEDULING UPDATES TO SUPPORT FRONT END APPS - SPRINTS 14.4 & 14.5 & 14.65 Category: - Routine - Enhancement (Mandatory) - Other Description: ============ VistA Scheduling (VS) patch SD*5.3*927 includes several defect corrections and enhancements including: Logic was updated to add logic to APPT^SDVSIT to determine the proper Service Category for the appointment record being processed during the SDAM BACKGROUND JOB option, so if an existing VISIT (#9000010) file record had been created already, it will be found and linked to the appointment, instead of creating a new/duplicate Visit. A post-install was created that goes through clinic dates in the future to clean up Full Day Cancellations on the clinics. The logic supporting the SDES2 GET CLINICS BY PROVIDER RPC was updated to only return entries from the HOSPITAL LOCATION (#44) file that have the TYPE (#2) field set to C:CLINIC. So only the SDES2PRVCLINSRC routine was updated and deployed. The logic supporting the SDES2 GET CANCELLED SLOTS Remote Procedure Call (RPC) was updated to show that inactive resources are returned when checking for cancelled slots. Update SDCANCEL logic to recognize when an MRTC child request is canceled it will reopen the parent request. The SDES2 NO-SHOW was updated to remove appointment IEN for MRTCs on NO-SHOW. Along with updating SDES2 UNDO NO-SHOW to add appointment IEN back in for MRTCs. Modify SDESGETPATINQUIR routine to recognize when there are more than 3 hyphens in the line and try to find the social security to strip out all but the last 4 digits of the SSN. A post-install was created to report on the clinics that cannot determine time zones. The SDES2CLININFO routine was updated to include the IEN in the return object for PreApptLetter, CancelLetter, and ApptCancelLetter. Update SDES2 GET CLINIC INFO RPC Definition to include new fields. Have single line setting the record counter variable to zero in routines SDES2QRYAPREQS and SDES2QRYAPREQSA. So, when a user requests a number of records, the query returns the same number of records. The SDES927P post install was updated to prevent hard errors by adding logic to check for existence of this value and quit out if the value is missing. EHRM Impact Statement: ---------------------- This patch should have no EHRM impact, and can be installed at all sites, including EHRM converted sites. Patch Components: New/Modified/Deleted ----------------- -------------------- Files & Fields Associated: New/Modified/Deleted -------------------------- -------------------- File Name (Number) Field Name 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 Procedures Associated: ----------------------------- Remote Procedure Name New/Modified/Deleted --------------------- -------------------- SDES2 GET CLINIC INFO MODIFIED Parameter Definitions Associated: --------------------------------- N/A Additional Information: ----------------------- N/A New Service Requests (NSRs): N/A Defect Tracking System Ticket(s) & Overview: -------------------------------------------- 1) VSE-10498: VistA: Duplicate encounter/visit fix. Problem: There have been repeated reports of "duplicate encounters". After research it was found that the real issue is within the logic that was added to identify an existing visit as part of patch SD*5.3*630. When a visit (created by CPRS) already exists when the encounter is being created, the current logic within the SDAM BACKGROUND JOB does not define the service category using the clinic. Resolution: Logic was updated to add logic to APPT^SDVSIT to determine the proper Service Category for the appointment record being processed during the SDAM BACKGROUND JOB option, so if an existing VISIT (#9000010) file record had been created already, it will be found and linked to the appointment, instead of creating a new/duplicate Visit. 2) VSE-10970: VistA: Post install to clean up Full Day cancellation on clinics. Problem: During testing in Beta Testing in CCM (Clinic Configuration Management) a user, the user was unable to restore a full day cancel on some dates. After researching, the team pulled the data and found that the internal data does not have the correct data of "CANCELLED" in the pattern ("ST" node). Resolution: A post-install was created that goes through clinic dates in the future to clean up Full Day Cancellations on the clinics. 3) VSE-10971: VistA: When returning clinics for a provider the RPC is returning all records from the HOSPITAL LOCATION (#44) file regardless of type. Problem: When returning clinics for a provider the RPC is returning all records from the HOSPITAL LOCATION (#44) file regardless of type. Resolution: The logic supporting the SDES2 GET CLINICS BY PROVIDER RPC was updated to only return entries from the HOSPITAL LOCATION (#44) file that have the TYPE (#2) field set to C:CLINIC. 4) VSE-10974: VistA: Correct an issue with SDES2 GET CANCELLED SLOTS for inactive clinics. Problem: A change made to SDES2 GET CANCELLED SLOTS inadvertently is causing an issue when a clinic is already cancelled. A change needs to be made so that inactive resources are returned when checking for cancelled slots. Resolution: The logic supporting the SDES2 GET CANCELLED SLOTS Remote Procedure Call (RPC) was updated to show that inactive resources are returned when checking for cancelled slots. 5) VSE-10988: VistA: Modify Daylight Savings time calculations to include time. Problem: Currently when an appointment is created on the date that the time zone offset changes, the calculation will be incorrect from midnight until 2 am. Logic needs to be added to see the time when this occurs and correctly select the time. Resolution: The SDESUTIL was updated to fix when an appointment is created on the day of Daylight savings time is incorrect on the time from midnight until 2am. 6) VSE-11008: VistA: Modify SDCANCEL to open a closed MRTC (Multiple Return to Clinics) Parent if the child request was reopened when appointments were cancelled. Problem: During research of MRTC issues it was found that when SDCANCEL cancels an appointment and reopens the request, if the request is an MRTC child request and the parent is closed, the logic does not reopen the parent. Resolution: Update SDCANCEL logic to recognize when an MRTC child request is canceled it will reopen the parent request at the same time as it removed the cancelled appointment IEN from the parent MRTC. 7) VSE-11034: VistA: Modify SDES2 NO-SHOW and SDES2 UNDO NO-SHOW RPCs to remove and add back Appointment IEN (Internal Entry Number) for MRTC (Multiple Return to Clinics). Problem: During research of Tier 3 tickets, it was found that SDES2 NO-SHOW does not remove the appointment IEN. Resolution: The logic supporting the SDES2 NO-SHOW RPC was updated to remove appointment IEN for MRTCs on NO-SHOW. The logic supporting the SDES2 UNDO NO-SHOW RPC was updated to add the appointment IEN back in for MRTCs. 8) VSE-11042: VistA: Modify SDES GET PATIENT INQUIRY to recognize names with hyphen when stripping out SSN (Social Security Number). Problem: An issue was found when a patient has a hyphen in their name. Resolution: Modify SDESGETPATINQUIR routine to recognize when there are more than 3 hyphens in the line and try to find the social security to strip out all but the last 4 digits of the SSN. 9) VSE-11051: VistA: Modify date/time logic to add validation that seconds and hours are not greater than 60. Problem: Modify date/time logic to add validation for an initial check for: Initial checks for upper limits on Hours, Minutes and Seconds. Hours less than 25. If the hour is 24 then the minutes and seconds must both be 0. Minutes less than 60, Seconds less than 60. Resolution: The SDAMUTDT and SDES2UTDT routines were updated to fix date/time logic to add validation for Hours, Minutes and Seconds, along with the appropriate error. 10) VSE-11052: VistA: Modify SDES2UTIL Routine under the SENSITIVE tag to default SDDUZ to DUZ if no value is passed in. Problem: Modify SDES2UTIL Routine under the SENSITIVE tag to default SDDUZ to DUZ if no value is passed in for the SDDUZ input parameter. Resolution: The SDES2UTIL routine was updated to default SDDUZ to DUZ if no value is passed in for the SDDUZ input parameter. 11) VSE-11069: VistA: Create a post-install to report on clinics that cannot determine time zone. Problem: Create a post-install to report on clinics that cannot determine time zone. Resolution: A post-install was created to report on the clinics that cannot determine time zones. 12) VSE-11101: VistA: Modify SDES2CLININFO to include the IEN in the return object for PreApptLetter, CancelLetter, and ApptCancelLetter. Problem: Currently, SDES2 GET CLINIC INFO includes the names of all four clinic letters assigned to a clinic, but it only includes the IEN for the No-Show Letter in the return object. Resolution: The SDES2CLININFO routine was updated to include the IEN in the return object for PreApptLetter, CancelLetter, and ApptCancelLetter. Update SDES2 GET CLINIC INFO RPC Definition to include new fields. 13) VSE-11148: VistA: Modify SDES2 QUERY APPT REQUESTS to fix an issue where the query returns more records than requested. Problem: Modify SDES2 QUERY APPT REQUESTS to correct the number of records returned by the query based on the amount requested by the user. Resolution: Have single line setting the record counter variable to zero in routines SDES2QRYAPREQS and SDES2QRYAPREQSA. So, when a user requests a number of records, the query returns the same number of records. 14) VSE-11381: VistA: Create new post install to cleanup data issues with the contact attempts. Problem: As part of the logic within SD*5.3*922 post install (VSE-10892) the logic will hard error if the data erroneously does not have an SDEC REQUEST POINTER value assigned. Need to add logic to check for existence of this value and quit out if the value is missing. Resolution: The SDES927P post install was updated to prevent hard errors by adding logic to check for existence of this value and quit out if the value is missing. Test Sites: ----------- El Paso, TX St. Cloud, MN Test Sites - SNOW Change Order #: --------------------------------- El Paso, TX: CHG0680640 St. Cloud, MN: CHG0680600 Software and Documentation Retrieval Instructions: ---------------------------------------------------- Software is distributed by PackMan message. Other Software Files: This release also includes documentation and other software files. They can be obtained at: https://download.vista.domain.ext/index.html/SOFTWARE/ File Title File Name Format -------------------------------------------------------------------------- PIMS Technical Manual SD_PIMS_TM Binary 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. Documentation Title File Name --------------------------------------------------------------------- PIMS Technical Manual SD_PIMS_TM Patch Installation: ------------------- Pre/Post Installation Overview: ------------------------------- Sites will read the National Patch Module (NPM) MailMan message and extract the Kernel Installation & Distribution System (KIDS) build. Then sites will use the Kernel Installation & Distribution System [XPD MAIN] menu to perform checks and install the patch. Pre-Installation Instructions: ------------------------------ This patch may be installed with users on the system, although it is recommended that it be installed during non-peak hours to minimize potential disruption to users. This patch should take less than 5 minutes to install. Post-install routine SDES927P will perform the following actions: 1. Create a post-install to report on clinics that cannot determine time zone. 2. A post-install was created that goes through clinic dates in the future to clean up Full Day Cancellations on the clinics. 3. Cleans up data issues with the contact attempts. 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 SD*5.3*927. 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. You must use this option and specify what to backup; the entire Build or just Routines. The backup message can be used to restore the routines and components of the build to the pre-patch condition. i. At the Installation option menu, select Backup a Transport Global ii. At the Select INSTALL NAME prompt, enter SD*5.3*927 iii. When prompted for the following, enter "R" for Routines or "B" for Build. Select one of the following: B Build (including Routines) R Routines Only Backup Type: B// iv. When prompted "Do you wish to secure your build? NO//", press and take the default response of "NO". v. When prompted with, "Send mail to: Last name, First Name", press to take default recipient. Add any additional recipients. vi. When prompted with "Select basket to send to: IN//", press and take the default IN mailbox or select a different mailbox. 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. If prompted 'Want KIDS to Rebuild Menu Trees Upon Completion of Install? NO//', answer NO. ii. When prompted 'Want KIDS to INHIBIT LOGONs during the install? NO//', answer NO. iii. When prompted 'Want to DISABLE Scheduled Options, Menu Options, and Protocols? NO//', answer NO. Post-Installation Instructions: ------------------------------- Post install routine SDES927P will automatically run at the end of the installation process. After the post install has finished running, sites can delete the SDES927P routine using the Delete Routines [XTRDEL] if they wish. Back-Out Plan/Roll Back Plan: ----------------------------- 1. Load the Backup MailMan Message a. Go into MailMan and find the backup message created in step 3a of the installation process and read that message. b. At the "Type to continue or '^' to exit:" prompt enter ^ to get to the command prompt. c. At the command prompt enter X for eXtract and press enter. d. At the "Select PackMan function:" prompt enter 6 for INSTALL/CHECK MESSAGE and press enter. e. At the "OK to Continue with Load? NO//" prompt, type YES and press enter. f. At the "Want to Continue with Load? YES//" prompt, press enter. g. Exit MailMan. 2. Go Into the Kernel Installation & Distribution System (KIDS) and load and install the backup like you would a regular patch. a. Enter D ^XUP at the command prompt. b. At the "Select OPTION NAME:" prompt, enter Kernel Installation & Distribution System" and press enter. c. From the main KIDS menu, select the Installation ... option. d. From the Installation ... option, select 6 Install Package(s). e. At the "Select INSTALL NAME:" prompt enter SD*5.3*927b. f. If prompted for "Want KIDS to INHIBIT LOGONs during the install? NO//" take the default by pressing enter. g. If prompted for "Want to DISABLE Scheduled Options, Menu Options, and Protocols? NO//" take the default by pressing enter. h. At the DEVICE: prompt, enter the output device of your choice. i. Verify that the SD*5.3*927b backup installs without any issues. Routine Information: ==================== The second line of each of these routines now looks like: ;;5.3;Scheduling;**[Patch List]**;Aug 13, 1993;Build 15 The checksums below are new checksums, and can be checked with CHECK1^XTSUMBLD. Routine Name: SDECAR Before:B119559989 After:B145394723 **627,642,671,745,792,797,805, 815,833,837,843,927** Routine Name: SDES2CLININFO Before:B199561941 After:B206736860 **893,895,898,907,927** Routine Name: SDES2GETCANSLOTS Before: B36997703 After: B35817214 **866,880,893,907,918,927** Routine Name: SDES2NOSHOW Before: B27245128 After: B30901321 **871,875,889,915,919,927** Routine Name: SDES2PRVCLINSRC Before: B6180993 After: B6345965 **880,887,927** Routine Name: SDES2QRYAPREQS Before:B173202826 After:B172190320 **869,873,875,877,895,927** Routine Name: SDES2QRYAPREQSA Before:B100121259 After: B99441414 **869,875,885,927** Routine Name: SDES2UNDONOSHOW Before: B11194081 After: B14709862 **871,875,927** Routine Name: SDES927P Before: n/a After: B54167751 **927** Routine Name: SDESGETPATINQUIR Before: B3232941 After: B3556161 **842,877,927** Routine Name: SDVSIT Before: B46541583 After: B56773822 **27,44,75,96,132,161,219,630,927** Routine list of preceding patches: 630, 843, 885, 887, 918, 919 ============================================================================= User Information: Entered By : Date Entered : AUG 28, 2025 Completed By: Date Completed: JAN 13, 2026 Released By : Date Released : JAN 13, 2026 ============================================================================= Packman Mail Message: ===================== $END TXT