From 74df3753fff5362d7d49bd1df9b506bcb46a3b59 Mon Sep 17 00:00:00 2001 From: Sebastian Pongratz <s.pongratz@adito.de> Date: Thu, 22 Jul 2021 14:54:22 +0000 Subject: [PATCH] [Projekt: xRM-ContactManagement][TicketNr.: 1080658][Anrede bei Geschlecht divers] translation changed of other gender --- entity/Person_entity/Person_entity.aod | 1 + .../entityfields/salutation/mandatoryProcess.js | 11 +++++++++++ language/_____LANGUAGE_en/_____LANGUAGE_en.aod | 2 +- process/Address_lib/process.js | 10 ++++++++-- 4 files changed, 21 insertions(+), 3 deletions(-) create mode 100644 entity/Person_entity/entityfields/salutation/mandatoryProcess.js diff --git a/entity/Person_entity/Person_entity.aod b/entity/Person_entity/Person_entity.aod index 9ee65df6a82..cc93d6ec372 100644 --- a/entity/Person_entity/Person_entity.aod +++ b/entity/Person_entity/Person_entity.aod @@ -85,6 +85,7 @@ <title>Salutation</title> <consumer>Salutations</consumer> <mandatory v="true" /> + <mandatoryProcess>%aditoprj%/entity/Person_entity/entityfields/salutation/mandatoryProcess.js</mandatoryProcess> <displayValueProcess>%aditoprj%/entity/Person_entity/entityfields/salutation/displayValueProcess.js</displayValueProcess> </entityField> <entityField> diff --git a/entity/Person_entity/entityfields/salutation/mandatoryProcess.js b/entity/Person_entity/entityfields/salutation/mandatoryProcess.js new file mode 100644 index 00000000000..a8de61cfd8f --- /dev/null +++ b/entity/Person_entity/entityfields/salutation/mandatoryProcess.js @@ -0,0 +1,11 @@ +import("system.result"); +import("KeywordRegistry_basic"); +import("system.vars"); + + +var sex = vars.get("$field.GENDER") + +if (sex == $KeywordRegistry.personGender$other()) +{ + result.string(false); +} diff --git a/language/_____LANGUAGE_en/_____LANGUAGE_en.aod b/language/_____LANGUAGE_en/_____LANGUAGE_en.aod index 6ec6ebd3144..b06971436e7 100644 --- a/language/_____LANGUAGE_en/_____LANGUAGE_en.aod +++ b/language/_____LANGUAGE_en/_____LANGUAGE_en.aod @@ -1741,7 +1741,7 @@ </entry> <entry> <key>${GENDER_OTHER}</key> - <value>Other</value> + <value>Diverse</value> </entry> <entry> <key>Turkey</key> diff --git a/process/Address_lib/process.js b/process/Address_lib/process.js index a9dc6dbda50..bfe22875176 100644 --- a/process/Address_lib/process.js +++ b/process/Address_lib/process.js @@ -224,7 +224,8 @@ function fetchAddressData( pCondition, pConfig, AddressID, pPerson) "CONTACT.CONTACTPOSITION", "CONTACT.LETTERSALUTATION", "ORGANISATION.NAME", "PERSON.FIRSTNAME", "PERSON.MIDDLENAME", "PERSON.LASTNAME", // 13-18 "PERSON.SALUTATION", "PERSON.TITLE", "PERSON.TITLESUFFIX", // 19-21 "coalesce( CONTACT.ISOLANGUAGE, (select C.ISOLANGUAGE from CONTACT C where C.ORGANISATION_ID = CONTACT.ORGANISATION_ID and PERSON_ID is null))", // 22 - "''", "''", "''", "(select ADDR_FORMAT from AB_COUNTRYINFO where ISO2 = ADDRESS.COUNTRY)", "ADDRESS.ADDR_TYPE" // 23-27 + "''", "''", "''", "(select ADDR_FORMAT from AB_COUNTRYINFO where ISO2 = ADDRESS.COUNTRY)", "ADDRESS.ADDR_TYPE", // 23-27 + "PERSON.GENDER"//28 ]; for (let i=0; i < pConfig.length; i++ ) @@ -406,6 +407,7 @@ function _getAddrData( pData ) if ( sformat == undefined ) sformat = _getSalutation( pData[22] + pData[19] ); //no language defined if ( sformat == undefined ) sformat = _getSalutation( pData[19] + pData[20] ); + if ( sformat == undefined ) sformat = _getSalutation( pData[22] + pData[28] ); // no language specific entry in salutation if ( sformat == undefined || sformat[0] == "" || sformat[1] == "" ) sformat = ["{sa} {ti} {fn} {ln}", "{sa} {ti} {ln}"]; salutation = _formatAddrData( pData, sformat[0] ); @@ -435,11 +437,15 @@ function _getSalutation( pSalutCode ) } else { - var list = db.table("select ISOLANGUAGE, SALUTATION, TITLE, HEADLINE, LETTERSALUTATION from SALUTATION" ); + var list = newSelect(["SALUTATION.ISOLANGUAGE", "SALUTATION.SALUTATION", "SALUTATION.TITLE", "SALUTATION.HEADLINE", "SALUTATION.LETTERSALUTATION", "SALUTATION.SEX"]) + .from("SALUTATION") + .orderBy("SALUTATION.SORT"); + for ( var i = 0; i < list.length; i++ ) { salut[list[i][0] + list[i][1] + list[i][2]] = [list[i][3], list[i][4]]; salut[list[i][1] + list[i][2]] = [list[i][3], list[i][4]]; + salut[list[i][0] + list[i][5]] = [list[i][3], list[i][4]]; } vars.set("$global.Salutation", salut); } -- GitLab