Check der Inhalte mit beider Spalten mit nur einem Rückgabewert versehen. Ansonsten unverständliche für den Nutzer. 3D Druck Keyword im Ruledesigner unterschiedlich. Beide Varianten erlaubt. Rückgabe von keiner Fertigungsart führt zu keinen Defaultwert der folgenden Comboboxen. Keine Exception deswegen mehr
This commit is contained in:
+56
-44
@@ -86,7 +86,7 @@ class CadItem(DataModel):
|
|||||||
"ersatzfuer_sivas", "ersatzfuer_neu",
|
"ersatzfuer_sivas", "ersatzfuer_neu",
|
||||||
"ersetztdurch_sivas", "ersetztdurch_neu",
|
"ersetztdurch_sivas", "ersetztdurch_neu",
|
||||||
"herstteilenr_sivas", "herstteilenr_neu",
|
"herstteilenr_sivas", "herstteilenr_neu",
|
||||||
"werkstoffdiskr_sivas",
|
"werkstoffdiskr_neu",
|
||||||
"werkstofftyp_sivas", "werkstofftyp_neu",
|
"werkstofftyp_sivas", "werkstofftyp_neu",
|
||||||
"material_sivas", "material_neu",
|
"material_sivas", "material_neu",
|
||||||
"oberflaeche_neu",
|
"oberflaeche_neu",
|
||||||
@@ -185,7 +185,6 @@ class CadItem(DataModel):
|
|||||||
self._read_only_items = {}
|
self._read_only_items = {}
|
||||||
if self._logic:
|
if self._logic:
|
||||||
self._logic.clear_states()
|
self._logic.clear_states()
|
||||||
self._logic.clear_configurations()
|
|
||||||
|
|
||||||
def add_logic(self, logic):
|
def add_logic(self, logic):
|
||||||
self._logic = logic
|
self._logic = logic
|
||||||
@@ -284,6 +283,10 @@ class CadItem(DataModel):
|
|||||||
|
|
||||||
def _transform_content_from_csv(self, translated_data, author=None):
|
def _transform_content_from_csv(self, translated_data, author=None):
|
||||||
""""baut die Texte aus der csv Datei nach dem Einladen um"""
|
""""baut die Texte aus der csv Datei nach dem Einladen um"""
|
||||||
|
# default setzen
|
||||||
|
if 'datenbank' not in translated_data:
|
||||||
|
translated_data["datenbank"] = 'Produktiv'
|
||||||
|
|
||||||
# Änderungstext sollte Author enthalten wenn einer gegeben ist
|
# Änderungstext sollte Author enthalten wenn einer gegeben ist
|
||||||
if 'aenderungstext_sivas' in translated_data:
|
if 'aenderungstext_sivas' in translated_data:
|
||||||
text= translated_data["aenderungstext_sivas"]
|
text= translated_data["aenderungstext_sivas"]
|
||||||
@@ -494,17 +497,20 @@ class CadItem(DataModel):
|
|||||||
return self._controller.message_error(title, key)
|
return self._controller.message_error(title, key)
|
||||||
|
|
||||||
def check(self):
|
def check(self):
|
||||||
self.check_pflichtfelder()
|
res = self.check_pflichtfelder()
|
||||||
|
if len(res) > 0:
|
||||||
|
return (False, res)
|
||||||
|
else:
|
||||||
|
return (True, [])
|
||||||
|
|
||||||
def check_key_existence(self, key, missing):
|
def check_key_existence(self, mess, key, missing):
|
||||||
if not self.get_gui_data(key):
|
if not self.get_gui_data(key):
|
||||||
missing.append(key)
|
missing.append(mess)
|
||||||
|
|
||||||
def check_key_both_columns(self, key_sivas, key_neu, missing):
|
def check_key_both_columns(self, mess, key_sivas, key_neu, missing):
|
||||||
if not self.get_gui_data(key_sivas):
|
if not self.get_gui_data(key_sivas):
|
||||||
if not self.get_gui_data(key_neu):
|
if not self.get_gui_data(key_neu):
|
||||||
missing.append(key_sivas)
|
missing.append(mess)
|
||||||
missing.append(key_neu)
|
|
||||||
|
|
||||||
def check_pflichtfelder(self):
|
def check_pflichtfelder(self):
|
||||||
"""Allgemeine Prüfungen:
|
"""Allgemeine Prüfungen:
|
||||||
@@ -513,65 +519,66 @@ class CadItem(DataModel):
|
|||||||
|
|
||||||
missing = list()
|
missing = list()
|
||||||
# Teilenummer
|
# Teilenummer
|
||||||
self.check_key_existence("teilenummer", missing)
|
self.check_key_existence( 'Teilenummer', "teilenummer", missing)
|
||||||
# Datenbank
|
# Datenbank
|
||||||
self.check_key_existence("datenbank", missing)
|
self.check_key_existence("Datenbank", "datenbank", missing)
|
||||||
# PDM-Kategorie
|
# PDM-Kategorie
|
||||||
self.check_key_existence("pdm_kategorie_neu", missing)
|
self.check_key_existence("PDM-Kategorie", "pdm_kategorie_neu", missing)
|
||||||
|
|
||||||
# Halbzeugfarbe
|
# Halbzeugfarbe
|
||||||
hblzeug_oberfläche = self.get_gui_data("oberflaeche_neu")
|
hblzeug_oberfläche = self.get_gui_data("oberflaeche_neu")
|
||||||
if hblzeug_oberfläche == "eloxieren" or hblzeug_oberfläche == "lackieren" or hblzeug_oberfläche == "pulverbeschichten":
|
if hblzeug_oberfläche == "eloxieren" or hblzeug_oberfläche == "lackieren" or hblzeug_oberfläche == "pulverbeschichten":
|
||||||
if not self.get_gui_data("halbzeugfarbe_neu"):
|
if not self.get_gui_data("halbzeugfarbe_neu"):
|
||||||
missing.append("halbzeugfarbe_neu")
|
missing.append("Halbzeugfarbe")
|
||||||
|
|
||||||
# Lebenszyklusstatus
|
# Lebenszyklusstatus
|
||||||
self.check_key_existence("lebenszyklus_status_neu", missing)
|
self.check_key_existence("Lebenszyklusstatus", "lebenszyklus_status_neu", missing)
|
||||||
|
|
||||||
# 3D-Modell
|
# 3D-Modell
|
||||||
self.check_key_existence("model3d_neu", missing)
|
self.check_key_existence("3D-Model", "model3d_neu", missing)
|
||||||
# Bezeichnung 1
|
# Bezeichnung 1
|
||||||
self.check_key_both_columns("bezeichnung1_sivas", "bezeichnung1_neu", missing)
|
self.check_key_both_columns("Bezeichnung 1", "bezeichnung1_sivas", "bezeichnung1_neu", missing)
|
||||||
# Halbzeug ohne Sägeliste
|
# Halbzeug ohne Sägeliste
|
||||||
self.check_key_both_columns("halbzeugOhneSaege_sivas", "halbzeugOhneSaege_neu", missing)
|
self.check_key_both_columns("Halbzeug ohne Sägeliste", "halbzeugOhneSaege_sivas", "halbzeugOhneSaege_neu", missing)
|
||||||
# Rüstcode
|
# Rüstcode
|
||||||
self.check_key_both_columns("ruestcode_sivas", "ruestcode_neu", missing)
|
self.check_key_both_columns("Rüstcode", "ruestcode_sivas", "ruestcode_neu", missing)
|
||||||
|
|
||||||
pdm_kategorie_neu = self.get_gui_data("pdm_kategorie_neu")
|
pdm_kategorie_neu = self.get_gui_data("pdm_kategorie_neu")
|
||||||
# Fertigungsart
|
# Fertigungsart
|
||||||
if pdm_kategorie_neu == "Einzelteil" or pdm_kategorie_neu == "Schweissbaugruppe":
|
if pdm_kategorie_neu == "Einzelteil" or pdm_kategorie_neu == "Schweissbaugruppe":
|
||||||
self.check_key_existence("fertigungsart_neu", missing)
|
self.check_key_both_columns("Fertigungsart", "fertigungsart_sivas", "fertigungsart_neu", missing)
|
||||||
|
|
||||||
|
|
||||||
# Allgemeintoleranz
|
# Allgemeintoleranz
|
||||||
self.check_key_both_columns("allgemeintoleranz_sivas", "allgemeintoleranz_neu", missing)
|
self.check_key_both_columns("Allgemeintoleranz", "allgemeintoleranz_sivas", "allgemeintoleranz_neu", missing)
|
||||||
# FOS-Gruppe
|
# FOS-Gruppe
|
||||||
self.check_key_both_columns("fosGruppe_sivas", "fosGruppe_neu", missing)
|
self.check_key_both_columns("FOS-Gruppe", "fosGruppe_sivas", "fosGruppe_neu", missing)
|
||||||
# Kalkulationsart
|
# Kalkulationsart
|
||||||
self.check_key_both_columns("kalkulationsart_sivas", "kalkulationsart_neu", missing)
|
self.check_key_both_columns("Kalkulationsart", "kalkulationsart_sivas", "kalkulationsart_neu", missing)
|
||||||
# Beschaffungsart
|
# Beschaffungsart
|
||||||
self.check_key_both_columns("beschaffungsart_sivas", "beschaffungsart_neu", missing)
|
self.check_key_both_columns("Beschaffungsart", "beschaffungsart_sivas", "beschaffungsart_neu", missing)
|
||||||
# Mengeneinheit
|
# Mengeneinheit
|
||||||
self.check_key_both_columns("mengeneinheit_sivas", "mengeneinheit_neu", missing)
|
self.check_key_both_columns("Mengeneinheit", "mengeneinheit_sivas", "mengeneinheit_neu", missing)
|
||||||
# Halbzeug
|
# Halbzeug
|
||||||
self.check_key_both_columns("halbzeug_sivas", "halbzeug_neu", missing)
|
self.check_key_both_columns("Halbzeug", "halbzeug_sivas", "halbzeug_neu", missing)
|
||||||
# TOS-Gruppe
|
# TOS-Gruppe
|
||||||
self.check_key_both_columns("tosgruppe_sivas", "tosgruppe_neu", missing)
|
self.check_key_both_columns("Tosgruppe", "tosgruppe_sivas", "tosgruppe_neu", missing)
|
||||||
# Dispogruppe
|
# Dispogruppe
|
||||||
self.check_key_both_columns("dispogruppe_sivas", "dispogruppe_neu", missing)
|
self.check_key_both_columns("Dispogruppe", "dispogruppe_sivas", "dispogruppe_neu", missing)
|
||||||
# Dispolaufgruppe
|
# Dispolaufgruppe
|
||||||
self.check_key_both_columns("dispolaufgruppe_sivas", "dispolaufgruppe_neu", missing)
|
self.check_key_both_columns("Dispolaufgruppe", "dispolaufgruppe_sivas", "dispolaufgruppe_neu", missing)
|
||||||
|
|
||||||
# Werkstofftyp
|
# Werkstofftyp
|
||||||
aus_halbzeug = self.get_gui_data("aus_halbzeug_neu")
|
aus_halbzeug = self.get_gui_data("aus_halbzeug_neu")
|
||||||
if aus_halbzeug is False:
|
if aus_halbzeug is False:
|
||||||
self.check_key_both_columns("werkstofftyp_sivas", "werkstofftyp_neu", missing)
|
self.check_key_both_columns("Werkstofftyp", "werkstofftyp_sivas", "werkstofftyp_neu", missing)
|
||||||
|
|
||||||
# Änderungstext
|
# Änderungstext
|
||||||
self.check_key_both_columns("aenderungstext_sivas", "aenderungstext_neu", missing)
|
self.check_key_both_columns("Änderungstext", "aenderungstext_sivas", "aenderungstext_neu", missing)
|
||||||
# Freigabevermerk
|
# Freigabevermerk
|
||||||
self.check_key_both_columns("freigabevermerk_sivas", "freigabevermerk_neu", missing)
|
self.check_key_both_columns("Freigabevermerk", "freigabevermerk_sivas", "freigabevermerk_neu", missing)
|
||||||
# Automatische Zusatzinformationen
|
# Automatische Zusatzinformationen
|
||||||
self.check_key_existence("zusatzinfos_auto_text", missing)
|
self.check_key_existence("Automatische Zusatzinformationen", "zusatzinfos_auto_text", missing)
|
||||||
return missing
|
return missing
|
||||||
|
|
||||||
class CadItemRepository:
|
class CadItemRepository:
|
||||||
@@ -1064,7 +1071,6 @@ class GuiLogic():
|
|||||||
def cb_fertigungsart_neu(self, selected):
|
def cb_fertigungsart_neu(self, selected):
|
||||||
ret = dict()
|
ret = dict()
|
||||||
pdm_kategorie_neu = self._model.get_gui_data("pdm_kategorie_neu")
|
pdm_kategorie_neu = self._model.get_gui_data("pdm_kategorie_neu")
|
||||||
fertigungsart_sivas = self._model.get_gui_data("fertigungsart_sivas")
|
|
||||||
|
|
||||||
if pdm_kategorie_neu == "Kaufteil" or pdm_kategorie_neu == "Schweissbaugruppe":
|
if pdm_kategorie_neu == "Kaufteil" or pdm_kategorie_neu == "Schweissbaugruppe":
|
||||||
self.set_state('cb_fertigungsart_neu', 'disabled')
|
self.set_state('cb_fertigungsart_neu', 'disabled')
|
||||||
@@ -1082,13 +1088,7 @@ class GuiLogic():
|
|||||||
ret['cb_fertigungsart_neu'] = ''
|
ret['cb_fertigungsart_neu'] = ''
|
||||||
|
|
||||||
if selected is None:
|
if selected is None:
|
||||||
# Default Vorbelegung
|
ret['fertigungsart_neu'] = ''
|
||||||
default = ''
|
|
||||||
if fertigungsart_sivas == '' or fertigungsart_sivas != "SW - schweißen":
|
|
||||||
default = "SW - schweißen"
|
|
||||||
else:
|
|
||||||
default = ""
|
|
||||||
ret['fertigungsart_neu'] = default
|
|
||||||
else:
|
else:
|
||||||
ret['fertigungsart_neu'] = selected
|
ret['fertigungsart_neu'] = selected
|
||||||
return ret
|
return ret
|
||||||
@@ -1105,7 +1105,9 @@ class GuiLogic():
|
|||||||
elif pdm_kategorie_neu == "Kaufteil" or pdm_kategorie_neu == "Schweissbaugruppe":
|
elif pdm_kategorie_neu == "Kaufteil" or pdm_kategorie_neu == "Schweissbaugruppe":
|
||||||
cblist = None
|
cblist = None
|
||||||
if pdm_kategorie_neu == "Einzelteil":
|
if pdm_kategorie_neu == "Einzelteil":
|
||||||
if fertigungsart == "3D - 3D drucken":
|
if fertigungsart == "3D - 3D-drucken":
|
||||||
|
section = "Allgemeintoleranz3DDruck"
|
||||||
|
elif fertigungsart == "3D - 3D drucken":
|
||||||
section = "Allgemeintoleranz3DDruck"
|
section = "Allgemeintoleranz3DDruck"
|
||||||
elif fertigungsart == "BI - biegen":
|
elif fertigungsart == "BI - biegen":
|
||||||
section = "AllgemeintoleranzSpanen"
|
section = "AllgemeintoleranzSpanen"
|
||||||
@@ -1131,9 +1133,14 @@ class GuiLogic():
|
|||||||
section = "AllgemeintoleranzStanzen"
|
section = "AllgemeintoleranzStanzen"
|
||||||
elif fertigungsart == "SW - schweißen":
|
elif fertigungsart == "SW - schweißen":
|
||||||
section = "AllgemeintoleranzSchweissen"
|
section = "AllgemeintoleranzSchweissen"
|
||||||
|
elif fertigungsart == "":
|
||||||
|
section = None
|
||||||
else:
|
else:
|
||||||
raise Exception("no such fertigungsart "+ fertigungsart)
|
raise Exception("no such fertigungsart "+ fertigungsart)
|
||||||
cblist = self._config.Fertigung.get_list_in_section(section)
|
if section:
|
||||||
|
cblist = self._config.Fertigung.get_list_in_section(section)
|
||||||
|
else:
|
||||||
|
cblist = None
|
||||||
else:
|
else:
|
||||||
cblist = None
|
cblist = None
|
||||||
ret['cb_allgemeintoleranz_neu'] = cblist
|
ret['cb_allgemeintoleranz_neu'] = cblist
|
||||||
@@ -1147,6 +1154,8 @@ class GuiLogic():
|
|||||||
else:
|
else:
|
||||||
if fertigungsart == "3D - 3D-drucken":
|
if fertigungsart == "3D - 3D-drucken":
|
||||||
default = "ISO 2768:1991-mK"
|
default = "ISO 2768:1991-mK"
|
||||||
|
elif fertigungsart == "3D - 3D drucken":
|
||||||
|
default = "ISO 2768:1991-mK"
|
||||||
elif fertigungsart == "BI - biegen":
|
elif fertigungsart == "BI - biegen":
|
||||||
default = "ISO 2768:1991-mK"
|
default = "ISO 2768:1991-mK"
|
||||||
elif fertigungsart == "DR - drehen":
|
elif fertigungsart == "DR - drehen":
|
||||||
@@ -1172,6 +1181,8 @@ class GuiLogic():
|
|||||||
elif fertigungsart == "SW - schweißen":
|
elif fertigungsart == "SW - schweißen":
|
||||||
# TODO
|
# TODO
|
||||||
default = ""
|
default = ""
|
||||||
|
elif fertigungsart == "":
|
||||||
|
default = ""
|
||||||
else:
|
else:
|
||||||
raise Exception("no such fertigungsart "+ fertigungsart)
|
raise Exception("no such fertigungsart "+ fertigungsart)
|
||||||
ret['allgemeintoleranz_neu'] = default
|
ret['allgemeintoleranz_neu'] = default
|
||||||
@@ -1680,7 +1691,7 @@ class GuiLogic():
|
|||||||
truemmer = self._model.get_gui_data("truemmer")
|
truemmer = self._model.get_gui_data("truemmer")
|
||||||
ruestcode = self._model.get_gui_data("ruestcode_sivas")
|
ruestcode = self._model.get_gui_data("ruestcode_sivas")
|
||||||
teilenummer = str(self._model.get_gui_data("teilenummer"))
|
teilenummer = str(self._model.get_gui_data("teilenummer"))
|
||||||
werkstoffdiskr_sivas = self._model.get_gui_data("werkstoffdiskr_sivas")
|
werkstoffdiskr_neu = self._model.get_gui_data("werkstoffdiskr_neu")
|
||||||
|
|
||||||
if selected is None:
|
if selected is None:
|
||||||
text = ''
|
text = ''
|
||||||
@@ -1692,14 +1703,15 @@ class GuiLogic():
|
|||||||
text = self._config.Zusatz.get('ComboTextblöcke', 'KleinbuchstabeTruemmerBlacklist')
|
text = self._config.Zusatz.get('ComboTextblöcke', 'KleinbuchstabeTruemmerBlacklist')
|
||||||
elif teilenummer in blacklist:
|
elif teilenummer in blacklist:
|
||||||
text = self._config.Zusatz.get('ComboTextblöcke', 'KleinbuchstabeBlacklist')
|
text = self._config.Zusatz.get('ComboTextblöcke', 'KleinbuchstabeBlacklist')
|
||||||
elif werkstoffdiskr_sivas == True:
|
elif werkstoffdiskr_neu == True:
|
||||||
text = self._config.Zusatz.get('ComboTextblöcke', 'KleinbuchstabeWerkstoffdiskrepanz')
|
text = self._config.Zusatz.get('ComboTextblöcke', 'KleinbuchstabeWerkstoffdiskrepanz')
|
||||||
else:
|
else:
|
||||||
text = self._config.Zusatz.get('EinzelTextblöcke', 'Kleinbuchstabe')
|
text = self._config.Zusatz.get('EinzelTextblöcke', 'Kleinbuchstabe')
|
||||||
|
text = text.format(aenderungsindex=aenderungsindex_sivas)
|
||||||
elif truemmer == 'J' or ruestcode == '':
|
elif truemmer == 'J' or ruestcode == '':
|
||||||
if teilenummer in blacklist:
|
if teilenummer in blacklist:
|
||||||
text = self._config.Zusatz.get('ComboTextblöcke', 'TruemmerBlacklist')
|
text = self._config.Zusatz.get('ComboTextblöcke', 'TruemmerBlacklist')
|
||||||
elif werkstoffdiskr_sivas == True:
|
elif werkstoffdiskr_neu == True:
|
||||||
text = self._config.Zusatz.get('ComboTextblöcke', 'TruemmerWerkstoffdiskrepanz')
|
text = self._config.Zusatz.get('ComboTextblöcke', 'TruemmerWerkstoffdiskrepanz')
|
||||||
else:
|
else:
|
||||||
text = self._config.Zusatz.get('EinzelTextblöcke', 'Truemmer')
|
text = self._config.Zusatz.get('EinzelTextblöcke', 'Truemmer')
|
||||||
|
|||||||
+14
-3
@@ -32,6 +32,7 @@ messages = {
|
|||||||
"werkstoff_not_exist":'Werkstoff falsch. Bitte korrigieren!',
|
"werkstoff_not_exist":'Werkstoff falsch. Bitte korrigieren!',
|
||||||
"color_not_defined":'Teilenummer kann nicht ohne festgelegte Farbe migriert werden!',
|
"color_not_defined":'Teilenummer kann nicht ohne festgelegte Farbe migriert werden!',
|
||||||
"aenderungstext_too_long":'Änderungstext_weist zu viele Zeichen auf. Bitte auf 400 Zeichen verkürzen!',
|
"aenderungstext_too_long":'Änderungstext_weist zu viele Zeichen auf. Bitte auf 400 Zeichen verkürzen!',
|
||||||
|
"missing_data":'Fehlende Angaben in der Oberfläche: {Labels}',
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -207,8 +208,15 @@ class Controller(Observer):
|
|||||||
def message_info(self, title, key, questions='ok'):
|
def message_info(self, title, key, questions='ok'):
|
||||||
return messagebox.showinfo(title, messages[key])
|
return messagebox.showinfo(title, messages[key])
|
||||||
|
|
||||||
def message_error(self, title, key):
|
def message_error(self, title, key, values):
|
||||||
return messagebox.showerror(title, messages[key])
|
text = messages[key]
|
||||||
|
if 'Labels' in values:
|
||||||
|
text = text.format(Labels=values['Labels'])
|
||||||
|
if 'Zeichentyp' in values:
|
||||||
|
text = text.format(Zeichentyp=values['Zeichentyp'])
|
||||||
|
if 'Feldname' in values:
|
||||||
|
text = text.format(Feldname=values['Feldname'])
|
||||||
|
return messagebox.showerror(title, text)
|
||||||
|
|
||||||
def callback(self, key, value):
|
def callback(self, key, value):
|
||||||
if not self._model:
|
if not self._model:
|
||||||
@@ -248,7 +256,10 @@ class Controller(Observer):
|
|||||||
self.refresh_gui()
|
self.refresh_gui()
|
||||||
|
|
||||||
def migrieren(self):
|
def migrieren(self):
|
||||||
self._model.check()
|
(ok, missing) = self._model.check()
|
||||||
|
if ok == False:
|
||||||
|
labels = ', '.join(missing)
|
||||||
|
self.message_error('Fehlende Angaben', 'missing_data', {'Labels':labels})
|
||||||
|
|
||||||
def zuruecksetzen(self):
|
def zuruecksetzen(self):
|
||||||
data = dict()
|
data = dict()
|
||||||
|
|||||||
@@ -447,6 +447,11 @@ class ZusatzConfig(IniBasedConfig):
|
|||||||
def __init__(self, config_dir='.', config_file='Zusatzinformationen.cfg'):
|
def __init__(self, config_dir='.', config_file='Zusatzinformationen.cfg'):
|
||||||
super().__init__(config_dir, config_file)
|
super().__init__(config_dir, config_file)
|
||||||
|
|
||||||
|
class ERPConfig(IniBasedConfig):
|
||||||
|
"""Auslesen der Zusatzinformationen die aus dem Änderungsindex abgeleitet werden"""
|
||||||
|
def __init__(self, config_dir='.', config_file='ERP_Item.ini'):
|
||||||
|
super().__init__(config_dir, config_file)
|
||||||
|
|
||||||
class Configs:
|
class Configs:
|
||||||
"""Sammlung aller Configdateien """
|
"""Sammlung aller Configdateien """
|
||||||
def __init__(self, cfg_dir):
|
def __init__(self, cfg_dir):
|
||||||
@@ -461,6 +466,7 @@ class Configs:
|
|||||||
self.Pfade = PfadConfig(cfg_dir)
|
self.Pfade = PfadConfig(cfg_dir)
|
||||||
self.Werkstoffe = WerkstoffeConfig(cfg_dir)
|
self.Werkstoffe = WerkstoffeConfig(cfg_dir)
|
||||||
self.Zusatz = ZusatzConfig(cfg_dir)
|
self.Zusatz = ZusatzConfig(cfg_dir)
|
||||||
|
self.ERP = ERPConfig(cfg_dir)
|
||||||
|
|
||||||
self.TOSGruppen = TOSGroupsConfig(cfg_dir)
|
self.TOSGruppen = TOSGroupsConfig(cfg_dir)
|
||||||
self.Materialien = MaterialTransConfig(cfg_dir)
|
self.Materialien = MaterialTransConfig(cfg_dir)
|
||||||
|
|||||||
Reference in New Issue
Block a user