Reportauswahl bei Exportfunktion

Hallo,

bei der Druckausgabe von Reports ‘Print(…)’ gibt es die Option ‘AutoShowSelectFile’, über die man steuern kann, ob vor der Druckerstellung noch ein Auswahldialog für die zu verwendente Reportdatei angezeigt werden soll, oder nicht.
Bei der reinen Exportfunktion ‘Export(myExportConfiguration)’ scheint es diese Option leider nicht zu geben, oder habe ich sie bisher nur nicht gefunden?
Falls es sie wirklich nicht gibt, kann diese Option dann in LL nachgerüstet werden?
Ich arbeite mit der akt. Version 27 von LL.

Carsten

Hi, die ExportOption ExportQuiet sollte dir helfen.
Irgendwie sowas:

exportConfiguration.ExportOptions.Add(LlExportOption.ExportQuiet, "1");

Hallo Carsten,

einen Export kann man auch über die Print()-Methode durchführen, wenn die AutoDestination-Eigenschaft gesetzt wurde.

Anbei ein bisschen .NET Code:

LL.AutoShowSelectFile = false;
LL.AutoProjectFile = @"C:\temp\test.lst";
LL.AutoDestination = LlPrintMode.Export;
LL.ExportOptions.Add(LlExportOption.ExportTarget, "PDF");
LL.ExportOptions.Add(LlExportOption.ExportPath, @"C:\temp\test.pdf");
LL.Print();

Vielleicht ist das ja bereits eine annehmbare Lösung :smiley:

Hallo Patrick,

vielen Dank für Deine Info.
Über die Printmethode hatte ich es früher gemacht, bis ich auf die eigentständige Exportfunktion gestoßen war und mir dachte, dass die ja der bessere Weg wäre, weil sie auf den Export an sich spezialisiert ist und auch wesentlich mehr und feinere Exporteinstellungen ermöglicht.
Nur fehlt halt die Möglichkeit, vor dem Export die zu verwendenete Reportdatei auszuwählen, so wie das mit der Printfunktion funktioniert.
Nun müsste ich vor dem Aufruf der Exportfunktion selbe einen Auswahldialog für die Datei erstellen, obwohl ja die Logik in LL bereits vorhanden ist.

Vielleicht hat man ja bei combit ein Einsehen und ergänzt die Exportfunktion noch um den Auswahldialog,
der Code selber ist ja bereits vorhanden, das wäre echt klasse.

Hallo Erdal,
leider ist es mit der Option nicht getan, da es, so wies es aussieht, innerhalb der Exportfunktion gar keine Option für den Aufruf des Auswahldialoges für die zu verwendente Reportdatei gibt.
Das wurde wohl bei der Implemtierung der Exportfunktion schlichtweg vergessen.

Hallo Herr Ilwig,

die Export() Methode ist intern nichts anderes als ein Wrapper um die Print() Methode, wir haben sie seinerzeit nur eingeführt, damit sich niemand Gedanken darum machen muss, jegliche Benutzerinteraktion zu unterdrücken :slightly_smiling_face:. Insofern können Sie mit der vorgeschlagenen Print-Methode auch alles machen, was sie mit Export machen können. Gerade

wesentlich mehr und feinere Exporteinstellungen ermöglicht

sollte so nicht sein, über die ExportOptions, die @ppreuschoff oben in seinem Snippet hat lassen sich genau die gleichen Einstellungen vornehmen (da es intern auch der identische Code ist). Export macht im Prinzip genau das hier:

LL.AutoBoxType = LlBoxType.None;
LL.AutoDestination = LlPrintMode.Export;
LL.AutoProjectFile = exportConfiguration.ProjectFile;
// das hier ist genau, was Sie nicht haben wollen
LL.AutoShowFileSelect = false;
LL.AutoShowPrintOptions = false;
LL.Print();

Insofern lässt sich das gewünschte Verhalten inklusive aller Einstellungen genau auf diesem Weg erreichen. Hilft Ihnen das schon weiter?

Hallo Herr Bartlau,

vielen Dank für die Info.
Leider scheint es doch einen Unterschied zwischen der Export-Funktion und der Print-Funktion zu geben.
Beim Aufruf der Exportfunktion übergebe ich eine Instanz der Klasse ExportConfiguration(LlExportTarget exportTarget, string path, string projectFile).
Wenn ich da den 2. Parameter ‘path’ setze, wird die übergebene Datei in dem zugehörigen Pfad autom. ohne Rückfrage erzeugt.
Bei der Print-Funktion kommt aber bei ‘Autodestination = Export’ immer ein ‘Speichern unter’-Dialog mit der festeingestellten Datei ‘export.pdf’, auch wenn ich die ExportOption 'ExportPath vorher setze.
Muss ich da noch irgend eine andere Property setzen, die ich bisher übersehen habe,
damit die vorgegebene Exportdatei ohne ‘Speichern unter’-Dialog erstellt wird?

So sollte es funktionieren:

LL.AutoShowSelectFile = true;
LL.AutoShowPrintOptions = false;
LL.AutoProjectFile = @"C:\temp\test.lst";
LL.AutoDestination = LlPrintMode.Export;
LL.ExportOptions.Add(LlExportOption.ExportTarget, "PDF");
LL.ExportOptions.Add(LlExportOption.ExportPath, @"C:\temp\");
LL.ExportOptions.Add(LlExportOption.ExportFile, "test.pdf");
LL.ExportOptions.Add(LlExportOption.ExportQuiet, "1");
LL.ExportOptions.Add(LlExportOption.ExportShowResult, "1");
LL.DataSource = new System.Collections.Generic.List<string>() { "Hallo", "Welt" };
LL.Print();