0
if((!submittedBy( 'button1' )) && (!submittedBy( 'button2' ) 
{
    return true;
}
else
{
    var IsL2UserTxt = sessionScope.get("IsL2User");

    if(IsL2UserTxt == "Yes")
    {
        //Bring the issue Date&Time
        var start = getComponent("label_IssueDateDt").getValue();

        //Bring the Permenent Fix Target Date&Time 
        var end = this.getSubmittedValue();
        var dStart:NotesDateTime = session.createDateTime(start);
        var dEnd:NotesDateTime = session.createDateTime(end);

        if (!start)
        {
             return false;
        }
        else if (!end) 
        {
            return false;
        }
        else
        {
             print("Start: "+start+", End: "+end+",DStart: "+dStart+", DEnd: "+dEnd+", Time Diff: "+dEnd.timeDifference(dStart));
             return (dEnd.timeDifference(dStart) > 0 )
        }
    }
    else
    {
        return true;
    } 
}

我的 xpage 中有两个 Date Timestamp 编辑框,我在我的第二个 datetime stamp(Permenent Fix tartget Date&Time)编辑框上编写了如上所示的 validateExpression 代码。此处需要验证,即永久修复目标日期和时间应该大于发布日期和时间(dEnd.timeDifference(dStart)> 0)。

*上面的代码在这样的情况下工作,如果发布日期是 24/04/2012 11:16:51 AM 并且永久修复目标日期和时间 23/04/2012 11:16:51 AM 。但如果我的永久修复目标日期和时间在 2012 年 5 月 4 日到 2012 年 4 月 12 日之间,它将失败。我认为日期时间格式存在问题,因为永久修复目标日期的提交值是这样的,例如 2012-04-12T11:16:45+05:30。*

那么是否有任何解决方案来格式化提交值的日期时间值以避免上述问题。

关于 xpages 中验证评估顺序的另一件事。作为验证错误消息控件,随机显示消息的顺序不正确。

寻找您的积极回应。

问候, 尤格什

4

2 回答 2

0
var doValidate = (submittedBy( 'button1' ) || submittedBy( 'button2' )) &&   (sessionScope.get("IsL2User") == "Yes");
if (!doValidate) return true;
var dtIssue = getComponent("label_IssueDateDt").getSubmittedValue();
var dtPermFix =  this.getSubmittedValue();
if ( (dtIssue == null) || (dtPermFix == null) ) return false;
var difference = I18n.parseDateXMI(dtPermFix) - I18n.parseDateXMI(dtIssue);
return difference > 0;
于 2012-04-25T15:50:51.097 回答
0
Use NotesDateTime(start.getDateOnly), NotesDateTime(end.getDateOnly)

我们可以单独约会。通过这种方式,我们可以轻松处理。其他解决方案是常见的javascript。将日期拆分为年、月和日。通过这种方式不是更好的方式,但这也是解决方案。

通常,出于安全原因,我们使用 SSJS。数据将保密。出于其他原因,尝试使用 CSJS,你会觉得很酷。

于 2012-05-04T04:46:37.837 回答