点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)大家好! 我正在尝试从表格到图...
点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)大家好! 我正在尝试从表格到图...
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
大家好!
我正在尝试从表格到图表显示数据,很遗憾,我没有获得正确的数据,它仅占用表格的第一行。
我的数据应按组汇总。
请参阅附件。
例如,绿色需要在图表22中显示,这是表中各行的总和,而其绿色显示12是第一行。
视图:
<!-标题标题-> <标题文字=" {/title}"/> <!-标题内容-> <!-TitleExpanded内容-> <!-标头内容-> <!-图表--
controller.js
sap.ui.define([ " sap/ui/core/mvc/Controller", " sap/m/Table", "SAP/米/标签", " sap/m/Column", " sap/ui/model/json/JSONModel", " sap/m/ColumnListItem", " sap/m/library", " sap/viz/ui5/controls/VizFrame", " sap/suite/ui/commons/ChartContainerContent", " sap/viz/ui5/data/FlattenedDataset", " sap/viz/ui5/controls/common/feeds/FeedItem", " sap/viz/ui5/controls/common/feeds/AnalysisObject" ],函数(控制器,表格,标签,列,JSONModel,ColumnListItem,MobileLibrary,VizFrame,ChartContainerContent, FlattenedDataset,FeedItem,AnalysisObject){ "使用严格"; return Controller.extend(" tableChart1.controller.View1",{ _constants:{ 表格:{ 图标:" sap-icon://table-view", 标题:"动态表", itemBindingPath:"/数据", columnLabelTexts:[ "可乐", " Col b", " Col c" ], templateCellLabelTexts:[ "{可乐}", " {Col b}", " {Col c}" ] }, chartData:{ 数据集:{ 尺寸:[{ 名称:" Col b", 值:" {Col b}" }], 措施:[{ //组:1 名称:" Col a", 值:" {Col a}" }], 数据:{ 路径:"/数据" } }, chartType:[ "酒吧", "馅饼" ], feedItems:[{ " uid":" primaryValues", " type":" Measure", "值":[ 新的AnalysisObject({ uid:" Col a", 类型:"测量", 名称:" Col a" }) // "可乐" ] },{ " uid":" axisLabels", " type":"维度", "值":[ 新的AnalysisObject({ uid:" Col b", 类型:"维度", 名称:" Col b" }) ] }], analysisObjectProps:{ uid:" Col b", 类型:"维度", 名称:" Col b", dataType:"字符串" } }, 数据:{ "数据":[{ " Col b":" A", "颜色":12 " Col c":1 },{ " Col b":" A", "颜色":3, " Col c":3 },{ " Col b":" A", "颜色":7 " Col c":3 },{ " Col b":" B", "颜色":3 },{ " Col b":" C", "颜色":3 },{ " Col b":" D", "颜色":3 },{ " Col b":" D", "颜色":5 }], " chartX":[{ 名称:" Col b", 值:" {Col b}" },{ 名称:" Col a", 值:" {Col a}" }] } }, onInit:函数(){ var oModel = new JSONModel(this._constants.data); var oPage = this.getView()。byId(" mySemanticPage"); var oAnalysisVizFrame = this._constants.chartData; var oAnalysisObject =新的AnalysisObject(oAnalysisVizFrame.analysisObjectProps); var aValues = oAnalysisVizFrame.feedItems [1] .values; 如果(aValues.length === 0){ aValues.push(oAnalysisObject); } this.setSelectItems(oModel); this._createChart(oModel,oPage,this._constants.chartData.chartType [1]); this._createTable(oModel,oPage); }, //图表创建。 _createChart:函数(oModel,oPage,vType){ var vizFrame = new VizFrame({ id:" viz", 高度:" 400px", 宽度:" 100%", uiConfig:{ vizType:vType, applicationSet:" fiori" } }); var oVizFrame = this._constants.chartData; var oDataset = new FlattenedDataset(this._constants.chartData.dataset); vizFrame.setDataset(oDataset); this._addFeedItems(vizFrame,oVizFrame.feedItems); vizFrame.setModel(oModel); oPage.addHeaderContent(vizFrame); }, _addFeedItems:函数(vizFrame,feedItems){ for(var i = 0; i
最诚挚的问候,
Avi。
(19.4 kB)
嗨,
我认为这是因为您认为Viz组件确实可以为您聚合。 但是计算应该首先进行,然后再由Viz组件使用。
仅当您将Viz组件连接到CDS提供的OData服务时,才执行"自动"过程。 在这种情况下,您的CDS中将放置一些聚合批注,然后SADL框架将自动进行计算。
此致
Joseph
谢谢约瑟夫! 最后,我编写了一个函数来执行上述操作,谢谢您的回答
如果您的元数据已启用聚合,则可以尝试使用Smart Chart。 此处是示例。
Avi Tawill ,您是否解决了此问题 ? 我遇到了同样的问题,我编写了CDS View的查询注释,但可视化图表始终向我显示错误的值。
一周热门 更多>