// 為所有要存取的欄位建立變數
var startField = Context.GetField("Start Date") ;
var endField = Context.GetField("End Date");
var durationField = Context.GetField("Duration");
var startDate = startField.Value;
var endDate = endField.Value;
//檢查文件上是否找到「Start Date」和「End Date」欄位
if (endField && endDate && startField && startDate)
{
//計算病假天數
var length = (1 + (endDate.getTime() - startDate.getTime()) / 3600000 / 24);
//如果未找到 duration 欄位或無法解析為數字,則將計算值傳遞給該欄位
if (!durationField.Value)
durationField.Value = length;
//如果找到 duration 欄位,則將其值與計算的天數進行比較
else if (durationField.Value != length)
{
Context.CheckSucceeded = false;
Context.ErrorMessage = "「Duration」欄位的值與實際病假天數不符";
durationField.AddSuggestion(length.toString());
}
}