Het gemakkelijkste is om te filteren via de gebruiksinterface van Power BI. Filters die in de tabel worden vastgelegd worden over het algemeen doorgegeven aan Bridge Online dankzij query folding.
Met de hand is het ook mogelijk door een filter toe te voegen na Source. De syntax zou ongeveer zo moeten zijn:
#"Filtered Rows" = Table.SelectRows(#“Simplicate Hours Hours@spe_table”, each ([updated_at] > "2024-01-01"))
Merk op dat Simplicate als standaard hanteert dat datum/tijdvelden tekst zijn in plaats van een van de door Power BI ondersteunde datumformaten. Gelukkig is het formaat wel “most significant digit first” zoals in ISO 2014.
Advies is om zorgvuldig de bovengetoonde stappen te volgen om zo het filter door te geven.
Binnen de SQL-editor is te zien dat het doorgeven werkt. Eerst een poging zonder er rekening mee te houden dat op Simplicate datum/tijdvelden tekst zijn:
select count(*)
from organizations
where updated_at > trunc(sysdateutc)
En volgens:
select url
from sessionios@datadictionary
where data_container_alias = 'spe'
De gebruikte datum is nonsens, aangezien er een implicatie conversie plaatsvonden naar een datum/tijdformaat waar Simplicate niks mee kan. Op zich is de logica correct, maar het levert niet de gewenste uitkomst.
Vervolgens een voorbeeld dat er rekening mee houdt dat updated_at een tekst is:
select count(*)
from organizations
where updated_at > to_char(trunc(sysdateutc), 'YYYY-MM-DD HH24:MI:SS')
Deze gebruikt de URL volgens de query op SessionIOs@DataDictionary:
Controleer bij het doorgeven vanuit Power BI dat het filter op updated_at aan beide zijden een tekst heeft. Op Details van Invantive Bridge Online Monitoring is dit het doorgeven (“query folding”) te zien in het gegenereerde SQL-statement.
Wat moet ik waar toevoegen in de query volgens het plaatje waarbij query folding werkt voor [updated_at] zodat alleen groter of gelijk aan 2024-05-01 00:00:00 wordt opgehaald?
Wat moet ik precies op welke regel in Power Query invullen?
Ik heb het textfilter zo snel als mogelijk toegevoegd in de query.
Maar zoals in de afbeelding te zien is worden nog steeds alle records ingelezen: 1251 stuks, terwijl er met het textfilter op [created] slechts 29 ingelezen zouden moeten worden.
Advies is om een filterstap toe te voegen in Power BI waarbij updated_at ingesteld is als tekst datatype en de filterwaarde zelf ook een tekst is. Het doorkomen van het filter dankzij query folding kunt u controleren via Invantive Bridge Online Monitoring.
Mocht u ondersteuning nodig hebben bij het gebruik hiervan, dan raden we de inzet van een onze van partnerconsultants aan of een kort consult.