From 2c8e164d1b532fbacacf493858ce354759f33b15 Mon Sep 17 00:00:00 2001 From: Johannes Hoermann <j.hoermann@adito.de> Date: Tue, 19 Feb 2019 14:51:30 +0100 Subject: [PATCH] =?UTF-8?q?Erste=20version=20f=C3=BCr=20Treetable=20in=20O?= =?UTF-8?q?bjectrelations?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ObjectRelation_entity.aod | 3 +++ .../anytargetrowid/displayValueProcess.js | 9 +++++++++ .../anytargettype/displayValueProcess.js | 8 ++++++++ .../anytargettype/valueProcess.js | 3 +++ .../AnyObjectRelationTree_view0.aod | 19 ++++++++++++++++++ .../ObjectRelationFilter_view.aod | 20 +++++++++++++++++-- 6 files changed, 60 insertions(+), 2 deletions(-) create mode 100644 entity/ObjectRelation_entity/entityfields/anytargetrowid/displayValueProcess.js create mode 100644 entity/ObjectRelation_entity/entityfields/anytargettype/displayValueProcess.js create mode 100644 neonView/AnyObjectRelationTree_view0/AnyObjectRelationTree_view0.aod diff --git a/entity/ObjectRelation_entity/ObjectRelation_entity.aod b/entity/ObjectRelation_entity/ObjectRelation_entity.aod index 0415c0ddb3..a871a2e086 100644 --- a/entity/ObjectRelation_entity/ObjectRelation_entity.aod +++ b/entity/ObjectRelation_entity/ObjectRelation_entity.aod @@ -313,10 +313,13 @@ <entityField> <name>AnyTargetRowid</name> <valueProcess>%aditoprj%/entity/ObjectRelation_entity/entityfields/anytargetrowid/valueProcess.js</valueProcess> + <displayValueProcess>%aditoprj%/entity/ObjectRelation_entity/entityfields/anytargetrowid/displayValueProcess.js</displayValueProcess> </entityField> <entityField> <name>AnyTargetType</name> + <groupable v="true" /> <valueProcess>%aditoprj%/entity/ObjectRelation_entity/entityfields/anytargettype/valueProcess.js</valueProcess> + <displayValueProcess>%aditoprj%/entity/ObjectRelation_entity/entityfields/anytargettype/displayValueProcess.js</displayValueProcess> </entityField> </entityFields> <recordContainers> diff --git a/entity/ObjectRelation_entity/entityfields/anytargetrowid/displayValueProcess.js b/entity/ObjectRelation_entity/entityfields/anytargetrowid/displayValueProcess.js new file mode 100644 index 0000000000..a99df2a0b5 --- /dev/null +++ b/entity/ObjectRelation_entity/entityfields/anytargetrowid/displayValueProcess.js @@ -0,0 +1,9 @@ +import("system.db"); +import("system.result"); +import("system.vars"); +import("Context_lib"); + +if (vars.exists("$field.AnyTargetType") && vars.get("$field.AnyTargetType") && vars.exists("$field.AnyTargetRowid") && vars.get("$field.AnyTargetRowid")) +{ + result.string(db.cell(ContextUtils.getNameSql(vars.get("$field.AnyTargetType"), vars.get("$field.AnyTargetRowid")))); +} diff --git a/entity/ObjectRelation_entity/entityfields/anytargettype/displayValueProcess.js b/entity/ObjectRelation_entity/entityfields/anytargettype/displayValueProcess.js new file mode 100644 index 0000000000..f1a57bdf9e --- /dev/null +++ b/entity/ObjectRelation_entity/entityfields/anytargettype/displayValueProcess.js @@ -0,0 +1,8 @@ +import("system.project"); +import("system.result"); +import("system.vars"); + +if (vars.exists("$field.AnyTargetType") && vars.get("$field.AnyTargetType")) +{ + result.string(project.getDataModel(project.DATAMODEL_KIND_CONTEXT, vars.get("$field.AnyTargetType"))[1]); +} \ No newline at end of file diff --git a/entity/ObjectRelation_entity/entityfields/anytargettype/valueProcess.js b/entity/ObjectRelation_entity/entityfields/anytargettype/valueProcess.js index c8dd2fb8c6..8635bcb684 100644 --- a/entity/ObjectRelation_entity/entityfields/anytargettype/valueProcess.js +++ b/entity/ObjectRelation_entity/entityfields/anytargettype/valueProcess.js @@ -1,3 +1,4 @@ +import("system.logging"); import("system.result"); import("system.vars"); @@ -14,11 +15,13 @@ if (vars.exists("$param.AnyObjectType_param") && vars.get("$param.AnyObjectType_ // anyObject and object 1 == opened object --> target is object2 if (vars.get("$field.OBJECT1_ROWID") == openedRowid && vars.get("$field.OBJECT1_TYPE") == openedType) { + logging.log(vars.get("$field.OBJECT2_TYPE")) result.string(vars.get("$field.OBJECT2_TYPE")); } // anyObject and object 2 == opened object --> target is object1 else if (vars.get("$field.OBJECT2_ROWID") == openedRowid && vars.get("$field.OBJECT2_TYPE") == openedType) { + logging.log(vars.get("$field.OBJECT1_TYPE")) result.string(vars.get("$field.OBJECT1_TYPE")); } } diff --git a/neonView/AnyObjectRelationTree_view0/AnyObjectRelationTree_view0.aod b/neonView/AnyObjectRelationTree_view0/AnyObjectRelationTree_view0.aod new file mode 100644 index 0000000000..dfe764020a --- /dev/null +++ b/neonView/AnyObjectRelationTree_view0/AnyObjectRelationTree_view0.aod @@ -0,0 +1,19 @@ +<?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>AnyObjectRelationTree_view0</name> + <majorModelMode>DISTRIBUTED</majorModelMode> + <layout> + <boxLayout> + <name>layout</name> + </boxLayout> + </layout> + <children> + <treetableViewTemplate> + <name>AnyObjectRelations</name> + <parentField>AnyTargetType</parentField> + <titleField>AnyTargetRowid</titleField> + <entityField>#ENTITY</entityField> + <title></title> + </treetableViewTemplate> + </children> +</neonView> diff --git a/neonView/ObjectRelationFilter_view/ObjectRelationFilter_view.aod b/neonView/ObjectRelationFilter_view/ObjectRelationFilter_view.aod index 167f255e11..03a8e62f1c 100644 --- a/neonView/ObjectRelationFilter_view/ObjectRelationFilter_view.aod +++ b/neonView/ObjectRelationFilter_view/ObjectRelationFilter_view.aod @@ -2,10 +2,11 @@ <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>ObjectRelationFilter_view</name> <majorModelMode>DISTRIBUTED</majorModelMode> + <filterable v="true" /> <layout> - <boxLayout> + <groupLayout> <name>layout</name> - </boxLayout> + </groupLayout> </layout> <children> <tableViewTemplate> @@ -34,7 +35,22 @@ <width v="75" /> <expandRatio v="100" /> </neonTableColumn> + <neonTableColumn> + <name>005ef2d6-114c-47e8-8db5-bb6f43a1f90a</name> + <entityField>AnyTargetType</entityField> + </neonTableColumn> + <neonTableColumn> + <name>384871e1-206e-4f48-b907-60bdda93957a</name> + <entityField>AnyTargetRowid</entityField> + </neonTableColumn> </columns> </tableViewTemplate> + <treetableViewTemplate> + <name>AnyObjectRelations</name> + <favoriteActionGroup2></favoriteActionGroup2> + <titleField>AnyTargetType</titleField> + <descriptionField>AnyTargetRowid</descriptionField> + <entityField>#ENTITY</entityField> + </treetableViewTemplate> </children> </neonView> -- GitLab