EDM.Time的表列格式

时间:2016-03-17 12:10:19

标签: javascript odata sapui5

我有一个链接到后端OData服务的表控件。其中一列包含值"Start time",它来自后端PT01H15M32S。有什么方法可以将这种格式转换为清晰易读的格式吗?以下是我试图实现它的方式。

oTable.addColumn(new sap.ui.table.Column({
  label: new sap.ui.commons.Label({text: "Start Time"}),
  template: new sap.ui.commons.TextView().bindProperty("text", {
    path: "STRTTIME",
    type: new sap.ui.model.type.Time({
      source: {
        __edmtype: "Edm.Time"
      },
      pattern: "HH:MM:SS"
    })
  }),
  sortProperty: "STRTTIME",
  editable: false,
}));

formatValue还有一个sap.ui.model.type.Time函数,但我不知道如何使用它来获取正确的时间格式。

1 个答案:

答案 0 :(得分:1)

通过使用类型,您不需要调用formatValue,因为运行时将为您执行此操作。但是,您应该使用正确的类型:sap.ui.model.odata.type.Time!您使用的类型不支持EDM数据类型。你的编码也很奇怪。

oTable.addColumn(new sap.ui.table.Column({
    label: new sap.ui.commons.Label({text: "Start Time"}),
    template: new sap.ui.commons.TextView({
          "text" : { 
              path : "{STRTTIME}",
              type: new sap.ui.model.odata.type.Time({
                  source : { __edmtype: "Edm.Time" }, pattern: "HH:MM:SS" })
              })
           }
    }),
    sortProperty: "STRTTIME",
    editable: false,
}));