Subject | RE: [firebird-support] Is there a way... |
---|---|
Author | Alan McDonald |
Post date | 2004-03-18T00:01:57Z |
> I need firebird to notify each client when a certain "event" (forYou can use events (and it's a good word cause that's what they are called).
> lack of a better term) occurs on a table. Basically, here is what I
> am aiming for and I am very new to FB so I need to know if it can be
> done.
>
> 10 computer network. Each computer does a query which returns a set
> of records matching a specific date that they are looking at. When
> one computer (client) has its set of data (say 30 records) it
> generates a string grid to represent that data. That screen may just
> sit there for hours. If one of the other clients inserts a new record
> into the table that would match the query set, I need FB (or the
> other client) to be able to notify my computer that a new record has
> been inserted. I need the same thing to occur if a record was deleted
> or modified that is in my query set.
>
> There could be dozens of computers "looking" at the same set of data
> in their queries and if one computer deletes, modifies, or inserts
> something that would affect that query set, I need all the affected
> computers to be able to either be notified of the specific change
> (insert, modification, or deletion) or at the very least be told to
> refresh the query.
>
> Can it be done? If so, what do we do to accomplish it?
>
> Thanks
>
> Trevor
You create and event on the server in the insert trigger and you make
clients register (to listen to an event). When the event fires, the server
let's all registered clients know that the even has occured.
Now, be aware that events require additional ports (other than the default
3050).
Also be aware that events introduce a lot more network traffic if you go
overboard with this methodology.
Also be aware that you say your query stays open for hours - often it's a
good idea to do an autosave feature on a timer which will server a similar
purpose in that the query will be refreshed but more importantly, the
transaction which atrted this view on teh data is moved along nicely.
There plenty of info at www.ibphoenix.com - search for events.
Alan