• <menu id="w2i4a"></menu>
  • logo FastReport中文文檔

    Relations


    兩個數據源之間可以設置關系。關系用于定義 "master-detail"關系。例如,"Categories "表中的一條記錄可以在 "Products "表中有多個條目:

    fastreport

    要創(chuàng)建關系,您需要說明以下內容:

    • Parent table;
    • Child table;
    • 父表中關鍵列的集合;
    • 子表中關鍵列的集合。
    我們以演示數據庫中的 "Categories "表和 "Products "表為例進行說明。它們的結構如下

    fastreport

    兩個表都有 CategoryID 字段,可以在該字段上設置關系。因此,一個類別可能包含多個產品。

    如何在 FastReport 中使用相關數據源?有兩種方法。

    第一種方法可以建立 "master-detail "類型的報告。為此,需要使用兩個 "Data "帶。主數據帶連接到主數據源,詳細數據帶連接到詳細數據源。我們的示例如下:

    fastreport

    如果運行這樣的報告,就會打印出每個類別的產品清單:

    fastreport

    第二種方法允許從詳細數據源引用主數據源。我們將舉例說明。假設我們要打印所有產品的列表。為此,我們需要一個與 "Products "表相連的 "Data "帶:

    fastreport

    這樣的報告將打印所有類別的所有產品。比方說,我們想在每個產品旁邊打印它所屬的類別名稱。如果不使用關系,這將更加困難。我們所知道的產品類別就是它的 id(由 "Products "表中的 "CategoryID "列表示)。我們要打印的類別名稱存儲在 "Category "表的 "CategoryName "列中。借助關系,我們可以按以下方式引用類別名稱:

    [Products.Categories.CategoryName]
    對于 "Products"表的當前行,FastReport 將在 "類別 "表中找到相應的父行,并返回 "CategoryName "列的值。

    在一般情況下,引用父表字段的方式允許表祖先的數量不受限制:

    fastreport

    如果我們將上圖所示的列拖入報告中,就會得到一個包含文本的 "Text "對象:

    fastreport

    如果我們運行它,就會看到以下內容:

    fastreport


    如需下載fastreport最新試用版,請點產品名跳轉產品下載頁>>

    掃碼咨詢


    添加微信 立即咨詢

    電話咨詢

    客服熱線
    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); })();