PgQuery Type mismatch for field.. expecting: WideMemo actual: Float.

Discussion of open issues, suggestions and bugs regarding PgDAC (PostgreSQL Data Access Components) for Delphi, C++Builder, Lazarus (and FPC)
Post Reply
dmytrodubrovin
Posts: 10
Joined: Wed 17 Jul 2019 06:26

PgQuery Type mismatch for field.. expecting: WideMemo actual: Float.

Post by dmytrodubrovin » Fri 17 Sep 2021 10:00

PgQuery3: Type mismatch for field 'mm', expecting: WideMemo actual: Float.

I paid for your components! I paid for the support! How can I get rid of this error? It arises all the time! We have to remove the component from the form. Remove all events and methods. Then add the component and restore all events and methods. And after a simple change to the request, this error occurs again!

pgdac_6.4.4
Postgresql 13
Delphi 10.3

dmytrodubrovin
Posts: 10
Joined: Wed 17 Jul 2019 06:26

Re: PgQuery Type mismatch for field.. expecting: WideMemo actual: Float.

Post by dmytrodubrovin » Fri 17 Sep 2021 10:21

Версия 7.0.1 - ошибка не исправлена!!!!!!
Прошу помощи!!!! У меня остановлен проект, разработчики отказываются использовать ваши компоненты!

evgeniym
Devart Team
Posts: 103
Joined: Thu 13 May 2021 07:08

Re: PgQuery Type mismatch for field.. expecting: WideMemo actual: Float.

Post by evgeniym » Fri 17 Sep 2021 16:10

Hello Dmitry!
Thank you for your request.
Please note that this error does not apply to our components, it is a Delphi standard error. It can occur when persistent fields are created for the dataset and the type of the column in the request does not match the type of the persistent field in the dataset.
Please explain what is meant by "And after a simple change to the request, this error occurs again!"?
If the SQL query is changed in the dataset for which the persistent fields are created, then you can get such an error, because there will be a mismatch between the persistence field and the columns of the new request.
In this case, you do not have to completely delete the component from the form, you just need to delete the persistence fields and recreate them.
You can read more about working with persistent fields by this link: https://docwiki.embarcadero.com/RADStud ... ent_Fields

dmytrodubrovin
Posts: 10
Joined: Wed 17 Jul 2019 06:26

Re: PgQuery Type mismatch for field.. expecting: WideMemo actual: Float.

Post by dmytrodubrovin » Sat 18 Sep 2021 09:26

This error can occur even if the request has not changed. And it helps to restore only the complete removal of the component from the form and then adding it to the form. In this case, you have to delete and restore all the written procedures.
This error appeared after installing version pgdac_6.4.4. With older versions of your components, this error did not occur. Delphi's version has not changed. There is no such error in other components from Delphi for working with databases. There is no way in your component to delete and add fields to the list of persistent fields at runtime. There is no documentation for this function.
How can this problem be solved. The developers refused to use your components for development until the bugs were fixed. My business has stopped!

evgeniym
Devart Team
Posts: 103
Joined: Thu 13 May 2021 07:08

Re: PgQuery Type mismatch for field.. expecting: WideMemo actual: Float.

Post by evgeniym » Mon 20 Sep 2021 10:39

Hello, Dmitry
Unfortunately, we were unable to reproduce the behavior you described.
Please, provide steps for getting the incorrect behavior and also send a sample of application demonstrating the incorrect behavior, along with the DDL scripts to create and populate the test database.
Please send them through the form on our website: https://devart.com/company/contactform.html
The sooner an example is provided, the sooner we can start solving the problem.
We also inform you that working with Persistent Fields in PgDAC does not differ from working with Persistent Fields in standard components. For example, to add Persistent Filed to Run Time, you need to run the code:

Code: Select all

PgQuery.Close;
with TStringField.Create(PgQuery) do
begin
LifeCycle := lcPersistent;
FieldName := 'test';
Size := 50;
Calculated := True;
DataSet := PgQuery;
end;
PgQuery.OnCalcFields := MyCalcProcedure;
PgQuery.Open;

kennedystewart
Posts: 1
Joined: Wed 20 Jul 2022 09:46

Re: PgQuery Type mismatch for field.. expecting: WideMemo actual: Float.

Post by kennedystewart » Sun 24 Jul 2022 15:59

Thanks for the article that provided a lot of value for us to learn drift boss

evgeniym
Devart Team
Posts: 103
Joined: Thu 13 May 2021 07:08

Re: PgQuery Type mismatch for field.. expecting: WideMemo actual: Float.

Post by evgeniym » Wed 27 Jul 2022 11:38

Hi Stewart,
Thanks for using our product!
We are always happy to help.

evgeniym
Devart Team
Posts: 103
Joined: Thu 13 May 2021 07:08

Re: PgQuery Type mismatch for field.. expecting: WideMemo actual: Float.

Post by evgeniym » Wed 17 Aug 2022 09:52

Thanks for using our product!
Please let us know is any kind assistance from our is required. We always happy to help!

lorde
Posts: 2
Joined: Mon 22 Aug 2022 04:58

Re: PgQuery Type mismatch for field.. expecting: WideMemo actual: Float.

Post by lorde » Mon 22 Aug 2022 05:09

I have the same problem, have you fixed it, please let me know

posterdle

evgeniym
Devart Team
Posts: 103
Joined: Thu 13 May 2021 07:08

Re: PgQuery Type mismatch for field.. expecting: WideMemo actual: Float.

Post by evgeniym » Tue 23 Aug 2022 05:21

Hey,
Thanks for your request.

Please be informed, that unfortunately we were unable to reproduce the described behavior and did not receive a test case.

Kindly specify the exact steps to get the misbehavior and submit a sample application that demonstrates the misbehavior along with DDL scripts to create and fill-in database objects.

Submit them via the form on our website: https://devart.com/company/contactform.html

Kindly note that sooner you will provide us with an example, the sooner we can start to investigate your issue.

Post Reply