unit srvUsuarios_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. } {----------------------------------------------------------------------------} {$I Remobjects.inc} interface uses {vcl:} Classes, SysUtils, {RemObjects:} uROXMLIntf, uROClientIntf, uROTypes, uROServer, uROServerIntf, uROSessions, {Required:} uRORemoteDataModule, {Ancestor Implementation:} DataAbstractService_Impl, {Used RODLs:} DataAbstract4_Intf, {Generated:} FactuGES_Intf, uDADataStreamer, uDABin2DataStreamer, uDAClasses; type { TsrvUsuarios } TsrvUsuarios = class(TDataAbstractService, IsrvUsuarios) Diagrams: TDADiagrams; Bin2DataStreamer: TDABin2DataStreamer; schUsuarios: TDASchema; DataDictionary: TDADataDictionary; procedure DataAbstractServiceBeforeAcquireConnection(aSender: TObject; var aConnectionName: string); procedure DataAbstractServiceCreate(Sender: TObject); protected procedure DarIDTiendaVendedorUsuario(const ID_USUARIO: Integer; var AIdTienda: Integer; var ATienda: String); end; implementation {$R *.dfm} uses {Generated:} FactuGES_Invk, uROClasses, uDAInterfaces, uDataModuleServer; const CTE_ID_TODAS = 0; CTE_TODAS = 'Todas'; procedure Create_srvUsuarios(out anInstance : IUnknown); begin anInstance := TsrvUsuarios.Create(nil); end; { srvUsuarios } procedure TsrvUsuarios.DarIDTiendaVendedorUsuario(const ID_USUARIO: Integer; var AIdTienda: Integer; var ATienda: String); var AConn : IDAConnection; dsData: IDADataset; begin AConn := dmServer.ConnectionManager.NewConnection(dmServer.ConnectionManager.GetDefaultConnectionName); try try dsData := schUsuarios.NewDataset(AConn, 'darTiendaVendedorUsuario', ['ID_USUARIO'], [ID_USUARIO]); dsData.Active := True; case dsData.RecordCount of 0: begin AIdTienda := CTE_ID_TODAS; ATienda := CTE_TODAS; end; 1: begin AIdTienda := dsData.FieldByName('ID_TIENDA').AsInteger; ATienda := dsData.FieldByName('TIENDA').AsString; end else RaiseError('Error al buscar tienda por defecto para el usuario'); end; AConn.CommitTransaction; except RaiseError('Error al buscar ejercicio activo de la empresa'); AConn.RollbackTransaction; end; finally dsData := NIL; end; end; procedure TsrvUsuarios.DataAbstractServiceBeforeAcquireConnection( aSender: TObject; var aConnectionName: string); begin ConnectionName := dmServer.ConnectionName; end; procedure TsrvUsuarios.DataAbstractServiceCreate(Sender: TObject); begin SessionManager := dmServer.SessionManager; end; initialization TROClassFactory.Create('srvUsuarios', Create_srvUsuarios, TsrvUsuarios_Invoker); finalization end.