Hallo,
wo finde ich die Formel für das Attribut aus diesem Video, ohne geht das ja alles nicht, oder ist das jetzt, 3 Jahre später anders, einfacher Lösbar?
Gruß!
Jürgen
Allplan Ingenieurbau V10 bis V2027
Im Allplan Connect Forum tauschen sich Anwender aus, geben wertvolle Tipps oder beraten sich bei ganz konkreten Aufgabenstellungen − auch international.
Und damit wirklich keine Frage unbeantwortet bleibt, unterstützen die Mitarbeiter des Technischen Supports ebenfalls aktiv das Forum.
Melden Sie sich jetzt an und diskutieren Sie mit!
Hallo,
wo finde ich die Formel für das Attribut aus diesem Video, ohne geht das ja alles nicht, oder ist das jetzt, 3 Jahre später anders, einfacher Lösbar?
Gruß!
Jürgen
Allplan Ingenieurbau V10 bis V2027
das Video ist aus meiner Sicht etwas irreführend, es zeigt zwei Lösungen.
man erwartet eine PythonPart Lösung. Zuerst wird aber eine Lösung mittels python Script gezeigt.
bei 1:01 siehst du die Formel. Diese verweist dich aber auf ein python Script, welches in std/scripts in der functions.py liegen muss.
zusätzlich benötigst du die KOstengruppe.csv die das Mapping der Kostengruppe übernimmt. Diese muss im selben Ortner liegen.
komplizierter und fehleranfälliger geht es kaum. habe das mal bei uns probiert und wieder verworfen, da keinen Mehrwert für uns.
def assignKG(ifc_entity, ifc_predefined_type, tragendes_bauteil, aussenliegend):
csv_path = r"**HIER DEINEN PFAD EINSTEZEN**\Std\Scripts\Kostengruppen.csv"
# Checkbox-Wert für tragendes Bauteil übersetzen
tragend_map = {"1.0": "ja", "0.0": "nein"}
tragend_wert = tragend_map.get(str(tragendes_bauteil).strip(), "").lower()
try:
with open(csv_path, newline='', encoding='utf-8') as file:
reader = csv.reader(file, delimiter=';')
for row in reader:
if len(row) 5:
continue
kostengruppe = row[0].strip()
csv_entity = row[1].strip()
csv_type = row[2].strip()
csv_tragend = row[3].strip().lower()
csv_aussen = row[4].strip().lower()
if (csv_entity == ifc_entity.strip() and
csv_type == ifc_predefined_type.strip() and
csv_aussen == aussenliegend and
csv_tragend == tragend_wert and
csv_aussen == aussenliegend):
return kostengruppe
return "KG nicht gefunden"
except FileNotFoundError:
return "CSV fehlt"P.S.
Sowas kann auch zu performance Problemen führen, weil das Script ständig im Hintergrund durchläuft.
Ich meine hierzu gab es hier im Forum schon mal einen thread...
das Video ist aus meiner Sicht etwas irreführend, es zeigt zwei Lösungen.
man erwartet eine PythonPart Lösung. Zuerst wird aber eine Lösung mittels python Script gezeigt.
bei 1:01 siehst du die Formel. Diese verweist dich aber auf ein python Script, welches in std/scripts in der functions.py liegen muss.
zusätzlich benötigst du die KOstengruppe.csv die das Mapping der Kostengruppe übernimmt. Diese muss im selben Ortner liegen.
komplizierter und fehleranfälliger geht es kaum. habe das mal bei uns probiert und wieder verworfen, da keinen Mehrwert für uns.
def assignKG(ifc_entity, ifc_predefined_type, tragendes_bauteil, aussenliegend):
csv_path = r"**HIER DEINEN PFAD EINSTEZEN**\Std\Scripts\Kostengruppen.csv"
# Checkbox-Wert für tragendes Bauteil übersetzen
tragend_map = {"1.0": "ja", "0.0": "nein"}
tragend_wert = tragend_map.get(str(tragendes_bauteil).strip(), "").lower()
try:
with open(csv_path, newline='', encoding='utf-8') as file:
reader = csv.reader(file, delimiter=';')
for row in reader:
if len(row) 5:
continue
kostengruppe = row[0].strip()
csv_entity = row[1].strip()
csv_type = row[2].strip()
csv_tragend = row[3].strip().lower()
csv_aussen = row[4].strip().lower()
if (csv_entity == ifc_entity.strip() and
csv_type == ifc_predefined_type.strip() and
csv_aussen == aussenliegend and
csv_tragend == tragend_wert and
csv_aussen == aussenliegend):
return kostengruppe
return "KG nicht gefunden"
except FileNotFoundError:
return "CSV fehlt"P.S.
Sowas kann auch zu performance Problemen führen, weil das Script ständig im Hintergrund durchläuft.
Ich meine hierzu gab es hier im Forum schon mal einen thread...
hier der erwähnte Thread, du hattest das damals sogar auch schon kommentiert;)
Ich werde alt 😂
Gruß!
Jürgen
Allplan Ingenieurbau V10 bis V2027
so hats bei der Oma auch angefangen....
https://youtu.be/X206QGGtv9k Using VR in the AEC Industry
https://youtu.be/mOW7yb0FR5o AWE 2024
http://www.cad-forge.at