nShift Shipment Server integrasjon

Oppsett og konfigurasjon av nShift/Consignor Shipment Server integrasjon med BxLogistics Pro

I denne manualen tar vi for det meste opp hvordan integrasjonen skal settes opp og fungerer mot VismaNet, dog vil mye av de samme prinsippene fortsatt gjelde for andre ERP systemer. , dog vil mye av de samme prinsippene fortsatt gjelde for andre ERP systemer. 

1. Forberedelser

Printere

Sørg for at etikettprinter og eventuell A4 printer som står for Shipment Server utskrifter er installert på server tilgjengelig for BxEngine tjenesten (med andre ord, printkø på samme server som BxEngine). 
Dersom det ikke er mulig å installere printkø på BxEngine serveren (pga. begrensninger i nettet eller hos ASP) kan man installere BxSmartPrintPro som en printproxy på f.eks. en lager-PC eller lokal server hvor det er lettere å få installert etikettprintere. 
Vi anbefaler å installere printkø lokalt på Bx server/PC, fremfor delt fra printserver etc., da det både er mer stabilt og utskrifter går raskere. 
Det vi mener med lokal printkø er at printkøen ligger under Control Panel -> Devices and Printers -> og heter noe som "Printer" fremfor "Printer on servername" eller "\\servername\Printer". Bør se ca. slik ut: 

Velger dere likevel å bruke en printer delt fra printserver eller lignende er det veldig viktig at printeren er tilgjengelig for BxEngine og/eller BxSmartPrintPro tjenestene våre. Local System som er standard servicebruker på disse to tjenestene har i de fleste tilfellene ikke tilgang til delte nettverksprintere.
I vårt oppsett i BxAdmin må også printernavnet legges inn med UNC stien, som f.eks. "\\servername\Printername". 

Printere som inneholder (Redirected) vil ikke fungere da dette er printere som er med over via en RDP eller Citrix sesjon, så fort sesjonen lukkes forsvinner også printkøen. 

Printerformat

Det er viktig å finne ut hvilket printformat printeren støtter, i form av ZPL, ZPLGK, EPL eller DATAMAXLP2. Støtter den ingen av delene må man vanligvis benytte PDF. Hovedsaklig er det ZPLGK språket som benyttes hos de fleste som integrerer Shipment Server med BxLogistics. Dette er stort sett Zebra printere av nyere type. Dette bestemmer hva man setter i påkrevd shipmentoptions config i BxAdmin. 
Oversikt over de forskjellige formatene fra dokumentasjonen til nShift: 

  • All label types are encoded as Base64. 

  • none - will not return any label but creates the shipment.
  • PNG - labels in PNG format.
  • PDF - labels in PDF format.
  • EPL - labels in EPL format for printers that are supporting this e.g. LP2844, ZM400 and GK420D.
  • ZPL - labels in ZPL format but will have a margin of 30 on top of the label. This label type is optimized for LP2844-Z printers and may print too far down on the label for other printers, if this issue occurs try the ZPLGK type.
  • ZPLGK - is also in ZPL format but without the top margin. Supported by printers like GK420D, ZM400 and may also work with other printers that are supporting ZPL language. 
  • DATAMAXLP2 - label for Datamax printers. 

Shipment Server og API nøkkel

Alt oppsett i Shipment Server vedr. transportavtaler, fraktselskaper etc. i seg selv må også være ferdig satt opp, vi regner med at dere eller nShift sørger for at dette er i orden. BxSoftware tar ikke på seg ansvaret for å sette opp dette. 
For å integrere mot Shipment Server krever det også at dere får API detaljer fra nShift, da trengs Actor ID/Aktør ID og serverkey/nøkkel. 

ERP system

Alle leveringsmetoder må være lagt opp i ERP systemet. Det må legges opp én metode pr. leveringsprodukt i Shipment Server dere ønsker å benytte fra håndterminalene. For å ta noen eksempler:
Bring Ekspress neste dag, Bring Pakke til bedrift, Bring Stykkgods til bedrift, Bring Pakke levert hjem, Bring Pakke til hentested, Schenker Stykkgods osv., alle disse må ha én leveringsmetode pr. produkt i ERPet. Vi anbefaler også å legge opp et "Henter selv" valg eller tilsvarende som kan benyttes for å sende ordren uten at det bestilles frakt via Shipment Server.
Eksempel på hvordan leveringsmetoder legges opp under. 

