Conversie van orders naar ERP systemen¶
In de handleiding Ophalen orders staat beschreven dat de bestellingen automatisch door de leverancier opgehaald kunnen worden.
Een opgehaalde bestelling wordt dan aangeleverd in het Ecmanage xml order formaat.
Ecmanage heeft voor een aantal ERP systemen enkele standaard koppelingen klaar liggen nl voor:
AFAS Software https://www.afas.nl/software/connector
Cash Bedrijfssoftware https://www.cash.nl/koppelingen/cash-connect/cash-api-3-0/
DGE dgeDetailhandel https://www.dgebv.nl
Exact Globe https://www.exact.com/nl/software/technologie/exact-globe/
Exact Online https://start.exactonline.nl
GenCom https://www.gencom.be/
Logic4 https://www.logic4.nl
King Business Software https://www.king.eu/erp/
Odoo/OpenERP https://www.odoo.com
Unit4 Agresso Wholesale https://www.unit4.com
Sales in de Bouw (SIDB) https://www.ketenstandaard.nl/sales/sales-standaard/
TNT Fashion / Bleckmann https://www.bleckmann.com/services/
Afhankelijk van de koppeling wordt het ecmanage order xml vertaald naar een voor ERP benodigde order formaat, deze kan vervolgens via een webservice en of Soap interface geupload worden naar en of aangemaakt worden in het ERP systeem.
Exact Online¶
De Exact Online koppeling verwerkt Ecmanage orders naar ExactOnline Handel. Hierbij wordt gebruik gemaakt van de ExactOnline api’s.
Configuratie¶
Voor het inloggen in Exact Online is het nodig dat een gebruiker eenmalig zich aanmeld, we krijgen dan een refreshtoken van Exact Online waarmee de koppeling zijn werk kan doen.
Division
Iedere klant heeft een bepaalde administratie of Division code. Deze is via een helperfunctie van de koppeling op te vragen. Deze waarde moet geplaatst worden in het config item Division.
Werking¶
Bij het verwerken van een order worden de volgende stappen doorlopen:
Controle administratie/division code (config bestand)
Eerst wordt gekeken of de ingevoerde administratie/division code aanwezig is.
Controle klant/Debtor (order bestand)
Aan de hand van de debtor code (reference code/projectcode) wordt gekeken of er een klant in exactonline te vinden is met deze code. Indien niet aanwezig dan treedt een fout op.
Controle WAREHOUSECODE/magazijn (config bestand)
Indien config item WAREHOUSECODE een waarde bevat dan wordt gecontroleerd of deze aanwezig is in exact online. Indien niet aanwezig dan treedt een fout op.
controle BULKVOORRAAD (order bestand)
Bulkvoorraad order mogen niet naar ERP
En de volgende stappen per order detail regel:
orderdetail regel met aantal 0 worden niet verwerkt
controle INCLUDE_ORDERCOSTS (config bestand)
Indien deze setting waarde true bevat dan mogen de orderkosten als Item toegevoegd worden naar ExactOnline.
controle productassortmentsupplierid (order bestand)
Met het productassortmentsupplierid wordt gecontroleerd of item/artikel met deze code aanwezig is in ExactOnline. Zo niet, dan treedt een fout op.
controle of product/artikel actief is
Zo niet, dan treedt een fout op.
voor iedere productattribute tbv aanmaak extra productkenmerk (als extra orderregel in ERP)
controle of de omschrijving overeenkomt met “EXTRA ORDERREGEL” en de value een waarde bevat.
dan wordt gecontroleerd aan de hand van productattribute.externid of deze aanwezig is in ERP.
Als deze aanwezig is, dan wordt gecontroleerd of deze actief id. Zo niet dan wordt deze regel overgeslagen.
Controle of drager of afdeling (bulk)bekend is (order bestand)
Als config ALLOW_CREATE_CONTACT is true dan wordt gekeken of Contact aanwezig is in ExactOnline. Zo niet dan wordt Contact aangemaakt. De gekoppelde adressen aan het contact worden opgehaald. Het afleveradres (order bestand) wordt vergeleken met items uit de opgehaalde lijst. Hierbij config LanguageCode gebruikt. Indien sprake van een match dan wordt deze gebruikt. Indien geen match dan wordt het adres aangemaakt.
Order aanmaken
Als config ALLOW_CREATE_CONTACT is true dan wordt aangemaakte data id’s hergebruikt. DeliveryDate bepaald afhankelijk van config DELIVERYDATEADDDAYS
Sales in de Bouw (SIDB)¶
Dit is gebaseerd op een industrie standaard voor bedrijven in de bouw. De volgende velden worden gebruikt in de conversie vanuit Ecmanage:
Sales in de Bouw veld |
Ecmanage veld |
---|---|
Order.OrderType |
Constante: 220 |
Order.OrderNumber |
Ordernummer met acro: bijvoorbeeld KLANT1000001 |
Order.OrderDate |
Order invoerdatum |
Order.OrderTime |
Order invoertijd |
Order.ContractReference.ContractNumber |
(Optioneel) kan in configuratie een Constante opnemen. |
Order.ProjectNumber |
(Optioneel) dit is de waarde van de projectenmodule uit Ecmanage. |
Order.ScenarioTypeCode |
Default: “X1”, kan in configuratie Constante aanpassen. (deellevering mogelijk X2, Niet mogelijk X1) |
Order.EndCustomerOrderNumber |
Default: “Ecmanage Order”, kan in configuratie aangeven welk veld uit Ecmanage order gebruikt mag worden. |
Order.TransportInstruction.DeliveryNoteText |
(Optioneel) Ecmanage order opmerkingen indien deze actief zijn bij orderinvoer. |
Order.DeliveryDateTimeInformation.RequiredDeliveryDate |
(Optioneel) Ecmanage order gewenste leverdatum indien deze actief is bij orderinvoer. Zie ook instelling in configuratie: “DefaultDeliveryDateDeltaDays” |
Order.DeliveryDateTimeInformation.RequiredDeliveryTime |
(Optioneel) Ecmanage order gewenste leverdatum indien deze actief is bij orderinvoer. |
Order.FreeText |
(Optioneel) kan in configuratie aangeven welk veld uit Ecmanage order gebruikt mag worden. |
Order.Buyer.GLN |
Ecmanage veld van afdeling: BUYERGLN |
Order.Buyer.Name2 |
(Optioneel) kan in configuratie aangeven welk veld uit Ecmanage order gebruikt mag worden. |
Order.Buyer.ContactInformation.ContactPersonName |
Default: “Ontvangernaam”, kan in configuratie aangeven welk veld uit Ecmanage order gebruikt mag worden. Indien bulk dan afhankelijk configuratie “UsePurchaser”: Afdeling naam of Besteller naam. |
Order.Buyer.ContactInformation.EmailAddress |
Default: “Email adres uit de order”, kan in configuratie aangeven welk veld uit Ecmanage order gebruikt mag worden. |
Order.Supplier.GLN |
Ecmanage veld van afdeling: DELIVERYPARTYGLN |
Order.Supplier.Name2 |
(Optioneel) kan in configuratie aangeven welk veld uit Ecmanage order gebruikt mag worden. |
Order.DeliveryParty.GLN |
Ecmanage veld van afdeling: DELIVERYPARTYGLN |
Order.DeliveryParty.Name |
Gelijk aan veld “Order.Buyer.ContactInformation.ContactPersonName” |
Order.DeliveryParty.Name2 |
(Optioneel) kan in configuratie aangeven welk veld uit Ecmanage order gebruikt mag worden. |
Order.DeliveryParty.StreetAndNumber |
Ecmanage order leveradres, straat en huisnmummer. Afhankelijk configuratie in Ecmanage. |
Order.DeliveryParty.City |
Ecmanage order leveradres, plaats. Afhankelijk configuratie in Ecmanage. |
Order.DeliveryParty.PostalCode |
Ecmanage order leveradres, postcode. Afhankelijk configuratie in Ecmanage. |
Order.DeliveryParty.Country |
Ecmanage order leveradres, landcode ISO 2 lettercode. Afhankelijk configuratie in Ecmanage. |
Order.DeliveryParty.LocationDescription |
Default: “9999”, kan in configuratie een Constante opnemen. Of afhankelijk configuratie “UsePurchaser”: gebruik REF1 veld van besteller Of REF1 veld van Ontvanger Of indien bulk REF1 veld Besteller of Afdeling afhankelijk configuratie “UsePurchaser” |
Order.ShipFrom.GLN |
(Optioneel) Afhankelijk configuratie “Use_ShipFrom_Name”. Indien Y: GLN is gelijk aan DELIVERYPARTYGLN. |
Order.ShipFrom.Name |
Of kenmerk “MAGAZIJNNUMMER” van afdeling of |
Order.Invoicee.GLN |
Ecmanage veld van afdeling: DELIVERYPARTYGLN “Default_ShipFrom_Name” uit configuratie. |
OrderLine.LineNumber |
Nummer uit de reeks 1,2,3,4,5…. |
OrderLine.OrderedQuantity |
Ecmanage orderregel aantal. Indien 0 dan niet versturen indien configuratie “ProcessQuantity0” = N |
OrderLine.OrderedQuantityMeasureUnitCode |
(Optioneel) kenmerk assortiment product “EENHEID” |
OrderLine.LineIdentitfication |
Ecmanage orderregel id (intern uniek kenmerk) |
OrderLine.TradeItemIdentification.GTIN |
Constante: veertien nullen “00000000000000” |
OrderLine.TradeItemIdentification.SuppliersTradeItemIdentification |
Ecmanage orderregel assortiment supplier id |
OrderLine.TradeItemIdentification.AdditionalItemIdentification.TradeItemDescription |
Ecmanage orderregel product naam |
OrderLine.TradeItemIdentification.AdditionalItemIdentification.Size |
(Optioneel) afhankelijk configuratie koppeling “UseItemSize”. Ecmanage orderregel maat. |
OrderLine.FreeText (multiline max 70 chars.) |
(Optioneel) afhankelijk configuratie in Ecmanage vermakingen. Bevat xml data. |