Berichte konfigurieren
Berichte werden über den Formular Designer passend für das jeweilige Formular zur Verfügung gestellt.
Das können AutoCAD Map 3D Berichte sein, die im Autodesk Infrastrukture Admin mit Hilfe des Berichtsgenerators erstellt worden sind oder die Berichte, die direkt im AppBuilder mit Hilfe des Berichts Designers neu erstellt wurden.
Wir empfehlen vorzugsweise Berichte zu verwenden die mit dem AppBuilder erzeugt wurden. Diese Berichte funktionieren Datenbank unabhängig.
AutoCAD Map 3D Berichte funktionieren nur mit Oracle und mit AutoCAD Map 3D Datenmodel.
Wird im Hintergrund ein AutoCAD Map Datenmodell verwendet, dann spielt der Formular Designer im AppBuilder ansonsten keine Rolle. Die Formulare müssen mit Hilfe des Infrastruktur Admins und dem Autodesk Formular-Designer im Layout angepasst werden und dann nur im AppBuilder aktualisiert: Formulare Synchronisieren.
Vorgehensweise für die Konfiguration eines Berichts, der auf einem Formular den Anwendern zur Verfügung gestellt werden soll.
Bericht auf Formular einrichten
Dazu öffnen Sie per Doppelklick die eingerichtete Datenbankverbindung und suchen in der Baumstruktur den Dialog, der einen Bericht bekommen soll. Nur wenn es in dem Datenbankuser einen Bericht gibt, wird in den Ribbons die Funktion Berichte konfigurieren aktiv.
Klicken Sie auf Berichte konfigurieren und es öffnet sich ein Fenster über den die Berichte mit Hinzufügen auf den Dialog angehängt werden.
Hinzufügen und in der Zeile Name stehen alle Berichte aus dem Datenuser zur Verfügung:
Man wählt den gewünschten Bericht aus und bestätigt mit OK. Weiter kann ein beliebiger Titel vergeben werden und der Berichtstyp, also in welchem Format der Bericht ausgegeben werden soll:
Ebenfalls können hier Parameter angegeben werden, die der Anwender bei Aufruf des Berichtes manuell ausfüllt und diese werden dann in den Bericht geschrieben (wenn diese über den Berichts Designer berücksichtigt wurden).
Bericht über ein Formular öffnen
MapEdit Desktop neu starten und das Formular aufrufen. Dann erscheint auf dem Formular bei den Werkzeugen das Symbol für Drucken:
Jetzt wird noch ausgewählt, ob man nur den Aktuellen Datensatz drucken möchte oder die Datensätze, die man gefilter hat:
und mit OK öffnet sich der Bericht in dem voreingestellten Datenformat.
Hinweis zu AutoCAD Map 3D Berichten
MuM ist nicht der Hersteller des "AutoCAD Map 3D Berichtsgenerator" und wir hat keinerlei Einfluss auf den Source Code oder das Verhalten dieses Programmes.
Wir raten deswegen dazu immer den MuM Berichts Designer zu verwenden.
Wenn Sie trotzdem AutoCAD Map 3D Berichte verwenden, beachten Sie bitte die Installationsanleitung hier:
https://help.mapedit.de/common/installation/mapedit-server-lt-21/TOPOBASE_REPORT_INSTALLATION
Beachten Sie das die Berichte auf dem MapEdit Server erzeugt werden und nicht auf dem Client. D.h. für Zugriffe auf Bilder muss der MapEdit Server Rechte haben um auf diese zugreifen zu können.
Der Berichtsgenerator läuft wie in der Installationsanleitung beschrieben im IIS und damit unter dessen Windows Account, im Normalfall der Account IUSER bzw IIS_IUSRS.
D.h. Wenn der Berichtsgenerator auf Bilder via Windows Dateinamen zugreifen will, braucht dieser Account ggf lese Rechte.
Es ist bekannt das IIS teilweise Probleme mit zugriffen auf Netzwerkpfade hat, deswegen ist anzuraten Bilder via URL aufzurufen.
Der "AutoCAD Map 3D Berichtsgenerator" wertet TB_GN_DIRECTORY_ALIAS nicht aus. D.h. Windows Dateinamen von Bildern werden von diesem nicht automatisch in URLs umgewandelt!
Sie können diese jedoch durch nutzen von Benutzerdefinierten Funktionen erreichen.
- Starten die den "Industry Model Report Designer"
- Sie eine neue Funktion mit dem Namen "GetFotoUrl" an. Klicken Sie auf das Menue "Add->Function->Manage", drücken Sie den "Add" Knopf und geben Sie als Namen "GetFotoUrl" ein.
Tragen Sie folgenden Code ein:
dim url as string
url = Me.Record.StrValue("FOTO")
url = url.Replace("P:\MovE\", "http://ihrserver/move/")
url = url.Replace("H:\Strasse\", "http://ihrserver/Strasse/")
url = url.Replace("\","/")
GetFotoUrl = url
Der Code ist beispielhaft und Sie müssen die Werte auf Ihre Einstellungen anpassen. Bei "FOTO" tragen Sie den Feldnamen ihres Feldes ein aus dem der Windows Dateinamen des Bildes gelesen werden soll. Bei Replace tragen Sie die Werte aus TB_GN_DIRECTORY_ALIAS ein.
Beim "Picture Control/Bild Steuerelement" tragen Sie dann bei "Picture File" statt dem Feldnamen {FOTO} die Funktion ein {Fun.GetFotoUrl}
Die Funktion wandelt dann den Windows Dateinamen in eine URL um.
Sie können zum testen {Fun.GetFotoUrl} auch in ein Textfeld eintragen um zu sehen ob die richtige URL erzeugt wurde.
Wenn Sie kein Bild sehen gehen Sie in das Verzeichnis Mum.Web.IM\Log auf ihrem MapEdit Server. Dort finden Sie im Fehler Fall eine Logdatei.
Wenn Sie in AutoCAD Map 3D API Funktionen verwenden sind diese ggf eingeschränkt und können nicht alle verwendet werden.
Bekannte Probleme bei AutoCAD Map 3D Berichten
Dieser Artikel hilft Ihnen, falls beim Öffnen eines Map3D Industry Model Reports in MapEdit folgende Fehlermeldung erscheint:
Error in Mum.Web.IM
Unable to open a connection to the 'USERNAME@topobase' industry model.
BaseEx: Entschlüsselungsfehler : Error during CryptAcquireContext Object already exists. (-2146893809)
InnerEx: Entschlüsselungsfehler : Error during CryptAcquireContext Object already exists. (-2146893809)
InnerEx: Entschlüsselungsfehler : Error during CryptAcquireContext Object already exists. (-2146893809)
InnerEx: Entschlüsselungsfehler : Error during CryptAcquireContext Object already exists. (-2146893809)
Report = 'Status_EW_1'
TB.UserName= 'TEST'
TB.Password= 'a**'
TB.Service = 'topobase'
MapSys.UserName = 'MAPSYS'
MapSys.Password = 'm*****'
MapSys.Service = 'topobase'
Bitte Überprüfen Sie vorab, ob die Installation und die Einstellungen der MapEdit web.config
, wie z.B. die Anmeldedaten der Datenbank richtig sind und der Bericht im Autodesk Infrastrukture Administrator bzw. AutoCAD Map3D funktioniert.
Prüfen Sie auch ob die Rechte wie in der Installationsanleitung angegeben gesetzt wurden.
Installationsanleitung siehe:
https://help.mapedit.de/common/installation/mapedit-server-lt-21/TOPOBASE_REPORT_INSTALLATION
Beliebige URLs aufrufen
Beim Berichtstyp URL können freie URL's eingebunden werden. Für einen URL Bericht muss in dem Feld Name ein URL Template angegeben werden.
Beispiel: http://localhost/test.php?TableName={TableName}&Key={Key}
Die Parameter in geschweiften Klammern werden zur Laufzeit durch die aktuellen Werte des Dialogs ersetzt. Die Schreibweise der Parameter ist Case sensitive. Sprich die Schreibweise (groß/klein) ist wichtig.
Es können folgende Parameter genutzt werden:
{Key} = Wert der Schlüsselspalte des aktuellen Datensatzes (bei Topobase meist die FID)
{TableName} = Tabelle des Dialogs
{DialogName} = Name des Dialogs
{ConnectionName} = Name der Datenbankverbindung, wie sie bei "Datenbank Verbindung" genannt wurde.
{Filter} = SQL Where Bedingung des Filter (ist abhängig ob ein Datensatz oder mehrere gewählt wurden)
{PrintCurrentRecordOnly} = liefert True/False zurück, je nachdem ob der Anwender im Auswahldialog die Option "Nur aktuellen Datensatz drucken" gewählt hat.
{Server} = URL des Map Edit Servers.
{Column.SPALTENNAME} = liefert den Wert der Spalte zurück. Der Spaltenname muss in Großbuchstaben geschrieben werden. Die Spalte muss im Dialog sichtbar/vorhanden
Wird das Fenster Berichte konfigurieren mit OK geschlossen, steht der Bericht auf dem Formular bereit. Hier wird kein weiteres Speichern benötigt.