diff --git a/aliasDefinition/Data_alias/Data_alias.aod b/aliasDefinition/Data_alias/Data_alias.aod index 5f9b83200ea31ba2deb905b3f072243a6700e462..0b59d9d16b7f8277a23685ed180c0d909dca16af 100644 --- a/aliasDefinition/Data_alias/Data_alias.aod +++ b/aliasDefinition/Data_alias/Data_alias.aod @@ -2163,6 +2163,20 @@ <title></title> <description></description> </entityFieldDb> + <entityFieldDb> + <name>REASONS</name> + <dbName></dbName> + <primaryKey v="false" /> + <columnType v="12" /> + <size v="498" /> + <scale v="0" /> + <notNull v="false" /> + <isUnique v="false" /> + <index v="false" /> + <documentation></documentation> + <title></title> + <description></description> + </entityFieldDb> </entityFields> </entityDb> <entityDb> diff --git a/entity/KeywordEntry_entity/KeywordEntry_entity.aod b/entity/KeywordEntry_entity/KeywordEntry_entity.aod index e0f3ed92821db08bdb9da90ba13345bc6b5a6331..8b73d4bd76473e24f1d52d3063e8a0480ca26f9e 100644 --- a/entity/KeywordEntry_entity/KeywordEntry_entity.aod +++ b/entity/KeywordEntry_entity/KeywordEntry_entity.aod @@ -222,12 +222,6 @@ <fieldName>KeywordStates</fieldName> <isConsumer v="false" /> </entityDependency> - <entityDependency> - <name>59546343-9f48-4437-a829-e7715e860a7d</name> - <entityName>SalesprojectCompetition_entity</entityName> - <fieldName>KeywordWonLost</fieldName> - <isConsumer v="false" /> - </entityDependency> <entityDependency> <name>e2041dea-8647-49e9-aacf-4481b75b76ff</name> <entityName>Stock_entity</entityName> @@ -342,6 +336,12 @@ <fieldName>KeywordStates</fieldName> <isConsumer v="false" /> </entityDependency> + <entityDependency> + <name>ef8b9397-6292-42de-806e-5aaf3e3db5f3</name> + <entityName>Salesproject_entity</entityName> + <fieldName>KeywordWonLost</fieldName> + <isConsumer v="false" /> + </entityDependency> <entityDependency> <name>5d9e0e48-ece8-4b8e-ab72-beef77b5dcc3</name> <entityName>Task_entity</entityName> @@ -367,6 +367,10 @@ <valueProcess>%aditoprj%/entity/KeywordEntry_entity/entityfields/specificcontainerkeywords/children/onlyactives_param/valueProcess.js</valueProcess> <triggerRecalculation v="false" /> </entityParameter> + <entityParameter> + <name>ContainerName_param</name> + <expose v="true" /> + </entityParameter> </children> </entityProvider> <entityField> diff --git a/entity/KeywordEntry_entity/recordcontainers/db/conditionProcess.js b/entity/KeywordEntry_entity/recordcontainers/db/conditionProcess.js index 1a47f13073f4a3f7b88a37b36d3d73cc49c20e20..4fb1ef2f327547a69afb2fe8d5e65cfa2dc1de00 100644 --- a/entity/KeywordEntry_entity/recordcontainers/db/conditionProcess.js +++ b/entity/KeywordEntry_entity/recordcontainers/db/conditionProcess.js @@ -3,7 +3,7 @@ import("system.db"); import("system.result"); import("Sql_lib"); -var cond = SqlCondition.begin().andPrepareVars("AB_KEYWORD_ENTRY.CONTAINER", "$param.containerName_param"); +var cond = SqlCondition.begin().andPrepareVars("AB_KEYWORD_ENTRY.CONTAINER", "$param.ContainerName_param"); if (vars.get("$param.OnlyActives_param") == "true") { diff --git a/entity/SalesprojectCompetition_entity/SalesprojectCompetition_entity.aod b/entity/SalesprojectCompetition_entity/SalesprojectCompetition_entity.aod index f74ccc880368f744575f314c05ea84ce584aa475..1385a0beb1c239967198b45cf171764285948af0 100644 --- a/entity/SalesprojectCompetition_entity/SalesprojectCompetition_entity.aod +++ b/entity/SalesprojectCompetition_entity/SalesprojectCompetition_entity.aod @@ -23,6 +23,7 @@ <name>REASON</name> <title>Reason</title> <consumer>KeywordWonLost</consumer> + <selectionMode>SINGLE</selectionMode> <onValidation>%aditoprj%/entity/SalesprojectCompetition_entity/entityfields/reason/onValidation.js</onValidation> </entityField> <entityField> @@ -112,6 +113,7 @@ <entityConsumer> <name>KeywordWonLost</name> <fieldType>DEPENDENCY_OUT</fieldType> + <selectionMode>MULTI</selectionMode> <dependency> <name>dependency</name> <entityName>KeywordEntry_entity</entityName> diff --git a/entity/Salesproject_entity/Salesproject_entity.aod b/entity/Salesproject_entity/Salesproject_entity.aod index ce9f78b18055f66e8201947798cf194ebf9d16a3..a2022eaa27d58328c677a3cbd998e940dbe4df20 100644 --- a/entity/Salesproject_entity/Salesproject_entity.aod +++ b/entity/Salesproject_entity/Salesproject_entity.aod @@ -157,6 +157,7 @@ <name>SalesprojectCompetitions</name> <title>Competition</title> <fieldType>DEPENDENCY_OUT</fieldType> + <selectionMode>MULTI</selectionMode> <dependency> <name>dependency</name> <entityName>SalesprojectCompetition_entity</entityName> @@ -419,6 +420,34 @@ <state>READONLY</state> <valueProcess>%aditoprj%/entity/Salesproject_entity/entityfields/days_notactive/valueProcess.js</valueProcess> </entityField> + <entityConsumer> + <name>KeywordWonLost</name> + <fieldType>DEPENDENCY_OUT</fieldType> + <selectionMode>MULTI</selectionMode> + <dependency> + <name>dependency</name> + <entityName>KeywordEntry_entity</entityName> + <fieldName>SpecificContainerKeywords</fieldName> + </dependency> + <children> + <entityParameter> + <name>ContainerName_param</name> + <valueProcess>%aditoprj%/entity/Salesproject_entity/entityfields/keywordwonlost/children/containername_param/valueProcess.js</valueProcess> + </entityParameter> + </children> + </entityConsumer> + <entityField> + <name>REASONS</name> + <title>Reason</title> + <consumer>KeywordWonLost</consumer> + <mandatoryProcess>%aditoprj%/entity/Salesproject_entity/entityfields/reasons/mandatoryProcess.js</mandatoryProcess> + <possibleItemsProcess>%aditoprj%/entity/Salesproject_entity/entityfields/reasons/possibleItemsProcess.js</possibleItemsProcess> + <searchable v="true" /> + <selectionMode>MULTI</selectionMode> + <stateProcess>%aditoprj%/entity/Salesproject_entity/entityfields/reasons/stateProcess.js</stateProcess> + <valueProcess>%aditoprj%/entity/Salesproject_entity/entityfields/reasons/valueProcess.js</valueProcess> + <displayValueProcess>%aditoprj%/entity/Salesproject_entity/entityfields/reasons/displayValueProcess.js</displayValueProcess> + </entityField> <entityProvider> <name>Salesprojects</name> <fieldType>DEPENDENCY_IN</fieldType> @@ -456,14 +485,14 @@ <onDBUpdate>%aditoprj%/entity/Salesproject_entity/recordcontainers/db/onDBUpdate.js</onDBUpdate> <linkInformation> <linkInformation> - <name>4c96cc1e-fe7f-4f7f-93c8-5ceeb9e0a56b</name> + <name>02eb2f4c-3b85-409f-ac13-c8b26804da44</name> <tableName>SALESPROJECT</tableName> <primaryKey>SALESPROJECTID</primaryKey> <isUIDTable v="true" /> <readonly v="false" /> </linkInformation> <linkInformation> - <name>701d5159-3b17-4ba9-879f-fce34375411e</name> + <name>485af2f8-d91d-442f-89c7-c44915dda990</name> <tableName>ORGANISATION</tableName> <primaryKey>ORGANISATIONID</primaryKey> <isUIDTable v="false" /> @@ -531,6 +560,14 @@ <name>PHASE.displayValue</name> <expression>%aditoprj%/entity/Salesproject_entity/recordcontainers/db/recordfieldmappings/phase.displayvalue/expression.js</expression> </dbRecordFieldMapping> + <dbRecordFieldMapping> + <name>REASONS.displayValue</name> + <expression>%aditoprj%/entity/Salesproject_entity/recordcontainers/db/recordfieldmappings/reasons.displayvalue/expression.js</expression> + </dbRecordFieldMapping> + <dbRecordFieldMapping> + <name>REASONS.value</name> + <recordfield>SALESPROJECT.REASONS</recordfield> + </dbRecordFieldMapping> </recordFieldMappings> </dbRecordContainer> </recordContainers> diff --git a/entity/Salesproject_entity/entityfields/keywordwonlost/children/containername_param/code.js b/entity/Salesproject_entity/entityfields/keywordwonlost/children/containername_param/code.js new file mode 100644 index 0000000000000000000000000000000000000000..cbd1c681941578fe0b1e5234bd3c80837eaaae0a --- /dev/null +++ b/entity/Salesproject_entity/entityfields/keywordwonlost/children/containername_param/code.js @@ -0,0 +1,5 @@ +import("system.result"); +import("Keyword_lib"); +import("KeywordRegistry_basic"); + +result.string($KeywordRegistry.salesprojectWonLost()); \ No newline at end of file diff --git a/entity/Salesproject_entity/entityfields/keywordwonlost/children/containername_param/valueProcess.js b/entity/Salesproject_entity/entityfields/keywordwonlost/children/containername_param/valueProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..cfe4e46f28f8f4af7c16aeb186446ecad2a69a61 --- /dev/null +++ b/entity/Salesproject_entity/entityfields/keywordwonlost/children/containername_param/valueProcess.js @@ -0,0 +1,4 @@ +import("system.result"); +import("KeywordRegistry_basic"); + +result.string($KeywordRegistry.salesprojectWonLost()); \ No newline at end of file diff --git a/entity/Salesproject_entity/entityfields/reasons/displayValueProcess.js b/entity/Salesproject_entity/entityfields/reasons/displayValueProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..bd91d37f12b9508d588507452b43836d15db3321 --- /dev/null +++ b/entity/Salesproject_entity/entityfields/reasons/displayValueProcess.js @@ -0,0 +1,8 @@ +import("system.vars"); +import("system.result"); +import("Keyword_lib"); +import("KeywordRegistry_basic"); + + +value = KeywordUtils.getViewValue($KeywordRegistry.salesprojectWonLost(), vars.get("$field.REASONS")); +result.string(value); \ No newline at end of file diff --git a/entity/Salesproject_entity/entityfields/reasons/mandatoryProcess.js b/entity/Salesproject_entity/entityfields/reasons/mandatoryProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..086a5d36d49678a0e352341b792f65b46d756025 --- /dev/null +++ b/entity/Salesproject_entity/entityfields/reasons/mandatoryProcess.js @@ -0,0 +1,6 @@ +import("system.result"); +import("system.vars"); + +// IDs: SalesprojectState Order and Lost +var res = vars.get("$field.STATE") && (vars.get("$field.STATE") == 'd8a60f60-a4e6-46ee-88ec-bac53e1afedd' || vars.get("$field.STATE") == '130bb53a-a97e-455e-8f34-8d445e985474'); +result.string(res); \ No newline at end of file diff --git a/entity/Salesproject_entity/entityfields/reasons/possibleItemsProcess.js b/entity/Salesproject_entity/entityfields/reasons/possibleItemsProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..47fe8c4030f97a558b35b9483b8e4c9765d02c1c --- /dev/null +++ b/entity/Salesproject_entity/entityfields/reasons/possibleItemsProcess.js @@ -0,0 +1,9 @@ +/*import("system.vars"); +import("system.result"); +import("system.db"); + +var res = db.table("select KEYID, TITLE from AB_KEYWORD_ENTRY where CONTAINER = 'SalesprojectWonLost'"); + +result.object(res); +*/ +// TODO: multiple select \ No newline at end of file diff --git a/entity/Salesproject_entity/entityfields/reasons/stateProcess.js b/entity/Salesproject_entity/entityfields/reasons/stateProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..871eb8d93a8a009c0653f8863444cd2e6a3e2eba --- /dev/null +++ b/entity/Salesproject_entity/entityfields/reasons/stateProcess.js @@ -0,0 +1,8 @@ +import("system.result"); +import("system.vars"); + +// IDs: SalesprojectState Order and Lost +if(vars.get("$field.STATE") && (vars.get("$field.STATE") == 'd8a60f60-a4e6-46ee-88ec-bac53e1afedd' || vars.get("$field.STATE") == '130bb53a-a97e-455e-8f34-8d445e985474')) + result.string("EDITABLE"); +else + result.string("READONLY"); diff --git a/entity/Salesproject_entity/entityfields/reasons/valueProcess.js b/entity/Salesproject_entity/entityfields/reasons/valueProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..33b4bb87b0471fc747abb0399b51f83efa12ed41 --- /dev/null +++ b/entity/Salesproject_entity/entityfields/reasons/valueProcess.js @@ -0,0 +1,7 @@ +import("system.result"); +import("system.vars"); + +// IDs: SalesprojectState Order and Lost +var state = vars.get("$field.STATE"); +if(state && (state != 'd8a60f60-a4e6-46ee-88ec-bac53e1afedd' && state != '130bb53a-a97e-455e-8f34-8d445e985474')) + result.string(""); \ No newline at end of file diff --git a/entity/Salesproject_entity/recordcontainers/db/onDBInsert.js b/entity/Salesproject_entity/recordcontainers/db/onDBInsert.js index 46e16c3d687c541b66574fd13cfaa2c00fff2b87..47067fdfe5c683417c30b9d75a0d753324d8534d 100644 --- a/entity/Salesproject_entity/recordcontainers/db/onDBInsert.js +++ b/entity/Salesproject_entity/recordcontainers/db/onDBInsert.js @@ -1,5 +1,6 @@ import("system.vars"); import("Salesproject_lib"); -Salesproject.insertMilestone(vars.getString("$field.SALESPROJECTID"), 1, vars.get("$field.PHASE"), false); -Salesproject.insertMilestone(vars.getString("$field.SALESPROJECTID"), 2, vars.get("$field.STATE"), true); \ No newline at end of file +// TODO Milestone Value is still an Integer but has to be a String (varchar) +// Salesproject.insertMilestone(vars.getString("$field.SALESPROJECTID"), 1, vars.get("$field.PHASE"), false); +// Salesproject.insertMilestone(vars.getString("$field.SALESPROJECTID"), 2, vars.get("$field.STATE"), true); \ No newline at end of file diff --git a/entity/Salesproject_entity/recordcontainers/db/onDBUpdate.js b/entity/Salesproject_entity/recordcontainers/db/onDBUpdate.js index 222926e7c12d2e84a2f409dd5b6698a8bbbf4c87..22b4360c61f2416e2c2e49525d2788c7f73ae377 100644 --- a/entity/Salesproject_entity/recordcontainers/db/onDBUpdate.js +++ b/entity/Salesproject_entity/recordcontainers/db/onDBUpdate.js @@ -1,5 +1,9 @@ +import("system.neon"); +import("system.translate"); import("system.vars"); import("Salesproject_lib"); +import("Sql_lib"); +import("system.db"); var typeValue, fieldVar @@ -11,12 +15,57 @@ vars.get("$local.changed").forEach(function(fieldName) { fieldVar = "$field.PHASE"; break; case "SALESPROJECT.STATE": + // Milestone typeValue = 2; fieldVar = "$field.STATE"; + + // set COMPETITION / OFFER to Lost + + // Lost + if ( vars.get("$field.STATE") == 'd8a60f60-a4e6-46ee-88ec-bac53e1afedd') + { + _updateDataToLost("OFFER", $KeywordRegistry.offerStatus()); + _updateReasons(); + } + // Order + else if(vars.get("$field.STATE") == '130bb53a-a97e-455e-8f34-8d445e985474') + { + _updateDataToLost("SALESPROJECT_COMPETITION", $KeywordRegistry.salesprojectCompetitionState()); + _updateReasons(); + } + else + _updateReasons("del"); break; } if (typeValue) { - Salesproject.insertMilestone(vars.getString("$field.SALESPROJECTID"), typeValue, vars.getString(fieldVar), true); + // TODO Milestone Value is still an Integer but has to be a String (varchar) + // Salesproject.insertMilestone(vars.getString("$field.SALESPROJECTID"), typeValue, vars.getString(fieldVar), true); } -}); \ No newline at end of file +}); + +neon.refresh() + +function _updateReasons(pDelete) +{ + var reasons = ""; + if(!pDelete) + vars.getString("field.REASONS"); + if(reasons != null) + db.updateData("SALESPROJECT", ["REASONS"], null, [reasons], SqlCondition.equals("SALESPROJECT.SALESPROJECTID", vars.getString("$field.SALESPROJECTID"), "1=2")); +} + +/** + * when project is state offer sets competitors to lost, when project is state lost sets offer to lost + * @param pTable {String} + * @param pContainer {String} + */ +function _updateDataToLost(pTable, pContainer ) +{ + var statusLost = db.table(SqlCondition.begin() + .andPrepare("AB_KEYWORD_ENTRY.CONTAINER", pContainer) + .andPrepare("AB_KEYWORD_ENTRY.TITLE", "Lost") + .buildSql("select KEYID from AB_KEYWORD_ENTRY", "1=2")); + + db.updateData(pTable, ["STATUS"], null, statusLost, SqlCondition.equals(pTable + ".SALESPROJECT_ID", vars.getString("$field.SALESPROJECTID"), "1=2")); +} diff --git a/entity/Salesproject_entity/recordcontainers/db/recordfieldmappings/reasons.displayvalue/expression.js b/entity/Salesproject_entity/recordcontainers/db/recordfieldmappings/reasons.displayvalue/expression.js new file mode 100644 index 0000000000000000000000000000000000000000..c62430bd64ea66ed105355c5d58f78cfdf9a785c --- /dev/null +++ b/entity/Salesproject_entity/recordcontainers/db/recordfieldmappings/reasons.displayvalue/expression.js @@ -0,0 +1,7 @@ +import("system.result"); +import("Keyword_lib"); +import("KeywordRegistry_basic"); +import("Sql_lib"); + +var value = KeywordUtils.getResolvedTitleSqlPart($KeywordRegistry.salesprojectWonLost(), "SALESPROJECT.REASONS"); +result.string(value); diff --git a/language/_____LANGUAGE_de/_____LANGUAGE_de.aod b/language/_____LANGUAGE_de/_____LANGUAGE_de.aod index 916dcec7a1d76fdb3a1ab883ed43c1739f050397..0009fdbbe25ea41fc9825ee931b9265bece9a778 100644 --- a/language/_____LANGUAGE_de/_____LANGUAGE_de.aod +++ b/language/_____LANGUAGE_de/_____LANGUAGE_de.aod @@ -1779,6 +1779,7 @@ </entry> <entry> <key>Product_technic</key> + <value>Produkt_Technik</value> </entry> <entry> <key>Moldova (Republic of)</key> @@ -1810,9 +1811,11 @@ </entry> <entry> <key>Project_duration</key> + <value>Projekt_Dauer</value> </entry> <entry> <key>Company_internationality</key> + <value>Unternehmen_Internationalität</value> </entry> <entry> <key>Eritrea</key> @@ -1848,6 +1851,7 @@ </entry> <entry> <key>Product_functionality</key> + <value>Produkt_Funktionalität</value> </entry> <entry> <key>Bulgaria</key> @@ -2027,6 +2031,7 @@ </entry> <entry> <key>Other_existing Customer</key> + <value>Sonstiges_Bestandskunde</value> </entry> <entry> <key>Uzbekistan</key> @@ -2166,6 +2171,7 @@ </entry> <entry> <key>Product_mobile use</key> + <value>Produkt_Mobiler Einsatz</value> </entry> <entry> <key>Samoa</key> @@ -2229,6 +2235,7 @@ </entry> <entry> <key>Company_size</key> + <value>Unternehmen_Größe</value> </entry> <entry> <key>Republic of Kosovo</key> @@ -2264,6 +2271,7 @@ </entry> <entry> <key>Product_industry knowhow</key> + <value>Produkt_Branchen KnowHow</value> </entry> <entry> <key>Progress</key> @@ -2287,6 +2295,7 @@ </entry> <entry> <key>Project_volume</key> + <value>Projekt_Volumen</value> </entry> <entry> <key>Ireland</key> @@ -2538,6 +2547,7 @@ </entry> <entry> <key>Project_reference</key> + <value>Projekt_Referenz</value> </entry> <entry> <key>Vanuatu</key> @@ -2593,6 +2603,7 @@ </entry> <entry> <key>Product_flexibility</key> + <value>Produkt_Flexibilität</value> </entry> <entry> <key>China</key> @@ -2712,6 +2723,7 @@ </entry> <entry> <key>Other_unknown</key> + <value>Sonstiges_Unbekannt</value> </entry> <entry> <key>Isle of Man</key> @@ -2735,6 +2747,7 @@ </entry> <entry> <key>Product_GUI</key> + <value>Produkt_GUI</value> </entry> <entry> <key>${GENDER_OTHER}</key> @@ -2866,6 +2879,7 @@ </entry> <entry> <key>Company_industry knowhow</key> + <value>Unternehmen_Branchen KnowHow</value> </entry> <entry> <key>Monaco</key> diff --git a/neonView/SalesprojectEdit_view/SalesprojectEdit_view.aod b/neonView/SalesprojectEdit_view/SalesprojectEdit_view.aod index f817929387fe6b9ebf3d867fa82128bcdbfbefbb..835768dd2859d518e198da621bd5ec29a627641b 100644 --- a/neonView/SalesprojectEdit_view/SalesprojectEdit_view.aod +++ b/neonView/SalesprojectEdit_view/SalesprojectEdit_view.aod @@ -36,6 +36,10 @@ <name>426a20c1-5d79-417b-bab1-d3100fabb25b</name> <entityField>STATE</entityField> </entityFieldLink> + <entityFieldLink> + <name>373ba27b-5f27-4c5d-865e-da50447124fa</name> + <entityField>REASONS</entityField> + </entityFieldLink> <entityFieldLink> <name>c00b2121-c44d-41a1-8c32-e2339b4dd234</name> <entityField>PHASE</entityField> diff --git a/neonView/SalesprojectPreview_view/SalesprojectPreview_view.aod b/neonView/SalesprojectPreview_view/SalesprojectPreview_view.aod index 906709518339e9de27b23c495b7af609419e7939..9fe2b5c18fc4e276f0fb2c6b5c1020b96acdb7d3 100644 --- a/neonView/SalesprojectPreview_view/SalesprojectPreview_view.aod +++ b/neonView/SalesprojectPreview_view/SalesprojectPreview_view.aod @@ -30,6 +30,10 @@ <name>4e3d7a37-f55b-4c18-9ba1-ab4ab0bbb442</name> <entityField>STATE</entityField> </entityFieldLink> + <entityFieldLink> + <name>2867e662-b824-4bbf-8eaf-bbd34f44598e</name> + <entityField>REASONS</entityField> + </entityFieldLink> <entityFieldLink> <name>ff0dcd67-56ec-4db1-8c53-531f22fda716</name> <entityField>PHASE</entityField> diff --git a/others/db_changes/data_alias/basic/2019.2/Salesproject_add_column.xml b/others/db_changes/data_alias/basic/2019.2/Salesproject_add_column.xml new file mode 100644 index 0000000000000000000000000000000000000000..a40ddf6bd75ea8cfbbe67b3da653db70d1cd58a3 --- /dev/null +++ b/others/db_changes/data_alias/basic/2019.2/Salesproject_add_column.xml @@ -0,0 +1,9 @@ +<?xml version="1.1" encoding="UTF-8" standalone="no"?> +<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog" xmlns:ext="http://www.liquibase.org/xml/ns/dbchangelog-ext" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog-ext http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-ext.xsd http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.6.xsd"> + <changeSet author="m.hofmann" id="e148d42d-ba3c-4cb7-a414-f2da9a9f2ae0"> + <addColumn tableName="SALESPROJECT"> + <!-- space for 13 entries as Multistring encoded --> + <column name="REASONS" type="VARCHAR(498)"/> + </addColumn> + </changeSet> +</databaseChangeLog> \ No newline at end of file diff --git a/others/db_changes/data_alias/basic/2019.2/changelog.xml b/others/db_changes/data_alias/basic/2019.2/changelog.xml index 1de36b80a0f47f7b7a339fc98c0b7ecf6ba4fe6b..8a9244cf31b3e77737752445dda60b9024748262 100644 --- a/others/db_changes/data_alias/basic/2019.2/changelog.xml +++ b/others/db_changes/data_alias/basic/2019.2/changelog.xml @@ -99,4 +99,6 @@ <include relativeToChangelogFile="true" file="add_ObjectRelation_type.xml"/> <include relativeToChangelogFile="true" file="data/AditoBasic/ObjectRelation_exampleData.xml" context="example"/> + + <include relativeToChangelogFile="true" file="Salesproject_add_column.xml"/> </databaseChangeLog> diff --git a/others/db_changes/readme.adoc b/others/db_changes/readme.adoc index e9bf2e4ff2a4a42d4252dc99c44fc2230751d85d..240dfacc5017f2e44ee53aa96535bc83ce96a311 100644 --- a/others/db_changes/readme.adoc +++ b/others/db_changes/readme.adoc @@ -31,7 +31,7 @@ So, that's where all our changes are located - but what about the changes _itsel As you can think of, they're stored in files located in the folders `struct` for DDL-stuff like _create_, _alter_ etc. and `data` for DML-stuff like _insert_, _update_ etc. -If you want to know what to do add in these files take a look at the official liquibase documentation for futher information how to fill these XML files: http://www.liquibase.org/documentation/index.html +If you want to know what to do add in these files take a look at the official liquibase documentation for further information how to fill these XML files: http://www.liquibase.org/documentation/index.html IMPORTANT: Always remember that you might have to define some rollback-entries. + This is e.g. not needed for create-entries but for others like insert. diff --git a/others/guide/CodingGuidelines.adoc b/others/guide/CodingGuidelines.adoc new file mode 100644 index 0000000000000000000000000000000000000000..7fbd1bf92c5ecca6d93d8ffe076b933618cb861b --- /dev/null +++ b/others/guide/CodingGuidelines.adoc @@ -0,0 +1,8 @@ += Sample Document +Doc Writer <doc.writer@asciidoc.org>; John Smith <john.smith@asciidoc.org> +v1.0, 2013-05-20: First draft +:title: Sample Document +:tags: [document, example] + + +Preamble... diff --git a/process/Sql_lib/process.js b/process/Sql_lib/process.js index e677069ded29df17642361879c8b9d2fa146cd85..195c85cb415d1ab8dfcd35cf22bfff512480a6bd 100644 --- a/process/Sql_lib/process.js +++ b/process/Sql_lib/process.js @@ -1207,7 +1207,7 @@ SqlUtils.getSqlInStatement = function(pFieldname, pData, pQuoteSymbol) { * * @return {String} a SQL-expression (case-when-statement) that resolves the KEYID into the title -> as preparedSatement-elements */ -SqlUtils.getResolvingCaseWhen = function(pKeyValueArray, pDbFieldName, pLocale) +SqlUtils.getResolvingCaseWhen = function(pKeyValueArray, pDbFieldName, pLocale) { var keyData = pKeyValueArray; if (keyData.length == 0)