Scheduling jobs in Ellucian Degree Works Transit
14 Sep 2020
A colleague who works at a university that evaluates students’ progress toward degrees with the aid of software called Degree Works (by Ellucian) mentioned to me that its point-and-click job scheduling user interface, Transit, changed within the last few years.
The option to schedule a batch of IDs to be evaluated by a job (which go by funny-sounding codes such as “DAP22”) at a later date was removed.
Consequently, some people at this school were having to work nights and weekends for processes that needed to run outside of normal business hours.
Luckily, there’s still a way to schedule Degree Works Transit jobs.
Farewell, old Transit:
Sadly, I can’t tell you about a secret button in the new web-based graphical user interface for Transit that exposes all your old options.
The workaround involves running code on a server – so grab some lunch for your favorite sysadmin.
Modify your source file
Old
If you used to use DegreeWorks Transit to say, “run DAP22 this Saturday at 9 against my_ids.txt
,” and if the contents of my_ids.txt
looked like this:
12121212121212
34343434343434
56565656565656
78787878787878
New
Now you’re going to need your file full of IDs in a format that looks more like this:
[
"12121212121212",
"34343434343434",
"56565656565656",
"78787878787878"
]
Furthermore, there’s some boilerplate text that needs to precede and follow the list of IDs.
The whole file needs to look more like this sample provided to my colleague by Ellucian’s Action Line – note your list of IDs in the SELECTIDLIST
object within parameters
:
{
"name":"DAP22",
"parameters": [
{
"type":"SELECTIDLIST",
"ids":[
"12121212121212",
"34343434343434",
"56565656565656",
"78787878787878"
]
},
{
"type":"QUESTIONS",
"answers":[
{"id":"dap22.auditType","value":"AA"},
{"id":"dap22.runNewAudit","value":"false"},
{"id":"dap22.auditReport","value":"RPT31"},
{"id":"dap22.createOneFilePerStudent","value":"false"},
{"id":"dap22.outputType","value":"NONE"}
]
}
]
}
Tweak your job configuration parameters
Please don’t simply copy and paste the sample data above straight into the object of parameters
titled QUESTIONS
– that’s where you specify details about how you’d like to run the job. You should tailor these values to your university’s needs. Furthermore, these aren’t even all of the options available, so get ready to comb through Ellucian’s documentation.
Type the job name correctly
Note that the name of the job goes both into the value of name
in the outermost data-object and also into each configuration parameter ID name.
Don’t worry about whitespace
Whitespace and line breaks don’t really matter in the JSON file-formatting standard, so don’t worry about lining up the contents of your data file attractively.
If you’re generating this file with PL/SQL, for example, where UTL_FILE.PUT_LINE()
operations might be in your legacy code, you can simply put everything before the ID list one line of the file, put everything after the ID list its own line at the end of the file, put each ID on its own line of the file – heck, even put each comma between IDs on its own line of the file if you’d like. Your data doesn’t have to be particularly pretty if it makes the code you write to generate it more maintainable.
Find a sysadmin
Move your file to the server
Once you’ve written code to generate this file, you’ll need to work with a sysadmin to build you an integration that puts your file onto Degree Works’s application server.
If your old file my_ids.txt
was already on the Degree Works server, there’s a good chance that it can go in the same folder, but collaborate with your sysadmin to work it out.
It’s probably a good idea to name the new file something easy to decipher like dap22_weekend_ids.json
.
Schedule launchjob against your file
Once you can count on something that lets you quickly generate a new dap22_weekend_ids.json
file and move it onto the server, buddy up with your sysadmin to use software that lives on the server called cron (or some other tool for scheduling code to execute on a server) to run the following server command at a time of your choosing:
launchjob /server_folder_where_your_json_lives/dap22_weekend_ids.json
That’s it!
Further reading
Well, actually, apparently there’re some tricky bits that can get in the way of all this working right.
Have your sysadmin consult this documentation from Ellucian if you get stuck:
- Degree Works Transit Administration Guide (section: The Launchjob Script)
- Degree Works Transit Jobs Technical Guide
- Ellucian API Guide (section: Transit Instance JSON Object Details)
Furthermore, you or your sysadmin can always open a ticket with the Ellucian Action Line for guidance.
Enjoy your weekends.