This is my load procedure
s1 := '?$filter=SpelDatum eq ' + QuotedStr(DateToStr(WebDateTimePicker_LogIN.Date));
s1 := s1 + ' and Bana eq ' + QuotedStr(WebDBComboBox_Bana.Text);
s1 := s1 + '&$top=100'; // ensure more records fetched
WDS_InkaPlayer.QueryString := s1;
whatsNext := C_DoNothing;
WDS_InkaPlayer.Load;
Speldatum = 2025-04-21
Bana = Fågelbro 18
The problem is that when looking in WDS_Player.AfterOpen I only get a recordcount of 1 but it should be 8. It is only the last one that is loaded
One suggestion maybe using the OnSqlExecuting event to check exactly which SQL Aurelius is using to retrieve data, and execute the same SQL manually to confirm you are bringing the same results.
I see you are filtering by date fields, be careful as date fields might have time parts.
after testing I found out that it is the querystring that probably is the problem
my code
VAR
s1: STRING;
BEGIN
s1 := '?$filter=SpelDatum eq ' + QuotedStr(DateToStr(WebDateTimePicker_LogIN.Date));
s1 := s1 + ' and Bana eq ' + QuotedStr(WebDBComboBox_Bana.Text);
WDS_InkaPlayer.QueryString := s1;
WDS_InkaPlayer.load;
s1 looks like this before load
?$filter=SpelDatum eq '2025-04-24' and Bana eq 'Fågelbro 18'
my database
If I use the filter I get only 1 record(the last one)
If I take away the 'querystring' and just do 'Load' I get all 8 records
As You can see I have No time part in Speldatum