Protocol Management Development
From CaisisWiki
(→Depending on a previous Visit's item) |
(→Advanced Scheduling) |
||
(One intermediate revision not shown) | |||
Line 13: | Line 13: | ||
===Advanced Scheduling=== | ===Advanced Scheduling=== | ||
Visits which have advanced scheduling are marked in the visit's '''ItemIntervalType''' field to signify the scheduling. A pipe is used to delimit multiple advanced scheduling features. | Visits which have advanced scheduling are marked in the visit's '''ItemIntervalType''' field to signify the scheduling. A pipe is used to delimit multiple advanced scheduling features. | ||
+ | |||
+ | '''IMPORTANT''' | ||
+ | In all advanced scheduling, the '''DisplayUnitName''' '''NumberOfUnits''' fields will act as an "anchor" to when the visit will be scheduled. | ||
'''ProtocolMgr_Timeline''' | '''ProtocolMgr_Timeline''' | ||
*ItemIntervalType: "Recurring", "Dependent Off Treatment", "Recurring|Dependent Off Treatment" | *ItemIntervalType: "Recurring", "Dependent Off Treatment", "Recurring|Dependent Off Treatment" | ||
+ | *DisplayUnitName: "Week" - the unit representing when the dependent item will be scheduled | ||
+ | *NumberOfUnits" "1" - the unit value representing how long after the dependent item will be scheduled | ||
+ | |||
+ | i.e., If a visit is to occur 1 Week after a patient goes "Off Treatment", the dependent visit must be marked UnitName: "Week" NumUnits: "1", which will signify that the visit is scheduled 1 week after the "Off Treatment". | ||
====Recurring Visits==== | ====Recurring Visits==== | ||
Line 71: | Line 78: | ||
*PtProtocolStatus: "Off Treatment" - a status of a patient on a protocol | *PtProtocolStatus: "Off Treatment" - a status of a patient on a protocol | ||
- | SQL: visit is matched to patient's status | + | |
+ | '''SQL:''' visit is matched to patient's status | ||
<pre> | <pre> |
Current revision as of 21:38, 17 February 2011
Contents |
Developer
Schema Info
Schema Items
Timeline
Relevant Tables
- ProtocolMgr_SchemaItems: represents a particular set of items to be collected (collect LabDate and LabResult for Lab Tests)
- ProtocolMgr_Timeline: represents visit
- ProtocolMgr_ItemTimeline: represents a particular set of items on a visit
- ProtocolMgr_PatientItems: a patient's specific particular set of items for a particular date.
- RelatedRecords: used to relate one record to another
Advanced Scheduling
Visits which have advanced scheduling are marked in the visit's ItemIntervalType field to signify the scheduling. A pipe is used to delimit multiple advanced scheduling features.
IMPORTANT In all advanced scheduling, the DisplayUnitName NumberOfUnits fields will act as an "anchor" to when the visit will be scheduled.
ProtocolMgr_Timeline
- ItemIntervalType: "Recurring", "Dependent Off Treatment", "Recurring|Dependent Off Treatment"
- DisplayUnitName: "Week" - the unit representing when the dependent item will be scheduled
- NumberOfUnits" "1" - the unit value representing how long after the dependent item will be scheduled
i.e., If a visit is to occur 1 Week after a patient goes "Off Treatment", the dependent visit must be marked UnitName: "Week" NumUnits: "1", which will signify that the visit is scheduled 1 week after the "Off Treatment".
Recurring Visits
A recurring visit is a visit that will occur at a set frequency for a set time period. For instance, a visit may occur every 4 Weeks for 16 Weeks, creating 4 visits.
Dependent Visits
A dependent visit is one which will not be scheduled until a specified actions happens in the system, such as a patient status changing or upon completion of a visit.
In both scenarios, a Patient Item record will be created, but NOT scheduled when then are initially placed "On Study", since these dates are computed after an event in the system.
ProtocolMgr_PatientItems
- FirstAnticipatedDate: date is calculated after trigger event
- LastAnticipatedDate: date is calculated after trigger event
- ScheduledAnticipatedDate: date is calculated after trigger event
Depending on a previous Visit's item
In this scenario, when a previous is marked as performed, the dependent visits are then scheduled based upon the performed date of the previous visit, such as Week 3's visit is based on completion of a Pre-Study lab test.
A Related Record entry is used to mark a visit's dependency on another visit's item, as well as marking the ItemIntervalType column as Dependent.
RelatedRecord
- DestTableName: "ProtocolMgr_ItemTimeline" - the visit item on which the visit is dependent
- DestPrimaryKey: pri key of visit item
- SrcTableName: "ProtocolMgr_Timeline" - the dependent visit
- SrcPrimaryKey: pri key of the visit
- SrcSystem: "Caisis" - mark that this an internal Caisis relation
ProtocolMgr_Timeline
- ItemIntervalType: "Recurring"
SQL: get source visit's item based on dependent item
RelatedRecords.SrcTableName = 'ProtocolMgr_Timeline' AND RelatedRecords.SrcPrimaryKey = [DEPENDENT ItemTimelineId] AND RelatedRecords.DestTableName = 'ProtocolMgr_ItemTimeline' AND RelatedRecords.SrcSystem = 'Caisis'
Depending on a Patient's status
In this scenario, when a specified patient's status is entered, these visits will be scheduled based on that new status. i.e., A patient is placed "Off Treatment", and will require a final visit.
No related record is created in this instance. The mapping to signal this visit as dependent on a status is stored in the ItemIntervalType' field.
ProtocolMgr_Timeline
- ItemIntervalType: "Dependent Off Treatment"
PatientProtocolStatus
- PtProtocolStatus: "Off Treatment" - a status of a patient on a protocol
SQL: visit is matched to patient's status
ProtocolMgr_Timeline.ItemIntervalType LIKE '%Dependent ' + PatientProtocolStatus.PtProtocolStatus + '%'
Multiple Advanced Scheduling Options
Both the recurring and dependent scheduling options can be combined for more complex scenarios, such as a patient will be scheduled for 3 weekly follow up visits 1 week after they go "Off Treatment".