将格式化日期添加到自定义网格

时间:2012-11-19 14:09:53

标签: javascript sdk rally

我正在Rally中使用自定义网格在我的项目中创建一个投资组合项目表。我试图公开的一个字段是计划开始日期。按原样使用时,它以下列格式返回日期时间 - “YYYY-MM-DDTHH:MM:SS.xxxZ”。我一直在尝试使用rally.sdk.util.DateTime.format(date(),“yyyy-MM-dd”)函数来创建我的rowInfo名称/值对时只返回日期而不是整个事物添加到我的桌子,但它不起作用。

有什么想法吗?

var tbCfgTable = {
    columns: [{  
        key: 'ID',  
        width: "20%"  
    },{
        key: 'Name',
        width: "4%"
    },{
        key: 'Planned Start',
        width: "4%"
    },{
        key: 'Planned End',
        width: "3%"
    }]
};
gTable = new rally.sdk.ui.Table(tbCfgTable);

var nbrPis = theResults.pisQueryKey.length;
for (var ndx = 0; ndx < nbrPis; ndx++){
    aPi = theResults.pisQueryKey[ndx];
    // populate planned schedule rows
    aRowInfo = {
            'ID': aPi.Name,
            'Name': aPi.Name,
            'Planned Start': aPi.PlannedStartDate,
            'Planned End': aPi.PlannedEndDate
            };
    gTable.addRow(aRowInfo);
}

1 个答案:

答案 0 :(得分:0)

你真的很接近它 - 你需要做的就是首先将日期字符串解析为日期对象然后格式化它。

//function to format date
function formatDate(dateString) {
    if(!dateString) { return ''; }

    return rally.sdk.util.DateTime.format(
        rally.sdk.util.DateTime.fromIsoString(dateString, true), 'yyyy-MM-dd');
}

//build your table rows as usual, calling formatDate for each date field
aRowInfo = {
    'ID': aPi.Name,
    'Name': aPi.Name,
    'Planned Start': formatDate(aPi.PlannedStartDate),
    'Planned End': formatDate(aPi.PlannedEndDate)
};