| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: Formulardesigner - Dokumentenverwaltung (1271 / mal gelesen)
|
LarsB Mitglied
Beiträge: 446 Registriert: 13.05.2003 Windows 7 Prof. 64-Bit Tarox-Workstation mit Xeon 8 Core CPU mit 3.60 GHz 24 GB RAM NVIDIA Quadro 4000 AutoCAD Map 2019 MapEdit AutoCAD 2019
|
erstellt am: 15. Feb. 2016 17:00 <-- editieren / zitieren --> Unities abgeben:
Hallo, hat jemand eine Idee, wie ich in dem Formulardesigner vom Autodesk-Administrator (AutoCAD Map 2014) eine Verknüpfung zu einem Ordner herstellen kann? Folgender Hintergrund: Ich erstelle gerade eine Mini-Fachschale mit Sendemasten. Ein Punkt in der Karte und eine Nummer zu jedem Mast. Also nicht viel. Jetzt liegen zu jedem Sendemast Dokumente in einem Order. Sendemast 0815 hat 4 Dokumente, die in dem Ordner 0815 liegen. Ich kann ja über die Dokumentenverwaltung Dokumente an die Datensätze anhängen. Da muss ich aber jedes Dokument für sich anbinden. Kann man auch einen ganzen Ordern anbinden, so das sich dieser öffnet? Dann hätte ich ein Formular, dort steht die Sendemastnummer und einen "Knopf", damit öffen ich den Ordern mit den Dokumeten. Gruß,Lars
[Diese Nachricht wurde von LarsB am 16. Feb. 2016 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Stelli1 Moderator Verm.-Ing.
Beiträge: 1521 Registriert: 17.08.2005 AutoCAD Map aktuell, Designsuite VS6, VS.net
|
erstellt am: 16. Feb. 2016 09:03 <-- editieren / zitieren --> Unities abgeben: Nur für LarsB
Hallo Lars, du kannst doch einen Pfad eintragen. Wenn du das über das Formular machst muss der Dateiname entfernt werden. Du kannst doch die Ordner(-pfade) in eine Exceldatei bringen und importieren. Dabei importierst du in das Feld COMMENTARY den Objektnamen auf den sich das Dokument bezieht. Per SQL stellst du dann die Verbindung her.
Code: update TB_FEATURE_DOCUMENT d set d.FID_PARENT = (select s.fid from ww_manhole s where s.name_number=d.COMMENTARY );
Wilfried Stelberg ------------------ Warum lisp'eln wenn's auch anders geht. www.ib-stelberg.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
LarsB Mitglied
Beiträge: 446 Registriert: 13.05.2003 Windows 7 Prof. 64-Bit Tarox-Workstation mit Xeon 8 Core CPU mit 3.60 GHz 24 GB RAM NVIDIA Quadro 4000 AutoCAD Map 2019 MapEdit AutoCAD 2019
|
erstellt am: 16. Feb. 2016 09:43 <-- editieren / zitieren --> Unities abgeben:
Hallo Wilfried. Das ist auch eine gute Idee. Ich habe nur das Problem, dass es die Ordner/Sendemasten in der Datenbank noch nicht alle gibt. Bedeutet, dass der Kollege die Sendemasten und die Ordner nach und nach einträgt bzw. anlegt. Ich habe mal ein Scriptbutton eingefügt und versucht, damit etwas zu erreichen. Public Overrides Sub Button_Click() System.Diagnostics.Process.Start("explorer", "D:\Datenbank\Sendemasten\") End Sub Zwei Proleme habe ich hierbei: 1. Der Explorer stürzt nach ein paar Sekunden ab. Aber nur das geöffnete Fenster. 2. Ich habe den Ordner vom Sendemaste nicht in dem Pfad. Sprich: "D:\Datenbank\Sendemasten\0815\" Die Nummer 0815 wird als Text in dem Feld SEN_STOB_NR eingetragen. Ich müsste also nur eine Variable einfügen wie: "D:\Datenbank\Sendemasten\{SEN_STOB_NR}\". Geht so etwas in einem Skript? Gruß, Lars
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
LarsB Mitglied
Beiträge: 446 Registriert: 13.05.2003 Windows 7 Prof. 64-Bit Tarox-Workstation mit Xeon 8 Core CPU mit 3.60 GHz 24 GB RAM NVIDIA Quadro 4000 AutoCAD Map 2019 MapEdit AutoCAD 2019
|
erstellt am: 16. Feb. 2016 12:13 <-- editieren / zitieren --> Unities abgeben:
Hallo, ich habe es jetzt mit einer Skriptschaltfläche hinbekommen: Public Overrides Sub Button_Click() System.Diagnostics.Process.Start("explorer", "D:\Datenbank\Sendemasten\""" + {SEN_STOB_NR} + "\") End Sub Damit wird der passende Ordner geöffnet. Danke für die Hilfestellungen. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Stelli1 Moderator Verm.-Ing.
Beiträge: 1521 Registriert: 17.08.2005 AutoCAD Map aktuell, Designsuite VS6, VS.net
|
erstellt am: 16. Feb. 2016 15:56 <-- editieren / zitieren --> Unities abgeben: Nur für LarsB
Hallo Lars, Zitat:
2. Ich habe den Ordner vom Sendemaste nicht in dem Pfad. Sprich: "D:\Datenbank\Sendemasten\0815\" Die Nummer 0815 wird als Text in dem Feld SEN_STOB_NR eingetragen. Ich müsste also nur eine Variable einfügen wie: "D:\Datenbank\Sendemasten\{SEN_STOB_NR}\". Geht so etwas in einem Skript?
Ja da geht was. Du kannst, wenn du den Pfad auch in der Datenbank haben willst, per Global Update im Feld wie folgt eingeben: ="D:\Datenbank\Sendemasten\" | | SEN_STOB_NR Andernfalls kannst du doch beim deinem "Öffnen" Script die Nummer in eine Variable legen und den Ordner öffnen. Code: Public Overrides Sub Button_Click() Dim Nummer as string Dim Pfad as string = "D:\Daten\Sendemasten\" Nummer = me.Dialog.Controls.item("Name_Number").value If Nummer="" then Exit sub end if me.Application.OpenUrl (Pfad & Nummer) End sub
Wilfried Stelberg ------------------ Warum lisp'eln wenn's auch anders geht. www.ib-stelberg.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
LarsB Mitglied
Beiträge: 446 Registriert: 13.05.2003 Windows 7 Prof. 64-Bit Tarox-Workstation mit Xeon 8 Core CPU mit 3.60 GHz 24 GB RAM NVIDIA Quadro 4000 AutoCAD Map 2019 MapEdit AutoCAD 2019
|
erstellt am: 16. Feb. 2016 17:19 <-- editieren / zitieren --> Unities abgeben:
|
Stelli1 Moderator Verm.-Ing.
Beiträge: 1521 Registriert: 17.08.2005 AutoCAD Map aktuell, Designsuite VS6, VS.net
|
erstellt am: 16. Feb. 2016 20:27 <-- editieren / zitieren --> Unities abgeben: Nur für LarsB
Hallo Lars, doch, auch dort werden Scriptbuttons unterstützt. Unter Projekt/Scripting werden deine VB-Scripte aus Map angezeigt. In Mapedit ist der Code vom Namespace ein wenig anders. Aus Me.Dialog.Openurl("..." wird me.form.opendialog("...") Genaues kannst du in der Hilfe unter "Scripting" nachlesen. Jetzt noch ein aber Jetzt holen dich wahrscheinlich deine Ordner ein. Mit dem MuM.Geo.Listener kannst du auch aus dem Browser heraus externe Programme/Dokumente starten. Alternativ muss du deine Dokumentordner (den Übergeordneten) im IIS als virtuelles Verzeichnis anlegen und dort das Durchsuchen erlauben. In TB_GN_DIRECTORY_ALIAS kannst du eintragen das er z.B. aus "D:\DATEN\SENDEMASTEN" ein "http://deinserver/deinedokumente" macht. Dann geht es auch ohne GeoListener. Wilfried Stelberg ------------------ Warum lisp'eln wenn's auch anders geht. www.ib-stelberg.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
LarsB Mitglied
Beiträge: 446 Registriert: 13.05.2003 Windows 7 Prof. 64-Bit Tarox-Workstation mit Xeon 8 Core CPU mit 3.60 GHz 24 GB RAM NVIDIA Quadro 4000 AutoCAD Map 2019 MapEdit AutoCAD 2019
|
erstellt am: 17. Feb. 2016 16:30 <-- editieren / zitieren --> Unities abgeben:
Hallo Wilfried, so weit, so gut. Ich habe jetzt den Code auf MapEdit angepasst. Hoffe ich zumindest: Public Overrides Sub Button_Click() Dim Nummer as string Dim Pfad as string = "D:\Datenbank\Sendemasten\" Nummer = me.StrValue("SEN_STOB_NR") If Nummer="" then Exit sub end if me.application.Shell (Pfad & Nummer) End sub MapEdit streubt sicher aber noch. Es gibt wohl eine Sicherheitsregel für den Aufruf Shell. Diese müssten dann in einer Mum.Geo.Listener.ini eingetragen werden. Da bin ich auch noch nicht weiter. Dein Absatz über die andere Variante mit TB_GN_DIRECTORY_ALIAS hab ich noch nicht ganz gecheckt. Wir habe so etwas mit ALIAS auch für die B-Pläne. Ich verstehe nur nicht ganz was es hilft, aus "D:\DATEN\SENDEMASTEN" ein "http://deinserver/deinedokumente" zu machen. Öffnet er das dann nicht auch im Browser? Gruß, Lars
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Stelli1 Moderator Verm.-Ing.
Beiträge: 1521 Registriert: 17.08.2005 AutoCAD Map aktuell, Designsuite VS6, VS.net
|
erstellt am: 17. Feb. 2016 20:47 <-- editieren / zitieren --> Unities abgeben: Nur für LarsB
Hallo Lars, du wolltest doch bestimmt auch nicht ein Kommando wie: me.application.Shell ("cmd Format c:") per Script auslösen. Also du kannst und solltest das mit der OPENURL versuchen, da kannst du auch deinen Dateipfad übergeben. Windows sucht sich schon das passende Programm zum Öffnen der Datei aus. Der Unterschied zwischen deinem Betriebssystempfad und der URL ist a. Bei der URL muss das Laufwerk nicht für alle gleich verbunden sein. b. Dein Dokument wird auf jeden Fall im Browser geöffnet Bei der Angabe des (Betriebssystem-)Pfades wird ein PDF Beispielsweise im extra geöffneten Reader angezeigt, bei der URL im Browser.
Zitat: Dein Absatz über die andere Variante mit TB_GN_DIRECTORY_ALIAS hab ich noch nicht ganz gecheckt. Wir habe so etwas mit ALIAS auch für die B-Pläne. Ich verstehe nur nicht ganz was es hilft, aus "D:\DATEN\SENDEMASTEN" ein "http://deinserver/deinedokumente" zu machen. Öffnet er das dann nicht auch im Browser?
Das hilft nur wenn du ein Dokument aus einer "normalen" Dateiverknüpfung über den Standardknopf öffnest. Dann wird aus dem Pfad automatisch eine URL gemacht. Wilfried Stelberg ------------------ Warum lisp'eln wenn's auch anders geht. www.ib-stelberg.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
LarsB Mitglied
Beiträge: 446 Registriert: 13.05.2003 Windows 7 Prof. 64-Bit Tarox-Workstation mit Xeon 8 Core CPU mit 3.60 GHz 24 GB RAM NVIDIA Quadro 4000 AutoCAD Map 2019 MapEdit AutoCAD 2019
|
erstellt am: 18. Feb. 2016 08:45 <-- editieren / zitieren --> Unities abgeben:
Hallo Wilfried und Danke für deine Geduld. Ich habe das mit OpenURL hier schon am laufen. Da ich aber ja keine Datei öffnen möchte, sondern ein Ordner in dem die gesammelten Daten je Sendemast liegen, verhält sich Windows nicht wie gewünscht. Wenn ich die Schaltfläche anklicke, dann erscheint der Firefox mit der URL: D:/Datenbank/Sendemasten/0815/ und schreibt mir Adresse nicht erkannt. Korrekt sieht die Adresse so aus wenn ich sie kopiere: file:///d:/Dantenbank/Sendemasten/0815/ Gruß, Lars [Diese Nachricht wurde von LarsB am 18. Feb. 2016 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Stelli1 Moderator Verm.-Ing.
Beiträge: 1521 Registriert: 17.08.2005 AutoCAD Map aktuell, Designsuite VS6, VS.net
|
erstellt am: 18. Feb. 2016 19:27 <-- editieren / zitieren --> Unities abgeben: Nur für LarsB
|