diff --git a/lib/caditem.py b/lib/caditem.py index fc11dc8..f0d859f 100644 --- a/lib/caditem.py +++ b/lib/caditem.py @@ -1467,7 +1467,8 @@ class GuiLogic(): ret = ['cb_neuaufbau', 'cb_aus_halbzeug_neu', 'cb_3Dmodel_neu', 'cb_halbzeugOhneSaege_neu', 'cb_ruestcode_neu', 'cb_fertigungsart_neu', 'cb_allgemeintoleranz_neu', 'cb_fosGruppe_neu', 'cb_kalkulationsart_neu', 'cb_beschaffungsart_neu', 'cb_mengeneinheit_neu', 'cb_halbzeug_neu', 'cb_dispogruppe_neu', 'cb_dispolaufgruppe_neu', 'cb_hersteller_neu', 'cb_werkstoffdiskrepanz', - 'cb_werkstofftyp_neu', 'cb_material_neu', 'cb_oberflaeche_neu', 'cb_farbe_neu', 'cb_herstteilenr_neu', 'cb_freigabevermerk', 'cb_halbzeugoberflaeche', 'cb_zusatzinfos_auto_text'] + 'cb_werkstofftyp_neu', 'cb_material_neu', 'cb_oberflaeche_neu', 'cb_farbe_neu', 'cb_herstteilenr_neu', 'cb_freigabevermerk', + 'cb_halbzeugoberflaeche', 'cb_halbzeugfarbe', 'cb_halbzeugnummer', 'cb_halbzeuglaenge','cb_zusatzinfos_auto_text'] elif key == 'cb_neuaufbau': ret = ['cb_3Dmodel_neu'] elif key == 'cb_aus_halbzeug_neu': @@ -1553,10 +1554,10 @@ class GuiLogic(): ret = dict() pdm_kat = self._model.get_gui_data("pdm_kategorie_neu") - if pdm_kat != "Einzelteil" and pdm_kat != "Kaufteil": - self.set_state('neuaufbau', 'disabled') - else: + if pdm_kat == "Einzelteil": self.set_state('neuaufbau', 'readonly') + else: + self.set_state('neuaufbau', 'disabled') if selected is None: # Default Vorbelegung @@ -1576,6 +1577,10 @@ class GuiLogic(): # nur beim Einzelteil darf der Nutzer überhaupt anwählen ob ein Halbzeug enthalten ist oder nicht if not trueOrfalse is None: ret["aus_halbzeug_neu"] = trueOrfalse + self.set_state('aus_halbzeug_neu', 'readonly') + else: + self.set_state('aus_halbzeug_neu', 'disabled') + return ret @@ -1626,13 +1631,13 @@ class GuiLogic(): ret['cb_halbzeugoberflaeche'] = oarten else: ret['halbzeugoberflaeche_neu'] = selected - self.set_state('halbzeugoberflaeche_neu', 'normal') + self.set_state('cb_halbzeugoberflaeche', 'normal') else: ret = { 'halbzeugoberflaeche_neu': "", 'cb_halbzeugoberflaeche': "", } - self.set_state('halbzeugoberflaeche_neu', 'disabled') + self.set_state('cb_halbzeugoberflaeche', 'disabled') return ret def cb_lebenszyklus_status_neu(self, selected): @@ -2197,12 +2202,16 @@ class GuiLogic(): def cb_werkstoffdiskrepanz(self, selected): ret = dict() + pdm_kategorie_neu = self._model.get_gui_data("pdm_kategorie_neu") aus_halbzeug = self._model.get_gui_data("aus_halbzeug_neu") - if aus_halbzeug == True: - ret['cb_werkstoffdiskrepanz'] = True - self.set_state('cb_werkstoffdiskrepanz', 'disabled') + if pdm_kategorie_neu == "Einzelteil": + if aus_halbzeug == True: + ret['cb_werkstoffdiskrepanz'] = True + self.set_state('werkstoffdiskr_neu', 'disabled') + else: + self.set_state('werkstoffdiskr_neu', 'normal') else: - self.set_state('cb_werkstoffdiskrepanz', 'normal') + self.set_state('werkstoffdiskr_neu', 'disabled') return ret @@ -2281,7 +2290,7 @@ class GuiLogic(): else: self.set_state('cb_material_neu', 'readonly') else: - self.set_state('cb_material_neu', 'disbled') + self.set_state('cb_material_neu', 'disabled') if selected is None: @@ -2344,11 +2353,13 @@ class GuiLogic(): ret['cb_oberflaeche_neu'] = cblist - - if aus_halbzeug == True: - self.set_state('cb_oberflaeche_neu', 'disabled') + if pdm_kategorie_neu == "Einzelteil": + if aus_halbzeug == True: + self.set_state('cb_oberflaeche_neu', 'disabled') + else: + self.set_state('cb_oberflaeche_neu', 'readonly') else: - self.set_state('cb_oberflaeche_neu', 'readonly') + self.set_state('cb_oberflaeche_neu', 'disabled') ret['oberflaeche_neu'] = '' if selected is None: