Skip to content
Snippets Groups Projects
Commit 1a5720b3 authored by Mohamed Mansour's avatar Mohamed Mansour
Browse files

Belege: Created the actions neue aufgabe, versendet setzen,

mahnstufe setzen, in lieferschein übertragen, in rechnung 
übertragen, stornieren und bezahlten Betrag setzen. Alle Aktionen
wurden mit den angeforderten stateprocess gemacht. für mahnstufe und 
bezahlten beleg aktionen wurden auch spezielle edit views erstellt. 
parent 00d08530
No related branches found
No related tags found
No related merge requests found
Showing
with 361 additions and 7 deletions
......@@ -712,9 +712,11 @@
</entityField>
<entityParameter>
<name>OrderPaymentTerm_param</name>
<expose v="true" />
</entityParameter>
<entityParameter>
<name>OrderDeliveryTerm_param</name>
<expose v="true" />
</entityParameter>
<entityConsumer>
<name>Offers</name>
......@@ -778,7 +780,60 @@
</entityField>
<entityParameter>
<name>OrderFooter_param</name>
<expose v="true" />
</entityParameter>
<entityParameter>
<name>OrderDunningDate_param</name>
<expose v="true" />
</entityParameter>
<entityParameter>
<name>OrderDunningLevel_param</name>
<expose v="true" />
</entityParameter>
<entityActionField>
<name>TransferDeliveryNote</name>
<title>Transfer to delivery note</title>
<onActionProcess>%aditoprj%/entity/Order_entity/entityfields/transferdeliverynote/onActionProcess.js</onActionProcess>
<stateProcess>%aditoprj%/entity/Order_entity/entityfields/transferdeliverynote/stateProcess.js</stateProcess>
</entityActionField>
<entityParameter>
<name>OrderType_param</name>
<expose v="true" />
</entityParameter>
<entityActionField>
<name>TransferInvoice</name>
<title>Transfer to Invoice</title>
<onActionProcess>%aditoprj%/entity/Order_entity/entityfields/transferinvoice/onActionProcess.js</onActionProcess>
<stateProcess>%aditoprj%/entity/Order_entity/entityfields/transferinvoice/stateProcess.js</stateProcess>
</entityActionField>
<entityActionField>
<name>setSent</name>
<title>Set to sent</title>
<onActionProcess>%aditoprj%/entity/Order_entity/entityfields/setsent/onActionProcess.js</onActionProcess>
<stateProcess>%aditoprj%/entity/Order_entity/entityfields/setsent/stateProcess.js</stateProcess>
</entityActionField>
<entityActionField>
<name>cancel</name>
<title>Cancel</title>
<onActionProcess>%aditoprj%/entity/Order_entity/entityfields/cancel/onActionProcess.js</onActionProcess>
<stateProcess>%aditoprj%/entity/Order_entity/entityfields/cancel/stateProcess.js</stateProcess>
</entityActionField>
<entityParameter>
<name>OrderCancellation_param</name>
<expose v="true" />
</entityParameter>
<entityActionField>
<name>setDunning</name>
<title>Set dunning</title>
<onActionProcess>%aditoprj%/entity/Order_entity/entityfields/setdunning/onActionProcess.js</onActionProcess>
<stateProcess>%aditoprj%/entity/Order_entity/entityfields/setdunning/stateProcess.js</stateProcess>
</entityActionField>
<entityActionField>
<name>setPaid</name>
<title>Set paid amount</title>
<onActionProcess>%aditoprj%/entity/Order_entity/entityfields/setpaid/onActionProcess.js</onActionProcess>
<stateProcess>%aditoprj%/entity/Order_entity/entityfields/setpaid/stateProcess.js</stateProcess>
</entityActionField>
</entityFields>
<recordContainers>
<dbRecordContainer>
......
import("Sql_lib");
import("system.vars");
import("system.neon");
import("system.db");
import("Order_lib");
import("Keyword_lib");
import("KeywordRegistry_basic");
var id = vars.get("$field.SALESORDERID");
db.updateData("SALESORDER", ["CANCELLATION"], null, ["1"], SqlCondition.begin()
.andPrepareVars("SALESORDER.SALESORDERID", "$field.SALESORDERID")
.build("1=2"));
neon.refreshAll();
var contactId = vars.getString("$field.CONTACT_ID");
var currency = vars.getString("$field.CURRENCY");
var language = vars.getString("$field.LANGUAGE");
var header = vars.getString("$field.HEADER");
var footer = vars.getString("$field.FOOTER");
var offerId = vars.getString("$field.OFFER_ID");
var deliveryTerm = vars.getString("$field.DELIVERYTERMS");
var paymentTerm = vars.getString("$field.PAYMENTTERMS");
var rowId = vars.getString("$field.OBJECT_ROWID");
var objectType = vars.getString("$field.OBJECT_TYPE");
var dunningDate = vars.getString("$field.DUNNINGDATE");
var dunningLevel = vars.getString("$field.DUNNINGLEVEL");
var orderType= $KeywordRegistry.orderType$cancellation();
var cancellation= vars.getString("$field.CANCELLATION");
OrderUtils.copyOrder(offerId, contactId, orderType, language, currency, header, footer, deliveryTerm, paymentTerm, objectType, rowId, dunningDate, dunningLevel, cancellation);
\ No newline at end of file
import("system.vars");
import("system.result");
import("system.db");
import("Sql_lib");
import("system.neon");
import("Keyword_lib");
import("KeywordRegistry_basic");
if(vars.get("$field.ORDERTYPE")==$KeywordRegistry.orderType$confirmation()||vars.get("$field.ORDERTYPE")==$KeywordRegistry.orderType$invoice())
if (vars.get("$field.CANCELLATION")=="0"){
result.string(neon.COMPONENTSTATE_EDITABLE);
}
else
result.string(neon.COMPONENTSTATE_DISABLED);
\ No newline at end of file
......@@ -2,5 +2,15 @@ import("system.neon");
import("system.vars");
import("system.result");
if (vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW&& vars.get("$this.value") == null)
result.string("0");
\ No newline at end of file
if (vars.get("$this.value") == null) {
if (vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && vars.get("$this.value") == null){
if (vars.exists("$param.OrderCancellation_param") && vars.get("$param.OrderCancellation_param"))
{
result.string(vars.get("$param.OrderCancellation_param"));
}
else
result.string("0");
}
}
\ No newline at end of file
......@@ -7,7 +7,17 @@ import("system.vars");
import("Attribute_lib");
import("Contact_lib");
if (vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && vars.get("$this.value") == null)
{
result.string(KeywordUtils.getFirst($KeywordRegistry.orderType()));
if (vars.get("$this.value") == null) {
if (vars.exists("$param.OrderType_param") && vars.get("$param.OrderType_param"))
{
result.string(vars.get("$param.OrderType_param"));
}
else if (vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && vars.get("$this.value") == null)
{
result.string(KeywordUtils.getFirst($KeywordRegistry.orderType()));
}
}
\ No newline at end of file
import("system.vars");
import("system.neon");
neon.openContext("Order", "OrderDunning_view", null, neon.OPERATINGSTATE_EDIT, null);
import("system.vars");
import("system.result");
import("system.db");
import("Sql_lib");
import("system.neon");
import("Keyword_lib");
import("KeywordRegistry_basic");
if (vars.get("$field.ORDERTYPE")==$KeywordRegistry.orderType$invoice()){
if (vars.get("$field.ORDERSTATUS")=="1" && vars.get("$field.CANCELLATION")=="0"){
result.string(neon.COMPONENTSTATE_EDITABLE);
}
else
result.string(neon.COMPONENTSTATE_DISABLED);
}
import("system.vars");
import("system.neon");
neon.openContext("Order", "OrderPaid_view", null, neon.OPERATINGSTATE_EDIT, null);
import("system.vars");
import("system.result");
import("system.db");
import("Sql_lib");
import("system.neon");
import("Keyword_lib");
import("KeywordRegistry_basic");
if (vars.get("$field.ORDERTYPE")==$KeywordRegistry.orderType$invoice()|| vars.get("$field.ORDERTYPE")==$KeywordRegistry.orderType$credit() ){
if (vars.get("$field.ORDERSTATUS")=="1"){
result.string(neon.COMPONENTSTATE_EDITABLE);
}
else
result.string(neon.COMPONENTSTATE_DISABLED);
}
import("system.logging");
import("Sql_lib");
import("system.vars");
import("system.neon");
import("system.db");
var id = vars.get("$field.SALESORDERID");
db.updateData("SALESORDER", ["ORDERSTATUS"], null, ["1"], SqlCondition.begin()
.andPrepareVars("SALESORDER.SALESORDERID", "$field.SALESORDERID")
.build("1=2"));
neon.refreshAll();
\ No newline at end of file
import("system.vars");
import("system.result");
import("system.db");
import("Sql_lib");
import("system.neon");
if(vars.get("$field.ORDERSTATUS")=="0")
result.string(neon.COMPONENTSTATE_EDITABLE);
else
result.string(neon.COMPONENTSTATE_DISABLED);
\ No newline at end of file
import("system.vars");
import("system.neon");
import("Order_lib");
import("Keyword_lib");
import("KeywordRegistry_basic");
var contactId = vars.getString("$field.CONTACT_ID");
var currency = vars.getString("$field.CURRENCY");
var language = vars.getString("$field.LANGUAGE");
var header = vars.getString("$field.HEADER");
var footer = vars.getString("$field.FOOTER");
var offerId = vars.getString("$field.OFFER_ID");
var deliveryTerm = vars.getString("$field.DELIVERYTERMS");
var paymentTerm = vars.getString("$field.PAYMENTTERMS");
var rowId = vars.getString("$field.OBJECT_ROWID");
var objectType = vars.getString("$field.OBJECT_TYPE");
var dunningDate = vars.getString("$field.DUNNINGDATE");
var dunningLevel = vars.getString("$field.DUNNINGLEVEL");
var orderType= $KeywordRegistry.orderType$deliverynote();
var cancellation= vars.getString("$field.CANCELLATION");
OrderUtils.copyOrder(offerId, contactId, orderType, language, currency, header, footer, deliveryTerm, paymentTerm, objectType, rowId, dunningDate, dunningLevel, cancellation);
\ No newline at end of file
import("system.vars");
import("system.result");
import("system.db");
import("Sql_lib");
import("system.neon");
import("Keyword_lib");
import("KeywordRegistry_basic");
if(vars.get("$field.ORDERTYPE")==$KeywordRegistry.orderType$confirmation())
result.string(neon.COMPONENTSTATE_EDITABLE);
else if (vars.get("$field.ORDERTYPE")==$KeywordRegistry.orderType$invoice()){
if (vars.get("$field.ORDERSTATUS")=="0" && vars.get("$field.CANCELLATION")=="1"){
result.string(neon.COMPONENTSTATE_DISABLED);
}
else
result.string(neon.COMPONENTSTATE_EDITABLE);
}
else
result.string(neon.COMPONENTSTATE_DISABLED);
\ No newline at end of file
import("system.vars");
import("system.neon");
import("Order_lib");
import("Keyword_lib");
import("KeywordRegistry_basic");
var contactId = vars.getString("$field.CONTACT_ID");
var currency = vars.getString("$field.CURRENCY");
var language = vars.getString("$field.LANGUAGE");
var header = vars.getString("$field.HEADER");
var footer = vars.getString("$field.FOOTER");
var offerId = vars.getString("$field.OFFER_ID");
var deliveryTerm = vars.getString("$field.DELIVERYTERMS");
var paymentTerm = vars.getString("$field.PAYMENTTERMS");
var rowId = vars.getString("$field.OBJECT_ROWID");
var objectType = vars.getString("$field.OBJECT_TYPE");
var dunningDate = vars.getString("$field.DUNNINGDATE");
var dunningLevel = vars.getString("$field.DUNNINGLEVEL");
var orderType= $KeywordRegistry.orderType$invoice();
var cancellation= vars.getString("$field.CANCELLATION");
OrderUtils.copyOrder(offerId, contactId, orderType, language, currency, header, footer, deliveryTerm, paymentTerm, objectType, rowId, dunningDate, dunningLevel, cancellation);
\ No newline at end of file
import("system.vars");
import("system.result");
import("system.db");
import("Sql_lib");
import("system.neon");
import("Keyword_lib");
import("KeywordRegistry_basic");
if(vars.get("$field.ORDERTYPE")==$KeywordRegistry.orderType$confirmation())
result.string(neon.COMPONENTSTATE_EDITABLE);
else
result.string(neon.COMPONENTSTATE_DISABLED);
\ No newline at end of file
......@@ -39,5 +39,13 @@
<name>e8fb5f3b-e166-4ee3-9752-e20d9aec0e75</name>
<view>OrderClassification_view</view>
</neonViewReference>
<neonViewReference>
<name>cea44230-2a80-4a3e-9dc4-3d199f8f6edc</name>
<view>OrderDunning_view</view>
</neonViewReference>
<neonViewReference>
<name>5a70d5cf-d1d8-4773-900c-1376f5b9a988</name>
<view>OrderPaid_view</view>
</neonViewReference>
</references>
</neonContext>
<?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>OrderDunning_view</name>
<majorModelMode>DISTRIBUTED</majorModelMode>
<layout>
<boxLayout>
<name>layout</name>
</boxLayout>
</layout>
<children>
<genericViewTemplate>
<name>Dunning_info</name>
<editMode v="true" />
<entityField>#ENTITY</entityField>
<fields>
<entityFieldLink>
<name>66b04976-21fa-4ea7-b82e-ff2dd02f7ab9</name>
<entityField>DUNNINGDATE</entityField>
</entityFieldLink>
<entityFieldLink>
<name>1f8b88dc-f07c-4803-b985-cc385723d492</name>
<entityField>DUNNINGLEVEL</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>OrderPaid_view</name>
<majorModelMode>DISTRIBUTED</majorModelMode>
<layout>
<boxLayout>
<name>layout</name>
</boxLayout>
</layout>
<children>
<genericViewTemplate>
<name>Paid</name>
<editMode v="true" />
<entityField>#ENTITY</entityField>
<fields>
<entityFieldLink>
<name>cb3e76a5-a34f-4e02-bd41-e9acad7fa01a</name>
<entityField>PAID</entityField>
</entityFieldLink>
</fields>
</genericViewTemplate>
</children>
</neonView>
......@@ -305,7 +305,8 @@ OfferUtils.openOfferReport = function (pOfferID)
* @param {String} [pFooter=""]
* @param {String} [pDeliveryTerm=""]
* @param {String} [pPaymentTerm=""]
* @param {String} [pSalesprojectId=""]
* @param {String} [pObjectType=""]
* @param {String} [pRowId=""]
*/
OfferUtils.copyOffer = function (pOfferId, pContactId, pLanguage, pCurrency, pHeader, pFooter, pDeliveryTerm, pPaymentTerm, pObjectType, pRowId)
{
......@@ -355,7 +356,8 @@ OfferUtils.copyOfferItems = function (pSourceOfferId, pTargetOfferId)
* opens an order in NEW mode with values from an offer
*
* @param pOfferId {String} id of the offer
* @param pSalesprojectId {String} salesproject id
* @param pContextId {String} context id
* @param pRowId {String} row id
* @param pContactId {String} contact id
* @param pLanguage {String} language
* @param pCurrency {String} [currency=""]
......
......@@ -81,6 +81,28 @@ OrderUtils.createNewOrder = function(pContextId, pRowId, pRelationId)
neon.openContext("Order", null, neon.OPERATINGSTATE_NEW, params);
}
OrderUtils.copyOrder = function (pOfferId, pContactId, pOrderType, pLanguage, pCurrency, pHeader, pFooter, pDeliveryTerm, pPaymentTerm, pObjectType, pRowId, pDunningDate, pDunningLevel, pCancellation)
{
var params = {
"ContactId_param" : pContactId,
"OrderType_param" : pOrderType,
"OrderLanguage_param" : pLanguage,
"OfferId_param" : pOfferId,
"OrderCurrency_param" : pCurrency || "",
"OrderHeader_param" : pHeader || "",
"OrderFooter_param" : pFooter || "",
"OrderDeliveryTerm_param" : pDeliveryTerm || "",
"OrderPaymentTerm_param" : pPaymentTerm || "",
"ObjectType_param" : pObjectType || "",
"ObjectRowId_param" : pRowId || "",
"OrderDunningDate_param" : pDunningDate || "",
"OrderDunningLevel_param" : pDunningLevel || "",
"OrderCancellation_param" : pCancellation || ""
};
neon.openContext("Order", null, null, neon.OPERATINGSTATE_NEW, params);
}
/**
* copies all offerItems of an offer and creates orderItems for an order
*
......
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