$TXT by YAW,LINDA linda.yaw@vistaexpertise.net (KIDS) 2024-09-11t00:43z
CT Eval Recommendation Report
SAMI (Screening+) 18-17-b9
(SAMI*18.0*17 SEQ #17 b9)
George P. Lilly,
Domenic DiNatale,
Larry G. Carlson
& Frederick D. S. Marshall
2024-09-10
i. Front matter
App |
SAMI (Screening+) |
Version |
18-17-b9 |
Vista ID |
SAMI*18.0*17 SEQ #17 b9: Version 18.0, Patch ID #17, Seq #17, Build 9 |
Priority |
High |
Categories |
Routine, File |
Status |
Release: SAMI-18-17-b9.zip |
Depends on |
SAMI 18-1 (SAMI*18.0*1 SEQ #1) |
ii. Contents
1. Description
SAMI 18-17-b9 adds two high-priority updates to accomodate Mt. Sinai’s workflow as well as updates to allow single sign-on or to improve output of reports.
The definitive source for the Screening+ application—codebase, package distributions (including this one), and documentation—is a public GitHub repository.
These instructions are for your Vista environment’s sysadmin. As usual, please capture the complete dialog of your install and send it to your Screening+ support team.
The changes in this patch are:
-
Insert clinical information string in CT Eval form (high-priority, A-1a)
-
Provide support for user-controlled MRN and Study ID (A-2 and A-3)
-
Login: Implement single sign-on (21-218)
-
Logout: Upon sign-out, redirect to the correct web page (21-221)
-
Include name and last5 in every CSV file on every row (B-1)
-
Add a user report to show CT Eval recommendations (B-2)
1.1. Insert clinical information string in CT Eval form
Unnumbered Issue A-1a (high priority): Clinical information field on the CT Eval form to be auto-filled based on responses to questions in the background form format to be:
-
Age xx; [Asymptomatic for lung cancer]; Current Smoker; xx Pack Years
or
-
Age xx; [Asymptomatic for lung cancer]; Former Smoker; xx Pack Years; Quit xx years ago
Solution: Developed clinical information string from background form and inserted into new CT Eval form.
Reported: 2024-07-11 by iELCAP team.
1.2. Provide support for user-controlled MRN and Study ID
Unnumbered Issues A-2 and A-3 (high priority): iELCAP uses the Epic MRN and Study ID instead of Social Security Number to identify patients. Screening+ needs to support the use of these patient IDs in the correct places.
Solutions: Support the entering of the MRN on the registration page, allow the modification of the MRN on the Intake form, allow the entering and changing of the StudyID on the intake form, support displaying of the MRN and Study ID (if assigned) on the page header.
Reported: 2024-07-11 by iELCAP team.
1.3. Login: Implement single sign-on
Issue 21-218: When using single sign-on, user should not be prompted to log in to VAPALS-ELCAP separately. However, user must be matched to single sign-on SECID.
Solution: Require user to sign in once using Access and Verify created by system administrator. This allows SECID to be captured and tied to user. For this testing version, where we don’t yet have access to SECID, the IP address is used instead. Note: for testing, if user does not have a stable IP address, they will be required to sign in with Access and Verify to update the IP address.
Reported: 2021-03 by Lilly.
1.4. Logout: Upon sign-out, redirect to the correct web page
Issue 21-221: Currently users are being directed to the home page of the clinical site they just logged out of.
Solution: User is redirected to correct logout page.
Reported: 2022-04 by Jirapatnakul.
1.5. Include name and last5 in every csv file on every row
Unnumbered issue B-1: A report is available to be run by the sysadmin that outputs all patient data for statistical analysis. Lines did not include patient ID.
Solution: Add saminame (full patient name) and last5 (First letter of last name and last four digits of SSN) in each line of report.
Reported: 2022-12-09 by Henschke and Yip.
1.6. Add a user report to show CT Eval recommendations
Unnumbered issue B-2: Develop a new user report that shows recommendations from completed CT Evaluations. Allow sorting by type of recommendation and put totals at top of columns.
Solution: Added report.
Reported: 2022-12-09 by Henschke and Avila.
2. Package elements
File | Change |
---|---|
sami-18-17-b9-recipe.txt |
new |
sami-18-17-b9.kid |
new |
sami-18-17-b9.txt |
new |
sami-18-17-b9.zip |
new |
upgrade-auxfiles |
new |
docs/mockups/* |
modified |
docs/src/layout.jinja2 |
new |
docs/www/* |
modified |
Routine | Change |
---|---|
SAMICAS3 |
modified |
SAMICAS4 |
new |
SAMICSV |
modified |
SAMICUL |
modified |
SAMIDCM1 |
modified |
SAMIFLD |
modified |
SAMIFUL |
modified |
SAMIHOM4 |
modified |
SAMIHUL |
modified |
SAMIPAT |
modified |
SAMISITE |
modified |
SAMIUR |
modified |
SAMIUR2 |
modified |
SAMIURUL |
modified |
3. Prepare for installation
This involves creating a directory to work in, running a script to back up certain datafiles and web-application files, and then going through steps to back up M routines that will be replaced by the patch.
3.1. Assume the identity of your osehra Unix user
This step assumes you use a dzdo or sudo command to do this; here, the symbol $DEMAND will stand for whichever command you use. (Also, in all the command-line examples below, $ simply means your command-line prompt.) If your configuration is different, please adjust this step to match your configuration:
$ $DEMAND su - osehra $ _
3.2. Prepare install directory
If this is your first time installling this, execute the following commands. They create a shell variable, and then create the work directory and sets it as your current directory.
$ INDIR=~/run/in/sami/18-17/b9 $ mkdir -p $INDIR $ cd $INDIR
If you’ve already tried installing this before, you can use the following commands instead:
$ INDIR=~/run/in/sami/18-17/b9 $ cd $INDIR $ rm -rf ./sami*.{txt,kid} ./auxfiles
3.3. Download and prepare the archive file
You may safely download the archive file (sami-18-17-b9.zip) in advance of the actual install.
$ curl -# -O 'https://vistaexpertise.net/project/vapals-elcap/dist/18-17/b9/sami-18-17-b9.zip' ######################################################################## 100.0% $ _
Then unzip the archive file with the following command.
$ unzip sami-18-17-b9.zip Archive: sami-18-17-b9.zip ... $ _
3.4. Install web-application files
At this point, the web-application files must be installed. This is done with a script that backs up the affected directories before installing anything, then upgrades the web-application files.
$ ./upgrade-auxfiles Backing up files to ./.aux-backup: [... lists of files backed up ...] Compressing the backup: [... list of files being compressed ...] Cleaning up. Done with backup of auxiliary files. Updating from ./auxfiles [... list of files being updated ...] Done with install. You may now proceed with the KIDS installation. $ _
Outside the VA firewall, Screening+ systems maintain up-to-date clones of the official GitHub repository, and this script will have different output.
$ ./upgrade-auxfiles Backing up files to ./.aux-backup [... lists of files backed up ...] Compressing the backup: [... list of files being compressed ...] Cleaning up. Done with backup of auxiliary files. Found a valid Git repository; pulling updates ... [... output varies ...] Done with install. $ _
3.5. Back up M routines
Before the installation, we also need to back up existing Screening+ routines that will be overwritten by this install. To do this, you will have to start a Caché or YottaDB session (depending on your particular installation), sign in to Vista, and then call the direct-mode interface ^%RO (“routine out”).
We have made efforts to display accurate instructions, but there are likely to be minor differences between implementations. Be sure to follow the correct dialog for your implementation.
3.5.1. Enter M
At the Unix prompt, enter the M environment in direct mode, using the csession command on Caché or the mumps command on YottaDB/GT.M:
On Caché
$ csession vapals Node: vapalscache, Instance: VAPALS >_
On YottaDB/GT.M
$ mumps -dir >_
3.5.2. Sign into Vista
At the M prompt, call Vista’s direct-mode interface, enter your access code, and then just press return at the OPTION NAME prompt to return to direct mode. This sets up your authentication variables. Here’s a sample capture of this step:
>do ^XUP Setting up programmer environment This is a TEST account. Access Code: ******* Terminal Type set to: C-VT100 Select OPTION NAME: >_
3.5.3. List of routines
The routine names to save are listed below; you may copy the list and paste it at the appropriate Routine prompt. At the final Routine prompt, press return to indicate the list of routines is done.
SAMICAS3 SAMICSV SAMICUL SAMIDCM1 SAMIFLD SAMIFUL SAMIHOM4 SAMIHUL SAMIPAT SAMISITE SAMIUR SAMIUR2 SAMIURUL
3.5.4. Run the backup
Creating the routine backup file differs by implementation.
On Caché
Note that routines that don’t currently exist will result in a warning message (specifically, the routine name will have [???] after it, and the line [does not exist] after that). These messages can be safely disregarded.
In addition to naming the routines and routine-out file, we also provide a Description and press return at the Parameters and Printer Format prompts to accept the defaults of WNS and No, respectively:
>do ^%RO Routine output (please use %ROMF for object code output) Routine(s): SAMICAS3 Routine(s): SAMICSV Routine(s): SAMICUL Routine(s): SAMIDCM1 Routine(s): SAMIFLD Routine(s): SAMIFUL Routine(s): SAMIHOM4 Routine(s): SAMIHUL Routine(s): SAMIPAT Routine(s): SAMISITE Routine(s): SAMIUR Routine(s): SAMIUR2 Routine(s): SAMIURUL Routine(s): Description: SAMI*18.0*17 SEQ #17 routine backup Output routines to Device: /home/osehra/run/in/sami/18-17/b9/sami-18-17-b9-back.ro Parameters? ("WNS") => Printer Format? No => No SAMICAS3.INT SAMICSV.INT SAMICUL.INT SAMIDCM1.INT SAMIFLD.INT SAMIFUL.INT SAMIHOM4.INT SAMIHUL.INT SAMIPAT.INT SAMISITE.INT SAMIUR.INT SAMIUR2.INT SAMIURUL.INT >_
On YottaDB/GT.M
Note that routines that don’t currently exist will result in the routine name not appearing under the input line, and won’t count towards the number of routines. These can be safely disregarded.
In addition to naming the routines and routine-out file, we also provide a Header Label and press return at the Strip comments prompt to accept the default of no:
>do ^%RO Routine Output - Save selected routines into RO file. Routines: SAMICAS3 SAMICAS3 Current total of 1 routines. Routines: SAMICSV SAMICSV Current total of 2 routines. Routines: SAMICUL SAMICUL Current total of 3 routines. Routines: SAMIDCM1 SAMIDCM1 Current total of 4 routines. Routines: SAMIFLD SAMIFLD Current total of 5 routines. Routines: SAMIFUL SAMIFUL Current total of 6 routines. Routines: SAMIHOM4 SAMIHOM4 Current total of 7 routines. Routines: SAMIHUL SAMIHUL Current total of 8 routines. Routines: SAMIPAT SAMIPAT Current total of 9 routines. Routines: SAMISITE SAMISITE Current total of 10 routines. Routines: SAMIUR SAMIUR Current total of 11 routines. Routines: SAMIUR2 SAMIUR2 Current total of 12 routines. Routines: SAMIURUL SAMIURUL Current total of 13 routines. Routine: Output device <terminal>: /home/osehra/run/in/sami/18-17/b9/sami-18-17-b9-back.ro Header Label: SAMI*18.0*17 SEQ #17 routine backup Strip comments <No>?: SAMICAS3 SAMICSV SAMICUL SAMIDCM1 SAMIFLD SAMIFUL SAMIHOM4 SAMIHUL SAMIPAT SAMISITE SAMIUR SAMIUR2 SAMIURUL Total of 6808 lines in 13 routines. >_
You’ll remain in the M environment for the next section.
4. Main install instructions
This consists of loading and installing the KIDS package, and activating the new web-application files.
4.1. Installing the KIDS package
This installs the various M assets required by the application.
4.1.1. Enter the KIDS Installation menu
At the OPTION NAME prompt select XPD MAIN to enter the Kernel Installation & Distribution System main menu, and at the Select ... Option prompt select Installation:
>do ^XUP Select OPTION NAME: XPD MAIN Kernel Installation & Distribution System Edits and Distribution ... Utilities ... Installation ... Patch Monitor Main Menu ... Select Kernel Installation & Distribution System <TEST ACCOUNT> Option: Installation 1 Load a Distribution 2 Verify Checksums in Transport Global 3 Print Transport Global 4 Compare Transport Global to Current System 5 Backup a Transport Global 6 Install Package(s) Restart Install of Package(s) Unload a Distribution Select Installation <TEST ACCOUNT> Option: _
4.1.2. Load KIDS package
Select option 1 and press return at the Continue prompt.
Select Installation <TEST ACCOUNT> Option: 1 Load a Distribution Enter a Host File: /home/osehra/run/in/sami/18-17/b9/sami-18-17-b9.kid KIDS Distribution saved on Sep 10, 2024@17:21:14 Comment: Released SAMI*18.0*17 SEQ #17 This Distribution contains Transport Globals for the following Package(s): SAMI*18.0*17 Distribution OK! Want to Continue with Load? YES// y YES Loading Distribution... SAMI*18.0*17 Use INSTALL NAME: SAMI*18.0*17 to install this Distribution. 1 Load a Distribution 2 Verify Checksums in Transport Global 3 Print Transport Global 4 Compare Transport Global to Current System 5 Backup a Transport Global 6 Install Package(s) Restart Install of Package(s) Unload a Distribution Select Installation <TEST ACCOUNT> Option: _
4.1.3. Install KIDS package
Select option 6, enter the space bar at the INSTALL NAME prompt, and press return at the next three prompts. Note that [now] denotes the current time when you’re doing the install.
Select Installation <TEST ACCOUNT> Option: 6 Install Packages(s) Select INSTALL NAME: SAMI*18.0*17 Loaded from Distribution [now] => Released SAMI*18.0*17 SEQ #17 ;Created on Sep 10, 2024@17:21:14 This Distribution was loaded on [now] with header of Released SAMI*18.0*17 SEQ #17 ;Created on Sep 10, 2024@17:21:14 It consisted of the following Install(s): SAMI*18.0*17 Checking Install for Package SAMI*18.0*17 Install Questions for SAMI*18.0*17 Want KIDS to INHIBIT LOGONs during the install? NO// Want to DISABLE Scheduled Options, Menu Options, and Protocols? NO// Enter the Device you want to print the Install messages. You can queue the install by enter a 'Q' at the device prompt. Enter a '^' to abort the install. DEVICE: HOME// ;C-SCROLL TELNET Install Started for SAMI*18.0*17 : [now] Build Distribution Date: Sep 10, 2024 Installing Routines:..... [now] Running Post-Install Routine: POS1817^SAMIPAT. Updating Routine file...... Updating KIDS files..... SAMI*18.0*17 Installed. [now] No link to PACKAGE file NO Install Message sent Install Completed 1 Load a Distribution 2 Verify Checksums in Transport Global 3 Print Transport Global 4 Compare Transport Global to Current System 5 Backup a Transport Global 6 Install Package(s) Restart Install of Package(s) Unload a Distribution Select Installation <TEST ACCOUNT> Option:_ > _
You now have Screening+ 18-17-b9 (SAMI*18.0*17 SEQ #17 b9) installed in your M environment. The install is now complete. You may leave the M environment by typing
>halt $ _
We recommend running tests of your Screening+ application to confirm the environment is operational and bug-free, before notifying users that Screening+ is ready for their use.
5. Optional backout instructions
Should errors or other problems result from installing this package, contact the Screening+ development team for package-backout instructions.
6. Routines
Line 2 of each of these routines now look like:
;;18.0;SAMI;[Patch List];2020-01-17;[optional build #]
The checksums below are Vista Type B checksums (do CHECK1^XTSUMBLD).
Name | Checksum before | Checksum after | Patch list |
---|---|---|---|
SAMICAS3 |
B497699119 |
B334055891 |
**3,9,11,12,15,17** |
SAMICAS4 |
B0 |
B106133479 |
**17** |
SAMICSV |
B60401322 |
B104029869 |
**7,11,17** |
SAMICUL |
B136079 |
B147284 |
**9,11,12,14,15,17** |
SAMIDCM1 |
B102701967 |
B200371935 |
**16,17** |
SAMIFLD |
B215961445 |
B288543997 |
**10,17** |
SAMIFUL |
B129116 |
B129814 |
**10,17** |
SAMIHOM4 |
B977083192 |
B1262443514 |
**1,4,5,6,9,12,15,16,17** |
SAMIHUL |
B117874 |
B131888 |
**9,12,15,16,17** |
SAMIPAT |
B8328663 |
B17344032 |
**12,14,15,17** |
SAMISITE |
B96347521 |
B212460993 |
**5,12,14,17** |
SAMIUR |
B672809912 |
B1025197513 |
**5,10,11,12,14,15,17** |
SAMIUR2 |
B1367473447 |
B1536139436 |
**5,11,12,14,15,17** |
SAMIURUL |
B107481 |
B116379 |
**12,14,15,17** |
7. Authors
Dates | By | |
---|---|---|
Developed |
2024-07-01/08-10 |
George P. Lilly (VEN) |
Tested |
2024-08-06/09-05 |
George P. Lilly (VEN) |
Released |
2024-09-10 |
Frederick D. S. Marshall (VEN) |
$END TXT