Skip to content
Snippets Groups Projects
Commit 79a94317 authored by Benjamin Ulrich's avatar Benjamin Ulrich :speech_balloon:
Browse files

Merge branch 'sales_2001392_offerorder_discount_and_prices' into '2021.2'

[Projekt: xRM-Sales][TicketNr.: 2001392][Fehlende Einheit bei Rabatt]

See merge request xrm/basic!1471
parents 017579ca 1c3ee887
No related branches found
No related tags found
No related merge requests found
Showing
with 113 additions and 95 deletions
<?xml version="1.1" encoding="UTF-8" standalone="no"?>
<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.6.xsd">
<changeSet author="p.neub" id="a76dd9e5-5b66-4b5d-8c93-9fc8104f695e">
<dropColumn tableName="OFFER">
<column name="DISCOUNTED_NET"/>
<column name="DISCOUNTED_VAT"/>
</dropColumn>
</changeSet>
</databaseChangeLog>
\ No newline at end of file
<?xml version="1.1" encoding="UTF-8" standalone="no"?>
<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.6.xsd">
<changeSet author="p.neub" id="b5cd257d-1df9-4704-9e66-45c220c67158">
<dropColumn tableName="SALESORDER">
<column name="DISCOUNTED_NET"/>
<column name="DISCOUNTED_VAT"/>
</dropColumn>
</changeSet>
</databaseChangeLog>
\ No newline at end of file
<?xml version="1.1" encoding="UTF-8" standalone="no"?>
<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.6.xsd">
<include relativeToChangelogFile="true" file="alter_offer.xml"/>
<include relativeToChangelogFile="true" file="alter_order.xml"/>
</databaseChangeLog>
\ No newline at end of file
......@@ -9,4 +9,5 @@
<include relativeToChangelogFile="true" file="Employee/changelog.xml"/>
<include relativeToChangelogFile="true" file="Mosaico/insert_mosaico_color_keyword.xml"/>
<include relativeToChangelogFile="true" file="mailbridge/changelog.xml"/>
<include relativeToChangelogFile="true" file="OfferOrder/changelog.xml"/>
</databaseChangeLog>
\ No newline at end of file
......@@ -153,7 +153,6 @@
<column name="CONTACT_ID" value="a059aa9d-0463-4dbd-8b54-e85e235e63e0"/>
<column name="USER_NEW" value="Birgit Leicht"/>
<column name="OBJECT_ROWID" value="cdaa7f90-6e3d-4199-974b-0847b867a419"/>
<column name="DISCOUNTED_VAT" valueNumeric="712.50"/>
<column name="ISOLANGUAGE" value="deu"/>
<column name="VERSNR" valueNumeric="1"/>
<column name="OFFERID" value="4f877dc9-8fce-41d5-bce4-f3ac34b12fde"/>
......@@ -165,7 +164,6 @@
<column name="OBJECT_TYPE" value="Salesproject"/>
<column name="PROBABILITY" valueNumeric="50"/>
<column name="OFFERCODE" valueNumeric="1015"/>
<column name="DISCOUNTED_NET" valueNumeric="3750.00"/>
<column name="VAT" valueNumeric="712.50"/>
<column name="DATE_NEW" valueDate="2021-06-28T05:49:22"/>
<column name="HEADER" value="Wir danken Ihnen für Ihre Anfrage und bieten Ihnen die von Ihnen genannten Produkte wie folgt an:"/>
......@@ -220,7 +218,6 @@
<column name="CONTACT_ID" value="aee383d4-a34a-45aa-b2f3-abab9da800e3"/>
<column name="USER_NEW" value="Birgit Leicht"/>
<column name="OBJECT_ROWID" value="7683f92d-a949-4b76-ba6f-57344d730f40"/>
<column name="DISCOUNTED_VAT" valueNumeric="1900.00"/>
<column name="ISOLANGUAGE" value="deu"/>
<column name="VERSNR" valueNumeric="1"/>
<column name="OFFERID" value="98ee9b03-b4cb-4e69-bf3b-ab6fd63e7b7a"/>
......@@ -232,7 +229,6 @@
<column name="OBJECT_TYPE" value="Salesproject"/>
<column name="PROBABILITY" valueNumeric="0"/>
<column name="OFFERCODE" valueNumeric="1016"/>
<column name="DISCOUNTED_NET" valueNumeric="10600.00"/>
<column name="VAT" valueNumeric="1900.00"/>
<column name="DATE_NEW" valueDate="2021-06-28T06:29:59"/>
<column name="ACTIONUSER" value="c7ddf982-0e58-4152-b82b-8f5673b0b729"/>
......@@ -267,7 +263,6 @@
<column name="CONTACT_ID" value="3da2a794-7155-4009-95e0-b8aeb703acfc"/>
<column name="USER_NEW" value="Birgit Leicht"/>
<column name="OBJECT_ROWID" value="ef7f4726-4476-4f59-97c2-706dc1e0046f"/>
<column name="DISCOUNTED_VAT" valueNumeric="76950.00"/>
<column name="ISOLANGUAGE" value="deu"/>
<column name="VERSNR" valueNumeric="1"/>
<column name="OFFERID" value="b25b1da5-c179-4142-a9c8-130c888a9b29"/>
......@@ -279,7 +274,6 @@
<column name="PROBABILITY" valueNumeric="0"/>
<column name="APPROVAL" value="2"/>
<column name="OFFERCODE" valueNumeric="1014"/>
<column name="DISCOUNTED_NET" valueNumeric="49000.00"/>
<column name="VAT" valueNumeric="76950.00"/>
<column name="DATE_NEW" valueDate="2020-01-23T10:55:49"/>
<column name="HEADER" value="Wir danken Ihnen für Ihre Anfrage und bieten Ihnen die von Ihnen genannten Produkte wie folgt an:"/>
......
......@@ -76,12 +76,10 @@
<column name="OBJECT_ROWID" value="7683f92d-a949-4b76-ba6f-57344d730f40"/>
<column name="SALESORDERDATE" valueDate="2020-08-11T12:00:00"/>
<column name="DUNNINGDATE" valueDate="2021-06-29T12:00:00"/>
<column name="DISCOUNTED_VAT" valueNumeric="1900.00"/>
<column name="ISOLANGUAGE" value="deu"/>
<column name="CURRENCY" value="EUR"/>
<column name="NET" valueNumeric="10600.00"/>
<column name="OBJECT_TYPE" value="Salesproject"/>
<column name="DISCOUNTED_NET" valueNumeric="10600.00"/>
<column name="VAT" valueNumeric="1900.00"/>
<column name="PAYDUEDATE" valueDate="2020-08-18T12:00:00"/>
<column name="PAYMENTADDRESS" value="Meister Messebau&#10;Aitrachstraße 5&#10;84130 Dingolfing"/>
......@@ -104,12 +102,10 @@
<column name="OBJECT_ROWID" value="cdaa7f90-6e3d-4199-974b-0847b867a419"/>
<column name="SALESORDERDATE" valueDate="2021-06-29T12:00:00"/>
<column name="DUNNINGDATE" valueDate="2021-06-29T12:02:24"/>
<column name="DISCOUNTED_VAT" valueNumeric="712.50"/>
<column name="ISOLANGUAGE" value="deu"/>
<column name="CURRENCY" value="EUR"/>
<column name="NET" valueNumeric="3750.00"/>
<column name="OBJECT_TYPE" value="Salesproject"/>
<column name="DISCOUNTED_NET" valueNumeric="3750.00"/>
<column name="VAT" valueNumeric="712.50"/>
<column name="PAYDUEDATE" valueDate="2020-08-15T12:00:00"/>
<column name="PAYMENTADDRESS" value="Meister Messebau GmbH&#10;Aitrachstraße 7&#10;84130 Dingolfing"/>
......@@ -158,12 +154,10 @@
<column name="OBJECT_ROWID" value="7683f92d-a949-4b76-ba6f-57344d730f40"/>
<column name="SALESORDERDATE" valueDate="2021-06-29T12:00:00"/>
<column name="DUNNINGDATE" valueDate="2021-06-29T12:06:46"/>
<column name="DISCOUNTED_VAT" valueNumeric="1900.00"/>
<column name="ISOLANGUAGE" value="deu"/>
<column name="CURRENCY" value="EUR"/>
<column name="NET" valueNumeric="10600.00"/>
<column name="OBJECT_TYPE" value="Salesproject"/>
<column name="DISCOUNTED_NET" valueNumeric="10600.00"/>
<column name="VAT" valueNumeric="1900.00"/>
<column name="PAYDUEDATE" valueDate="2020-08-18T12:00:00"/>
<column name="PAYMENTADDRESS" value="Meister Messebau&#10;Aitrachstraße 5&#10;84130 Dingolfing"/>
......@@ -283,12 +277,10 @@
<column name="OBJECT_ROWID" value="cdaa7f90-6e3d-4199-974b-0847b867a419"/>
<column name="SALESORDERDATE" valueDate="2020-07-06T12:00:00"/>
<column name="DUNNINGDATE" valueDate="2021-06-29T12:02:24"/>
<column name="DISCOUNTED_VAT" valueNumeric="712.50"/>
<column name="ISOLANGUAGE" value="deu"/>
<column name="CURRENCY" value="EUR"/>
<column name="NET" valueNumeric="3750.00"/>
<column name="OBJECT_TYPE" value="Salesproject"/>
<column name="DISCOUNTED_NET" valueNumeric="3750.00"/>
<column name="VAT" valueNumeric="712.50"/>
<column name="PAYDUEDATE" valueDate="2020-08-13T12:00:00"/>
<column name="PAYMENTADDRESS" value="Meister Messebau GmbH&#10;Aitrachstraße 7&#10;84130 Dingolfing"/>
......@@ -378,12 +370,10 @@
<column name="OBJECT_ROWID" value="cdaa7f90-6e3d-4199-974b-0847b867a419"/>
<column name="SALESORDERDATE" valueDate="2020-07-08T12:00:00"/>
<column name="DUNNINGDATE" valueDate="2021-06-29T12:00:00"/>
<column name="DISCOUNTED_VAT" valueNumeric="712.50"/>
<column name="ISOLANGUAGE" value="deu"/>
<column name="CURRENCY" value="EUR"/>
<column name="NET" valueNumeric="3750.00"/>
<column name="OBJECT_TYPE" value="Salesproject"/>
<column name="DISCOUNTED_NET" valueNumeric="3750.00"/>
<column name="VAT" valueNumeric="712.50"/>
<column name="PAYDUEDATE" valueDate="2020-08-15T12:00:00"/>
<column name="PAYMENTADDRESS" value="Meister Messebau GmbH&#10;Aitrachstraße 7&#10;84130 Dingolfing"/>
......@@ -406,12 +396,10 @@
<column name="OBJECT_ROWID" value="7683f92d-a949-4b76-ba6f-57344d730f40"/>
<column name="SALESORDERDATE" valueDate="2020-08-11T12:00:00"/>
<column name="DUNNINGDATE" valueDate="2021-06-29T12:07:39"/>
<column name="DISCOUNTED_VAT" valueNumeric="1900.00"/>
<column name="ISOLANGUAGE" value="deu"/>
<column name="CURRENCY" value="EUR"/>
<column name="NET" valueNumeric="10600.00"/>
<column name="OBJECT_TYPE" value="Salesproject"/>
<column name="DISCOUNTED_NET" valueNumeric="10600.00"/>
<column name="VAT" valueNumeric="1900.00"/>
<column name="PAYDUEDATE" valueDate="2020-08-18T12:00:00"/>
<column name="PAYMENTADDRESS" value="Meister Messebau&#10;Aitrachstraße 5&#10;84130 Dingolfing"/>
......
......@@ -97,7 +97,6 @@
<contentType>NUMBER</contentType>
<inputFormat>#,##0.00</inputFormat>
<state>READONLY</state>
<stateProcess>%aditoprj%/entity/Offer_entity/entityfields/vat/stateProcess.js</stateProcess>
<displayValueProcess>%aditoprj%/entity/Offer_entity/entityfields/vat/displayValueProcess.js</displayValueProcess>
</entityField>
<entityField>
......@@ -166,17 +165,6 @@
<state>READONLY</state>
<displayValueProcess>%aditoprj%/entity/Offer_entity/entityfields/net/displayValueProcess.js</displayValueProcess>
</entityField>
<entityField>
<name>TotalGross</name>
<documentation>%aditoprj%/entity/Offer_entity/entityfields/totalgross/documentation.adoc</documentation>
<title>Total gross</title>
<contentType>NUMBER</contentType>
<outputFormat>#,##0.00</outputFormat>
<inputFormat>#,##0.00</inputFormat>
<state>READONLY</state>
<valueProcess>%aditoprj%/entity/Offer_entity/entityfields/totalgross/valueProcess.js</valueProcess>
<displayValueProcess>%aditoprj%/entity/Offer_entity/entityfields/totalgross/displayValueProcess.js</displayValueProcess>
</entityField>
<entityField>
<name>ISOLANGUAGE</name>
<title>Language</title>
......@@ -964,16 +952,12 @@
</entityField>
<entityField>
<name>DISCOUNT</name>
<title>Discount</title>
<contentType>NUMBER</contentType>
<outputFormat>0.00'%'</outputFormat>
<inputFormat>0.00</inputFormat>
<stateProcess>%aditoprj%/entity/Offer_entity/entityfields/discount/stateProcess.js</stateProcess>
<titleProcess>%aditoprj%/entity/Offer_entity/entityfields/discount/titleProcess.js</titleProcess>
<valueProcess>%aditoprj%/entity/Offer_entity/entityfields/discount/valueProcess.js</valueProcess>
<onValueChange>%aditoprj%/entity/Offer_entity/entityfields/discount/onValueChange.js</onValueChange>
<onValueChangeTypes>
<element>MASK</element>
</onValueChangeTypes>
<onValidation>%aditoprj%/entity/Offer_entity/entityfields/discount/onValidation.js</onValidation>
</entityField>
<entityField>
......@@ -982,7 +966,6 @@
<contentType>NUMBER</contentType>
<outputFormat>#,##0.00</outputFormat>
<inputFormat>#,##0.00</inputFormat>
<state>READONLY</state>
<stateProcess>%aditoprj%/entity/Offer_entity/entityfields/discounted_net/stateProcess.js</stateProcess>
<displayValueProcess>%aditoprj%/entity/Offer_entity/entityfields/discounted_net/displayValueProcess.js</displayValueProcess>
</entityField>
......@@ -991,17 +974,6 @@
<expose v="true" />
<description>PARAMETER</description>
</entityParameter>
<entityField>
<name>DiscountChanged</name>
</entityField>
<entityField>
<name>DISCOUNTED_VAT</name>
<title>discounted Vat</title>
<contentType>NUMBER</contentType>
<inputFormat>#,##0.00</inputFormat>
<stateProcess>%aditoprj%/entity/Offer_entity/entityfields/discounted_vat/stateProcess.js</stateProcess>
<displayValueProcess>%aditoprj%/entity/Offer_entity/entityfields/discounted_vat/displayValueProcess.js</displayValueProcess>
</entityField>
<entityConsumer>
<name>Products</name>
<dependency>
......@@ -1202,6 +1174,24 @@
</entityParameter>
</children>
</entityConsumer>
<entityField>
<name>DISCOUNT_NET</name>
<contentType>NUMBER</contentType>
<outputFormat>#,##0.00</outputFormat>
<inputFormat>#,##0.00</inputFormat>
<stateProcess>%aditoprj%/entity/Offer_entity/entityfields/discount_net/stateProcess.js</stateProcess>
<titleProcess>%aditoprj%/entity/Offer_entity/entityfields/discount_net/titleProcess.js</titleProcess>
<displayValueProcess>%aditoprj%/entity/Offer_entity/entityfields/discount_net/displayValueProcess.js</displayValueProcess>
</entityField>
<entityField>
<name>GROSS</name>
<title>Total gross</title>
<contentType>NUMBER</contentType>
<outputFormat>#,##0.00</outputFormat>
<inputFormat>#,##0.00</inputFormat>
<state>READONLY</state>
<displayValueProcess>%aditoprj%/entity/Offer_entity/entityfields/gross/displayValueProcess.js</displayValueProcess>
</entityField>
</entityFields>
<recordContainers>
<dbRecordContainer>
......@@ -1414,16 +1404,12 @@
</dbRecordFieldMapping>
<dbRecordFieldMapping>
<name>DISCOUNTED_NET.value</name>
<recordfield>OFFER.DISCOUNTED_NET</recordfield>
<expression>%aditoprj%/entity/Offer_entity/recordcontainers/db/recordfieldmappings/discounted_net.value/expression.js</expression>
</dbRecordFieldMapping>
<dbRecordFieldMapping>
<name>DISCOUNT.value</name>
<recordfield>OFFER.DISCOUNT</recordfield>
</dbRecordFieldMapping>
<dbRecordFieldMapping>
<name>DISCOUNTED_VAT.value</name>
<recordfield>OFFER.DISCOUNTED_VAT</recordfield>
</dbRecordFieldMapping>
<aggregateFieldDbMapping>
<name>PROBABILITY_aggregate.value</name>
<recordfield>OFFER.PROBABILITY</recordfield>
......@@ -1437,6 +1423,14 @@
<name>APPROVAL.value</name>
<recordfield>OFFER.APPROVAL</recordfield>
</dbRecordFieldMapping>
<dbRecordFieldMapping>
<name>DISCOUNT_NET.value</name>
<expression>%aditoprj%/entity/Offer_entity/recordcontainers/db/recordfieldmappings/net_discount.value/expression.js</expression>
</dbRecordFieldMapping>
<dbRecordFieldMapping>
<name>GROSS.value</name>
<expression>%aditoprj%/entity/Offer_entity/recordcontainers/db/recordfieldmappings/gross.value/expression.js</expression>
</dbRecordFieldMapping>
</recordFieldMappings>
<linkInformation>
<linkInformation>
......
import("Util_lib");
import("system.eMath");
import("system.translate");
import("system.datetime");
import("system.vars");
import("system.result");
var formattedGross = NumberUtils.formatWithCurrency(vars.get("$field.TotalGross"), translate.text("#,##0.00"), vars.get("$field.CURRENCY"));
var res = [translate.text("Total gross") + ": " + formattedGross,
translate.text("Probability") + ": " + vars.get("$field.PROBABILITY") + "%",
translate.text("Creation date") + ": " + datetime.toDate(vars.get("$field.DATE_NEW"), translate.text("dd.MM.yyyy"))];
result.string(res.join(" | "));
\ No newline at end of file
var res = [
translate.text("Total gross") + ": " + vars.get("$field.GROSS.displayValue"),
translate.text("Probability") + ": " + vars.get("$field.PROBABILITY") + "%",
translate.text("Creation date") + ": " + datetime.toDate(vars.get("$field.DATE_NEW"), translate.text("dd.MM.yyyy"))
];
result.string(res.join(" | "));
import("system.neon");
import("system.vars");
if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW || vars.get("$sys.recordstate") == neon. OPERATINGSTATE_EDIT){
neon.setFieldValue("$field.DiscountChanged", "true");
}
\ No newline at end of file
import("system.result");
import("system.translate");
result.string(translate.withArguments("Discount in %0", ["%"]));
import("Util_lib");
import("system.result");
import("system.vars");
import("system.translate");
import("system.result");
import("Util_lib");
result.string(NumberUtils.formatWithCurrency(vars.get("$field.TotalGross"), translate.text("#,##0.00"), vars.get("$field.CURRENCY")));
\ No newline at end of file
result.string(NumberUtils.formatWithCurrency(vars.get("$this.value"), translate.text("#,##0.00"), vars.get("$field.CURRENCY")));
import("system.result");
import("system.neon");
import("system.vars");
var state = neon.COMPONENTSTATE_INVISIBLE;
if((vars.get("$field.DISCOUNT") || 0) > 0)
{
state = neon.COMPONENTSTATE_READONLY;
}
result.string(state);
import("system.result");
import("system.vars");
import("system.translate");
import("Keyword_lib");
import("KeywordRegistry_basic");
var currency = KeywordUtils.getViewValue($KeywordRegistry.currency(), vars.get("$field.CURRENCY"));
result.string(translate.withArguments("Discount in %0", [currency]));
import("Util_lib");
import("system.result");
import("system.vars");
import("system.translate");
import("system.result");
import("Util_lib");
result.string(NumberUtils.formatWithCurrency(vars.get("$field.DISCOUNTED_NET"), translate.text("#,##0.00"), vars.get("$field.CURRENCY")));
\ No newline at end of file
result.string(NumberUtils.formatWithCurrency(vars.get("$this.value"), translate.text("#,##0.00"), vars.get("$field.CURRENCY")));
import("system.vars");
import("system.neon");
import("system.result");
import("system.neon");
import("system.vars");
var discount = vars.get("$field.DISCOUNT");
if(parseInt(discount) == parseInt("0") || !discount)
result.string(neon.COMPONENTSTATE_INVISIBLE);
else
result.string(neon.COMPONENTSTATE_READONLY);
\ No newline at end of file
var state = neon.COMPONENTSTATE_INVISIBLE;
if((vars.get("$field.DISCOUNT") || 0) > 0)
{
state = neon.COMPONENTSTATE_READONLY;
}
result.string(state);
import("system.vars");
import("system.neon");
import("system.result");
var discount = vars.get("$field.DISCOUNT");
if(parseInt(discount) == parseInt("0") || !discount)
result.string(neon.COMPONENTSTATE_INVISIBLE);
else
result.string(neon.COMPONENTSTATE_READONLY);
\ No newline at end of file
import("Util_lib");
import("system.result");
import("system.vars");
import("system.translate");
import("system.result");
import("Util_lib");
result.string(NumberUtils.formatWithCurrency(vars.get("$field.TotalGross"), translate.text("#,##0.00"), vars.get("$field.CURRENCY")));
\ No newline at end of file
result.string(NumberUtils.formatWithCurrency(vars.get("$this.value"), translate.text("#,##0.00"), vars.get("$field.CURRENCY")));
import("Util_lib");
import("system.result");
import("system.vars");
import("system.translate");
import("system.result");
import("Util_lib");
result.string(NumberUtils.formatWithCurrency(vars.get("$field.NET"), translate.text("#,##0.00"), vars.get("$field.CURRENCY")));
\ No newline at end of file
result.string(NumberUtils.formatWithCurrency(vars.get("$this.value"), translate.text("#,##0.00"), vars.get("$field.CURRENCY")));
import("system.vars");
import("Workflow_lib");
WorkflowUtils.openNewInstance({sum : Number(vars.get("$field.TotalGross"))});
\ No newline at end of file
WorkflowUtils.openNewInstance({sum : Number(vars.get("$field.GROSS"))});
= TotalGross
:hardbreaks:
Contains the total gross of the offer (net).
This is calculated as follows: _NET_ + _VAT_.
Both are calculated in *_Offeritem_entity_* at _onDBInsert_, _onDBUpdate_ and _onDBDelete_.
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment