$TXT Created by G at CHY0034.FO-BAYPINES.DOMAIN.EXT (KIDS) on Wednesday, 03/13/24 at 16:03 ============================================================================= Run Date: MAR 27, 2024 Designation: SD*5.3*873 Package : SD - SCHEDULING Priority: Mandatory Version : 5.3 SEQ #722 Status: Released Compliance Date: APR 09, 2024 ============================================================================= Associated patches: (v)SD*5.3*860 <<= must be installed BEFORE `SD*5.3*873' (v)SD*5.3*861 <<= must be installed BEFORE `SD*5.3*873' (v)SD*5.3*871 <<= must be installed BEFORE `SD*5.3*873' Subject: Updates to Scheduling RPCs Category: - Routine - Enhancement (Mandatory) Description: ============ VistA Scheduling (VS) patch SD*5.3*873 includes several defect corrections and enhancements including: The SDES2 GET APPTS BY CLN RES IEN Remote Procedure Call (RPC) will return back the appointment for a given clinic resource for a given time range. The new SDES2 GET PATIENT REGISTRATION RPC will accept a Patient IEN (DFN) and returns patient registration information in JSON format. The following RPCs were re-written into the SDES2 namespace: SDES2 GET APPT REQ BY DFN SDES2 GET APPT REQ BY IEN SDES2 GET CONSULTS BY DFN SDES2 GET CONSULT BY IEN SDES2 GET APPT REQ LIST BY DFN The following existing RPCs were updated to return the SensitiveRecord field: SDES2 GET RECALLS BY DFN SDES2 GET RECALL BY IEN The routines supporting the Multiple Return To Clinic (MRTC) child appointment functionality were updated to so that when a user cancels an MRTC child appointment and edits the PID which already exists on another child appointment request within the MRTC so that multiple appointments don't get booked on the same day. The following RPCs were updated to return the child sequence field: SDES GET APPT REQ BY PATIENT SDES GET APPT REQ BY PAT ALL SDES GET APPT REQ BY PAT OPEN SDES GET APPT REQ BY IEN SDES GET APPT REQ BY TYPE VET SDES2 CANCEL APPOINTMENT SDES2 GET APPT REQ BY DFN SDES2 GET APPT REQ BY IEN The SDES2 GET CONTACT ATTEMPTS RPC was updated to quit processing when a request does not have a contact attempt. The following RPCs were updated to call the new SDES2 version of SDES2 QUERY APPT REQUESTS. SDES2 GET APPT REQ BY DFN SDES2 GET APPT REQ BY IEN SDES2 GET APPT REQ LIST BY DFN SDES2 GET CONSULT BY IEN SDES2 GET CONSULTS BY DFN SDES2 GET RECALL BY IEN SDES2 GET RECALLS BY DFN SDES2 QUERY APPT REQUESTS The SDES2 CREATE APPOINTMENT RPC was updated to return the correct Inpatient Flag value: 0:Outpatient, 1:Inpatient The SDES2 CANCEL CLINIC AVAIL was updated to prevent undefined errors when remarks are not being sent in. Patch Components: ----------------- Files & Fields Associated: New/Modified/Deleted -------------------------- -------------------- File Name (Number) Field Name New/Modified/Deleted ------------------ ---------- -------------------- 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 ----------- ---- -------------------- SDECRPC Broker Modified SDESRPC Broker Modified 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 APPT REQ BY DFN New SDES2 GET APPT REQ BY IEN New SDES2 GET APPT REQ LIST BY DFN New SDES2 GET APPTS BY CLN RES IEN New SDES2 GET CONSULT BY IEN New SDES2 GET CONSULTS BY DFN New SDES2 GET PATIENT REGISTRATION New SDES2 GET RECALL BY IEN Modified SDES2 GET RECALLS BY DFN Modified SDES2 QUERY APPT REQUESTS Modified Parameter Definitions Associated: --------------------------------- N/A Defect Tracking System Ticket(s) & Overview: -------------------------------------------- JIRA tasks: =========== 1) VSE-6483: VistA - SDES2 Priority 9: Rewrite SDES GET APPTS BY RESOURCE in the SDES2 namespace. Problem: As a Mumps developer I want to rewrite the SDES GET APPTS BY RESOURCE in the SDES2 namespace so that I have the USER DUZ in the SDCONTEXT array to store the correct requesting user in the database. Ensure that the code for sensitive patient is updated. Also ensure that we are only sending the last 4 SSN. Ensure the following dates are returned in ISO 8601 format: EndTime StartTime CancelDateTime SDES GET APPTS BY RESOURCE is calling the old logic SUMMARY^SDESAPPTDATA, instead of the new version SUMMARY2^SDESAPPTDATA Resolution: The SDES2 GET APPTS BY CLN RES IEN Remote Procedure Call (RPC) will return back the appointment for a given clinic resource for a given time range. 2) VSE-6837: VistA - SDES2 Priority 32: Rewrite SDES GET PATIENT REGISTRATION2 in the SDES2 namespace to address sensitive patient records. Problem: As a MUMPS developer, I want to create an SDES2 version of SDES GET PATIENT REGISTRATION2 to accept and use the USER DUZ and defined if the patient is sensitive based on the USER DUZ. SDESGETREGA1.INT GETREG+131 D GETELIGIBILITY^SDESPATSEARCH(.PATIENTLIST,DFN,1) Resolution: The new SDES2 GET PATIENT REGISTRATION RPC will accept a Patient IEN (DFN) and returns patient registration information in JSON format. 3) VSE-6848: VistA - SDES2 Priority 35: Rewrite SDES GET APPT REQ LIST BY DFN, SDES GET CONSULTS BY DFN, SDES GET CONSULTS BY IEN, SDES GET APPT REQ BY DFN, and SDES GET APPT REQ BY IEN in the SDES2 namespace to address sensitive patient records Problem: As a MUMPS developer, I want to create an SDES2 version of SDES GET APPT REQ LIST BY DFN (GETREQLISTBYDFN^SDESGETREQWRAPPR), SDES GET CONSULTS BY DFN, SDES GET CONSULTS BY IEN, SDES GET APPT REQ BY DFN, and SDES GET APPT REQ BY IEN to accept and use the USER DUZ and defined if the patient is sensitive based on the USER DUZ. SDESGETREQWRAPPR.INT GETREQLISTBYDFN+16 .D GETRECALL^SDESGETRECALL(.REQUEST,RECALLIEN,DFN) As a MUMPS developer, I want SDES2 GET RECALLS BY DFN and SDES2 GET RECALL BY IEN to be updated to return the SensitiveRecord field, rather than the RecallSensitivePatientRecordAccess field. Additionally, include the 'ApptType' field in the JSON return for recalls. As a VSA Developer I want to receive the child MRTC appointment request sequence number so that the child requests sequence numbers can be maintained. Resolution: The following RPCs were re-written into the SDES2 namespace: SDES2 GET APPT REQ BY DFN SDES2 GET APPT REQ BY IEN SDES2 GET CONSULTS BY DFN SDES2 GET CONSULT BY IEN SDES2 GET APPT REQ LIST BY DFN In addition the following existing RPCs were updated to return the SensitiveRecord field: SDES2 GET RECALLS BY DFN SDES2 GET RECALL BY IEN 4) VSE-6887: VistA - Modify SDEC and SDES code to return an error when MRTC child request has a duplicate PID. Problem: As a MUMPS developer I want to modify the SDEC and SDES code to return an error when the user cancels an MRTC child appointment and edits the PID which already exists on another child appointment request within the MRTC so that multiple appointments don't get booked on the same day. Resolution: The routines supporting the MRTC child appointment functionality were updated to so that when a user cancels an MRTC child appointment and edits the PID which already exists on another child appointment request within the MRTC so that multiple appointments don't get booked on the same day. 5) VSE-7118: VistA - Modify SDES GET APPT REQ RPCs to return child sequence field. Problem: As a VSA Developer I want to receive the child MRTC appointment request sequence number so that the child requests sequence numbers can be maintained. Resolution: The following RPCs were updated to return the child sequence field: SDES GET APPT REQ BY PATIENT SDES GET APPT REQ BY PAT ALL SDES GET APPT REQ BY PAT OPEN SDES GET APPT REQ BY IEN SDES GET APPT REQ BY TYPE VET SDES2 CANCEL APPOINTMENT SDES2 GET APPT REQ BY DFN SDES2 GET APPT REQ BY IEN 6) VSE-7306: VistA - Modify SDES2 GET CONTACT ATTEMPTS to quit out when no contact is found. Problem: As a MUMPs developer I want to modify SDES2 GET CONTACT ATTEMPTS so that when a request does not have a contact attempt, it will return back without trying to loop through logic. Resolution: The SDES2 GET CONTACT ATTEMPTS RPC was updated to quit processing when a request does not have a contact attempt. 7) VSE-7451: VistA: Modify SDES2 QUERY APPT REQUESTS and associated SDES2 RPCs. Problem: As a MUMPs developer I want to Modify SDES2 QUERY APPT REQUESTS and the associated SDES2 RPCs. I want to modify SDES2 QUERY APPT REQUESTS so it will now call the new SDES2 GET APPT*, SDES2 GET CONSULT*, and SDES2 GET RECALL* logic. I want the updated logic for appointment requests, recalls, and consults to produce the same object, and include PatientLast4 as part of the object. I want to fix the following issue within the SDES2 QUERY APPT REQUEST RPC: FLTRCONSULT^SDES2QRYAPREQSB and FLTRRECALL^SDES2QRYAPREQSB needs to have an "E" added to the GETS^DIQ call to resolve a error. Resolution: The following RPCs were updated to call the new SDES2 version of SDES2 QUERY APPT REQUESTS. SDES2 GET APPT REQ BY DFN SDES2 GET APPT REQ BY IEN SDES2 GET APPT REQ LIST BY DFN SDES2 GET CONSULT BY IEN SDES2 GET CONSULTS BY DFN SDES2 GET RECALL BY IEN SDES2 GET RECALLS BY DFN SDES2 QUERY APPT REQUESTS 8) VSE-7465: VistA: Fix issue with SDES2 CREATE APPOINTMENT where Inpatients are not identified. Problem: As a MUMPS developer I want fix an issue with SDES2 CREATE APPOINTMENT where the Inpatient Flag is always returning 0 when the patient is in fact an inpatient. Resolution: The SDES2 CREATE APPOINTMENT RPC was updated to return the correct Inpatient Flag value: 0:Outpatient, 1:Inpatient 9) VSE-7466: VistA: Fix issue with SDES2 CANCEL CLINC AVAIL to prevent error. Problem: As a MUMPS developer I want to fix an issue with SDES2 CANCEL CLINIC AVAIL to prevent an error when remarks are not being sent in. Resolution: The SDES2 CANCEL CLINIC AVAIL was updated to prevent undefined errors when remarks are not being sent in. Test Sites: ----------- Orlando, FL (ORL) San Diego, CA (SDC) 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/ Documentation Title File Name FTP Mode -------------------------------------------------------------------------- PIMS Technical Manual 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/ Patch Installation: ------------------- Pre/Post Installation Overview: ------------------------------- N/A Pre-Installation Instructions: ------------------------------ N/A Setup/Configuration 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. 1. Choose the PackMan message containing this patch. 2. Choose the INSTALL/CHECK MESSAGE PackMan option. 3. From the KIDS Menu, select the Installation Menu. From this menu, you may elect to use the following options. When prompted for the INSTALL NAME, enter SD*5.3*873. a. Backup a Transport Global - This option will create a backup message of any components exported with this patch. You are prompted to select "R" for Routines or "B" for Build. For this patch, backing up the "B"uild is suggested. Select one of the following: B Build R Routines Enter response: Build b. 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 components of this patch (routines, DDs, templates, etc.). c. Verify Checksums in Transport Global - This option will allow you to ensure the integrity of the routines that are in the transport global. 4. From the Installation Menu, select the Install Package(s) option and when prompted for the INSTALL NAME, enter SD*5.3*873. 5. If prompted 'Want KIDS to Rebuild Menu Trees Upon Completion of Install? NO//' respond NO. 6. When prompted "Want KIDS to INHIBIT LOGONs during the install? NO//" respond NO. 7. If prompted "Want to DISABLE Scheduled Options, Menu Options, and Protocols? NO//" respond NO. 8. If prompted "Delay Install (Minutes): (0 - 60): 0//" respond 0. Post-Installation Instructions: ------------------------------- N/A 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*873b. 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*873b 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 10 The checksums below are new checksums, and can be checked with CHECK1^XTSUMBLD. Routine Name: SDEC08 Before:B199606428 After:B208835014 **627,651,658,665,722,740,744, 694,745,756,774,781,785,790, 792,796,797,799,801,805,819, 842,832,851,873** Routine Name: SDES2ARCLOSE Before: B16284167 After: B23367172 **866,873** Routine Name: SDES2CANCELAPPT Before:B218914624 After:B201742301 **869,871,873** Routine Name: SDES2CANCLNAVAIL Before: B68172209 After: B68234859 **869,873** Routine Name: SDES2CONTACTS Before: B84301148 After: B87484941 **860,873** Routine Name: SDES2CREATEAPPT Before:B132616498 After:B132255990 **866,869,873** Routine Name: SDES2EDITAPREQ Before:B168220798 After:B170274279 **869,871,873** Routine Name: SDES2GETAPPTREQ Before: n/a After:B153397503 **873** Routine Name: SDES2GETAPPTRPCS Before: B21663006 After: B35125281 **871,873** Routine Name: SDES2GETCONSULTS Before: n/a After: B61572850 **873** Routine Name: SDES2GETRECALL Before: B36251718 After: B42435036 **871,873** Routine Name: SDES2GETREGS Before: n/a After:B176997747 **873** Routine Name: SDES2GETREQS Before: n/a After: B52017942 **873** Routine Name: SDES2QRYAPREQS Before:B144650280 After:B147317026 **869,873** Routine Name: SDES2QRYAPREQSB Before: B41276420 After: B43244068 **869,873** Routine Name: SDES2UTIL1 Before: B2844049 After: B14467346 **870,861,873** Routine Name: SDESCANAPPT2 Before:B203560523 After:B209039158 **838,842,844,845,847,851,864, 871,873** Routine Name: SDESEDITAPPTREQ Before:B190113715 After:B142269708 **823,826,837,845,846,847,864, 871,873** Routine Name: SDESEDITAPREQVAL Before: n/a After: B11796733 **873** Routine Name: SDESGETAPPTREQ Before:B194981108 After:B200239491 **815,818,819,823,824,825,828, 831,833,837,838,839,845,847, 851,861,873** Routine Name: SDESGETREQWRAPPR Before: B97520190 After: B98767815 **815,818,820,823,825,831,838, 842,843,847,851,873** Routine list of preceding patches: 860, 861, 871 ============================================================================= User Information: Entered By : Date Entered : JAN 17, 2024 Completed By: Date Completed: MAR 27, 2024 Released By : Date Released : MAR 27, 2024 ============================================================================= Packman Mail Message: ===================== $END TXT