Newer
Older
import("DataPrivacy_lib");
import("Sql_lib");
import("system.util");
import("system.db");
import("system.vars");
import("Attribute_lib");
var rowdata = vars.get("$local.rowdata");
var attributeId = rowdata["AB_ATTRIBUTE_ID.value"]
var type = AttributeUtil.getAttributeType(attributeId);
var attributeRelationId = vars.getString("$param.ShowEmpty_param") == "true"
? JSON.parse(vars.get("$local.uid"))[0]
: vars.get("$local.uid");
if (vars.getString("$param.ShowEmpty_param") == "true" && !rowdata["AB_ATTRIBUTERELATIONID.value"])
"AB_ATTRIBUTERELATIONID",
"AB_ATTRIBUTE_ID",
"OBJECT_ROWID",
"OBJECT_TYPE",
"DATE_NEW",
"USER_NEW"
];
attributeRelationId,
vars.get("$param.ObjectRowId_param"),
vars.get("$param.ObjectType_param"),
vars.get("$sys.date"),
vars.get("$sys.user")
];
var valueField = AttributeTypeUtil.getDatabaseField(type);
if (valueField)
{
columns.push(valueField);
if (AttributeTypeUtil.useLookup(type))
values.push(rowdata["VALUE_LOOKUP.value"])
else
values.push(rowdata["VALUE.value"]);
}
db.insertData("AB_ATTRIBUTERELATION", columns, null, values);
else
{
var fieldValues = {
"AB_ATTRIBUTE_ID" : attributeId,
"DATE_EDIT" : rowdata["DATE_EDIT.value"],
"USER_EDIT" : rowdata["USER_EDIT.value"]
};
var dbFields = AttributeTypeUtil.getAllDatabaseFields();
dbFields.forEach(function (row)
{
fieldValues[row] = ""; //set every field but the correct value field to null
});
fieldValues[AttributeTypeUtil.getDatabaseField(type)] = AttributeTypeUtil.useLookup(type)
? rowdata["VALUE_LOOKUP.value"]
: rowdata["VALUE.value"];
newWhere("AB_ATTRIBUTERELATION.AB_ATTRIBUTERELATIONID", attributeRelationId)
.updateFields(fieldValues);
}
if (vars.get("$param.ObjectType_param") == "Person")
DataPrivacyUtils.notifyNeedDataPrivacyUpdate(vars.get("$param.ObjectRowId_param"), vars.get("$param.ShowDsgvoMessage_param"));