diff --git a/entity/SalesprojectMilestone_entity/SalesprojectMilestone_entity.aod b/entity/SalesprojectMilestone_entity/SalesprojectMilestone_entity.aod index d390c31108e434406bb56161e32cbe4d650f5a9f..34def483f6a2474a1db42ba55b59108fe7dfb5a6 100644 --- a/entity/SalesprojectMilestone_entity/SalesprojectMilestone_entity.aod +++ b/entity/SalesprojectMilestone_entity/SalesprojectMilestone_entity.aod @@ -1,8 +1,9 @@ <?xml version="1.0" encoding="UTF-8"?> <entity xmlns="http://www.adito.de/2018/ao/Model" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" VERSION="1.3.1" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/entity/1.3.1"> <name>SalesprojectMilestone_entity</name> - <title>Milestones</title> + <title></title> <majorModelMode>DISTRIBUTED</majorModelMode> + <titleProcess>%aditoprj%/entity/SalesprojectMilestone_entity/titleProcess.js</titleProcess> <recordContainer>db</recordContainer> <entityFields> <entityProvider> @@ -41,9 +42,9 @@ </entityField> <entityField> <name>VALUE</name> - <title>Milestone</title> <consumer>Keywords</consumer> <mandatory v="true" /> + <titleProcess>%aditoprj%/entity/SalesprojectMilestone_entity/entityfields/value/titleProcess.js</titleProcess> <displayValueProcess>%aditoprj%/entity/SalesprojectMilestone_entity/entityfields/value/displayValueProcess.js</displayValueProcess> </entityField> <entityParameter> @@ -57,19 +58,15 @@ <name>SalesprojectMilestones</name> <fieldType>DEPENDENCY_IN</fieldType> <recordContainer>db</recordContainer> - <dependencies> - <entityDependency> - <name>b05e2bdf-5d8b-4ba2-8dba-a8560c255470</name> - <entityName>Salesproject_entity</entityName> - <fieldName>SalesprojectMilestones</fieldName> - <isConsumer v="false" /> - </entityDependency> - </dependencies> <children> <entityParameter> <name>SalesprojectId_param</name> <expose v="true" /> </entityParameter> + <entityParameter> + <name>Type_param</name> + <expose v="false" /> + </entityParameter> </children> </entityProvider> <entityField> @@ -95,6 +92,48 @@ </entityParameter> </children> </entityConsumer> + <entityParameter> + <name>Type_param</name> + <expose v="true" /> + <description>PARAMETER</description> + </entityParameter> + <entityProvider> + <name>StateMilestones</name> + <fieldType>DEPENDENCY_IN</fieldType> + <dependencies> + <entityDependency> + <name>da87708b-e998-4694-81ae-d0068f789a89</name> + <entityName>Salesproject_entity</entityName> + <fieldName>SalesprojectStateMilestones</fieldName> + <isConsumer v="false" /> + </entityDependency> + </dependencies> + <children> + <entityParameter> + <name>Type_param</name> + <valueProcess>%aditoprj%/entity/SalesprojectMilestone_entity/entityfields/statemilestones/children/type_param/valueProcess.js</valueProcess> + </entityParameter> + </children> + </entityProvider> + <entityProvider> + <name>PhaseMilestones</name> + <fieldType>DEPENDENCY_IN</fieldType> + <dependencies> + <entityDependency> + <name>b132527b-990c-416a-b2d6-ddbe6f4397e2</name> + <entityName>Salesproject_entity</entityName> + <fieldName>SalesprojectPhaseMilestones</fieldName> + <isConsumer v="false" /> + </entityDependency> + </dependencies> + <children> + <entityParameter> + <name>Type_param</name> + <valueProcess>%aditoprj%/entity/SalesprojectMilestone_entity/entityfields/phasemilestones/children/type_param/valueProcess.js</valueProcess> + <expose v="false" /> + </entityParameter> + </children> + </entityProvider> </entityFields> <recordContainers> <dbRecordContainer> diff --git a/entity/SalesprojectMilestone_entity/entityfields/phasemilestones/children/type_param/valueProcess.js b/entity/SalesprojectMilestone_entity/entityfields/phasemilestones/children/type_param/valueProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..5b8076cef459fb0d8e18d6aac23c9b0172112560 --- /dev/null +++ b/entity/SalesprojectMilestone_entity/entityfields/phasemilestones/children/type_param/valueProcess.js @@ -0,0 +1,3 @@ +import("system.result"); + +result.string("SalesprojectPhase"); \ No newline at end of file diff --git a/entity/SalesprojectMilestone_entity/entityfields/statemilestones/children/type_param/valueProcess.js b/entity/SalesprojectMilestone_entity/entityfields/statemilestones/children/type_param/valueProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..1a1b3322838a6b972bd777abd8ce16e816d412d3 --- /dev/null +++ b/entity/SalesprojectMilestone_entity/entityfields/statemilestones/children/type_param/valueProcess.js @@ -0,0 +1,3 @@ +import("system.result"); + +result.string("SalesprojectState"); \ No newline at end of file diff --git a/entity/SalesprojectMilestone_entity/entityfields/value/titleProcess.js b/entity/SalesprojectMilestone_entity/entityfields/value/titleProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..658e8105ef136f6e374f80363f1c1d0ace5fba7e --- /dev/null +++ b/entity/SalesprojectMilestone_entity/entityfields/value/titleProcess.js @@ -0,0 +1,10 @@ +import("system.vars"); +import("system.translate"); +import("system.result"); + +if (vars.exists("$field.TYPE") && vars.get("$field.TYPE")) +{ + result.string(translate.text("Milestones") + " " + translate.text(vars.get("$field.TYPE"))); +} +else + result.string(translate.text("Milestones")); \ No newline at end of file diff --git a/entity/SalesprojectMilestone_entity/recordcontainers/db/conditionProcess.js b/entity/SalesprojectMilestone_entity/recordcontainers/db/conditionProcess.js index 7711ad471a8ed5e095a39703339fdedc6bc6153f..e0aa733ba874bae3fa610a4f560592836dc9ba07 100644 --- a/entity/SalesprojectMilestone_entity/recordcontainers/db/conditionProcess.js +++ b/entity/SalesprojectMilestone_entity/recordcontainers/db/conditionProcess.js @@ -3,8 +3,9 @@ import("system.result"); import("system.vars"); import("Sql_lib"); -var cond = new SqlCondition(); -cond.andPrepareVars("SALESPROJECT_MILESTONE.SALESPROJECT_ID", "$param.SalesprojectId_param"); +var cond = SqlCondition.begin() + .andPrepareVars("SALESPROJECT_MILESTONE.SALESPROJECT_ID", "$param.SalesprojectId_param") + .andPrepareVars("SALESPROJECT_MILESTONE.TYPE", "$param.Type_param"); //TODO: use a preparedCondition when available #1030812 #1034026 result.string(db.translateCondition(cond.build("1 = 1"))); \ No newline at end of file diff --git a/entity/SalesprojectMilestone_entity/titleProcess.js b/entity/SalesprojectMilestone_entity/titleProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..658e8105ef136f6e374f80363f1c1d0ace5fba7e --- /dev/null +++ b/entity/SalesprojectMilestone_entity/titleProcess.js @@ -0,0 +1,10 @@ +import("system.vars"); +import("system.translate"); +import("system.result"); + +if (vars.exists("$field.TYPE") && vars.get("$field.TYPE")) +{ + result.string(translate.text("Milestones") + " " + translate.text(vars.get("$field.TYPE"))); +} +else + result.string(translate.text("Milestones")); \ No newline at end of file diff --git a/entity/Salesproject_entity/Salesproject_entity.aod b/entity/Salesproject_entity/Salesproject_entity.aod index 122da5bbb42e5b8908159ce9b647750d9b1038dc..49c7559a789c486b961f91ddd9fdd36e82fc30e7 100644 --- a/entity/Salesproject_entity/Salesproject_entity.aod +++ b/entity/Salesproject_entity/Salesproject_entity.aod @@ -135,18 +135,18 @@ </children> </entityConsumer> <entityConsumer> - <name>SalesprojectMilestones</name> + <name>SalesprojectPhaseMilestones</name> <title>Milestone</title> <fieldType>DEPENDENCY_OUT</fieldType> <dependency> <name>dependency</name> <entityName>SalesprojectMilestone_entity</entityName> - <fieldName>SalesprojectMilestones</fieldName> + <fieldName>PhaseMilestones</fieldName> </dependency> <children> <entityParameter> <name>SalesprojectId_param</name> - <valueProcess>%aditoprj%/entity/Salesproject_entity/entityfields/salesprojectmilestones/children/salesprojectid_param/valueProcess.js</valueProcess> + <valueProcess>%aditoprj%/entity/Salesproject_entity/entityfields/salesprojectphasemilestones/children/salesprojectid_param/valueProcess.js</valueProcess> <triggerRecalculation v="true" /> </entityParameter> </children> @@ -547,6 +547,15 @@ <expose v="true" /> <description>PARAMETER</description> </entityParameter> + <entityConsumer> + <name>SalesprojectStateMilestones</name> + <fieldType>DEPENDENCY_OUT</fieldType> + <dependency> + <name>dependency</name> + <entityName>SalesprojectMilestone_entity</entityName> + <fieldName>StateMilestones</fieldName> + </dependency> + </entityConsumer> </entityFields> <recordContainers> <dbRecordContainer> diff --git a/entity/Salesproject_entity/entityfields/salesprojectmilestones/children/salesprojectid_param/valueProcess.js b/entity/Salesproject_entity/entityfields/salesprojectphasemilestones/children/salesprojectid_param/valueProcess.js similarity index 100% rename from entity/Salesproject_entity/entityfields/salesprojectmilestones/children/salesprojectid_param/valueProcess.js rename to entity/Salesproject_entity/entityfields/salesprojectphasemilestones/children/salesprojectid_param/valueProcess.js diff --git a/neonContext/Salesproject/Salesproject.aod b/neonContext/Salesproject/Salesproject.aod index a5422082d260a0e651632846afbc6b826ae25ff3..918124f55773f30f2c60e4ef6a6c16f7809456fb 100644 --- a/neonContext/Salesproject/Salesproject.aod +++ b/neonContext/Salesproject/Salesproject.aod @@ -26,5 +26,9 @@ <name>c35cc718-94a8-43cf-afe4-f02d251d4e9f</name> <view>SalesprojectEdit_view</view> </neonViewReference> + <neonViewReference> + <name>9d4603e0-6e0e-4c9e-af97-f5c059debe9e</name> + <view>SalesprojectMilestone_view</view> + </neonViewReference> </references> </neonContext> diff --git a/neonView/SalesprojectMain_view/SalesprojectMain_view.aod b/neonView/SalesprojectMain_view/SalesprojectMain_view.aod index 9ea49e77d55ab825acb182efe6aa5d52b72d676b..2ac8547b5b4d4913bfdc9c98b2e4e1f8468f406a 100644 --- a/neonView/SalesprojectMain_view/SalesprojectMain_view.aod +++ b/neonView/SalesprojectMain_view/SalesprojectMain_view.aod @@ -29,10 +29,10 @@ <entityField>SalesprojectForecasts</entityField> <view>SalesprojectForecastFilter_view</view> </neonViewReference> - <neonViewReference> - <name>349a82ad-4a83-4718-b37e-b0adf1ddb0b2</name> - <entityField>SalesprojectMilestones</entityField> - <view>SalesprojectMilestoneChart_view</view> + <neonViewReference> + <name>8986df12-88fc-49a8-9e48-f4c1f371532f</name> + <entityField>#ENTITY</entityField> + <view>SalesprojectMilestone_view</view> </neonViewReference> <neonViewReference> <name>5d7248e8-3f3e-4262-8f13-6d5eff7165c1</name> diff --git a/neonView/SalesprojectMilestone_view/SalesprojectMilestone_view.aod b/neonView/SalesprojectMilestone_view/SalesprojectMilestone_view.aod new file mode 100644 index 0000000000000000000000000000000000000000..603dfb9ffa5354b8fcf974e27a9befa054e5ec25 --- /dev/null +++ b/neonView/SalesprojectMilestone_view/SalesprojectMilestone_view.aod @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> +<neonView xmlns="http://www.adito.de/2018/ao/Model" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" VERSION="1.1.1" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/neonView/1.1.1"> + <name>SalesprojectMilestone_view</name> + <title>Milestones</title> + <majorModelMode>DISTRIBUTED</majorModelMode> + <layout> + <boxLayout> + <name>layout</name> + </boxLayout> + </layout> + <children> + <neonViewReference> + <name>30c775ea-7488-4dfd-8e6d-c65b7982849d</name> + <entityField>SalesprojectStateMilestones</entityField> + <view>SalesprojectMilestoneChart_view</view> + </neonViewReference> + <neonViewReference> + <name>cc8f1469-805f-4e2c-aa4f-d55f932c6deb</name> + <entityField>SalesprojectPhaseMilestones</entityField> + <view>SalesprojectMilestoneChart_view</view> + </neonViewReference> + </children> +</neonView>