diff --git a/entity/Attribute_entity/Attribute_entity.aod b/entity/Attribute_entity/Attribute_entity.aod
index 947a013822c7660ffa671af4fd829ae7db902beb..4d7b3270c56cb9047991929516a8e5dd3a40d063 100644
--- a/entity/Attribute_entity/Attribute_entity.aod
+++ b/entity/Attribute_entity/Attribute_entity.aod
@@ -37,7 +37,6 @@
       <stateProcess>%aditoprj%/entity/Attribute_entity/entityfields/attribute_type/stateProcess.js</stateProcess>
       <valueProcess>%aditoprj%/entity/Attribute_entity/entityfields/attribute_type/valueProcess.js</valueProcess>
       <displayValueProcess>%aditoprj%/entity/Attribute_entity/entityfields/attribute_type/displayValueProcess.js</displayValueProcess>
-      <onValueChange>%aditoprj%/entity/Attribute_entity/entityfields/attribute_type/onValueChange.js</onValueChange>
     </entityField>
     <entityField>
       <name>ATTRIBUTE_PARENT_ID</name>
@@ -186,6 +185,7 @@
       <dropDownProcess>%aditoprj%/entity/Attribute_entity/entityfields/dropdowndefinition/dropDownProcess.js</dropDownProcess>
       <stateProcess>%aditoprj%/entity/Attribute_entity/entityfields/dropdowndefinition/stateProcess.js</stateProcess>
       <titleProcess>%aditoprj%/entity/Attribute_entity/entityfields/dropdowndefinition/titleProcess.js</titleProcess>
+      <valueProcess>%aditoprj%/entity/Attribute_entity/entityfields/dropdowndefinition/valueProcess.js</valueProcess>
     </entityField>
     <entityParameter>
       <name>AttrParentType_param</name>
diff --git a/entity/Attribute_entity/entityfields/attribute_type/onValueChange.js b/entity/Attribute_entity/entityfields/attribute_type/onValueChange.js
deleted file mode 100644
index 24139923a76e9f17e29bcd16815b207660766846..0000000000000000000000000000000000000000
--- a/entity/Attribute_entity/entityfields/attribute_type/onValueChange.js
+++ /dev/null
@@ -1,8 +0,0 @@
-import("system.neon");
-import("system.vars");
-import("Attribute_lib");
-import("Entity_lib");
-
-var type = vars.get("local.value") || "";
-if (type.trim() != $AttributeTypes.KEYWORD && vars.exists("$field.DROPDOWNDEFINITION") && vars.get("$field.DROPDOWNDEFINITION"))
-    neon.setFieldValue("$field.DROPDOWNDEFINITION", "");
\ No newline at end of file
diff --git a/entity/Attribute_entity/entityfields/dropdowndefinition/stateProcess.js b/entity/Attribute_entity/entityfields/dropdowndefinition/stateProcess.js
index f4447a5915899cbbef6950be1e099aa21a791f89..e7b565377261c1da453151ebd27bfe1f03020028 100644
--- a/entity/Attribute_entity/entityfields/dropdowndefinition/stateProcess.js
+++ b/entity/Attribute_entity/entityfields/dropdowndefinition/stateProcess.js
@@ -8,9 +8,7 @@ var type = vars.get("$field.ATTRIBUTE_TYPE").trim();
 if (type && $AttributeTypes[type] && $AttributeTypes[type].getDropDownDefinitions
         && !AttributeUtil.hasRelations(vars.get("$field.UID")))
     fieldState = neon.COMPONENTSTATE_EDITABLE;
-else if (vars.get("$sys.recordstate") == neon.OPERATINGSTATE_VIEW)
-    fieldState = neon.COMPONENTSTATE_INVISIBLE;
 else
-    fieldState = neon.COMPONENTSTATE_READONLY;
+    fieldState = neon.COMPONENTSTATE_INVISIBLE;
 
 result.string(fieldState);
\ No newline at end of file
diff --git a/entity/Attribute_entity/entityfields/dropdowndefinition/valueProcess.js b/entity/Attribute_entity/entityfields/dropdowndefinition/valueProcess.js
new file mode 100644
index 0000000000000000000000000000000000000000..009292106e86fe94de4b2037ef16349f24a83719
--- /dev/null
+++ b/entity/Attribute_entity/entityfields/dropdowndefinition/valueProcess.js
@@ -0,0 +1,7 @@
+import("system.result");
+import("system.vars");
+import("Attribute_lib");
+
+var type = vars.get("$field.ATTRIBUTE_TYPE").trim();
+if (type && $AttributeTypes[type] && typeof($AttributeTypes[type].getDropDownDefinitions) !== "function")
+    result.string("");
\ No newline at end of file