Aansluiten van voorraad en grootboek ‘made easy’

Er was eens… een voorraadverschil

Ruim 20 jaar geleden, toen ik net begon met werken in ERP-systemen, kreeg ik als applicatiebeheerder een uitdaging in mijn schoot geworpen: waarom sloot de voorraad nooit helemaal aan met het grootboek? Of ik dat ‘even’ uit kon zoeken. Wat volgde was een proces van intensief handmatig speuren, pagina na pagina aan rapporten doornemen. Zonder de luxe van Excel om data te analyseren. Een tijdje zelfs dagelijks, in de hoop zo de oorzaak van het verschil te vinden. En dan wist ik alleen nog maar welk artikel het verschil veroorzaakte. Niet welke transactie… Gelukkig hadden we na enkele maanden intensief speuren de meeste ‘gaatjes’ in de processen wel gedicht, al bleef het elke maand toch weer spannend of het nu wel zou aansluiten.

De spreadsheet! – Afletteren in Excel

Nog zo’n leuke vraag: Hoe kunnen we nu de balans van tussenrekening ‘nog te ontvangen facturen’ handiger specificeren, zonder elke keer weer opnieuw te moeten beginnen? Elke maandafsluiting was daar één persoon soms wel enkele dagen druk mee. En het hoofdkantoor had net besloten dat we elk jaar een dag minder de tijd kregen voor het opleveren van de maandcijfers. Daar bood het ERP-pakket geen functionaliteit voor. Dan maar in een spreadsheet. Doormiddel van een data-verbinding tussen database en spreadsheet, cijfers van de afgelopen maand uit het systeem halen, diverse geautomatiseerde stappen draaien om handelingen in Excel te versnellen, handmatig journaalposten maken voor de afrondingsverschillen en koersverschillen (die je dan met regelmaat verkeerd-om boekte, waardoor 1 cent verschil 2 cent verschil werd…), weer de cijfers uit het systeem halen, geautomatiseerde stappen draaien, handmatig de laatste postjes wegpoetsen en klaar. En wel opletten de maand daarop weer verder te gaan met de juiste spreadsheet van de vorige maand natuurlijk.

2001… Mijn ontdekking van JD Edwards ERP

De overstap naar JD Edwards ERP was op een aantal punten een verademing. Geen raadsels meer waar het systeem de data nu eigenlijk opslaat, export van data naar Excel – voor eindgebruikers nog wel – en zelfs een mogelijkheid transacties in het grootboek af te letteren, al was dat soms nog wel een uitdaging en veelal handmatig. En voorraad aansluiten bleef een uitdaging.
Na de nodige jaren vooral bezig te zijn geweest met softwareontwikkeling (additionele JD Edwards modules voor lokale overheid), kwam ik weer volop terecht in logistieke- en productieomgevingen. En inderdaad… het afstemmen van de voorraad bleef een uitdaging. DMAAI’s (instellingen die grootboekrekeningen bepalen), G/L classes (sort grootboekrekeningen), kostprijsberekening, productieboekhouding, shipments, verzendingen, retouren, verkooptransacties, intercompany-verkooporders, voorraadontvangsten, aanpassingen – noem maar op. En wat is eigenlijk ‘de’ waarde van de voorraad? Ja, Q*P (aantal * prijs), maar welke Q en welke P dan? En hoe doe je dat dan, enkele dagen na het einde van de periode? Door ’s avonds even je actuele voorraad veiligstellen? En hoe doe je dat dan in een 24/7 productie-omgeving? En last but not least… als het niet klopt, hoe weet je dan waar het aan ligt en hoe los je het op? Liefst zodat je later niet met oude fouten en correcties wordt geconfronteerd. En zonder ‘lump sum’ boeking die je je accountant niet uit kan leggen. En wel per voorraadrekening natuurlijk.
Het verklaren van tussenrekeningen was gelukkig wel veel eenvoudiger geworden. Tenminste voor die bedrijven die de Grootboek & Voorraad Afletteren-module van Cadran Consultancy gebruiken.

Voorraad en integriteit – de huidige gereedschapskist

Maar dan die voorraad… Ja, er zijn integriteitsrapporten. Toch is het maandelijks doorpluizen van die PDF’s geen pretje, zeker niet als het vooral afrondingsverschillen zijn, wat vaak voorkomt in een productieomgeving. Er is ook een ‘Item As-Of’ rapport, waarmee je voorraadtransacties vastlegt, zodat je per periode een overzicht hebt van de totale voorraadwaarde. Tenzij je processen zorgen voor verschillende datums tussen de Cardex (ook wel de artikeltransactielijst) en het grootboek. Halverwege de periode controleren of het nog in beetje in de pas loopt is er niet bij. Zelf ontwikkelde rapporten, ‘snapshots’ van de voorraad aan het eind van de maand en BI-dashboards bieden vaak niet het gewenste inzicht, vooral niet als deze gebruikmaken van de voorraadbalanstabel (Item Balance-tabel of F41021). Deze tabel bevat actuele voorraadstanden, maar heeft beperkingen bij het inzichtelijk maken van complexe voorraadwaarderingen of bij het traceren van transacties over meerdere periodes.

