by
ru
en
by

Avemey

logo
ФайлыГалоўнаяСпасылкіФатаграфііАнімэ

Калі трэба ў Delphi з ZEXMLSS выкарыстоўваць функцыі экспарту/імпарту ў/з запакаваны/ага ods/xlsx


(з версіі 0.0.6)
  • Па змаўчанні ў Delphi функцыі SaveXmlssToODFS, ReadODFS, SaveXmlssToXLSX і ReadXLSX недаступныя. Каб іх выкарыстоўваць, трэба:
    1. прачытаць /delphizip/readme.txt (ды і /readme.by таксама)
    2. (да ўсталёўкі) трэба скапіяваць з /delphizip/патрэбны_пакавальнік у /src/ усе файлы (замяніць). Пакуль можна выкарыстоўваць:
    3. Пасля правільнай усталёўкі функцыі будуць даступныя
  • (Толькі запіс) Можна выкарыстоўваць функцыі для экспарту ў запакаваныя ODS і XLSX з выкарыстаннем zeZippy: ExportXmlssToODFS і ExportXmlssToXLSX. Для гэтага трэба падлучыць модуль zeZyppy і модуль абгорткі патрэбнага пакавальніка (перад гэтым неабходна ўсталяваць патрэбны пакавальнік):
    • zeZippyZipMaster.pas: TZipMaster by www.delphizip.org
    • zeZippyXE2.pas: Delphi XE2 zip (System.Zip TZipFile)
    • zeZippyJCL7z.pas: www.7-zip.org DLL via wrapper by jcl.sf.net
    • zeZippyAB.pas: TurboPower Abbrevia
    • па аналогіі можна напісаць абгортку к іншым пакавальнікам

    Прыклад экспарту ў ods і xlsx:
    //uses zexmlss, zeodfs, zexmlssutils, zsspxml, zexlsx, zeZippy,
    // zeZippyAB {ці zeZippyZipMaster/zeZippyXE2/zeZippyJCL7z - абраць які спадабаецца};
    procedure TForm1.btnExportClick(Sender: TObject);
    var
      tz: TZEXMLSS;
      i, j: integer;
      TextConverter: TAnsiToCPConverter;
    
    begin
      TextConverter := nil;
      {$IFNDEF FPC}
        {$IF CompilerVersion < 20} // < RAD Studio 2009
      TextConverter := @AnsiToUtf8;
        {$IFEND}
      {$ENDIF}
    
      tz := TZEXMLSS.Create(nil);
      try
        tz.Sheets.Count := 1;
        tz.Sheets[0].Title := 'zeZippy example';
        with tz.Sheets[0] do
        begin
          RowCount := 20;
          ColCount := 20;
          for i := 0 to RowCount - 1 do
          for j := 0 to ColCount - 1 do
          begin
            Cell[j, i].CellType := ZENumber;
            Cell[j, i].Data := IntToStr(i * j);
          end;
        end;
    
        //Экспарт у xlsx
        ExportXmlssToXLSX(tz, {нейкі шлях}'zezippytst.xlsx', [], [], nil, 'UTF-8');
        //Экспарт у ods
        ExportXmlssToODFS(tz, {нейкі шлях}'zezippytst.ods', [], [], nil, 'UTF-8');
      finally
        tz.free();
      end;  
    end;   
    
ФайлыГалоўнаяСпасылкіФатаграфііАнімэ

Copyright © 2006-2012 Небарак Руслан Уладзіміравіч