diff --git a/.liquibase/Data_alias/basic/2019.2/Classification/create_classification_tables.xml b/.liquibase/Data_alias/basic/2019.2/Classification/create_classification_tables.xml new file mode 100644 index 0000000000000000000000000000000000000000..40c738cbad5282b932f5cbe281615e7790055164 --- /dev/null +++ b/.liquibase/Data_alias/basic/2019.2/Classification/create_classification_tables.xml @@ -0,0 +1,41 @@ +<?xml version="1.1" encoding="UTF-8" standalone="no"?> +<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog" xmlns:ext="http://www.liquibase.org/xml/ns/dbchangelog-ext" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog-ext http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-ext.xsd http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.6.xsd"> + <changeSet author="j.hoermann" id="85efe5d3-8032-4277-9177-3daa11951bb0"> + <createTable tableName="CLASSIFICATION"> + <column name="CLASSIFICATIONID" type="CHAR(36)"> + <constraints primaryKey="true" primaryKeyName="PK_CLASSIFICATION_CLASSIFICATIONID"/> + </column> + <column name="CLASSIFICATIONSCORE_ID" type="CHAR(36)"> + <constraints nullable="false"/> + </column> + <column name="CLASSIFICATIONTYPE_ID" type="CHAR(36)"> + <constraints nullable="false"/> + </column> + <column name="OBJECT_TYPE" type="VARCHAR(50)"> + <constraints nullable="false"/> + </column> + <column name="OBJECT_ROWID" type="CHAR(36)"> + <constraints nullable="false"/> + </column> + </createTable> + + <createTable tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" type="CHAR(36)"> + <constraints primaryKey="true" primaryKeyName="PK_CLASSIFICATIONSCORE_CLASSIFICATIONSCOREID"/> + </column> + <column name="SCORETYPE" type="VARCHAR(80)"/> + <column name="TITLE" type="NVARCHAR(50)"/> + <column name="SCORE" type="NUMERIC(10,2)"/> + <column name="SORT" type="INTEGER"/> + </createTable> + + <createTable tableName="CLASSIFICATIONTYPE"> + <column name="CLASSIFICATIONTYPEID" type="CHAR(36)"> + <constraints primaryKey="true" primaryKeyName="PK_CLASSIFICATIONTYPE_CLASSIFICATIONTYPEID"/> + </column> + <column name="CLASSIFICATIONTYPE" type="CHAR(36)"/> + <column name="SCORETYPE" type="VARCHAR(80)"/> + <column name="CLASSIFICATIONNUMBER" type="INTEGER"/> + </createTable> + </changeSet> +</databaseChangeLog> \ No newline at end of file diff --git a/.liquibase/Data_alias/basic/2019.2/Classification/insert_classification_scores.xml b/.liquibase/Data_alias/basic/2019.2/Classification/insert_classification_scores.xml new file mode 100644 index 0000000000000000000000000000000000000000..c540fee5688e8a36a6047a7a7b87d3eab309e294 --- /dev/null +++ b/.liquibase/Data_alias/basic/2019.2/Classification/insert_classification_scores.xml @@ -0,0 +1,417 @@ +<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog" xmlns:ext="http://www.liquibase.org/xml/ns/dbchangelog-ext" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog-ext http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-ext.xsd http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.6.xsd"> + <changeSet author="j.hoermann" id="286d5a05-7618-414b-9e96-81b1c407b473"> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="01840c9d-2856-4882-a12a-303e58fd9d30"/> + <column name="SCORETYPE" value="ScoreDepartment"/> + <column name="TITLE" value="Purchasing"/> + <column name="SCORE" valueNumeric="5.00"/> + <column name="SORT" valueNumeric="50"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="0803779b-73d8-47b3-9705-f5771c01e6a3"/> + <column name="SCORETYPE" value="ScoreBranch"/> + <column name="TITLE" value="Automotive"/> + <column name="SCORE" valueNumeric="33.30"/> + <column name="SORT" valueNumeric="140"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="10419ecc-335b-43c3-a1e3-8ecfbeda6f2b"/> + <column name="SCORETYPE" value="ScoreDepartment"/> + <column name="TITLE" value="Project management"/> + <column name="SCORE" valueNumeric="5.00"/> + <column name="SORT" valueNumeric="60"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="11418754-1667-437b-816b-adec4b9291f3"/> + <column name="SCORETYPE" value="ScoreProjectStart"/> + <column name="TITLE" value="No project planned"/> + <column name="SCORE" valueNumeric="0.00"/> + <column name="SORT" valueNumeric="40"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="1bc2b2aa-2582-4b0c-a2f8-04125b82ba33"/> + <column name="SCORETYPE" value="ScoreDepartment"/> + <column name="TITLE" value="Service"/> + <column name="SCORE" valueNumeric="5.00"/> + <column name="SORT" valueNumeric="40"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="1f924d71-c500-4cdd-bc52-4718a6b88e45"/> + <column name="SCORETYPE" value="ScoreBranch"/> + <column name="TITLE" value="Consultation"/> + <column name="SCORE" valueNumeric="0.00"/> + <column name="SORT" valueNumeric="70"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="2a516661-537d-473e-864a-c2f721b96a42"/> + <column name="SCORETYPE" value="ScoreBranch"/> + <column name="TITLE" value="Service"/> + <column name="SCORE" valueNumeric="33.30"/> + <column name="SORT" valueNumeric="180"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="2f3b6088-d78f-4fba-998d-b18a6b981485"/> + <column name="SCORETYPE" value="ScoreBranch"/> + <column name="TITLE" value="Environment"/> + <column name="SCORE" valueNumeric="0.00"/> + <column name="SORT" valueNumeric="170"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="2f4fddd2-be83-4190-99c3-6de8a7e328c5"/> + <column name="SCORETYPE" value="ScoreBudget"/> + <column name="TITLE" value="0 to 49T"/> + <column name="SCORE" valueNumeric="0.00"/> + <column name="SORT" valueNumeric="50"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="2fdb4d7e-24d5-4eb1-a130-3a0aaeebd8db"/> + <column name="SCORETYPE" value="ScoreBased"/> + <column name="TITLE" value="Germany"/> + <column name="SCORE" valueNumeric="20.00"/> + <column name="SORT" valueNumeric="10"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="3035e36e-ee6a-45d1-9d68-920cd3666362"/> + <column name="SCORETYPE" value="ScorePosition"/> + <column name="TITLE" value="Student/Internship"/> + <column name="SCORE" valueNumeric="5.00"/> + <column name="SORT" valueNumeric="70"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="35d8ae15-8993-4ab2-99f6-e57c2ebf0bb3"/> + <column name="SCORETYPE" value="ScoreBranch"/> + <column name="TITLE" value="Food"/> + <column name="SCORE" valueNumeric="33.30"/> + <column name="SORT" valueNumeric="80"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="39547328-ccc6-47ad-b31a-d6a149081c44"/> + <column name="SCORETYPE" value="ScoreUsers"/> + <column name="TITLE" value="0 to 49"/> + <column name="SCORE" valueNumeric="5.00"/> + <column name="SORT" valueNumeric="50"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="3c9ceefa-5c98-4629-9c6d-d46b6cad8b78"/> + <column name="SCORETYPE" value="ScoreUsers"/> + <column name="TITLE" value="251 to 1000"/> + <column name="SCORE" valueNumeric="30.00"/> + <column name="SORT" valueNumeric="20"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="3dc5fc76-d2d5-4911-891a-3aacc5a9c925"/> + <column name="SCORETYPE" value="ScoreCustomizing"/> + <column name="TITLE" value="Yes"/> + <column name="SCORE" valueNumeric="25.00"/> + <column name="SORT" valueNumeric="10"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="3e1e21b0-c10d-4bcb-882c-ac1b239b9cb2"/> + <column name="SCORETYPE" value="ScoreStandard"/> + <column name="TITLE" value="Standard"/> + <column name="SCORE" valueNumeric="12.50"/> + <column name="SORT" valueNumeric="20"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="3fe9f04b-6a85-4a73-a138-ca90b6d8e61c"/> + <column name="SCORETYPE" value="ScoreBranch"/> + <column name="TITLE" value="Public"/> + <column name="SCORE" valueNumeric="50.00"/> + <column name="SORT" valueNumeric="190"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="41300a6c-8dc7-4b5a-9fb1-cecd3d5cbb8c"/> + <column name="SCORETYPE" value="ScoreBranch"/> + <column name="TITLE" value="Electric"/> + <column name="SCORE" valueNumeric="0.00"/> + <column name="SORT" valueNumeric="160"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="41d43723-7d19-4a7e-936a-df9013db7dfb"/> + <column name="SCORETYPE" value="ScoreBranch"/> + <column name="TITLE" value="Logistics"/> + <column name="SCORE" valueNumeric="50.00"/> + <column name="SORT" valueNumeric="30"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="47ec3dbf-f8f6-4418-8dc2-0062510c1a28"/> + <column name="SCORETYPE" value="ScoreDepartment"/> + <column name="TITLE" value="Sales"/> + <column name="SCORE" valueNumeric="7.50"/> + <column name="SORT" valueNumeric="20"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="56a56ec0-34c1-419f-81c2-1c1310d685d2"/> + <column name="SCORETYPE" value="ScoreBranch"/> + <column name="TITLE" value="Education"/> + <column name="SCORE" valueNumeric="0.00"/> + <column name="SORT" valueNumeric="120"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="5ca391a5-9de8-41e6-9792-17cf8deaa7e7"/> + <column name="SCORETYPE" value="ScoreBranch"/> + <column name="TITLE" value="Energy"/> + <column name="SCORE" valueNumeric="0.00"/> + <column name="SORT" valueNumeric="90"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="61fe4e4f-e64d-4195-87b5-658f36ce1736"/> + <column name="SCORETYPE" value="ScoreStandard"/> + <column name="TITLE" value="Individual"/> + <column name="SCORE" valueNumeric="25.00"/> + <column name="SORT" valueNumeric="10"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="636af750-fcd3-4480-bfe7-ead42bf85280"/> + <column name="SCORETYPE" value="ScoreDecisionPhase"/> + <column name="TITLE" value="Choice"/> + <column name="SCORE" valueNumeric="30.00"/> + <column name="SORT" valueNumeric="10"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="6bd19de4-691b-4e78-84dc-cf6f41231978"/> + <column name="SCORETYPE" value="ScorePosition"/> + <column name="TITLE" value="Management/Sales Manager"/> + <column name="SCORE" valueNumeric="20.00"/> + <column name="SORT" valueNumeric="10"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="6d6653ae-024e-444c-aeae-561874d55569"/> + <column name="SCORETYPE" value="ScoreBudget"/> + <column name="TITLE" value="50 to 99T"/> + <column name="SCORE" valueNumeric="10.00"/> + <column name="SORT" valueNumeric="40"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="77a0088c-a665-4feb-9f60-99c1eb710015"/> + <column name="SCORETYPE" value="ScoreBranch"/> + <column name="TITLE" value="Lifesience"/> + <column name="SCORE" valueNumeric="33.30"/> + <column name="SORT" valueNumeric="50"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="7d6f716a-97c7-417b-a8c0-3cb71e403dde"/> + <column name="SCORETYPE" value="ScoreBased"/> + <column name="TITLE" value="Other"/> + <column name="SCORE" valueNumeric="0.00"/> + <column name="SORT" valueNumeric="30"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="7e569319-5885-452e-9331-a507f3365236"/> + <column name="SCORETYPE" value="ScoreDepartment"/> + <column name="TITLE" value="Overarching"/> + <column name="SCORE" valueNumeric="10.00"/> + <column name="SORT" valueNumeric="10"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="90361317-d80e-4466-a45b-3021bf02e2f9"/> + <column name="SCORETYPE" value="ScoreUsers"/> + <column name="TITLE" value="101 to 250"/> + <column name="SCORE" valueNumeric="20.00"/> + <column name="SORT" valueNumeric="30"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="9a3183db-8a38-4cf1-a234-3e2cf20a4f77"/> + <column name="SCORETYPE" value="ScoreBranch"/> + <column name="TITLE" value="IT"/> + <column name="SCORE" valueNumeric="33.30"/> + <column name="SORT" valueNumeric="40"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="a0c55ee2-0d15-4779-a5a6-93774d5bc393"/> + <column name="SCORETYPE" value="ScoreCloud"/> + <column name="TITLE" value="OnPremise"/> + <column name="SCORE" valueNumeric="10.00"/> + <column name="SORT" valueNumeric="10"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="a0fcd2e2-40c8-40b8-8a5b-e591154c248a"/> + <column name="SCORETYPE" value="ScoreBranch"/> + <column name="TITLE" value="Lottery"/> + <column name="SCORE" valueNumeric="33.30"/> + <column name="SORT" valueNumeric="110"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="a177b155-4665-4af1-b50e-0b59e8ac2752"/> + <column name="SCORETYPE" value="ScoreBased"/> + <column name="TITLE" value="Switzerland"/> + <column name="SCORE" valueNumeric="7.50"/> + <column name="SORT" valueNumeric="40"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="a61e3451-296b-4812-a7b2-425963176f80"/> + <column name="SCORETYPE" value="ScoreCloud"/> + <column name="TITLE" value="Cloud"/> + <column name="SCORE" valueNumeric="5.00"/> + <column name="SORT" valueNumeric="20"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="a7e70abc-4d98-467d-a475-66bbd101de1d"/> + <column name="SCORETYPE" value="ScorePosition"/> + <column name="TITLE" value="Head of IT"/> + <column name="SCORE" valueNumeric="20.00"/> + <column name="SORT" valueNumeric="20"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="b1c55bcd-16c6-4b2f-8f73-e16397b40e93"/> + <column name="SCORETYPE" value="ScoreUsers"/> + <column name="TITLE" value="from 1,000"/> + <column name="SCORE" valueNumeric="30.00"/> + <column name="SORT" valueNumeric="10"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="b3792b08-4b07-4ed2-9bee-4673182b7349"/> + <column name="SCORETYPE" value="ScoreProjectStart"/> + <column name="TITLE" value="Within 6 months"/> + <column name="SCORE" valueNumeric="30.00"/> + <column name="SORT" valueNumeric="10"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="ba5d70c3-e77a-45ff-828b-7b3e0a61eec2"/> + <column name="SCORETYPE" value="ScoreBudget"/> + <column name="TITLE" value="200 to 349T"/> + <column name="SCORE" valueNumeric="30.00"/> + <column name="SORT" valueNumeric="20"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="bf44ae05-a4c4-4ee9-ad6e-7d64474afeff"/> + <column name="SCORETYPE" value="ScoreBranch"/> + <column name="TITLE" value="Finance"/> + <column name="SCORE" valueNumeric="16.60"/> + <column name="SORT" valueNumeric="60"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="bf6b1757-11da-49a9-a02c-8340139968ee"/> + <column name="SCORETYPE" value="ScorePosition"/> + <column name="TITLE" value="Service Manager"/> + <column name="SCORE" valueNumeric="15.00"/> + <column name="SORT" valueNumeric="40"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="c328cb9e-5cef-4052-a3c1-98e1898eeb63"/> + <column name="SCORETYPE" value="ScoreProjectStart"/> + <column name="TITLE" value="No date yet"/> + <column name="SCORE" valueNumeric="10.00"/> + <column name="SORT" valueNumeric="30"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="c6300eeb-0494-4eba-89b1-23afdbb397e9"/> + <column name="SCORETYPE" value="ScoreBranch"/> + <column name="TITLE" value="Publishing house"/> + <column name="SCORE" valueNumeric="33.30"/> + <column name="SORT" valueNumeric="150"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="c9d4e28d-7935-42c5-9da5-5ce0b51b425a"/> + <column name="SCORETYPE" value="ScorePosition"/> + <column name="TITLE" value="CRM Manager"/> + <column name="SCORE" valueNumeric="20.00"/> + <column name="SORT" valueNumeric="30"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="d032f425-5739-4f0c-8103-e102fe0d3ccf"/> + <column name="SCORETYPE" value="ScorePosition"/> + <column name="TITLE" value="Skilled workers"/> + <column name="SCORE" valueNumeric="15.00"/> + <column name="SORT" valueNumeric="50"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="d5beb18f-c53e-438d-8b0b-7699aa20fba7"/> + <column name="SCORETYPE" value="ScoreDecisionPhase"/> + <column name="TITLE" value="Rate"/> + <column name="SCORE" valueNumeric="15.00"/> + <column name="SORT" valueNumeric="20"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="d7d807a2-8a97-4a0e-9d1c-fb8c7a703599"/> + <column name="SCORETYPE" value="ScoreUsers"/> + <column name="TITLE" value="50 to 100"/> + <column name="SCORE" valueNumeric="10.00"/> + <column name="SORT" valueNumeric="40"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="e6ab210e-6a26-4a12-9d50-ff8bd392c590"/> + <column name="SCORETYPE" value="ScoreDecisionPhase"/> + <column name="TITLE" value="Search"/> + <column name="SCORE" valueNumeric="5.00"/> + <column name="SORT" valueNumeric="30"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="e70a23b4-f2a9-4438-8ba6-742c6c17e5cc"/> + <column name="SCORETYPE" value="ScoreCustomizing"/> + <column name="TITLE" value="No"/> + <column name="SCORE" valueNumeric="12.50"/> + <column name="SORT" valueNumeric="20"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="e824d7e3-dfbe-4f34-a5c7-8f2226aade7e"/> + <column name="SCORETYPE" value="ScoreBudget"/> + <column name="TITLE" value="100 to 199T"/> + <column name="SCORE" valueNumeric="20.00"/> + <column name="SORT" valueNumeric="30"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="e8741cb0-9ada-48dd-89d1-f00a1a755c38"/> + <column name="SCORETYPE" value="ScorePosition"/> + <column name="TITLE" value="Counsellor"/> + <column name="SCORE" valueNumeric="20.00"/> + <column name="SORT" valueNumeric="60"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="ec51d975-bda6-415e-9b91-32f0e981ecd8"/> + <column name="SCORETYPE" value="ScoreBranch"/> + <column name="TITLE" value="Building and construction suppliers"/> + <column name="SCORE" valueNumeric="50.00"/> + <column name="SORT" valueNumeric="10"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="ecf421ef-66b2-4f9f-98c6-ee8a73e753da"/> + <column name="SCORETYPE" value="ScoreBased"/> + <column name="TITLE" value="Austria"/> + <column name="SCORE" valueNumeric="20.00"/> + <column name="SORT" valueNumeric="20"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="ed6a38f7-97bf-4e3d-a34c-4a1e636fa6a7"/> + <column name="SCORETYPE" value="ScoreBudget"/> + <column name="TITLE" value="from 350T"/> + <column name="SCORE" valueNumeric="50.00"/> + <column name="SORT" valueNumeric="10"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="efec90bd-c99f-49d9-bd52-df0ae6f938a3"/> + <column name="SCORETYPE" value="ScoreBranch"/> + <column name="TITLE" value="Machinery and equipment"/> + <column name="SCORE" valueNumeric="50.00"/> + <column name="SORT" valueNumeric="20"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="f1534026-34cc-4898-8711-41cbe4accb60"/> + <column name="SCORETYPE" value="ScoreDepartment"/> + <column name="TITLE" value="Marketing"/> + <column name="SCORE" valueNumeric="5.00"/> + <column name="SORT" valueNumeric="30"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="f678b3e0-72c4-4b48-90c0-054bf3612dc2"/> + <column name="SCORETYPE" value="ScoreBranch"/> + <column name="TITLE" value="Trade"/> + <column name="SCORE" valueNumeric="33.30"/> + <column name="SORT" valueNumeric="130"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="fae1ef0a-5d07-4725-907f-4b2ac5814328"/> + <column name="SCORETYPE" value="ScoreBranch"/> + <column name="TITLE" value="Industry"/> + <column name="SCORE" valueNumeric="33.30"/> + <column name="SORT" valueNumeric="100"/> + </insert> + <insert tableName="CLASSIFICATIONSCORE"> + <column name="CLASSIFICATIONSCOREID" value="fb8cb769-d95b-468a-ac64-7ee0cefd46a7"/> + <column name="SCORETYPE" value="ScoreProjectStart"/> + <column name="TITLE" value="Within 12 months"/> + <column name="SCORE" valueNumeric="20.00"/> + <column name="SORT" valueNumeric="20"/> + </insert> + </changeSet> +</databaseChangeLog> diff --git a/.liquibase/Data_alias/basic/2019.2/Classification/insert_classification_types.xml b/.liquibase/Data_alias/basic/2019.2/Classification/insert_classification_types.xml new file mode 100644 index 0000000000000000000000000000000000000000..04269b04e6331b3d90b2ec6a111d18796a17fe9c --- /dev/null +++ b/.liquibase/Data_alias/basic/2019.2/Classification/insert_classification_types.xml @@ -0,0 +1,70 @@ +<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog" xmlns:ext="http://www.liquibase.org/xml/ns/dbchangelog-ext" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog-ext http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-ext.xsd http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.6.xsd"> + <changeSet author="j.hoermann" id="f904e9fd-d5e1-4f9b-b334-5621132449ce"> + <insert tableName="CLASSIFICATIONTYPE"> + <column name="CLASSIFICATIONTYPEID" value="54128957-c80b-4b5a-ad1b-cfce665dfb10"/> + <column name="CLASSIFICATIONTYPE" value="968eafa3-3e76-4afa-8999-878e51cc3bab"/> + <column name="CLASSIFICATIONNUMBER" valueNumeric="1"/> + <column name="SCORETYPE" value="ScoreBased"/> + </insert> + <insert tableName="CLASSIFICATIONTYPE"> + <column name="CLASSIFICATIONTYPEID" value="4977ba88-074c-4fe5-b04a-97c9a5eae982"/> + <column name="CLASSIFICATIONTYPE" value="968eafa3-3e76-4afa-8999-878e51cc3bab"/> + <column name="CLASSIFICATIONNUMBER" valueNumeric="1"/> + <column name="SCORETYPE" value="ScoreBranch"/> + </insert> + <insert tableName="CLASSIFICATIONTYPE"> + <column name="CLASSIFICATIONTYPEID" value="382b311e-b2b2-49da-b6e1-339afae92657"/> + <column name="CLASSIFICATIONTYPE" value="968eafa3-3e76-4afa-8999-878e51cc3bab"/> + <column name="CLASSIFICATIONNUMBER" valueNumeric="1"/> + <column name="SCORETYPE" value="ScoreUsers"/> + </insert> + <insert tableName="CLASSIFICATIONTYPE"> + <column name="CLASSIFICATIONTYPEID" value="d8091374-f3fd-41dc-8468-91469618c6fc"/> + <column name="CLASSIFICATIONTYPE" value="968eafa3-3e76-4afa-8999-878e51cc3bab"/> + <column name="CLASSIFICATIONNUMBER" valueNumeric="2"/> + <column name="SCORETYPE" value="ScoreBudget"/> + </insert> + <insert tableName="CLASSIFICATIONTYPE"> + <column name="CLASSIFICATIONTYPEID" value="2031525e-6ca3-46b4-91d4-7f90cd31a630"/> + <column name="CLASSIFICATIONTYPE" value="968eafa3-3e76-4afa-8999-878e51cc3bab"/> + <column name="CLASSIFICATIONNUMBER" valueNumeric="2"/> + <column name="SCORETYPE" value="ScoreCustomizing"/> + </insert> + <insert tableName="CLASSIFICATIONTYPE"> + <column name="CLASSIFICATIONTYPEID" value="2a702a31-9907-4f1b-abfd-3342640f1c9e"/> + <column name="CLASSIFICATIONTYPE" value="968eafa3-3e76-4afa-8999-878e51cc3bab"/> + <column name="CLASSIFICATIONNUMBER" valueNumeric="2"/> + <column name="SCORETYPE" value="ScoreStandard"/> + </insert> + <insert tableName="CLASSIFICATIONTYPE"> + <column name="CLASSIFICATIONTYPEID" value="8c1e8f81-145f-4efe-936f-3f4147f4d59a"/> + <column name="CLASSIFICATIONTYPE" value="968eafa3-3e76-4afa-8999-878e51cc3bab"/> + <column name="CLASSIFICATIONNUMBER" valueNumeric="3"/> + <column name="SCORETYPE" value="ScoreCloud"/> + </insert> + <insert tableName="CLASSIFICATIONTYPE"> + <column name="CLASSIFICATIONTYPEID" value="31c169aa-ba5b-4f9d-9dd3-b0d0e8d1b632"/> + <column name="CLASSIFICATIONTYPE" value="968eafa3-3e76-4afa-8999-878e51cc3bab"/> + <column name="CLASSIFICATIONNUMBER" valueNumeric="3"/> + <column name="SCORETYPE" value="ScoreDepartment"/> + </insert> + <insert tableName="CLASSIFICATIONTYPE"> + <column name="CLASSIFICATIONTYPEID" value="57604bc1-d99f-4d61-b28d-55218a72045b"/> + <column name="CLASSIFICATIONTYPE" value="968eafa3-3e76-4afa-8999-878e51cc3bab"/> + <column name="CLASSIFICATIONNUMBER" valueNumeric="3"/> + <column name="SCORETYPE" value="ScoreDecisionPhase"/> + </insert> + <insert tableName="CLASSIFICATIONTYPE"> + <column name="CLASSIFICATIONTYPEID" value="a43189fc-b712-45ed-9398-58d6e15760ca"/> + <column name="CLASSIFICATIONTYPE" value="968eafa3-3e76-4afa-8999-878e51cc3bab"/> + <column name="CLASSIFICATIONNUMBER" valueNumeric="3"/> + <column name="SCORETYPE" value="ScorePosition"/> + </insert> + <insert tableName="CLASSIFICATIONTYPE"> + <column name="CLASSIFICATIONTYPEID" value="f4d3791e-1717-4473-987b-0cd751805387"/> + <column name="CLASSIFICATIONTYPE" value="968eafa3-3e76-4afa-8999-878e51cc3bab"/> + <column name="CLASSIFICATIONNUMBER" valueNumeric="3"/> + <column name="SCORETYPE" value="ScoreProjectStart"/> + </insert> + </changeSet> +</databaseChangeLog> \ No newline at end of file diff --git a/.liquibase/Data_alias/basic/2019.2/changelog.xml b/.liquibase/Data_alias/basic/2019.2/changelog.xml index 4a3cd250c210ed2be2d21fc9f1c0c9be897cc60f..c667163ec915034d3692ea87b2acdab117cedd53 100644 --- a/.liquibase/Data_alias/basic/2019.2/changelog.xml +++ b/.liquibase/Data_alias/basic/2019.2/changelog.xml @@ -163,6 +163,11 @@ <include relativeToChangelogFile="true" file="CampaignManagement/create_campaignCostCategory.xml"/> <include relativeToChangelogFile="true" file="AditoBasic/ActivityDirectionKeyword_add_icon_attr.xml"/> + + <include relativeToChangelogFile="true" file="Classification/create_classification_tables.xml"/> + <include relativeToChangelogFile="true" file="Classification/insert_classification_scores.xml"/> + <include relativeToChangelogFile="true" file="Classification/insert_classification_types.xml"/> + <include relativeToChangelogFile="true" file="AditoBasic/extendKeywordOrganisationType.xml"/> <include relativeToChangelogFile="true" file="AditoBasic/removeAttributeKeywordTargetGroup.xml"/> </databaseChangeLog> diff --git a/aliasDefinition/Data_alias/Data_alias.aod b/aliasDefinition/Data_alias/Data_alias.aod index 16125dbb1e92aece3bb37ac760d7d463213a5866..8de09d704e74582837bc2ffca80d301eb748ea31 100644 --- a/aliasDefinition/Data_alias/Data_alias.aod +++ b/aliasDefinition/Data_alias/Data_alias.aod @@ -9528,6 +9528,262 @@ </entityFieldDb> </entityFields> </entityDb> + <entityDb> + <name>CLASSIFICATIONTYPE</name> + <dbName></dbName> + <idColumn>CLASSIFICATIONTYPEID</idColumn> + <idGeneratorType v="0" /> + <idGeneratorInterval v="1" /> + <documentation></documentation> + <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>SCORETYPE</name> + <dbName></dbName> + <primaryKey v="false" /> + <columnType v="12" /> + <size v="80" /> + <scale v="0" /> + <notNull v="false" /> + <isUnique v="false" /> + <index v="false" /> + <documentation></documentation> + <title></title> + <description></description> + </entityFieldDb> + <entityFieldDb> + <name>CLASSIFICATIONTYPEID</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>CLASSIFICATIONNUMBER</name> + <dbName></dbName> + <primaryKey v="false" /> + <columnType v="4" /> + <size v="10" /> + <scale v="0" /> + <notNull v="false" /> + <isUnique v="false" /> + <index v="false" /> + <documentation></documentation> + <title></title> + <description></description> + </entityFieldDb> + <entityFieldDb> + <name>CLASSIFICATIONTYPE</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> + </entityFields> + </entityDb> + <entityDb> + <name>CLASSIFICATION</name> + <dbName></dbName> + <idColumn>CLASSIFICATIONID</idColumn> + <idGeneratorType v="0" /> + <idGeneratorInterval v="1" /> + <documentation></documentation> + <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>CLASSIFICATIONTYPE_ID</name> + <dbName></dbName> + <primaryKey v="false" /> + <columnType v="1" /> + <size v="36" /> + <scale v="0" /> + <notNull v="true" /> + <isUnique v="false" /> + <index v="false" /> + <documentation></documentation> + <title></title> + <description></description> + </entityFieldDb> + <entityFieldDb> + <name>OBJECT_ROWID</name> + <dbName></dbName> + <primaryKey v="false" /> + <columnType v="1" /> + <size v="36" /> + <scale v="0" /> + <notNull v="true" /> + <isUnique v="false" /> + <index v="false" /> + <documentation></documentation> + <title></title> + <description></description> + </entityFieldDb> + <entityFieldDb> + <name>CLASSIFICATIONSCORE_ID</name> + <dbName></dbName> + <primaryKey v="false" /> + <columnType v="1" /> + <size v="36" /> + <scale v="0" /> + <notNull v="true" /> + <isUnique v="false" /> + <index v="false" /> + <documentation></documentation> + <title></title> + <description></description> + </entityFieldDb> + <entityFieldDb> + <name>CLASSIFICATIONID</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>OBJECT_TYPE</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> + </entityFields> + </entityDb> + <entityDb> + <name>CLASSIFICATIONSCORE</name> + <dbName></dbName> + <idColumn>CLASSIFICATIONSCOREID</idColumn> + <idGeneratorType v="0" /> + <idGeneratorInterval v="1" /> + <documentation></documentation> + <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>SCORETYPE</name> + <dbName></dbName> + <primaryKey v="false" /> + <columnType v="12" /> + <size v="80" /> + <scale v="0" /> + <notNull v="false" /> + <isUnique v="false" /> + <index v="false" /> + <documentation></documentation> + <title></title> + <description></description> + </entityFieldDb> + <entityFieldDb> + <name>SCORE</name> + <dbName></dbName> + <primaryKey v="false" /> + <columnType v="2" /> + <size v="10" /> + <scale v="2" /> + <notNull v="false" /> + <isUnique v="false" /> + <index v="false" /> + <documentation></documentation> + <title></title> + <description></description> + </entityFieldDb> + <entityFieldDb> + <name>CLASSIFICATIONSCOREID</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>SORT</name> + <dbName></dbName> + <primaryKey v="false" /> + <columnType v="4" /> + <size v="10" /> + <scale v="0" /> + <notNull v="false" /> + <isUnique v="false" /> + <index v="false" /> + <documentation></documentation> + <title></title> + <description></description> + </entityFieldDb> + <entityFieldDb> + <name>TITLE</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> + </entityFields> + </entityDb> </entities> </entityGroup> </aliasDefDb> diff --git a/entity/ClassificationScore_entity/ClassificationScore_entity.aod b/entity/ClassificationScore_entity/ClassificationScore_entity.aod new file mode 100644 index 0000000000000000000000000000000000000000..a62abe6b8bd8bb014128de7f8ca359ac974296f1 --- /dev/null +++ b/entity/ClassificationScore_entity/ClassificationScore_entity.aod @@ -0,0 +1,85 @@ +<?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.3.4" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/entity/1.3.4"> + <name>ClassificationScore_entity</name> + <majorModelMode>DISTRIBUTED</majorModelMode> + <contentTitleProcess>%aditoprj%/entity/ClassificationScore_entity/contentTitleProcess.js</contentTitleProcess> + <recordContainer>db</recordContainer> + <entityFields> + <entityProvider> + <name>#PROVIDER</name> + </entityProvider> + <entityField> + <name>CLASSIFICATIONSCOREID</name> + </entityField> + <entityField> + <name>TITLE</name> + </entityField> + <entityField> + <name>SCORETYPE</name> + </entityField> + <entityField> + <name>SORT</name> + </entityField> + <entityField> + <name>SCORE</name> + </entityField> + <entityProvider> + <name>ClassificationScores</name> + <fieldType>DEPENDENCY_IN</fieldType> + <dependencies> + <entityDependency> + <name>85ff242d-a743-413f-8112-6d589baa30de</name> + <entityName>Classification_entity</entityName> + <fieldName>ClassificationScores</fieldName> + <isConsumer v="false" /> + </entityDependency> + </dependencies> + <children> + <entityParameter> + <name>Scoretype_param</name> + <triggerRecalculation v="true" /> + </entityParameter> + </children> + </entityProvider> + <entityParameter> + <name>Scoretype_param</name> + <expose v="true" /> + <description>PARAMETER</description> + </entityParameter> + </entityFields> + <recordContainers> + <dbRecordContainer> + <name>db</name> + <alias>Data_alias</alias> + <conditionProcess>%aditoprj%/entity/ClassificationScore_entity/recordcontainers/db/conditionProcess.js</conditionProcess> + <orderClauseProcess>%aditoprj%/entity/ClassificationScore_entity/recordcontainers/db/orderClauseProcess.js</orderClauseProcess> + <linkInformation> + <linkInformation> + <name>e2fecaf8-bc95-4a4d-bd96-88731568b1a4</name> + <tableName>CLASSIFICATIONSCORE</tableName> + <primaryKey>CLASSIFICATIONSCOREID</primaryKey> + <isUIDTable v="true" /> + <readonly v="false" /> + </linkInformation> + </linkInformation> + <recordFieldMappings> + <dbRecordFieldMapping> + <name>CLASSIFICATIONSCOREID.value</name> + <recordfield>CLASSIFICATIONSCORE.CLASSIFICATIONSCOREID</recordfield> + </dbRecordFieldMapping> + <dbRecordFieldMapping> + <name>SCORE.value</name> + <recordfield>CLASSIFICATIONSCORE.SCORE</recordfield> + </dbRecordFieldMapping> + <dbRecordFieldMapping> + <name>SORT.value</name> + <recordfield>CLASSIFICATIONSCORE.SORT</recordfield> + </dbRecordFieldMapping> + <dbRecordFieldMapping> + <name>TITLE.value</name> + <recordfield>CLASSIFICATIONSCORE.TITLE</recordfield> + </dbRecordFieldMapping> + </recordFieldMappings> + </dbRecordContainer> + </recordContainers> +</entity> diff --git a/entity/ClassificationScore_entity/contentTitleProcess.js b/entity/ClassificationScore_entity/contentTitleProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..a32d1c4fccfbd2b173010c5281709660619bd4cf --- /dev/null +++ b/entity/ClassificationScore_entity/contentTitleProcess.js @@ -0,0 +1,5 @@ +import("system.translate"); +import("system.result"); +import("system.vars"); + +result.string(translate.text(vars.get("$field.TITLE"))); \ No newline at end of file diff --git a/entity/ClassificationScore_entity/recordcontainers/db/conditionProcess.js b/entity/ClassificationScore_entity/recordcontainers/db/conditionProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..811e28aa9ae80ff40acd82e1d8a01a07fadc73c9 --- /dev/null +++ b/entity/ClassificationScore_entity/recordcontainers/db/conditionProcess.js @@ -0,0 +1,8 @@ +import("system.vars"); +import("Sql_lib"); +import("system.db"); +import("system.result"); + +result.string(db.translateCondition(SqlCondition.begin() + .andPrepareVars("CLASSIFICATIONSCORE.SCORETYPE", "$param.Scoretype_param") + .build("1=2"))); \ No newline at end of file diff --git a/entity/ClassificationScore_entity/recordcontainers/db/orderClauseProcess.js b/entity/ClassificationScore_entity/recordcontainers/db/orderClauseProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..b0539ac314524a1cb75d491dce4252bad6cc7407 --- /dev/null +++ b/entity/ClassificationScore_entity/recordcontainers/db/orderClauseProcess.js @@ -0,0 +1,5 @@ +import("system.result"); + +result.object({ + "CLASSIFICATIONSCORE.SORT": false +}) \ No newline at end of file diff --git a/entity/ClassificationType_entity/ClassificationType_entity.aod b/entity/ClassificationType_entity/ClassificationType_entity.aod new file mode 100644 index 0000000000000000000000000000000000000000..857ba0f7b21e248b9605d1c9e8c7d3d812349a4f --- /dev/null +++ b/entity/ClassificationType_entity/ClassificationType_entity.aod @@ -0,0 +1,48 @@ +<?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.3.4" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/entity/1.3.4"> + <name>ClassificationType_entity</name> + <majorModelMode>DISTRIBUTED</majorModelMode> + <entityFields> + <entityProvider> + <name>#PROVIDER</name> + </entityProvider> + <entityField> + <name>CLASSIFICATIONTYPEID</name> + </entityField> + <entityField> + <name>TYPE</name> + </entityField> + <entityField> + <name>CLASS</name> + </entityField> + </entityFields> + <recordContainers> + <dbRecordContainer> + <name>db</name> + <alias>Data_alias</alias> + <linkInformation> + <linkInformation> + <name>0a0944fd-a72f-4c95-8c42-b1e7d3e17721</name> + <tableName>CLASSIFICATIONTYPE</tableName> + <primaryKey>CLASSIFICATIONTYPEID</primaryKey> + <isUIDTable v="true" /> + <readonly v="false" /> + </linkInformation> + </linkInformation> + <recordFieldMappings> + <dbRecordFieldMapping> + <name>CLASSIFICATIONTYPEID.value</name> + <recordfield>CLASSIFICATIONTYPE.CLASSIFICATIONTYPEID</recordfield> + </dbRecordFieldMapping> + <dbRecordFieldMapping> + <name>CLASS.value</name> + <recordfield>CLASSIFICATIONTYPE.CLASS</recordfield> + </dbRecordFieldMapping> + <dbRecordFieldMapping> + <name>TYPE.value</name> + <recordfield>CLASSIFICATIONTYPE.TYPE</recordfield> + </dbRecordFieldMapping> + </recordFieldMappings> + </dbRecordContainer> + </recordContainers> +</entity> diff --git a/entity/Classification_entity/Classification_entity.aod b/entity/Classification_entity/Classification_entity.aod new file mode 100644 index 0000000000000000000000000000000000000000..0e6f912aaaa92c41ab31a746f3fd8e91aa943443 --- /dev/null +++ b/entity/Classification_entity/Classification_entity.aod @@ -0,0 +1,138 @@ +<?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.3.4" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/entity/1.3.4"> + <name>Classification_entity</name> + <majorModelMode>DISTRIBUTED</majorModelMode> + <title>Classification</title> + <afterOperatingState>%aditoprj%/entity/Classification_entity/afterOperatingState.js</afterOperatingState> + <titlePlural>Classifications</titlePlural> + <recordContainer>jdito</recordContainer> + <entityFields> + <entityProvider> + <name>#PROVIDER</name> + </entityProvider> + <entityField> + <name>CLASSIFICATIONID</name> + <valueProcess>%aditoprj%/entity/Classification_entity/entityfields/classificationid/valueProcess.js</valueProcess> + </entityField> + <entityField> + <name>CLASSIFICATIONSCORE_ID</name> + <consumer>ClassificationScores</consumer> + <state>EDITABLE</state> + <titleProcess>%aditoprj%/entity/Classification_entity/entityfields/classificationscore_id/titleProcess.js</titleProcess> + <displayValueProcess>%aditoprj%/entity/Classification_entity/entityfields/classificationscore_id/displayValueProcess.js</displayValueProcess> + </entityField> + <entityParameter> + <name>ClassificationType_param</name> + <expose v="true" /> + <mandatory v="true" /> + <description>PARAMETER</description> + </entityParameter> + <entityParameter> + <name>ObjectType_param</name> + <expose v="true" /> + <mandatory v="true" /> + <description>PARAMETER</description> + </entityParameter> + <entityParameter> + <name>ObjectRowid_param</name> + <expose v="true" /> + <mandatory v="true" /> + <description>PARAMETER</description> + </entityParameter> + <entityProvider> + <name>Classifications</name> + <fieldType>DEPENDENCY_IN</fieldType> + <dependencies> + <entityDependency> + <name>6274acfa-3dbf-4a9b-8926-2a2d1ff80d6d</name> + <entityName>Salesproject_entity</entityName> + <fieldName>Classifications</fieldName> + <isConsumer v="false" /> + </entityDependency> + </dependencies> + <children> + <entityParameter> + <name>ScoreType_param</name> + <expose v="false" /> + </entityParameter> + </children> + </entityProvider> + <entityField> + <name>CLASSIFICATIONTYPEID</name> + </entityField> + <entityField> + <name>SCORETYPE</name> + <groupable v="true" /> + <state>READONLY</state> + <valueProcess>%aditoprj%/entity/Classification_entity/entityfields/scoretype/valueProcess.js</valueProcess> + <displayValueProcess>%aditoprj%/entity/Classification_entity/entityfields/scoretype/displayValueProcess.js</displayValueProcess> + </entityField> + <entityField> + <name>CLASSIFICATIONNUMBER</name> + <groupable v="true" /> + <state>READONLY</state> + <displayValueProcess>%aditoprj%/entity/Classification_entity/entityfields/classificationnumber/displayValueProcess.js</displayValueProcess> + </entityField> + <entityField> + <name>CLASSIFICATIONTYPE_ID</name> + <valueProcess>%aditoprj%/entity/Classification_entity/entityfields/classificationtype_id/valueProcess.js</valueProcess> + </entityField> + <entityField> + <name>OBJECT_ROWID</name> + <valueProcess>%aditoprj%/entity/Classification_entity/entityfields/object_rowid/valueProcess.js</valueProcess> + </entityField> + <entityField> + <name>OBJECT_TYPE</name> + <valueProcess>%aditoprj%/entity/Classification_entity/entityfields/object_type/valueProcess.js</valueProcess> + </entityField> + <entityField> + <name>UID</name> + </entityField> + <entityConsumer> + <name>ClassificationScores</name> + <fieldType>DEPENDENCY_OUT</fieldType> + <dependency> + <name>dependency</name> + <entityName>ClassificationScore_entity</entityName> + <fieldName>ClassificationScores</fieldName> + </dependency> + <children> + <entityParameter> + <name>Scoretype_param</name> + <title></title> + <valueProcess>%aditoprj%/entity/Classification_entity/entityfields/classificationscores/children/scoretype_param/valueProcess.js</valueProcess> + <triggerRecalculation v="true" /> + </entityParameter> + </children> + </entityConsumer> + <entityActionField> + <name>edit</name> + <fieldType>ACTION</fieldType> + <onActionProcess>%aditoprj%/entity/Classification_entity/entityfields/edit/onActionProcess.js</onActionProcess> + </entityActionField> + <entityParameter> + <name>ScoreType_param</name> + <expose v="true" /> + <description>PARAMETER</description> + </entityParameter> + </entityFields> + <recordContainers> + <jDitoRecordContainer> + <name>jdito</name> + <jDitoRecordAlias>Data_alias</jDitoRecordAlias> + <contentProcess>%aditoprj%/entity/Classification_entity/recordcontainers/jdito/contentProcess.js</contentProcess> + <onUpdate>%aditoprj%/entity/Classification_entity/recordcontainers/jdito/onUpdate.js</onUpdate> + <recordFields> + <element>UID.value</element> + <element>CLASSIFICATIONID.value</element> + <element>CLASSIFICATIONNUMBER.value</element> + <element>CLASSIFICATIONSCORE_ID.value</element> + <element>CLASSIFICATIONTYPEID.value</element> + <element>CLASSIFICATIONTYPE_ID.value</element> + <element>OBJECT_ROWID.value</element> + <element>OBJECT_TYPE.value</element> + <element>SCORETYPE.value</element> + </recordFields> + </jDitoRecordContainer> + </recordContainers> +</entity> diff --git a/entity/Classification_entity/afterOperatingState.js b/entity/Classification_entity/afterOperatingState.js new file mode 100644 index 0000000000000000000000000000000000000000..a94093073f1d90cd4d112f5e93eb90f853d2f4fd --- /dev/null +++ b/entity/Classification_entity/afterOperatingState.js @@ -0,0 +1,7 @@ +import("system.vars"); +import("system.neon"); + +if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_VIEW) +{ + neon.refreshAll(); +} diff --git a/entity/Classification_entity/entityfields/classificationnumber/displayValueProcess.js b/entity/Classification_entity/entityfields/classificationnumber/displayValueProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..034c29bd691b4c6400ec357464123fef2d2c0f7f --- /dev/null +++ b/entity/Classification_entity/entityfields/classificationnumber/displayValueProcess.js @@ -0,0 +1,15 @@ +import("system.db"); +import("system.vars"); +import("system.result"); +import("system.translate"); +import("Sql_lib"); +import("Classification_lib") + +var score = ClassificationUtils.getScore(vars.get("$param.ClassificationType_param"), vars.get("$param.ObjectType_param"), vars.get("$param.ObjectRowid_param"), vars.get("$field.CLASSIFICATIONNUMBER")); + +if (!score) + score = 0; +else + score = parseInt(score); + +result.string(vars.get("$this.value") + ". " + translate.text("Classification") + ": " + score + " " + translate.text("points") + " = " + ClassificationUtils.mapToClass(score)); \ No newline at end of file diff --git a/entity/Classification_entity/entityfields/classificationscore_id/displayValueProcess.js b/entity/Classification_entity/entityfields/classificationscore_id/displayValueProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..c4b352e1b6d58a78c7d1d9a1d8c6cc20df770045 --- /dev/null +++ b/entity/Classification_entity/entityfields/classificationscore_id/displayValueProcess.js @@ -0,0 +1,9 @@ +import("system.translate"); +import("Sql_lib"); +import("system.db"); +import("system.result"); + +// TODO: loadEntity / #Title +result.string(translate.text(db.cell(SqlCondition.begin() + .andPrepareVars("CLASSIFICATIONSCORE.CLASSIFICATIONSCOREID", "$field.CLASSIFICATIONSCORE_ID") + .buildSql("select TITLE from CLASSIFICATIONSCORE", "1=2")))); \ No newline at end of file diff --git a/entity/Classification_entity/entityfields/classificationscore_id/titleProcess.js b/entity/Classification_entity/entityfields/classificationscore_id/titleProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..8100cef278f6517bd07495fba976386fa12c5991 --- /dev/null +++ b/entity/Classification_entity/entityfields/classificationscore_id/titleProcess.js @@ -0,0 +1,5 @@ +import("system.result"); +import("system.vars"); +import("system.translate"); + +result.string(translate.text(vars.get("$field.SCORETYPE"))) \ No newline at end of file diff --git a/entity/SalesprojectClassification_entity/entityfields/salesprojectclassificationentries/children/classid_param/valueProcess.js b/entity/Classification_entity/entityfields/classificationscores/children/scoretype_param/valueProcess.js similarity index 52% rename from entity/SalesprojectClassification_entity/entityfields/salesprojectclassificationentries/children/classid_param/valueProcess.js rename to entity/Classification_entity/entityfields/classificationscores/children/scoretype_param/valueProcess.js index a5632992f1eb801942517498616c86a95f49b737..5b4133d616996e3340521a9fb7831ea77f95fb8d 100644 --- a/entity/SalesprojectClassification_entity/entityfields/salesprojectclassificationentries/children/classid_param/valueProcess.js +++ b/entity/Classification_entity/entityfields/classificationscores/children/scoretype_param/valueProcess.js @@ -1,4 +1,4 @@ -import("system.result"); import("system.vars"); +import("system.result"); -result.string(vars.getString("$field.UID")); \ No newline at end of file +result.string(vars.get("$field.SCORETYPE")); \ No newline at end of file diff --git a/entity/Classification_entity/entityfields/classificationtype_id/valueProcess.js b/entity/Classification_entity/entityfields/classificationtype_id/valueProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..e49c8fad1ac02b78443eda6f571e2589b11afc7c --- /dev/null +++ b/entity/Classification_entity/entityfields/classificationtype_id/valueProcess.js @@ -0,0 +1,8 @@ +import("system.result"); +import("system.neon"); +import("system.vars"); + +if (vars.get("$sys.recordstate") == neon.OPERATINGSTATE_EDIT && !vars.get("$this.value")) +{ + result.string(vars.get("$field.CLASSIFICATIONTYPEID")); +} \ No newline at end of file diff --git a/entity/Classification_entity/entityfields/edit/onActionProcess.js b/entity/Classification_entity/entityfields/edit/onActionProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..fc26827b9f7619e95194849a5e1e846613f9e0ca --- /dev/null +++ b/entity/Classification_entity/entityfields/edit/onActionProcess.js @@ -0,0 +1,18 @@ +import("system.logging"); +import("system.vars"); +import("system.neon"); +import("KeywordRegistry_basic"); + +var selection = JSON.parse(vars.getString("$sys.selectionRows")); +if (selection.length > 0) +{ + var params = { + "ClassificationType_param" : vars.get("$param.ClassificationType_param"), + "ObjectType_param" : vars.get("$param.ObjectType_param"), + "ObjectRowid_param" : vars.get("$param.ObjectRowid_param") + } + + neon.openContext("Classification", null, [selection[0].UID], neon.OPERATINGSTATE_EDIT, params); +} + + diff --git a/entity/Classification_entity/entityfields/object_rowid/valueProcess.js b/entity/Classification_entity/entityfields/object_rowid/valueProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..d15a596ff1090502ac8cd6afd63e12893ce05625 --- /dev/null +++ b/entity/Classification_entity/entityfields/object_rowid/valueProcess.js @@ -0,0 +1,8 @@ +import("system.result"); +import("system.neon"); +import("system.vars"); + +if (vars.get("$sys.recordstate") == neon.OPERATINGSTATE_EDIT && !vars.get("$this.value")) +{ + result.string(vars.get("$param.ObjectRowid_param")); +} \ No newline at end of file diff --git a/entity/Classification_entity/entityfields/object_type/valueProcess.js b/entity/Classification_entity/entityfields/object_type/valueProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..b532aa65a135891c68363e05f02e3420967f409a --- /dev/null +++ b/entity/Classification_entity/entityfields/object_type/valueProcess.js @@ -0,0 +1,8 @@ +import("system.result"); +import("system.neon"); +import("system.vars"); + +if (vars.get("$sys.recordstate") == neon.OPERATINGSTATE_EDIT && !vars.get("$this.value")) +{ + result.string(vars.get("$param.ObjectType_param")); +} \ No newline at end of file diff --git a/entity/Classification_entity/entityfields/scoretype/displayValueProcess.js b/entity/Classification_entity/entityfields/scoretype/displayValueProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..002fb0103bfb70fcaf7ad4f979a2d8b4b96c6295 --- /dev/null +++ b/entity/Classification_entity/entityfields/scoretype/displayValueProcess.js @@ -0,0 +1,5 @@ +import("system.translate"); +import("system.vars"); +import("system.result"); + +result.string(translate.text(vars.get("$this.value"))) \ No newline at end of file diff --git a/entity/Classification_entity/recordcontainers/jdito/contentProcess.js b/entity/Classification_entity/recordcontainers/jdito/contentProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..3c913566222c986e9037781ce1b8ce9f1fa62c36 --- /dev/null +++ b/entity/Classification_entity/recordcontainers/jdito/contentProcess.js @@ -0,0 +1,35 @@ +import("system.vars"); +import("Sql_lib"); +import("system.db"); +import("system.result"); + +var classificationId; +var classificationTypeId; + +// if the id starts with "C," it is a classificationId. If it starts with "T,", it is a classificationtypeId +if (vars.exists("$local.idvalues") && vars.get("$local.idvalues") && vars.get("$local.idvalues").length > 0) +{ + var selected = vars.get("$local.idvalues")[0].split(","); + if (selected.length == 2) + { + if (selected[0] == 'C') + classificationId = selected[1] + else if (selected[0] == 'T') + classificationTypeId = selected[1] + } +} + +var cond = SqlCondition.begin() + .andPrepareVars("CLASSIFICATIONTYPE.CLASSIFICATIONTYPE", "$param.ClassificationType_param") + + .andPrepareIfSet("CLASSIFICATION.CLASSIFICATIONID", classificationId) + +if (!classificationId) + cond.andPrepareIfSet("CLASSIFICATIONTYPE.CLASSIFICATIONTYPEID", classificationTypeId) + .andSqlCondition(SqlCondition.begin().orPrepareVars("CLASSIFICATION.OBJECT_TYPE", "$param.ObjectType_param") + .or("CLASSIFICATION.OBJECT_TYPE is null")) + .andSqlCondition(SqlCondition.begin().orPrepareVars("CLASSIFICATION.OBJECT_ROWID", "$param.ObjectRowid_param") + .or("CLASSIFICATION.OBJECT_ROWID is null")) + +result.object(db.table(cond.buildSql("select case when CLASSIFICATIONID is not null then 'C,' || CLASSIFICATIONID else 'T,' || CLASSIFICATIONTYPEID end, CLASSIFICATIONID, CLASSIFICATIONNUMBER, CLASSIFICATIONSCORE_ID, CLASSIFICATIONTYPEID, CLASSIFICATIONTYPE_ID, OBJECT_TYPE, OBJECT_ROWID, SCORETYPE from CLASSIFICATION \n\ + right join CLASSIFICATIONTYPE on CLASSIFICATIONTYPE_ID = CLASSIFICATIONTYPEID", "1=2", "order by CLASSIFICATIONNUMBER asc"))); \ No newline at end of file diff --git a/entity/Classification_entity/recordcontainers/jdito/onUpdate.js b/entity/Classification_entity/recordcontainers/jdito/onUpdate.js new file mode 100644 index 0000000000000000000000000000000000000000..d856750d58b5aaa505819006a3e1e899415df880 --- /dev/null +++ b/entity/Classification_entity/recordcontainers/jdito/onUpdate.js @@ -0,0 +1,33 @@ +import("system.neon"); +import("system.util"); +import("Sql_lib"); +import("system.db"); +import("system.vars"); + +// check if it already exists +if (vars.get("$field.CLASSIFICATIONID")) +{ + if (vars.get("$field.CLASSIFICATIONSCORE_ID")) + { + db.updateData("CLASSIFICATION", ["CLASSIFICATIONSCORE_ID"], null, [ + vars.get("$field.CLASSIFICATIONSCORE_ID") + ], SqlCondition.equals("CLASSIFICATION.CLASSIFICATIONID", vars.get("$field.CLASSIFICATIONID"), "1=2")); + } + else + { + db.deleteData("CLASSIFICATION", SqlCondition.equals("CLASSIFICATION.CLASSIFICATIONID", vars.get("$field.CLASSIFICATIONID"))); + } +} +else if (vars.get("$field.CLASSIFICATIONSCORE_ID")) +{ + var newId = util.getNewUUID(); + db.insertData("CLASSIFICATION", ["CLASSIFICATIONID", "OBJECT_TYPE", "OBJECT_ROWID", "CLASSIFICATIONTYPE_ID", "CLASSIFICATIONSCORE_ID"], null, [ + newId, + vars.get("$field.OBJECT_TYPE"), + vars.get("$field.OBJECT_ROWID"), + vars.get("$field.CLASSIFICATIONTYPE_ID"), + vars.get("$field.CLASSIFICATIONSCORE_ID"), + ]); + + neon.setFieldValue("$field.CLASSIFICATIONID", newId); +} \ No newline at end of file diff --git a/entity/SalesprojectClassificationEntry_entity/SalesprojectClassificationEntry_entity.aod b/entity/SalesprojectClassificationEntry_entity/SalesprojectClassificationEntry_entity.aod index ea1ba9eb8fa962e253cd835ff59f4630a001fee6..bcc6c554043872ac60afdd495aae3365dadeb23a 100644 --- a/entity/SalesprojectClassificationEntry_entity/SalesprojectClassificationEntry_entity.aod +++ b/entity/SalesprojectClassificationEntry_entity/SalesprojectClassificationEntry_entity.aod @@ -11,14 +11,6 @@ <name>SalesprojectClassificatonEntries</name> <fieldType>DEPENDENCY_IN</fieldType> <recordContainer>jdito</recordContainer> - <dependencies> - <entityDependency> - <name>a7414022-56d3-4ca0-b15f-33601b655d78</name> - <entityName>SalesprojectClassification_entity</entityName> - <fieldName>SalesprojectClassificationEntries</fieldName> - <isConsumer v="false" /> - </entityDependency> - </dependencies> <children> <entityParameter> <name>ClassId_param</name> diff --git a/entity/SalesprojectClassification_entity/SalesprojectClassification_entity.aod b/entity/SalesprojectClassification_entity/SalesprojectClassification_entity.aod deleted file mode 100644 index c4b9f4f6472a21dfa1558e3170f9793feff6375b..0000000000000000000000000000000000000000 --- a/entity/SalesprojectClassification_entity/SalesprojectClassification_entity.aod +++ /dev/null @@ -1,81 +0,0 @@ -<?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.3.4" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/entity/1.3.4"> - <name>SalesprojectClassification_entity</name> - <majorModelMode>DISTRIBUTED</majorModelMode> - <title>Classification</title> - <recordContainer>jdito</recordContainer> - <entityFields> - <entityProvider> - <name>#PROVIDER</name> - </entityProvider> - <entityField> - <name>CLASSNAME</name> - </entityField> - <entityConsumer> - <name>SalesprojectClassificationEntries</name> - <fieldType>DEPENDENCY_OUT</fieldType> - <dependency> - <name>dependency</name> - <entityName>SalesprojectClassificationEntry_entity</entityName> - <fieldName>SalesprojectClassificatonEntries</fieldName> - </dependency> - <children> - <entityParameter> - <name>ClassId_param</name> - <valueProcess>%aditoprj%/entity/SalesprojectClassification_entity/entityfields/salesprojectclassificationentries/children/classid_param/valueProcess.js</valueProcess> - <triggerRecalculation v="true" /> - </entityParameter> - <entityParameter> - <name>SalesprojectId_param</name> - <valueProcess>%aditoprj%/entity/SalesprojectClassification_entity/entityfields/salesprojectclassificationentries/children/salesprojectid_param/valueProcess.js</valueProcess> - <triggerRecalculation v="true" /> - </entityParameter> - </children> - </entityConsumer> - <entityProvider> - <name>SalesprojectClassifications</name> - <fieldType>DEPENDENCY_IN</fieldType> - <titlePlural>Classification</titlePlural> - <recordContainer>jdito</recordContainer> - <dependencies> - <entityDependency> - <name>a56beadb-61a5-4065-a64a-f9f136dd4996</name> - <entityName>Salesproject_entity</entityName> - <fieldName>SalesprojectClassifications</fieldName> - <isConsumer v="false" /> - </entityDependency> - </dependencies> - <children> - <entityParameter> - <name>SalesprojectId_param</name> - <expose v="true" /> - </entityParameter> - </children> - </entityProvider> - <entityField> - <name>UID</name> - </entityField> - <entityParameter> - <name>SalesprojectId_param</name> - <expose v="true" /> - <triggerRecalculation v="true" /> - <mandatory v="true" /> - <description>PARAMETER</description> - </entityParameter> - <entityField> - <name>POINTS</name> - <valueProcess>%aditoprj%/entity/SalesprojectClassification_entity/entityfields/points/valueProcess.js</valueProcess> - </entityField> - </entityFields> - <recordContainers> - <jDitoRecordContainer> - <name>jdito</name> - <jDitoRecordAlias>Data_alias</jDitoRecordAlias> - <contentProcess>%aditoprj%/entity/SalesprojectClassification_entity/recordcontainers/jdito/contentProcess.js</contentProcess> - <recordFields> - <element>UID.value</element> - <element>CLASSNAME.value</element> - </recordFields> - </jDitoRecordContainer> - </recordContainers> -</entity> diff --git a/entity/SalesprojectClassification_entity/contentProcess.js b/entity/SalesprojectClassification_entity/contentProcess.js deleted file mode 100644 index bb0a011684fcc7b40aefaaac225bd985aa83c0ec..0000000000000000000000000000000000000000 --- a/entity/SalesprojectClassification_entity/contentProcess.js +++ /dev/null @@ -1,19 +0,0 @@ -import("system.result"); -import("system.vars"); -import("Keyword_lib"); - -var keyword = LegacyKeywordUtils.createKeyword("SALESPROJECT.CLASS"); - -if (vars.exists("$local.idvalues") && vars.get("$local.idvalues")) { - var idValues = vars.get("$local.idvalues"); - - if (idValues.length > 0) { - keyword.filter(function(id) { - return id == idValues[0]; - }); - } -} -result.object(keyword.toArray(["id", "name"])); - - -//TODO correct db if kewords changed diff --git a/entity/SalesprojectClassification_entity/entityfields/points/valueProcess.js b/entity/SalesprojectClassification_entity/entityfields/points/valueProcess.js deleted file mode 100644 index 5b74382810fde5dda8a728acd2e9c6ce0b1709bf..0000000000000000000000000000000000000000 --- a/entity/SalesprojectClassification_entity/entityfields/points/valueProcess.js +++ /dev/null @@ -1,4 +0,0 @@ -import("system.result"); - -// TODO: load from Entry. Currently this is not possible. -result.object(50); // return dummy value \ No newline at end of file diff --git a/entity/SalesprojectClassification_entity/entityfields/salesprojectclassificationentries/children/salesprojectid_param/valueProcess.js b/entity/SalesprojectClassification_entity/entityfields/salesprojectclassificationentries/children/salesprojectid_param/valueProcess.js deleted file mode 100644 index 098d87cfa55579898b8da11975f3fb345672247f..0000000000000000000000000000000000000000 --- a/entity/SalesprojectClassification_entity/entityfields/salesprojectclassificationentries/children/salesprojectid_param/valueProcess.js +++ /dev/null @@ -1,4 +0,0 @@ -import("system.result"); -import("system.vars"); - -result.string(vars.getString("$param.SalesprojectId_param")); \ No newline at end of file diff --git a/entity/SalesprojectClassification_entity/recordcontainers/jdito/contentProcess.js b/entity/SalesprojectClassification_entity/recordcontainers/jdito/contentProcess.js deleted file mode 100644 index bb0a011684fcc7b40aefaaac225bd985aa83c0ec..0000000000000000000000000000000000000000 --- a/entity/SalesprojectClassification_entity/recordcontainers/jdito/contentProcess.js +++ /dev/null @@ -1,19 +0,0 @@ -import("system.result"); -import("system.vars"); -import("Keyword_lib"); - -var keyword = LegacyKeywordUtils.createKeyword("SALESPROJECT.CLASS"); - -if (vars.exists("$local.idvalues") && vars.get("$local.idvalues")) { - var idValues = vars.get("$local.idvalues"); - - if (idValues.length > 0) { - keyword.filter(function(id) { - return id == idValues[0]; - }); - } -} -result.object(keyword.toArray(["id", "name"])); - - -//TODO correct db if kewords changed diff --git a/entity/Salesproject_entity/Salesproject_entity.aod b/entity/Salesproject_entity/Salesproject_entity.aod index f5a2c0ac636011e8918b72ec9a3c00718dc27cb0..993787b67b39900cfbeaf1768bf757f0cdf4314e 100644 --- a/entity/Salesproject_entity/Salesproject_entity.aod +++ b/entity/Salesproject_entity/Salesproject_entity.aod @@ -244,21 +244,6 @@ </entityParameter> </children> </entityConsumer> - <entityConsumer> - <name>SalesprojectClassifications</name> - <fieldType>DEPENDENCY_OUT</fieldType> - <dependency> - <name>dependency</name> - <entityName>SalesprojectClassification_entity</entityName> - <fieldName>SalesprojectClassifications</fieldName> - </dependency> - <children> - <entityParameter> - <name>SalesprojectId_param</name> - <valueProcess>%aditoprj%/entity/Salesproject_entity/entityfields/salesprojectclassifications/children/salesprojectid_param/valueProcess.js</valueProcess> - </entityParameter> - </children> - </entityConsumer> <entityActionField> <name>newOffer</name> <fieldType>ACTION</fieldType> @@ -599,6 +584,29 @@ </entityParameter> </children> </entityConsumer> + <entityConsumer> + <name>Classifications</name> + <fieldType>DEPENDENCY_OUT</fieldType> + <dependency> + <name>dependency</name> + <entityName>Classification_entity</entityName> + <fieldName>Classifications</fieldName> + </dependency> + <children> + <entityParameter> + <name>ObjectRowid_param</name> + <valueProcess>%aditoprj%/entity/Salesproject_entity/entityfields/classifications/children/objectrowid_param/valueProcess.js</valueProcess> + </entityParameter> + <entityParameter> + <name>ObjectType_param</name> + <valueProcess>%aditoprj%/entity/Salesproject_entity/entityfields/classifications/children/objecttype_param/valueProcess.js</valueProcess> + </entityParameter> + <entityParameter> + <name>ClassificationType_param</name> + <valueProcess>%aditoprj%/entity/Salesproject_entity/entityfields/classifications/children/classificationtype_param/valueProcess.js</valueProcess> + </entityParameter> + </children> + </entityConsumer> <entityField> <name>RemainingTime</name> <title>Days remaining</title> @@ -609,6 +617,11 @@ <title>Days running</title> <valueProcess>%aditoprj%/entity/Salesproject_entity/entityfields/runtime/valueProcess.js</valueProcess> </entityField> + <entityField> + <name>ClassificationResult</name> + <title>Classification</title> + <valueProcess>%aditoprj%/entity/Salesproject_entity/entityfields/classificationresult/valueProcess.js</valueProcess> + </entityField> </entityFields> <recordContainers> <dbRecordContainer> diff --git a/entity/Salesproject_entity/entityfields/classificationresult/valueProcess.js b/entity/Salesproject_entity/entityfields/classificationresult/valueProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..d120e5bb6d7d5b266e2b2a46ca2e13e3d5c8c382 --- /dev/null +++ b/entity/Salesproject_entity/entityfields/classificationresult/valueProcess.js @@ -0,0 +1,6 @@ +import("system.vars"); +import("system.result"); +import("Classification_lib") +import("Context_lib") + +result.string(ClassificationUtils.getClass("968eafa3-3e76-4afa-8999-878e51cc3bab", ContextUtils.getCurrentContextId(), vars.get("$sys.uid"))); \ No newline at end of file diff --git a/entity/Salesproject_entity/entityfields/classifications/children/classificationtype_param/valueProcess.js b/entity/Salesproject_entity/entityfields/classifications/children/classificationtype_param/valueProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..0f664a349180456fb39a1e5ebc877015b49fc221 --- /dev/null +++ b/entity/Salesproject_entity/entityfields/classifications/children/classificationtype_param/valueProcess.js @@ -0,0 +1,3 @@ +import("system.result"); + +result.string("968eafa3-3e76-4afa-8999-878e51cc3bab"); \ No newline at end of file diff --git a/entity/Salesproject_entity/entityfields/classifications/children/objectrowid_param/valueProcess.js b/entity/Salesproject_entity/entityfields/classifications/children/objectrowid_param/valueProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..533f8ec837ea2f9b588ddf05545ac47cdda23d18 --- /dev/null +++ b/entity/Salesproject_entity/entityfields/classifications/children/objectrowid_param/valueProcess.js @@ -0,0 +1,4 @@ +import("system.vars"); +import("system.result"); + +result.string(vars.get("$sys.uid")); \ No newline at end of file diff --git a/entity/Salesproject_entity/entityfields/classifications/children/objecttype_param/valueProcess.js b/entity/Salesproject_entity/entityfields/classifications/children/objecttype_param/valueProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..008915f61deac19ccdd40fff81701de63eb3b6a2 --- /dev/null +++ b/entity/Salesproject_entity/entityfields/classifications/children/objecttype_param/valueProcess.js @@ -0,0 +1,4 @@ +import("system.result"); +import("Context_lib"); + +result.string(ContextUtils.getCurrentContextId()); \ No newline at end of file diff --git a/entity/Salesproject_entity/entityfields/salesprojectclassifications/children/salesprojectid_param/valueProcess.js b/entity/Salesproject_entity/entityfields/salesprojectclassifications/children/salesprojectid_param/valueProcess.js deleted file mode 100644 index b9a94c51a19da02962159545a287ddc773e7320d..0000000000000000000000000000000000000000 --- a/entity/Salesproject_entity/entityfields/salesprojectclassifications/children/salesprojectid_param/valueProcess.js +++ /dev/null @@ -1,4 +0,0 @@ -import("system.result"); -import("system.vars"); - -result.string(vars.getString("$field.SALESPROJECTID")); \ No newline at end of file diff --git a/language/_____LANGUAGE_EXTRA/_____LANGUAGE_EXTRA.aod b/language/_____LANGUAGE_EXTRA/_____LANGUAGE_EXTRA.aod index b908568e9ebd7ec7834f19a18c47de3983963c59..637c76a0db15a82dc037ed98ee91acffe767855d 100644 --- a/language/_____LANGUAGE_EXTRA/_____LANGUAGE_EXTRA.aod +++ b/language/_____LANGUAGE_EXTRA/_____LANGUAGE_EXTRA.aod @@ -3597,6 +3597,177 @@ <entry> <key>HTML</key> </entry> + <entry> + <key>Student/Internship</key> + </entry> + <entry> + <key>Food</key> + </entry> + <entry> + <key>200 to 349T</key> + </entry> + <entry> + <key>Within 6 months</key> + </entry> + <entry> + <key>No project planned</key> + </entry> + <entry> + <key>Logistics</key> + </entry> + <entry> + <key>Skilled workers</key> + </entry> + <entry> + <key>Purchasing</key> + </entry> + <entry> + <key>Rate</key> + </entry> + <entry> + <key>Choice</key> + </entry> + <entry> + <key>points</key> + </entry> + <entry> + <key>Education</key> + </entry> + <entry> + <key>Public</key> + </entry> + <entry> + <key>Building and construction suppliers</key> + </entry> + <entry> + <key>0 to 49</key> + </entry> + <entry> + <key>0 to 49T</key> + </entry> + <entry> + <key>CRM Manager</key> + </entry> + <entry> + <key>50 to 99T</key> + </entry> + <entry> + <key>Search</key> + </entry> + <entry> + <key>Counsellor</key> + </entry> + <entry> + <key>50 to 100</key> + </entry> + <entry> + <key>OnPremise</key> + </entry> + <entry> + <key>Head of IT</key> + </entry> + <entry> + <key>251 to 1000</key> + </entry> + <entry> + <key>Electric</key> + </entry> + <entry> + <key>from 1,000</key> + </entry> + <entry> + <key>Publishing house</key> + </entry> + <entry> + <key>100 to 199T</key> + </entry> + <entry> + <key>101 to 250</key> + </entry> + <entry> + <key>Overarching</key> + </entry> + <entry> + <key>Energy</key> + </entry> + <entry> + <key>Machinery and equipment</key> + </entry> + <entry> + <key>Trade</key> + </entry> + <entry> + <key>Consultation</key> + </entry> + <entry> + <key>Cloud</key> + </entry> + <entry> + <key>No date yet</key> + </entry> + <entry> + <key>Classifications</key> + </entry> + <entry> + <key>Service Manager</key> + </entry> + <entry> + <key>Lifesience</key> + </entry> + <entry> + <key>Automotive</key> + </entry> + <entry> + <key>Lottery</key> + </entry> + <entry> + <key>from 350T</key> + </entry> + <entry> + <key>Management/Sales Manager</key> + </entry> + <entry> + <key>Environment</key> + </entry> + <entry> + <key>Within 12 months</key> + </entry> + <entry> + <key>Finance</key> + </entry> + <entry> + <key>ScoreProjectStart</key> + </entry> + <entry> + <key>ScoreStandard</key> + </entry> + <entry> + <key>ScoreCustomizing</key> + </entry> + <entry> + <key>ScoreDecisionPhase</key> + </entry> + <entry> + <key>ScoreUsers</key> + </entry> + <entry> + <key>ScoreBranch</key> + </entry> + <entry> + <key>ScorePosition</key> + </entry> + <entry> + <key>ScoreBudget</key> + </entry> + <entry> + <key>ScoreDepartment</key> + </entry> + <entry> + <key>ScoreCloud</key> + </entry> + <entry> + <key>ScoreBased</key> + </entry> </keyValueMap> <font name="Dialog" style="0" size="11" /> <sqlModels> @@ -3610,7 +3781,11 @@ select AB_LANGUAGE.NAME_LATIN from AB_LANGUAGE union select AB_COUNTRYINFO.NAME_LATIN from AB_COUNTRYINFO union -select AB_OBJECTRELATIONTYPE.RELATION_TITLE from AB_OBJECTRELATIONTYPE</element> +select AB_OBJECTRELATIONTYPE.RELATION_TITLE from AB_OBJECTRELATIONTYPE +union +select TITLE from CLASSIFICATIONSCORE +union +select SCORETYPE from CLASSIFICATIONTYPE</element> </statements> </languageSql> </sqlModels> diff --git a/language/_____LANGUAGE_de/_____LANGUAGE_de.aod b/language/_____LANGUAGE_de/_____LANGUAGE_de.aod index 750e30d6235e8373614b63764f7f74897af592e1..0da4f7bb32c6b7821bb3b685c8f57ed7caba3d87 100644 --- a/language/_____LANGUAGE_de/_____LANGUAGE_de.aod +++ b/language/_____LANGUAGE_de/_____LANGUAGE_de.aod @@ -4480,6 +4480,234 @@ <entry> <key>HTML</key> </entry> + <entry> + <key>Student/Internship</key> + <value>Student/Praktikant</value> + </entry> + <entry> + <key>Food</key> + <value>Lebensmittel</value> + </entry> + <entry> + <key>200 to 349T</key> + <value>200 bis 349T</value> + </entry> + <entry> + <key>Within 6 months</key> + <value>Innerhalb 6 Monaten</value> + </entry> + <entry> + <key>No project planned</key> + <value>Kein Projekt geplant</value> + </entry> + <entry> + <key>Logistics</key> + <value>Logistik</value> + </entry> + <entry> + <key>Skilled workers</key> + <value>Fachkräfte</value> + </entry> + <entry> + <key>Purchasing</key> + <value>Einkauf</value> + </entry> + <entry> + <key>Rate</key> + <value>Bewerten</value> + </entry> + <entry> + <key>Choice</key> + <value>Auswahl</value> + </entry> + <entry> + <key>points</key> + <value>Punkte</value> + </entry> + <entry> + <key>Education</key> + <value>Bildung</value> + </entry> + <entry> + <key>Public</key> + <value>Öffentlich</value> + </entry> + <entry> + <key>Building and construction suppliers</key> + <value>Bau- und Bauzulieferer</value> + </entry> + <entry> + <key>0 to 49</key> + <value>0 bis 49</value> + </entry> + <entry> + <key>0 to 49T</key> + <value>0 bis 49T</value> + </entry> + <entry> + <key>CRM Manager</key> + <value>Leiter CRM</value> + </entry> + <entry> + <key>50 to 99T</key> + <value>50 bis 99T</value> + </entry> + <entry> + <key>Search</key> + <value>Suchen</value> + </entry> + <entry> + <key>Counsellor</key> + <value>Berater</value> + </entry> + <entry> + <key>50 to 100</key> + <value>50 bis 100</value> + </entry> + <entry> + <key>OnPremise</key> + <value>OnPremise</value> + </entry> + <entry> + <key>Head of IT</key> + <value>Leiter IT</value> + </entry> + <entry> + <key>251 to 1000</key> + <value>251 bis 1000</value> + </entry> + <entry> + <key>Electric</key> + <value>Elektro</value> + </entry> + <entry> + <key>from 1,000</key> + <value>ab 1.000</value> + </entry> + <entry> + <key>Publishing house</key> + <value>Verlag</value> + </entry> + <entry> + <key>100 to 199T</key> + <value>100 bis 199T</value> + </entry> + <entry> + <key>101 to 250</key> + <value>101 bis 250</value> + </entry> + <entry> + <key>Overarching</key> + <value>Übergreifend</value> + </entry> + <entry> + <key>Energy</key> + <value>Energie</value> + </entry> + <entry> + <key>Machinery and equipment</key> + <value>Maschinen und Anlagen</value> + </entry> + <entry> + <key>Trade</key> + <value>Handel</value> + </entry> + <entry> + <key>Consultation</key> + <value>Beratung</value> + </entry> + <entry> + <key>Cloud</key> + <value>Cloud</value> + </entry> + <entry> + <key>No date yet</key> + <value>Noch kein Termin</value> + </entry> + <entry> + <key>Classifications</key> + <value>Klassifizierungen</value> + </entry> + <entry> + <key>Service Manager</key> + <value>Leiter Service</value> + </entry> + <entry> + <key>Lifesience</key> + <value>Lifesience</value> + </entry> + <entry> + <key>Automotive</key> + <value>Automotive</value> + </entry> + <entry> + <key>Lottery</key> + <value>Lotterie</value> + </entry> + <entry> + <key>from 350T</key> + <value>ab 350T</value> + </entry> + <entry> + <key>Management/Sales Manager</key> + <value>GF/Leiter Vertrieb</value> + </entry> + <entry> + <key>Environment</key> + <value>Umwelt</value> + </entry> + <entry> + <key>Within 12 months</key> + <value>Innerhalb 12 Monaten</value> + </entry> + <entry> + <key>Finance</key> + <value>Finanz</value> + </entry> + <entry> + <key>ScoreProjectStart</key> + <value>Projektstart</value> + </entry> + <entry> + <key>ScoreStandard</key> + <value>Standard</value> + </entry> + <entry> + <key>ScoreCustomizing</key> + <value>Eigenentwicklung</value> + </entry> + <entry> + <key>ScoreDecisionPhase</key> + <value>Entscheidungsphase</value> + </entry> + <entry> + <key>ScoreUsers</key> + <value>Anzahl Anwender</value> + </entry> + <entry> + <key>ScoreBranch</key> + <value>Branche</value> + </entry> + <entry> + <key>ScorePosition</key> + <value>Position</value> + </entry> + <entry> + <key>ScoreBudget</key> + <value>Projektbudget</value> + </entry> + <entry> + <key>ScoreDepartment</key> + <value>Einsatzbereich</value> + </entry> + <entry> + <key>ScoreCloud</key> + <value>Betriebsmodel</value> + </entry> + <entry> + <key>ScoreBased</key> + <value>Unternehmenssitz</value> + </entry> </keyValueMap> <font name="Dialog" style="0" size="11" /> </language> diff --git a/language/_____LANGUAGE_en/_____LANGUAGE_en.aod b/language/_____LANGUAGE_en/_____LANGUAGE_en.aod index 24b30fb02eb90e1bd007f43e3ad0b2f22c57e990..66eca5a1baaf1e7f26bef3b8ab0887da0808ddd5 100644 --- a/language/_____LANGUAGE_en/_____LANGUAGE_en.aod +++ b/language/_____LANGUAGE_en/_____LANGUAGE_en.aod @@ -3632,6 +3632,188 @@ <entry> <key>HTML</key> </entry> + <entry> + <key>Student/Internship</key> + </entry> + <entry> + <key>Food</key> + </entry> + <entry> + <key>200 to 349T</key> + </entry> + <entry> + <key>Within 6 months</key> + </entry> + <entry> + <key>No project planned</key> + </entry> + <entry> + <key>Logistics</key> + </entry> + <entry> + <key>Skilled workers</key> + </entry> + <entry> + <key>Purchasing</key> + </entry> + <entry> + <key>Rate</key> + </entry> + <entry> + <key>Choice</key> + </entry> + <entry> + <key>points</key> + </entry> + <entry> + <key>Education</key> + </entry> + <entry> + <key>Public</key> + </entry> + <entry> + <key>Building and construction suppliers</key> + </entry> + <entry> + <key>0 to 49</key> + </entry> + <entry> + <key>0 to 49T</key> + </entry> + <entry> + <key>CRM Manager</key> + </entry> + <entry> + <key>50 to 99T</key> + </entry> + <entry> + <key>Search</key> + </entry> + <entry> + <key>Counsellor</key> + </entry> + <entry> + <key>50 to 100</key> + </entry> + <entry> + <key>OnPremise</key> + </entry> + <entry> + <key>Head of IT</key> + </entry> + <entry> + <key>251 to 1000</key> + </entry> + <entry> + <key>Electric</key> + </entry> + <entry> + <key>from 1,000</key> + </entry> + <entry> + <key>Publishing house</key> + </entry> + <entry> + <key>100 to 199T</key> + </entry> + <entry> + <key>101 to 250</key> + </entry> + <entry> + <key>Overarching</key> + </entry> + <entry> + <key>Energy</key> + </entry> + <entry> + <key>Machinery and equipment</key> + </entry> + <entry> + <key>Trade</key> + </entry> + <entry> + <key>Consultation</key> + </entry> + <entry> + <key>Cloud</key> + </entry> + <entry> + <key>No date yet</key> + </entry> + <entry> + <key>Classifications</key> + </entry> + <entry> + <key>Service Manager</key> + </entry> + <entry> + <key>Lifesience</key> + </entry> + <entry> + <key>Automotive</key> + </entry> + <entry> + <key>Lottery</key> + </entry> + <entry> + <key>from 350T</key> + </entry> + <entry> + <key>Management/Sales Manager</key> + </entry> + <entry> + <key>Environment</key> + </entry> + <entry> + <key>Within 12 months</key> + </entry> + <entry> + <key>Finance</key> + </entry> + <entry> + <key>ScoreProjectStart</key> + <value>Project start</value> + </entry> + <entry> + <key>ScoreStandard</key> + <value>Standard</value> + </entry> + <entry> + <key>ScoreCustomizing</key> + <value>Customizing</value> + </entry> + <entry> + <key>ScoreDecisionPhase</key> + <value>Desicion phase</value> + </entry> + <entry> + <key>ScoreUsers</key> + <value>User count</value> + </entry> + <entry> + <key>ScoreBranch</key> + <value>Branche</value> + </entry> + <entry> + <key>ScorePosition</key> + <value>Position</value> + </entry> + <entry> + <key>ScoreBudget</key> + <value>Project budget</value> + </entry> + <entry> + <key>ScoreDepartment</key> + <value>department</value> + </entry> + <entry> + <key>ScoreCloud</key> + <value>Operating model</value> + </entry> + <entry> + <key>ScoreBased</key> + <value>Headquarters</value> + </entry> </keyValueMap> <font name="Dialog" style="0" size="11" /> </language> diff --git a/neonContext/Classification/Classification.aod b/neonContext/Classification/Classification.aod new file mode 100644 index 0000000000000000000000000000000000000000..0cd0872e6da4901c6be6b0c00741e029e3415196 --- /dev/null +++ b/neonContext/Classification/Classification.aod @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="UTF-8"?> +<neonContext xmlns="http://www.adito.de/2018/ao/Model" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" VERSION="1.1.0" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/neonContext/1.1.0"> + <name>Classification</name> + <majorModelMode>DISTRIBUTED</majorModelMode> + <filterview>ClassificationFilter_view</filterview> + <editview>ClassificatonEdit_view</editview> + <entity>Classification_entity</entity> + <references> + <neonViewReference> + <name>3ab6b4d1-e6db-42be-8262-2499a3d114e9</name> + <view>ClassificationFilter_view</view> + </neonViewReference> + <neonViewReference> + <name>359f42a2-1014-4d81-aa65-8f6aeba10f2d</name> + <view>ClassificatonEdit_view</view> + </neonViewReference> + </references> +</neonContext> diff --git a/neonContext/ClassificationScore/ClassificationScore.aod b/neonContext/ClassificationScore/ClassificationScore.aod new file mode 100644 index 0000000000000000000000000000000000000000..40acc9b7b919d5c751ec8b83e09933624e82612b --- /dev/null +++ b/neonContext/ClassificationScore/ClassificationScore.aod @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<neonContext xmlns="http://www.adito.de/2018/ao/Model" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" VERSION="1.1.0" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/neonContext/1.1.0"> + <name>ClassificationScore</name> + <majorModelMode>DISTRIBUTED</majorModelMode> + <entity>ClassificationScore_entity</entity> + <references> + <neonViewReference> + <name>37528084-08cb-4b5b-9072-4bbfad64a6d8</name> + <view>ClassificationScoreFilter_view</view> + </neonViewReference> + </references> +</neonContext> diff --git a/neonContext/SalesprojectClassification/SalesprojectClassification.aod b/neonContext/SalesprojectClassification/SalesprojectClassification.aod deleted file mode 100644 index 76e29d04b86f10591bb48ff255822d4685510324..0000000000000000000000000000000000000000 --- a/neonContext/SalesprojectClassification/SalesprojectClassification.aod +++ /dev/null @@ -1,18 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<neonContext xmlns="http://www.adito.de/2018/ao/Model" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" VERSION="1.1.0" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/neonContext/1.1.0"> - <name>SalesprojectClassification</name> - <majorModelMode>DISTRIBUTED</majorModelMode> - <filterview>SalesprojectClassificationFilter_view</filterview> - <preview>SalesprojectClassificationPreview_view</preview> - <entity>SalesprojectClassification_entity</entity> - <references> - <neonViewReference> - <name>c0720a84-98a8-459d-bdf5-b3daf56ee059</name> - <view>SalesprojectClassificationFilter_view</view> - </neonViewReference> - <neonViewReference> - <name>e5f1c9a7-19a8-433e-b25e-83001d4f7bf8</name> - <view>SalesprojectClassificationPreview_view</view> - </neonViewReference> - </references> -</neonContext> diff --git a/neonContext/SalesprojectClassificationEntry/SalesprojectClassificationEntry.aod b/neonContext/SalesprojectClassificationEntry/SalesprojectClassificationEntry.aod deleted file mode 100644 index 80ff2cc86e9f990b1f5f596528eb5d2acf8ebf39..0000000000000000000000000000000000000000 --- a/neonContext/SalesprojectClassificationEntry/SalesprojectClassificationEntry.aod +++ /dev/null @@ -1,20 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<neonContext xmlns="http://www.adito.de/2018/ao/Model" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" VERSION="1.1.0" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/neonContext/1.1.0"> - <name>SalesprojectClassificationEntry</name> - <majorModelMode>DISTRIBUTED</majorModelMode> - <mainview>SalesprojectClassificationEntryPreview_view</mainview> - <filterview>SalesprojectClassificationEntryPreview_view</filterview> - <editview>SalesprojectClassificationEntryEdit_view</editview> - <preview>SalesprojectClassificationEntryPreview_view</preview> - <entity>SalesprojectClassificationEntry_entity</entity> - <references> - <neonViewReference> - <name>7cddda68-3dcb-4daf-84a4-1546298cabb6</name> - <view>SalesprojectClassificationEntryPreview_view</view> - </neonViewReference> - <neonViewReference> - <name>80205380-7785-43a3-af7b-73ef8112ca38</name> - <view>SalesprojectClassificationEntryEdit_view</view> - </neonViewReference> - </references> -</neonContext> diff --git a/neonView/ClassificationFilter_view/ClassificationFilter_view.aod b/neonView/ClassificationFilter_view/ClassificationFilter_view.aod new file mode 100644 index 0000000000000000000000000000000000000000..a26493be7cf497c0548ff4e4ded163a5fccb7873 --- /dev/null +++ b/neonView/ClassificationFilter_view/ClassificationFilter_view.aod @@ -0,0 +1,24 @@ +<?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.1.1" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/neonView/1.1.1"> + <name>ClassificationFilter_view</name> + <majorModelMode>DISTRIBUTED</majorModelMode> + <layout> + <boxLayout> + <name>layout</name> + </boxLayout> + </layout> + <children> + <treeViewTemplate> + <name>classificationTree</name> + <titleField>SCORETYPE</titleField> + <descriptionField>CLASSIFICATIONSCORE_ID</descriptionField> + <defaultGroupFields> + <element>CLASSIFICATIONNUMBER</element> + </defaultGroupFields> + <hideActions v="true" /> + <showChildrenCount v="false" /> + <entryAction>edit</entryAction> + <entityField>#ENTITY</entityField> + </treeViewTemplate> + </children> +</neonView> diff --git a/neonView/ClassificationScoreFilter_view/ClassificationScoreFilter_view.aod b/neonView/ClassificationScoreFilter_view/ClassificationScoreFilter_view.aod new file mode 100644 index 0000000000000000000000000000000000000000..f6b452fb6f041084655b89dd94eff966a91fa026 --- /dev/null +++ b/neonView/ClassificationScoreFilter_view/ClassificationScoreFilter_view.aod @@ -0,0 +1,38 @@ +<?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.1.1" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/neonView/1.1.1"> + <name>ClassificationScoreFilter_view</name> + <majorModelMode>DISTRIBUTED</majorModelMode> + <layout> + <boxLayout> + <name>layout</name> + </boxLayout> + </layout> + <children> + <tableViewTemplate> + <name>classificationScores</name> + <entityField>#ENTITY</entityField> + <columns> + <neonTableColumn> + <name>5e5b2031-820c-45cc-a1de-fd2e3a9f6844</name> + <entityField>CLASSIFICATIONSCOREID</entityField> + </neonTableColumn> + <neonTableColumn> + <name>84db5245-4eed-45c8-a924-61b9d1f69d3e</name> + <entityField>CLASSIFICATIONtYPE_ID</entityField> + </neonTableColumn> + <neonTableColumn> + <name>78b1eb2e-8507-4e99-909a-2d8db8b1d5d0</name> + <entityField>SCORE</entityField> + </neonTableColumn> + <neonTableColumn> + <name>14b9033f-6ec7-4742-97d1-ec88f431a095</name> + <entityField>SORT</entityField> + </neonTableColumn> + <neonTableColumn> + <name>517074dd-f01d-41cf-8d4e-13ac2546e91f</name> + <entityField>TITLE</entityField> + </neonTableColumn> + </columns> + </tableViewTemplate> + </children> +</neonView> diff --git a/neonView/SalesprojectClassificationEntryEdit_view/SalesprojectClassificationEntryEdit_view.aod b/neonView/ClassificatonEdit_view/ClassificatonEdit_view.aod similarity index 62% rename from neonView/SalesprojectClassificationEntryEdit_view/SalesprojectClassificationEntryEdit_view.aod rename to neonView/ClassificatonEdit_view/ClassificatonEdit_view.aod index 80dae257c9923647d887cebc7a44320ce1bff51d..f78d8182f006411155e2b752bc30f3fec6af8a68 100644 --- a/neonView/SalesprojectClassificationEntryEdit_view/SalesprojectClassificationEntryEdit_view.aod +++ b/neonView/ClassificatonEdit_view/ClassificatonEdit_view.aod @@ -1,26 +1,25 @@ -<?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.1.1" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/neonView/1.1.1"> - <name>SalesprojectClassificationEntryEdit_view</name> - <majorModelMode>DISTRIBUTED</majorModelMode> - <layout> - <boxLayout> - <name>layout</name> - </boxLayout> - </layout> - <children> - <genericViewTemplate> - <name>Edit</name> - <entityField>#ENTITY</entityField> - <fields> - <entityFieldLink> - <name>003f3304-b8fb-4009-ba55-b56d005191e3</name> - <entityField>NAME</entityField> - </entityFieldLink> - <entityFieldLink> - <name>90630f8e-8e32-4743-9b79-a1faa6e26414</name> - <entityField>VALUE</entityField> - </entityFieldLink> - </fields> - </genericViewTemplate> - </children> -</neonView> +<?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.1.1" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/neonView/1.1.1"> + <name>ClassificatonEdit_view</name> + <majorModelMode>DISTRIBUTED</majorModelMode> + <isSmall v="true" /> + <layout> + <boxLayout> + <name>layout</name> + </boxLayout> + </layout> + <children> + <genericViewTemplate> + <name>classification</name> + <editMode v="true" /> + <drawerCaption>Classification</drawerCaption> + <entityField>#ENTITY</entityField> + <fields> + <entityFieldLink> + <name>dfdbc6f4-4859-495b-96e7-0853bdbc611f</name> + <entityField>CLASSIFICATIONSCORE_ID</entityField> + </entityFieldLink> + </fields> + </genericViewTemplate> + </children> +</neonView> diff --git a/neonView/SalesprojectClassificationEntryPreview_view/SalesprojectClassificationEntryPreview_view.aod b/neonView/SalesprojectClassificationEntryPreview_view/SalesprojectClassificationEntryPreview_view.aod deleted file mode 100644 index f3aac2c0b1e5630b2794daf0a4d35efd8162829d..0000000000000000000000000000000000000000 --- a/neonView/SalesprojectClassificationEntryPreview_view/SalesprojectClassificationEntryPreview_view.aod +++ /dev/null @@ -1,35 +0,0 @@ -<?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.1.1" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/neonView/1.1.1"> - <name>SalesprojectClassificationEntryPreview_view</name> - <title>asdf</title> - <majorModelMode>DISTRIBUTED</majorModelMode> - <layout> - <headerFooterLayout> - <name>layout</name> - </headerFooterLayout> - </layout> - <children> - <titledListViewTemplate> - <name>Info</name> - <entityField>#ENTITY</entityField> - <columns> - <neonTableColumn> - <name>91aa4685-98f7-40e9-87be-877583a91143</name> - <entityField>NAME</entityField> - </neonTableColumn> - <neonTableColumn> - <name>88105c9a-fdf8-4d2b-ac96-d57ef4f41aa4</name> - <entityField>TYPE</entityField> - </neonTableColumn> - <neonTableColumn> - <name>b862235e-6595-4ae0-8bd0-5f942d975c67</name> - <entityField>VALUE</entityField> - </neonTableColumn> - <neonTableColumn> - <name>ff2b615b-5c98-4a21-bb71-34027711d5e7</name> - <entityField>POINTS</entityField> - </neonTableColumn> - </columns> - </titledListViewTemplate> - </children> -</neonView> diff --git a/neonView/SalesprojectClassificationFilter_view/SalesprojectClassificationFilter_view.aod b/neonView/SalesprojectClassificationFilter_view/SalesprojectClassificationFilter_view.aod deleted file mode 100644 index 87da3752309443372ef83944905b3c79e605857f..0000000000000000000000000000000000000000 --- a/neonView/SalesprojectClassificationFilter_view/SalesprojectClassificationFilter_view.aod +++ /dev/null @@ -1,26 +0,0 @@ -<?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.1.1" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/neonView/1.1.1"> - <name>SalesprojectClassificationFilter_view</name> - <majorModelMode>DISTRIBUTED</majorModelMode> - <layout> - <boxLayout> - <name>layout</name> - </boxLayout> - </layout> - <children> - <tableViewTemplate> - <name>Classifications</name> - <entityField>#ENTITY</entityField> - <columns> - <neonTableColumn> - <name>4139f5bd-0273-4b43-99a7-9122f0322170</name> - <entityField>CLASSNAME</entityField> - </neonTableColumn> - <neonTableColumn> - <name>9d31832d-86e4-49a8-99a5-2129cd6a1994</name> - <entityField>POINTS</entityField> - </neonTableColumn> - </columns> - </tableViewTemplate> - </children> -</neonView> diff --git a/neonView/SalesprojectClassificationPreview_view/SalesprojectClassificationPreview_view.aod b/neonView/SalesprojectClassificationPreview_view/SalesprojectClassificationPreview_view.aod deleted file mode 100644 index 93d3137486787d482825a37edc12f0b58e5a0080..0000000000000000000000000000000000000000 --- a/neonView/SalesprojectClassificationPreview_view/SalesprojectClassificationPreview_view.aod +++ /dev/null @@ -1,31 +0,0 @@ -<?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.1.1" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/neonView/1.1.1"> - <name>SalesprojectClassificationPreview_view</name> - <majorModelMode>DISTRIBUTED</majorModelMode> - <layout> - <headerFooterLayout> - <name>layout</name> - </headerFooterLayout> - </layout> - <children> - <genericViewTemplate> - <name>Info</name> - <entityField>#ENTITY</entityField> - <fields> - <entityFieldLink> - <name>51712a19-9a8c-4967-bd15-a448b5bffb77</name> - <entityField>CLASSNAME</entityField> - </entityFieldLink> - <entityFieldLink> - <name>c3621e4e-53b0-4932-b943-e1c07fe16a24</name> - <entityField>POINTS</entityField> - </entityFieldLink> - </fields> - </genericViewTemplate> - <neonViewReference> - <name>c6c26fdd-3812-495f-bd30-d3a6cdcd4eb0</name> - <entityField>SalesprojectClassificationEntries</entityField> - <view>SalesprojectClassificationEntryPreview_view</view> - </neonViewReference> - </children> -</neonView> diff --git a/neonView/SalesprojectMain_view/SalesprojectMain_view.aod b/neonView/SalesprojectMain_view/SalesprojectMain_view.aod index 991ec53deb1f9383a911cb9fe97bd98584bb5d77..c9d75309be5d7a70310a08ffc56a103d94dc0746 100644 --- a/neonView/SalesprojectMain_view/SalesprojectMain_view.aod +++ b/neonView/SalesprojectMain_view/SalesprojectMain_view.aod @@ -74,5 +74,10 @@ <entityField>LogHistoryConsumer</entityField> <view>LogHistoryFilter_view</view> </neonViewReference> + <neonViewReference> + <name>40861e3d-ac06-48d7-8f31-c4c0cd1cf275</name> + <entityField>Classifications</entityField> + <view>ClassificationFilter_view</view> + </neonViewReference> </children> </neonView> diff --git a/neonView/SalesprojectPreview_view/SalesprojectPreview_view.aod b/neonView/SalesprojectPreview_view/SalesprojectPreview_view.aod index f6f56d4194701aff70e39d4be7719b3767465285..06b276782207951313dac6c6287ca7ca4e258409 100644 --- a/neonView/SalesprojectPreview_view/SalesprojectPreview_view.aod +++ b/neonView/SalesprojectPreview_view/SalesprojectPreview_view.aod @@ -69,6 +69,10 @@ <drawerCaption>Further informations</drawerCaption> <entityField>#ENTITY</entityField> <fields> + <entityFieldLink> + <name>7fb4fd2e-6076-461b-8d56-9ce4a939d281</name> + <entityField>ClassificationResult</entityField> + </entityFieldLink> <entityFieldLink> <name>9fe11db5-ec66-4238-9c56-5ace055f1d90</name> <entityField>INFO</entityField> diff --git a/process/Classification_lib/Classification_lib.aod b/process/Classification_lib/Classification_lib.aod new file mode 100644 index 0000000000000000000000000000000000000000..818373690075bf9196eb6e10c19f9c13ae3bd1fe --- /dev/null +++ b/process/Classification_lib/Classification_lib.aod @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<process xmlns="http://www.adito.de/2018/ao/Model" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" VERSION="1.2.1" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/process/1.2.1"> + <name>Classification_lib</name> + <majorModelMode>DISTRIBUTED</majorModelMode> + <process>%aditoprj%/process/Classification_lib/process.js</process> + <variants> + <element>LIBRARY</element> + </variants> +</process> diff --git a/process/Classification_lib/process.js b/process/Classification_lib/process.js new file mode 100644 index 0000000000000000000000000000000000000000..3137601e3ae4d3a193f9e499b413fa4682b0665a --- /dev/null +++ b/process/Classification_lib/process.js @@ -0,0 +1,60 @@ +import("system.logging"); +import("system.db"); +import("Sql_lib"); + +/** + * Methods to manage classifications. + * Do not create an instance of this! + * + * @class + */ +function ClassificationUtils() {} + +/** + * Get the id of the current context + * TODO: use a UUID of the current context which doesn't change + * + * @return {String} Id of the current context + */ +ClassificationUtils.getScore = function(pClassificationType, pObjectType, pObjectRowid, pClassificationNumber) +{ + var score = db.array(db.COLUMN, SqlCondition.begin() + .andPrepareIfSet("CLASSIFICATIONTYPE.CLASSIFICATIONNUMBER", pClassificationNumber) + .andPrepare("CLASSIFICATIONTYPE.CLASSIFICATIONTYPE", pClassificationType) + .andSqlCondition(SqlCondition.begin().orPrepare("CLASSIFICATION.OBJECT_TYPE", pObjectType) + .or("CLASSIFICATION.OBJECT_TYPE is null")) + .andSqlCondition(SqlCondition.begin().orPrepare("CLASSIFICATION.OBJECT_ROWID", pObjectRowid) + .or("CLASSIFICATION.OBJECT_ROWID is null")) + .buildSql("select case when sum(score) is not null then sum(score) else 0 end from CLASSIFICATIONTYPE \n\ + left join Classification on CLASSIFICATIONTYPE_ID = CLASSIFICATIONTYPEID \n\ + left join CLASSIFICATIONSCORE on CLASSIFICATIONSCORE_ID = CLASSIFICATIONSCOREID", + "1=2", + "group by CLASSIFICATIONTYPE.CLASSIFICATIONNUMBER order by CLASSIFICATIONTYPE.CLASSIFICATIONNUMBER asc")); + + + + if (score.length == 1) + return score[0]; + + return score; +} + +ClassificationUtils.getClass = function(pClassificationType, pObjectType, pObjectRowid) +{ + var score = ClassificationUtils.getScore(pClassificationType, pObjectType, pObjectRowid); + return score.map(ClassificationUtils.mapToClass).join(""); +} + +ClassificationUtils.mapToClass = function(pScore) +{ + if(pScore <= 25) + return "D"; + if(pScore > 25 && pScore <= 50) + return "C"; + if(pScore > 50 && pScore <= 75) + return "B"; + if(pScore > 75 && pScore <= 100) + return "A"; + + return "E"; +} \ No newline at end of file