Sinds enkele jaren heeft JD Edwards een beperkte optie voor voorraadafstemming (inventory reconciliation). Gebruikers zijn waarschijnlijk al tegen de beperkingen aangelopen, vooral bij het gebruik van intercompany (internationale) verkooporders, handmatige correcties of als er sprake is van veel afrondingsverschillen. Maar hoe doe je het dan wel? Laten we bij het begin beginnen: Wat is de voorraadwaarde op een bepaald moment?

De ‘P’ en ‘het’ moment – de waarde van een artikel in de tijd

Voorraadwaarde = Q * P. Simpel zou je zeggen. Maar helaas, zo eenvoudig is het niet. Vanzelfsprekend moet je de hoeveelheid (Q) van één artikel vermenigvuldigen met de prijs (P) van dat ene artikel. Of de prijs van het artikel in het betreffende magazijn, of van het specifieke lot (en locatie). En dat uiteraard voor alle artikelen, lots (indien van toepassing) en magazijnen. So far so good. Maar de waarde van een artikel wijzigt in de tijd. Je hebt de waarde van het artikel nodig aan het einde van de periode. En laat die nu niet vastliggen in het systeem. Of toch? Hoewel de prijs per eenheid niet per datum/tijd wordt bijgehouden in JD Edwards, wordt bij wijziging van de prijs per eenheid wel keurig een transactie geregistreerd in de Cardex (lijst van voorraadtransacties). Deze transactie laat de waardewijziging van de betreffende voorraad zien. Bovendien wordt elke voorraadmutatie voorzien van een aantal én een waarde. En dat mechanisme zorgt er voor dat de voorraadwaarde toch in tijd bepaalt kan worden. En dat mechanisme blijkt behoorlijk betrouwbaar.

Q en Q – Fysieke voorraad en Financiële voorraad

Dan de Q. Uiteraard in de primaire eenheid, want de ‘P’ is de waarde van één primaire eenheid. We willen ten slotte geen aantallen en kilo’s bij elkaar optellen. De omzetting van de ene eenheid naar de andere moet daarom zorgvuldig zijn ingesteld. En dan willen we uiteraard niet weten wat er nu op voorraad ligt, maar wat er aan het eind van de periode op voorraad lag. Maar welke voorraad tellen we dan mee? In JD Edwards wordt de waarde van de voorraad bij een levering aan een klant pas bijgewerkt na facturatie. Tot die tijd telt de waarde van de voorraad nog mee, ook al is de voorraad fysiek niet meer aanwezig (maar bijvoorbeeld onderweg naar de klant). En materiaalverbruik op een werkorder wordt pas financieel verwerkt indien het productieboekhoudproces is uitgevoerd. Vaak is dat dezelfde dag (nacht), maar niet zelden een dagje (of meerdere) later. Vaak als gevolg van fouten en ‘gelockte’ werkorders. Totdat de waarde van de voorraad is overgeboekt naar onderhanden werk, telt deze mee als voorraadwaarde. Dit betekent dat er niet één Q is, maar eigenlijk twee. Een fysieke hoeveelheid en een ‘financiële’ hoeveelheid, die aangeeft hoeveel voorraad einde periode meetelt voor de waardering van de voorraad.

Op en af – Voorraad in beweging

Voorraad is vaak continue in beweging. Er worden goederen ontvangen, verplaatst, verbruikt, geproduceerd, verkocht, verscheept of afgeboekt. Inkoopprijzen worden herzien, maakartikelen krijgen een andere stuklijst, uurtarieven worden aangepast en kostprijzen worden herberekend. Combineer al deze factoren met de factor tijd en de twee verschillende manieren om naar de voorraadhoeveelheid te kijken, en het is niet verwonderlijk dat menige organisatie met enige regelmaat problemen heeft met het aansluiten van de voorraad met het grootboek. Zeker in een 24/7 omgeving, waarin de voorraad continue in beweging is. Vanwege deze complexiteit zijn niet zelden eigen ontwikkelde voorraadraporten vaak net niet nauwkeurig genoeg. Dit leidt er maandelijks toe dat organisaties grote, verzamelboekingen (lump sum boekingen) moeten maken om de balans recht te trekken – de ene maand wordt een bedrag bijgeschreven (debet), de volgende maand afgeschreven (credit), of andersom – meestal als gevolg van tijdsverschillen of fouten bij het toewijzen van voorraad aan de juiste rekeningen. Deze verschillen ontstaan vaak door een onjuiste configuratie of fouten in het beheer van masterdata, waarbij basisgegevens zoals artikelen, prijzen en voorraadlocaties niet goed zijn bijgewerkt.

