Page 1 of 1

How to use TZSequence with firebird 3.0

Posted: 31.05.2021, 10:46
by docent83
Good day! I have a problem trying to make refresh request with TZQuery and TUpdateSQL. I tried different variants but still getting errors (see attachment).
What I have done:
For simple table DEPS (DEP_ID - primary key (autoinc - generator + trigger), NAME varchar, DESCR varchar) generated requests for update sql.

RefreshSQL - select DEP_ID, NAME, DESCR from DEPS where DEP_ID = :OLD_DEP_ID

Connected TZSequence, sequence = GEN_DEP_ID
TZQuery.SequenceField = DEP_ID
DEP_ID.AutogenerateValue = arAutoInc.
What I'm doing wrong?

And other question. Is any way to use ZeosLib with primary key identity style, with no generator name.

Re: How to use TZSequence with firebird 3.0

Posted: 31.05.2021, 16:43
by marsupilami
Hello,
docent83 wrote: 31.05.2021, 10:46 Good day! I have a problem trying to make refresh request with TZQuery and TUpdateSQL.
Why do you use TZUpdateSQL with this simple table? It seems to be not necessary?
docent83 wrote: 31.05.2021, 10:46 I tried different variants but still getting errors (see attachment).
What I have done:
For simple table DEPS (DEP_ID - primary key (autoinc - generator + trigger), NAME varchar, DESCR varchar) generated requests for update sql.

RefreshSQL - select DEP_ID, NAME, DESCR from DEPS where DEP_ID = :OLD_DEP_ID

Connected TZSequence, sequence = GEN_DEP_ID
TZQuery.SequenceField = DEP_ID
DEP_ID.AutogenerateValue = arAutoInc.
What I'm doing wrong?
From your description it is hard to say. Usually you setup a TZSequence object and set the generator name there. Connect that TZSequence object to your Query and set the seqence field to DEP_ID. Finish. Please don't set AutogenerateValue because it simply isn't autogenerated if you use TZSequence.
Maybe it helps if you post a sample create script for your database and a sample application.
docent83 wrote: 31.05.2021, 10:46 And other question. Is any way to use ZeosLib with primary key identity style, with no generator name.
As far as I know it should be possible with Zeos 7.3. For Zeos 7.2 please read the release notes. If it isn't mentioned there, it most probably will not work.

Best regards,

Jan

Re: How to use TZSequence with firebird 3.0

Posted: 02.06.2021, 21:31
by docent83
First of all, thanks for reply.
Why do you use TZUpdateSQL with this simple table? It seems to be not necessary?
I'm using data modifying from DBGrid, which is using refresh to reload data for edited record.

All of this was my fault. I found an error - I made two equal databases, but one with generators, and second without (to try identities). I set proper database in design time and didn't switched it in runtime.

So... When you investigating some crime, the main thing is not to get out on yourself :)