• <menu id="w2i4a"></menu>
  • logo Fastreport.Net 教程2018(完結(jié))

    文檔首頁>>Fastreport.Net 教程2018(完結(jié))>>如何將多個CSV文件合并為一個

    如何將多個CSV文件合并為一個


    將數(shù)據(jù)保存在CSV文件中通常非常方便,你可以隨時用任何文本編輯器打開文件并調(diào)整它。但是如果在一個文件中你有引用另一個文件的數(shù)據(jù)呢?你需要將兩個文件合并為一個文件,以方便進一步使用CSV文件。要手動完成合并是一件費力不討好的工作,當然你也可以使用Excel – 這需要你對“宏”有一定了解。但幸運的是,你還有更好的第三個選擇——FastReport。

    在本文中,我們將介紹如何使用FastReport.Net將兩個邏輯相關(guān)的CSV文件合并為一個。

    所以,現(xiàn)在我們有兩個CSV文件,第一個是訂單清單,第二個是客戶清單。我們需要顯示每個訂單的客戶名稱和電話號碼。訂單表有一個外鍵(foreign key) “CustNo”到客戶表,而客戶表又有主鍵(primary key)“CustNo”。如你所知,我們將把這兩個表連接到這個字段。

    在設計器中創(chuàng)建一個新的報表。添加新的數(shù)據(jù)源 - CSV文件:

    如何將多個CSV文件合并為一個

    另一個數(shù)據(jù)源是第二個文件。作為結(jié)果,我們會得到兩個連接:

    如何將多個CSV文件合并為一個

    現(xiàn)在我們需要鏈接兩個表格。要做到這一點,點擊下拉菜單“Actions”,然后選擇“New relation”。

    如何將多個CSV文件合并為一個

    我們選擇主表,例如“訂單”。從屬表“客戶”。對于這兩個表,我們定義關(guān)鍵字段。在我們的例子中,在這兩個表中鍵被命名為“CustNo”:

    如何將多個CSV文件合并為一個

    現(xiàn)在看“數(shù)據(jù)”窗口:

    如何將多個CSV文件合并為一個

    對于客戶表,現(xiàn)在有一個關(guān)聯(lián)的訂單表。

    我們將“公司”字段放在數(shù)據(jù)帶上的客戶表中,并將其他所有字段也放在那里,除了來自關(guān)聯(lián)的“訂單”表的CustNo字段。由于有太多字段,報表頁面上顯示不下。打開頂部工具欄“報表”中的頁面設置:

    如何將多個CSV文件合并為一個

    在“其他”選項卡上,我們設置屬性:額外設計寬度、不限高度,不限寬度。最后兩個屬性允許你在報表查看模式下將報表頁面擴展為所需的大小。

    在將報表導出為CSV文件之前,我會給你提供一些關(guān)于格式的提示。要防止在導出時包含空行和空列,請嘗試將頁面上的頁邊距彼此靠近。而對于數(shù)據(jù)的header,我們把高度降到最低:

    如何將多個CSV文件合并為一個

    現(xiàn)在以預覽模式運行報表。

    如何將多個CSV文件合并為一個

    按下“保存”按鈕并選擇“CSV格式...”。我們同意默認的導出設置并設置文件保存位置。就這樣,我們得到了一個CSV文件,其中包含有關(guān)訂單和公司名稱的信息,而不是CustNo標識符。

    如何將多個CSV文件合并為一個

    使用上述方法,你可以從不同的CSV文件中合并不限數(shù)量的表格,非常節(jié)省時間。創(chuàng)建這樣一個合并文件大約花了我們10分鐘,但如果你通過ID手動選擇公司名稱,你將花費多少時間呢?

    產(chǎn)品介紹 下載試用 | 優(yōu)惠活動 | 在線客服 | 聯(lián)系Elyn

     

    推薦閱讀

    FastReport 2018 最新版本下載
    掃碼咨詢


    添加微信 立即咨詢

    電話咨詢

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