
Initial Release
TX2IrisQuery is a Delphi component that exposes InterSystems IRIS data through a familiar
TDataSet interface. It allows you to run SQL queries, edit records, insert new objects,
delete objects, and call IRIS class methods — all through a REST API.
If you already use FireDAC datasets, you’ll feel right at home.
TFDMemTable).
TRESTClient and a namespace — the component handles the rest.
:ID or :Name are auto‑created and applied.
DoClassMethod('My.Class', 'Method', ['param1', 'param2'])
Simply add the component source to your Delphi project or package:
IRIS/src/X2IrisClient/X2IrisQuery.pas
Register the component in your design‑time package if desired.
RegisterDefaultRestClientAndNamespace(RestClient1, 'USER');
TX2IrisQuery on a formIrisQuery.RestClient := RestClient1;
IrisQuery.Namespace := 'USER';
IrisQuery.SQL.Text :=
'SELECT ID, Name, Age, %ClassName As __class FROM Sample.Person';
IrisQuery.Active := True;
Now you can bind it to UI controls, navigate, edit, insert, and delete like any dataset.
ID/post endpointvar result := IrisQuery.DoClassMethod(
'MyApp.Utils',
'ComputeValue',
['123', 'ABC']
);
Returns raw JSON from the server.
SQL parameters are auto‑detected:
SELECT * FROM Sample.Person WHERE Name = :Name
Then set:
IrisQuery.Parameters.ParamByName('Name').AsString := 'John';
var list := TStringList.Create;
IrisQuery.GetNamespaces(list, 'USER');
ShowMessage(list.Text);
%ClassName As __class
/query/post/delete/procedureMIT.
Pull requests and suggestions are welcome. If you build additional IRIS components, feel free to extend this repository.
Dmitry Konnov
RocketCitySoft LLC
https://www.rocketcitysoft.com