Visma.net: Leveringsmetoder Visma.net
Visma Business: Link kommer
Visma Global: Link kommer
Uni Micro: Link kommer
Andre ERP: Link kommer

2. Shipment Server

nShift har en testside for å sjekke forskjellige detaljer relatert til leveringsmetoder etc. i Shipment Server. Vi bruker vanligvis denne for å se etter korrekte IDer pr. leveringsmetode vi må sende til Shipment Server for at fraktbestilling skal bli opprettet. Det er ikke nødvendig å bruke denne da vi importerer alle leveringsmetoder fra Shipment Server. Den er fin å ha i bakhånd dersom det skulle være leveringsmåter som mangler etter import er kjørt eller om man skulle trenge å sende inn en annen ID til Shipment Server, f.eks. ved de tilfellene hvor man bruker ProdCSID i stedet for ProdConceptID som vi sender som standard. 
Link til siden - http://consignorsupport.no/testbench/shipmentserver.aspx - på denne siden bytter vi Type til PROD før vi så fyller ut key og actor (serverkey og actor id dere får fra nShift). Deretter trykk Load Actor, da skal dere kunne få frem forskjellige Product -> Carriers etc. og se de forskjellige IDene. 

3. BxAdmin

Installation - gjelder vanligvis bare hvis ERP ikke er skybasert

Med VismaNet eller andre skybaserte ERP systemer kan man hoppe over dette steget. Skal man sette opp mot Visma Business og andre onprem ERPer er dette steget nødvendig. 

Under Installation i BxAdmin må man legge opp en ekstra Database connection, dette skal være BxEngine databasen da det er BxEngine databasen vi laster ned data til fra Shipment Server. Dersom det settes opp mot VismaNet eller andre skybaserte ERPer trenger man ikke gjøre noe med dette da BxEngine koblingen allerede skal være satt opp. 
image-png-Jul-20-2021-11-50-37-35-AM.png (703×467)

Imports from ERP

  1. Opprett ny importer under Imports from ERP ved å trykke New import. Fyll ut Import type = shipmentserver, Module = deliverymethods, Enabled = Ja.
  2. I Field mapping trykker du Add missing defaults for å legge til alle import parameterne.
  3. Import config trykker du Add missing defaults for å legge til konfigurasjons parameterne.
    1. Her passer du også på å legge inn korrekt verdi i dbconnection, som i dette tilfellet er 1. Se punkt Installation hvis dette settes opp mot Visma Business f.eks., BxEngine er da den andre database tilkoblingen som er lagt opp etter Visma Business. Dersom det settes opp mot VismaNet eller andre sky ERP holder det i de aller fleste tilfellene å la det være dbconnection 1 (standard). 
    2. I serverkey og actorid legger du inn actor id og key fått fra nShift.

Export to ERP

  1. Vi skal også legge opp en exporter for Shipment Server under Export to ERP. Export type = shipmentserver, Module = shipmentserver, Action = create, Enabled = Ja.
  2. Field mapping trykker du Add missing defaults for å legge til alle export parameterne.

Configuration

  1. I Configuration -> Client profile -> Velg korrekt profil: Aktiver disse parameterne under Area: consignor
    1. enabled = true
    2. serverkey = serverkey fra nShift. Samme som i Imports from ERP. 
    3. actorid = actorid fra nShift. Samme som i Imports from ERP. 
    4. shipmentlabelprinter = navn på printkø slik den ligger tilgjengelig for BxEngine.
    5. shipmentoptions = I dette tilfellet bruker vi ZPLGK da printer er av nyere Zebra printer med ZPL format:
      {"Labels":"ZPLGK", "PriceCalculation":"1"} - se tidligere avsnitt om Printerformat. PriceCalculation blir også alltid lagt til i vårt oppsett med 1 som standard. 
    6. url = https://www.shipmentserver.com/ship/ShipmentServerModule.dll (fra versjon 2022 og nyere trengs ikke URL)
    7. senderaddress = avsenderadresse.
    8. sendercity = avsenderby.
    9. sendermobile = avsender telefon/mobilnr.
    10. sendername  = avsendernavn, vanligvis bedriftsnavn.
    11. senderpostcode  = avsender postnr.
  2. Under Area: pickinglist, aktiver disse parameterne
    1. deliverymethod = true
    2. shipment = true
    3. downloadpackagetypes = true, brukes for pakketyper fra fraktleverandør.
    4. showpackagetype = true, brukes for pakketyper fra fraktleverandør.
  3. Hvis printproxy oppsett skal benyttes, følg disse punktene. Ignorer dette punktet hvis printproxy oppsett ikke er relevant.
    Under Area: consignor, fyll ut printproxy med firmakoden til BxSmartPrintPro lisensen, printproxylicensekey fylles ut med lisensnøkkel til BxSmartPrintPro. 
    1. printproxy = firmakode/AppCode
    2. printproxylicensekey = lisensnøkkelimage-png-May-23-2022-01-30-36-11-PM.png (1178×200)

