Please Help me! Examples doesn t works

Hi!
i never used Data Abstract so i’ m m learning it. I have many difficults because Examples doesn t works and all examples are only for advanced users.

Examples give problem about decimal. Please check screenshot.

I have a simple server and open 2 clients. when i change record and Applychange, it is not update in second client…Why? This is my testcase.

Br,Alessandro

VCLApplication6.rar (120.4 KB)

Hello

I’ll log an issue to review this sample. Could you please describe in steps what you did to get this error?

To start from the ground up please do the following:

Read this article: https://docs.dataabstract.com/Introduction/WhatIsDataAbstract/

Go thru this tutorial: https://docs.dataabstract.com/Delphi/Tutorials/TodoTutorial/
Ask any questions you’ll have while running this tutorial.

Hope that helps

Thanks, logged as bugs://84003

Hi!

I open Example and run it.That s all…

In Italy we have ‘,’ like decimal character but in other countries decimal character is ‘.’

Can you answer some questions?

1)Can i use Tvirtualtable(mydac) or any other memory table for remote database or i must to use absolutedb,mysq,mssql,nexusdb,etc databases?

  1. How can i update all clients database from server? or i must to use refresh from client side?
    3)I need to have extra field in client database, it is possible? For example in remote Database i have NAME,SURNAME,AGE fields in client database can i have extra field for example NAME,SURNAME,AGE,TELEPHONE NUMBER but when i use refresh it update only NAME,SURNAME and AGE?

Br,Alessandro

Hi,

your sample doesn’t use decimal. can you attach correct example, pls?

you can implement event by yourself that will inform all clients that record of table or table was changed.
Data Abstract doesn’t inform clients about such changing yet

you can use our TDAMemDataTable for such purpose. setting table.RemoteFetchEnabled to false allows to store data in memory w/o using remote sources.

simple case - use Refresh method. it just closes and reopens table.
complicated mode - use RefreshFromServer method. it allows to update table according to specified DynamicWhere. Data rows will be updated w/o closing table.

imagine that your table has UpdateTimeStamp field that is filled by trigger so you can specify DynamicWhere that will contain expression like UpdateTimeStamp > :lastupdate. so it will return all rows that were changed after specified date.

yes, it is possible. you need to declare TELEPHONE NUMBER as calculated on client-side

bugs://84003 got closed with status testcaseerr.

About point 1

I need in remoteServer to use TDaMemTable for example table1 and clients connects with table1. With DataAbstract i must to use mysql,mssql or other sql database or i can use only memtable? In ConnectionManager i can use only third party sql server but i can t use memory table. I try to use memorytable in server but it is not possible. I send test case but there is no option to use local memorytable.

Br,Alessandro

VCLApplication10.rar (81.8 KB)

Hi,

  • drop TDAMemDataTable (table1) to your server datamodule.
  • specify table1.RemoteFetchEnabled to false.
  • open this table in the OnCreate event of server datamodule.
  • drop another TDAMemDataTable (table2) to the DataAbstract service (DataService)
  • set as table2.CloneSource to table1
  • register table2 in DataService.ExportedDataTables.

you can also review this DA4 example - Exported DataTables.zip (42.2 KB) .
this is pretty old so it can require some modification to DA10.

ok i followed step by step your info but i don t understand how
Register table2 in Dataservice.Dataservice

Can you explain?

hi,

typo. it should be … in DataService.ExportedDataTables:

Untitled

ok i followed your step but doesn t works…schema is not assigned can you help me?

Br,Alessandro

VCLApplication10.rar (122.6 KB)

pls review updated sample: testcase.zip (112.9 KB)

Thank you! Your example works!

Hi!

It possible to have Variant field in memtable? I have variant variable to store inside a field.

Br,Alessandro

Hi,
variant type isn’t supported, but you can store your variant as blob.
uROBinaryHelpers unit has some methods that allow to convert Variant to Binary (i.e. stream) or TBytes and vice versa