SAPUI5 没有为智能中的自定义列使用正确的类型 Table

SAPUI5 does not use the correct type for custom columns in Smart Table

我有一个 SAPUI5 smart table,我使用以下方式定义类型为 date 的自定义列。

在我的 oData 中,我有两列如下所示:

<Property Name="Datum" Type="Edm.DateTime" sap:creatable="true" sap:updatable="true" sap:deletable="true" sap:display-format="Date" sap:label="Datum"/>
<Property Name="AngebotAngefragt" Type="Edm.DateTime" sap:creatable="true" sap:updatable="true" sap:deletable="true" sap:display-format="Date" sap:label="AngebotAngefragt"/>

我将其中之一定义为自定义列,如下所示:

<Column visible="true">
        <customData>
            <core:CustomData key="p13nData" value='{"columnKey": "Datum", "leadingProperty": "Datum", "sortProperty": "Datum", "filterProperty": "Datum", "columnIndex":"3", "type": "date"}'/>
        </customData>
        <Text text="{/#Meldungen/Datum/@sap:label}"/>
</Column>

在旧版本的 UI5 中,使用相同的代码片段,当我们将类型设置为 date 时,它会在 p13n 对话框中显示自定义项目的日历,但现在我使用版本1.80 而是显示一个输入框。

这是 Datum 列的显示内容:

下面是我没有定义为自定义列的 AngebotAngefragt 列的显示内容:

这可以通过以下语法解决:

<Column visible="true">
        <customData>
            <core:CustomData key="p13nData" value='\{"columnKey": "Datum", "leadingProperty": "Datum", "sortProperty": "Datum", "filterProperty": "Datum", "columnIndex":"3", "type": "date"}'/>
        </customData>
        <Text text="{/#Meldungen/Datum/@sap:label}"/>
</Column>

这里真正有用的是 属性 值中的前导反斜杠。

在列自定义数据定义(在 js 级别)的开头没有给出反斜杠,将添加一个 属性 类型,但值未定义。应该与 SAPUI5 的内部处理(以及未转义的字符串)有关,但这没有明确记录。

代码示例: https://sapui5.netweaver.ondemand.com/#/topic/bed8274140d04fc0b9bcb2db42d8bac2(常见问题解答 -> 1. 示例代码段)