Dataset Protocol

Real-time dataset synchronization across multiple connected clients. Broadcast inserts, updates, and deletes automatically as they happen.

Real-Time Data Sync

Keep datasets synchronized across all connected clients without manual polling or refresh.

Automatic Dataset Broadcasting

The Dataset protocol extends the SGC protocol to broadcast dataset modifications in real time. When a record is inserted, updated, or deleted on one client, the change is automatically propagated to all other connected clients. This is ideal for collaborative applications where multiple users view and edit the same data — point-of-sale systems, inventory management, shared dashboards, and multi-user data entry forms.

  • Automatic broadcast of inserts, updates, and deletes
  • Works with any TDataSet descendant
  • Selective field synchronization
  • Built on the SGC protocol (JSON-RPC 2.0)
DATASET Client A Client B Client C sync

Delphi Dataset Sync Example

Synchronize a dataset across connected clients.

uses
  sgcWebSocket_Client, sgcWebSocket_Types,
  sgcWebSocket_Protocol_Dataset_Client;

var
  WSClient: TsgcWebSocketClient;
  DatasetProtocol: TsgcWSPClient_Dataset;

procedure TForm1.FormCreate(Sender: TObject);
begin
  WSClient := TsgcWebSocketClient.Create(nil);
  WSClient.Host := 'myserver.example.com';
  WSClient.Port := 443;

  DatasetProtocol := TsgcWSPClient_Dataset.Create(nil);
  DatasetProtocol.Client := WSClient;

  // Bind to a TDataSet component
  DatasetProtocol.Dataset := ClientDataSet1;

  WSClient.Active := True;
end;

// Changes to ClientDataSet1 are now automatically
// broadcast to all other connected clients

Documentation & Demos

Deep-link to the component reference, grab the ready-to-run demo project, and download the trial.

Ready to Synchronize Data in Real Time?

Download the free trial and keep datasets in sync across all connected clients.