Kontinuerliga nummerserier

Microsoft Dynamics AX 4.0, Microsoft Dynamics AX 2009, Microsoft Dynamics AX 2012

Att sätta en nummerserie i Dynamics AX till kontinuerlig är något man ska tänka över två gånger innan man gör.
Om en nummerserie är satt till kontinuerlig så innebär det att alla lediga nummer återanvänds (om posten som fått numret tilldelat tas bort).
Att ställa in en nummerserie som används som inköpsordernummer till kontinuerlig kan i ett koncerninternt flöde leda till stora problem.

1

Kontinuerliga nummerserier ska generellt sett endast användas för verifikationsnummer.
Att använda det till något som försäljningsordernummer eller inköpsordernummer kan leda till förvirring t.ex. i fallet när er leverantör registrerar ert inköpsordernummer som referens och vid något skede upptäcker att det inköpsordernumret redan använts.

Man ska även alltid ha i åtanke att det kostar prestanda att sätta en nummerserie som kontinuerlig.

Men det finns en större anledningar till att inte sätta nummerserien för inköps- eller försäljningsordernummer till kontinuerliga, och det är ett problem som kan uppstå vid bokföring av samlingsuppdaterad leverantörsfaktura i ett koncerninternt flöde.
Felmeddelandet som dyker upp lyder enl. följande: ”En valuta att konvertera från krävs för att hämta information om valutakurs”, och det är ju inte särskilt avslöjande.

Föreställ er ett scenario där ett säljande bolag säljer artiklar vars behov täcks genom att koncerninterna inköpsorder skapas, som i sin tur automatiskt skapar upp länkade koncerninterna försäljningsorder i moderbolaget.
I detta scenario har säljbolaget ställt in sin nummerserie för inköpsordernummer att vara kontinuerlig.

Det skulle i teorin kunna se ut såhär:

Säljbolag Moderbolag
Koncerinternt IO# Koncerninternt SO#
IO1000 SO2000
IO1001 SO2001
IO1002 SO2002

 

Vad ni ser är att det snyggt och prydligt har skapats upp tre st. koncerninterna inköpsorder med kopplade försäljningsorder i moderbolaget.

I nästa steg så har den första inköpsordern tagits bort, och därför har även den kopplade försäljningsordern tagits bort.

Säljbolag Moderbolag
Koncerinternt IO# Koncerninternt SO#
IO1000 SO2000
IO1001 SO2001
IO1002 SO2002
IO1000 SO2003

 

Vad som då händer är att nästa inköpsorder som skapas återanvänder den borttagna inköpsorderns inköpsordernummer, medan försäljningsordern får ett nytt nummer i serien (eftersom nummerserien för försäljningsorder inte är satt till kontinuerlig).

När nu dessa tre försäljningsorder samlingsfaktureras så kommer fakturan att bli märkt med nummer ”SO2001” som försäljningsordernummer.
Det är alltid det lägsta försäljningsordernumret som markeras på fakturajournalen vid samfakturering.

Problemet uppstår nu när leverantörsfakturan ska bokföras och konsolidering väljs på t.ex. fakturakonto.
I detta läget så använder AX den inköpsorder med lägst inköpsordernummer för att hitta vilket försäljningsordernummer som ska användas för att hitta kundfakturan som ska matchas.
Och i vårt fall ovan så är det alltså inköpsorder IO1000 som hämtas, och där med försäljningsordernummer SO2003 som sedan används för att hitta kundfakturan.
Men eftersom kundfakturan är uppmärkt med nummer SO2001 så kommer koden här inte hitta någon kundfaktura att matcha med.

Det kan tyckas vara konstigt att AX gör på detta viset att det lägsta inköpsordernumret alltid försöker matcha mot det lägsta försäljningsordernumret.
Men eftersom dessa skapas samtidigt så kommer detta alltid att fungera så länge inte någon av nummerserierna är inställda att vara kontinuerliga.

Skrivet av