如何将日期转换为CRM日期格式?

时间:2013-03-21 13:11:16

标签: dynamics-crm-2011 dynamics-crm crm

使用日期字段时,我得到的日期值为/Date(1360879200000)/。所以我使用了一些代码来获取日期值:

var mills = parseInt(rowDate.substring(6, 19));
    var date = new Date(mills);

此处为rowDate="/Date(1360879200000)/",使用此代码后,我得到的日期值为date="Fri Feb 15 03:30:00 UTC+0530 2013"

我已将此值添加到文本框中。

现在,如果我在此字段中进行了一些值更改,那么如何将此日期值转换为CRM支持的值。

提前致谢。

2 个答案:

答案 0 :(得分:0)

我刚刚打开了我的CRM,我正在对我的联系表单进行以下操作(根本没有转换为整数)。我出生在二月,但希望成为一月的孩子。

var control = Xrm.Page.getAttribute("birthdate");
var birthDate;
if(control){
  control.getValue();
}
alert(birthDate);

var fakeDate = new Date(birthDate.toString().replace("Feb", "Jan"));
alert(fakeDate);

编辑:

您可以通过Xrm.Page从网络资源访问window.parent.Xrm.Page.etc

答案 1 :(得分:0)

我找到了一份工作...我有时间来自CRM /Date(1360879200000)/,我得到了年,月,日,小时,分钟和秒值。使用这些值,我将日期分隔为"-"。现在编辑时我已将日期值发送到以下函数。我开始知道CRM除了日期格式之外:2011-07-20T16:30:00Z。它为我工作。

function dateToCRMFormat(date) {
    ///<summary>
    /// function to formate normal date value to CRM supported value
    ///</summary>

    //debugger;

    if (date!="") {
        var DateArray = date.split("-");
        var year = DateArray[0];

        var monthInt = parseInt(DateArray[1], 10);
        var month = "";
        if (monthInt < 10) {
            month = "0" + monthInt.toString();
        } else {
            month = monthInt.toString();
        }

        var dayInt = parseInt(DateArray[2], 10);
        var day = "";
        if (dayInt < 10) {
            day = "0" + dayInt.toString();
        } else {
            day = dayInt.toString();
        }
        if (DateArray[3].length == 1) {
            DateArray[3] = "0" + DateArray[3];
        }
        if (DateArray[4].length == 1) {
            DateArray[4] = "0" + DateArray[4];
        }
        if (DateArray[5].length == 1) {
            DateArray[5] = "0" + DateArray[5];
        }
        var fullDate = year + "-" + month + "-" + day + "T" + DateArray[3] + ":" + DateArray[4] + ":" + DateArray[5] + "Z";
        return fullDate;

    }

}

无论如何,我还在等待一个真正的解决方案。