Skip to content
Snippets Groups Projects
Commit 570e077f authored by S.Listl's avatar S.Listl
Browse files

[Projekt: Entwicklung - Neon][TicketNr.: 1034107][Vertriebsprojekt - Image...

[Projekt: Entwicklung - Neon][TicketNr.: 1034107][Vertriebsprojekt - Image soll sich auch Status zusammensetzten]
[Projekt: Entwicklung - Neon][TicketNr.: 1034098][Vertrieb - Angebot - Anschreiben ersetzt Kopf- und Fußtext]
parent 7fa06c0f
No related branches found
No related tags found
No related merge requests found
Showing
with 150 additions and 38 deletions
......@@ -85,11 +85,8 @@
</entityField>
<entityField>
<name>HEADER</name>
<title>Header text</title>
</entityField>
<entityField>
<name>FOOTER</name>
<title>Footer text</title>
<title>Cover letter</title>
<contentType>HTML</contentType>
</entityField>
<entityConsumer>
<name>Offeritems</name>
......@@ -347,6 +344,12 @@
</entityParameter>
</children>
</entityConsumer>
<entityActionField>
<name>newOrder</name>
<fieldType>ACTION</fieldType>
<title>Create receipt</title>
<onActionProcess>%aditoprj%/entity/Offer_entity/entityfields/neworder/onActionProcess.js</onActionProcess>
</entityActionField>
</entityFields>
<recordContainers>
<dbRecordContainer>
......@@ -391,10 +394,6 @@
<name>CURRENCY.value</name>
<recordfield>OFFER.CURRENCY</recordfield>
</dbRecordFieldMapping>
<dbRecordFieldMapping>
<name>FOOTER.value</name>
<recordfield>OFFER.FOOTER</recordfield>
</dbRecordFieldMapping>
<dbRecordFieldMapping>
<name>HEADER.value</name>
<recordfield>OFFER.HEADER</recordfield>
......
import("system.vars");
import("system.neon");
var params = {
"RelationId_param" : vars.getString("$field.RELATION_ID"),
"SalesprojectId_param" : vars.getString("$field.SALESPROJECT_ID"),
"OrderCurrency_param" : vars.getString("$field.CURRENCY"),
"OrderLanguage_param" : vars.getString("$field.LANGUAGE"),
"OrderHeader_param" : vars.getString("$field.HEADER"),
"OrderAddress_param" : vars.getString("$field.ADDRESS")
};
neon.openContext("Order_context", null, null, neon.OPERATINGSTATE_NEW, params);
......@@ -15,6 +15,7 @@
<name>CURRENCY</name>
<title>Currency</title>
<consumer>KeywordCurrencies</consumer>
<valueProcess>%aditoprj%/entity/Order_entity/entityfields/currency/valueProcess.js</valueProcess>
</entityField>
<entityField>
<name>SALESORDERCODE</name>
......@@ -44,6 +45,7 @@
<consumer>Relations</consumer>
<linkedContextProcess>%aditoprj%/entity/Order_entity/entityfields/relation_id/linkedContextProcess.js</linkedContextProcess>
<mandatory v="true" />
<valueProcess>%aditoprj%/entity/Order_entity/entityfields/relation_id/valueProcess.js</valueProcess>
<displayValueProcess>%aditoprj%/entity/Order_entity/entityfields/relation_id/displayValueProcess.js</displayValueProcess>
<onValueChange>%aditoprj%/entity/Order_entity/entityfields/relation_id/onValueChange.js</onValueChange>
<onValueChangeTypes>
......@@ -58,6 +60,7 @@
<mandatory v="true" />
<state>INVISIBLE</state>
<stateProcess>%aditoprj%/entity/Order_entity/entityfields/salesproject_id/stateProcess.js</stateProcess>
<valueProcess>%aditoprj%/entity/Order_entity/entityfields/salesproject_id/valueProcess.js</valueProcess>
<displayValueProcess>%aditoprj%/entity/Order_entity/entityfields/salesproject_id/displayValueProcess.js</displayValueProcess>
</entityField>
<entityField>
......@@ -79,7 +82,7 @@
<entityField>
<name>HEADER</name>
<title>Header text</title>
<valueProcess></valueProcess>
<valueProcess>%aditoprj%/entity/Order_entity/entityfields/header/valueProcess.js</valueProcess>
</entityField>
<entityField>
<name>FOOTER</name>
......@@ -157,6 +160,7 @@
<consumer></consumer>
<mandatory v="true" />
<possibleItemsProcess>%aditoprj%/entity/Order_entity/entityfields/language/possibleItemsProcess.js</possibleItemsProcess>
<valueProcess>%aditoprj%/entity/Order_entity/entityfields/language/valueProcess.js</valueProcess>
</entityField>
<entityActionField>
<name>newOrder</name>
......@@ -277,6 +281,7 @@
</entityConsumer>
<entityField>
<name>ADDRESS</name>
<valueProcess>%aditoprj%/entity/Order_entity/entityfields/address/valueProcess.js</valueProcess>
</entityField>
<entityConsumer>
<name>KeywordCurrencies</name>
......@@ -308,6 +313,34 @@
</entityParameter>
</children>
</entityConsumer>
<entityParameter>
<name>OrderCurrency_param</name>
<expose v="true" />
<triggerRecalculation v="true" />
<mandatory v="false" />
<description>PARAMETER</description>
</entityParameter>
<entityParameter>
<name>OrderLanguage_param</name>
<expose v="true" />
<triggerRecalculation v="true" />
<mandatory v="false" />
<description>PARAMETER</description>
</entityParameter>
<entityParameter>
<name>OrderHeader_param</name>
<expose v="true" />
<triggerRecalculation v="true" />
<mandatory v="false" />
<description>PARAMETER</description>
</entityParameter>
<entityParameter>
<name>OrderAddress_param</name>
<expose v="true" />
<triggerRecalculation v="true" />
<mandatory v="false" />
<description>PARAMETER</description>
</entityParameter>
</entityFields>
<recordContainers>
<dbRecordContainer>
......
import("system.result");
import("system.vars");
if (vars.exists("$param.OrderAddress_param"))
{
result.string(vars.get("$param.OrderAddress_param"));
}
\ No newline at end of file
import("system.result");
import("system.vars");
if (vars.exists("$param.OrderCurrency_param"))
{
result.string(vars.get("$param.OrderCurrency_param"));
}
\ No newline at end of file
import("system.result");
import("system.vars");
if (vars.exists("$param.OrderHeader_param"))
{
result.string(vars.get("$param.OrderHeader_param"));
}
\ No newline at end of file
......@@ -2,4 +2,4 @@ import("system.vars");
import("system.result");
import("Keyword_lib");
result.string("TEXT:" + KeywordUtils.getViewValue($KeywordRegistry.get.SalesorderState, vars.getString("$field.STATUS")) );
\ No newline at end of file
result.string("TEXT:" + KeywordUtils.getViewValue($KeywordRegistry.get.SalesorderState, vars.getString("$field.STATUS")) );
import("system.result");
import("system.vars");
if (vars.exists("$param.OrderLanguage_param"))
{
result.string(vars.get("$param.OrderLanguage_param"));
}
\ No newline at end of file
import("system.result");
import("system.vars");
if (vars.exists("$param.RelationId_param"))
{
result.string(vars.get("$param.RelationId_param"));
}
\ No newline at end of file
import("system.result");
import("system.vars");
if (vars.exists("$param.SalesprojectId_param"))
{
result.string(vars.get("$param.SalesprojectId_param"));
}
\ No newline at end of file
......@@ -309,6 +309,12 @@
<state>READONLY</state>
<valueProcess>%aditoprj%/entity/Salesproject_entity/entityfields/timetrackingsum/valueProcess.js</valueProcess>
</entityField>
<entityField>
<name>IMAGE</name>
<contentType>IMAGE</contentType>
<searchable v="false" />
<valueProcess>%aditoprj%/entity/Salesproject_entity/entityfields/image/valueProcess.js</valueProcess>
</entityField>
</entityFields>
<recordContainers>
<dbRecordContainer>
......
import("system.vars");
import("system.result");
import("Keyword_lib");
result.string("TEXT:" + KeywordUtils.getViewValue("SALESPROJECT.STATE", vars.getString("$field.STATE")) );
\ No newline at end of file
......@@ -1533,6 +1533,12 @@
<entry>
<key>hrs</key>
</entry>
<entry>
<key>Time expenses</key>
</entry>
<entry>
<key>Cover letter</key>
</entry>
</keyValueMap>
<font name="Dialog" style="0" size="11" />
<sqlModels>
......
......@@ -396,6 +396,10 @@
<key>standard address</key>
<value>Standardadresse</value>
</entry>
<entry>
<key>Create receipt</key>
<value>Beleg erstellen</value>
</entry>
<entry>
<key>PP</key>
<value>EK</value>
......@@ -408,6 +412,10 @@
<key>Key account</key>
<value>Großkunde</value>
</entry>
<entry>
<key>Cover letter</key>
<value>Anschreiben</value>
</entry>
<entry>
<key>VAT</key>
<value>UmsSt.</value>
......
......@@ -1559,6 +1559,12 @@
<entry>
<key>hrs</key>
</entry>
<entry>
<key>Time expenses</key>
</entry>
<entry>
<key>Cover letter</key>
</entry>
</keyValueMap>
<font name="Dialog" style="0" size="11" />
</language>
......@@ -20,10 +20,6 @@
<name>8bf2a10e-e7e9-4f33-98cf-4ded02bf68a9</name>
<entityField>HEADER</entityField>
</entityFieldLink>
<entityFieldLink>
<name>d6f2774b-34c2-4db8-9730-e98b4c83503a</name>
<entityField>FOOTER</entityField>
</entityFieldLink>
</fields>
</genericViewTemplate>
</children>
......
......@@ -52,10 +52,6 @@
<name>ed71986f-303c-4118-a895-51ec31ba8775</name>
<entityField>HEADER</entityField>
</entityFieldLink>
<entityFieldLink>
<name>c4b3c8ed-4625-4785-abc6-c726171ff7f4</name>
<entityField>FOOTER</entityField>
</entityFieldLink>
<entityFieldLink>
<name>833e6193-fde6-4990-8a26-eaeb0f60de48</name>
<entityField>ChosenAddress</entityField>
......
......@@ -10,6 +10,7 @@
<children>
<cardViewTemplate>
<name>SalesprojectPreview_template</name>
<iconField>IMAGE</iconField>
<titleField>PROJECTCODE</titleField>
<descriptionField>PROJECTTITLE</descriptionField>
<entityField>#ENTITY</entityField>
......
......@@ -11,7 +11,6 @@
<column name="SALESPROJECT_ID" type="CHAR(36)"/>
<column name="OFFER_ID" type="CHAR(36)"/>
<column name="HEADER" type="NCLOB"/>
<column name="FOOTER" type="NCLOB"/>
<column name="OFFERDATE" type="DATETIME"/>
<column name="LANGUAGE" type="CHAR(5)"/>
<column name="OFFERCODE" type="INTEGER"/>
......
......@@ -97,9 +97,9 @@ OfferUtils.openOfferReport = function(pOfferID)
"OFFER.OFFERID", "OFFERITEM.OFFER_ID", "OFFERITEM.INFO", "OFFERITEM.ASSIGNEDTO", // 11
"OFFERITEM.PRODUCT_ID","OFFERITEM.ITEMNAME" , // 13
"OFFERITEM.OPTIONAL", "OFFERITEM.ITEMPOSITION", // 15
"PRODUCT.PRODUCTCODE", "PRODUCT.PRODUCTID", "OFFER.FOOTER", "OFFER.HEADER", "OFFERITEM.UNIT", "OFFER.VAT", // 21
"COALESCE(OFFERITEM.QUANTITY,0)","COALESCE(OFFERITEM.PRICE,0)", "COALESCE(OFFERITEM.DISCOUNT,0)", // 24
"COALESCE(OFFER.VERSNR, 0)", "COALESCE(OFFER.OFFERCODE,0)", "COALESCE(OFFERITEM.VAT, 0)", "0", "''", "SALESPROJECT_ID" ]; // 30
"PRODUCT.PRODUCTCODE", "PRODUCT.PRODUCTID", "OFFER.HEADER", "OFFERITEM.UNIT", "OFFER.VAT", // 20
"COALESCE(OFFERITEM.QUANTITY,0)","COALESCE(OFFERITEM.PRICE,0)", "COALESCE(OFFERITEM.DISCOUNT,0)", // 23
"COALESCE(OFFER.VERSNR, 0)", "COALESCE(OFFER.OFFERCODE,0)", "COALESCE(OFFERITEM.VAT, 0)", "0", "''", "SALESPROJECT_ID" ]; // 29
var offerFromSql = " from PRODUCT"
+ " inner join OFFERITEM on (PRODUCT.PRODUCTID = OFFERITEM.PRODUCT_ID) "
......@@ -138,29 +138,29 @@ OfferUtils.openOfferReport = function(pOfferID)
// calculate:
// "OFFERITEM_QUANTITY" * "OFFERITEM_PRICE"
fullPrice = eMath.mulDec(parseFloat(rptdata[i][22]), parseFloat(rptdata[i][23]) );
fullPrice = eMath.mulDec(parseFloat(rptdata[i][21]), parseFloat(rptdata[i][22]) );
// ( fullPrice * ( 100 - "OFFERITEM_DISCOUNT" ) ) / 100
if(optional)
{
itemSum = eMath.roundDec(eMath.divDec(eMath.mulDec(fullPrice, eMath.subDec(100, rptdata[i][24]) ), 100), 2, eMath.ROUND_HALF_EVEN); //Summe je Artikel
itemSum = eMath.roundDec(eMath.divDec(eMath.mulDec(fullPrice, eMath.subDec(100, rptdata[i][23]) ), 100), 2, eMath.ROUND_HALF_EVEN); //Summe je Artikel
sumItemSum += itemSum; //Gesamtsumme aller Artikel
}
// itemSum * "OFFERITEM_VAT" / 100
vatsum = (eMath.divDec(eMath.mulDec(itemSum, rptdata[i][27] ), 100)); //Steuerbetrag in Euro je Artikel
if(rptdata[i][27] > 0) sums.push([rptdata[i][27], vatsum]); //MWSteuerwerte für Map vorbereiten
vatsum = (eMath.divDec(eMath.mulDec(itemSum, rptdata[i][26] ), 100)); //Steuerbetrag in Euro je Artikel
if(rptdata[i][26] > 0) sums.push([rptdata[i][26], vatsum]); //MWSteuerwerte für Map vorbereiten
// sumItemSum + "OFFER_VAT"
total = eMath.addDec(sumItemSum, rptdata[i][21]); //Gesamtsumme zzgl. MwSt.
total = eMath.addDec(sumItemSum, rptdata[i][20]); //Gesamtsumme zzgl. MwSt.
total = text.formatDouble(total, translate.text("#,##0.00"), true)
// format date
rptdata[i][7] = datetime.toDate(rptdata[i][7], translate.text("dd.MM.yyyy", language));
// format numbers
rptdata[i][23] = text.formatDouble(rptdata[i][23], translate.text("#,##0.00"), true);
rptdata[i][24] = text.formatDouble(rptdata[i][24], translate.text("0.00"), true);
rptdata[i][22] = text.formatDouble(rptdata[i][22], translate.text("#,##0"), true);
rptdata[i][27] = text.formatDouble(rptdata[i][27], translate.text("#,##0.00"), true);
rptdata[i][28] = text.formatDouble(itemSum, translate.text("#,##0.00"), true); //Immer zwei Nachkommastellen und ',' statt '.'
rptdata[i][29] = KeywordUtils.get("UNIT", rptdata[i][20])[1];
rptdata[i][22] = text.formatDouble(rptdata[i][22], translate.text("#,##0.00"), true);
rptdata[i][23] = text.formatDouble(rptdata[i][23], translate.text("0.00"), true);
rptdata[i][21] = text.formatDouble(rptdata[i][21], translate.text("#,##0"), true);
rptdata[i][26] = text.formatDouble(rptdata[i][26], translate.text("#,##0.00"), true);
rptdata[i][27] = text.formatDouble(itemSum, translate.text("#,##0.00"), true); //Immer zwei Nachkommastellen und ',' statt '.'
rptdata[i][28] = KeywordUtils.get("UNIT", rptdata[i][19])[1];
}
// TODO: get Images implementieren
......@@ -219,13 +219,13 @@ OfferUtils.openOfferReport = function(pOfferID)
data[i] = [rptdata[i][6], rptdata[i][7], rptdata[i][8], rptdata[i][10], rptdata[i][11], rptdata[i][13],
rptdata[i][14], rptdata[i][15], rptdata[i][16], rptdata[i][18], rptdata[i][19], //10
rptdata[i][22], rptdata[i][23],
rptdata[i][24], rptdata[i][25], rptdata[i][26], rptdata[i][27], rptdata[i][28], rptdata[i][29]];
rptdata[i][24], rptdata[i][25], rptdata[i][26], rptdata[i][27], rptdata[i][28]];
}
// 0 1 2 3 4
offerReport.setReportData(ReportData.begin(["OFFER_CURRENCY", "OFFER_OFFERDATE", "OFFER_OFFERID", "OFFERITEM_INFO", "OFFERITEM_ASSIGNEDTO",
"OFFERITEM_ITEMNAME" , "OFFERITEM_OPTIONAL", "OFFERITEM_ITEMPOSITION", "PRODUCT_PRODUCTCODE", "OFFER_FOOTER", "OFFER_HEADER", // 10
"OFFERITEM_QUANTITY", "OFFERITEM_PRICE", "OFFERITEM_DISCOUNT", "OFFER_VERSNR", "OFFER_OFFERCODE", "OFFERITEM_VAT", "ITEMSUM", // 17
"OFFERITEM_UNITTEXT"]) // 18
"OFFERITEM_ITEMNAME" , "OFFERITEM_OPTIONAL", "OFFERITEM_ITEMPOSITION", "PRODUCT_PRODUCTCODE", "OFFER_HEADER", // 9
"OFFERITEM_QUANTITY", "OFFERITEM_PRICE", "OFFERITEM_DISCOUNT", "OFFER_VERSNR", "OFFER_OFFERCODE", "OFFERITEM_VAT", "ITEMSUM", // 16
"OFFERITEM_UNITTEXT"]) // 17
.add(data));
offerReport.openReport();
......
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