Skip to content
Snippets Groups Projects
Commit 9af76f54 authored by Johannes Hörmann's avatar Johannes Hörmann
Browse files

Merge branch 'master' of gitlab.adito.de:xrm/basic

parents efdc0adc 7dccabcc
No related branches found
No related tags found
No related merge requests found
Showing
with 95 additions and 88 deletions
...@@ -488,6 +488,10 @@ ...@@ -488,6 +488,10 @@
<name>ContactIds_param</name> <name>ContactIds_param</name>
<expose v="true" /> <expose v="true" />
</entityParameter> </entityParameter>
<entityParameter>
<name>ReplaceStandardAddress_param</name>
<expose v="true" />
</entityParameter>
</entityFields> </entityFields>
<recordContainers> <recordContainers>
<dbRecordContainer> <dbRecordContainer>
......
import("system.logging");
import("KeywordRegistry_basic"); import("KeywordRegistry_basic");
import("DataPrivacy_lib"); import("DataPrivacy_lib");
import("system.vars"); import("system.vars");
...@@ -22,6 +23,6 @@ else if (typeParam === "organisation") ...@@ -22,6 +23,6 @@ else if (typeParam === "organisation")
scopeType = "Organisation" scopeType = "Organisation"
new StandardObject("Address", vars.get("$local.uid"), scopeType, rowdata["ADDRESS.CONTACT_ID"]) new StandardObject("Address", vars.get("$local.uid"), scopeType, rowdata["ADDRESS.CONTACT_ID"])
.onObjectInsert() .onObjectInsert(vars.exists("$param.ReplaceStandardAddress_param") ? vars.get("$param.ReplaceStandardAddress_param") : undefined)
DataPrivacyUtils.notifyNeedDataPrivacyUpdate(rowdata["ADDRESS.CONTACT_ID"], vars.get("$param.ShowDsgvoMessage_param")); DataPrivacyUtils.notifyNeedDataPrivacyUpdate(rowdata["ADDRESS.CONTACT_ID"], vars.get("$param.ShowDsgvoMessage_param"));
\ No newline at end of file
import("Employee_lib"); import("Employee_lib");
import("system.db"); import("system.db");
import("system.result"); import("system.result");
import("Sql_lib");
var opentask = db.cell("select count(TASKID) " import("KeywordRegistry_basic");
+ " from TASK "
+ " where STATUS = 'NEW' and EDITOR_CONTACT_ID = '" + EmployeeUtils.getCurrentContactId() + "'"); var opentask = newSelect("count(TASKID)")
.from("TASK")
result.string(opentask); .where("TASK.STATUS", $KeywordRegistry.taskStatus$new())
\ No newline at end of file .and("TASK.EDITOR_CONTACT_ID", EmployeeUtils.getCurrentContactId())
.cell();
result.string(opentask || 0);
\ No newline at end of file
import("KeywordRegistry_basic");
import("Sql_lib");
import("Employee_lib"); import("Employee_lib");
import("system.db");
import("system.neon"); import("system.neon");
var taskIds = db.table("select TASKID " var taskIds = newSelect("TASKID")
+ " from TASK " .from("TASK")
+ " where STATUS = 'NEW' and EDITOR_CONTACT_ID = '" + EmployeeUtils.getCurrentContactId() + "'", "Data_alias"); .where("TASK.STATUS", $KeywordRegistry.taskStatus$new())
.and("TASK.EDITOR_CONTACT_ID", EmployeeUtils.getCurrentContactId())
.arrayColumn();
neon.openContext("Task", "TaskFilter_view", taskIds, neon.OPERATINGSTATE_SEARCH, null); neon.openContext("Task", "TaskFilter_view", taskIds, neon.OPERATINGSTATE_SEARCH, null);
\ No newline at end of file
...@@ -8,7 +8,7 @@ import("system.SQLTYPES") ...@@ -8,7 +8,7 @@ import("system.SQLTYPES")
var forecast = newSelect("sum(VOLUME)") var forecast = newSelect("sum(VOLUME)")
.from("FORECAST") .from("FORECAST")
.where("FORECAST.DATE_START", datetime.toDate(vars.get("$sys.date"), "yyyy"), "year(#) = ?", SQLTYPES.INTEGER) .where("FORECAST.DATE_START", DateUtils.getCurrentYear(), SqlBuilder.YEAR_EQUALS(), SQLTYPES.INTEGER)
.cell(); .cell();
result.string(forecast); result.string(forecast || 0);
\ No newline at end of file \ No newline at end of file
...@@ -122,11 +122,6 @@ if (fetchUsages) //this query is only necessary in Attribute, not in AttributeRe ...@@ -122,11 +122,6 @@ if (fetchUsages) //this query is only necessary in Attribute, not in AttributeRe
} }
} }
var sqlSelect = "select AB_ATTRIBUTEID, ATTRIBUTE_PARENT_ID, ATTRIBUTE_NAME, ATTRIBUTE_ACTIVE, DROPDOWNDEFINITION, DROPDOWNFILTER, SORTING, ATTRIBUTE_TYPE, "
+ KeywordUtils.getResolvedTitleSqlPart($KeywordRegistry.attributeType(), "ATTRIBUTE_TYPE") //3
+ ", '', '', '' from AB_ATTRIBUTE";
var attributes = newSelect("AB_ATTRIBUTEID, ATTRIBUTE_PARENT_ID, ATTRIBUTE_NAME, ATTRIBUTE_ACTIVE, DROPDOWNDEFINITION, DROPDOWNFILTER, SORTING, ATTRIBUTE_TYPE, " var attributes = newSelect("AB_ATTRIBUTEID, ATTRIBUTE_PARENT_ID, ATTRIBUTE_NAME, ATTRIBUTE_ACTIVE, DROPDOWNDEFINITION, DROPDOWNFILTER, SORTING, ATTRIBUTE_TYPE, "
+ KeywordUtils.getResolvedTitleSqlPart($KeywordRegistry.attributeType(), "ATTRIBUTE_TYPE") //3 + KeywordUtils.getResolvedTitleSqlPart($KeywordRegistry.attributeType(), "ATTRIBUTE_TYPE") //3
+ ", '', '', ''") + ", '', '', ''")
...@@ -136,7 +131,7 @@ var attributes = newSelect("AB_ATTRIBUTEID, ATTRIBUTE_PARENT_ID, ATTRIBUTE_NAME, ...@@ -136,7 +131,7 @@ var attributes = newSelect("AB_ATTRIBUTEID, ATTRIBUTE_PARENT_ID, ATTRIBUTE_NAME,
.table(); .table();
//TODO: attribute name caching like keywords //TODO: attribute name caching like keywords
var allNames = db.table("select AB_ATTRIBUTEID, ATTRIBUTE_PARENT_ID, ATTRIBUTE_NAME from AB_ATTRIBUTE"); var allNames = newSelect("AB_ATTRIBUTEID, ATTRIBUTE_PARENT_ID, ATTRIBUTE_NAME").from("AB_ATTRIBUTE").table();
var attrNameData = {}; var attrNameData = {};
for (let i = 0, l = allNames.length; i < l; i++) for (let i = 0, l = allNames.length; i < l; i++)
{ {
......
import("system.vars"); import("system.vars");
import("Sql_lib"); import("Sql_lib");
import("system.db");
import("system.result"); import("system.result");
if (vars.get("$this.value")) if (vars.get("$this.value"))
result.string(newSelect("NAME") result.string(newSelect("NAME")
.from("BULKMAIL") .from("BULKMAIL")
.where("BULKMAIL.BULKMAILID", "$this.value") .where("BULKMAIL.BULKMAILID", "$this.value")
.buildSql("select NAME from BULKMAIL")
.cell()); .cell());
else else
result.string(""); result.string("");
\ No newline at end of file
...@@ -113,6 +113,7 @@ ...@@ -113,6 +113,7 @@
</entityConsumer> </entityConsumer>
<entityField> <entityField>
<name>bindata</name> <name>bindata</name>
<title>Custom template</title>
<contentType>FILE</contentType> <contentType>FILE</contentType>
<valueProcess>%aditoprj%/entity/BulkMail_entity/entityfields/bindata/valueProcess.js</valueProcess> <valueProcess>%aditoprj%/entity/BulkMail_entity/entityfields/bindata/valueProcess.js</valueProcess>
<onValueChange>%aditoprj%/entity/BulkMail_entity/entityfields/bindata/onValueChange.js</onValueChange> <onValueChange>%aditoprj%/entity/BulkMail_entity/entityfields/bindata/onValueChange.js</onValueChange>
......
import("Sql_lib");
import("system.result"); import("system.result");
import("system.vars"); import("system.vars");
var resultValue; var condition = newWhere()
if(vars.get("$param.CampaignId_param") != null && vars.get("$param.CampaignId_param") != "") .andIfSet("CAMPAIGNPARTICIPANT.CAMPAIGN_ID", "$param.CampaignId_param")
{ .andIfSet("CAMPAIGNPARTICIPANT.CAMPAIGNSTEP_ID", "$param.CampaignStepId_param");
resultValue = "CAMPAIGN_ID = '" + vars.get("$param.CampaignId_param") + "'";
result.string(condition.toString());
if(vars.get("$param.CampaignStepId_param") != null && vars.get("$param.CampaignStepId_param") != "")
resultValue += " AND CAMPAIGNSTEP_ID = '" + vars.get("$param.CampaignStepId_param") + "'";
result.string(resultValue);
}
else if(vars.get("$param.CampaignStepId_param") != null && vars.get("$param.CampaignStepId_param") != "")
{
resultValue = "CAMPAIGNSTEP_ID = '" + vars.get("$param.CampaignStepId_param") + "'";
result.string(resultValue);
}
\ No newline at end of file
import("system.db"); import("Sql_lib");
import("system.neon"); import("system.neon");
import("system.vars"); import("system.vars");
import("system.util"); import("system.util");
...@@ -7,8 +7,9 @@ import("system.result"); ...@@ -7,8 +7,9 @@ import("system.result");
if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW) if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW)
{ {
var campaignId = vars.get("$field.CAMPAIGN_ID"); var campaignId = vars.get("$field.CAMPAIGN_ID");
var latestSortingQuery = "select COUNT(CAMPAIGNSTEPID) from CAMPAIGNSTEP " + var stepCount = newSelect("count(CAMPAIGNSTEPID)")
"where CAMPAIGN_ID = '" + campaignId + "'"; .from("CAMPAINGSTEP")
var stepCount = db.cell(latestSortingQuery); .where("CAMPAIGNSTEP.CAMPAIGN_ID", campaignId)
.cell();
result.string(parseInt(stepCount) + 1); result.string(parseInt(stepCount) + 1);
} }
\ No newline at end of file
...@@ -7,5 +7,5 @@ import("system.vars"); ...@@ -7,5 +7,5 @@ import("system.vars");
if(vars.get("$param.ShowOnlyCurrentUsersCampaigns_param") == 'true') if(vars.get("$param.ShowOnlyCurrentUsersCampaigns_param") == 'true')
{ {
//TODO: use a preparedCondition (.build instead of .translate) when available #1030812 #1034026 //TODO: use a preparedCondition (.build instead of .translate) when available #1030812 #1034026
result.string("CAMPAIGN.EMPLOYEE_CONTACT_ID = '" + EmployeeUtils.getCurrentContactId() + "'"); result.string(newWhere("CAMPAIGN.EMPLOYEE_CONTACT_ID", EmployeeUtils.getCurrentContactId()).toString());
} }
\ No newline at end of file
import("Sql_lib");
import("system.result"); import("system.result");
import("system.vars"); import("system.vars");
if(vars.exists("$param.ContactId_param") && vars.get("$param.ContactId_param") != null && vars.get("$param.ContactId_param") != "") var condition = newWhere();
result.string("CONTRACT.CONTACT_ID = ('" + vars.getString("$param.ContactId_param") + "')"); if (vars.exists("$param.ContactId_param"))
else condition.andIfSet("CONTRACT.CONTACT_ID", "$param.ContactId_param");
result.string("1 = 1");
\ No newline at end of file result.string(condition.toString("1=1"));
\ No newline at end of file
import("system.vars"); import("system.vars");
import("system.result"); import("system.result");
if(vars.get("$param.DuplicateScannerId_param")) if (vars.get("$param.DuplicateScannerId_param"))
{ result.string(newWhere("DUPLICATESCANNERINDEXCONFIG.DUPLICATESCANNER_ID", "$param.DuplicateScannerId_param").toString());
result.string("DUPLICATESCANNER_ID = '" + vars.getString("$param.DuplicateScannerId_param") + "'"); \ No newline at end of file
}
\ No newline at end of file
import("system.vars"); import("system.vars");
import("system.result"); import("system.result");
if(vars.get("$param.DuplicateScannerId_param")) if (vars.get("$param.DuplicateScannerId_param"))
{ result.string(newWhere("DUPLICATESCANNERPREFILTERCONFIG.DUPLICATESCANNER_ID", "$param.DuplicateScannerId_param").toString());
result.string("DUPLICATESCANNER_ID = '" + vars.getString("$param.DuplicateScannerId_param") + "'"); \ No newline at end of file
}
\ No newline at end of file
import("system.vars"); import("system.vars");
import("system.result"); import("system.result");
if(vars.get("$param.DuplicateScannerId_param")) if (vars.get("$param.DuplicateScannerId_param"))
{ result.string(newWhere("DUPLICATESCANNERRESULTFIELDCONFIG.DUPLICATESCANNER_ID", "$param.DuplicateScannerId_param").toString());
result.string("DUPLICATESCANNER_ID = '" + vars.getString("$param.DuplicateScannerId_param") + "'"); \ No newline at end of file
}
\ No newline at end of file
...@@ -65,6 +65,7 @@ ...@@ -65,6 +65,7 @@
</entityParameter> </entityParameter>
<entityField> <entityField>
<name>bindata</name> <name>bindata</name>
<title>Custom template</title>
<contentType>FILE</contentType> <contentType>FILE</contentType>
</entityField> </entityField>
<entityActionField> <entityActionField>
......
import("system.result"); import("system.result");
import("system.vars"); import("system.vars");
var type = vars.get("$field.attributeType"); var value = vars.get("$this.value");
var value; if (!value)
switch (type)
{ {
case "BOOL_VALUE": var type = vars.get("$field.attributeType");
value = vars.get("$field.BOOL_VALUE"); switch (type)
break; {
case "NUMBER_VALUE": case "BOOL_VALUE":
value = vars.get("$field.NUMBER_VALUE"); value = vars.get("$field.BOOL_VALUE");
break; break;
case "CHAR_VALUE": case "NUMBER_VALUE":
value = vars.get("$field.CHAR_VALUE"); value = vars.get("$field.NUMBER_VALUE");
break; break;
case "LONG_CHAR_VALUE": case "CHAR_VALUE":
value = vars.get("$field.LONG_CHAR_VALUE"); value = vars.get("$field.CHAR_VALUE");
break; break;
default: case "LONG_CHAR_VALUE":
value = null; value = vars.get("$field.LONG_CHAR_VALUE");
break; break;
default:
value = null;
break;
}
} }
result.string(value); result.string(value);
\ No newline at end of file
...@@ -38,6 +38,7 @@ ...@@ -38,6 +38,7 @@
</entityParameter> </entityParameter>
<entityField> <entityField>
<name>bindata</name> <name>bindata</name>
<title>Custom template</title>
<contentType>FILE</contentType> <contentType>FILE</contentType>
</entityField> </entityField>
<entityActionField> <entityActionField>
......
import("Sql_lib");
import("system.neon"); import("system.neon");
import("system.vars"); import("system.vars");
import("system.db");
import("Util_lib"); import("Util_lib");
import("Entity_lib"); import("Entity_lib");
var contactid = vars.get("local.value"); var contactid = vars.get("local.value");
if(contactid != "")
{ var relData = newSelect("ISOLANGUAGE")
var relData = db.array(db.ROW, "select ISOLANGUAGE from CONTACT where CONTACTID = '" + contactid + "'"); .from("CONTACT")
.whereIfSet("CONTACT.CONTACTID", contactid)
if(relData[0] != "") .cell(true);
vars.set("$field.ISOLANGUAGE", relData[0]);
} if(relData)
vars.set("$field.ISOLANGUAGE", relData[0]);
neon.setFieldValue("$field.OBJECT_ROWID", null) neon.setFieldValue("$field.OBJECT_ROWID", null)
\ No newline at end of file
import("Context_lib");
import("Sql_lib");
import("system.result"); import("system.result");
import("system.vars"); import("system.vars");
import("system.db");
var amount = db.cell("select count(ACTIVITYID) from ACTIVITY join ACTIVITYLINK on ACTIVITYLINK.ACTIVITY_ID = ACTIVITY.ACTIVITYID \n\
where ACTIVITYLINK.OBJECT_ROWID = '" + vars.get("$field.CONTACTID") + "' and ACTIVITYLINK.OBJECT_TYPE = 'Organisation'");
var amount = newSelect("count(ACTIVITYID)")
.from("ACTIVITY")
.join("ACTIVITYLINK", "ACTIVITYLINK.ACTIVITY_ID = ACTIVITY.ACTIVITYID")
.where("ACTIVITYLINK.OBJECT_ROWID", "$field.CONTACTID")
.and("ACTIVITYLINK.OBJECT_TYPE", ContextUtils.getCurrentContextId())
.cell(null, "0");
result.string(amount); result.string(amount);
\ No newline at end of file
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