首页 > 解决方案 > SAPUI5 Chart 50053 维度绑定不完整

问题描述

第一次尝试图表,尝试在此处设置一个简单的图表,该图表仅基于下面快照中看到的表格中的 3 个值(图表正好位于下方):类型 ID、平均总周转时间(第一次出现)、平均净周转时间(第一次出现)和(可见)我收到上述错误。

图表错误

当然,在发布之前,我查看了类似的问题,并且在所有情况下,解决方案都是相同的,即数据集的度量/维度中提供的值必须与 FeedItems 方法提供的值相同(有意义) . 问题是我有他们的权利。考虑数据集/提要定义中的语法错误(例如,单引号而不是双引号)。到目前为止尝试了许多组合,结果总是相同的,所以我最终留下了唯一没有在编辑器中给我蓝色警告的语法。(极短)控制器代码如下。这会敲响警钟吗?​</p>

​问候

格雷格

            var oVizFrame = this.getView().byId("idStackedChart");
            oVizFrame.setVizProperties({
                plotArea: {
                    colorPalette: d3.scale.category20().range(),
                    dataLabel: {
                        showTotal: true
                    }
                },
                tooltip: {
                    visible: true
                },
                title: {
                    text: "Stacked Bar Chart"
                }
            });
            var oDataset = new sap.viz.ui5.data.FlattenedDataset({
                dimensions: [{
                    name: "Type",
                    value: "{AgrTypeid}"
                }],

                measures: [{
                    name: "Gross Turnaround",
                    value: "{Yr1Avggta}"
                }, {
                    name: "Net Turnaround",
                    value: "{Yr1Avgnta}"
                }],

                data: {
                    path: "/Agreement_Summary"
                }
            });
            oVizFrame.setDataset(oDataset);

            oVizFrame.setModel();

            var oFeedValueAxis = new sap.viz.ui5.controls.common.feeds.FeedItem({
                    uid: "valueAxis",
                    type: "Measure",
                    values: ["Yr1Avggta"]
                }),
                oFeedValueAxis1 = new sap.viz.ui5.controls.common.feeds.FeedItem({
                    uid: "valueAxis",
                    type: "Measure",
                    values: ["Yr1Avgnta"]
                }),
                oFeedCategoryAxis = new sap.viz.ui5.controls.common.feeds.FeedItem({
                    uid: "categoryAxis",
                    type: "Dimension",
                    values: ["AgrTypeid"]
                });

            oVizFrame.addFeed(oFeedValueAxis);
            oVizFrame.addFeed(oFeedValueAxis1);
            oVizFrame.addFeed(oFeedCategoryAxis);

标签: chartssapui5

解决方案


好吧,它的工作方式有点不同,这是正确的提要代码:

var oFeedValueAxis = new sap.viz.ui5.controls.common.feeds.FeedItem({
    uid: "valueAxis",
    type: "Measure",
    values: ["Type"]    //--> should be same as Measure name
}),
oFeedValueAxis1 = new sap.viz.ui5.controls.common.feeds.FeedItem({
    uid: "valueAxis",
    type: "Measure",
    values: ["Gross Turnaround"]  //--> should be same as Measure name
}),
oFeedCategoryAxis = new sap.viz.ui5.controls.common.feeds.FeedItem({
    uid: "categoryAxis",
    type: "Dimension",
    values: ["Net Turnaround"]     //--> should be same as Dimension name
});

推荐阅读