Spring videre til hovedindholdet
Alle samlingerAPIMicrosoft Dynamics NAV
Implementering af Shipmondo integrationsmodul til Microsoft Dynamics NAV
Implementering af Shipmondo integrationsmodul til Microsoft Dynamics NAV

Udskriv pakkelabels direkte fra Dynamics NAV økonomisstyringsystem med Shipmondo's gratis integrationsløsning / NAV add-on.

Nicklas Nguyen avatar
Skrevet af Nicklas Nguyen
Opdateret i denne uge

Shipmondo har udviklet et gratis integrationsmodul NAV add-on til Microsoft Dynamics NAV, som giver mulighed for at oprette forsendelser og pakkelabels direkte fra Microsoft Dynamics NAV økonomistyringssystem.

I denne vejledning gennemgår vi hvordan integrationsmodulet implementeres i Microsoft Dynamics NAV, og hvordan løsningen let kan tilpasse til at understøtte en virksomheds arbejdsgang.

Der er tale om en teknisk vejledning, som er tiltænkt Microsoft Dynamics NAV partnere og udviklere.  

Er du en virksomhed, som benytter Microsoft Dynamics NAV og ønsker håndtere dine forsendelser direkte fra dit økonomistyringssystem, så skal du kontakte din Microsoft Dynamics NAV partner, som kan hjælpe dig med implementeringen.

Vejledning til implementering og opsætning

Shipmondo integrationsmodulet kommunikerer med vores RESTful API og er opbygget modulært, hvilket giver mulighed for, at løsningen let kan udvides og tilpasses til en virksomheds arbejdsgang.

Herunder gennemgår vi den grundlæggende opsætning af modulet, samt viser vi en simpel implementering af en udskrivningsknap under salgsordrer i Dynamics NAV.

Opsætning tager ca. 30 min. og du vil herefter være klar til at oprette den første forsendelse og udskrive en pakkelabel til labelprinteren direkte fra Dynamics NAV.

1. Indlæsning NAV-objektpakke i Dynamics NAV 

Kontakt vores kundeservice og oplys den Microsoft Dynamics NAV version du/din kunde benytter og vores kundeservice vil fremsende dig den korrekte NAV-objektpakke og tilhørende filer.

Installer den medfølgende Newtonsoft Json.NET bibliotek ved at følge denne vejledning (Newtonsoft.Json.dll filen som følger med zip-filen, som du har modtaget fra vores kundeservice). For vejledning vedr. installation af Newtonsoft Json.NET for Dynamics NAV klik her.

Indlæs NAV objektpakken i Dynamics NAV udviklingsmijlø (objekterne ligger i nummerserien 90001..90008).

Kompilér objekterne.

2. Opsæt Shipmondo's API nøgle 

Åbn Pakkelabels profiler (NAV page 90005).

Opret en ny profil. 

Angiv API bruger og API nøgle fra din Shipmondo-konto. Se hvordan du finder dine API oplysninger her.

Angiv afsenderoplysninger under fanen Afsender, som du ønsker skal fremgå på dine forsendelser og pakkelabels. 

Har du flere forretninger (f.eks. hvis du driver flere webshops med forskellige navne), så kan du oprette flere Pakkelabels profiler med forskellige afsendere.

3. Tilknyt fragtprodukt til speditørkode og leveringskode i NAV

Nu skal du tilknytte dine speditør- og leveringskoder i Dynamics NAV (standardfelter i NAV som bl.a. kan vælges på debitorkortet og under salgsordrer) med fragtprodukterne på Shipmondo. 

Denne opsætning gør, at det korrekte fragtprodukt bliver bestilt, når du skal oprette en forsendelse fra f.eks. en salgsordre i Dynamics NAV.

Herunder viser vi en opsætning for en leveringsmetode, men benytter du flere speditører/leveringsformer, så skal du blot gentage opsætningen for hver leveringsmetode.

Åbn Pakkelabels leveringsmetoder  (NAV page 90007).

Opret en ny leveringsmetode. 

Under fanen NAV speditør og leveringskode angiver du dine Dynamics NAV speditørkode og leveringskode, som du ønsker et tilknytte til et fragtprodukt på Shipmondo.

I eksemplet herunder ønsker vi at opsætte speditørkode "GLS" og leveringskode "PAKKESHOP".

Produktkode:

Under fanen Pakkelabels fragtprodukt, skal du angive Produktkode fra Shipmondo. Produktkode for GLS PakkeShop er "GLS_DK_SD". 

Produktkoden er værdien, der bliver sendt med i API-kaldet, når en forsendelse skal oprettes og den er med til at identificere det korrekte fragtprodukt (og speditør/transportør) på Shipmondo.

Hver fragtprodukt har en unik produktkode.

Du kan se en liste over tilgængelige fragtprodukter og produktkoder menupunktet Indstillinger > API > API fragtprodukt- og serviceoversigt, når du er logget ind på din Shipmondo-konto - eller - ved at benytte API-kaldet Products (læs mere her). 

Vægt:

