SalesOrderLinesIncremental geeft niet alle gegevens weer

Ik ben bezig met een tabel die mij een beeld moet geven hoeveel orderregels er deze week nog geleverd moeten gaan worden. Dit wil ik doen via de ExactOnlineREST.Incremental.SalesOrderLinesIncremental@eol.

Ik verwijder hierbij 3 kolommen:

  • salesordernr.,
  • deliverydate,
  • deliverystatus.

En ik filter op Deliverydate (iscurrentweek) en ik filter op deliverystatus <21 wat dus alle orderregels in moeten houden die nog niet volledig geleverd zijn.

Echter, komt er op maandag vervolgens een gegevens set uit van ongeveer 550 regels. Dit zou echter rond de 6000 regels moeten zijn. Op de een of andere manier komen dus niet alle regels naar boven.

Ik heb ook al geprobeerd te filteren op 1 specifieke dag in de week om zo de op te halen data te verminderen, maar ook toen gaf deze maar ongeveer 100-200 rijen in plaats van 1200.

We komen niet goed er uit wat de vraag is:

  • betwijfelt u of SalesOrderLinesIncremental wel consistent is met de inhoud van Exact Online?
  • wilt u weten hoe u de open SalesOrderLines kunt opvragen?

Voor het eerste is het advies om zoals beschreven in Schatten omvang Exact Online administratie of via de Get My Report-module “Omgevingsanalyse” de aantallen te controleren.

Als u een verkooporderregel kunt vinden die WEL in Exact Online zichtbaar is, maar niet in SalesOrderLinesIncremental, of vice versa, gelieve dan het nummer daarvan hier te vermelden en delegatie te verlenen zoals beschreven in Toegang via delegatie op Invantive Cloud voor consultants.

Voor het tweede is het advies om specifieker de vraag te herformuleren.

Beide, Ik denk wel te weten hoe ik de open salesorderline op moet halen alleen. Ik betwijfel of de SalesOrderLinesIncremental wel consistent is met de inhoud van Exact Online inderdaad. Want als dat wel zo zou zijn had ik de salesorderlines gewoon gezien. Nu is dat niet gelukt door de stappen die ik gevolgd heb.

Het is nog niet 100% zeker voor ons wat de vraag is, maar ik begrijp dat er zorgen zijn over de consistentie.

Dit is geen bekend probleem. In de laadhistorie zijn ook geen specifieke problemen te vinden anders dan frequente itgeneor229 (Exact Online API limiet bereikt).

Advies is om de twijfels voor consistentie te onderbouwen met een van de volgende acties, waarbij de eerste het meest gewenst is:

Ik heb nu de gevraagde persoon delegatie gegeven en in de opmerking het ordernummer gezet die ik niet uit de incremental krijg.

Het ordernummer kan niet gevonden worden. Gelieve dat hier toe te voegen.

Ordernummer 21039306.

Omvang

Het aantal orderregels volgens de schattingsmethodiek is ongeveer 1 miljoen. Het initieel laden zal tenminste 1.000 seconden duren en kan uitlopen tot 1 uur.

Niet-incrementele Tabellen

De volgende rechtstreekse query op de SQL Editor geeft aan dat het ordernummer bestaat:

select status
from   exactonlinerest..salesorders@eol
where  ordernumber = 21039306

Een query op SalesOrdersBulk geeft dezelfde uitkomst.

Volgens zowel SalesOrderLines en SalesOrderLinesBulk zitten er enkele tientallen regels in deze order.

Verwachting is dat er deze enkele tientallen regels plus 1 te vinden zijn in SalesOrderLinesIncremental.

Incrementele Tabel

Na initiele lading op SQL Editor van Invantive Cloud komen er inderdaad enkele tientallen regels + 1 voor de kopregel uit:

select *
from   salesorderlinesincremental@eol
where  ordernumber = 21039306

in de geavanceerde editor van powerbi is dit de query:

let
    Bron = OData.Feed("https://bridge-online.cloud/********-exact-online/odata4", null, [Implementation="2.0"]),
    #"ExactOnlineREST.Incremental.SalesOrderLinesIncremental@eol_table" = Bron{[Name="ExactOnlineREST.Incremental.SalesOrderLinesIncremental@eol",Signature="table"]}[Data],
    #"Andere kolommen verwijderd" = Table.SelectColumns(#"ExactOnlineREST.Incremental.SalesOrderLinesIncremental@eol_table",{"DeliveryDate", "DeliveryStatus", "OrderNumber"}),
    #"Rijen gefilterd" = Table.SelectRows(#"Andere kolommen verwijderd", each ([OrderNumber] = 21039306))
in
    #"Rijen gefilterd"

Toch kan ik met bovenstaande code dit ordernummer niet terugvinden.

Het probleem is niet reproduceerbaar gebleken met Invantive Cloud in de tabel SalesOrderLinesIncremental.

Op Bridge Online is de inhoud van de volgende tabellen geanalyseerd:

  • ExactOnlineDataDictionary.DataDictionary.IncrementalLoadStatuses@eol
  • ExactOnlineDataDictionary.DataDictionary.IncrementalLoadStatistics@eol
  • ExactOnlineDataDictionary.DataDictionary.IncrementalLoadEventLogEntries@eol

Hierin staan dezelfde aantallen en status als op Invantive Cloud (alhoewel er doorlopend iets bij komt).

Vervolgens is een controle op de inhoud van de data gemaakt. Na aanmelden via de Bridge Online driver op Invantive Query Tool

is de volgende query afgevuurd:

select *
from   [salesorderlinesincremental@eol]@InvantiveBridgeOnline
where  ordernumber = 21039306

met resultaat:

image

door de bijzonder omvangrijke download.

Daarom is gekeken wat de door Power BI afgevuurde gefilterde data-oproep is:

https://bridge-online.cloud/acme-trading-exact-online/odata4/ExactOnlineREST.Incremental.SalesOrderLinesIncremental@eol?$filter=OrderNumber%20eq%2021039306&$select=DeliveryDate%2CDeliveryStatus%2COrderNumber

Resultaat hiervan is een reeks van regels:

Het probleem met ontbrekende regels is niet reproduceerbaar gebleken.

De enige technische mogelijkheid zou nog zijn dat de gebruikersspecifieke cachebestanden een probleem bevatten. Dit kan niet geanalyseerd worden door het beveiligingsmodel.

Advies

Advies is om zelf deze cachebestanden opnieuw in te stellen. Dat kan door aan te melden op https://bridge-online.cloud en dan rechtsboven voor “Cache resettten” te kiezen:

image

Merk in bovenstaand plaatje op dat het de Bridge Online-server is (met de “B” in “PBA00”).

Daarna worden alle caches opnieuw opgebouwd. Gezien de omvang van de omgeving kan dit meerdere dagen duren door het beperkte aantal API-calls per dag.

Mocht probleem daarna nog optreden, dan is er mogelijk toch enige fine-tuning nodig aan de rapportages en/of datastroom. We raden aan om een kort consult in te zetten.

We komen er nog steeds niet helemaal uit en hebben interesse in een kort consult. Hoe gaat zoiets in zijn werk?

Een kort consult kan gepland worden via Calendly - Guido Leenders. Daar staat ook meer aanvullende informatie.

Deze vraag is automatisch gesloten na tenminste 2 weken inactiviteit nadat een mogelijk passend antwoord is gegeven. Het laatste gegeven antwoord is gemarkeerd als oplossing.

Gelieve een nieuwe vraag te stellen via een apart topic als het probleem opnieuw optreedt. Gelieve in de nieuwe vraag een link naar dit topic op te nemen door de URL er van in de tekst te plakken.