[erledigt] FPSpreadsheet --> Unit fpsexport

Rund um die LCL und andere Komponenten
Antworten
Benutzeravatar
Zvoni
Beiträge: 651
Registriert: Fr 5. Jul 2024, 08:26
OS, Lazarus, FPC: Windoof 10 Pro (Laz/FPC fixes)
CPU-Target: 64Bit
Wohnort: BW

[erledigt] FPSpreadsheet --> Unit fpsexport

Beitrag von Zvoni »

Hallo,

nutze zum ersten Mal FPSpreadsheet, und darin die unit fpsexport.

Soweit so gut. Funzt wie im Wiki angegeben.
Settings setzen, Dataset zuweisen, Feuer frei.

Aber: FPSExport überschreibt stumpf eine etwaige bereits vorhandene Datei gleichen Namens.
Gibts ne Möglichkeit, dass es "knallt", falls die Datei bereits existiert ("Datei existiert bereits. Wollen Sie überschreiben?")
oder muss ich das selbst vorher checken?
Zuletzt geändert von Zvoni am Mo 13. Apr 2026, 14:19, insgesamt 1-mal geändert.
Ein System sie alle zu knechten, ein Code sie alle zu finden,
Eine IDE sie ins Dunkel zu treiben, und an das Framework ewig zu binden,
Im Lande Redmond, wo die Windows drohn.

wp_xyz
Beiträge: 5419
Registriert: Fr 8. Apr 2011, 09:01

Re: FPSpreadsheet --> Unit fpsexport

Beitrag von wp_xyz »

Code: Alles auswählen

{ Writes the workbook populated during the export process to file }
procedure TCustomFPSExport.SaveWorkbook;
begin
  FRow:=0;
  // Overwrite existing file similar to how dbf export does it
  case Formatsettings.ExportFormat of
    efXLS:
      FSpreadSheet.WriteToFile(FFileName,sfExcel8,true);
    efXLSX:
      FSpreadsheet.WriteToFile(FFilename,sfOOXML,true);
    efODS:
      FSpreadSheet.WriteToFile(FFileName,sfOpenDocument,true);
    efWikiTable:
      FSpreadSheet.WriteToFile(FFileName,sfWikitable_wikimedia,true);
    else
      raise Exception.Create('[TCustomFPSExport.SaveWorkbook] ExportFormat unknown');
  end;
end; 
Das "true" als zweiter Parameter in den WriteToFile-Aufrufen bedeutet, dass die Zieldatei überschrieben wird. Man könnte in den Settings einen Parameter "Overwrite" einfügen und diesen anstelle des "true" verwenden. Aber dann hagelt es eine Exception... Besser ist, du prüfst vor dem Export, ob die Zieldatei bereits existiert.

Benutzeravatar
Zvoni
Beiträge: 651
Registriert: Fr 5. Jul 2024, 08:26
OS, Lazarus, FPC: Windoof 10 Pro (Laz/FPC fixes)
CPU-Target: 64Bit
Wohnort: BW

Re: FPSpreadsheet --> Unit fpsexport

Beitrag von Zvoni »

wp_xyz hat geschrieben: Mo 13. Apr 2026, 13:05 Besser ist, du prüfst vor dem Export, ob die Zieldatei bereits existiert.
Was ich auch so jetzt schon gemacht habe.
Hatte ich mir so ähnlich gedacht, dass ich es selbst machen muss.
Danke.
Ein System sie alle zu knechten, ein Code sie alle zu finden,
Eine IDE sie ins Dunkel zu treiben, und an das Framework ewig zu binden,
Im Lande Redmond, wo die Windows drohn.

Antworten