icon

Support Forum

[Frage] Allplan Python API ProjektnamexNummer auslesen


Hallo zusammen,

ich bastel ab und an mit Python herum. Auch wenn sich die Frage nicht um PythonParts handelt, kann mir vllt doch jemand helfen. Und zwar soll Python mir den Projektnamen der aktuell auf dem PC offenen/laufenden Allplan-instanz wiedergeben. Alternativ geht auch das in den Projektattributen eingetragenen Projektattribut Projektnummer.
Vielleicht hat jemand schonmal damit herumgespielt und kann mir weiter helfen?
Grüße Paul

Hallo Paul,

Das ist prinzipiell möglich. Aber um deine Frage zu 100% beantworten zu können, muss ich fragen, wie der Workflow des Nutzers Schritt-für-Schritt aussehen soll.

Der Hintergrund meiner Frage: es ist möglich, diese Abfrage über python funktionen in der laufenden ALLPLAN Instanz zu machen. Was nicht geht: das Python Interpreter außerhalb von ALLPLAN zu starten und sich an das bereits laufende ALLPLAN instanz anzuhängen.

Grüße,
Bart

Am einfachsten ist es, den Namen aus dem aktuellen Projekt-Verzeichnis "abzuleiten":

1. Verzeichnis des aktuellen Projekts erfahren : GetCurPrjPath
2. Dort die Datei Project1.Dat.xml suchen
3. Diese XML-Datei parsen. Inhalt sieht z.B. so aus (s. project1dat_xml.png)
4. Im Tag findet man den gewünschten Projekt-Namen.

Schritt 1. funktioniert aber nur in einem laufenden PythonPart-Script.

Wenn es ganz "von aussen", also aus einem parallel zu Allplan laufenden Python-Interpreter erfolgen soll, hier ein paar "Inputs":
1. \NET-Verzeichnis erfahren
Dies liegt üblicherweise in einer Workgroup-Umgebung im Verzeichnis der zentralen Datenablage.
Erfahren kann man das Verzeichnis der zentralen Datenablage aus der Registry bzw. aus der Datei NetManager.xml im ETC
2. Dort (im \Net-Verzeichnis) findet man die Namen der angemeldeten Arbeitsstationen samt Benutzer und aktuell benutzter Projekt-Nummer
3. Diese Informationen muss man dann nur noch mit der aktuellen Arbeitsstation abgleichen

Anhänge (1)

Typ: image/png
10-mal heruntergeladen
Größe: 20,38 KiB