AdvKanbanBoardDatabaseAdapter Access Violation at runtime but not in IDE

I have successfully compiled the KanBan demo and created a simple test App using FireDAC and an Interbase table without issues.

I have tried to connect to our ElevateDB database using a similar structure table. All works at design time and I can see the KanBanBoard populate with the data but at runtime and I leave the table and DatabaseAdaptor active = false at designtime.

At runtime where I have the following code I get an Access Violation when I set the AdvKanbanBoardDatabaseAdapter1.Active := true;

edbtable1.Active := true;
AdvKanbanBoardDatabaseAdapter1.Active := true;

Hi,

Does this occur with only ElevateDB or also with other dataset types?

It appears to be with ElevateDB as I got the demo and a connection with FireDAC working at both design and runtime without error

We currently don't have access to ElevateDB so it would be good to provide more details about the access violation. Does this error happen on a TDBAdvGrid or a TDBGrid?

The dataset displays correctly in a both grid, but the access violation occurs on AdvKanbanBoardDatabaseAdapter1.Active := true;

There is no grid on the form normally, only an edbTable, DataSource, AdvKanBanBoard and AdvKanbanBoardDatabaseAdapter

Can you track on which line the access violation occurs?

AdvKanbanBoardDatabaseAdapter1.Active := true;

Yes, what I mean is, if you debug inside TAdvKanbanBoardDatabaseAdapter, at which point does the exception occur?

procedure TAdvKanbanBoardAdapter.SetActive(const Value: boolean);
begin
if (Value <> FActive) then <----- AV occurs here
begin
FActive := Value;
LoadItems;
end;
end;

This means that the Adapter itself is nil or not assigned. Can you provide a sample that demonstrates the issue?

I have the KanBanBoard and KanBanDatabase adaptor components on the form and all was working at design time, at runtime I have

edbtable1.Active := true;
AdvKanbanBoardDatabaseAdapter1.Active := true;

I have just tried to check again at design time but the database adaptor although present in the form definitions is not visible on the form for me to test again. I previously noticed this same symptoms and recreated the form which simply has the AdvKanbanBoard1, AdvKanbanBoardDatabaseAdapter1, DataSource and EDBTable1

If I try and add the AdvKanbanBoardDatabaseAdapter1 to the same form I get an Access Violation in TMSVCLUIPackPkgExDX13.bpl, closing and reloading the form produces the same results, i'm on the latest version of the UI Pack via subscription manager and Delphi 10.4.2

We'll further investigate this here as soon as possible.

Hi, we have investigated this here and couldn't reproduce the issue with another dataset. So I assume that this is related to ElevateDB or at least something related to another type of dataset which requires a specific kind of flow. As we don't have a test application we cannot predict what will happen in ElevateDB. I suggest to programmatically set all properties required to activate the dataset and adapter in the constructor of the form, or from a button click.

Hi, thanks for the update, I have removed the AdvKanBanDatabaseAdaptor from the form and as you suggested implemented only at runtime and this appears to work correctly.

Many thanks

Thanks for the feedback! We will keep a close eye to other similar reports and see if we can fix it when used at designtime.