School of Pharmacy Data Sharing with SIS

The UW-School of Pharmacy (SoP) and DoIT collaborate to share data between PharmCAS, SoP PharmD Admissions, SoP STAR (Student Tracking And Reports) and SIS.

Documenting Data Sharing between SoP and SIS

There are 3 data files that are being set up to exchange data between the SoP and SIS applications.

  1. General applicant information retrieved from PharmCAS and then sent to SIS when the applicant reaches the interview status.
  2. Status change information is sent as the applicant goes through the admission process.
  3. Student information is sent from SIS to the SoP STAR application to keep our student information up-to-date without students have to update their information at the SoP and University.

The Overview of the data exchange process can be found in the PharmD Data Exchange Document.

The fields exchanged in the process as well as what fields they are mapped to can be found in SIS Data Exchange Mapping document.

The SoP will have cron jobs to send and receive this information.  The data will be placed on a Central Campus Server.  There are two servers, one for test and one for production:

  1. \\sis.drive.wisc.edu\sis92_data\QA\Pharm  (test server: kelsier)
  2. \\sis.drive.wisc.edu\sis92_data\Prod\Pharm (production server: galbreth)

Data will be passed between sites using SFTP.  In order to set this up, you need to follow the instructions at https://kb.wisc.edu/52816.  That KB describes how to set things up on the web-hosting servers and what information to gather from the destination server.  Note that while you can set things up for two-way communication, we just set things up with the understanding that our web-hosted site will contact the SIS site to both read (GET) and send (PUT) data.

You will probably have to work with the web hosting team (webhosting@doit.wisc.edu) to set up the ftp script as well as the cron jobs on the live/production site.  Any PHP code that you want to run as a cron/scheduled task can be set up on the test site for testing.

Even though the domain name of the target folders ("sis.drive.wisc.edu") appears to be a campus shared drive site, according to SIS staff:

"The script should just have to cd to the pharm directory from the home directory of the user. For kelsier (test), the directory is sym linked to \\sis.drive.wisc.edu\sis92_data\QA\Pharm. Similarly, galbreth (production) is sym linked to \\sis.drive.wisc.edu\Prod\Pharm."

Data Sharing Steps

To keep a record of how data sharing is supposed to happen, these are the steps the automated processes should run on both test and live sites.

  1. The following PHP scripts are automatically run and generated data files to the /httpdocs/cronjobs/data-files folder
    1. SIS_Upload_cron.php generates soppharmdsis.csv daily at 22:00.
    2. StatusChange_Upload_cron.php generates soppharmddecision.csv daily at 23:00.
    3. You can confirm this in Plesk on the wwwtest server, but the jobs are hidden on the live server.  Nevertheless, the jobs on the live server should be clones of the test jobs and run at the same time.
  2. Once the PHP scripts are done, then two more automated jobs run to transfer data with the SIS system
    1. A SFTP cron job that runs at 23:15 to copy soppharmdsis.csv and soppharmddecision.csv to the SIS system.
    2. A SFTP cron job that runs at 00:45 to copy soppharmdfromsis.csv from the SIS system.
    3. You won't see these in Plesk on both the test and live servers.  If you need to confirm anything, you will have to contact webhosting@doit.wisc.edu.
  3. Path Differences
    Due to the way PHP handles certain global array data, certain $_SERVER array items are usually not available when they run as cron jobs.  Therefore, specific values for files paths and server URLs must be encoded in the PHP script!  In particular, pay attention to the following file if you make any changes to code.
    1. inc_path.php
      1. If you are on the wwwtest server, make sure INC_FILE_PATH points to /var/www/vhosts/wwwtest.apps.pharmacy.wisc.edu/php_inc_files/
      2. If you are on the wwwtest server, make sure $_SERVER["SERVER_NAME"] = "wwwtest.apps.pharmacy.wisc.edu"
      3. If you are on the live server, make sure INC_FILE_PATH points to /var/www/vhosts/apps.pharmacy.wisc.edu/php_inc_files/
      4. If you are on the live server, make sure $_SERVER["SERVER_NAME"] = "apps.pharmacy.wisc.edu"
    2. SIS_Upload_cron.php and StatusChange_Upload_cron.php
      1. On the wwwtest server make sure DESTINATION_PATH points to /var/www/vhosts/wwwtest.apps.pharmacy.wisc.edu/httpdocs/cronjobs/data-files
      2. On the live server make sure DESTINATION_PATH points to /var/www/vhosts/apps.pharmacy.wisc.edu/httpdocs/cronjobs/data-files
    3. If the path/server values point to the wrong server (live vs. wwwtest), data will not end up in the correct location.



Keywords:
PharmCAS SIS PharmD Data exchange sharing 
Doc ID:
122212
Owned by:
Katherine C. in Pharmacy IIT
Created:
2022-10-31
Updated:
2024-05-07
Sites:
School of Pharmacy, School of Pharmacy Instructional & Information Technology