代码之家  ›  专栏  ›  技术社区  ›  Balu Vyamajala

power-bi嵌入式javascript api getvisuals

  •  0
  • Balu Vyamajala  · 技术社区  · 7 年前
    let reportContainer = <HTMLElement>document.getElementById('reportContainer');
    this.report = this.powerbi.load(reportContainer, this.config);
    let reportObject = <pbi.Report>this.report;
    this.report.on("loaded", (result) => {
      console.log("loaded");
      reportObject.getPages().then(result => {
        console.log("sucessfully got pages");
        this.pages = result;
        result.forEach(element => {
          var page = <pbi.Page>element;
          console.log("A Page:" + page.displayName);
          page.getVisuals().then(visualSucessResult => {
            console.log("get Visuals sucess");
            visualSucessResult.forEach(aVisualElement => {
              var aVisual = <pbi.VisualDescriptor>aVisualElement;
              console.log("aVisual.name:" + aVisual.name);
            });
          }, visualFailureResult => {
              console.log("Get Visual Failed");
            })
        });
      }, error => {
        console.log("Error getting Pages");
      })
    });
    

    我正在尝试加载一个报告并获取报告的页面,然后获取每个页面的视觉效果。 当我得到视觉效果时,它无法获得视觉效果。似乎报表的视觉效果不包含代码试图获取的某些属性,但我在报表中找不到任何错误。我已经花了几个小时了,这似乎是一个愚蠢的错误,我无法弄清楚。 我是用角度5写的

    reportembed.externals.bundle.min.js:632 TypeError: Cannot read property 'entities' of undefined
    at Function.t.getDisplayNameForSQAggregate (powerbiportal.explore.bundle.min.js:12)
    at t.visitColumnAggr (powerbiportal.explore.bundle.min.js:12)
    at o (powerbiportal.dependencies.bundle.min.js:22)
    at Object.n [as visit] (powerbiportal.dependencies.bundle.min.js:22)
    at r.getOriginalDisplayName (powerbiportal.explore.bundle.min.js:12)
    at r.getDisplayName (powerbiportal.explore.bundle.min.js:12)
    at r.populateDisplayNamesByDataRole (powerbiportal.explore.bundle.min.js:12)
    at r.getRawTitleComponents (powerbiportal.explore.bundle.min.js:12)
    at r.getTitleText (powerbiportal.explore.bundle.min.js:12)
    at reportembed.bundle.min.js:21
    
    
    TypeError: Cannot read property 'findProperty' of undefined
    at Function.t.getDisplayNameForProperty(powerbiportal.explore.bundle.min.js:12)
    at t.visitColumn (powerbiportal.explore.bundle.min.js:12)
    at a (powerbiportal.dependencies.bundle.min.js:22)
    at Object.n [as visit] (powerbiportal.dependencies.bundle.min.js:22)
    at r.getOriginalDisplayName (powerbiportal.explore.bundle.min.js:12)
    at r.getDisplayName (powerbiportal.explore.bundle.min.js:12)
    at r.populateDisplayNamesByDataRole (powerbiportal.explore.bundle.min.js:12)
    at r.getRawTitleComponents (powerbiportal.explore.bundle.min.js:12)
    at r.getTitleText (powerbiportal.explore.bundle.min.js:12)
    at reportembed.bundle.min.js:21
    
    1 回复  |  直到 7 年前
        1
  •  0
  •   Ali Hamud    7 年前

    这确实是GETVisualAPI的一个限制。我把这个添加到wiki页面,一旦这个限制被删除,我会在这里发布。

    https://github.com/Microsoft/PowerBI-JavaScript/wiki/Get-Visuals#limitations