Ein Bestandteil der Fachschalentechnologie von AutoCAD Map 3D ist der Berichtsdesigner. Über ihn können Sie komplexe Zusammenhänge und Ergebnisse aus Ihren Fachschalen in Formularen und Listen präsentieren, mit Bildern, Diagrammen und Kartenausschnitten versehen und als PDF abspeichern. Berichte werden im Infrastructure Administrator definiert und können später aus der Werkzeugleiste des Formulars aufgerufen werden. Hier bestimmen Sie nur noch, welcher Bericht mit welchen Datensätzen als Quelle auszugeben ist.
Über Parameter lassen sich die zu untersuchenden Datensätze filtern, allerdings unterstützt die standardisierte Berichtsausgabe über das Druckersymbol in der Werkzeugleiste des Formulars lediglich den Filter aus dem Formular oder des aktiven Objekts. Zusätzliche Parameter lassen sich so nicht ansteuern. In diesem Support-Tipp erfahren Sie, wie Sie direkt aus dem Formular einen Bericht auf Ihrem Arbeitsplatz unter Anwendung von Parametern abspeichern.
Als Beispiel dient das Spielplatzkataster der Mensch und Maschine acadGraph GmbH. Im Spielplatzkontrollbericht sollen die Ergebnisse der letzten Kontrolle zusammengestellt werden. Da es jedoch drei verschiedene Arten von Kontrollen gibt (Sicht- und Funktionskontrolle, Verschleißkontrolle und Hauptinspektion), muss zusätzlich die Kontrollart als Filter mit einbezogen werden. Ist der Bericht nicht parametergesteuert, muss man den Bericht für jede Kontrollart erneut definieren, was bei späteren Anpassungen zu einem entsprechenden Mehraufwand führt.
Die Parameter werden im Bericht deklariert ...
... und an geeigneter Stelle verwendet. Das kann direkt ein Feldwert sein, z. B. als Überschrift für ein Leistungsverzeichnis, oder eben direkt in der Abfrage:
Doch wie weisen Sie den Parameter dynamisch zu? Das gelingt ausschließlich über die .NET-API der Fachschalentechnologie von Autodesk, wie sie unter
https://help.autodesk.com/view/MAP/2024/ENU/?guid=GUID-3F869CC6-D95B-4D8A-9BEE-E6BEE7EDFEDF beschrieben ist.
Dim report As Autodesk.Map.IM.Forms.Report.Report = Me.Document.ReportEngine.Reports.Item("Spielplatzkontrollbericht")
report.SetParameter("Filter", Me.Dialog.Filter)
report.SetParameter("KONTROLLART", 1)
report.PreView()
Für solche Aufgaben stellt Autodesk Ihnen im Formulardesigner den sogenannten Scriptbutton zur Verfügung. Hier können Sie einen VB .NET-Code innerhalb der Prozedur ablegen, den AutoCAD Map 3D beim Klick auf die Schaltfläche ausführen soll. Dieser kann natürlich auch etwas umfangreicher und mit mehr Assistenz versehen sein.
Viel Spaß beim Ausprobieren!
© 10/2024 Mensch und Maschine Deutschland GmbH. Alle Rechte vorbehalten