diff --git a/entity/Person_entity/recordcontainers/db/onDBUpdate.js b/entity/Person_entity/recordcontainers/db/onDBUpdate.js
index 4268b8a01770b2026a28ea01d6606fb743b1e64b..126fccba8ce2e7d34c7e73e68da7713856aff1d5 100644
--- a/entity/Person_entity/recordcontainers/db/onDBUpdate.js
+++ b/entity/Person_entity/recordcontainers/db/onDBUpdate.js
@@ -1,12 +1,52 @@
+import("Sql_lib");
 import("Workflow_lib");
 import("DataPrivacy_lib");
 import("system.tools");
+import("system.neon");
 import("system.vars");
 import("Person_lib");
 import("Communication_lib");
 import("Entity_lib");
 import("StandardObject_lib");
 
+var localChanged = vars.get("$local.changed");
+var orgChanged = false;
+for (var i = 0; i < localChanged.length; i++) {
+    if(localChanged[i] == "CONTACT.ORGANISATION_ID")
+    {
+        orgChanged = true;
+        break;
+    }
+}
+
+if(orgChanged)
+{
+    var orgAddressId = newSelect("CONTACT.ADDRESS_ID")
+                                    .from("CONTACT")
+                                    .where("CONTACT.ORGANISATION_ID",  vars.get("$field.ORGANISATION_ID"))
+                                    .and("CONTACT.PERSON_ID is null")
+                                    .cell();
+
+    var addressId = vars.get("$field.ADDRESS_ID");
+
+    if(addressId != orgAddressId) //update standard address if the the organisation changed
+    {
+        var persAddress = newSelect("ADDRESS.ADDRESSID")
+                                .from("ADDRESS")
+                                .where("ADDRESS.CONTACT_ID", vars.get("$field.CONTACTID"))
+                                .and("ADDRESS.ADDRESSID", addressId)
+                                .cell();
+
+        if(!persAddress) // only when the standard address is from the organisation
+        {
+            var standardAddressId = new StandardObject("Address", null, "Person", vars.get("$field.PERSONID"))
+                    .onPersonValueChange(vars.get("$field.ORGANISATION_ID"));
+
+            neon.setFieldValue("$field.ADDRESS_ID", standardAddressId);
+        }
+    }
+}
+
 var rowdata =  vars.get("$local.rowdata");
 // TODO: this is a workaround for missing possibility to react on changes of fields not connected to record Contqainer #1030023
 var uid = rowdata["CONTACT.CONTACTID"];
@@ -24,7 +64,7 @@ new StandardObject("Address", rowdata["CONTACT.ADDRESS_ID"], "Person", uid)
 var updates = [];
     
 // update user object if name changed
-vars.get("$local.changed").forEach(function(fieldName) 
+localChanged.forEach(function(fieldName) 
 {
     var nameProp = tools.LASTNAME;
     switch (fieldName) {