Data

Åpne Data i BxAdmin og trykk Run Import for å laste ned leveringsmetodene fra Shipment Server. Vent et par minutter før du prøver en refresh da det innimellom kan ta litt tid å hente ned alle. Når de er ferdig lastet ned burde listen se slik ut. Her har vi også fylt ut DeliveryMethod kolonnen med IDen til forkjellige Send via-koder fra VismaNet, dvs. IDen til leveringsmetoden fra ERPet.

SQL Integration

Delivery Methods
Spørringen for leveringsmetoder ligger under SQL Integration -> Picking -> Delivery Methods. Mot VismaNet har vi standard-spørring for forskjellige TA-systemer. For Shipment Server skal linje 4 kommenteres ut og linje 8+14 kommenteres inn. Her skal ID lagt inn i deliverymethod kolonnen i Data fra forrige punkt matche ID for koden i ERPet. Når dette er gjort korrekt skal externalid kolonnen når man kjører spørringen fylles ut med korrekt ID fra Shipment Server. 
For andre ERP systemer som ikke er skybasert må man ofte joine inn tabeller for transportører/leveringsmetoder fra ERPet slik at vår tabell joines med ERPets, deliverymethod ID skal matches med ERPets ID. 

Package Types
Visse leveringsmetoder for forskjellige transportører krever noen ganger at vi også sender med pakketyper til Shipment Server. Ved disse tilfellene må man også fylle ut DeliveryMethod kolonnen i PackageTypes fanen under Data med korrekt ID fra ERPet. I tillegg må man aktivere oppsett for det under Configuration -> area: pickinglist, showpackagetype = true og downloadpackagetypes = true. Dette gir et ekstra valg for pakketyper på terminal i fraktbildet. 
SQL spørringen for Package Types er standard og skal ikke endres på.

Delivery Services
Vi har også støtte for å sende med en eller flere servicer til transportører som har støtte for dette. For å aktivere dette må man aktivere det under Configuration -> Client Profiles -> area: pickinglist, showdeliveryservices = true og downloaddeliveryservices = true. Deretter må man under Data -> DeliveryServices matche DeliveryMethod kolonnen med ID fra ERPet, mot korrekt transportør og leveringsmetode. I vårt tilfelle er BRING1 ID i ERPet, for Bring Bedriftspakke. Oppdatert 18.08.23: Standardspørringen for servicer tar hensyn til dette så man slipper å fylle ut DeliveryMethod kolonnen. Skulle man likevel ønske å begrense valgene tilgjengelig for leveringsmåten er det enklest å gjøre det på denne måten.


Oppsummert

Dette er alt man trenger å gjøre for å sette opp Shipment Server integrasjonen i BxLogistics Pro. Vanligvis trenger man ikke gjøre mer enn dette. Eventuelt ekstra relevant oppsett vil etterhvert dokumenteres under Ekstra kategorien. 

Ekstra

Sporingsnummer og fraktpris

Shipment Server sender oss sporingsnummer, sporingsurl og fraktpris sammen med fraktetiketten i det fraktbestillingen sendes fra terminal. Disse verdiene kan vi hente ut og sende med videre til ERPet. Korrekte sourcefields for dette er

shipmentTrackingId - sporingsnummer
shipmentTrackingUrl 
- sporingslink
shipmentPrice1 
- fraktpris1
shipmentPrice2 - fraktpris2 

Disse kan sendes videre til ønskede felter i ERPet via pickinglist create exporteren.
Visse ERPer, som VismaNet, har standard-felter for dette allerede lagt opp i standard-exporter, mens andre ERPer er det nødvendig å legge inn mappinger mot korrekt felt i ERPet.
Det kan også være nødvendig å benytte pickinglist addproduct exporteren for fraktpris mot ERPer som ikke har standardfelter for priser, hvor prisen i stedet skal legges på som en ordrelinje.