示例代码

 计算天数

用于计算两个给定日期之间天数的函数。该函数返回整数值。

函数定义:

int Calculations.CalculateDays(date sdate, date edate)
{
days = (((input.edate - input.sdate) / 86400000)).toLong();
return days;
}

其中,

int - 此函数返回的数据类型是整数型。
Calculations - 是创建函数所在的命名空间。
CalculateDays - 是函数名称。
sdate - 日期类型的参数。
edate - 日期类型的参数。

函数调用:

CalculateDays 函数在“添加时 -> 成功时”脚本中调用,它会使用函数返回的值更新数值表单字段 Number_of_days。

on add
{
on success
{
input.Number_of_days = thisapp.Calculations.CalculateDays(input.Start_Date, input.End_Date);
}
}

 日期格式

用于获取给定日期的月份、年份和日期的函数。该函数将输入日期返回为“日/月/年”格式的字符串,例如 12/2/2008

函数定义

string dateformat.getAustralian(date inputdate)
{
month = inputdate.getMonth();
day = inputdate.getDay();
year = inputdate.getYear();
outputstr = day + "/" + month + "/" + year;
return outputstr;
}

 isLeapYear()

用于检查给定年份是否为闰年的函数。如果给定年份是闰年,该函数返回布尔值‘true’。

函数定义

bool isLeapYear(int year)
{
leapyear = false;
if ((input.year % 400) == 0)
{
leapyear = true;

}
else if ((input.year % 100) == 0)
{
leapyear = false;

}
else if ((input.year % 4) == 0)
{
leapyear = true;

}
return leapyear;
}

 nextLeapYear()

用于基于给定年份返回下一个闰年的函数。在这里,该函数调用另一个函数 isLeapYear()

函数定义

int nextLeapYear(int year)
{
input.year = (input.year + 1);
if (thisapp.isLeapYear(input.year))
{
return input.year;
}
else
{
return thisapp.nextLeapYear(input.year);
}
}

 邮件通知

用于将邮件发送给视图中选定记录的函数。

函数定义

void Email.EmailNotification(string toaddress)
{
sendmail
(
To : input.toaddress
From : zoho.adminuserid
Subject : "Subject of the email"
Message : "Your message"
)
}

自定义动作

邮件通知函数在视图定义中配置为自定义动作。表单中的 EmailId 字段的值作为参数值传递。

custom actions
(
"Send Mail" : Email.EmailNotification(toaddress = EmailId)
)

 更新字段值

用于将视图中所选记录的 SampleForm 中 Travel_Status 字段的值更新为“Confirmed”的函数。

函数定义

void test.ConfirmTrip(int id)
{
rec = SampleForm [ID == input.id];
rec.Travel_Status = "Confirmed";
}

自定义动作

ConfirmTrip 函数在视图定义中配置为自定义动作。所选记录 ID 字段的值将作为参数值传递。

custom actions
(
"Confirm" : test.ConfirmTrip(id = ID)
)

注:

  • 根据您的要求更改表单和字段名称。