AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Werkzeuge Office-Dokumente erzeugen: Automatisierung oder nicht?
Thema durchsuchen
Ansicht
Themen-Optionen

Office-Dokumente erzeugen: Automatisierung oder nicht?

Ein Thema von Der schöne Günther · begonnen am 9. Jun 2021 · letzter Beitrag vom 10. Jun 2021
Antwort Antwort
Der schöne Günther

Registriert seit: 6. Mär 2013
6.196 Beiträge
 
Delphi 10 Seattle Enterprise
 
#1

Office-Dokumente erzeugen: Automatisierung oder nicht?

  Alt 9. Jun 2021, 10:12
Ich muss zum ersten mal mit Office-Dateien hantieren, das ist eigentlich nicht meine Welt. Es geht um ein kleines In-House-Tool das fertige Word- & Excel-Dateien ausspucken soll.

Ich bin mir unsicher, welche technischen Möglichkeiten man nutzen soll: Delphi bringt ja beispielsweise irgendwelche Header für Office-Automatisierung über COM mit. Wenn ich es richtig verstanden habe setzt das verständlicherweise voraus, dass lokal Office installiert ist und vernünftig funktioniert.

Dann gibt allerdings auch Bibliotheken die überhaupt nicht von Office abhängig sind und die entsprechenden Dateien direkt lesen und schreiben können. Ich habe letztes Jahr einmal etwas mit NPOI (Github, Nuget) gemacht und war eigentlich begeistert wie easy und zuverlässig das funktioniert hat.

Bei der Office-Automatisierung mache ich mir Sorgen dass
  • ich gefühlt öfter hier im Forum lese wie nach irgendeinem Office/Windows-Update wieder irgendwas klemmt
  • Sich der Kram verhält wenn der Bediener schon ein Dutzend Word & Excel-Dokumente offen hat
  • Ich eine Office-Installation brauche wenn ich den Kram z.B. lieber auf einen Server packe und das nur per Web-Oberfläche aufrufen lasse
  • Ich keine Ahnung habe wie man das groß debuggen könnte, der Office-Kram ist ja dann für mich eine Blackbox in einem anderen Prozess

tl;dr: Ich sehe keinen wirklichen Grund weshalb man das über Office-Automatisierung lösen sollte. Kann jemand einen Vorteil nennen den ich vielleicht übersehen habe?

Geändert von Der schöne Günther ( 9. Jun 2021 um 10:21 Uhr)
  Mit Zitat antworten Zitat
hstreicher

Registriert seit: 21. Nov 2009
223 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#2

AW: Office-Dokumente erzeugen: Automatisierung oder nicht?

  Alt 9. Jun 2021, 11:49
Word muss ich zum Glück nicht machen

für Excel verwende ich die TMS AdvStringgrid Komonenten die haben eine Excel Export Import
und habe seitdem gefühlt eine Zillon Probleme weniger

die meisten Probleme waren bei mir dass der User in das Word oder Excel Blatt geklickt hat und dann die
Verbindung zwischen Delphi und Office verloren ging

mfg Hannes
  Mit Zitat antworten Zitat
Delphi.Narium

Registriert seit: 27. Nov 2017
2.555 Beiträge
 
Delphi 7 Professional
 
#3

AW: Office-Dokumente erzeugen: Automatisierung oder nicht?

  Alt 9. Jun 2021, 12:38
die meisten Probleme waren bei mir dass der User in das Word oder Excel Blatt geklickt hat und dann die
Verbindung zwischen Delphi und Office verloren ging
Das ist dann aber eher ein Implementierungsfehler.

Man kann sich auch eine eigene Instanz von Word, Excel, ... aufmachen und die versteckt arbeiten lassen. Der User bekommt davon nix mit.

Wenn aber der User aus Delphi heraus (o. a.) den Aufruf der Automatisierung (für das aktuell von ihm bearbeitete Dokument) startet, so kann man das Officeprogramm für die Dauer der Automatisierung verstecken und erst wieder anzeigen, wenn der "Job" erledigt ist.

