Scientia provide the timetabling solution for our University and there appear to be exciting times ahead with lots of discussion about possible improvements to the timetables delivered by the University.
Of course to deliver a better solution it first means better integration with our existing systems, and the preferred method of integration by Scientia is via the use of their SPDA tool.
The SPDA tool is configured to point at various databases (note, requires 32-bit Oracle Client, not 64-bit!), and then a link definition file is put in place to determine the field mapping between Scientia and the source data table. Scientia do recommend putting in place at staging table between the source data and the SPDA tool, e.g.
tblModules (Source System) -> tblModules_TT (Staging) (with Status column) -> Scientia
During recent testing I discovered that using Oracle fields of DateTime cause the SPDA tool to fall over (reported as Data Type unsupported error, and then followed by an Automation Runtime error). Strangely it appears despite declaring the fields we’re interested in, the SPDA code reverts to running a SELECT * query, rather than specified columns?! So stick with numbers and varchar2 in the staging tables!
Below are two example SPDA files that are currently working for us, one for module and one for staff. Their contents aren’t anything rocket science, only thing worth noting is that the Scientia data columns are on the left, and our staging table columns are on the right.
Modules Example (not using Status flag)
;;LDF to set up the link between S+ and Staff Feed ;Version 2 BEGIN-CLASS Module, T_ST_Module_TT, HostKey HostKey, MODULE Name, MODULE Description, DESCRIPTION Department, DEPARTMENT END-CLASS
Staff Example (using Status flag)
;;LDF to set up the link between S+ and Staff Feed ;Version 2 IN-TRANSFER TT_Status BEGIN-CLASS StaffMember, STAFF_DELTA, HostKey HostKey, STAFF_NO Name, FULLNAME Description, USERNAME Email, MAIL END-CLASS