Adapter UniDAC is not supported at design time

Hi, I'm trying to play with XData and Unidac that is the framework I use to connect to Firebird and I got that error when I want to generate the entities. Does XData really support IBDac/Unidac? Because it says yes in the documentation.

Thanks in advance,

You have to manually install UniDAC support at design-time. Here is how to do it:

I exactly did that yesterday and didn't work. I also tried the files for IBDac and didn't work neither.

What exactly does "didn't work" mean? Can you please provide more details?

Sure. First I always get the error that UniDac is not supported at design time. I tried to compile
Aurelius.Drivers.IBDac.zip (2.4 KB)
this file and I got the errors I showed in the image. I tried to modify this one
Aurelius.Drivers.Unidac.Design.pas (755 Bytes)
and I get an error in the constructor. Can you please provide a working files for IBDac? Of course I'm newby to Aurelius and is very hard for me to make it work.
Thanks in advance,

Which image?

Which error?
It looks like you posted in multiple topics. Have you checked the answer in the other topic you posted?

Please keep the posts in this topic now to avoid confusion.

It compiles but don't work. First the new IBDac doesn't show in the AdapterName property.
image
Second, in case I use unidac the error about design time continues


In SQL Dialect Firebird3 is not shown, I wrote it by hand.

Have you installed the package in Delphi IDE after compiling it?

Yes, sure.

But what about the UniDAC plugin? Have you also installed it?

Actually I don't use UniDAC, I use IBDac. But of course I made the changes in the code. What do you mean with plugin?

I mean by the UniDAC package. This topic mentions UniDAC. Have you installed the UniDAC package as described here: Adapter UniDAC is not supported at design time - #2 by wlandgraf

For IBDac, try this slightly modified file:

Aurelius.Drivers.IBDac.pas.zip (2.9 KB)

Same problem.


IBDac doesn't show in the list and using UniDAC, says it doesn't work at design time.

Wagner, please, it should be nice to make it to an end. It have been more that a week and something as simple as a database connection and we couldn't. Maybe we can do a team session and double check everything in case it could be possible.

The key here is this:

procedure RegisterDriverAdapter;
begin
  TAureliusAdapterRegister.Instance.RegisterDesignAdapterFactory('UniDac',
    function(Args: TAdapterFactoryArgs): IDBConnection
      begin
        Result := TUniDacConnectionAdapter.Create(
          Args.AdaptedConnection as TCustomDAConnection, Args.SqlDialect, Args.Owner);
      end
  );
end;

procedure UnregisterDriverAdapter;
begin
  TAureliusAdapterRegister.Instance.RegisterDesignAdapterFactory('UniDac', nil);
end;

initialization
  RegisterDriverAdapter;
finalization
  UnregisterDriverAdapter;
end.

If you have such unit in your Delphi package and you install such package in Delphi IDE, you shouldn't get a message indicating that UniDAC is not available at design-time. Note the call to RegisterDesignAdapterFactory.

UniDAC package works fine, other users are using it. Maybe you didn't add the unit Aurelius.Drivers.UniDac.Register to the package? Maybe the package is installed but it's not checked? You can try to remove everything, and reinstall the package again, and send me the exact package and unit files you are using.

This all is about UniDAC. IBDAC is a different story, it's not officially supported. We don't even have IBDAC here to test it. But once UniDAC package is working, in theory all you would need to do is to copy the UniDAC units and do a search and replace references to the UniDAC to IBDAC - it's just a matter of the name of the components, and it should work.

Done since day 1.

These are the files.
IBDacPackageXData.zip (2.9 KB)

Hello, that is not the full package source code.
Also, please let's do it partially. Please first install the UniDAC package and make sure it's supported at design-time. If not, please send us the exact and full source code you used to install the package (.dproj, .dpk and .pas files).

Wagner, I use IBDac that is Unidac for Firebird/Interbase. Of course it is supported at design time, I use it every day. What I sent you is the package I create based on the files you sent me. I'm sending you again the whole project. One question, If I buy your video course would I get a better support on this topic to know at last If I can accomplish this project with TMS or not? I feel like 2 weeks have passed and no solution at all.
IBDacPackageXData.zip (12.1 KB)

Please try to install the following package.

AureliusIBDAC.zip (7.1 KB)