getDispensationInfo( )
检索有关受试者的分配历史记录的详细信息。例如,最后剂量、分配日期和套件信息。
警告:
请考虑以下事项:- 此帮助程序函数可能返回解盲信息。因此,请仔细使用返回的信息来保持研究的盲目性。
- 使用此帮助程序函数时,必须从非重复(平面)形式派生目标和规则变量。如果目标或变量引用了重复表单、两部分表单或实验室表单,则规则不会保存。
- 对于强制滴定研究,知道最后剂量对于确定下一个剂量或套件类型至关重要。系统捕获有关受试者最后剂量的信息,以帮助高级分配过程。
- 在分配计划的下一剂量(例如,20 mg Ibuprofen)之前,系统会检查受试者是否已达到其当前剂量所需的天数。如果尚未达到此最小持续时间,受试者将无法获得下一个剂量。此流程使用帮助程序功能跟踪上次分配日期和给药剂量。
规则由数据提交触发。执行系统操作不会触发要运行的规则。此处描述的帮助程序函数返回的所有数据将在运行规则时提供。如果信息在运行规则后发生更改,则不会导致重新运行规则。
语法
getDispensationInfo(referenceVisit, eventInstanceNumber, includeUnscheduleVisits, includeReplacementKit)参数
提示:
现场工作人员记录的当地采购套件和剂量信息不包括在内。对于站点工作人员直接收集的剂量信息(例如,以文本形式收集的分配观察),必须使用 getQuestionValue( ) 帮助程序功能单独检索数据。| 参数 | 必需或可选 | 说明 |
|---|---|---|
referenceVisit |
必需 | 指定访问上下文的字符串值或变量名称。它可以具有以下值之一:
目标的当前访视用于确定适当的最后或下一个剂量,或分配访视的起点。
|
eventInstanceNumber |
可选 | 如果将变量作为 referenceVisit 传递,则为必需字段。提供访视变量名称时表示未计划或周期访视的实例编号的整数值。 如果引用的访视是周期的一部分或非计划访视,则帮助函数将返回多个实例。因此,必须传递eventInstanceNumber 对象以标识要检索的匹配项。
|
includeUnscheduleVisits |
可选 |
如果设置为 Y,则包括未计划的访问。默认情况下,会考虑未计划的访问。如果设置为 N,则忽略未计划的访问。返回布尔值(true 或 false): True 表示包括的未计划访视, False 表示排除的未计划访视。 非计划访问根据访问日期(而不是实例编号)按时间顺序被视为访问,除非从规则帮助程序功能中排除。 |
includeReplacementKit |
可选 |
如果设置为 Y,则包括替换套件。默认情况下,将考虑替换套件。如果设置为 N,将忽略替换套件。返回布尔值(true 或 false):如果包括替换套件,则返回 True ;如果排除替换套件,则返回 False 。 |
返回值
注:
请考虑以下事项:- 当需要来自多个访问的数据时,请使用之前的所有参数。然后,使用 getValues() 查找特定访问的值。这提高了规则效率。
- 如果在访问期间分配了多个套件类型,则帮助程序函数包括每个套件的返回。
- 对于在 last 参数下指定的剂量保留:
- 如果访问时所有剂量都保持不变,则返回最近分配的剂量。
- 如果至少分配了一个剂量,它将返回这些剂量,“保持剂量”用于保持剂量。
- 网站记录的剂量信息将不包括在退货中。规则设计者需要直接从问题中检索此信息。
- 对于非分配访视,所有上一个参数将返回所有已完成的分配,而最后一个参数将返回系统中完成的最后一个分配。
- 虽然访问和分配日期以站点的本地时区和系统日期格式返回,但它们在“调试”窗口中显示 GMT 时间戳以支持数学运算。
- 对于非分配访问,所有上一个参数将返回所有已完成的分配,最后一个参数将返回系统中完成的最后一个分配。
返回一个对象数组,其中包括在适用的就诊处分配的每种药物(取决于提供的参数)。每个对象都包含以下格式的信息:
{
"visitName": "visitName",
"eventInstanceNumber":"eventInstanceNumber",
"kitType":"kitType",
"kitDescriptione":"kitDescription",
"dateDispensed":"dateDispensed",
"dosage":"dosage",
"quantity":"quantity",
"isHeld":"true/false"
}| 属性 | 说明 |
|---|---|
visitName |
访问的名称。还将包括周期或未计划数量。 |
eventInstanceNumber |
未计划的访视或周期编号的实例编号。可以返回空值。 |
kitType |
指明由研究设计者创建调查产品套件类型对话框指定的套件类型。 |
kitDescription |
套件的说明,包括设计者在创建调查产品套件类型对话框中指定的药物名称。 |
dateDispensed |
指明套件的分配日期。对于下一个参数,如果尚未返回分配日期或套件信息,则不返回分配日期或套件信息。 |
dosage |
药物的剂量分配。如果保持剂量,这将返回 "null"。 |
quantity |
已分配的药物数量。如果保持剂量,这将返回 "null"。 |
isHeld |
返回布尔值(true 或 false 值):如果保持剂量,则返回 "true",如果分配,则返回 "false"。 |
示例 3-94 获取受试者访视的分配和套件详细信息
var aDesc = null;
function useDispResult(dItem)
{
logMsg('visitName: '+ dItem.visitName);
logMsg('eventInstanceNumber: '+ dItem.eventInstanceNumber);
logMsg('kitType: '+ dItem.kitType);
logMsg('kitDescription: '+ dItem.kitDescription);
logMsg('dateDispensed: '+ dItem.dateDispensed);
logMsg('dosage: '+ dItem.dosage);
logMsg('quantity: '+ dItem.quantity);
logMsg('isHeld: '+ dItem.isHeld);
aDesc = dItem.kitDescription;
var today = new Date();
if(dItem.dateDispensed!=null)
{
logMsg("diff: " + dateDiffInDays(today, dItem.dateDispensed));
}
}
var resDisp=getDispensationInfo('vVar', null, 'Y', 'Y');
if(resDisp)
{
resDisp.forEach(useDispResult);
}
return aDesc;父主题:访问和分配计划功能