Weiterer Vorteil: Automatisierte Officeprogramme arbeiten versteckt deutlich schneller, da nicht mehr permanent die Anzeige aktuallisiert werden muss und versehentliche und kontraproduktive Klicks, sind nicht mehr möglich.

Weiterer Vorteil der Automatisierung:

Man kann Vorlagen nutzen und in denen Felder befüllen, zu Sprungmarken gehen und dort nur die entsprechenden Fragmente einfügen, die abschließende Optik, Seitenlayout, ... per Makro vom Officeprogramm aufbereiten lassen ...

Letztlich kommt es darauf an, was man eigentlich will:

0815 Dokument erstellen
Geschäftsbriefe mit individuellen Daten bestücken.
Einfach nur Daten als Report "ausspucken"
...

Je mehr officeprogrammtypische Aufgaben zu erledigen sind, um so mehr spricht für die Automatisierung.
Geht es nur um die pure Ausgabe von Daten und die sind ohne großen Aufwand auch ohne Officeprogramm im Officeformat auszugeben, denn spricht nichts für die Automatisierung.

Hat man für eine Problemlösung per Automatisierung aus Delphi heraus mal keine Ahnung, kann man die entsprechenden Schritte mal im Officeprogramm ausführen und als Marko aufzeichnen. Den Quelltext Copy&Pastet man sich in den Delphiquelltext und passt sich die Syntax entsprechend an. Am Anfang ist das etwas mühselig, aber mit Programmiererfahrung hat man den Dreh recht schnell raus und kann sich so recht einfach das erforderliche KnowHow aneignen.

Aber so eine Empfehlung der Art:
Code:
Automatisierung ist Grundsätzlich gut
Automatisierung ist Grundsätzlich schlecht / nicht empfehlenswert, abzulehnen ...
ist für meine Begriffe nicht seriös.
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe
Online

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.629 Beiträge
 
Delphi 12 Athens
 
#4

AW: Office-Dokumente erzeugen: Automatisierung oder nicht?

  Alt 9. Jun 2021, 13:19
Für den Fall, dass du dich für die Bibliotheksvariante entscheidest und diese native Delphi ist, wäre ich dann später an deinen Erfahrungen damit interessiert.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von Harry Stahl
Harry Stahl

Registriert seit: 2. Apr 2004
Ort: Bonn
2.557 Beiträge
 
Delphi 12 Athens
 
#5

AW: Office-Dokumente erzeugen: Automatisierung oder nicht?

  Alt 9. Jun 2021, 15:19
Sind die zu erstellenden Word- bzw. Excel Dokumente komplex oder eher von einfacher Art?

Ich gehe mal davon aus, dass docx und xlsx Dokumente erzeugt werden sollen?

Es ist gar nicht so schwer, diese Dokumente selber mit Delphi zu erstellen oder zu bearbeiten, hier gibt es ein sehr interessantes Video dazu: https://www.youtube.com/watch?v=28Yy9fJ78rA

Dann braucht man auch kein installiertes Office vor Ort.

Evtl. ist das ja für Dich von Interesse.

Geändert von Harry Stahl ( 9. Jun 2021 um 15:22 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.910 Beiträge
 
Delphi 12 Athens
 
#6

AW: Office-Dokumente erzeugen: Automatisierung oder nicht?

  Alt 9. Jun 2021, 18:07
Für .NET gibt es ja ziemlich viele Bibliotheken. Native Bibliotheken gibt es weniger. Ich kenne diese:
https://www.axolot.com/docx.htm
Das ist zwar schon eine Weile her, aber die hat mir gute Dienste geleistet. Und es gibt sie auch für Delphi 10.4.

Die Ansteuerung der installierten Version funktioniert zwar auch prinzipiell, aber damit hatte ich auch immer wieder Probleme.
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:06 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz