diff --git a/entity/Activity_entity/Activity_entity.aod b/entity/Activity_entity/Activity_entity.aod index 33ed911d36e6c3012a6e0e311acdc615689e15af..2b9bfcbde13220c2de33cde0c8364cebbda99984 100644 --- a/entity/Activity_entity/Activity_entity.aod +++ b/entity/Activity_entity/Activity_entity.aod @@ -246,6 +246,26 @@ <mandatory v="false" /> <description>PARAMETER</description> </entityParameter> + <entityOutgoingField> + <name>ActivityObjectRelation_dfo</name> + <title>Relations</title> + <fieldType>DEPENDENCY_OUT</fieldType> + <dependency> + <name>dependency</name> + <entityName>ObjectRelation_entity</entityName> + <fieldName>ObjectRelationByObject1_dfi</fieldName> + </dependency> + <children> + <entityParameter> + <name>Object1Rowid_param</name> + <code>%aditoprj%/entity/Activity_entity/entityfields/activityobjectrelation_dfo/children/object1rowid_param/code.js</code> + </entityParameter> + <entityParameter> + <name>Object1Type_param</name> + <code>%aditoprj%/entity/Activity_entity/entityfields/activityobjectrelation_dfo/children/object1type_param/code.js</code> + </entityParameter> + </children> + </entityOutgoingField> </entityFields> <recordContainers> <dbRecordContainer> diff --git a/entity/Activity_entity/entityfields/activityobjectrelation_dfo/children/object1rowid_param/code.js b/entity/Activity_entity/entityfields/activityobjectrelation_dfo/children/object1rowid_param/code.js new file mode 100644 index 0000000000000000000000000000000000000000..a8267b62060b4bd30cedaba4713f4421a6e6f9ff --- /dev/null +++ b/entity/Activity_entity/entityfields/activityobjectrelation_dfo/children/object1rowid_param/code.js @@ -0,0 +1,4 @@ +import("system.vars"); +import("system.result"); + +result.string(vars.get("$field.ACTIVITYID")); \ No newline at end of file diff --git a/entity/Activity_entity/entityfields/activityobjectrelation_dfo/children/object1type_param/code.js b/entity/Activity_entity/entityfields/activityobjectrelation_dfo/children/object1type_param/code.js new file mode 100644 index 0000000000000000000000000000000000000000..c99cd53587f59c7e10dfab8541e38e7fdb6611d7 --- /dev/null +++ b/entity/Activity_entity/entityfields/activityobjectrelation_dfo/children/object1type_param/code.js @@ -0,0 +1,5 @@ +import("system.vars"); +import("system.result"); +import("Context_lib"); + +result.string(ContextUtils.getCurrentContextId()); \ No newline at end of file diff --git a/entity/Activity_entity/entityfields/icon/valueProcess.js b/entity/Activity_entity/entityfields/icon/valueProcess.js index 6f78dfcee1f8ed5135d1d95d7e4770387308cb19..b77beeec11507c78d1c9397de5ac9d8ea3676cc0 100644 --- a/entity/Activity_entity/entityfields/icon/valueProcess.js +++ b/entity/Activity_entity/entityfields/icon/valueProcess.js @@ -7,4 +7,4 @@ var category = vars.getString("$field.CATEGORY"); var kwd = KeywordUtils.createKeyword("ACTIVITY.CATEGORY"); var icon = kwd.getPropForKey(category, "defaultAvatarRepresentation", true); -result.string(icon || "NEON:HISTORY"); \ No newline at end of file +result.string(icon || "NEON:HISTORY"); diff --git a/entity/ObjectRelation_entity/ObjectRelation_entity.aod b/entity/ObjectRelation_entity/ObjectRelation_entity.aod index 52aac5e6a29c9683389465b35d54af3201914889..025da7095dcc7a9ad452576ed64d8a72e66d4466 100644 --- a/entity/ObjectRelation_entity/ObjectRelation_entity.aod +++ b/entity/ObjectRelation_entity/ObjectRelation_entity.aod @@ -46,6 +46,7 @@ <entityField> <name>OBJECT2_ROWID</name> <title>Object 2</title> + <linkedContextProcess>%aditoprj%/entity/ObjectRelation_entity/entityfields/object2_rowid/linkedContextProcess.js</linkedContextProcess> </entityField> <entityField> <name>OBJECT2_TYPE</name> @@ -61,13 +62,54 @@ <entityIncomingField> <name>ObjectRelationById_dfi</name> <fieldType>DEPENDENCY_IN</fieldType> + <title>Relations</title> <recordContainer>db</recordContainer> + <children> + <entityParameter> + <name>Object1Type_param</name> + <expose v="false" /> + </entityParameter> + <entityParameter> + <name>Object1Rowid_param</name> + <expose v="false" /> + </entityParameter> + </children> </entityIncomingField> + <entityParameter> + <name>Object1Type_param</name> + <expose v="true" /> + <triggerRecalculation v="true" /> + <description>PARAMETER</description> + </entityParameter> + <entityIncomingField> + <name>ObjectRelationByObject1_dfi</name> + <fieldType>DEPENDENCY_IN</fieldType> + <recordContainer>db</recordContainer> + <dependencies> + <entityDependency> + <name>8eb3187c-07cb-4b51-8b7e-d63e83959bdb</name> + <entityName>Activity_entity</entityName> + <fieldName>ActivityObjectRelation_dfo</fieldName> + <isOutgoing v="false" /> + </entityDependency> + </dependencies> + <children> + <entityParameter> + <name>ObjectRelatonId_param</name> + <expose v="false" /> + </entityParameter> + </children> + </entityIncomingField> + <entityParameter> + <name>Object1Rowid_param</name> + <expose v="true" /> + <triggerRecalculation v="true" /> + <description>PARAMETER</description> + </entityParameter> </entityFields> <recordContainers> <dbRecordContainer> <name>db</name> - <title></title> <description>&lt;null value&gt;</description> <alias>Data_alias</alias> <conditionProcess>%aditoprj%/entity/ObjectRelation_entity/recordcontainers/db/conditionProcess.js</conditionProcess> @@ -113,6 +155,14 @@ <name>USER_NEW.value</name> <recordfield>AB_OBJECTRELATION.USER_NEW</recordfield> </dbRecordFieldMapping> + <dbRecordFieldMapping> + <name>DATE_NEW.value</name> + <recordfield>AB_OBJECTRELATION.DATE_NEW</recordfield> + </dbRecordFieldMapping> + <dbRecordFieldMapping> + <name>OBJECT2_ROWID.displayValue</name> + <recordfield>AB_OBJECTRELATION.OBJECT2_TYPE</recordfield> + </dbRecordFieldMapping> </recordFieldMappings> </dbRecordContainer> </recordContainers> diff --git a/entity/ObjectRelation_entity/entityfields/object2_rowid/linkedContextProcess.js b/entity/ObjectRelation_entity/entityfields/object2_rowid/linkedContextProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..05ab13d81d4b3ebbc566b8733ac265ed7d46d31d --- /dev/null +++ b/entity/ObjectRelation_entity/entityfields/object2_rowid/linkedContextProcess.js @@ -0,0 +1,3 @@ +import("system.vars"); +import("system.result"); +result.string(vars.get("$field.OBJECT2_TYPE")) \ No newline at end of file diff --git a/entity/ObjectRelation_entity/recordcontainers/db/conditionProcess.js b/entity/ObjectRelation_entity/recordcontainers/db/conditionProcess.js index fb7e7cc1c02f96bee6639785e888b75126328265..6b012d3a311f754687e1b770982f45bc8a6f4b4e 100644 --- a/entity/ObjectRelation_entity/recordcontainers/db/conditionProcess.js +++ b/entity/ObjectRelation_entity/recordcontainers/db/conditionProcess.js @@ -4,11 +4,16 @@ import("system.result"); import("system.db"); import("Sql_lib"); -logging.log("objectid: " + vars.get("$param.ObjectRelatonId_param")) +logging.log("rowid: " + vars.get("$param.Object1Rowid_param")) +logging.log("type: " + vars.get("$param.Object1Type_param")) logging.log(SqlCondition.begin() + .andPrepareVars("AB_OBJECTRELATION.OBJECT1_TYPE", "$param.Object1Type_param") + .andPrepareVars("AB_OBJECTRELATION.OBJECT1_ROWID", "$param.Object1Rowid_param") .andPrepareVars("AB_OBJECTRELATION.AB_OBJECTRELATIONID", "$param.ObjectRelatonId_param") .build("1=2").toSource()) result.string(db.translateCondition(SqlCondition.begin() + .andPrepareVars("AB_OBJECTRELATION.OBJECT1_TYPE", "$param.Object1Type_param") + .andPrepareVars("AB_OBJECTRELATION.OBJECT1_ROWID", "$param.Object1Rowid_param") .andPrepareVars("AB_OBJECTRELATION.AB_OBJECTRELATIONID", "$param.ObjectRelatonId_param") .build("1=2"))); \ No newline at end of file diff --git a/entity/Offeritem_entity/onDBDelete.js b/entity/Offeritem_entity/onDBDelete.js index 9190f702beebebf62fb114f687b3894cf8bab682..2acb846c67015c02499f80bb8487248c0e58368a 100644 --- a/entity/Offeritem_entity/onDBDelete.js +++ b/entity/Offeritem_entity/onDBDelete.js @@ -17,5 +17,5 @@ if(oid != "") db.updateData("OFFER", cols, null, vals, SqlCondition.equals("OFFER.OFFERID", oid, "1 = 2")); - neon.refresh("Offer_entity"); + neon.refresh(); } \ No newline at end of file diff --git a/entity/Offeritem_entity/onDBInsert.js b/entity/Offeritem_entity/onDBInsert.js index 54792d1a09562384b432beb72945a794bf6a62ce..048025fe9d93f3c973ca34223f4c06cb4badecc6 100644 --- a/entity/Offeritem_entity/onDBInsert.js +++ b/entity/Offeritem_entity/onDBInsert.js @@ -22,5 +22,5 @@ if(oid != "") db.updateData("OFFER", cols, null, vals, SqlCondition.equals("OFFER.OFFERID", oid, "1 = 2")); - neon.refresh("Offer_entity"); + neon.refresh(); } \ No newline at end of file diff --git a/entity/Offeritem_entity/onDBUpdate.js b/entity/Offeritem_entity/onDBUpdate.js index c25fed571f83b27402f785a023e0f38aa0531eb8..7441937d9ef37bb099ba1e70bd80b95786f46fb1 100644 --- a/entity/Offeritem_entity/onDBUpdate.js +++ b/entity/Offeritem_entity/onDBUpdate.js @@ -12,5 +12,5 @@ if(oid != "") db.updateData("OFFER", cols, null, vals, SqlCondition.equals("OFFER.OFFERID", oid, "1 = 2")); - neon.refresh("Offer_entity"); + neon.refresh(); } \ No newline at end of file diff --git a/entity/Offeritem_entity/recordcontainers/db/onDBDelete.js b/entity/Offeritem_entity/recordcontainers/db/onDBDelete.js index 3d3da26d0f804b33af083028027237dc3dd9f628..568700b215786effb8a1556df300e84cd46d1ad2 100644 --- a/entity/Offeritem_entity/recordcontainers/db/onDBDelete.js +++ b/entity/Offeritem_entity/recordcontainers/db/onDBDelete.js @@ -19,5 +19,5 @@ if(oid != "") db.updateData("OFFER", cols, null, vals, SqlCondition.equals("OFFER.OFFERID", oid, "1 = 2")); - neon.refresh("Offer_entity"); + neon.refresh(); } \ No newline at end of file diff --git a/entity/Offeritem_entity/recordcontainers/db/onDBInsert.js b/entity/Offeritem_entity/recordcontainers/db/onDBInsert.js index faad425ccbc39089f889aa851f39659c52c77067..33f35dd3c95aca115048ab046723af2d0ef049ed 100644 --- a/entity/Offeritem_entity/recordcontainers/db/onDBInsert.js +++ b/entity/Offeritem_entity/recordcontainers/db/onDBInsert.js @@ -23,5 +23,5 @@ if(oid != "") db.updateData("OFFER", cols, null, vals, SqlCondition.equals("OFFER.OFFERID", oid, "1 = 2")); - neon.refresh("Offer_entity"); + neon.refresh(); } \ No newline at end of file diff --git a/entity/Offeritem_entity/recordcontainers/db/onDBUpdate.js b/entity/Offeritem_entity/recordcontainers/db/onDBUpdate.js index 23ce07486b0f9a78d16145ede5487e91d73a475c..8c333d3d4bb50852a39cb07e25afd19126008406 100644 --- a/entity/Offeritem_entity/recordcontainers/db/onDBUpdate.js +++ b/entity/Offeritem_entity/recordcontainers/db/onDBUpdate.js @@ -12,5 +12,5 @@ if(oid != "") db.updateData("OFFER", cols, null, oiUtils.getNetAndVat(), SqlCondition.equals("OFFER.OFFERID", oid, "1 = 2")); - neon.refresh("Offer_entity"); + neon.refresh(); } \ No newline at end of file diff --git a/entity/Orderitem_entity/recordcontainers/db/onDBDelete.js b/entity/Orderitem_entity/recordcontainers/db/onDBDelete.js index 9b55b013181aac8ee35b14ca9d063b7fdee36aae..1893bf1fa144173d7daa6b7d8f6145a08de46751 100644 --- a/entity/Orderitem_entity/recordcontainers/db/onDBDelete.js +++ b/entity/Orderitem_entity/recordcontainers/db/onDBDelete.js @@ -18,5 +18,5 @@ if(oid != "") db.updateData("SALESORDER", cols, null, vals, SqlCondition.equals("SALESORDER.SALESORDERID", oid, "1 = 2")); - neon.refresh("Order_entity"); + neon.refresh(); } \ No newline at end of file diff --git a/entity/Orderitem_entity/recordcontainers/db/onDBInsert.js b/entity/Orderitem_entity/recordcontainers/db/onDBInsert.js index ba73df2fc7da5b3c777ec227f02f3ef024110da9..e564c8123b9d288c2f48b0ef3e49e48fc36286b8 100644 --- a/entity/Orderitem_entity/recordcontainers/db/onDBInsert.js +++ b/entity/Orderitem_entity/recordcontainers/db/onDBInsert.js @@ -23,5 +23,5 @@ if(oid != "") db.updateData("SALESORDER", cols, null, vals, SqlCondition.equals("SALESORDER.SALESORDERID", oid, "1 = 2")); - neon.refresh("Order_entity"); + neon.refresh(); } \ No newline at end of file diff --git a/entity/Orderitem_entity/recordcontainers/db/onDBUpdate.js b/entity/Orderitem_entity/recordcontainers/db/onDBUpdate.js index bf481974b157e3a0a32e8ff7946e9be9251aab13..cd1ddcfae6c72996f2d193a85255f15b11fecc0f 100644 --- a/entity/Orderitem_entity/recordcontainers/db/onDBUpdate.js +++ b/entity/Orderitem_entity/recordcontainers/db/onDBUpdate.js @@ -13,5 +13,5 @@ if(oid != "") db.updateData("SALESORDER", cols, null, vals, SqlCondition.equals("SALESORDER.SALESORDERID", oid, "1 = 2")); - neon.refresh("Order_entity"); + neon.refresh(); } \ No newline at end of file diff --git a/entity/SalesprojectClassification_entity/contentProcess.js b/entity/SalesprojectClassification_entity/contentProcess.js index ac02906b90201d9bed32a268416e5050d7e07023..f1676827b8aa6a7a1741b1bb44843ec46dd320ab 100644 --- a/entity/SalesprojectClassification_entity/contentProcess.js +++ b/entity/SalesprojectClassification_entity/contentProcess.js @@ -5,7 +5,7 @@ import("Keyword_lib"); var keyword = KeywordUtils.createKeyword("SALESPROJECT.CLASS"); -if (vars.exists("$local.idvalues")) { +if (vars.exists("$local.idvalues") && vars.get("$local.idvalues")) { var idValues = vars.get("$local.idvalues"); if (idValues.length > 0) { diff --git a/entity/SalesprojectClassification_entity/recordcontainers/jdito/contentProcess.js b/entity/SalesprojectClassification_entity/recordcontainers/jdito/contentProcess.js index ac02906b90201d9bed32a268416e5050d7e07023..f1676827b8aa6a7a1741b1bb44843ec46dd320ab 100644 --- a/entity/SalesprojectClassification_entity/recordcontainers/jdito/contentProcess.js +++ b/entity/SalesprojectClassification_entity/recordcontainers/jdito/contentProcess.js @@ -5,7 +5,7 @@ import("Keyword_lib"); var keyword = KeywordUtils.createKeyword("SALESPROJECT.CLASS"); -if (vars.exists("$local.idvalues")) { +if (vars.exists("$local.idvalues") && vars.get("$local.idvalues")) { var idValues = vars.get("$local.idvalues"); if (idValues.length > 0) { diff --git a/entity/SalesprojectForecast_entity/SalesprojectForecast_entity.aod b/entity/SalesprojectForecast_entity/SalesprojectForecast_entity.aod index 04eca20d0ae9324898f65501684a433f1ffd792b..75ee24a6cdd205048d9c3f6562deb79668dd3ef8 100644 --- a/entity/SalesprojectForecast_entity/SalesprojectForecast_entity.aod +++ b/entity/SalesprojectForecast_entity/SalesprojectForecast_entity.aod @@ -1,7 +1,7 @@ <?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.1.1" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/entity/1.1.1"> <name>SalesprojectForecast_entity</name> - <title>Forecast</title> + <title>${FORECAST_ENGLISH}</title> <majorModelMode>DISTRIBUTED</majorModelMode> <recordContainer>db</recordContainer> <entityFields> diff --git a/entity/Task_entity/Task_entity.aod b/entity/Task_entity/Task_entity.aod index 2b839216346e76e05f23c3771f85db8eb5813093..837d6c806ecc55860723385587be10b68b580921 100644 --- a/entity/Task_entity/Task_entity.aod +++ b/entity/Task_entity/Task_entity.aod @@ -4,9 +4,9 @@ <title>Task</title> <majorModelMode>DISTRIBUTED</majorModelMode> <documentation>%aditoprj%/entity/Task_entity/documentation.adoc</documentation> - <icon>VAADIN:TASKS</icon> <onValidation>%aditoprj%/entity/Task_entity/onValidation.js</onValidation> <iconId>VAADIN:TASKS</iconId> + <iconIdProcess>%aditoprj%/entity/Task_entity/iconIdProcess.js</iconIdProcess> <recordContainer>db</recordContainer> <entityFields> <entityIncomingField> @@ -32,6 +32,7 @@ <title>{$TASK_STATUS}</title> <mandatory v="true" /> <possibleItemsProcess>%aditoprj%/entity/Task_entity/entityfields/status/possibleItemsProcess.js</possibleItemsProcess> + <groupable v="true" /> <valueProcess>%aditoprj%/entity/Task_entity/entityfields/status/valueProcess.js</valueProcess> </entityField> <entityField> @@ -39,6 +40,7 @@ <title>priority</title> <mandatory v="true" /> <possibleItemsProcess>%aditoprj%/entity/Task_entity/entityfields/priority/possibleItemsProcess.js</possibleItemsProcess> + <groupable v="true" /> <valueProcess>%aditoprj%/entity/Task_entity/entityfields/priority/valueProcess.js</valueProcess> </entityField> <entityField> @@ -59,6 +61,7 @@ <title>start date</title> <contentType>DATE</contentType> <resolution>DAY</resolution> + <groupable v="true" /> <valueProcess>%aditoprj%/entity/Task_entity/entityfields/start_date/valueProcess.js</valueProcess> <onValidation>%aditoprj%/entity/Task_entity/entityfields/start_date/onValidation.js</onValidation> </entityField> @@ -74,6 +77,7 @@ <name>TYPE</name> <title>type</title> <possibleItemsProcess>%aditoprj%/entity/Task_entity/entityfields/type/possibleItemsProcess.js</possibleItemsProcess> + <groupable v="true" /> </entityField> <entityField> <name>DESCRIPTION</name> diff --git a/entity/Task_entity/iconIdProcess.js b/entity/Task_entity/iconIdProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..d65e648d41234d7bdcc0620e3afd1cce86bd16ae --- /dev/null +++ b/entity/Task_entity/iconIdProcess.js @@ -0,0 +1,10 @@ +import("system.vars"); +import("system.result"); +import("system.neon"); +import("Keyword_lib"); + +var category = vars.getString("$field.PRIORITY"); +var kwd = KeywordUtils.createKeyword("TASK.PRIORITY"); +var icon = kwd.getPropForKey(category, "defaultAvatarRepresentation", true); + +result.string(icon || "VAADIN:TASKS"); \ No newline at end of file diff --git a/language/_____LANGUAGE_EXTRA/_____LANGUAGE_EXTRA.aod b/language/_____LANGUAGE_EXTRA/_____LANGUAGE_EXTRA.aod index 7b5592f85ebcf7b63d8ceab1be399b2cfe734e14..18311db9c92e09d046ac05a256910719a60f5eac 100644 --- a/language/_____LANGUAGE_EXTRA/_____LANGUAGE_EXTRA.aod +++ b/language/_____LANGUAGE_EXTRA/_____LANGUAGE_EXTRA.aod @@ -1459,6 +1459,34 @@ <key>responsible</key> </entry> <entry> + <key>Kundenstammblatt</key> + </entry> + <entry> + <key>Person</key> + </entry> + <entry> + <key>Detail</key> + </entry> + <entry> + <key>Object 2</key> + </entry> + <entry> + <key>Object 1</key> + </entry> + <entry> + <key>Type 2</key> + </entry> + <entry> + <key>Type 1</key> + </entry> + <entry> + <key>Relations</key> + </entry> + <entry> + <key>Object Relation</key> + </entry> + <entry> + <key>${FORECAST_ENGLISH}</key> <key>${ADDRESS_STATE}</key> </entry> <entry> diff --git a/language/_____LANGUAGE_de/_____LANGUAGE_de.aod b/language/_____LANGUAGE_de/_____LANGUAGE_de.aod index 014c54344e826da644c36e2fc6b4e9910b88d54f..7a997ae430781dc8960f1bf131730b42e38d1192 100644 --- a/language/_____LANGUAGE_de/_____LANGUAGE_de.aod +++ b/language/_____LANGUAGE_de/_____LANGUAGE_de.aod @@ -1581,6 +1581,7 @@ </entry> <entry> <key>Object</key> + <value>Objekt</value> </entry> <entry> <key>Attributes</key> @@ -1876,6 +1877,39 @@ <key>{$DATE_EDIT}</key> <value>Änderungsdatum</value> </entry> + <entry> + <key>Kundenstammblatt</key> + </entry> + <entry> + <key>Person</key> + </entry> + <entry> + <key>Detail</key> + </entry> + <entry> + <key>Object 2</key> + </entry> + <entry> + <key>Object 1</key> + </entry> + <entry> + <key>Type 2</key> + </entry> + <entry> + <key>Type 1</key> + </entry> + <entry> + <key>Relations</key> + <value>Beziehungen</value> + </entry> + <entry> + <key>Object Relation</key> + <value>Objektbeziehung</value> + </entry> + <entry> + <key>${FORECAST_ENGLISH}</key> + <value>Forecast</value> + </entry> </keyValueMap> <font name="Dialog" style="0" size="11" /> </language> diff --git a/language/_____LANGUAGE_en/_____LANGUAGE_en.aod b/language/_____LANGUAGE_en/_____LANGUAGE_en.aod index ef18f89bf9a6e332acbcf563985bd312f0a471cf..15d73635855f33fa8892af6163a52e111f9df2e0 100644 --- a/language/_____LANGUAGE_en/_____LANGUAGE_en.aod +++ b/language/_____LANGUAGE_en/_____LANGUAGE_en.aod @@ -1488,6 +1488,35 @@ <key>responsible</key> </entry> <entry> + <key>Kundenstammblatt</key> + </entry> + <entry> + <key>Person</key> + </entry> + <entry> + <key>Detail</key> + </entry> + <entry> + <key>Object 2</key> + </entry> + <entry> + <key>Object 1</key> + </entry> + <entry> + <key>Type 2</key> + </entry> + <entry> + <key>Type 1</key> + </entry> + <entry> + <key>Relations</key> + </entry> + <entry> + <key>Object Relation</key> + </entry> + <entry> + <key>${FORECAST_ENGLISH}</key> + <value>Forecast</value> <key>${ADDRESS_STATE}</key> <value>state</value> </entry> diff --git a/neonContext/ObjectRelation_context/ObjectRelation_context.aod b/neonContext/ObjectRelation_context/ObjectRelation_context.aod index 90149360d0cc36dcfafaabe2735efa1e9b2045b7..4e07153b0da1edb8c26414e3b1f13bf990d7f88e 100644 --- a/neonContext/ObjectRelation_context/ObjectRelation_context.aod +++ b/neonContext/ObjectRelation_context/ObjectRelation_context.aod @@ -2,11 +2,17 @@ <neonContext xmlns="http://www.adito.de/2018/ao/Model" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" VERSION="1.0.0" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/neonContext/1.0.0"> <name>ObjectRelation_context</name> <majorModelMode>DISTRIBUTED</majorModelMode> + <filterview>ObjectRelationFilter_view</filterview> + <preview>ObjectRelationPreview_view</preview> <entity>ObjectRelation_entity</entity> <references> <neonViewReference> <name>f6b27aa2-d0a7-479c-812e-8b16400b564b</name> <view>ObjectRelationFilter_view</view> </neonViewReference> + <neonViewReference> + <name>dc0bd793-a472-4a7b-8394-06c4bc31258a</name> + <view>ObjectRelationPreview_view</view> + </neonViewReference> </references> </neonContext> diff --git a/neonContext/Task_context/Task_context.aod b/neonContext/Task_context/Task_context.aod index d6459a17b6e3a705b34defe319bee538cfb4173c..ecc29110ce8b3975061d296bf11f51d70006646f 100644 --- a/neonContext/Task_context/Task_context.aod +++ b/neonContext/Task_context/Task_context.aod @@ -4,7 +4,6 @@ <title>Task</title> <majorModelMode>DISTRIBUTED</majorModelMode> <documentation>%aditoprj%/neonContext/Task_context/documentation.adoc</documentation> - <icon>VAADIN:TASKS</icon> <mainview>TaskMain_view</mainview> <filterview>TaskFilter_view</filterview> <editview>TaskEdit_view</editview> diff --git a/neonView/ActivityFilter_view/ActivityFilter_view.aod b/neonView/ActivityFilter_view/ActivityFilter_view.aod index 1b59c632c4471c1d52188a22b22d60a369751531..0c14d5e456eab7ddffa55d87576f7dd00cf6364f 100644 --- a/neonView/ActivityFilter_view/ActivityFilter_view.aod +++ b/neonView/ActivityFilter_view/ActivityFilter_view.aod @@ -55,6 +55,14 @@ </groupLayout> </layout> <children> + <timelineViewTemplate> + <name>TimelineFilter_template</name> + <dateField>ENTRYDATE</dateField> + <titleField>SUBJECT_DETAILS</titleField> + <descriptionField>INFO</descriptionField> + <iconIdField>DIRECTION_ICON</iconIdField> + <entityField>#ENTITY</entityField> + </timelineViewTemplate> <tableViewTemplate> <name>table_template</name> <entityField>#ENTITY</entityField> @@ -81,14 +89,6 @@ </neonTableColumn> </columns> </tableViewTemplate> - <timelineViewTemplate> - <name>TimelineFilter_template</name> - <dateField>ENTRYDATE</dateField> - <titleField>SUBJECT_DETAILS</titleField> - <descriptionField>INFO</descriptionField> - <iconIdField>DIRECTION_ICON</iconIdField> - <entityField>#ENTITY</entityField> - </timelineViewTemplate> <treetableViewTemplate> <name>Treetable_template</name> <titleField>SUBJECT</titleField> diff --git a/neonView/ActivityMain_view/ActivityMain_view.aod b/neonView/ActivityMain_view/ActivityMain_view.aod index 983a1dc1ef0e8558b374b41c82f58f6899fa0401..88a02cfbd082c02abe166b722fa5129147d2e98c 100644 --- a/neonView/ActivityMain_view/ActivityMain_view.aod +++ b/neonView/ActivityMain_view/ActivityMain_view.aod @@ -24,5 +24,10 @@ <entityField>ActivityDocument_dfo</entityField> <view>DocumentFilter_view</view> </neonViewReference> + <neonViewReference> + <name>644418a6-7945-493b-be3f-86b3b62daaab</name> + <entityField>ActivityObjectRelation_dfo</entityField> + <view>ObjectRelationFilter_view</view> + </neonViewReference> </children> </neonView> diff --git a/neonView/ObjectRelationFilter_view/ObjectRelationFilter_view.aod b/neonView/ObjectRelationFilter_view/ObjectRelationFilter_view.aod index 3f48889779996f9719b1a3b404b3d70a0c47da36..7f1be075c72f6241b9e60876fc3bd49448d567d2 100644 --- a/neonView/ObjectRelationFilter_view/ObjectRelationFilter_view.aod +++ b/neonView/ObjectRelationFilter_view/ObjectRelationFilter_view.aod @@ -32,12 +32,6 @@ <width v="75" /> <expandRatio v="100" /> </neonTableColumn> - <neonTableColumn> - <name>99e92d98-81b4-4e68-927e-a77771b31ed7</name> - <entityField>OBJECT2_TYPE</entityField> - <width v="75" /> - <expandRatio v="100" /> - </neonTableColumn> </columns> </tableViewTemplate> </children> diff --git a/neonView/ObjectRelationPreview_view/ObjectRelationPreview_view.aod b/neonView/ObjectRelationPreview_view/ObjectRelationPreview_view.aod new file mode 100644 index 0000000000000000000000000000000000000000..5da23f941553fb1d3a7c4f1b6d548d495812c889 --- /dev/null +++ b/neonView/ObjectRelationPreview_view/ObjectRelationPreview_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.0.1" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/neonView/1.0.1"> + <name>ObjectRelationPreview_view</name> + <majorModelMode>DISTRIBUTED</majorModelMode> + <layout> + <boxLayout> + <name>layout</name> + </boxLayout> + </layout> + <children> + <genericViewTemplate> + <name>Object</name> + <entityField>#ENTITY</entityField> + <title>Object</title> + <fields> + <entityFieldLink> + <name>eabe1737-7a31-4181-8c32-bda6a9f7d7e9</name> + <entityField>OBJECT2_ROWID</entityField> + </entityFieldLink> + </fields> + </genericViewTemplate> + </children> +</neonView> diff --git a/neonView/SalesprojectFilter_view/SalesprojectFilter_view.aod b/neonView/SalesprojectFilter_view/SalesprojectFilter_view.aod index 9fc30060c6d93d5c22ec275e4a575843b1d52713..27fef9cb071909a8ee03637d78b83fef0074a4ae 100644 --- a/neonView/SalesprojectFilter_view/SalesprojectFilter_view.aod +++ b/neonView/SalesprojectFilter_view/SalesprojectFilter_view.aod @@ -52,10 +52,11 @@ <tableViewTemplate> <name>SalesprojectFilter_table</name> <entityField>#ENTITY</entityField> + <title></title> <columns> <neonTableColumn> - <name>91a153d4-4ede-4ba1-b11e-713e476e77c9</name> - <entityField>PROJECTCODE</entityField> + <name>6702bb75-1c57-42a7-9cf0-acd7cd8515f5</name> + <entityField>RELATION_ID</entityField> </neonTableColumn> <neonTableColumn> <name>9f6b967e-5140-420f-84ca-2273920221bd</name> diff --git a/neonView/TaskFilter_view/TaskFilter_view.aod b/neonView/TaskFilter_view/TaskFilter_view.aod index 01dc1876945f01e1f00a54ce5d68fbeba89d714d..7218b02bd500edd32ca1dfc327623865ee39c0c6 100644 --- a/neonView/TaskFilter_view/TaskFilter_view.aod +++ b/neonView/TaskFilter_view/TaskFilter_view.aod @@ -4,11 +4,19 @@ <majorModelMode>DISTRIBUTED</majorModelMode> <filterable v="true" /> <layout> - <boxLayout> + <groupLayout> <name>layout</name> - </boxLayout> + </groupLayout> </layout> <children> + <timelineViewTemplate> + <name>mainTimeline</name> + <dateField>START_DATE</dateField> + <titleField>SUBJECT</titleField> + <descriptionField>DESCRIPTION</descriptionField> + <iconIdField>#ICON</iconIdField> + <entityField>#ENTITY</entityField> + </timelineViewTemplate> <tableViewTemplate> <name>mainTable</name> <entityField>#ENTITY</entityField> @@ -41,5 +49,12 @@ </neonTableColumn> </columns> </tableViewTemplate> + <treetableViewTemplate> + <name>mainTreetable</name> + <titleField>SUBJECT</titleField> + <descriptionField>DESCRIPTION</descriptionField> + <iconField>#ICON</iconField> + <entityField>#ENTITY</entityField> + </treetableViewTemplate> </children> </neonView> diff --git a/preferences/_____PREFERENCES_PROJECT/_____PREFERENCES_PROJECT.aod b/preferences/_____PREFERENCES_PROJECT/_____PREFERENCES_PROJECT.aod index 3f9daeb173f0de1d87682e389317618aba75d421..336d6b092bda8ab38166821c8d50c82ace586ceb 100644 --- a/preferences/_____PREFERENCES_PROJECT/_____PREFERENCES_PROJECT.aod +++ b/preferences/_____PREFERENCES_PROJECT/_____PREFERENCES_PROJECT.aod @@ -2,7 +2,7 @@ <preferences xmlns="http://www.adito.de/2018/ao/Model" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" VERSION="3.0.3" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/preferences/3.0.3"> <name>_____PREFERENCES_PROJECT</name> <majorModelMode>DISTRIBUTED</majorModelMode> - <projectName>basic 2019</projectName> + <projectName>xRM-Basic2019</projectName> <jditoMaxContentSize v="57671680" /> <calendarCategoriesEvent> <entry> diff --git a/process/OfferOrder_lib/process.js b/process/OfferOrder_lib/process.js index 78375a40824f284cbd831ef642e06158bc2b8cf3..d2b44d92d67ba659f9c8609aa45ea30b4b637e07 100644 --- a/process/OfferOrder_lib/process.js +++ b/process/OfferOrder_lib/process.js @@ -1,3 +1,4 @@ +import("system.logging"); import("system.translate"); import("system.text"); import("system.vars"); @@ -140,12 +141,16 @@ function ItemUtils(pOfferOrderId, pTableName) { * get a new SqlCondition Object with tablename + "ITEM." + tablename + "ITEMID" = pItemId * * @param {String} pItemId item id + * @param {String} [pTableName=this.tableName] table name, if this is not available * * @return {SqlCondition} */ -ItemUtils.prototype.getNewItemIdCondition = function(pItemId) +ItemUtils.prototype.getNewItemIdCondition = function(pItemId, pTableName) { - return SqlCondition.begin().andPrepare(this.tableName + "ITEM." + this.tableName + "ITEMID", pItemId); + if (pTableName == undefined) + pTableName = this.tableName; + logging.log("hää" + pTableName) + return SqlCondition.begin().andPrepare(pTableName + "ITEM." + pTableName + "ITEMID", pItemId); } /** @@ -168,7 +173,7 @@ ItemUtils.prototype.getNetAndVat = function(itemIds) { itemIds.forEach(function(pItem) { condition.andPrepare(this.tableName + "ITEM." + this.tableName + "ITEMID", pItem, "# <> ?"); - }); + }, this); } var orderItems = db.table(condition.buildSql("select QUANTITY, PRICE, DISCOUNT, VAT, OPTIONAL from " + this.tableName + "ITEM", "1 = 0")); @@ -280,8 +285,9 @@ ItemUtils.prototype.insertPartsList = function(columns, productId, assignedTo, c columns = columns.concat(additionalProductInfo.map(function(item) {return item[0]})); var colTypes = db.getColumnTypes(table, columns); - - __itemInsertStatement(partsList.root, assignedTo, currency, relationId); + logging.log(partsList.toSource()) + // partsList[rootProdId] = root node + __itemInsertStatement(partsList[rootProdId], assignedTo, currency, relationId); if (statements.length > 0) db.inserts(statements); @@ -332,7 +338,8 @@ ItemUtils.prototype.insertPartsList = function(columns, productId, assignedTo, c statements.push([table, columns, colTypes, vals]); insertedItemIds.push(newid); - + + logging.log(p2pid) __itemInsertStatement(partsList[p2pid], newid); } } @@ -352,7 +359,7 @@ ItemUtils.prototype.deletePartsList = function(itemId) { //save address for this here to get class variables in recursive sub function __itemDeleteStatement var self = this; - + logging.log("1 " + self.tableName) var statements = []; __itemDeleteStatement(itemId); @@ -366,11 +373,15 @@ ItemUtils.prototype.deletePartsList = function(itemId) { //recursive function for building item delete statements function __itemDeleteStatement(itemId) { - var itemsToDelete = self.ItemTree[itemId].ids; + logging.log("2 " + self.tableName) + var itemsToDelete = self.ItemTree[itemId].ids; + logging.log("__ " + self.tableName) + logging.log(itemsToDelete.toSource()) for (var i = 0; i < itemsToDelete.length; i++) { //unshift due to foreign key constraints (Delete hierarchically starting at the bottom) - statements.unshift(self.getNewItemIdCondition(itemsToDelete[i]).build("1 = 2")); + logging.log("3 " + self.tableName) + statements.unshift(self.getNewItemIdCondition(itemsToDelete[i], self.tableName).build("1 = 2")); deletedItemIds.push(itemsToDelete[i]); __itemDeleteStatement(itemsToDelete[i]); } diff --git a/process/Sql_lib/process.js b/process/Sql_lib/process.js index da37e649374a882de7479bb427a8078a1e9cad0d..eb5e2391198db58a4c8409bb868c7c0c9090ef15 100644 --- a/process/Sql_lib/process.js +++ b/process/Sql_lib/process.js @@ -1,4 +1,3 @@ -import("system.logging"); import("system.translate"); import("system.vars"); import("system.db");