unit CalcFieldsService_Impl; {----------------------------------------------------------------------------} { This unit was automatically generated by the RemObjects SDK after reading } { the RODL file associated with this project . } { } { This is where you are supposed to code the implementation of your objects. } {----------------------------------------------------------------------------} interface uses {vcl:} Classes, SysUtils, {RemObjects:} uROClientIntf, uROTypes, uROServer, uROServerIntf, uROSessions, {Ancestor Implementation:} DataAbstractService_Impl, {Used RODLs:} DataAbstract4_Intf, {Generated:} CalcFieldsLibrary_Intf, uDAScriptingProvider, uDABusinessProcessor, uDAInterfaces, uDAClasses, uDADataStreamer, uDABin2DataStreamer; const { Dataset names for Schema } ds_Customers = 'Customers'; type { TCalcFieldsService } TCalcFieldsService = class(TDataAbstractService, ICalcFieldsService) DataStreamer: TDABin2DataStreamer; Schema: TDASchema; DataDictionary: TDADataDictionary; bpCustomers: TDABusinessProcessor; procedure DataStreamerWriteFieldValue(const aField: TDAField; var Value: Variant); procedure DataAbstractServiceCreate(Sender: TObject); private fNextCalcValue: Integer; protected { ICalcFieldsService methods } function GetServiceVersion: string; end; implementation {$R *.dfm} uses {Generated:} CalcFieldsLibrary_Invk, CalcFields_ServerData; procedure Create_CalcFieldsService(out anInstance: IUnknown); begin anInstance := TCalcFieldsService.Create(nil); end; { CalcFieldsService } function TCalcFieldsService.GetServiceVersion: string; begin end; procedure TCalcFieldsService.DataStreamerWriteFieldValue( const aField: TDAField; var Value: Variant); begin if (aField.Name = 'ServerCalculated') then begin Value := fNextCalcValue; Inc(fNextCalcValue); end; end; procedure TCalcFieldsService.DataAbstractServiceCreate(Sender: TObject); begin inherited; fNextCalcValue := 100; end; initialization TROClassFactory.Create('CalcFieldsService', Create_CalcFieldsService, TCalcFieldsService_Invoker); finalization end.