Transcript Powerpoint

Tech Talk: How to Extend
Checklist Functionality
Tim Climis
Rebecca Swords
Outline
• Checklist Structure Basics
• Task extensions
• Live Example: Immigration Document Creation
Checklist Terminology
• Family, Genus, Species, Subspecies
– Family = campus + e-form group + checklist type
– Genus = Admit Type / Domestic,International
– Species = Term / Student type
– Subspecies = Application / Transcript / Course
• SpeciesKey = Family|Genus|Species
(F2|FYL|4128 – Bloomington Graduate
Admission First-Year Law for Fall 2012)
Checklist Table Structure
• jbChecklist: associates student, subspecies,
and (jb)E-Form Group; produces “checklistID”
• jbChecklistSpeciesKey: associates SpeciesKey
to a checklistID
• jbChecklistStage: records Stage History for
checklistID
• jbChecklistOfficeTask: records completed
Office Tasks for a checklistID
What’s a Task Extension?
• Task Extensions allow a task to be
automatically set to a particular status under
certain conditions.
• For example, automatically mark English
Proficiency as Approved if TOEFL scores are
high enough.
• Valid statuses: any code in codeEForm
Task Type Creation Basics
• Create a Task Type in
codeChecklistOfficeTaskType
• Set the type for the Office Task when
configuring it on a Checklist
• Create a stored procedure in the database
called checklistTaskExtension<taskTypeCode>
(ex. checklistTaskExtensionC001)
• Add that stored procedure to
dataFeedChecklistTaskExtensions
Creating the
Stored Procedure
CREATE PROCEDURE [dbo].[checklistTaskExtensionC011] AS
BEGIN
SET NOCOUNT ON;
INSERT INTO jbChecklistOfficeTaskExtQueue (idnumber, checklistID, officeTaskID, status)
SELECT
viewChecklistTaskExtHelper.idnumber,
viewChecklistTaskExtHelper.checklistID,
viewChecklistTaskExtHelper.officeTaskID,
CASE
WHEN jbChecklistSpeciesKey.speciesKey LIKE '%4132'
THEN 'Approved'
ELSE 'NA'
END AS status
FROM viewChecklistTaskExtHelper
INNER JOIN jbChecklistSpeciesKey
ON viewChecklistTaskExtHelper.idnumber = jbChecklistSpeciesKey.idnumber
AND viewChecklistTaskExtHelper.checklistID = jbChecklistSpeciesKey.checklistID
WHERE viewChecklistTaskExtHelper.taskType = ‘C011'
END
Write a SELECT Query
• Select the students you want to be checked, the task
to set, and the status to set to.
• Use viewChecklistTaskExtHelper like a function
• TaskID = viewChecklistTaskExtHelper(student,
checklist, taskType)
Let’s Write a Task Extension
• Sunapsis comes with an extension for marking
immigration documents as created but it doesn’t
handle change of level well
• Let’s make our own
Take-aways
• Understand the basics of Checklists’
underlying structure
• Know what a task extension is, and how to
write one