diff --git a/entity/Person_entity/recordcontainers/db/onDBUpdate.js b/entity/Person_entity/recordcontainers/db/onDBUpdate.js index b6e1ccbb97bd3d8336823449a8e445865f78114c..0c29899fd4393c2528219ef9dc213eb151d10b18 100644 --- a/entity/Person_entity/recordcontainers/db/onDBUpdate.js +++ b/entity/Person_entity/recordcontainers/db/onDBUpdate.js @@ -21,30 +21,10 @@ for (var i = 0; i < localChanged.length; i++) { 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 standardAddressId = new StandardObject("Address", null, "Person", vars.get("$field.PERSONID")) + .onPersonValueChange(vars.get("$field.ORGANISATION_ID")); - 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); - } - } + newWhere("CONTACT.CONTACTID", vars.get("$field.CONTACTID")).updateData(true, "CONTACT", ["ADDRESS_ID"], null, [standardAddressId]) } var rowdata = vars.get("$local.rowdata");