Det er muligt at angive en standard vægt på forsendelser for en leveringsmetode, men har man vægtangivelser på sine varer i Dynamics NAV, så er det også muligt at tilpasse løsningen, så den korrekte vægt bliver overført til forsendelsen.

Egen fragtaftale:

Der er mulighed for at styre om man ønsker at oprette forsendelser gennem egne fragtaftaler eller gennem Shipmondo's fragtaftaler. 

Ønsker man at bruge egen fragtaftale, så skal den/de først aktiveres på Shipmondo-kontoen. Læs mere om egne fragtaftaler her.


Adviseringer og personlig beskeder:
Gennem API'et er det muligt at tilvælge forskellige services til en forsendelse.

I vores integrationsmodul har vi gjort e-mail/SMS adviseringer og personlige beskeder tilgængelig i opsætningen, men det er muligt at udvide løsningen til at understøtte andre services, som f.eks. forsikring, hvis der er behov for det.

Læs mere om tilvalg til forsendelser her.

4. Opsætning af labelprinter

For at kunne udskrive pakkelabels til en labelprinter skal Shipmondo Printklient software installeres på en computer eller server, som har adgang til labelprinteren.

Når Shipmondo Printklient er installeret kan du tilføje din(e) printer(e), som du vil benytte med Shipmondo. 

Printklientens opgave er at ligge sig i baggrunden og kommunikere med Shipmondo's server og sørger for at overføre printjobs til labelprinteren. Læs mere om Printklienten.

Når printklienten er installeret og du har tilføje din(e) printer(e), så kan på klikke på Hent printerliste i menuen på din opsatte Pakkelabels profil og din printerliste vil blive hentet/opdateret, og du kan nu vælge den printer, som du benytte under Printernavn.

Har du flere labelprintere, så kan du oprette flere Pakkelabels profiler og tilknytte dem printerne. En Pakkelabels profil kan herefter tilknyttes en Dynamics NAV bruger og på den måde kan der styres, hvilken bruger skal udskrive på hvilken printer.

5. Udskriv pakkelabels fra salgsordrer i Dynamics NAV

I punkt 1) til 4) gennemgik vi den grundlæggende opsætning i Shipmondo integrationsmodulet og hvordan man tilslutter en labelprinter til løsningen.

Nu vil vi se på, hvordan man implementerer en udskrivningsknap under salgsordrer i Dynamics NAV.

Vi har bevidst valgt ikke at præ-oprette udskrivningsknappen i objektpakken, da forskellige virksomheder har forskellige behov/arbejdsgange, og dertil har virksomheder typisk også egne tilpasninger i deres NAV løsninger, som gør det vanskeligt, hvis ikke umuligt, at lave en plug'n play løsning.

I stedet har vi derfor valgt at opbygge integrationsmodulet modulært, så det er let for en NAV udvikler at implementere/placere f.eks. en udskrivningsknap på det ønsket sted i Dynamics NAV.

Herunder viser vi et eksempel på hvordan man implementerer en udskrivningsknap under salgsordrer i Dynamics NAV.

  1. Opret en knap under Salgsordre i Dynamics NAV og kald den f.eks. "Udskriv pakkelabel"

2. Indsæt følgende to kodelinjer under OnAction() for den oprettet knap:

PakkelabelsMgnt.SetProfileID('1');
PakkelabelsMgnt.PrintShippingLabel("Document Type","No.");

PakkelabelsProfile er en instans Table 90005.

Udskrivningsknappen er nu implementeret.

Du kan nu oprette en forsendelse og udskrive pakkelabel til din labelprinter fra en salgsordre i Dynamics NAV med et klik på Udskriv pakkelabel.

Videreudvikling og tilpasning til behov

Gennem vores API er det muligt at få adgang til stor set alle funktioner og services på Shipmondo. 

Du kan derfor bygge videre på vores løsning og lave en løsning, der netop passer til din virksomheds behov.

For at hjælpe dig med at spare tid, så har vi i Codeunit 90005 Pakkelabels Mgnt. i NAV-objektpakken inkluderet en række hjælpefunktioner/kodeeksempler med kald til vores API, som man kan tage udgangspunkt i.

Derudover anbefaler vi også, at man kigger på vores API vejledninger, der indeholder beskrivelse af fremgangsmåder og konkrete eksempler på, hvordan man håndterer de forskellige API-kald. 

Avancerede forsendelser

Vores NAV integrationsmodul understøtter ikke "avancerede" forsendelser (forsendelser med DHL Express, FedEx, UPS mv.), men modulet kan let udvides til at understøtte det.

Grunden til, at vi ikke understøtter det skyldes, at disse transportører har specielle krav til bookingen, der gør, at det ikke er muligt at lav en plug-and-play løsning.

F.eks. kræver DHL Express, at der skal sendes mål på pakkerne med i bookingen, samt skal der oprettes en elektronisk proformafaktura ved forsendelser udenfor EU. 

Da disse data gemmes forskelligt i Dynamics NAV fra kunde til kunde, så der skal her foretages en kundespecifik implementering.

For at støtte denne proces har vi lavet en vejledning med eksempler på, hvordan man booker advanced parcels gennem vores API. 

Se eksemplerne her.

Besvarede dette dit spørgsmål?