Icon View Thread

The following is the text of the current message along with any replies.
Messages 1 to 5 of 5 total
Thread Messaging notifications support
Sat, Sep 6 2014 2:37 PMPermanent Link

Mario Enríquez

Open Consult

Hi everybody,

The time has come and I have a real need for messaging notifications from EDB in order to allow my application to react to database events (A record inserted or update in a particular table...). I currently I'm using EDB 2.12 b2, as I've not had a real motivation to upgrade to a more recent build, even though I have an active subscription.

I just went to look at the roadmap and messaging support was expected on 2.14 and now that we are on 2.17 it is my understanding that is not yet available. So, here's my questions...

1.Since 2.17 was release almost 4 months ago, I presume that 2.18 should hopefully be near. I wonder if we could expect message support on this release?

2.If 2.18 is not near (more that a month away) or messaging support will not be part of it, is there a workaround to achieve something similar besides having to pool every 5 seconds the database for changes?

Your advice is greatly appreciated.

Regards,
Mario
Sat, Sep 6 2014 4:37 PMPermanent Link

Raul

Team Elevate Team Elevate

On 9/6/2014 2:37 PM, Mario Enríquez wrote:
>
> The time has come and I have a real need for messaging notifications from EDB in order to allow my application to react to database events (A record inserted or update in a particular table...). I currently I'm using EDB 2.12 b2, as I've not had a real motivation to upgrade to a more recent build, even though I have an active subscription.

AFAIK it's still in the works. Tim had finished his  analysis and said
he is working on it but as i recall there were some fairly fundamental
changes he needed to make at the server so it ended up being more
complicated


> 1.Since 2.17 was release almost 4 months ago, I presume that 2.18 should hopefully be near. I wonder if we could expect message support on this release?

Only Tim can answer that and i would suggest you email support direct
for an official answer.

I personally would not rely on getting it in the next 30-60 days simply
from risk management aspect (note though that i don't have any more info
than you so I might be totally wrong here).

You can either poll or write your own comms layer - if all your clients
are on the LAN then a simple UDP multicast might be enough for this (and
you could do it from client side).

For non-LAN situations or cases where multicast is blocked a separate
TCP server (running alongside EDB Server) and a separate connection from
client(s) to it would be all you need.  We did something like this and
the server and comms are very simple - it's little more than a message
queue, logic to parse and send message to all connected clients and
connection management.

Raul
Sun, Sep 7 2014 3:18 AMPermanent Link

Roy Lambert

NLH Associates

Team Elevate Team Elevate

Mario


I think the majority of Tim's time is currently being taken up with getting EWB2.0 out of the door. Also my highly fallible memory seems to recall a comment about it coming with EDB3, probably for the reasons Raul is mentioning.

>2.If 2.18 is not near (more that a month away) or messaging support will not be part of it, is there a workaround to achieve something similar besides having to pool every 5 seconds the database for changes?

I use a background thread that is part of the client app and it checks at intervals for new emails or alarms and sends a Windows message back to the main thread to allow action to be taken.
It works well and I'm not sure what benefit I'd gain from inbuilt messaging unless the engine takes it on itself to automatically update any changed tables as and when they are changed and I'm not certain I'd want that.

Roy
Tue, Sep 9 2014 2:45 PMPermanent Link

Mario Enríquez

Open Consult

Thank you everybody for you advice, I'll take a look at implement our custom messaging layer…

Let hope we starting seeing some improvements on EDB again… Frown

Regards,
Mario
Wed, Sep 10 2014 12:21 PMPermanent Link

Lee

ProfitSource

Mario Enríquez wrote:

Hi everybody,

The time has come and I have a real need for messaging notifications from EDB in order to allow my application to react to database events (A record inserted or update in a particular table...). I currently I'm using EDB 2.12 b2, as I've not had a real motivation to upgrade to a more recent build, even though I have an active subscription.

I just went to look at the roadmap and messaging support was expected on 2.14 and now that we are on 2.17 it is my understanding that is not yet available. So, here's my questions...

1.Since 2.17 was release almost 4 months ago, I presume that 2.18 should hopefully be near. I wonder if we could expect message support on this release?

2.If 2.18 is not near (more that a month away) or messaging support will not be part of it, is there a workaround to achieve something similar besides having to pool every 5 seconds the database for changes?

Your advice is greatly appreciated.

Regards,
Mario

Mario;

This is easy to implement using Indy Components.
Place a TidUDPClient and a TidUDPServer component on a form.
In your application call the following when a save or delete is done:

procedure Tfmnetwork.SendmessageToClient;
begin
 UDPServer.Active := false;
 try
   UDPClient.Broadcast('Do it',8090);
 finally
   UDPServer.Active := true;
 end;
end;//SendMessageToClient

On the TidUDPServer.OnUDPRead event place the message that you want to display:

procedure TfmNetwork.UDPServerUDPRead(AThread: TIdUDPListenerThread;
 const AData: TIdBytes; ABinding: TIdSocketHandle);
begin
 ShowMessage('Change made');
end;

In my applications saves and deletes for the entire application are done in one spot. However, I realize this may not be the case for you. Therefore, having it built into ElevateDB would be beneficial.

Lee
Image