• <menu id="w2i4a"></menu>
  • logo FastReport VCL中文教程(持續(xù)更新中)

    文檔首頁>>FastReport VCL中文教程(持續(xù)更新中)>>可視化報告生成器FastReport VCL功能指南:從Delphi / Lazarus將報表導(dǎo)出到Excel XML

    可視化報告生成器FastReport VCL功能指南:從Delphi / Lazarus將報表導(dǎo)出到Excel XML


    報表生成器FastReport VCL是用于在軟件中集成商務(wù)智能的現(xiàn)代解決方案。它提供了可視化模板設(shè)計器,可以訪問最受歡迎的數(shù)據(jù)源,報告引擎,預(yù)覽,將過濾器導(dǎo)出為30多種格式,并可以部署到云,Web,電子郵件和打印中。

    近日,F(xiàn)astReport VCL更新至v6.7,在新版本中,添加了對最新版本IDE的支持,簡化了用于付款標(biāo)準(zhǔn)的條形碼的創(chuàng)建,新增從預(yù)覽窗口直接編輯RichView的功能,同時修復(fù)了多個Bug問題。歡迎下載體驗。(點擊下方按鈕下載)

    點擊下載最新版FastReport VCL

    XML是一項旨在管理結(jié)構(gòu)化數(shù)據(jù)并將該數(shù)據(jù)顯示為人類可讀的文本文件的技術(shù)。XML符合行業(yè)標(biāo)準(zhǔn),可以被許多數(shù)據(jù)庫和應(yīng)用程序處理。使用XML,許多開發(fā)人員可以創(chuàng)建自己的自定義標(biāo)簽,數(shù)據(jù)結(jié)構(gòu)和架構(gòu)。通常,XML極大地促進了各種數(shù)據(jù)庫,應(yīng)用程序和組織中數(shù)據(jù)的定義,傳輸,驗證和解釋。

    但是,如果微軟傳統(tǒng)上不嘗試制作“擁有二十一點和單元的自己的XML”,那微軟就不會成為自己。因此,Excel實際上不是使用一種(?。ML標(biāo)準(zhǔn)來存儲Excel電子表格,而是一種(較舊的和更正確的)XML標(biāo)準(zhǔn)。

    正如多次提到的,F(xiàn)astReport允許以各種格式保存來自Delphi和Lazarus的文檔、報告和數(shù)據(jù)。唯一想指出的是,我們需要觀察對象的對齊方式,以便生成的電子表格具有吸引力和質(zhì)量。因此,F(xiàn)astreport為Excel XML提供了兩個不同的(!)導(dǎo)出過濾器。

    可視化報告生成器FastReport VCL功能指南:從Delphi / Lazarus將報表導(dǎo)出到Excel XML

    很明顯,程序員從來不會做任何“僅僅因為他想做”的事情——用戶才是真正想做什么的人。那么,從用戶的角度來看,當(dāng)他想從應(yīng)用程序獲得Excel電子表格時,這兩種格式有什么不同呢?

    對于用戶來說,這種差異與沒有任何圖片的rtf和成熟的MS Word文檔之間的差異大致相同——第一個差異在現(xiàn)實生活中很少出現(xiàn)。在一個簡單的XML文件中沒有樣式或圖片—只有一個XML表。

    FastReport工具可幫助選擇將文檔的哪些頁面發(fā)送到Excel,某些頁面或范圍。 導(dǎo)出設(shè)置:與原始版本(WYSIWYG)更好的視覺對應(yīng),分頁符和跳過頁眉和頁腳的連續(xù)文檔。

    結(jié)果:不要拆分,使用報告頁面,在父級上使用打印-報告模板中的每個TrfxReportPage都對應(yīng)于該書的一張紙(假設(shè)TfrxReportPage.PrintOnParent = False)或按特殊數(shù)量拆分行。導(dǎo)出后打開:導(dǎo)出后,Microsoft Excel將立即打開結(jié)果文件(或由與XLSX文件關(guān)聯(lián)的任何其他軟件)打開。

    可視化報告生成器FastReport VCL功能指南:從Delphi / Lazarus將報表導(dǎo)出到Excel XML

    可以將生成的XML / XLSX保存為本地存儲中帶有.xml擴展名的文件,發(fā)送到FTP,通過電子郵件發(fā)送或上傳到其中一個云存儲(Dropbox,OneDrive,Box.com,GoogleDrive)。

    比較生成的XLSX和Excel XML文件

    可視化報告生成器FastReport VCL功能指南:從Delphi / Lazarus將報表導(dǎo)出到Excel XML可視化報告生成器FastReport VCL功能指南:從Delphi / Lazarus將報表導(dǎo)出到Excel XML

    第一個屏幕截圖是保存為XLSX格式的結(jié)果,并且我們可以看到,該格式不支持比純文本更復(fù)雜的數(shù)據(jù)。但是第二張屏幕截圖向我們展示了XML格式的所有可能性,例如完全支持圖像和條形碼。說到文件的重量,結(jié)果是可以預(yù)料的:XLSX-48,0kB,XML-40,0kB。

    可視化報告生成器FastReport VCL功能指南:從Delphi / Lazarus將報表導(dǎo)出到Excel XML

    讓我們進一步了解為什么XLSX比XML更重要。這些美麗的魚被作為基礎(chǔ)。這份文件包含了大量的文本、表格數(shù)據(jù)和30張照片。為了更清楚地說明問題,讓我們將其與未老化的Excel 97進行比較,我們在另一篇文章中討論過它。

    可視化報告生成器FastReport VCL功能指南:從Delphi / Lazarus將報表導(dǎo)出到Excel XML
    可視化報告生成器FastReport VCL功能指南:從Delphi / Lazarus將報表導(dǎo)出到Excel XML

    Excel 97 –它是二進制格式(biff8),沒有任何壓縮,因此文件很大。與后來的XML格式不同,Excel 97支持各種圖像。Excel table(XML)– XLSX的早期版本,其中的數(shù)據(jù)存儲為簡單,單個,整體的XML文件,與OOXML和MS Office傳統(tǒng)二進制格式相比,它們非常大。

    Excel 97 –它是二進制格式(biff8),沒有任何壓縮,因此文件很大。與后來的XML格式不同,Excel 97支持各種圖像。Excel table(XML)– XLSX的早期版本,其中的數(shù)據(jù)存儲為簡單,單個,整體的XML文件,與OOXML和MS Office傳統(tǒng)二進制格式相比,它們非常大。

    XLSX Excel 2007格式的有限功能和可能的限制

    列數(shù)從256增加到16 384,工作表中的行數(shù)從65 536增加到1,048576。由于Excel 2007支持多個處理器和多線程芯片組,因此具有許多公式的大工作表計算得以加速。

    如何直接從Delphi / Lazarus中保存到XLSX和XML Excel中

    導(dǎo)出到XML

    procedure TForm1.Button1Click(Sender: TObject);
    begin
     {Generate a report. The report must be generated before exporting}
     frxReport1.PrepareReport();
     {Set the range of pages to export. By default, all pages of the generated report are exported}
     frxXMLExport1.PageNumbers := '2-3';
     {Set whether to generate a continuous document which skips headers and footers.
      Enabling this option disables TfrxXMLExport.ExportPageBreaks}
     frxXMLExport1.SuppressPageHeadersFooters := True;
     {Set whether to export the page breaks within the sheet of the book so that when printing the pages correspond to the pages of the generated report}
     frxXMLExport1.ExportPageBreaks := True;
     {Set WYSIWYG}
     frxXMLExport1.Wysiwyg := True;
     {Set the document splitting order using Split property which can take the following values:
      ssNotSplit – create a continuous document;
      ssRPages – each sheet of the generated report corresponds to the sheet of the book;
      ssPrintOnPrev – each sheet of TfrxReportPage in the report template corresponds to a sheet of the book (provided that TfrxReportPage.PrintOnParent = False);
      ssRowsCount - each sheet will have the number of rows specified in the TfrxXMLExport.RowsCount property.}
     frxXMLExport1.Split := ssNotSplit;
     {Set whether to open the resulting file after export}
     frxXMLExport1.OpenAfterExport := False;
     {Set whether to display export progress
      (show which page is currently being exported)}
     frxXMLExport1.ShowProgress := False;
     {Set whether to display a dialog box with export filter settings}
     frxXMLExport1.ShowDialog := False;
     {Set the name of the resulting file.}
     {Please note that if you do not set the file name and disable the export filter dialog box,}
     {the file name selection dialog will still be displayed}
     frxXMLExport1.FileName := 'C:\Output\test.xls';
     {Export the report}
     frxReport1.Export(frxXMLExport1);
    end;

    導(dǎo)出到XLSX

    procedure TForm1.Button2Click(Sender: TObject);
    begin
     {Generate a report. The report must be generated before exporting}
     frxReport1.PrepareReport();
     {Set the range of pages to export. By default, all pages of the generated report are exported}
     frxXLSXExport1.PageNumbers := '2-3';
     {Set whether to generate a continuous document which skips empty rows, headers and footers (with EmptyLines = False).
      With EmptyLines = True the report will be exported as it was generated. Without skipping the empty rows, headers and footers.
      Enabling this option disables TfrxXLSXExport.SuppressPageHeadersFooters and vice versa)
      frxXLSXExport1.EmptyLines := True;
      {Set whether to export the page breaks within the sheet of the book so that when printing the pages correspond to the pages of the generated report}
     frxXLSXExport1.ExportPageBreaks := True;
     {Set WYSIWYG}
     frxXLSXExport1.Wysiwyg := True;
     {Set whether to export only the content of data bands}
     frxXLSXExport1.DataOnly := False;
     {Set the document splitting order:
      with the SingleSheet option on, all pages of the document will be located on one sheet
      frxXLSXExport1.SingleSheet := True;
      If you set the value to ChunkSize, each sheet will have a specified number of rows.
      In this case SingleSheet should be set to False
      frxXLSXExport1.ChunkSize := 50;
      We will set the default order when each sheet of the generated report corresponds to a sheet of the book}
     frxXLSXExport1.SingleSheet := False;
     frxXLSXExport1.ChunkSize := 0;
     {Set whether to open the resulting file after export}
     frxXLSXExport1.OpenAfterExport := False;
     {Set whether to display export progress
      (show which page is currently being exported)}
     frxXLSXExport1.ShowProgress := False;
     {Set whether to display a dialog box with export filter settings}
     frxXLSXExport1.ShowDialog := False;
     {Set the name of the resulting file.}
     {Please note that if you do not set the file name and disable the export filter dialog box,}
     {the file name selection dialog will still be displayed}
     frxXLSXExport1.FileName := 'C:\Output\test.xlsx';
     {Export the report}
     frxReport1.Export(frxXLSXExport1);
    end;


    Fastreport在線購買價更低!趕緊加入購物清單吧!

    還想要更多嗎?您可以點擊閱讀【FastReport 報表2019最新資源盤點】,查找需要的教程資源。如果您有任何疑問或需求,請隨時加入FastReport技術(shù)交流群(783996712),我們很高興為您提供查詢和咨詢。

    掃碼咨詢


    添加微信 立即咨詢

    電話咨詢

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