在Dynamics CRM 4.0中使用javascript计算年龄
首先,我对dynamics crm非常陌生 我有一种情况,我必须计算出发生案件的人的年龄 所涉人员类型为“投诉人” 为此,我们有3个客户实体在Dynamics CRM 4.0中使用javascript计算年龄,javascript,entity,crm,microsoft-dynamics,Javascript,Entity,Crm,Microsoft Dynamics,首先,我对dynamics crm非常陌生 我有一种情况,我必须计算出发生案件的人的年龄 所涉人员类型为“投诉人” 为此,我们有3个客户实体 new_Case Occurrence Date new_involvePerson Involved Person Type(following are types) - Complainant - Supervisor - Investigator and New_person
new_Case
Occurrence Date
new_involvePerson
Involved Person Type(following are types)
- Complainant
- Supervisor
- Investigator
and New_person
- DOB
现在,用户更新事件发生日期,我必须计算投诉人的年龄
事件案例保存时,是否可以在Javascript OnSave中执行此操作?
或者我必须创建工作流或插件吗?有可能得到示例代码吗
提前谢谢是的,这是可能的。您只需编写一个函数并在事件表单的保存时触发它 检查发生日期是否不为空,然后检索新的参与人类型,如果该类型等于投诉人,则很容易检索参与人的出生日期并计算年龄
calculateAge = function (date) {
var birthDate = new Date(date);
var todayDate = new Date();
var todayYear = todayDate.getFullYear();
var todayMonth = todayDate.getMonth();
var todayDay = todayDate.getDate();
var birthYear = birthDate.getFullYear();
var birthMonth = birthDate.getMonth();
var birthDay = birthDate.getDate();
var age = todayYear - birthYear;
if (todayMonth < birthMonth) {
age--;
}
if (birthMonth == todayMonth && todayDay < birthDay) {
age--;
}
if (age != undefined && age != null) {
Xrm.Page.getAttribute("yourfieldhere").setValue(age);
}
else {
Xrm.Page.getAttribute("yourfieldhere").setValue(null);
}
}
calculateAge=函数(日期){
var生日=新日期(日期);
var todayDate=新日期();
var todayYear=todayDate.getFullYear();
var todaymount=todayDate.getMonth();
var todayDay=todayDate.getDate();
var birthYear=birthDate.getFullYear();
var birthMonth=birthDate.getMonth();
var birthDay=birthDate.getDate();
var年龄=今天年-出生年;
如果(今天月<生日月){
年龄--;
}
如果(生日==今天月和今天<生日){
年龄--;
}
if(年龄!=未定义&&age!=null){
Xrm.Page.getAttribute(“yourfieldhere”).setValue(年龄);
}
否则{
Xrm.Page.getAttribute(“yourfieldhere”).setValue(null);
}
}