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

[Projekt: Entwicklung - Neon][TicketNr.: 1034201][Vertrieb - Angebot - Beleg aus Angebot erstellen]

parent b2948b2e
No related branches found
No related tags found
No related merge requests found
......@@ -7,9 +7,8 @@ var params = {
"OrderCurrency_param" : vars.getString("$field.CURRENCY"),
"OrderLanguage_param" : vars.getString("$field.LANGUAGE"),
"OrderHeader_param" : vars.getString("$field.HEADER"),
"OrderAddress_param" : vars.getString("$field.ADDRESS")
"OrderAddress_param" : vars.getString("$field.ADDRESS"),
"OfferId_param" : vars.getString("$field.OFFERID")
};
neon.openContext("Order_context", null, null, neon.OPERATINGSTATE_NEW, params);
neon.openContext("Order_context", null, null, neon.OPERATINGSTATE_NEW, params);
\ No newline at end of file
......@@ -16,6 +16,7 @@
<title>Currency</title>
<consumer>KeywordCurrencies</consumer>
<valueProcess>%aditoprj%/entity/Order_entity/entityfields/currency/valueProcess.js</valueProcess>
<displayValueProcess>%aditoprj%/entity/Order_entity/entityfields/currency/displayValueProcess.js</displayValueProcess>
</entityField>
<entityField>
<name>SALESORDERCODE</name>
......@@ -159,8 +160,8 @@
<title>Language</title>
<consumer>Languages</consumer>
<mandatory v="true" />
<possibleItemsProcess>%aditoprj%/entity/Order_entity/entityfields/language/possibleItemsProcess.js</possibleItemsProcess>
<valueProcess>%aditoprj%/entity/Order_entity/entityfields/language/valueProcess.js</valueProcess>
<displayValueProcess>%aditoprj%/entity/Order_entity/entityfields/language/displayValueProcess.js</displayValueProcess>
</entityField>
<entityActionField>
<name>newOrder</name>
......@@ -350,6 +351,13 @@
<fieldName>LanguagesISO3Code</fieldName>
</dependency>
</entityConsumer>
<entityParameter>
<name>OfferId_param</name>
<expose v="true" />
<triggerRecalculation v="true" />
<mandatory v="false" />
<description>PARAMETER</description>
</entityParameter>
</entityFields>
<recordContainers>
<dbRecordContainer>
......@@ -358,6 +366,7 @@
<maximumDbRows v="0" />
<fromClauseProcess>%aditoprj%/entity/Order_entity/recordcontainers/db/fromClauseProcess.js</fromClauseProcess>
<conditionProcess>%aditoprj%/entity/Order_entity/recordcontainers/db/conditionProcess.js</conditionProcess>
<onDBInsert>%aditoprj%/entity/Order_entity/recordcontainers/db/onDBInsert.js</onDBInsert>
<onDBDelete>%aditoprj%/entity/Order_entity/recordcontainers/db/onDBDelete.js</onDBDelete>
<linkInformation>
<linkInformation>
......
import("system.db");
import("system.translate");
import("system.result");
import("system.vars");
import("Keyword_lib");
if (vars.exists("$param.OrderCurrency_param"))
{
var currency = KeywordUtils.getViewValue($KeywordRegistry.get.Currency, vars.get("$param.OrderCurrency_param"));
result.string(currency);
}
\ No newline at end of file
import("system.db");
import("system.translate");
import("system.result");
import("system.vars");
import("Sql_lib");
if (vars.exists("$param.OrderLanguage_param"))
{
var iso3 = vars.get("$param.OrderLanguage_param");
var latinName = db.cell(SqlCondition.begin()
.andPrepare("AB_LANGUAGE.ISO3", iso3)
.buildSql("select NAME_LATIN from AB_LANGUAGE", "1=0"));
latinName = translate.text(latinName);
result.string(latinName);
}
\ No newline at end of file
import("system.util");
import("system.db");
import("system.neon");
import("system.vars");
import("Sql_lib");
import("Order_lib");
if (vars.get("$sys.operatingstate") == neon.OPERATINGSTATE_NEW && vars.exists("$param.OfferId_param"))
{
var rowId = vars.getString("$field.SALESORDERID");
var offerId = vars.getString("$param.OfferId_param");
var cols = [
"UNIT",
"QUANTITY",
"GROUPCODEID",
"ASSIGNEDTO",
"PRICE",
"ITEMSORT",
"PRODUCT_ID",
"VAT",
"ITEMNAME",
"OPTIONAL",
"DISCOUNT",
"ITEMPOSITION",
"INFO"
];
var offerItemSql = SqlCondition.begin()
.andPrepare("OFFERITEM.OFFER_ID", offerId)
.buildSql("select " + cols.join(", ") + " from OFFERITEM", "1=0");
var offerItems = db.table(offerItemSql);
var table = "SALESORDERITEM";
cols = cols.concat(["SALESORDER_ID", "SALESORDERITEMID"]);
var types = db.getColumnTypes(table, cols);
var toInsert = offerItems.map(function (row)
{
return [table, cols, types, row.concat([rowId, util.getNewUUID()])];
});
db.inserts(toInsert);
var oiUtils = new OrderItemUtils(rowId);
//update order price
cols = ["NET", "VAT"];
var vals = oiUtils.getNetAndVat();
db.updateData("SALESORDER", cols, null, vals, SqlCondition.equals("SALESORDER.SALESORDERID", rowId, "1 = 2"));
}
\ No newline at end of file
......@@ -71,5 +71,10 @@
</entityFieldLink>
</fields>
</genericViewTemplate>
<neonViewReference>
<name>f3542270-e7bd-4f9f-b7c0-f6c5210bb337</name>
<entityField>MainDocuments</entityField>
<view>DocumentList_view</view>
</neonViewReference>
</children>
</neonView>
......@@ -327,9 +327,7 @@ ItemUtils.prototype.insertPartsList = function(columns, productId, assignedTo, c
, P2pObject.quantity
, (P2pObject.optional) ? "1" : "0"
, pos
, itemsort
, datetime.date()
, vars.get("$sys.user")]
, itemsort]
// add aditional details
.concat(additionalProductInfo.map(function(item) {return ProductDetails[item[1]]}));
......
......@@ -108,7 +108,7 @@ OfferUtils.openOfferReport = function(pOfferID)
var offerCondition = SqlCondition.begin().andPrepare("OFFER.OFFERID", pOfferID);
var rptdata = db.table(offerCondition.buildSql("select " + fields.join(", ") + offerFromSql, "1 = 0"));
var language = KeywordUtils.get("LANGUAGE", rptdata[0][2])[1];
var language = "deu" //KeywordUtils.get("LANGUAGE", rptdata[0][2])[1];
var relid = rptdata[0][1];
// TODO: AddrObject implementieren
......@@ -160,7 +160,7 @@ OfferUtils.openOfferReport = function(pOfferID)
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];
rptdata[i][28] = "dummy2"// KeywordUtils.get($KeywordRegistry.get.QuantityUnit, rptdata[i][19])[1];
}
// TODO: get Images implementieren
......
......@@ -125,13 +125,12 @@
</textField>
</band>
<band height="20">
<textField isStretchWithOverflow="true">
<reportElement x="20" y="0" width="516" height="20" uuid="c687218f-a277-48b3-b107-89caf7acda9e"/>
<textElement>
<font fontName="Segoe UI" size="8" isBold="false"/>
</textElement>
<textFieldExpression><![CDATA[$F{OFFER_HEADER}]]></textFieldExpression>
</textField>
<componentElement>
<reportElement mode="Transparent" x="20" y="0" width="535" height="20" uuid="bb9d7d02-c2a6-4f60-94e9-f0912135dbeb"/>
<hc:html xmlns:hc="http://jasperreports.sourceforge.net/htmlcomponent" xsi:schemaLocation="http://jasperreports.sourceforge.net/htmlcomponent http://jasperreports.sourceforge.net/xsd/htmlcomponent.xsd" scaleType="RetainShape" horizontalAlign="Left" verticalAlign="Middle">
<hc:htmlContentExpression><![CDATA[$F{OFFER_HEADER}]]></hc:htmlContentExpression>
</hc:html>
</componentElement>
</band>
<band height="42">
<staticText>
......
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