Probleem: Het inladen van meerdere divisiecodes
Voor een project moet ik de ExactOnlineREST.Financial.Returns@eol ophalen voor 185 verschillende administraties (divisies). Ik wil een methode gebruiken om specifiek deze 185 administraties bij Invantive op te halen, zonder alle administraties in de database te laden. Het gewenste resultaat zou er als volgt uitzien, maar dan voor 185 administraties:
In de volgende sectie zal ik alle methoden laten zien die ik heb geprobeerd, maar mijn “Folded Query” geeft nog steeds hetzelfde resultaat wanneer ik probeer deze 185 administraties te filteren. Dit is het volgende resultaat:
Gebaseerd op verschillende artikelen en informatie die ik online heb gevonden, heb ik de volgende vier methoden ontwikkeld;
Methode 1: Filteren op divisienummer
De eerste methode is een eenvoudige rijfilter op basis van divisiecodes, maar dan voor 185 verschillende divisies.
Methode 2: Filteren op meerdere divisies met de List.Contains-functie
Bij de volgende methode heb ik een lijst gemaakt van alle 185 divisiecodes en vervolgens de List.Contains-functie gebruikt om mijn tabel te filteren op de items in de lijst.
Methode 3: Vergelijkbare filter, maar dan op Shortname in plaats van Divisie
Voor deze methode heb ik methode 1 en 2 gereproduceerd, maar met een andere unieke kolom om op te filteren, namelijk Shortname.
Methode 4: Inner Join in plaats van een lijst of normale filterfunctie
In plaats van de vorige methoden heb ik nu een Excel-bestand ingeladen met alle gewenste divisiecodes en deze samengevoegd (inner join) met de ExactOnlineREST.Financial.Returns@eol.
Bij elke methode leidde dit tot een “Select *”-instructie in Invantive Cloud, zonder enig WHERE-statement om een filter toe te passen. Hierdoor werden alle duizenden divisies opgehaald in Invantive Cloud, en niet alleen de 185 die ik nodig heb. Heeft iemand meer informatie hierover en kan mogelijk assistentie bieden?
Artikel: Improved Very Large Company Volume Performance on Exact Online