• <menu id="w2i4a"></menu>
  • logo 數(shù)據(jù)分析Power BI引導(dǎo)學(xué)習(xí)系列教程

    交互式報表Power BI教程:子報表


    使用 Power BI Desktop 從數(shù)據(jù)獲得見解,然后進行相關(guān)操作利用可視化分析免費創(chuàng)建內(nèi)容豐富的交互式報表,一切盡在指尖。

    點擊下載Power BI Desktop正式版


    子報表是在主分頁報表的表體中顯示其他分頁報表的分頁報表項 。從概念上說,報表中的子報表類似于網(wǎng)頁中的框架。子報表用于在報表中嵌入另一個報表。你可以使用任何報表作為子報表??梢詫@示為子報表的報表存儲在與父報表相同的 Premium 工作區(qū)中。您可以設(shè)計父報表,以便向子報表傳遞參數(shù)。可以在數(shù)據(jù)區(qū)域中重復(fù)子報表,并使用參數(shù)在子報表的每個實例中篩選數(shù)據(jù)。

    分頁報表中的子報表

    在此圖中,顯示在 Sales Order 主報表中的聯(lián)系人信息實際上來自于 Contacts 子報表。

    你可以在 Power BI Report Builder 中創(chuàng)建和修改分頁報表定義 (.rdl) 文件。可以將 SQL Server Reporting Services 中存儲的子報表上傳到 Power BI 服務(wù)中的 Premium 工作區(qū)。需要將主報表和子報表發(fā)布到同一個工作區(qū)。 安裝 Power BI Report Builder。

    結(jié)合使用 Report Builder 和 Power BI 服務(wù)

    Power BI Report Builder 可以與計算機上的分頁報表(稱為本地報表)結(jié)合使用,也可以與 Power BI 服務(wù)上的報表結(jié)合使用。首次打開 Report Builder 時,系統(tǒng)將要求你登錄到 Power BI 帳戶。如果沒有,請在右上角選擇“登錄” 。

    登錄 Power BI

    登錄后,你將在 Power BI Report Builder 中看到“Power BI 服務(wù)”選項,此選項代表“文件”菜單上的“打開”和“另存為”選項 。選擇“Power BI 服務(wù)”選項保存報表時,將在 Power BI Report Builder 和 Power BI 服務(wù)之間創(chuàng)建實時連接 。

    登錄 Power BI

    將本地報表保存到 Power BI 服務(wù)

    在你可以將子報表添加到主報表之前,你需先創(chuàng)建這兩個報表并將其保存到同一個 Power BI Premium 工作區(qū)。

    • 要打開現(xiàn)有的本地報表,請在“文件”菜單中,選擇“打開” > “此電腦”,然后選擇 .rdl 文件 。
    • 在“文件”菜單上,選擇“另存為” > “Power BI 服務(wù)” 。

    備注:還可以從 Power BI 服務(wù)開始上傳報表。

    • 在“另存為”對話框中,選擇可用于存儲分頁報表的 Power BI Premium 工作區(qū) 。Premium 工作區(qū)在其名稱旁邊有一個菱形圖標 Premium 菱形圖標。

    登錄 Power BI

    • 選擇“保存”。

    將子報表添加到報表

    將兩個報表保存到 Premium 工作區(qū)之后,接下來即可將其中一個報表作為子報表添加到另一個報表中??赏ㄟ^兩種方法添加子報表。

    在“插入”功能區(qū)中,選擇“子報表”按鈕,或右鍵單擊報表畫布,然后選擇“插入” > “子報表” 。

    登錄 Power BI

    隨即將打開“子報表屬性”對話框 。

    • 選擇“瀏覽”按鈕,導(dǎo)航到要用作子報表的報表,然后在“名稱”文本框中指定子報表的名稱 。
    • 根據(jù)需要配置其他屬性,包括參數(shù)。

    在子報表中使用參數(shù)

    若要將參數(shù)從父報表傳遞給子報表,請在用作子報表的報表中定義報表參數(shù)。在父報表中放入子報表時,您可以選擇報表參數(shù)以及要從父報表傳遞給子報表中的報表參數(shù)的值。

    備注:從子報表中選擇的參數(shù)是報表參數(shù),而不是查詢參數(shù) 。

    可以將子報表放入報表的表體或數(shù)據(jù)區(qū)域中。如果將子報表放在數(shù)據(jù)區(qū)域中,則子報表將重復(fù)數(shù)據(jù)區(qū)域中的組或行的每個實例??梢詫⒔M或行中的值傳遞到子報表。在子報表值屬性中,對于包含要傳遞給子報表參數(shù)的值的字段,請使用字段表達式。

    在 Report Builder 中預(yù)覽分頁報表

    可在 Report Builder 中預(yù)覽報表。

    • 從“開始”功能區(qū)選擇“運行” 。
    由于 Report Builder 是一種設(shè)計工具,因此,在其中預(yù)覽報表看上去可能與在 Power BI 服務(wù)中呈現(xiàn)報表有所不同。

    有關(guān)預(yù)覽的說明

    • Report Builder 不會存儲報表中使用的數(shù)據(jù)源的憑據(jù)。Report Builder 在預(yù)覽期間要求提供每組憑據(jù)。
    • 如果報表數(shù)據(jù)源位于本地,則需要在將報表保存到 Power BI 工作區(qū)后配置網(wǎng)關(guān)。
    • 如果 Report Builder 在預(yù)覽過程中遇到錯誤,它將返回一般消息。如果錯誤很難調(diào)試,請考慮在 Power BI 服務(wù)中呈現(xiàn)報表。
    注意事項

    保持連接

    關(guān)閉文件時,Report Builder 不會保持與 Power BI 的連接??梢蕴幚肀镜刂鲌蟊恚淖訄蟊泶鎯υ?Power BI 工作區(qū)中。請確保先將主報表保存到 Power BI 工作區(qū)之后,再關(guān)閉該報表。否則,可能會在預(yù)覽期間收到“找不到”消息,因為未與 Power BI 服務(wù)保持實時連接。在這種情況下,請前往子報表并選擇其屬性。從 Power BI 服務(wù)再次打開子報表。 這將重新建立連接,并且所有其他子報表都應(yīng)正常運行。

    重命名子報表

    如果在工作區(qū)中重命名子報表,則需要修復(fù)主報表中的名稱引用。否則,子報表將不會呈現(xiàn)。主報表仍將呈現(xiàn),并且在子報表項內(nèi)顯示錯誤消息。

    遷移大型報表

    如果要將大型報表遷移到 Power BI,請考慮使用 RdlMigration 工具。RdlMigration 工具已更新,可處理重復(fù)的子報表名。 如果兩個或多個報表具有相同的名稱,但位于不同的子目錄中,則可能會出現(xiàn)重復(fù)的子報表名。如果這些名稱未解析為唯一名稱,則僅識別第一個子報表。

    如果要使用 Report Builder 遷移大型報表,建議先處理子報表。將每個子報表保存到 Power BI 工作區(qū),防止出現(xiàn)任何重復(fù)的報表名。

    與子報表共享報表

    我們已提到過,主報表和子報表必須位于同一個工作區(qū)中。否則,子報表將不會呈現(xiàn)。共享主報表時,還需要共享子報表。如果在應(yīng)用中共享主報表,請確保在該應(yīng)用中還包含子報表。如果你將主報表直接與用戶或用戶組共享,請確保還與該用戶或用戶組共享每個子報表。

    推薦閱讀:

    學(xué)會使用Power BI報表服務(wù)器的自動刷新功能,輕松做報表

    在 Power BI 中與 ArcGIS 地圖交互


    想要購買Power BI Desktop正版授權(quán),或了解更多產(chǎn)品信息請點擊在線客

    也歡迎撥打慧都熱線023-68661681,我們有專業(yè)的大數(shù)據(jù)團隊,為您提供免費大數(shù)據(jù)相關(guān)業(yè)務(wù)咨詢!

    掃碼咨詢


    添加微信 立即咨詢

    電話咨詢

    客服熱線
    023-68661681

    TOP
    三级成人熟女影院,欧美午夜成人精品视频,亚洲国产成人乱色在线观看,色中色成人论坛 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();