ReportAfterRender

mgosx

Aktives Mitglied
Hallo zusammen,
heute im Developer Update wurden serverseitige DCMs für die beiden im SmartClient weggefallenen DCMs ReportBeforePrintRequest und ReportBeforeSaveToDMS für Version 9.0.8 angekündigt.
Da dies noch recht lange hin ist, wurde ja auch von einigen Zuhörern als Alternative die DCM ReportAfterRender zum Abstellen von PDF ins Spiel gebracht.

Ich habe mir diese angeschaut, habe dabei aber das Problem dass ich nirgends den Filename der PDF-Datei des Reports in den Parametern finde.
Hat jemand von Euch vielleicht schon seine "Lösung" auf die ReportAfterRender umgebaut und kann mir einen Tipp geben wie ich an die PDF-Datei komme?

Grüsse Mark
 
Hi,
ich glaube in der DCM bekommt man den gesamten Report als Objekt und müsste sich um den Druck/Export PDF selbst kümmern.

Ich würde auf die 9.0.7.2 warten, dann funktionieren die DCM's wieder auf dem Client, wenn es nicht der Smart Client ist ;)
 
wir hatten vor 9.0.7 anhand des Beispiels eine Anbindung an EcoDMS erstellt.
Eigentlich sollte ja im neuen SDK das Beispiel überarbeitet werden, so dass ich unsere Lösung entsprechend anpassen könnte.
Leider hat sich das ja nun verzögert.
Ich habe es aber nun dennoch über ReportAfterRender gelöst.

Hier kurz mein Ansatz:
- ich hatte bereits eine Klasse, die mir einen Report als PDF abspeichern kann, diese benötigte ich u.a. um aus einer Liste heraus nicht archivierte Belege nachträglich per MacroProcessBase zu archivieren oder im Archiv zu aktualisieren.

- ich rufe nun aus dem ReportAfterRender diese Klasse auf
- einziges Problem war, dass bei der Report Erzeugung aus meiner Klasse das Ereignis ReportAfterRender nicht auslösen darf (sonst hätte ich eine Endlosschleife)
- gelöst habe ich dies über ein zusätzliches Feld in meiner DMSLog Tabelle, in der dokumentiert wird welcher Beleg wann abgestellt wurde.
- ich trage in der Tabelle das Dokument ein und setze ein Feld SKIP, und nach dem Abstellen wird dieses Feld einfach auf null gesetzt. In ReportAfterRender erfolgt dann die Abfrage ob es zu dem Beleg einen Eintrag in der Tabelle gibt und ob SKIP gesetzt ist.

Es klappt soweit alles, der Report wird dadurch aber 2xgerendert was aus Performance suboptimal ist.

Wenn Sage im Herbst die Serverseitigen DCM eingebaut hat, werde ich meine Lösung entsprechend anpassen.
 
Zurück
Oben