At 08:17 AM 6/01/2009, you wrote:
>======================================================================
>My classic program looks like this:
>
>
>
> *DBConectionModul*
> |
> (TIB_Connection, TIB_Transaction)
>
>
> *MainForm*
>
>
>
> *CustomerForm* *CompanyForm* *Bank*
> | | |
> TIBquery+dataset TIBquery+dataset TIBquery+dataset
>
>
> *AccountForm*
> |
> TIBquery+dataset(master)
> |
> TIBquery+dataset(detail)
>
>
>I have only one TIB_Transaction...you sugest to put Transaction
>component on each form in program?
I don't like this sort of structure at all, where the GUI layer is jumbled
together with the data access layer. I put all of the data access stuff,
including all custom methods, in a Datamodule.
>Wich Isolation property you prefer?
tiConcurrency, usually. tiCommitted occasionally, when I need instant feedback
on what other users have done.
>Which TIB_Transaction common function I should use and when?
Not sure what you want here. I recommend always using explicit transaction
control: StartTransaction to start a task, Commit to complete it or Rollback to
abandon it. Design blocks of work according to this model.
>Which diferent is between Remote Desktop multiuser and remote database
>multiuser enviroment?
That question is not relevant to IBO. You write your IBO client applications to
access a database server on a network host server across a network transport
(protocol). Each instance of the application makes its own connections to
databases. For 2-tier on Windows, your choices are TCP/IP (IBO protocol
cpTC_PIP) or WNET (IBO: cpNetBEUI).
In a 3-tier model, your database access application would run on the same (or
another) host in the network. If it is running on the same host machine as the
DB server, and the Operating System allows it, you may also have the option of
"Windows local" protocol (IBO: cpLocal). [The availability of cpLocal also
depends on the Firebird version and server model.]
Client tier users would connect to that application from some desktop client
application that does not connect to the database at all, i.e., a non-data-aware
application. A web browser is one example; a RDT client application is
another....you don't use data access components (such as IBO) for developing
this layer. IBO has components for developing the host layer for web apps.
Helen