$TXT Created by G at CHY0017D.FO-BAYPINES.DOMAIN.EXT (KIDS) on Wednesday, 03/01/23 at 10:00 ============================================================================= Run Date: MAR 14, 2023 Designation: SD*5.3*838 Package : SD - SCHEDULING Priority: Mandatory Version : 5.3 SEQ #691 Status: Released Compliance Date: MAR 27, 2023 ============================================================================= Associated patches: (v)SD*5.3*833 <<= must be installed BEFORE `SD*5.3*838' (v)SD*5.3*836 <<= must be installed BEFORE `SD*5.3*838' (v)SD*5.3*837 <<= must be installed BEFORE `SD*5.3*838' Subject: VistA Scheduling RPC Updates Category: - Routine - Enhancement (Mandatory) Description: ============ VistA Scheduling patch SD*5.3*838 includes several defect corrections and enhancements including the new SDES GET CLINIC ORIGINAL AVAIL Remote Procedure Call (RPC) which returns the full schedule for all clinic Internal Entry Numbers (IEN) passed in and returns the associated data in a JavaScript Object Notation (JSON) format. The new SDES GET MISSION ACT AVAIL RPC will return Mission Act availability given a primary stop code, secondary stop codes, beginning date and ending date. The new SDES READ CLINIC GROUP RPC will return Clinic IENs associated with any providers assigned to the Clinic Group as a resource. The SDES SAVE VVS ID RPC was re-written to only accept the appointment IEN and the VVS ID and then update just the corresponding appointment. Get Appointment RPCs were updated to were updated to include the Eligibility of Visit, RequestType and RequestIEN to the returned appointment JSON object. The code was also optimized to efficiency. The new SDES GET APPTS BY IENS RPC was created to return the appointment information for the passed in list of appointment IENs. The new SDES GET APPT REQS BY IENS RPC was created to return the appointment request information for the passed in list of appointment request IENs. The new SDES CANCEL APPOINTMENT 2 RPC was created and will accept the cancellation reason NAME instead of the cancellation reason IEN. It will then cancel the associated appointments in the SDEC APPOINTMENT (#409.84) file, the HOSPITAL LOCATION (#44) file and the PATIENT (#2) file. Several get appoint request related RPCs were updated to return the CURRENT STATUS (#23) field from the SDEC APPT REQUEST (#409.85) file. The SDES PATIENT SEARCH RPC was updated to return the DATE OF DEATH (#.351) field from the PATIENT (#2) file. Patch Components: ----------------- Files & Fields Associated: New/Modified/Deleted -------------------------- -------------------- SDES ERROR CODES New errors being Modified (#409.93) deployed 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 ----------- ---- -------------------- 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 ------------- ----------------------- -------------------- Remote Procedures Associated: ----------------------------- Remote Procedure Name New/Modified/Deleted --------------------- -------------------- SDES CANCEL APPOINTMENT 2 New SDES GET APPT BY APPT IEN Modified SDES GET APPT BY REQ/APPT TYP2 Modified SDES GET APPT REQ BY IEN Modified SDES GET APPT REQ BY PAT ALL Modified SDES GET APPT REQ BY PAT OPEN Modified SDES GET APPT REQ BY PATIENT Modified SDES GET APPT REQ BY TYPE VET Modified SDES GET APPT REQS BY IENS New SDES GET APPTS BY CLIN IEN 3 Modified SDES GET APPTS BY CLIN LIST2 Modified SDES GET APPTS BY CLINIEN LIST Modified SDES GET APPTS BY IENS New SDES GET APPTS BY PATIENT DFN3 Modified SDES GET AVAIL BY CLIN LIST New SDES GET MISSION ACT AVAIL New SDES PATIENT SEARCH Modified SDES READ CLINIC GROUP Modified SDES SAVE VVS ID Modified Parameter Definitions Associated: --------------------------------- N/A Defect Tracking System Ticket(s) & Overview: -------------------------------------------- JIRA tasks: =========== 1) VSE-4861: VistA - Create a new SDES RPC to retrieve schedule for multiple clinics. Problem: Acheron would like a new RPC in the SDES namespace in the SDESRPC menu option that enables us to make a single RPC call to query all slots across multiple clinics. Should return a full schedule for all clinics passed in. Parameters 1. Audit ID - Required. 2. IENs - Required. Array of clinic IENS, min of 1, max of 50. 3. Start - Required. The earliest slot start time that should be matched. (CCYY-MM-DDTHH:MM:SS-HH:MM) 4. End - Required. The latest slot start time that should be matched. (CCYY-MM-DDTHH:MM:SS-HH:MM) Resolution: The SDES GET CLINIC ORIGINAL AVAIL Remote Procedure Call (RPC) was created and returns the full schedule for all clinic Internal Entry Numbers (IEN) passed in and returns the associated data in a JavaScript Object Notation (JSON) format. 2) VSE-4873: VistA - Create a new RPC for expanded Mission Act. Problem: Create a new RPC that will accept the following inputs: * List of primary and secondary stop codes - Primary or Primary and secondary stop code(s) can be sent - Clinics search must match primary code if only primary code is sent - Clinics search must match on primary code and secondary code(s) if both are sent. * Number of returns requested (max of 50) - If no number is provided, RPC will use a default of 10 * Date Range Return the first availability returned from query of clinics with matching primary and secondary stop codes up to the number of available slots requested. Resolution: The new SDES GET MISSION ACT AVAIL RPC will return Mission Act availability given a primary stop code, secondary stop codes, beginning date and ending date. 3) VSE-4901: VistA - Modify SDES READ CLINIC GROUP to return resource type and IEN for each entry. Problem: Need to modify SDES READ CLINIC GROUP to accept a Clinic Group IEN and return Clinic IENs for clinics in file 44 and return Clinic IENs associated with any providers assigned to the Clinic Group as a resource: Example of current response: { "RSGroup": { "IEN": 1, "Inactivation Date": "", "Name": "BRADS GROUP", "Resources": [ { "Name": "GENERAL MEDICINE" }, { "Name": "PROVIDER,EIGHT" } ] } } Resolution: The new SDES READ CLINIC GROUP RPC will return Clinic IENs associated with any providers assigned to the Clinic Group as a resource. 4) VSE-4902: VistA - Update SDES SAVE VVS ID RPC to save IEN and VVS ID to only that appointment. Problem: The current SDES SAVE VVS ID RPC uses three parameter values to identify the appointment that the VVS ID should be saved in: * patient DFN * clinic IEN * appointment start time The RPC as written does work, but it is quirky. If a patient has cancelled appointments in the same clinic at the same time then the RPC saves the VVS ID to those other appointments as well. We would like this RPC modified to take a single appointment IEN and VVS ID and save it to only that appointment: SDES SAVE VVS ID ("appt ien", "VVS appt ID"). Resolution: The SDES SAVE VVS ID RPC was re-written to only accept the appointment IEN and the VVS ID and then update just the corresponding appointment. 5) VSE-4928: VistA - Add Service Connected indicator and eligibility to appointment object in the SDES RPCs. Problem: 1. Add Service Connected indicator to appointment object in the SDES RPCs. Also return the Benefit/Eligibility for the appointment. This information is stored in the appointment multiple in file 44. 2. Add RequestType and RequestIEN to the output. 3. Fix an issue with the patient appointment multiple data. Remove the looping through the patient appointments as when the code gets to that logic, the appointment code is searching for is known. SDES GET APPT BY APPT IEN SDES GET APPT BY REQ/APPT TYP2 SDES GET APPTS BY CLIN IEN 3 SDES GET APPTS BY CLIN LIST2 SDES GET APPTS BY CLINIEN LIST SDES GET APPTS BY PATIENT DFN3 Resolution: The listed RPCs were updated to include the Eligibility of Visit, RequestType and RequestIEN to the returned appointment JSON object. The code was also optimized to efficiency. 6) VSE-4932: VistA - Create a new SDES RPC to get appointments for a list of IENs as input. Problem: Need to return each of the #409.84 appointments that are specified in the list of IENs. If any given IEN is not found the RPC returns an error for that IEN but still returns the other appointments. Resolution: The new SDES GET APPTS BY IENS RPC was created to return the appointment information for the passed in list of appointment IENs. 7) VSE-4933: VistA - Create a new RPC to get appointment requests for a list of IENs as input. Problem: Need to return each of the #409.85 appointment requests that are specified in the list of IENs. If any given IEN is not found the RPC returns an error for that IEN but still returns the other requests. Model off of SDES GET APPT REQ BY IEN but they want to input a list of appointment request IENs and get a return of all appointment requests. Resolution: The new SDES GET APPT REQS BY IENS RPC was created to return the appointment request information for the passed in list of appointment request IENs. 8) VSE-4938: VistA - New version of SDES Cancellation RPC. Problem: Need to create new version of SDES appointment cancellation RPC (SDES CANCEL APPOINTMENT to accept cancellation reason NAME and not IEN, and validate the cancellation reason name against cancellation reasons in the VistA instance - if invalid, return an error. Resolution: The new SDES CANCEL APPOINTMENT 2 RPC was created and will accept the cancellation reason NAME instead of the cancellation reason IEN. It will then cancel the associated appointments in the SDEC APPOINTMENT (#409.84) file, the HOSPITAL LOCATION (#44) file and the PATIENT (#2) file. 9) VSE-5042: VistA - VistA: Modify SDES GET APPT REQ BY * RPCs to return the current status field from 409.85. Problem: Need to modify SDES GET APPT REQ BY* RPCs to return the current status field from 409.85. Currently the current status field is not returned by SDES GET APPT REQ BY* RPCs and VSP is unable to determine if a request without a disposition reason is open or closed. When a disposition reason is set the closed status can be inferred. Resolution: The listed RPCs were updated to return the CURRENT STATUS (#23) field from the SDEC APPT REQUEST (#409.85) file. 10) VSE-5044: VistA: Modify SDES PATIENT SEARCH RPC to return the Date of Death. Problem: Need to modify SDES PATIENT SEARCH RPC to return the Date of Death. Resolution: The SDES PATIENT SEARCH RPC was updated to return the DATE OF DEATH (#.351) field from the PATIENT (#2) file. Test Sites: ----------- Pittsburgh (PTH) North Texas (NTX) Software and Documentation Retrieval Instructions: ---------------------------------------------------- Software is distributed by PackMan message. 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: ------------------- GUI Installation Instructions: ------------------------- N/A - No VS GUI updates related to this patch. Release Manager Point of Contact: Name: Stevens Jack Phone: 772-646-2303 Email: jack.stevens1@domain.ext 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*838. 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*838. 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: ----------------------------- Install the backup message created during the installation of SD*5.3*838. Routine Information: ==================== The second line of each of these routines now looks like: ;;5.3;Scheduling;**[Patch List]**;Aug 13, 1993;Build 7 The checksums below are new checksums, and can be checked with CHECK1^XTSUMBLD. Routine Name: SDESAPPTDATA Before: B66791433 After: B74372301 **788,814,815,820,823,827,837,838** Routine Name: SDESCANAPPT2 Before: n/a After: B92143922 **838** Routine Name: SDESGETAPPTREQ Before:B230074206 After:B230821654 **815,818,819,823,824,825,828, 831,833,837,838** Routine Name: SDESGETAPPTSIEN Before: n/a After: B3431427 **838** Routine Name: SDESGETAPPTWRAP5 Before:B132152663 After:B143260090 **823,824,825,838** Routine Name: SDESGETCLINAPPT Before: B45823175 After: B45842023 **805,838** Routine Name: SDESGETCLNSCHEDS Before: n/a After: B11555566 **838** Routine Name: SDESGETREQSIEN Before: n/a After: B2554830 **838** Routine Name: SDESGETREQWRAPPR Before: B74362994 After: B75069965 **815,818,820,823,825,831,838** Routine Name: SDESMISSIONAVL Before: n/a After: B19073426 **838** Routine Name: SDESPATSEARCH Before: B36787460 After: B37956234 **833,838** Routine Name: SDESRTNRG Before: B7578785 After: B14097121 **826,838** Routine Name: SDESUTIL Before: B66653412 After: B69081510 **801,804,805,814,816,818,820, 823,824,825,831,836,838** Routine Name: SDESVVS Before:B138882063 After:B136126589 **781,784,785,788,790,792,800, 801,804,805,818,823,828,833, 838** Routine list of preceding patches: 826, 836, 837 ============================================================================= User Information: Entered By : Date Entered : JAN 31, 2023 Completed By: Date Completed: MAR 14, 2023 Released By : Date Released : MAR 14, 2023 ============================================================================= Packman Mail Message: ===================== $END TXT