Ik loop ik regelmatig tegen inconsistenties aan in de (GU)IDs die Exact meegeeft tussen verschillende queries binnen dezelfde refresh. Wat concrete voorbeelden om een beeld te schetsen:
Duplicate IDs in mijn Item-dimensie
Mismatches tussen RelationGroupID op de Debtor tabel en RelationGroupID van de RelationGroup tabel
Beide werkten perfect tijdens de development en ook regelmatig op prod refreshes, maar dus niet altijd. Kan dit gebeuren omdat de afzonderlijke queries geen gegarandeerd consistent snapshot van de data opleveren?
Is er een manier om een consistente read te garanderen tussen queries, of is er een andere aanpak die jullie aanraden?
Dankjewel voor de reactie. Inmiddels heb ik achterhaald dat de twee voorbeelden verschillende oorzaken hadden, waarbij de tweede een interne oorzaak had.
Voor wat betreft de eerste sprak ik de endpoint logistics.items aan. Ik heb in het verleden deze data nooit bewerkt maar rechtstreeks in mijn datamodel geimporteerd en de GUID (“ID” in de tabel) als unique key gebruikt voor koppelingen met andere tabellen. Echter kreeg ik recent een foutmelding die aangaf dat de ID niet unique was, en dat er dus schijnbaar een doublering ergens zat.
Inmiddels heb ik in mijn transformaties opgenomen dat de ID distinct moet worden gemaakt voor ik importeer, dat lost in ieder geval het directe probleem op. Echter vraag ik mij wel af wat de oorzaak kan zijn geweest. Kan het zijn geweest dat gezien ik meerdere divisions importeer ik de zeer geringe kans heb meegemaakt dat twee GUIDs in twee divisions identiek zijn geweest?
Voor nu dus geen direct probleem meer, maar wel benieuwd naar de oorzaak.
Het is uitermate onwaarschijnlijk dat er een dubbele GUID bestaat.
Alhoewel het wel in de loop van heel veel jaren wel eens voorgekomen is dat er twee dezelfde GUID’s waren in een ander systeem, is het optreden hiervan op Exact Online niet waarschijnlijk. Exact Online zal naar verwachting binnen de gebruikte SQL Server-database een unieke sleutel hebben op het Id veld, waardoor dubbelingen technisch uitgesloten zijn.
Het is nog mogelijk doordat het gaat om hetzelfde artikel op een andere manier opgehaald (bijvoorbeeld Items en ItemsRead) en bovendien in de tijd verzet plus gewijzigd van code en omschrijving, maar dat treedt normaliter nooit op.
Er zijn geen plannen om verder te onderzoeken aangezien er geen gerede redenen zijn om aan te nemen dat er een sprake is van bug.