Charts SAPUI5图表基于变量度量名称
我有一张图表,比较了一年和另一年的价值。我想做的是在度量的定义中使用变量,以便图例显示年份数(来自变量)。我尝试将变量分配给图表的“名称”配置,但执行此操作时出错。目前,我有它显示'开始年'和'结束年',但真的希望它是用户正在比较的实际年份数 这是我的控制器中定义度量和馈送的部分:Charts SAPUI5图表基于变量度量名称,charts,sapui5,Charts,Sapui5,我有一张图表,比较了一年和另一年的价值。我想做的是在度量的定义中使用变量,以便图例显示年份数(来自变量)。我尝试将变量分配给图表的“名称”配置,但执行此操作时出错。目前,我有它显示'开始年'和'结束年',但真的希望它是用户正在比较的实际年份数 这是我的控制器中定义度量和馈送的部分: I have two variables that start as the current year and the previous year, but the user can modify those val
I have two variables that start as the current year and the previous year, but the user can modify those values.
var startYear = today.getFullYear();
var endYear = today.getFullYear()-1;
var oDataset = new FlattenedDataset({
dimensions: [{
name: "KPI",
value: "{field}"
}],
measures: [{
name: "Start Year", <- I tried putting startYear here and below but get errors
value: "{current}"
},{
name: "End Year", <- tried putting endYear here and below but got errors
value: "{previous}"
}],
data: {
path: "/bullet",
filters: [oFilter]
}
});
oVizFrame.setDataset(oDataset);
oVizFrame.setModel(oModel);
oVizFrame.setVizProperties({
plotArea: {
dataLabel: {
visible: true,
formatString: '#,##0'
},
colorPalette: ['sapUiChartPaletteSemanticNeutral'],
gap: {
visible: true
}
},
valueAxis: {
title: {
visible: false,
}
},
legend: {
title: {
visible: false
}
},
title: {
visible: true,
text: 'Year Comparison'
}
});
var feedValueAxis = new FeedItem({
'uid': "valueAxis",
'type': "Measure",
'values': ["Start Year"] <- tried putting startYear here but didn't work
}),
feedCategoryAxis = new FeedItem({
'uid': "categoryAxis",
'type': "Dimension",
'values': ["KPI"]
}),
feedTargetValues = new FeedItem({
'uid': "targetValues",
'type': "Measure",
'values': ["End Year"] <- tried putting endYear here but got error
});
我有两个变量,从当前年份和前一年开始,但用户可以修改这些值。
var startYear=today.getFullYear();
var endYear=today.getFullYear()-1;
var oDataset=新的扁平化数据集({
尺寸:[{
名称:“KPI”,
值:“{field}”
}],
措施:[{
姓名:“开始一年”我终于做到了这一点——我想我还有一些其他问题导致这一点不起作用,但一旦我解决了这些问题,这一点就起作用了:
createDataset: function(sPath, sYr, eYr){
return new sap.viz.ui5.data.FlattenedDataset({
dimensions: [{
axis : 1,
name: "Month",
value: "{month}"
}],
measures: [{
name: eYr, << this contains the year I want in legend
value: "{current}"
},{
name: sYr, << this contains the year I want in legend
value: "{previous}"
}],
data: {
path: sPath
}
});
},
createFeedItem: function(sYr, eYr) {
return new FeedItem({
'uid': "valueAxis",
'type': "Measure",
'values': [ sYr, eYr ] << this contains the year I want in legend, same values as when FlattenedDataSet is created
});
},
createCatItem: function() {
return new FeedItem({
'uid': "categoryAxis",
'type': "Dimension",
'values': ["Month"]
});
},
createDataset:函数(sPath、sYr、eYr){
返回新的sap.viz.ui5.data.FlattedDataset({
尺寸:[{
轴:1,
名称:“月份”,
值:“{month}”
}],
措施:[{
name:eYr,try startYear=today.getFullYear().toString();由于getFullYear返回typeof numbers,所以我尝试过,但似乎没有帮助。问题似乎在于度量值和feedValueAxis的定义中……如何将“startYear”放入?例如:doi-measures:[{name:startYear,value::{current}“}那么FeedValueAxis是如何定义的呢?例如,我尝试了不同的变体:var FeedValueAxis=newfeedItem({'uid':“valueAxis”,'type':“Measure”,'values':startYear})但是得到错误:uncaughtreferenceerror:startYear没有定义,这并不是我想要的,我希望“开始/结束年份”文本是实际年份,值是数据点(不是年份)。
createDataset: function(sPath, sYr, eYr){
return new sap.viz.ui5.data.FlattenedDataset({
dimensions: [{
axis : 1,
name: "Month",
value: "{month}"
}],
measures: [{
name: eYr, << this contains the year I want in legend
value: "{current}"
},{
name: sYr, << this contains the year I want in legend
value: "{previous}"
}],
data: {
path: sPath
}
});
},
createFeedItem: function(sYr, eYr) {
return new FeedItem({
'uid': "valueAxis",
'type': "Measure",
'values': [ sYr, eYr ] << this contains the year I want in legend, same values as when FlattenedDataSet is created
});
},
createCatItem: function() {
return new FeedItem({
'uid': "categoryAxis",
'type': "Dimension",
'values': ["Month"]
});
},