Skip to content
Snippets Groups Projects
Commit f6b61aff authored by S.Listl's avatar S.Listl
Browse files

Objectselection attributes with lookup

parent 1a3b2136
No related branches found
No related tags found
No related merge requests found
Showing
with 164 additions and 23 deletions
...@@ -79,6 +79,14 @@ ...@@ -79,6 +79,14 @@
<entityProvider> <entityProvider>
<name>#PROVIDER</name> <name>#PROVIDER</name>
<recordContainer>db</recordContainer> <recordContainer>db</recordContainer>
<dependencies>
<entityDependency>
<name>3ea70130-21b0-42ec-88e2-1a898059dcff</name>
<entityName>ObjectProxy_entity</entityName>
<fieldName>Activities</fieldName>
<isConsumer v="false" />
</entityDependency>
</dependencies>
</entityProvider> </entityProvider>
<entityField> <entityField>
<name>ICON</name> <name>ICON</name>
......
...@@ -69,6 +69,12 @@ ...@@ -69,6 +69,12 @@
<fieldName>Contacts</fieldName> <fieldName>Contacts</fieldName>
<isConsumer v="false" /> <isConsumer v="false" />
</entityDependency> </entityDependency>
<entityDependency>
<name>60518a9f-eaa5-4af8-8cd6-4276047f4371</name>
<entityName>ObjectProxy_entity</entityName>
<fieldName>Contacts</fieldName>
<isConsumer v="false" />
</entityDependency>
</dependencies> </dependencies>
</entityProvider> </entityProvider>
<entityField> <entityField>
......
...@@ -294,6 +294,41 @@ ...@@ -294,6 +294,41 @@
<name>GetTheme_param</name> <name>GetTheme_param</name>
<expose v="true" /> <expose v="true" />
</entityParameter> </entityParameter>
<entityField>
<name>VALUE_LOOKUP</name>
<title>Value</title>
<consumer>Objects</consumer>
<contentTypeProcess>%aditoprj%/entity/AttributeRelation_entity/entityfields/value_lookup/contentTypeProcess.js</contentTypeProcess>
<mandatoryProcess>%aditoprj%/entity/AttributeRelation_entity/entityfields/value_lookup/mandatoryProcess.js</mandatoryProcess>
<stateProcess>%aditoprj%/entity/AttributeRelation_entity/entityfields/value_lookup/stateProcess.js</stateProcess>
<displayValueProcess>%aditoprj%/entity/AttributeRelation_entity/entityfields/value_lookup/displayValueProcess.js</displayValueProcess>
</entityField>
<entityConsumer>
<name>Objects</name>
<dependency>
<name>dependency</name>
<entityName>ObjectProxy_entity</entityName>
<fieldName>FilteredObjects</fieldName>
</dependency>
<children>
<entityParameter>
<name>Entity_param</name>
<valueProcess>%aditoprj%/entity/AttributeRelation_entity/entityfields/objects/children/entity_param/valueProcess.js</valueProcess>
</entityParameter>
<entityParameter>
<name>Filter_param</name>
<valueProcess>%aditoprj%/entity/AttributeRelation_entity/entityfields/objects/children/filter_param/valueProcess.js</valueProcess>
</entityParameter>
</children>
</entityConsumer>
<entityField>
<name>DROPDOWNDEFINITION</name>
<valueProcess>%aditoprj%/entity/AttributeRelation_entity/entityfields/dropdowndefinition/valueProcess.js</valueProcess>
</entityField>
<entityField>
<name>DROPDOWNFILTER</name>
<valueProcess>%aditoprj%/entity/AttributeRelation_entity/entityfields/dropdownfilter/valueProcess.js</valueProcess>
</entityField>
</entityFields> </entityFields>
<recordContainers> <recordContainers>
<jDitoRecordContainer> <jDitoRecordContainer>
...@@ -340,6 +375,18 @@ ...@@ -340,6 +375,18 @@
<jDitoRecordFieldMapping> <jDitoRecordFieldMapping>
<name>USER_EDIT.value</name> <name>USER_EDIT.value</name>
</jDitoRecordFieldMapping> </jDitoRecordFieldMapping>
<jDitoRecordFieldMapping>
<name>VALUE_LOOKUP.value</name>
</jDitoRecordFieldMapping>
<jDitoRecordFieldMapping>
<name>VALUE_LOOKUP.displayValue</name>
</jDitoRecordFieldMapping>
<jDitoRecordFieldMapping>
<name>DROPDOWNDEFINITION.value</name>
</jDitoRecordFieldMapping>
<jDitoRecordFieldMapping>
<name>DROPDOWNFILTER.value</name>
</jDitoRecordFieldMapping>
</recordFieldMappings> </recordFieldMappings>
</jDitoRecordContainer> </jDitoRecordContainer>
</recordContainers> </recordContainers>
......
import("system.result");
import("Sql_lib");
result.string(newSelect("DROPDOWNDEFINITION")
.from("AB_ATTRIBUTE")
.where("AB_ATTRIBUTE.AB_ATTRIBUTEID", "$field.AB_ATTRIBUTE_ID")
.cell());
\ No newline at end of file
import("system.result");
import("Sql_lib");
result.string(newSelect("DROPDOWNFILTER")
.from("AB_ATTRIBUTE")
.where("AB_ATTRIBUTE.AB_ATTRIBUTEID", "$field.AB_ATTRIBUTE_ID")
.cell());
\ No newline at end of file
import("Attribute_lib");
import("system.vars");
import("system.result");
if (AttributeTypeUtil.useLookup(vars.get("$field.ATTRIBUTE_TYPE")))
result.string(vars.get("$field.DROPDOWNDEFINITION"));
else
result.string("");
\ No newline at end of file
import("system.vars");
import("system.result");
var filter = vars.get("$field.DROPDOWNFILTER");
if (filter)
{
filter = JSON.parse(filter);
result.string(JSON.stringify(filter.filter));
}
\ No newline at end of file
import("Context_lib");
import("system.db");
import("system.result"); import("system.result");
import("system.vars"); import("system.vars");
import("Attribute_lib"); import("Attribute_lib");
import("Keyword_lib");
import("system.tools");
import("Sql_lib");
var attrType = vars.get("$field.ATTRIBUTE_TYPE"); result.string(AttributeTypeUtil.getAttributeViewValue(vars.get("$field.ATTRIBUTE_TYPE"), vars.get("$field.VALUE"), vars.get("$field.DROPDOWNDEFINITION")));
var dropDownDef = newSelect("DROPDOWNDEFINITION")
.from("AB_ATTRIBUTE")
.whereIfSet("AB_ATTRIBUTE.AB_ATTRIBUTEID", "$field.AB_ATTRIBUTE_ID")
.cell();
result.string(AttributeTypeUtil.getAttributeViewValue(attrType, vars.get("$field.VALUE"), dropDownDef));
...@@ -9,5 +9,7 @@ import("Sql_lib"); ...@@ -9,5 +9,7 @@ import("Sql_lib");
var attributeId = vars.get("$field.AB_ATTRIBUTE_ID"); var attributeId = vars.get("$field.AB_ATTRIBUTE_ID");
var attrType = vars.get("$field.ATTRIBUTE_TYPE"); var attrType = vars.get("$field.ATTRIBUTE_TYPE");
var res = AttributeUtil.getPossibleListValues(attributeId, attrType); var res = null;
if (!AttributeTypeUtil.useLookup(attrType))
res = AttributeUtil.getPossibleListValues(attributeId, attrType);
result.object(res); result.object(res);
\ No newline at end of file
...@@ -4,4 +4,4 @@ import("Attribute_lib"); ...@@ -4,4 +4,4 @@ import("Attribute_lib");
var attributeType = vars.get("$field.ATTRIBUTE_TYPE"); var attributeType = vars.get("$field.ATTRIBUTE_TYPE");
var contentType = AttributeTypeUtil.getContentType(attributeType); var contentType = AttributeTypeUtil.getContentType(attributeType);
result.string(contentType != null && contentType != "BOOLEAN"); result.string(!AttributeTypeUtil.useLookup(attributeType) && contentType != null && contentType != "BOOLEAN");
\ No newline at end of file \ No newline at end of file
...@@ -4,9 +4,11 @@ import("system.result"); ...@@ -4,9 +4,11 @@ import("system.result");
import("Attribute_lib"); import("Attribute_lib");
var attributeType = vars.get("$field.ATTRIBUTE_TYPE"); var attributeType = vars.get("$field.ATTRIBUTE_TYPE");
result.string(AttributeTypeUtil.getContentType(attributeType));
var fieldState; var fieldState;
if (AttributeTypeUtil.getContentType(attributeType) != null) if (AttributeTypeUtil.useLookup(attributeType))
fieldState = neon.COMPONENTSTATE_INVISIBLE;
else if (AttributeTypeUtil.getContentType(attributeType) != null)
fieldState = neon.COMPONENTSTATE_EDITABLE; fieldState = neon.COMPONENTSTATE_EDITABLE;
else else
fieldState = neon.COMPONENTSTATE_READONLY; fieldState = neon.COMPONENTSTATE_READONLY;
......
import("system.vars");
import("system.result");
import("Attribute_lib");
var attributeType = vars.get("$field.ATTRIBUTE_TYPE");
result.string(AttributeTypeUtil.getContentType(attributeType));
\ No newline at end of file
import("system.result");
import("system.vars");
import("Attribute_lib");
result.string(AttributeTypeUtil.getAttributeViewValue(vars.get("$field.ATTRIBUTE_TYPE"), vars.get("$field.VALUE_LOOKUP"), vars.get("$field.DROPDOWNDEFINITION")));
import("system.vars");
import("system.result");
import("Attribute_lib");
result.string(AttributeTypeUtil.useLookup(vars.get("$field.ATTRIBUTE_TYPE")));
\ No newline at end of file
import("system.neon");
import("system.vars");
import("system.result");
import("Attribute_lib");
var fieldState;
if (AttributeTypeUtil.useLookup(vars.get("$field.ATTRIBUTE_TYPE")))
fieldState = neon.COMPONENTSTATE_EDITABLE;
else
fieldState = neon.COMPONENTSTATE_INVISIBLE;
result.string(fieldState);
\ No newline at end of file
...@@ -28,7 +28,8 @@ var defaultFields = [ ...@@ -28,7 +28,8 @@ var defaultFields = [
"AB_ATTRIBUTERELATION.DATE_NEW", "AB_ATTRIBUTERELATION.DATE_NEW",
"AB_ATTRIBUTERELATION.USER_NEW", "AB_ATTRIBUTERELATION.USER_NEW",
"AB_ATTRIBUTERELATION.DATE_EDIT", "AB_ATTRIBUTERELATION.DATE_EDIT",
"AB_ATTRIBUTERELATION.USER_EDIT" "AB_ATTRIBUTERELATION.USER_EDIT",
"AB_ATTRIBUTE.DROPDOWNFILTER"
]; ];
//these fields hold the attributeRelation value, depending on the attribute type //these fields hold the attributeRelation value, depending on the attribute type
...@@ -139,7 +140,7 @@ if (getTree) ...@@ -139,7 +140,7 @@ if (getTree)
var attrRelations = attributeSql.table(true).map( var attrRelations = attributeSql.table(true).map(
function (row) function (row)
{ {
var [attrRelId, attrId, attrParentId, attrType, attrName, dropDownDef, comboViewVal, dateNew, userNew, dateEdit, userEdit] = row; var [attrRelId, attrId, attrParentId, attrType, attrName, dropDownDef, comboViewVal, dateNew, userNew, dateEdit, userEdit, dropDownFilter] = row;
attrName = translate.text(attrName); attrName = translate.text(attrName);
attrType = attrType.trim(); attrType = attrType.trim();
if (!getTree && !displaySimpleName && attrParentId) if (!getTree && !displaySimpleName && attrParentId)
...@@ -171,7 +172,11 @@ var attrRelations = attributeSql.table(true).map( ...@@ -171,7 +172,11 @@ var attrRelations = attributeSql.table(true).map(
dateNew, dateNew,
userNew, userNew,
dateEdit, dateEdit,
userEdit userEdit,
value,
viewValue,
dropDownDef,
dropDownFilter
]; ];
} }
); );
......
...@@ -29,7 +29,10 @@ var valueField = AttributeTypeUtil.getDatabaseField(type); ...@@ -29,7 +29,10 @@ var valueField = AttributeTypeUtil.getDatabaseField(type);
if (valueField) if (valueField)
{ {
columns.push(valueField); columns.push(valueField);
values.push(rowdata["VALUE.value"]); if (AttributeTypeUtil.useLookup(type))
values.push(rowdata["VALUE_LOOKUP.value"])
else
values.push(rowdata["VALUE.value"]);
} }
db.insertData("AB_ATTRIBUTERELATION", columns, null, values); db.insertData("AB_ATTRIBUTERELATION", columns, null, values);
......
...@@ -31,9 +31,12 @@ if (uid.length === 1) ...@@ -31,9 +31,12 @@ if (uid.length === 1)
columns.push(row); columns.push(row);
values.push(""); //set every field but the correct value field to null values.push(""); //set every field but the correct value field to null
}); });
values[AttributeTypeUtil.getTypeColumnIndex(type) + 3] = rowdata["VALUE.value"]; if (AttributeTypeUtil.useLookup(type))
values[AttributeTypeUtil.getTypeColumnIndex(type) + 3] = rowdata["VALUE_LOOKUP.value"];
else
values[AttributeTypeUtil.getTypeColumnIndex(type) + 3] = rowdata["VALUE.value"];
newWhere("AB_ATTRIBUTERELATION.AB_ATTRIBUTERELATIONID", vars.get("$local.uid")) newWhere("AB_ATTRIBUTERELATION.AB_ATTRIBUTERELATIONID", "$local.uid")
.updateData(true, "AB_ATTRIBUTERELATION", columns, null, values); .updateData(true, "AB_ATTRIBUTERELATION", columns, null, values);
} }
else else
...@@ -59,7 +62,10 @@ else ...@@ -59,7 +62,10 @@ else
if (valueField) if (valueField)
{ {
columns.push(valueField); columns.push(valueField);
values.push(vars.get("$field.VALUE")); if (AttributeTypeUtil.useLookup(type))
values.push(rowdata["VALUE_LOOKUP.value"])
else
values.push(rowdata["VALUE.value"]);
} }
db.insertData("AB_ATTRIBUTERELATION", columns, null, values); db.insertData("AB_ATTRIBUTERELATION", columns, null, values);
} }
......
...@@ -20,6 +20,12 @@ ...@@ -20,6 +20,12 @@
<fieldName>ActivityAtrributes</fieldName> <fieldName>ActivityAtrributes</fieldName>
<isConsumer v="false" /> <isConsumer v="false" />
</entityDependency> </entityDependency>
<entityDependency>
<name>42e6f528-8452-4262-97bd-68e8cbe99c74</name>
<entityName>ObjectProxy_entity</entityName>
<fieldName>Attributes</fieldName>
<isConsumer v="false" />
</entityDependency>
</dependencies> </dependencies>
</entityProvider> </entityProvider>
<entityField> <entityField>
......
...@@ -14,6 +14,14 @@ ...@@ -14,6 +14,14 @@
<entityFields> <entityFields>
<entityProvider> <entityProvider>
<name>#PROVIDER</name> <name>#PROVIDER</name>
<dependencies>
<entityDependency>
<name>4ef3e311-d2b2-45bf-8f82-7f9ae7e107a9</name>
<entityName>ObjectProxy_entity</entityName>
<fieldName>Bulkmails</fieldName>
<isConsumer v="false" />
</entityDependency>
</dependencies>
</entityProvider> </entityProvider>
<entityField> <entityField>
<name>BULKMAILID</name> <name>BULKMAILID</name>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment