![]() |
FastReport in Konsolenanwendung
Ich benötige mal einen schnellen Tipp von jemanden mit Kenntnissen in FastReport in unterschiedlichen Anwendungsfällen.
Wir haben (im REST Backend) verschiedene Server. Darunter jetzt auch einen, der mit Hilfe von FastReport Berichte erzeugen soll. Alle Server sind Konsolenanwendungen. Zur Zeit laufen alle auf Windows, sollen aber später (zumindest teilweise) auch auf Linux laufen. (nicht der Report Server) Der Reportserver mit FastReport ist eine VCL Anwendung, bei der die Mainform versteckt ist.
Delphi-Quellcode:
Im Releasemodus laufen alle Server komplett unsichtbar. Die Steuerung erfolgt über einen Basisserver. Dieser wird auf Windows durch einen Windows-Dienst gestartet.
Application.ShowMainForm:= False;
Im Debugmodus ist ein Konsolenfenster sichtbar. Dort laufen die Logs. Ein durch den Baasisserver gestartetes Modul nutzt das selbe Konsolenfenster, wie der Basisserver. Nur wenn ein Programm separat/manuell gestartet wird, hat es ein eigenes Konsolenfenster. Genauso wollen wir das auch haben. Der ReportServer hat für das Logging auch ein Konsolenfenster. Aber dies wird IMMER separat geöffnet. Am liebsten wäre es uns, wenn der Reportserver eine "echte" Konsolenanwendung wäre. Aber ich glaube, das geht mit Fastreport nicht. Oder doch? Wir haben noch kaum FastReport Erfahrung. Gibt es Tipps, um einen EIGENEN Fastreport-Reportserver als REST Anwendung im Backend laufen zu lassen? (es geht nur um das Server Programm. Formulare kommen aus der Datenbank. Das Erzeugen von Formularen erfolgt in einer separaten VCL Anwendung. Der Reportserver erzeugt als Ergebnis IMMER ein PDF, welches dann dem Nutzer über eine REST-API zur Verfüghung gestellt wird.) Danke euch |
AW: FastReport in Konsolenanwendung
Ich habe noch nicht verstanden, was das überhaupt mit FastReport zu tun hat.
Die Konsolen-Debug-Ausgabe habt ihr doch selbst gemacht, richtig? Ihr habt da irgendwo mit
Delphi-Quellcode:
explizit eine neue Konsole angelegt? Ansonsten steuerst du in deinen Delphi-Projektoptionen OB das eine Konsolenanwendung sein soll, oder nicht.
AllocConsole()
Auch lesenswert: ![]() |
AW: FastReport in Konsolenanwendung
Das geht in jedem Fall, ich habe sowas schon in Zusammenhang mit uniGUI genutzt. Es sind 2, 3 Einstellungen zu machen, ich kann dir aber nicht mehr sagen welche. Vielleicht findest du im uniGUI Forum was.
|
AW: FastReport in Konsolenanwendung
Was das mit FastReport zu tun hat:
Wir haben FastReport VCL Enterprise oder so ähnlich lizensiert. Das bedeutet, dass die Komponenten auf der VCL aufsetzen. So vermute ich. Was wir nicht wissen, welche VCL Units werden genutzt? Kann ich frxReport usw. in einer Konsolenanwendung ohne Delphi VCL.* Units nutzen? Benötigen die FastReport Komponenten etwas von Delphi, was in einer Konsolenanwendung nicht vorhanden ist? Wir haben z.B. dort zentral in allen Servern eine eigene ProcessMessages Routine, zur Behandlung von Windows Nachrichten. (Etwas ähnliches später auch für Linux, aber das tut hier nichts zur Sache) Ich wollte einfach nur mal so in die Runde fragen, bevor ich jetzt anfange, und alle Sourcen untersuche. Wir stehen mit der intensiven Nutzung von FastReport noch ganz am Anfang und klopfen estmal alles ab. |
AW: FastReport in Konsolenanwendung
Zitat:
|
AW: FastReport in Konsolenanwendung
Zitat:
|
AW: FastReport in Konsolenanwendung
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:41 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