Lees meer in blog: Conversie- en datamanagement bij een ERP-implementatie

Zoek de 14.293 verschillen… en één speld – Revelante voorraadverschillen

Nog een factor van belang wanneer het over voorraadtransacties gaat: het zijn er meestal veel. En dat maakt het opsporen van verschillen niet eenvoudiger. En als een fout niet gevonden kan worden, is het vaak lastig of zelfs onmogelijk om de onderliggende oorzaak vast te stellen en het proces te verbeteren dat toekomstige fouten worden voorkomen. Bovendien is – zeker in een productie-omgeving – het aantal verschillen vaak substantieel als gevolg van afrondingsverschillen. Toch zijn het, mits de voorraadsprocessen goed zijn ingericht en procedures gevolgd worden, meestal slechts enkel transacties die echt problemen veroorzaken. De overgrote meerderheid van de transacties veroorzaken geen verschillen.

Goed gereedschap is het halve werk – de voorraadrapportage

Maar hoe moet het dan wél? Allereerst door appels met appels te vergelijken. Voor de grootboekzijde is dit reeds goed geregeld: wat hoort bij welke periode. Het bepalen van de voorraad en voorraadwaarde vanuit de voorraadadministratie vereist een nauwkeurige voorraadrapportage (per voorraadrekening) die rekening houdt met ‘timing’ (wat hoort bij welke periode) en onderscheid maakt in de fysieke voorraad en financiële voorraad op een bepaald moment.

Meer goed gereedschap – voorraad afletteren

Maar met een goede voorraadrapportage alleen ben je er niet. Want als het niét klopt, waar ligt het dan aan? Hoe vind je die transacties die het échte probleem veroorzaken? Dat kom je toch op het controleren van de onderliggende transacties: kloppen de voorraadtransacties met de grootboektransacties én andersom! Daarom moeten we transacties tegen elkaar wegstrepen om de fouten op te sporen, een proces dat bekendstaat als “afletteren,” tot we die transacties vinden die niet kloppen. En daarbij zijn we niet geïnteresseerd in kleine afrondingsverschillen, maar willen we wel weten of we alle transacties hebben gevonden die het totale verschil verklaren. En uiteraard kunnen we dit niet handmatig doen. Daarvoor zijn er over het algemeen veel te veel transacties. En dat proces lijkt wel erg veel op Grootboek Afletteren, tenminste op het proces dat door de Grootboek & Voorraad Afletteren module van Cadran Consultancy ondersteund wordt: combineren van transacties, afletteren én binnen bepaalde grenzen de verschillen automatisch corrigeren van kleine verschillen.

… en ze leefden nog lang en gelukkig. – Voorraad-aansluiting ‘made easy’?

Dus kon ik aan de slag met het aanpassen van de Grootboek Afletteren module van Cadran, zodat naast grootboektransacties ook voorraadtransacties gemakkelijk afgestemd (afgeletterd) kunnen worden. En een nauwkeurige voorraadrapportage met een vergelijk met grootboek werd toegevoegd. En passant zijn ook nog een groot aantal openstaande wensen van klanten ingebouwd in de module. Het resultaat: een grondig herziene module die het valideren van zowel grootboektransacties als voorraadtransacties vele malen eenvoudiger maakt.

Het resultaat: voorraadtransacties worden dagelijks afgeletterd, afrondingsverschillen worden automatisch gecorrigeerd eventuele verschillen tussen de nieuwe voorraadrapportage en het grootboek worden volledig (tot op de cent) verklaard door niet-afgeletterde transacties. Dagelijks. Zodat je vandaag weet welke transacties er gisteren niet goed zijn gegaan. En weet wat je moet corrigeren, onderzoeken én verbeteren.

Tot slot

Verschillen tussen de voorraad en het grootboek duiden vaak op problemen met processen en/of procedures en soms op software-gerelateerde problemen. En indien de voorraad in het grootboek niet correct is, is de kans zeer groot dat daarmee ook de resultaten die gerapporteerd worden niet correct zijn. Daarnaast is een integer systeem van toegevoegde waarde bij het analyseren van de prestaties van de organisatie. Iets wat met de introductie van Business Intelligence vaak duidelijk wordt: verschillende dwarsdoorsnedes geven verschillende resultaten.

Bart Dix Managing Partner

Bart Dix

Managing Partner