订单有两个字段,发货日期(日期字段)和提前期(数字字段,以天为单位)。
输入发货日期时,应大于当前日期+提前期。如果没有警告用户,并且不允许保存记录。
++如果这实际上不能解释周末日,那将是一个加分。但不是强制性的
function checkLeadTime
{
var shipDate = Xrm.Page.getAttribute("requestdeliveryby").getValue();
var leadTime = Xrm.Page.getAttribute("orbus_leadtime").getValue();
var leadTimeDate = Xrm.Page.getAttribute("orbus_leadtimedate").getValue():
if(leadTime != NULL)
{
var approvedRushProduction = xrm.getAttribute("orbus_projectapprovedrush").getValue();
var approvedBy = Xrm.Page.getAttribute("orbus_approvedbyid").getValue();
var currentTime = new Date();
var newDate = currentTime.setDays(currentTime.getDays + leadTime);
leadTimeDate.setValue(newDate);
if(approvedRushProduction == 0 && approvedBy == NULL)
{
if ( newDate < shipDate)
{
alert("Sorry, Ship Date is less than lead time!");
}
else
{
alert("Current Time = " + newDate);
}
}
} }
答案 0 :(得分:0)
您可以将函数附加到表单onSave事件。
if ( newDate < shipDate ) {
alert("Sorry, Ship Date is less than lead time!");
Xrm.Page.context.getEventArgs().preventDefault();
} else {
alert("Current Time = " + newDate);
}
使用Xrm.Page.context.getEventArgs()。preventDefault()来停止保存事件。
答案 1 :(得分:0)
要停止保存并显示错误消息,您可以使用:
Xrm.Page.getControl(fieldName).setNotification(message);
http://garethtuckercrm.com/2013/10/17/crm-2013-new-features-javascript-notifications/