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

Merge origin/master

Conflicts:
	others/db_changes/masterChangelog.xml
parents 45c1bd00 0c6e6729
No related branches found
No related tags found
No related merge requests found
Showing
with 582 additions and 2 deletions
......@@ -543,7 +543,7 @@
<columnType v="93" />
<size v="29" />
<scale v="9" />
<notNull v="false" />
<notNull v="true" />
<isUnique v="false" />
<index v="false" />
<title></title>
......@@ -556,7 +556,7 @@
<columnType v="12" />
<size v="50" />
<scale v="0" />
<notNull v="false" />
<notNull v="true" />
<isUnique v="false" />
<index v="false" />
<title></title>
......@@ -4859,6 +4859,249 @@
</entityFieldDb>
</entityFields>
</entityDb>
<entityDb>
<name>TASK</name>
<dbName></dbName>
<idColumn>TASKID</idColumn>
<idGeneratorType v="0" />
<idGeneratorInterval v="1" />
<title></title>
<description></description>
<auditSyncConfig>
<name>auditSyncConfig</name>
<auditMode v="0" />
<syncActive v="false" />
<syncComplete v="true" />
<syncDirection v="1" />
<syncIds></syncIds>
</auditSyncConfig>
<entityFields>
<entityFieldDb>
<name>DATE_EDIT</name>
<dbName></dbName>
<primaryKey v="false" />
<columnType v="93" />
<size v="29" />
<scale v="9" />
<notNull v="false" />
<isUnique v="false" />
<index v="false" />
<documentation></documentation>
<title></title>
<description></description>
</entityFieldDb>
<entityFieldDb>
<name>PRIORITY</name>
<dbName></dbName>
<primaryKey v="false" />
<columnType v="5" />
<size v="5" />
<scale v="0" />
<notNull v="false" />
<isUnique v="false" />
<index v="false" />
<documentation></documentation>
<title></title>
<description></description>
</entityFieldDb>
<entityFieldDb>
<name>MATURITY_DATE</name>
<dbName></dbName>
<primaryKey v="false" />
<columnType v="93" />
<size v="29" />
<scale v="9" />
<notNull v="false" />
<isUnique v="false" />
<index v="false" />
<documentation></documentation>
<title></title>
<description></description>
</entityFieldDb>
<entityFieldDb>
<name>USER_EDIT</name>
<dbName></dbName>
<primaryKey v="false" />
<columnType v="12" />
<size v="50" />
<scale v="0" />
<notNull v="false" />
<isUnique v="false" />
<index v="false" />
<documentation></documentation>
<title></title>
<description></description>
</entityFieldDb>
<entityFieldDb>
<name>EDITOR_RELATION_ID</name>
<dbName></dbName>
<primaryKey v="false" />
<columnType v="1" />
<size v="36" />
<scale v="0" />
<notNull v="false" />
<isUnique v="false" />
<index v="false" />
<documentation></documentation>
<title></title>
<description></description>
</entityFieldDb>
<entityFieldDb>
<name>TASKID</name>
<dbName></dbName>
<primaryKey v="true" />
<columnType v="1" />
<size v="36" />
<scale v="0" />
<notNull v="true" />
<isUnique v="true" />
<index v="false" />
<documentation></documentation>
<title></title>
<description></description>
</entityFieldDb>
<entityFieldDb>
<name>CODE</name>
<dbName></dbName>
<primaryKey v="false" />
<columnType v="4" />
<size v="10" />
<scale v="0" />
<notNull v="true" />
<isUnique v="false" />
<index v="false" />
<documentation></documentation>
<title></title>
<description></description>
</entityFieldDb>
<entityFieldDb>
<name>STATUS</name>
<dbName></dbName>
<primaryKey v="false" />
<columnType v="5" />
<size v="5" />
<scale v="0" />
<notNull v="false" />
<isUnique v="false" />
<index v="false" />
<documentation></documentation>
<title></title>
<description></description>
</entityFieldDb>
<entityFieldDb>
<name>DESCRIPTION</name>
<dbName></dbName>
<primaryKey v="false" />
<columnType v="2005" />
<size v="2147483647" />
<scale v="0" />
<notNull v="false" />
<isUnique v="false" />
<index v="false" />
<documentation></documentation>
<title></title>
<description></description>
</entityFieldDb>
<entityFieldDb>
<name>REQUESTOR_RELATION_ID</name>
<dbName></dbName>
<primaryKey v="false" />
<columnType v="1" />
<size v="36" />
<scale v="0" />
<notNull v="false" />
<isUnique v="false" />
<index v="false" />
<documentation></documentation>
<title></title>
<description></description>
</entityFieldDb>
<entityFieldDb>
<name>SUBJECT</name>
<dbName></dbName>
<primaryKey v="false" />
<columnType v="12" />
<size v="254" />
<scale v="0" />
<notNull v="false" />
<isUnique v="false" />
<index v="false" />
<documentation></documentation>
<title></title>
<description></description>
</entityFieldDb>
<entityFieldDb>
<name>PROTECTIONLEVEL</name>
<dbName></dbName>
<primaryKey v="false" />
<columnType v="5" />
<size v="5" />
<scale v="0" />
<notNull v="false" />
<isUnique v="false" />
<index v="false" />
<documentation></documentation>
<title></title>
<description></description>
</entityFieldDb>
<entityFieldDb>
<name>DATE_NEW</name>
<dbName></dbName>
<primaryKey v="false" />
<columnType v="93" />
<size v="29" />
<scale v="9" />
<notNull v="true" />
<isUnique v="false" />
<index v="false" />
<documentation></documentation>
<title></title>
<description></description>
</entityFieldDb>
<entityFieldDb>
<name>USER_NEW</name>
<dbName></dbName>
<primaryKey v="false" />
<columnType v="12" />
<size v="50" />
<scale v="0" />
<notNull v="true" />
<isUnique v="false" />
<index v="false" />
<documentation></documentation>
<title></title>
<description></description>
</entityFieldDb>
<entityFieldDb>
<name>START_DATE</name>
<dbName></dbName>
<primaryKey v="false" />
<columnType v="93" />
<size v="29" />
<scale v="9" />
<notNull v="false" />
<isUnique v="false" />
<index v="false" />
<documentation></documentation>
<title></title>
<description></description>
</entityFieldDb>
<entityFieldDb>
<name>TYPE</name>
<dbName></dbName>
<primaryKey v="false" />
<columnType v="5" />
<size v="5" />
<scale v="0" />
<notNull v="false" />
<isUnique v="false" />
<index v="false" />
<documentation></documentation>
<title></title>
<description></description>
</entityFieldDb>
</entityFields>
</entityDb>
</entities>
</entityGroup>
</aliasDefDb>
......
......@@ -9,6 +9,7 @@
<node name="Pers_context" kind="10077" />
<node name="Org_context" kind="10077" />
<node name="Activity_context" kind="10077" />
<node name="Task_context" kind="10077" />
<node name="INTERNAL_ADMINISTRATOR" kind="159" />
</node>
</node>
......
......@@ -283,6 +283,20 @@
</entityOutgoingField>
<entityIncomingField>
<name>#INCOMING</name>
<dependencies>
<entityDependency>
<name>799de3aa-657c-4bc1-a41e-10dc1687ca75</name>
<entityName>Task_entity</entityName>
<fieldName>PersRequestor_dfo</fieldName>
<isOutgoing v="false" />
</entityDependency>
<entityDependency>
<name>3e467178-bc3b-40b5-9fd3-af27bc3ba476</name>
<entityName>Task_entity</entityName>
<fieldName>PersEditor_dfo</fieldName>
<isOutgoing v="false" />
</entityDependency>
</dependencies>
</entityIncomingField>
<entityField>
<name>LANGUAGE</name>
......
<?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>Task_entity</name>
<title>Task</title>
<majorModelMode>DISTRIBUTED</majorModelMode>
<documentation>%aditoprj%/entity/Task_entity/documentation.adoc</documentation>
<icon>VAADIN:TASKS</icon>
<iconId>VAADIN:TASKS</iconId>
<recordContainer>db</recordContainer>
<entityFields>
<entityIncomingField>
<name>#INCOMING</name>
</entityIncomingField>
<entityField>
<name>CODE</name>
<title>task number</title>
<contentType>NUMBER</contentType>
<outputFormat>0000000</outputFormat>
<state>READONLY</state>
<stateProcess>%aditoprj%/entity/Task_entity/entityfields/code/stateProcess.js</stateProcess>
</entityField>
<entityField>
<name>SUBJECT</name>
<title>subject</title>
<mandatory v="true" />
</entityField>
<entityField>
<name>STATUS</name>
<title>{$TASK_STATUS}</title>
<mandatory v="true" />
<possibleItemsProcess>%aditoprj%/entity/Task_entity/entityfields/status/possibleItemsProcess.js</possibleItemsProcess>
<valueProcess>%aditoprj%/entity/Task_entity/entityfields/status/valueProcess.js</valueProcess>
</entityField>
<entityField>
<name>PRIORITY</name>
<title>priority</title>
<mandatory v="true" />
<possibleItemsProcess>%aditoprj%/entity/Task_entity/entityfields/priority/possibleItemsProcess.js</possibleItemsProcess>
<valueProcess>%aditoprj%/entity/Task_entity/entityfields/priority/valueProcess.js</valueProcess>
</entityField>
<entityField>
<name>REQUESTOR_RELATION_ID</name>
<title>{$TASK_REQUESTOR}</title>
<linkedContext>Pers_context</linkedContext>
<mandatory v="true" />
<outgoingField>PersRequestor_dfo</outgoingField>
</entityField>
<entityField>
<name>EDITOR_RELATION_ID</name>
<title>{$TASK_EDITOR}</title>
<linkedContext>Pers_context</linkedContext>
<outgoingField>EditorPers_dfo</outgoingField>
</entityField>
<entityField>
<name>START_DATE</name>
<title>start date</title>
<contentType>DATE</contentType>
<resolution>DAY</resolution>
<valueProcess>%aditoprj%/entity/Task_entity/entityfields/start_date/valueProcess.js</valueProcess>
<onValidation>%aditoprj%/entity/Task_entity/entityfields/start_date/onValidation.js</onValidation>
</entityField>
<entityField>
<name>MATURITY_DATE</name>
<title>maturity date</title>
<contentType>DATE</contentType>
<resolution>DAY</resolution>
<valueProcess>%aditoprj%/entity/Task_entity/entityfields/maturity_date/valueProcess.js</valueProcess>
<onValidation>%aditoprj%/entity/Task_entity/entityfields/maturity_date/onValidation.js</onValidation>
</entityField>
<entityField>
<name>TYPE</name>
<title>type</title>
<possibleItemsProcess>%aditoprj%/entity/Task_entity/entityfields/type/possibleItemsProcess.js</possibleItemsProcess>
</entityField>
<entityField>
<name>DESCRIPTION</name>
<title>description</title>
<contentType>HTML</contentType>
</entityField>
<entityField>
<name>PROTECTIONLEVEL</name>
<title>private</title>
<contentType>BOOLEAN</contentType>
<contentTypeProcess>%aditoprj%/entity/Task_entity/entityfields/protectionlevel/contentTypeProcess.js</contentTypeProcess>
<possibleItemsProcess>%aditoprj%/entity/Task_entity/entityfields/protectionlevel/possibleItemsProcess.js</possibleItemsProcess>
<valueProcess>%aditoprj%/entity/Task_entity/entityfields/protectionlevel/valueProcess.js</valueProcess>
</entityField>
<entityField>
<name>TASKID</name>
<mandatory v="true" />
<valueProcess>%aditoprj%/entity/Task_entity/entityfields/taskid/valueProcess.js</valueProcess>
</entityField>
<entityField>
<name>DATE_NEW</name>
<contentType>DATE</contentType>
<resolution>SECOND</resolution>
<mandatory v="true" />
</entityField>
<entityField>
<name>USER_NEW</name>
<mandatory v="true" />
</entityField>
<entityField>
<name>DATE_EDIT</name>
<contentType>DATE</contentType>
<resolution>SECOND</resolution>
</entityField>
<entityField>
<name>USER_EDIT</name>
</entityField>
<entityOutgoingField>
<name>PersEditor_dfo</name>
<fieldType>DEPENDENCY_OUT</fieldType>
<dependency>
<name>dependency</name>
<entityName>Pers_entity</entityName>
<fieldName>#INCOMING</fieldName>
</dependency>
</entityOutgoingField>
<entityOutgoingField>
<name>PersRequestor_dfo</name>
<fieldType>DEPENDENCY_OUT</fieldType>
<dependency>
<name>dependency</name>
<entityName>Pers_entity</entityName>
<fieldName>#INCOMING</fieldName>
</dependency>
</entityOutgoingField>
</entityFields>
<recordContainers>
<dbRecordContainer>
<name>db</name>
<alias>Data_alias</alias>
<linkInformation>
<linkInformation>
<name>47e1b4a5-6901-48b0-85ba-bec39b86a2d7</name>
<tableName>TASK</tableName>
<primaryKey>TASKID</primaryKey>
<isUIDTable v="true" />
<readonly v="false" />
</linkInformation>
</linkInformation>
<recordFieldMappings>
<dbRecordFieldMapping>
<name>CODE.value</name>
<recordfield>TASK.CODE</recordfield>
</dbRecordFieldMapping>
<dbRecordFieldMapping>
<name>DESCRIPTION.value</name>
<recordfield>TASK.DESCRIPTION</recordfield>
</dbRecordFieldMapping>
<dbRecordFieldMapping>
<name>EDITOR_RELATION_ID.value</name>
<recordfield>TASK.EDITOR_RELATION_ID</recordfield>
</dbRecordFieldMapping>
<dbRecordFieldMapping>
<name>MATURITY_DATE.value</name>
<recordfield>TASK.MATURITY_DATE</recordfield>
</dbRecordFieldMapping>
<dbRecordFieldMapping>
<name>PRIORITY.value</name>
<recordfield>TASK.PRIORITY</recordfield>
</dbRecordFieldMapping>
<dbRecordFieldMapping>
<name>PROTECTIONLEVEL.value</name>
<recordfield>TASK.PROTECTIONLEVEL</recordfield>
</dbRecordFieldMapping>
<dbRecordFieldMapping>
<name>REQUESTOR_RELATION_ID.value</name>
<recordfield>TASK.REQUESTOR_RELATION_ID</recordfield>
</dbRecordFieldMapping>
<dbRecordFieldMapping>
<name>START_DATE.value</name>
<recordfield>TASK.START_DATE</recordfield>
</dbRecordFieldMapping>
<dbRecordFieldMapping>
<name>STATUS.value</name>
<recordfield>TASK.STATUS</recordfield>
</dbRecordFieldMapping>
<dbRecordFieldMapping>
<name>SUBJECT.value</name>
<recordfield>TASK.SUBJECT</recordfield>
</dbRecordFieldMapping>
<dbRecordFieldMapping>
<name>TASKID.value</name>
<recordfield>TASK.TASKID</recordfield>
</dbRecordFieldMapping>
<dbRecordFieldMapping>
<name>TYPE.value</name>
<recordfield>TASK.TYPE</recordfield>
</dbRecordFieldMapping>
<dbRecordFieldMapping>
<name>USER_EDIT.value</name>
<recordfield>TASK.USER_EDIT</recordfield>
</dbRecordFieldMapping>
<dbRecordFieldMapping>
<name>USER_NEW.value</name>
<recordfield>TASK.USER_NEW</recordfield>
</dbRecordFieldMapping>
<dbRecordFieldMapping>
<name>DATE_EDIT.value</name>
<recordfield>TASK.DATE_EDIT</recordfield>
</dbRecordFieldMapping>
<dbRecordFieldMapping>
<name>DATE_NEW.value</name>
<recordfield>TASK.DATE_NEW</recordfield>
</dbRecordFieldMapping>
<dbRecordFieldMapping>
<name>EDITOR_RELATION_ID.displayValue</name>
<expression>%aditoprj%/entity/Task_entity/recordcontainers/db/recordfieldmappings/editor_relation_id.displayvalue/expression.js</expression>
</dbRecordFieldMapping>
<dbRecordFieldMapping>
<name>REQUESTOR_RELATION_ID.displayValue</name>
<expression>%aditoprj%/entity/Task_entity/recordcontainers/db/recordfieldmappings/requestor_relation_id.displayvalue/expression.js</expression>
</dbRecordFieldMapping>
</recordFieldMappings>
</dbRecordContainer>
</recordContainers>
</entity>
CAUTION: Do not confuse these tasks with calendar-tasks(=todos). The `Task_context` tasks are not syncable to a groupware system.
\ No newline at end of file
import("system.util");
import("system.result");
import("system.neon");
import("system.vars");
//the code (tasknumber) value is genereated before save to prevent duplicate numbers
//so: no need to display it on new
if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW)
result.string(neon.COMPONENTSTATE_INVISIBLE);
else
result.string(neon.COMPONENTSTATE_READONLY);
\ No newline at end of file
//TODO: add validation for start-date and maturity-date
\ No newline at end of file
import("system.eMath");
import("system.datetime");
import("system.util");
import("system.result");
import("system.neon");
import("system.vars");
if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW)
{
var startDate = vars.get("$field.START_DATE");
var presetVal = eMath.addInt(startDate, datetime.ONE_WEEK);
result.string(presetVal);
}
\ No newline at end of file
import("system.result");
import("Keyword_lib");
var items;
items = KeywordUtils.getStandardArray("TASK.PRIORITY");
result.object(items);
\ No newline at end of file
import("system.util");
import("system.result");
import("system.neon");
import("system.vars");
if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW)
result.string("2");//TODO: do not use int-keys for this; use from keyword
\ No newline at end of file
//this field is currently a BOOLEAN field; reserved for future that there can be more values (e.g. teams, groups, privatem, public)
\ No newline at end of file
import("system.translate");
import("system.result");
result.object([
["1", translate.text("Yes")]
,["0", translate.text("No")]
]);
\ No newline at end of file
import("system.util");
import("system.result");
import("system.neon");
import("system.vars");
if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW)
result.string("0");
\ No newline at end of file
//TODO: add validation for start-date and maturity-date
\ No newline at end of file
import("system.datetime");
import("system.util");
import("system.result");
import("system.neon");
import("system.vars");
if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW)
{
var presetVal = datetime.date();
//TODO: depending on what happens in #1032274 we need to manually set the resolution to MINUTES or not (which means we've to set everything smaller than MINUTES (Seconds, etc.) to zero)
presetVal = datetime.toLong(datetime.toDate(presetVal, "yyyy-MM-dd hh:mm"), "yyyy-MM-dd hh:mm");
result.string(presetVal);
}
\ No newline at end of file
import("system.result");
import("Keyword_lib");
var items;
items = KeywordUtils.getStandardArray("TASK.STATUS");
result.object(items);
\ No newline at end of file
import("system.util");
import("system.result");
import("system.neon");
import("system.vars");
if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW)
result.string("0");//TODO: do not use int-keys for this; use from keyword
\ No newline at end of file
import("system.util");
import("system.result");
import("system.neon");
import("system.vars");
if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW)
result.string(util.getNewUUID());
\ No newline at end of file
import("system.result");
import("Keyword_lib");
var items;
items = KeywordUtils.getStandardArray("TASK.TYPE");
result.object(items);
\ No newline at end of file
import("system.result");
import("Pers_lib");
//TODO: try to find a better solution for this
var subSql = PersUtils.getResolvingDisplaySubSql("TASK.EDITOR_RELATION_ID");
result.string(subSql);
\ 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