Copied remotely

git-svn-id: https://192.168.0.254/svn/Proyectos.Tecsitel_FactuGES2/trunk@59 0c75b7a4-871f-7646-8a2f-f78d34cc349f
This commit is contained in:
roberto 2007-10-22 09:51:12 +00:00
commit b100489361
54 changed files with 2105 additions and 3258 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -11,12 +11,12 @@ package ApplicationBase;
{$LOCALSYMBOLS ON}
{$LONGSTRINGS ON}
{$OPENSTRINGS ON}
{$OPTIMIZATION ON}
{$OPTIMIZATION OFF}
{$OVERFLOWCHECKS OFF}
{$RANGECHECKS OFF}
{$REFERENCEINFO ON}
{$SAFEDIVIDE OFF}
{$STACKFRAMES OFF}
{$STACKFRAMES ON}
{$TYPEDADDRESS OFF}
{$VARSTRINGCHECKS ON}
{$WRITEABLECONST OFF}
@ -31,6 +31,7 @@ requires
dbrtl,
Base,
GUIBase,
PluginSDK_D10R,
pckUCDataConnector,
pckUserControl_RT,
JvJansD11R,
@ -55,7 +56,7 @@ requires
contains
uFactuGES_App in 'uFactuGES_App.pas',
uIDataModuleUsuarios in 'Usuarios\Model\Data\uIDataModuleUsuarios.pas',
uDataModuleUsuarios in 'Usuarios\Data\uDataModuleUsuarios.pas',
uDataModuleUsuarios in 'Usuarios\Data\uDataModuleUsuarios.pas' {DataModuleUsuariosObj},
uUCROConn in 'Usuarios\Data\uUCROConn.pas',
uUsuariosController in 'Usuarios\Controller\uUsuariosController.pas',
uBizEmpresasDatosBancarios in 'Empresas\Model\uBizEmpresasDatosBancarios.pas',
@ -63,7 +64,7 @@ contains
schEmpresasServer_Intf in 'Empresas\Model\schEmpresasServer_Intf.pas',
uBizEmpresas in 'Empresas\Model\uBizEmpresas.pas',
uIDataModuleEmpresas in 'Empresas\Model\Data\uIDataModuleEmpresas.pas',
uDataModuleEmpresas in 'Empresas\Data\uDataModuleEmpresas.pas',
uDataModuleEmpresas in 'Empresas\Data\uDataModuleEmpresas.pas' {DataModuleEmpresasObj},
uEmpresasController in 'Empresas\Controller\uEmpresasController.pas',
uDatosBancariosEmpresaController in 'Empresas\Controller\uDatosBancariosEmpresaController.pas',
uIEditorEmpresas in 'Empresas\Controller\View\uIEditorEmpresas.pas',

View File

@ -31,11 +31,13 @@
<DCC_HppOutput>.\</DCC_HppOutput>
<DCC_BplOutput>..\..\Output\Debug\Cliente</DCC_BplOutput>
<DCC_DcpOutput>..\Lib</DCC_DcpOutput>
<DCC_UnitSearchPath>..\Lib</DCC_UnitSearchPath>
<DCC_ResourcePath>..\Lib</DCC_ResourcePath>
<DCC_ObjPath>..\Lib</DCC_ObjPath>
<DCC_IncludePath>..\Lib</DCC_IncludePath>
<DCC_UnitSearchPath>$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10;T:\COMPON~1\jcl\lib\d11\debug;$(BDSCOMMONDIR)\Dcp;..\Lib</DCC_UnitSearchPath>
<DCC_ResourcePath>$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10;T:\COMPON~1\jcl\lib\d11\debug;$(BDSCOMMONDIR)\Dcp;..\Lib</DCC_ResourcePath>
<DCC_ObjPath>$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10;T:\COMPON~1\jcl\lib\d11\debug;$(BDSCOMMONDIR)\Dcp;..\Lib</DCC_ObjPath>
<DCC_IncludePath>$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10;T:\COMPON~1\jcl\lib\d11\debug;$(BDSCOMMONDIR)\Dcp;..\Lib</DCC_IncludePath>
<DCC_Define>DEBUG</DCC_Define>
<DCC_Optimize>False</DCC_Optimize>
<DCC_GenerateStackFrames>True</DCC_GenerateStackFrames>
</PropertyGroup>
<ProjectExtensions>
<Borland.Personality>Delphi.Personality</Borland.Personality>
@ -56,37 +58,40 @@
<DelphiCompile Include="ApplicationBase.dpk">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="..\Servidor\Base.dcp" />
<DCCReference Include="..\Servidor\cxDataD10.dcp" />
<DCCReference Include="..\Servidor\cxEditorsD10.dcp" />
<DCCReference Include="..\Servidor\cxLibraryD10.dcp" />
<DCCReference Include="..\Servidor\dbrtl.dcp" />
<DCCReference Include="..\Servidor\dxThemeD10.dcp" />
<DCCReference Include="..\Servidor\GUIBase.dcp" />
<DCCReference Include="..\Servidor\Jcl.dcp" />
<DCCReference Include="..\Servidor\JclVcl.dcp" />
<DCCReference Include="..\Servidor\JvCoreD11R.dcp" />
<DCCReference Include="..\Servidor\JvCtrlsD11R.dcp" />
<DCCReference Include="..\Servidor\JvJansD11R.dcp" />
<DCCReference Include="..\Servidor\JvMMD11R.dcp" />
<DCCReference Include="..\Servidor\JvStdCtrlsD11R.dcp" />
<DCCReference Include="..\Servidor\JvSystemD11R.dcp" />
<DCCReference Include="..\Servidor\pckUCDataConnector.dcp" />
<DCCReference Include="..\Servidor\pckUserControl_RT.dcp" />
<DCCReference Include="..\Servidor\PngComponentsD10.dcp" />
<DCCReference Include="..\Servidor\PNG_D10.dcp" />
<DCCReference Include="..\Servidor\rtl.dcp" />
<DCCReference Include="..\Servidor\vcl.dcp" />
<DCCReference Include="..\Servidor\vclactnband.dcp" />
<DCCReference Include="..\Servidor\vcldb.dcp" />
<DCCReference Include="..\Servidor\vcljpg.dcp" />
<DCCReference Include="..\Servidor\vclx.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\Base.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\cxDataD10.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\cxEditorsD10.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\cxLibraryD10.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\dbrtl.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\dxThemeD10.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\GUIBase.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\Jcl.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\JclVcl.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\JvCoreD11R.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\JvCtrlsD11R.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\JvJansD11R.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\JvMMD11R.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\JvStdCtrlsD11R.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\JvSystemD11R.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\pckUCDataConnector.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\pckUserControl_RT.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\PluginSDK_D10R.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\PngComponentsD10.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\PNG_D10.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\rtl.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\vcl.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\vclactnband.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\vcldb.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\vcljpg.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\vclx.dcp" />
<DCCReference Include="Empresas\Controller\uDatosBancariosEmpresaController.pas" />
<DCCReference Include="Empresas\Controller\uEmpresasController.pas" />
<DCCReference Include="Empresas\Controller\View\uIEditorDatosBancarioEmpresa.pas" />
<DCCReference Include="Empresas\Controller\View\uIEditorEmpresa.pas" />
<DCCReference Include="Empresas\Controller\View\uIEditorEmpresas.pas" />
<DCCReference Include="Empresas\Data\uDataModuleEmpresas.pas" />
<DCCReference Include="Empresas\Data\uDataModuleEmpresas.pas">
<Form>DataModuleEmpresasObj</Form>
</DCCReference>
<DCCReference Include="Empresas\Model\Data\uIDataModuleEmpresas.pas" />
<DCCReference Include="Empresas\Model\schEmpresasClient_Intf.pas" />
<DCCReference Include="Empresas\Model\schEmpresasServer_Intf.pas" />
@ -100,7 +105,9 @@
<DCCReference Include="uFactuGES_App.pas" />
<DCCReference Include="Usuarios\Controller\uUsuariosController.pas" />
<DCCReference Include="Usuarios\Controller\View\uIEditorLogin.pas" />
<DCCReference Include="Usuarios\Data\uDataModuleUsuarios.pas" />
<DCCReference Include="Usuarios\Data\uDataModuleUsuarios.pas">
<Form>DataModuleUsuariosObj</Form>
</DCCReference>
<DCCReference Include="Usuarios\Data\uUCROConn.pas" />
<DCCReference Include="Usuarios\Model\Data\uIDataModuleUsuarios.pas" />
<DCCReference Include="Usuarios\Model\schUsuariosClient_Intf.pas" />

View File

@ -32,7 +32,7 @@ uses
constructor TDatosBancariosEmpresaController.Create;
begin
inherited;
FDataModule := TDataModuleEmpresas.Create(Nil);
// FDataModule := TDataModuleEmpresas.Create(Nil);
end;
destructor TDatosBancariosEmpresaController.Destroy;

View File

@ -72,7 +72,7 @@ end;
constructor TEmpresasController.Create;
begin
FDataModule := TDataModuleEmpresas.Create(Nil);
FDataModule := TDataModuleEmpresas.Create;
end;
procedure TEmpresasController.DescartarCambios(AEmpresa: IBizEmpresa);

View File

@ -1,4 +1,4 @@
object DataModuleEmpresas: TDataModuleEmpresas
object DataModuleEmpresasObj: TDataModuleEmpresasObj
OldCreateOrder = True
OnCreate = DAClientDataModuleCreate
Height = 267

View File

@ -11,7 +11,7 @@ uses {vcl:} SysUtils, Classes, DB, DBClient,
uDAMemDataTable, uDABin2DataStreamer, uIntegerListUtils;
type
TDataModuleEmpresas = class(TDataModule, IDataModuleEmpresas)
TDataModuleEmpresasObj = class(TDataModule, IDataModuleEmpresas)
RORemoteService: TRORemoteService;
rda_Empresas: TDARemoteDataAdapter;
Bin2DataStreamer: TDABin2DataStreamer;
@ -28,6 +28,14 @@ type
function GetItems : IBizEmpresa;
end;
TDataModuleEmpresas = class(TInterfacedObject, IDataModuleEmpresas)
private
FDataModule : TDataModuleEmpresasObj;
property DataModule : TDataModuleEmpresasObj read FDataModule implements IDataModuleEmpresas;
public
constructor Create;
destructor Destroy; override;
end;
implementation
@ -37,13 +45,13 @@ uses
uDataModuleConexion, uDataTableUtils,
FactuGES_Intf, schEmpresasClient_Intf, cxControls;
procedure TDataModuleEmpresas.DAClientDataModuleCreate(Sender: TObject);
procedure TDataModuleEmpresasObj.DAClientDataModuleCreate(Sender: TObject);
begin
RORemoteService.Channel := dmConexion.Channel;
RORemoteService.Message := dmConexion.Message;
end;
function TDataModuleEmpresas.GetItem(const ID: Integer): IBizEmpresa;
function TDataModuleEmpresasObj.GetItem(const ID: Integer): IBizEmpresa;
begin
ShowHourglassCursor;
try
@ -61,7 +69,7 @@ begin
end;
end;
function TDataModuleEmpresas.GetItems: IBizEmpresa;
function TDataModuleEmpresasObj.GetItems: IBizEmpresa;
var
AEmpresa : TDAMemDataTable;
begin
@ -81,12 +89,12 @@ begin
end;
end;
function TDataModuleEmpresas.NewItem: IBizEmpresa;
function TDataModuleEmpresasObj.NewItem: IBizEmpresa;
begin
Result := GetItem(ID_NULO)
end;
function TDataModuleEmpresas._GetDatosBancarios: IBizEmpresasDatosBancarios;
function TDataModuleEmpresasObj._GetDatosBancarios: IBizEmpresasDatosBancarios;
var
ADatosBancarios : TDAMemDataTable;
begin
@ -106,6 +114,17 @@ begin
end;
initialization
{ TDataModuleEmpresas }
end.
constructor TDataModuleEmpresas.Create;
begin
FDataModule := TDataModuleEmpresasObj.Create(NIL);
end;
destructor TDataModuleEmpresas.Destroy;
begin
FreeANDNIL(FDataModule);
inherited;
end;
end.

View File

@ -42,16 +42,6 @@ type
property CurrentEmpresa : TEmpresaDef read FEmpresaAtual write FEmpresaAtual;
property UserSettings: TUCUserSettings read FUserSettings write SetUserSettings;}
{ function BuscarTodos: IBizFormaPago;
function Buscar(ID: Integer): IBizFormaPago;
procedure VerTodos(AUsuarios: IBizFormaPago);
procedure Ver(AFormaPago: IBizFormaPago);
procedure Anadir(AFormaPago : IBizFormaPago);
function Eliminar(AFormaPago : IBizFormaPago): Boolean;
function Guardar(AFormaPago : IBizFormaPago): Boolean;
procedure DescartarCambios(AFormaPago : IBizFormaPago);
function Localizar(AUsuarios: IBizFormaPago; ADescripcion:String): Boolean;
function DarListaUsuarios: TStringList;}
end;
TUsuariosController = class(TControllerBase, IUsuariosController)
@ -65,13 +55,11 @@ type
procedure RecibirAviso(ASujeto: ISujeto; ADataTable: IDAStronglyTypedDataTable); override;
function CreateEditor(const AName : String; const IID: TGUID; out Intf): Boolean;
// function ValidarFormaPago(AFormaPago: IBizFormaPago): Boolean;
procedure AsignarDataModule;
procedure InicializarUserControl;
procedure ComprobarUsuarioInicial;
function GetCurrentUser: TUCCurrentUser;
procedure OnLoginForm(Sender: TObject; var CustomForm: TCustomForm);
public
constructor Create; virtual;
destructor Destroy; override;
@ -84,17 +72,7 @@ type
procedure ShowChangePassword;
function ComprobarUsuario(const User : String; const Password: String): Boolean;
procedure CambiarPassword(const AIDUser: Integer; const ANewPassword: String);
{ function Eliminar(AFormaPago : IBizFormaPago): Boolean;
function Guardar(AFormaPago : IBizFormaPago): Boolean; virtual;
procedure DescartarCambios(AFormaPago : IBizFormaPago); virtual;
procedure Anadir(AFormaPago : IBizFormaPago);
function BuscarTodos: IBizFormaPago;
function Buscar(ID: Integer): IBizFormaPago;
procedure VerTodos(AUsuarios: IBizFormaPago);
procedure Ver(AFormaPago: IBizFormaPago);
function Localizar(AUsuarios: IBizFormaPago; ADescripcion:String): Boolean;
function DarListaUsuarios: TStringList;}
property UserControl : TUserControl read FUserControl;
property MaxIntentosLogin : Integer read GetMaxIntentosLogin write SetMaxIntentosLogin;
property CurrentUser: TUCCurrentUser read GetCurrentUser;
@ -104,44 +82,16 @@ implementation
uses
cxControls, DB, uEditorRegistryUtils, schUsuariosClient_Intf,
uDAInterfaces, uDataTableUtils, uDialogUtils, uFactuGES_App,
uDAInterfaces, uDataTableUtils, uDialogUtils, uFactuGES_App, Dialogs,
uDateUtils, uROTypes, DateUtils, Controls, Windows, uIEditorLogin;
{ TUsuariosController }
{procedure TUsuariosController.Anadir(AFormaPago: IBizFormaPago);
begin
AFormaPago.Insert;
end;}
procedure TUsuariosController.AsignarDataModule;
begin
FDataModule := TDataModuleUsuarios.Create(Nil);
FDataModule := TDataModuleUsuarios.Create;
end;
{function TUsuariosController.Buscar(ID: Integer): IBizFormaPago;
begin
ShowHourglassCursor;
try
Result := BuscarTodos;
with Result.DataTable.Where do
begin
if NotEmpty then
AddOperator(opAND);
OpenBraket;
AddText(fld_UsuariosID + ' = ' + IntToStr(ID));
CloseBraket;
end;
finally
HideHourglassCursor;
end;
end;
function TUsuariosController.BuscarTodos: IBizFormaPago;
begin
Result := FDataModule.GetItems;
end;}
procedure TUsuariosController.CambiarPassword(const AIDUser: Integer;
const ANewPassword: String);
begin
@ -174,49 +124,11 @@ begin
Result := Supports(EditorRegistry.CreateEditor(AName), IID, Intf);
end;
{
function TUsuariosController.DarListaUsuarios: TStringList;
var
AUsuarios: IBizFormaPago;
begin
AUsuarios := BuscarTodos;
AUsuarios.DataTable.Active := True;
Result := TStringList.Create;
try
with Result do
begin
AUsuarios.DataTable.First;
while not AUsuarios.DataTable.EOF do
begin
Add(AUsuarios.DESCRIPCION);
AUsuarios.DataTable.Next;
end;
end;
finally
AUsuarios := NIL;
end;
end;
procedure TUsuariosController.DescartarCambios(AFormaPago: IBizFormaPago);
begin
if not Assigned(AFormaPago) then
raise Exception.Create ('Forma de pago no asignada');
ShowHourglassCursor;
try
if (AFormaPago.State in dsEditModes) then
AFormaPago.Cancel;
AFormaPago.DataTable.CancelUpdates;
finally
HideHourglassCursor;
end;
end;
}
destructor TUsuariosController.Destroy;
begin
FreeANDNIL(FUserControl);
FreeAndNIL(FUserControl);
FDataModule := NIL;
inherited;
end;
@ -239,8 +151,6 @@ begin
Criptografia := cMD5;
CheckValidationKey := True;
Login.MaxLoginAttempts := 3;
OnCustomLoginForm := OnLoginForm;
end;
FDataModule.InicializarUserControl(FUserControl);
end;
@ -250,99 +160,6 @@ begin
FUserControl.Logoff;
end;
procedure TUsuariosController.OnLoginForm(Sender: TObject;
var CustomForm: TCustomForm);
begin
// CustomForm := TfLoginForm.Create(NIL);
end;
{
function TUsuariosController.ValidarFormaPago(AFormaPago: IBizFormaPago): Boolean;
begin
Result := False;
if not Assigned(AFormaPago) then
raise Exception.Create ('Forma de pago no asignada');
if (AFormaPago.DataTable.State in dsEditModes) then
AFormaPago.DataTable.Post;
if Length(AFormaPago.REFERENCIA) = 0 then
raise Exception.Create('Debe indicar una referencia para esta forma de pago.');
if Length(AFormaPago.DESCRIPCION) = 0 then
raise Exception.Create('Debe indicar una descripción para esta forma de pago.');
Result := True;
end;
procedure TUsuariosController.Ver(AFormaPago: IBizFormaPago);
var
AEditor : IEditorFormaPago;
begin
AEditor := NIL;
ShowHourglassCursor;
try
CreateEditor('EditorFormaPago', IEditorFormaPago, AEditor);
with AEditor do
FormaPago := AFormaPago;
finally
HideHourglassCursor;
end;
if Assigned(AEditor) then
try
AEditor.ShowModal;
AEditor.Release;
finally
AEditor := NIL;
end;
end;
procedure TUsuariosController.VerTodos(AUsuarios: IBizFormaPago);
var
AEditor : IEditorUsuarios;
begin
AEditor := NIL;
ShowHourglassCursor;
try
CreateEditor('EditorUsuarios', IEditorUsuarios, AEditor);
with AEditor do
Usuarios := AUsuarios;
finally
HideHourglassCursor;
end;
if Assigned(AEditor) then
try
AEditor.ShowModal;
AEditor.Release;
finally
AEditor := NIL;
end;
end;
function TUsuariosController.Eliminar(AFormaPago: IBizFormaPago): Boolean;
begin
Result := False;
if not Assigned(AFormaPago) then
raise Exception.Create ('Forma de pago no asignada');
ShowHourglassCursor;
try
if (AFormaPago.State in dsEditModes) then
AFormaPago.Cancel;
AFormaPago.Delete;
AFormaPago.DataTable.ApplyUpdates;
HideHourglassCursor;
Result := True;
finally
HideHourglassCursor;
end;
end;}
procedure TUsuariosController.RecibirAviso(ASujeto: ISujeto; ADataTable: IDAStronglyTypedDataTable);
begin
inherited;
@ -382,6 +199,7 @@ begin
ShowHourglassCursor;
try
CreateEditor('EditorLogin', IEditorLogin, AEditor);
with AEditor do
Controller := Self;
finally
@ -399,38 +217,4 @@ begin
end;
end;
{function TUsuariosController.Guardar(AFormaPago: IBizFormaPago): Boolean;
begin
Result := False;
if ValidarFormaPago(AFormaPago) then
begin
ShowHourglassCursor;
try
AFormaPago.DataTable.ApplyUpdates;
Result := True;
finally
HideHourglassCursor;
end;
end;
end;
function TUsuariosController.Localizar(AUsuarios: IBizFormaPago; ADescripcion: String): Boolean;
begin
Result := True;
ShowHourglassCursor;
try
with AUsuarios.DataTable do
begin
DisableControls;
First;
if not Locate(fld_UsuariosDESCRIPCION, ADescripcion, []) then
Result := False;
EnableControls;
end;
finally
HideHourglassCursor;
end;
end;}
end.

View File

@ -1,43 +1,31 @@
object DataModuleUsuarios: TDataModuleUsuarios
object DataModuleUsuariosObj: TDataModuleUsuariosObj
OldCreateOrder = True
OnCreate = DAClientDataModuleCreate
Height = 205
Width = 355
object ROLoginService: TRORemoteService
Message = dmConexion.ROMessage
Channel = dmConexion.ROChannel
ServiceName = 'srvLogin'
Left = 48
Top = 32
end
Height = 149
Width = 273
object srvUsuarios: TRORemoteService
Message = dmConexion.ROMessage
Channel = dmConexion.ROChannel
ServiceName = 'srvUsuarios'
Left = 152
Top = 32
end
object Bin2DataStreamer: TDABin2DataStreamer
Left = 48
Top = 104
Left = 40
Top = 72
end
object UCSettingsSpanish: TUCSettings
AppMessages.MsgsForm_BtNew = '&Nuevo mensaje'
AppMessages.MsgsForm_BtReplay = '&Repetir'
AppMessages.MsgsForm_BtForward = '&Siguiente'
AppMessages.MsgsForm_BtDelete = '&Eliminar'
AppMessages.MsgsForm_BtNew = '&Nuevo Mensaje'
AppMessages.MsgsForm_BtReplay = '&Responder'
AppMessages.MsgsForm_BtForward = '&Reenviar'
AppMessages.MsgsForm_BtDelete = '&Borrar'
AppMessages.MsgsForm_BtClose = '&Cerrar'
AppMessages.MsgsForm_WindowCaption = 'Mensajes del sistema'
AppMessages.MsgsForm_ColFrom = 'De'
AppMessages.MsgsForm_WindowCaption = 'Mensajes de Sistema'
AppMessages.MsgsForm_ColFrom = 'Remitente'
AppMessages.MsgsForm_ColSubject = 'Asunto'
AppMessages.MsgsForm_ColDate = 'Fecha'
AppMessages.MsgsForm_PromptDelete = #194#191'Desea eliminar los mensajes seleccionados?'
AppMessages.MsgsForm_PromptDelete = #191'Est'#225' seguro de eliminar los mensajes seleccionados?'
AppMessages.MsgsForm_PromptDelete_WindowCaption = 'Eliminar mensajes'
AppMessages.MsgsForm_NoMessagesSelected = 'No hay mensajes seleccionados'
AppMessages.MsgsForm_NoMessagesSelected_WindowCaption = 'Informaci'#195#179'n'
AppMessages.MsgsForm_NoMessagesSelected = '!Ning'#250'n mensaje seleccionado'#161
AppMessages.MsgsForm_NoMessagesSelected_WindowCaption = 'Informaci'#243'n'
AppMessages.MsgRec_BtClose = '&Cerrar'
AppMessages.MsgRec_WindowCaption = 'Mensaje'
AppMessages.MsgRec_Title = 'Mensaje recibido'
AppMessages.MsgRec_Title = 'Mensaje Recibido'
AppMessages.MsgRec_LabelFrom = 'De:'
AppMessages.MsgRec_LabelDate = 'Fecha'
AppMessages.MsgRec_LabelSubject = 'Asunto'
@ -45,42 +33,42 @@ object DataModuleUsuarios: TDataModuleUsuarios
AppMessages.MsgSend_BtSend = '&Enviar'
AppMessages.MsgSend_BtCancel = '&Cancelar'
AppMessages.MsgSend_WindowCaption = 'Mensaje'
AppMessages.MsgSend_Title = 'Enviar un nuevo mensaje'
AppMessages.MsgSend_GroupTo = 'A'
AppMessages.MsgSend_Title = 'Enviar Nuevo Mensaje'
AppMessages.MsgSend_GroupTo = 'Para:'
AppMessages.MsgSend_RadioUser = 'Usuario:'
AppMessages.MsgSend_RadioAll = 'Todos'
AppMessages.MsgSend_GroupMessage = 'Mensaje'
AppMessages.MsgSend_LabelSubject = 'Asunto'
AppMessages.MsgSend_LabelMessageText = 'Texto del mensaje'
CommonMessages.AutoLogonError = 'Fault of Car Logon !'#13#10'Inform a valid user and password.'
CommonMessages.ChangePasswordError.InvalidCurrentPassword = 'Current password does not tally!'
CommonMessages.AutoLogonError =
'Error de Ingreso Autom'#225'tico!'#13#10'Especifique un Usuario y Contrase'#241 +
'a V'#225'lidos.'
CommonMessages.ChangePasswordError.InvalidCurrentPassword = #161'Contrase'#241'a Actual Incorrecta!'
CommonMessages.ChangePasswordError.NewPasswordError =
'Los campos de nueva contrase'#195#177'a y confirmaci'#195#179'n deben ser iguale' +
's.'
CommonMessages.ChangePasswordError.NewEqualCurrent = 'La nueva contrase'#195#177'a es la misma que la contrase'#195#177'a actual '
CommonMessages.ChangePasswordError.PasswordRequired = 'The password is compulsory '
CommonMessages.ChangePasswordError.MinPasswordLength = 'La contrase'#195#177'a debe contener al menos %d caracteres '
CommonMessages.ChangePasswordError.InvalidNewPassword = #194#161'La nueva contrase'#195#177'a no es v'#195#161'lida por ser demasiado f'#195#161'cil!'
CommonMessages.InvalidLogin = 'User invalids or password !'
'Los campos Contrase'#241'a Nueva y Confirme Contrase'#241'a deben ser igua' +
'les'
CommonMessages.ChangePasswordError.NewEqualCurrent = 'Nueva Contrase'#241'a y Contrase'#241'a Actual deben ser diferentes'
CommonMessages.ChangePasswordError.PasswordRequired = #161'La Contrase'#241'a es obligatoria!'
CommonMessages.ChangePasswordError.MinPasswordLength = 'La Contrase'#241'a debe tener un m'#237'nimo de %d caracteres'
CommonMessages.ChangePasswordError.InvalidNewPassword = #161'Prohibido utilizar contrase'#241'as NO Seguras!'
CommonMessages.InvalidLogin = 'Usuario y/o Contrase'#241'a Incorrectos!'
CommonMessages.InitialMessage.Strings = (
'ATTENTION, Inicial Login :'
'ATENCION! Conecci'#243'n Inicial:'
''
'User: :user'
'Password : :password'
'Usuario : :user'
'Contrase'#241'a : :password'
''
'Define the permissions for this user.')
CommonMessages.MaxLoginAttemptsError =
'%d Attempts of login invalid. By reasons of segun'#231'a the system w' +
'ill be closed.'
CommonMessages.PasswordChanged = #194#161'Contrase'#195#177'a cambiada!'
CommonMessages.BlankPassword = 'Retired password of the Login %s'
CommonMessages.UsuarioExiste = 'The User "%s" is already set up in the system !!'
CommonMessages.PasswordExpired = 'Attention, his sign died, favor exchanges it '
'Defina permisos para este usuario')
CommonMessages.MaxLoginAttemptsError = '%d Intentos de conecci'#243'n inv'#225'lidos !'
CommonMessages.PasswordChanged = #161'Se ha cambiado la Contrase'#241'a con '#233'xito!'
CommonMessages.BlankPassword = 'Contrase'#241'a vac'#237'a para el Usuario %s'
CommonMessages.UsuarioExiste = 'O Usu'#225'rio "%s" j'#225' est'#225' cadastrado no sistema !!'
CommonMessages.PasswordExpired = 'Aten'#231#227'o, sua senha expirou, favor troca-la'
CommonMessages.ForcaTrocaSenha = 'Mudan'#231'a de senha obrigat'#243'ria'
Login.WindowCaption = 'Login'
Login.LabelUser = 'Usuario :'
Login.LabelPassword = 'Contrase'#195#177'a :'
Login.BtOk = '&Aceptar'
Login.WindowCaption = 'Conecci'#243'n'
Login.LabelUser = 'Usuario: '
Login.LabelPassword = 'Contrase'#241'a:'
Login.BtOk = 'Aceptar'
Login.BtCancel = '&Cancelar'
Login.LeftImage.Data = {
07544269746D617016090000424D160900000000000036040000280000003200
@ -157,118 +145,122 @@ object DataModuleUsuarios: TDataModuleUsuarios
A3A3FDFDFDFDFDFDFDFDFDFD0000FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
0000}
Login.LabelTentativa = 'Attempt : '
Login.LabelTentativas = 'Max of Attempts: '
Log.WindowCaption = 'Security'
Log.LabelDescription = 'Log of system'
Log.LabelUser = 'User :'
Log.LabelDate = 'Date :'
Log.LabelLevel = 'Least level:'
Login.LabelTentativa = 'Tentativa : '
Login.LabelTentativas = 'M'#225'ximo de Tentativas : '
Log.WindowCaption = 'Seguridad'
Log.LabelDescription = 'Visor de Eventos'
Log.LabelUser = 'Usuario:'
Log.LabelDate = 'Fecha:'
Log.LabelLevel = 'Nivel M'#237'nimo: '
Log.ColAppID = 'AppID'
Log.ColLevel = 'Level '
Log.ColMessage = 'Message'
Log.ColUser = 'User'
Log.ColDate = 'Date'
Log.BtFilter = '&Apply Filter'
Log.BtDelete = '&Erase Log'
Log.BtClose = '&Close'
Log.PromptDelete = 'It confirms to exclude all the registers of log selected ?'
Log.PromptDelete_WindowCaption = 'Delete confirmation'
Log.OptionUserAll = 'All'
Log.OptionLevelLow = 'Low'
Log.ColLevel = 'Nivel'
Log.ColMessage = 'Mensaje'
Log.ColUser = 'Usuario'
Log.ColDate = 'Fecha'
Log.BtFilter = '&Aplicar Filtro'
Log.BtDelete = '&Borrar Bit'#225'cora'
Log.BtClose = '&Cerrar'
Log.PromptDelete =
#191'Est'#225' seguro de Eliminar todos todos los registros de Bit'#225'cora s' +
'eleccionados?'
Log.PromptDelete_WindowCaption = 'Confirmaci'#243'n'
Log.OptionUserAll = 'Todos'
Log.OptionLevelLow = 'Bajo'
Log.OptionLevelNormal = 'Normal'
Log.OptionLevelHigh = 'High'
Log.OptionLevelCritic = 'Critic'
Log.OptionLevelHigh = 'Alto'
Log.OptionLevelCritic = 'Cr'#237'tico'
Log.DeletePerformed =
'Deletion of system log done: User = "%s" | Date = %s a %s | Leve' +
'l <= %s'
UsersForm.WindowCaption = 'Security'
UsersForm.LabelDescription = 'Users register '
UsersForm.ColName = 'Name'
UsersForm.ColLogin = 'Login'
UsersForm.ColEmail = 'Email'
UsersForm.BtAdd = '&Add'
UsersForm.BtChange = 'A&lter'
UsersForm.BtDelete = '&Erase'
UsersForm.PromptDelete = 'Confirm erase the user "%s" ?'
UsersForm.PromptDelete_WindowCaption = 'Delete user'
UsersForm.BtRights = 'A&ccesses'
UsersForm.BtPassword = '&Password'
UsersForm.BtClose = '&Close'
AddChangeUser.WindowCaption = 'Users register '
AddChangeUser.LabelAdd = 'Add User'
AddChangeUser.LabelChange = 'Change User'
AddChangeUser.LabelName = 'Name :'
AddChangeUser.LabelLogin = 'Login :'
AddChangeUser.LabelEmail = 'Email :'
AddChangeUser.LabelPerfil = 'Profile :'
AddChangeUser.CheckPrivileged = 'Privileged user '
AddChangeUser.BtSave = '&Save'
AddChangeUser.BtCancel = 'Cancel'
'Borrado de registros de bit'#225'cora realizado: Usuario = "%s" | Fec' +
'ha = %s a %s | Nivel <= %s'
UsersForm.WindowCaption = 'Seguridad'
UsersForm.LabelDescription = 'Administraci'#243'n de Usuarios'
UsersForm.ColName = 'Nombre'
UsersForm.ColLogin = 'Usuario'
UsersForm.ColEmail = 'Correo'
UsersForm.BtAdd = '&Nuevo'
UsersForm.BtChange = '&Editar'
UsersForm.BtDelete = 'E&liminar'
UsersForm.PromptDelete = #191'Est'#225' seguro de Eliminar al Usuario "%s"?'
UsersForm.PromptDelete_WindowCaption = 'Eliminar usuario'
UsersForm.BtRights = '&Accesos'
UsersForm.BtPassword = 'C&ontrase'#241'a'
UsersForm.BtClose = '&Cerrar'
AddChangeUser.WindowCaption = 'Administraci'#243'n de Usuarios'
AddChangeUser.LabelAdd = 'Nuevo Usuario'
AddChangeUser.LabelChange = 'Editar Usuario'
AddChangeUser.LabelName = 'Nombre:'
AddChangeUser.LabelLogin = 'Usuario: '
AddChangeUser.LabelEmail = 'Correo: '
AddChangeUser.LabelPerfil = 'Perfil: '
AddChangeUser.CheckPrivileged = 'Usuario Privilegiado'
AddChangeUser.BtSave = '&Guardar'
AddChangeUser.BtCancel = 'Cancelar'
AddChangeUser.CheckExpira = 'Senha do usu'#225'rio n'#227'o expira'
AddChangeUser.Day = 'Dias'
AddChangeUser.ExpiredIn = 'Expira em'
AddChangeProfile.WindowCaption = 'Profile the Users'
AddChangeProfile.LabelAdd = 'Add Profile'
AddChangeProfile.LabelChange = 'Change Profile '
AddChangeProfile.LabelName = 'Description :'
AddChangeProfile.BtSave = '&Save'
AddChangeProfile.BtCancel = 'Cancel'
UsersProfile.WindowCaption = 'Security'
UsersProfile.LabelDescription = 'Users profile '
UsersProfile.ColProfile = 'Profile'
UsersProfile.BtAdd = '&Add'
UsersProfile.BtChange = 'A&lter'
UsersProfile.BtDelete = '&Delete'
UsersProfile.BtRights = 'A&ccesses'
UsersProfile.PromptDelete = 'There are users with the profile "%s". Confirm erase ?'
UsersProfile.PromptDelete_WindowCaption = 'Delete profile'
UsersProfile.BtClose = '&Close'
AddChangeProfile.WindowCaption = 'Perfiles de Usuarios'
AddChangeProfile.LabelAdd = 'Nuevo Perfil'
AddChangeProfile.LabelChange = 'Editar Perfil'
AddChangeProfile.LabelName = 'Descripci'#243'n: '
AddChangeProfile.BtSave = '&Guardar'
AddChangeProfile.BtCancel = 'Cancelar'
UsersProfile.WindowCaption = 'Seguridad'
UsersProfile.LabelDescription = 'Perfil de Usuario'
UsersProfile.ColProfile = 'Perfil'
UsersProfile.BtAdd = '&Nuevo'
UsersProfile.BtChange = '&Editar'
UsersProfile.BtDelete = 'E&liminar'
UsersProfile.BtRights = '&Accesos'
UsersProfile.PromptDelete =
'Existe(n) usuario(s) con el Perfil "%s". '#191'Est'#225' seguro de elimina' +
'r el perfil?'
UsersProfile.PromptDelete_WindowCaption = 'Eliminar perfil'
UsersProfile.BtClose = '&Cerrar'
Rights.WindowCaption = 'Seguridad'
Rights.LabelUser = 'Permissions of the User :'
Rights.LabelProfile = 'Permissions of the Profile :'
Rights.PageMenu = 'Items of the Menu'
Rights.PageActions = 'Actions'
Rights.PageControls = 'Controls'
Rights.BtUnlock = '&Desbloquear'
Rights.LabelUser = 'Permisos de Usuario : '
Rights.LabelProfile = 'Permisos del Perfil : '
Rights.PageMenu = 'Elementos del Men'#250
Rights.PageActions = 'Acciones'
Rights.PageControls = 'Controles'
Rights.BtUnlock = '&Permitir'
Rights.BtLock = '&Bloquear'
Rights.BtSave = '&Guardar'
Rights.BtCancel = '&Cancelar'
ChangePassword.WindowCaption = 'Seguridad'
ChangePassword.LabelDescription = 'Cambiar la contrase'#195#177'a'
ChangePassword.LabelCurrentPassword = 'Contrase'#195#177'a actual: '
ChangePassword.LabelNewPassword = 'Nueva contrase'#195#177'a: '
ChangePassword.LabelConfirm = 'Confirmar contrase'#195#177'a: '
ChangePassword.BtSave = 'C&ambiar'
ChangePassword.LabelDescription = 'Cambiar Contrase'#241'a'
ChangePassword.LabelCurrentPassword = 'Contrase'#241'a Actual:'
ChangePassword.LabelNewPassword = 'Nueva Contrase'#241'a:'
ChangePassword.LabelConfirm = 'Confirme Contrase'#241'a:'
ChangePassword.BtSave = '&Guardar'
ChangePassword.BtCancel = 'Cancelar'
ResetPassword.WindowCaption = 'Define Password of the user : "%s"'
ResetPassword.LabelPassword = 'Password :'
History.Evento_Insert = 'Inserido'
History.Evento_Delete = 'Apagado'
History.Evento_Edit = 'Editado'
History.Evento_NewRecord = 'Novo registro'
ResetPassword.WindowCaption = 'Ingrese Contrase'#241'a de Usuario: "%s"'
ResetPassword.LabelPassword = 'Contrase'#241'a: '
History.Evento_Insert = 'Nuevo'
History.Evento_Delete = 'Eliminar'
History.Evento_Edit = 'Editar'
History.Evento_NewRecord = 'Nuevo registro'
History.Hist_All = 'Todos'
History.Msg_LimpHistorico = 'Excluir todo o conte'#250'do do hist'#243'rico ?'
History.Msg_MensConfirma = 'Confirma'#231#227'o'
History.Msg_LogEmptyHistory = 'Usu'#225'rio %s apagou todo o hist'#243'rico as %s'
History.Msg_LimpHistorico = 'Excluir el contenido entero del hist'#243'rico ?'
History.Msg_MensConfirma = 'Confirme'
History.Msg_LogEmptyHistory = 'El usuario %s borra la historia de mesa en %s '
History.LabelDescricao = 'Hist'#243'rico de tabelas'
History.LabelUser = 'Usu'#225'rio'
History.LabelUser = 'Usuario'
History.LabelForm = 'Formul'#225'rio'
History.LabelEvento = 'Evento'
History.LabelTabela = 'Tabela'
History.LabelDataEvento = 'Data'
History.LabelHoraEvento = 'Hora'
History.Msg_NewRecord = '%s inseriu um novo registro'
History.Hist_MsgExceptPropr = 'Favor informar a propriedade %s'
History.Msg_NewRecord = '%s Inserte el nuevo registro'
History.Hist_MsgExceptPropr = 'Por favor informe la propiedad %s'
History.Hist_BtnFiltro = '&Aplicar Filtro'
History.Hist_BtnExcluir = '&Excluir Hist'#243'rico'
History.Hist_BtnFechar = '&Fechar'
History.Hist_BtnExcluir = '&Borrar Hist'#243'rico'
History.Hist_BtnFechar = '&Cerrar'
TypeFieldsDB.Type_VarChar = 'VarChar'
TypeFieldsDB.Type_Char = 'Char'
TypeFieldsDB.Type_Int = 'Int'
TypeFieldsDB.Type_MemoField = 'BLOB SUB_TYPE 1 SEGMENT SIZE 1024'
Language = ucPortuguesBr
Left = 152
Top = 104
Language = ucSpanish
Left = 40
Top = 16
end
end

View File

@ -9,203 +9,53 @@ uses
uDARemoteCommand, uROClient, uRORemoteService, uDADataStreamer,
uDABin2DataStreamer, uDAScriptingProvider, uIDataModuleUsuarios, UCSettings;
const
PERFIL_ADMINISTRADORES = 'Administradores';
type
TDataModuleUsuarios = class(TDataModule, IDataModuleUsuarios)
ROLoginService: TRORemoteService;
TDataModuleUsuariosObj = class(TDataModule)
srvUsuarios: TRORemoteService;
Bin2DataStreamer: TDABin2DataStreamer;
UCSettingsSpanish: TUCSettings;
procedure DAClientDataModuleCreate(Sender: TObject);
procedure DAClientDataModuleDestroy(Sender: TObject);
private
FDataConnector : TUCROConn;
FUsuario : String;
FPassword : String; // Lo guardo para poder hacer una reconexión
FLoginInfo: TRdxLoginInfo;
// function GetEsAdministrador: Boolean;
//function GetEmpresas: TIntegerList;
{procedure SetEmpresaActual(const Value: IBizEmpresa);
function GetIDEmpresaActual: Integer;
procedure SetIDEmpresaActual(const Value: Integer);}
function GetDataConnector : TUCDataConnector;
function GetUCSettings : TUCSettings;
procedure InicializarCamposUserControl(AUserControl: TUserControl);
procedure InicializarSettingsUserControl(AUserControl: TUserControl);
function CreateConnectorInstance : TUCDataConnector;
public
procedure InicializarUserControl (AUserControl : TUserControl);
{ function Login: Boolean; overload;
function Login(Usuario: String; Password: String): Boolean; overload;
procedure Logout;
procedure CambiarPassword; overload;}
// property EsAdministrador : Boolean read GetEsAdministrador;
// property IDEmpresaActual : Integer read GetIDEmpresaActual write SetIDEmpresaActual;
// property EmpresaActual : IBizEmpresa read FEmpresaActual write SetEmpresaActual;
// property Empresas : TIntegerList read GetEmpresas;
// property LoginInfo: TRdxLoginInfo read FLoginInfo;
property DataConnector : TUCDataConnector read GetDataConnector;
property UCSettings: TUCSettings read GetUCSettings;
end;
TDataModuleUsuarios = class(TInterfacedObject, IDataModuleUsuarios)
private
FDataModule : TDataModuleUsuariosObj;
public
procedure InicializarUserControl (AUserControl : TUserControl);
constructor Create;
destructor Destroy; override;
end;
implementation
{$R *.DFM}
uses
Forms, Controls, uDataTableUtils, uDataModuleConexion,
Dialogs, Windows, uEmpresasController,
Dialogs, Windows, uEmpresasController, uDataModuleBase,
schUsuariosClient_Intf;
{ TDAClientDataModule1 }
procedure TDataModuleUsuarios.DAClientDataModuleCreate(Sender: TObject);
function TDataModuleUsuariosObj.CreateConnectorInstance: TUCDataConnector;
begin
ROLoginService.Channel := dmConexion.Channel;
ROLoginService.Message := dmConexion.Message;
FDataConnector := TUCROConn.Create(nil);
FDataConnector.RemoteService := srvUsuarios;
FUsuario := '';
FPassword := '';
FLoginInfo := NIL;
end;
{function TDataModuleUsuarios.Login: Boolean;
begin
// Intento hacer login si el usuario ya lo había hecho antes
if (Length(FUsuario) > 0) then
if Login(FUsuario, FPassword) then
begin
Result := True;
Exit;
end;
// Si no funcionar el login anterior o es la primera vez,
// saco la pantalla de login
with TfLoginForm.Create(NIL) do
try
if Assigned(FLoginInfo) then
edtUser.Text := FLoginInfo.Usuario;
Result := (ShowModal = mrOK)
finally
Free;
end;
end;}
{function TDataModuleUsuarios.Login(Usuario: String; Password: String): Boolean;
begin
// Libero la información del login anterior (sesión, etc)
if Assigned(FLoginInfo) then
FreeANDNil(FLoginInfo);
Result := (ROLoginService as IsrvLogin).Login(Usuario, Password, FLoginInfo);
if Result then
// El propietario (Owner) es Application para que se encarge de la
// liberación del conector que estamos creando.
Result := TUCROConn.Create(Application);
with TUCROConn(Result) do
begin
// Lo guardo para poder reconectarme
FUsuario := Usuario;
FPassword := Password;
ROServiceName := srvUsuarios.ServiceName;
ROChannel := dmConexion.ROChannel;
ROMessage := dmConexion.ROMessage;
end;
end;}
{procedure TDataModuleUsuarios.Logout;
begin
(ROLoginService as IsrvLogin).Logout;
if Assigned(FLoginInfo) then
FreeANDNil(FLoginInfo);
FUsuario := '';
FPassword := '';
end;}
{procedure TDataModuleUsuarios.SetEmpresaActual(const Value: IBizEmpresa);
begin
FEmpresaActual := Value;
FEmpresaActual.DataTable.Active := True;
end;}
{procedure TDataModuleUsuarios.SetIDEmpresaActual(const Value: Integer);
var
AEmpresasController : IEmpresasController;
AEmpresa : IBizEmpresa;
begin
AEmpresasController := TEmpresasController.Create;
AEmpresa := AEmpresasController.Buscar(Value);
AEmpresa.DataTable.Active := True;
if not AEmpresa.IsEmpty then
begin
FEmpresaActual := AEmpresa;
FEmpresaActual.DataTable.Active := True;
end
else
FEmpresaActual := NIL;
end;}
procedure TDataModuleUsuarios.DAClientDataModuleDestroy(Sender: TObject);
begin
if Assigned(FDataConnector) then
FreeANDNIL(FDataConnector);
if Assigned(FLoginInfo) then
FreeANDNIL(FLoginInfo);
end;
function TDataModuleUsuarios.GetDataConnector: TUCDataConnector;
begin
Result := FDataConnector;
end;
{function TDataModuleUsuarios.GetEmpresas: TIntegerList;
var
i : integer;
begin
Result := TIntegerList.Create;
if not Assigned(FLoginInfo) then
raise Exception.Create('Usuario no validado en el sistema (login)');
for i := 0 to FLoginInfo.Empresas.Count - 1 do
Result.Add(FLoginInfo.Empresas.Items[i]);
end;
function TDataModuleUsuarios.GetEsAdministrador: Boolean;
var
I: Integer;
begin
Result := False;
if not Assigned(FLoginInfo) then
raise Exception.Create('Usuario no validado en el sistema (login)');
for I := 0 to FLoginInfo.Perfiles.Count - 1 do
if FLoginInfo.Perfiles.Items[I] = PERFIL_ADMINISTRADORES then
begin
Result := True;
Break;
end;
end;
function TDataModuleUsuarios.GetIDEmpresaActual: Integer;
begin
if not Assigned(FEmpresaActual) then
Result := ID_NULO
else
Result := FEmpresaActual.ID;
end; }
function TDataModuleUsuarios.GetUCSettings: TUCSettings;
begin
Result := UCSettingsSpanish;
end;
procedure TDataModuleUsuarios.InicializarCamposUserControl(
procedure TDataModuleUsuariosObj.InicializarCamposUserControl(
AUserControl: TUserControl);
begin
if not Assigned(AUserControl) then
@ -213,7 +63,7 @@ begin
with AUserControl do
begin
DataConnector := FDataConnector;
DataConnector := CreateConnectorInstance;
with TableUsers do
begin
@ -269,7 +119,7 @@ begin
end;
end;
procedure TDataModuleUsuarios.InicializarSettingsUserControl(
procedure TDataModuleUsuariosObj.InicializarSettingsUserControl(
AUserControl: TUserControl);
var
SourceSettings : TUCSettings;
@ -510,7 +360,7 @@ begin
end;
end;
procedure TDataModuleUsuarios.InicializarUserControl(
procedure TDataModuleUsuariosObj.InicializarUserControl(
AUserControl: TUserControl);
begin
if Assigned(AUserControl) then
@ -520,16 +370,23 @@ begin
end;
end;
{procedure TDataModuleUsuarios.CambiarPassword;
{ TDataModuleUsuarios }
constructor TDataModuleUsuarios.Create;
begin
with TfCambiarPassword.Create(NIL) do
try
if ShowModal = mrOk then
if CambiarPassword(edtPassword.Text) then
Application.MessageBox('La contraseña ha sido cambiada correctamente.', 'Información', MB_OK);
finally
Free;
end;
end;}
FDataModule := TDataModuleUsuariosObj.Create(NIL);
end;
destructor TDataModuleUsuarios.Destroy;
begin
FreeANDNIL(FDataModule);
inherited;
end;
procedure TDataModuleUsuarios.InicializarUserControl(
AUserControl: TUserControl);
begin
FDataModule.InicializarUserControl(AUserControl);
end;
end.

View File

@ -22,21 +22,24 @@ uses
DB,
DBClient,
SysUtils,
UCDataConnector,
uRORemoteService,
uDADataStreamer,
uDABin2DataStreamer,
uDARemoteDataAdapter;
uRORemoteService, uDADataStreamer, uROBinMessage, uROWinInetHttpChannel,
uDABin2DataStreamer, uDARemoteDataAdapter, UCDataConnector;
type
TUCROConn = class(TUCDataConnector)
private
FMessage: TROBinMessage;
FChannel: TROWinInetHTTPChannel;
FRemoteService: TRORemoteService;
FDataAdapter : TDARemoteDataAdapter;
FDataStreamer : TDABin2DataStreamer;
procedure SetRemoteService(const Value: TRORemoteService);
procedure SetServiceName(const Value: String);
function GetServiceName: String;
procedure SetChannel(const Value: TROWinInetHTTPChannel);
procedure SetMessage(const Value: TROBinMessage);
protected
procedure Notification(AComponent: TComponent; Operation: TOperation); override;
procedure RefreshROConnection;
public
function GetDBObjectName: String; override;
function GetTransObjectName: String; override;
@ -47,7 +50,9 @@ type
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
published
property RemoteService : TRORemoteService read FRemoteService write SetRemoteService;
property ROServiceName : String read GetServiceName write SetServiceName;
property ROMessage : TROBinMessage read FMessage write SetMessage;
property ROChannel : TROWinInetHTTPChannel read FChannel write SetChannel;
end;
implementation
@ -61,6 +66,7 @@ uses
constructor TUCROConn.Create(AOwner: TComponent);
begin
inherited;
FRemoteService := TRORemoteService.Create(nil);
FDataStreamer := TDABin2DataStreamer.Create(nil);
FDataAdapter := TDARemoteDataAdapter.Create(nil);
FDataAdapter.DataStreamer := FDataStreamer;
@ -69,6 +75,7 @@ end;
destructor TUCROConn.Destroy;
begin
FreeAndNil(FRemoteService);
FreeAndNil(FDataAdapter);
FreeAndNil(FDataStreamer);
inherited;
@ -87,6 +94,11 @@ begin
Result := '';
end;
function TUCROConn.GetServiceName: String;
begin
Result := FRemoteService.ServiceName;
end;
function TUCROConn.GetTransObjectName: String;
begin
Result := '';
@ -102,11 +114,12 @@ begin
inherited Notification(AComponent, Operation);
end;
procedure TUCROConn.SetRemoteService(const Value: TRORemoteService);
procedure TUCROConn.RefreshROConnection;
begin
FRemoteService := Value;
if Assigned(FRemoteService) then
with FRemoteService do
begin
FRemoteService.Message := FMessage;
FRemoteService.Channel := FChannel;
with FDataAdapter do
begin
RemoteService := FRemoteService;
@ -118,6 +131,23 @@ begin
end;
end;
procedure TUCROConn.SetChannel(const Value: TROWinInetHTTPChannel);
begin
FChannel := Value;
RefreshROConnection;
end;
procedure TUCROConn.SetMessage(const Value: TROBinMessage);
begin
FMessage := Value;
RefreshROConnection;
end;
procedure TUCROConn.SetServiceName(const Value: String);
begin
FRemoteService.ServiceName := Value;
end;
procedure TUCROConn.UCExecSQL(FSQL: String);
begin
(FRemoteService as IsrvUsuarios).SQLExecuteCommand(FSQL);

View File

@ -3,14 +3,12 @@ unit uIDataModuleUsuarios;
interface
uses
UCBase, UCDataConnector, UCSettings;
UCBase, UCSettings;
type
IDataModuleUsuarios = interface
['{F2D2E969-5E87-42DE-A550-E839C4607C72}']
['{35907569-6900-4567-91AC-4EAC14F3D43B}']
procedure InicializarUserControl (AUserControl : TUserControl);
function GetDataConnector : TUCDataConnector;
property DataConnector : TUCDataConnector read GetDataConnector;
end;
implementation

View File

@ -15,6 +15,7 @@ object fEditorLogin: TfEditorLogin
OldCreateOrder = False
Position = poScreenCenter
OnCreate = FormCreate
OnDestroy = FormDestroy
OnShow = FormShow
PixelsPerInch = 96
TextHeight = 13

View File

@ -31,6 +31,7 @@ type
procedure FormShow(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormDestroy(Sender: TObject);
private
FController : IUsuariosController;
FIntentos : Integer;
@ -96,6 +97,11 @@ begin
FIntentos := 0;
end;
procedure TfEditorLogin.FormDestroy(Sender: TObject);
begin
FController := NIL;
end;
procedure TfEditorLogin.FormShow(Sender: TObject);
begin
Self.Caption := Self.Caption + ' - ' + AppFactuGES.AppVersion;

View File

@ -3,51 +3,141 @@ unit uFactuGES_App;
interface
uses
SysUtils, Classes, Forms, uUsuarios, uBizEmpresas,
uEmpresasController, JclFileUtils, uUsuariosController;
SysUtils, Classes, Forms, uUsuarios, uBizEmpresas, uControllerBase,
uEmpresasController, JclFileUtils, uUsuariosController, uHostManager;
type
TAppFactuGES = class(TObject)
private
FAppInfo : TJclFileVersionInfo;
FEmpresasController : IEmpresasController;
FUsuariosController: IUsuariosController;
FEmpresaActiva: IBizEmpresa;
function GetAppForm: TCustomForm;
TDoLoadModulesEvent = procedure;
TDoMainFormEvent = procedure;
IAppSplashForm = interface
['{9905DF57-4476-42E6-A7CD-B1479A84E220}']
procedure Show;
procedure Hide;
procedure Update;
function GetMensaje: String;
procedure SetMensaje(const AMensaje : String);
property Mensaje : String read GetMensaje write SetMensaje;
end;
IAppFactuGES = interface
['{FB6A0F3C-C1D1-462D-AFD4-2A368F85E920}']
function GetMainForm: TCustomForm;
function GetEmpresasController: IEmpresasController;
function GetUsuariosController: IUsuariosController;
function GetAppName: String;
function GetAppVersion: String;
function GetUsuarioActivo: TUsuario;
protected
procedure InitializeInstance; virtual;
procedure DestroyInstance; virtual;
public
class function NewInstance: TObject; override;
procedure FreeInstance; override;
class function RefCount: Integer;
procedure CambarEmpresa(const AIDEmpresa : Integer);
function GetEmpresaActiva: IBizEmpresa;
function GetModuleManager : THostManager;
function GetTerminated: Boolean;
function GetLoadModulesEvent : TDoLoadModulesEvent;
procedure SetLoadModulesEvent (ALoadModulesEvent : TDoLoadModulesEvent);
function GetDoMainFormEvent : TDoMainFormEvent;
procedure SetDoMainFormEvent (AMainFormEvent : TDoMainFormEvent);
function GetAppSplashForm : IAppSplashForm;
procedure SetAppSplashForm (AAppSplashForm : IAppSplashForm);
procedure CambiarEmpresa(const AIDEmpresa : Integer);
procedure ShowSplashForm;
procedure HideSplashForm;
procedure Run;
procedure Terminate;
property AppVersion : String read GetAppVersion;
property AppName : String read GetAppName;
property AppForm : TCustomForm read GetAppForm;
property EmpresaActiva : IBizEmpresa read FEmpresaActiva;
property MainForm : TCustomForm read GetMainForm;
property EmpresaActiva : IBizEmpresa read GetEmpresaActiva;
property UsuarioActivo : TUsuario read GetUsuarioActivo;
property EmpresasController : IEmpresasController read GetEmpresasController;
property UsuariosController : IUsuariosController read GetUsuariosController;
property AppSplashForm : IAppSplashForm read GetAppSplashForm write SetAppSplashForm;
property ModuleManager : THostManager read GetModuleManager;
property DoMainFormEvent : TDoMainFormEvent read GetDoMainFormEvent write SetDoMainFormEvent;
property DoLoadModulesEvent : TDoLoadModulesEvent read GetLoadModulesEvent write SetLoadModulesEvent;
property Terminated : Boolean read GetTerminated;
end;
TAppFactuGES = class(TInterfacedObject, IAppFactuGES)
private
FAppInfo : TJclFileVersionInfo;
FEmpresasController : IEmpresasController;
FUsuariosController: IUsuariosController;
FEmpresaActiva: IBizEmpresa;
FAppSplashForm : IAppSplashForm;
FHostManager : THostManager;
FTerminated : Boolean;
FDoMainFormEvent: TDoMainFormEvent;
FDoLoadModulesEvent: TDoMainFormEvent;
function GetMainForm: TCustomForm;
function GetEmpresasController: IEmpresasController;
function GetUsuariosController: IUsuariosController;
function GetAppName: String;
function GetAppVersion: String;
function GetUsuarioActivo: TUsuario;
function GetEmpresaActiva: IBizEmpresa;
function GetModuleManager : THostManager;
function GetTerminated: Boolean;
function GetLoadModulesEvent : TDoLoadModulesEvent;
procedure SetLoadModulesEvent (ALoadModulesEvent : TDoLoadModulesEvent);
function GetDoMainFormEvent : TDoMainFormEvent;
procedure SetDoMainFormEvent (AMainFormEvent : TDoMainFormEvent);
function GetAppSplashForm : IAppSplashForm;
procedure SetAppSplashForm (AAppSplashForm : IAppSplashForm);
procedure AfterLoadModule(Sender: TObject; AModuleInfo: TModuleInfo);
procedure RegisterModule(AModuleInfo : TModuleInfo);
protected
procedure DoMainForm;
procedure CargarModulos;
procedure ShowSplashForm;
procedure HideSplashForm;
procedure UpdateSplashForm;
public
constructor Create; virtual;
destructor Destroy; override;
procedure Run;
procedure Terminate;
procedure CambiarEmpresa(const AIDEmpresa : Integer);
property AppVersion : String read GetAppVersion;
property AppName : String read GetAppName;
property MainForm : TCustomForm read GetMainForm;
property EmpresaActiva : IBizEmpresa read GetEmpresaActiva;
property AppSplashForm : IAppSplashForm read GetAppSplashForm write SetAppSplashForm;
property UsuarioActivo : TUsuario read GetUsuarioActivo;
property EmpresasController : IEmpresasController read GetEmpresasController;
property UsuariosController : IUsuariosController read GetUsuariosController;
property ModuleManager : THostManager read GetModuleManager;
property DoMainFormEvent : TDoMainFormEvent read GetDoMainFormEvent write SetDoMainFormEvent;
property DoLoadModulesEvent : TDoLoadModulesEvent read GetLoadModulesEvent write SetLoadModulesEvent;
property Terminated : Boolean read GetTerminated;
end;
var
AppFactuGES : TAppFactuGES = nil;
AppFactuGES : IAppFactuGES = nil;
implementation
uses
uDataModuleBase, uUsuariosViewRegister, uEmpresasViewRegister;
cxControls, uDataModuleBase, uUsuariosViewRegister,
uEmpresasViewRegister;
var
Ref_Count : Integer = 0;
procedure TAppFactuGES.CambarEmpresa(const AIDEmpresa: Integer);
procedure TAppFactuGES.CambiarEmpresa(const AIDEmpresa: Integer);
var
Aux : IBizEmpresa;
begin
@ -60,93 +150,211 @@ begin
end;
end;
procedure TAppFactuGES.DestroyInstance;
procedure TAppFactuGES.CargarModulos;
begin
FreeAndNIL(FAppInfo);
if not Assigned(FDoLoadModulesEvent) then
raise Exception.Create('Evento para la carga de los módulos de la aplicación no asignado (CargarModulos)');
FDoLoadModulesEvent();
end;
procedure TAppFactuGES.FreeInstance;
constructor TAppFactuGES.Create;
begin
Dec(Ref_Count);
if (Ref_Count = 0) then
FTerminated := False;
FDoMainFormEvent := NIL;
FDoLoadModulesEvent := NIL;
FAppSplashForm := NIL;
FEmpresaActiva := NIL;
FUsuariosController := NIL; // Se crea la primera vez que se usa
FEmpresasController := NIL; // Se crea la primera vez que se usa
FAppInfo := TJclFileVersionInfo.Create(Application.ExeName);
FHostManager := THostManager.Create(NIL);
with FHostManager do
begin
AppFactuGES := NIL;
// Destroy private variables here
DestroyInstance;
inherited FreeInstance;
OnAfterLoad := AfterLoadModule;
// Ruta por defecto de los módulos
BPLPath := ExtractFilePath(Application.ExeName) + '\';
end;
end;
function TAppFactuGES.GetAppForm: TCustomForm;
destructor TAppFactuGES.Destroy;
begin
FAppSplashForm := NIL;
FHostManager.UnloadModules;
FreeAndNIL(FHostManager);
FEmpresaActiva := NIL;
FUsuariosController := NIL;
FEmpresasController := NIL;
FreeAndNIL(FAppInfo);
inherited;
end;
procedure TAppFactuGES.DoMainForm;
begin
if not Assigned(FDoMainFormEvent) then
raise Exception.Create('Evento para la creación del formulario principal no asignado (DoMainForm)');
FDoMainFormEvent();
end;
function TAppFactuGES.GetMainForm: TCustomForm;
begin
Result := Application.MainForm;
end;
function TAppFactuGES.GetDoMainFormEvent: TDoMainFormEvent;
begin
Result := FDoMainFormEvent;
end;
function TAppFactuGES.GetAppName: String;
begin
Result := FAppInfo.ProductName;
end;
function TAppFactuGES.GetAppSplashForm: IAppSplashForm;
begin
Result := FAppSplashForm;
end;
function TAppFactuGES.GetAppVersion: String;
begin
Result := FAppInfo.ProductVersion;
end;
function TAppFactuGES.GetEmpresaActiva: IBizEmpresa;
begin
Result := FEmpresaActiva;
end;
function TAppFactuGES.GetEmpresasController: IEmpresasController;
begin
if not Assigned(FEmpresasController) then
FEmpresasController := TEmpresasController.Create;
Result := FEmpresasController;
end;
function TAppFactuGES.GetLoadModulesEvent: TDoLoadModulesEvent;
begin
Result := FDoLoadModulesEvent;
end;
function TAppFactuGES.GetModuleManager: THostManager;
begin
Result := FHostManager;
end;
function TAppFactuGES.GetTerminated: Boolean;
begin
Result := FTerminated;
end;
function TAppFactuGES.GetUsuarioActivo: TUsuario;
begin
Result := FUsuariosController.CurrentUser;
Result := UsuariosController.CurrentUser;
end;
function TAppFactuGES.GetUsuariosController: IUsuariosController;
begin
if not Assigned(FUsuariosController) then
FUsuariosController := TUsuariosController.Create;
Result := FUsuariosController;
end;
procedure TAppFactuGES.InitializeInstance;
procedure TAppFactuGES.HideSplashForm;
begin
FEmpresaActiva := NIL;
FAppInfo := TJclFileVersionInfo.Create(Application.ExeName);
FUsuariosController := TUsuariosController.Create;
FEmpresasController := TEmpresasController.Create;
if not Assigned(FAppSplashForm) then
raise Exception.Create('AppSplashForm no asignado (HideSplashForm)');
FAppSplashForm.Hide;
end;
class function TAppFactuGES.NewInstance: TObject;
procedure TAppFactuGES.AfterLoadModule(Sender: TObject;
AModuleInfo: TModuleInfo);
begin
if (not Assigned(AppFactuGES)) then
RegisterModule(AModuleInfo);
end;
procedure TAppFactuGES.RegisterModule(AModuleInfo: TModuleInfo);
begin
AppSplashForm.Mensaje := 'Cargando ''' + AModuleInfo.Module.ModuleName + '''...';
end;
procedure TAppFactuGES.Run;
begin
if UsuariosController.StartLogin then
begin
AppFactuGES := TAppFactuGES(inherited NewInstance);
// Initialize private variables here
AppFactuGES.InitializeInstance;
ShowHourglassCursor;
try
ShowSplashForm;
CargarModulos;
DoMainForm;
finally
HideHourglassCursor;
HideSplashForm;
end;
//InicializarUI;
//Application.ProcessMessages;
//Visible := True;
//AplicarPerfil;
// Application.CreateForm();
end;
Result := AppFactuGES;
Inc(Ref_Count);
Application.Run;
Terminate;
end;
class function TAppFactuGES.RefCount: Integer;
procedure TAppFactuGES.SetDoMainFormEvent(
AMainFormEvent: TDoMainFormEvent);
begin
Result := Ref_Count;
FDoMainFormEvent := AMainFormEvent;
end;
procedure TAppFactuGES.SetAppSplashForm(AAppSplashForm: IAppSplashForm);
begin
FAppSplashForm := AAppSplashForm;
end;
procedure TAppFactuGES.SetLoadModulesEvent(
ALoadModulesEvent: TDoLoadModulesEvent);
begin
FDoLoadModulesEvent := ALoadModulesEvent;
end;
procedure TAppFactuGES.ShowSplashForm;
begin
if not Assigned(FAppSplashForm) then
raise Exception.Create('AppSplashForm no asignado (ShowSplashForm)');
FAppSplashForm.Show;
FAppSplashForm.Update;
end;
procedure TAppFactuGES.Terminate;
begin
ModuleManager.UnloadModules;
FTerminated := True;
end;
procedure TAppFactuGES.UpdateSplashForm;
begin
FAppSplashForm.Update;
end;
initialization
AppFactuGES := TAppFactuGES.Create;
// Pongo esto aquí por ahora
uUsuariosViewRegister.RegisterViews;
uEmpresasViewRegister.RegisterViews;
finalization
FreeAndNIL(AppFactuGES);
// Pongo esto aquí por ahora
uUsuariosViewRegister.UnregisterViews;
uEmpresasViewRegister.UnregisterViews;
end.

View File

@ -31,19 +31,16 @@
<DCC_BplOutput>..\..\Output\Debug\Cliente</DCC_BplOutput>
<DCC_DcpOutput>..\Lib</DCC_DcpOutput>
<DCC_Define>DEBUG</DCC_Define>
<DCC_UnitSearchPath>$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10;T:\COMPON~1\jcl\lib\d11\debug;$(BDSCOMMONDIR)\Dcp</DCC_UnitSearchPath>
<DCC_ResourcePath>$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10;T:\COMPON~1\jcl\lib\d11\debug;$(BDSCOMMONDIR)\Dcp</DCC_ResourcePath>
<DCC_ObjPath>$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10;T:\COMPON~1\jcl\lib\d11\debug;$(BDSCOMMONDIR)\Dcp</DCC_ObjPath>
<DCC_IncludePath>$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10;T:\COMPON~1\jcl\lib\d11\debug;$(BDSCOMMONDIR)\Dcp</DCC_IncludePath>
</PropertyGroup>
<ProjectExtensions>
<Borland.Personality>Delphi.Personality</Borland.Personality>
<Borland.ProjectType>Package</Borland.ProjectType>
<BorlandProject>
<BorlandProject><Delphi.Personality><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters></Parameters><Package_Options><Package_Options Name="PackageDescription">Libreria base de FactuGES</Package_Options><Package_Options Name="ImplicitBuild">True</Package_Options><Package_Options Name="DesigntimeOnly">False</Package_Options><Package_Options Name="RuntimeOnly">False</Package_Options></Package_Options><VersionInfo><VersionInfo Name="IncludeVerInfo">True</VersionInfo><VersionInfo Name="AutoIncBuild">False</VersionInfo><VersionInfo Name="MajorVer">1</VersionInfo><VersionInfo Name="MinorVer">0</VersionInfo><VersionInfo Name="Release">0</VersionInfo><VersionInfo Name="Build">0</VersionInfo><VersionInfo Name="Debug">False</VersionInfo><VersionInfo Name="PreRelease">False</VersionInfo><VersionInfo Name="Special">False</VersionInfo><VersionInfo Name="Private">False</VersionInfo><VersionInfo Name="DLL">False</VersionInfo><VersionInfo Name="Locale">3082</VersionInfo><VersionInfo Name="CodePage">1252</VersionInfo></VersionInfo><VersionInfoKeys><VersionInfoKeys Name="CompanyName"></VersionInfoKeys><VersionInfoKeys Name="FileDescription"></VersionInfoKeys><VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys><VersionInfoKeys Name="InternalName"></VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName"></VersionInfoKeys><VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys></VersionInfoKeys><Excluded_Packages>
<Excluded_Packages Name="$(BDS)\Bin\dclintraweb_90_100.bpl">VCL for the Web Design Package for CodeGear RAD Studio</Excluded_Packages>
<Excluded_Packages Name="$(BDS)\bin\dclwebsnap100.bpl">CodeGear WebSnap Components</Excluded_Packages>
<Excluded_Packages Name="$(BDS)\bin\dclsoap100.bpl">CodeGear SOAP Components</Excluded_Packages>
@ -58,7 +55,6 @@
<DelphiCompile Include="Base.dpk">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="..\ApplicationBase\JvCmpD11R..dcp" />
<DCCReference Include="..\Servicios\FactuGES_Intf.pas" />
<DCCReference Include="C:\Documents and Settings\Usuario\adortl.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\cxDataD10.dcp" />

View File

@ -1,5 +1,6 @@
object dmConexion: TdmConexion
OldCreateOrder = False
OnDestroy = DataModuleDestroy
Height = 177
Width = 121
object ROChannel: TROWinInetHTTPChannel

View File

@ -16,13 +16,14 @@ type
ROMessage: TROBinMessage;
procedure ROChannelFailure(Sender: TROTransportChannel;
anException: Exception; var Retry: Boolean);
procedure DataModuleDestroy(Sender: TObject);
private
function GetChannel: TROWinInetHTTPChannel;
function GetMessage: TROBinMessage;
function GetTargetURL: String;
procedure SetTargetURL(const Value: String);
public
function HayConexion : Boolean;
function HayConexion : Boolean;
function ProbarConexion(const ATargetURL : String): Boolean;
procedure ConfigurarConexion;
property TargetURL : String read GetTargetURL write SetTargetURL;
@ -66,6 +67,11 @@ begin
end;
end;
procedure TdmConexion.DataModuleDestroy(Sender: TObject);
begin
ROChannel.Connected := False;
end;
function TdmConexion.GetChannel: TROWinInetHTTPChannel;
begin
Result := ROChannel;

View File

@ -8,18 +8,42 @@ uses
type
ISujeto = interface;
IObservador = interface
IObservador = interface(IInterface)
['{679D5CF2-D5DC-4A52-9FF3-04AD91402483}']
procedure RecibirAviso(ASujeto: ISujeto); overload;
procedure RecibirAviso(ASujeto: ISujeto; ADataTable: IDAStronglyTypedDataTable); overload;
end;
ISujeto = interface
ISujeto = interface(IInterface)
['{CDB691CD-D1D6-4F2E-AA34-93B1CD0E6030}']
procedure AddObservador(Observador: IObservador);
procedure DeleteObservador(Observador: IObservador);
end;
{ ******************* PARA PRUEBAS ******************************************}
IMiInterface = interface(IInterface)
['{C4C3F81D-4318-457C-860A-6034617FE39E}']
function GetRefCount : Integer;
end;
TMiInterfacedObject = class(TObject, IInterface)
protected
FRefCount: Integer;
function QueryInterface(const IID: TGUID; out Obj): HResult; stdcall;
function _AddRef: Integer; stdcall;
function _Release: Integer; stdcall;
function GetRefCount : Integer;
public
procedure AfterConstruction; override;
procedure BeforeDestruction; override;
class function NewInstance: TObject; override;
property RefCount: Integer read FRefCount;
end;
{ ***************************************************************************}
TObservador = class(TInterfacedObject, IObservador)
protected
procedure RecibirAviso(ASujeto: ISujeto); overload; virtual;
@ -45,7 +69,74 @@ type
implementation
uses
SysUtils;
Dialogs, SysUtils;
function InterlockedIncrement(var I: Integer): Integer;
asm
MOV EDX,1
XCHG EAX,EDX
LOCK XADD [EDX],EAX
INC EAX
end;
function InterlockedDecrement(var I: Integer): Integer;
asm
MOV EDX,-1
XCHG EAX,EDX
LOCK XADD [EDX],EAX
DEC EAX
end;
{ TMiInterfacedObject }
procedure TMiInterfacedObject.AfterConstruction;
begin
// Release the constructor's implicit refcount
InterlockedDecrement(FRefCount);
end;
procedure TMiInterfacedObject.BeforeDestruction;
begin
if RefCount <> 0 then
Error(reInvalidPtr);
end;
function TMiInterfacedObject.GetRefCount: Integer;
begin
Result := FRefCount;
end;
// Set an implicit refcount so that refcounting
// during construction won't destroy the object.
class function TMiInterfacedObject.NewInstance: TObject;
begin
Result := inherited NewInstance;
TMiInterfacedObject(Result).FRefCount := 1;
end;
function TMiInterfacedObject.QueryInterface(const IID: TGUID; out Obj): HResult;
begin
if GetInterface(IID, Obj) then
Result := 0
else
Result := E_NOINTERFACE;
end;
function TMiInterfacedObject._AddRef: Integer;
begin
Result := InterlockedIncrement(FRefCount);
ShowMessage('_AddRef: ' + ClassName + ' - RefCount: ' + IntToStr(FRefCount));
end;
function TMiInterfacedObject._Release: Integer;
begin
Result := InterlockedDecrement(FRefCount);
ShowMessage('_Release: ' + ClassName + ' - RefCount: ' + IntToStr(FRefCount));
if Result = 0 then
Destroy;
end;
{ TSujeto }
@ -102,4 +193,5 @@ begin
//
end;
end.

View File

@ -1620,4 +1620,8 @@ object dmBase: TdmBase
Left = 184
Top = 16
end
object JvLogFile: TJvLogFile
Left = 184
Top = 80
end
end

View File

@ -3,10 +3,10 @@ unit uDataModuleBase;
interface
uses
Controls, PngImageList, JvComponent, JvNavigationPane, TBXSwitcher,
Controls, SyncObjs, PngImageList, JvComponent, JvNavigationPane, TBXSwitcher,
TBXOffice2003Theme, Classes, ImgList,
DataAbstract4_Intf, uDADataTable, JvAppStorage, JvAppRegistryStorage, cxintl,
JvComponentBase, cxIntlPrintSys3;
JvComponentBase, cxIntlPrintSys3, JvLogFile;
type
TdmBase = class(TDataModule)
@ -15,21 +15,26 @@ type
TBXSwitcher: TTBXSwitcher;
cxIntl: TcxIntl;
cxIntlPrintSys31: TcxIntlPrintSys3;
JvLogFile: TJvLogFile;
procedure DAClientDataModuleCreate(Sender: TObject);
procedure DataModuleDestroy(Sender: TObject);
private
FOnThemeChange: TNotifyEvent;
FEscribirLog : TCriticalSection;
procedure IniciarLog;
procedure DetenerLog;
procedure InitStyleManager;
procedure OnTBXThemeChange(Sender: TObject);
procedure LeerConfiguracion;
public
procedure EscribirLog(const AMensaje : String);
procedure SalvarConfiguracion;
property OnThemeChange: TNotifyEvent read FOnThemeChange write
FOnThemeChange;
end;
var
dmBase: TdmBase;
dmBase: TdmBase = nil;
implementation
@ -44,8 +49,7 @@ uses
}
procedure TdmBase.DAClientDataModuleCreate(Sender: TObject);
begin
dmConexion := TdmConexion.Create(NIL);
dmConfiguracion := TdmConfiguracion.Create(NIL);
IniciarLog;
TBXSwitcher.OnThemeChange := OnTBXThemeChange;
TBXSetTheme('Office2003');
@ -53,6 +57,17 @@ begin
LeerConfiguracion;
end;
procedure TdmBase.IniciarLog;
begin
FEscribirLog := TCriticalSection.Create;
JvLogFile.Active := False;
JvLogFile.FileName := ExtractFilePath(Application.ExeName) + 'ClientLog.txt';
JvLogFile.AutoSave := True;
JvLogFile.Active := True;
JvLogFile.Clear;
end;
procedure TdmBase.InitStyleManager;
begin
if not USE_THEMES then
@ -99,14 +114,22 @@ end;
procedure TdmBase.DataModuleDestroy(Sender: TObject);
begin
FreeANDNIL(dmConfiguracion);
FreeAndNil(dmConexion);
DetenerLog;
end;
initialization
dmBase := TdmBase.Create(NIL);
procedure TdmBase.DetenerLog;
begin
FreeAndNIL(FEscribirLog);
end;
finalization
dmBase.Free;
procedure TdmBase.EscribirLog(const AMensaje: String);
begin
FEscribirLog.Acquire;
try
JvLogFile.Add(AMensaje);
finally
FEscribirLog.Release;
end;
end;
end.

View File

@ -1,10 +1,13 @@
program FactuGES;
uses
ExceptionLog,
Forms,
Windows,
SysUtils,
uFactuGES_App,
Dialogs,
uDataModuleBase,
uPantallaPrincipal in 'uPantallaPrincipal.pas' {fPantallaPrincipal},
uMenuUtils in 'Utiles\uMenuUtils.pas',
uSplash in 'uSplash.pas' {SplashScreen},
@ -12,35 +15,26 @@ uses
uNavPaneController in 'uNavPaneController.pas',
uNavPaneUtils in 'Utiles\uNavPaneUtils.pas',
uMainMenuController in 'uMainMenuController.pas',
uClienteUtils in 'Utiles\uClienteUtils.pas';
uClienteUtils in 'Utiles\uClienteUtils.pas',
uBootStrap in 'uBootStrap.pas';
{$R *.res}
var
Version : String;
begin
Application.Initialize;
Application.ShowMainForm := False;
ReportMemoryLeaksOnShutdown := True;
// ¡¡¡Fallo en Delphi 2007!!!
// Tengo que ponerlo a false porque si no el formulario principal no se puede poner por encima de los formularios hijos.
// Luego, en el formulario principal cambio los paramátros para obligar a que aparezca el icono en la barra de tareas.
Application.MainFormOnTaskbar := False;
Application.Title := AppFactuGES.AppName;
uBootStrap.Initialize;
uBootStrap.Run; // <- Aquí dentro esta Application.Run
uBootStrap.Terminate;
{ fActualizacion := TfActualizacion.Create(Application);
try
if fActualizacion.HayConfiguracion then
fActualizacion.Actualizar;
Version := fActualizacion.DarVersion;
finally
FreeAndNIL(fActualizacion);
end;}
Application.CreateForm(TfPantallaPrincipal, fPantallaPrincipal);
Application.Run;
Application.Terminate;
//Application.Terminate; //<- No descomentar para así ver los Memory Leaks
end.

View File

@ -45,13 +45,14 @@
<DCC_ResourcePath>$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10;T:\COMPON~1\jcl\lib\d11\debug;$(BDSCOMMONDIR)\Dcp;..\Lib;..\Modulos\Lib</DCC_ResourcePath>
<DCC_ObjPath>$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10;T:\COMPON~1\jcl\lib\d11\debug;$(BDSCOMMONDIR)\Dcp;..\Lib;..\Modulos\Lib</DCC_ObjPath>
<DCC_IncludePath>$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10;T:\COMPON~1\jcl\lib\d11\debug;$(BDSCOMMONDIR)\Dcp;..\Lib;..\Modulos\Lib</DCC_IncludePath>
<DCC_Define>DEBUG;</DCC_Define>
<DCC_Define>DEBUG;EUREKALOG;EUREKALOG_VER6</DCC_Define>
</PropertyGroup>
<ProjectExtensions>
<Borland.Personality>Delphi.Personality</Borland.Personality>
<Borland.ProjectType>VCLApplication</Borland.ProjectType>
<BorlandProject>
<BorlandProject><Delphi.Personality><Parameters><Parameters Name="DebugSourceDirs">T:\Codigo (Luis Leon)\Source\Modulos\Pedidos de cliente\Controller\</Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters></Parameters><Language><Language Name="RootDir">C:\Archivos de programa\Borland\Delphi7\Bin\</Language></Language><VersionInfo><VersionInfo Name="IncludeVerInfo">True</VersionInfo><VersionInfo Name="AutoIncBuild">False</VersionInfo><VersionInfo Name="MajorVer">2</VersionInfo><VersionInfo Name="MinorVer">2</VersionInfo><VersionInfo Name="Release">2</VersionInfo><VersionInfo Name="Build">0</VersionInfo><VersionInfo Name="Debug">False</VersionInfo><VersionInfo Name="PreRelease">False</VersionInfo><VersionInfo Name="Special">False</VersionInfo><VersionInfo Name="Private">False</VersionInfo><VersionInfo Name="DLL">False</VersionInfo><VersionInfo Name="Locale">3082</VersionInfo><VersionInfo Name="CodePage">1252</VersionInfo></VersionInfo><VersionInfoKeys><VersionInfoKeys Name="CompanyName">Rodax Software S.L.</VersionInfoKeys><VersionInfoKeys Name="FileDescription"></VersionInfoKeys><VersionInfoKeys Name="FileVersion">2.2.2.0</VersionInfoKeys><VersionInfoKeys Name="InternalName">FactuGES</VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName">FactuGES</VersionInfoKeys><VersionInfoKeys Name="ProductVersion">2.1.4</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys></VersionInfoKeys><Excluded_Packages>
<Excluded_Packages Name="$(BDS)\bin\vclhie100.bpl">Internet Explorer Hosting Support Package</Excluded_Packages>
<Excluded_Packages Name="$(BDS)\bin\applet100.bpl">CodeGear Control Panel Applet Package</Excluded_Packages>
<Excluded_Packages Name="$(BDS)\bin\dclwebsnap100.bpl">CodeGear WebSnap Components</Excluded_Packages>
<Excluded_Packages Name="$(BDS)\bin\dclsoap100.bpl">CodeGear SOAP Components</Excluded_Packages>
@ -70,6 +71,7 @@
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="uAcercaDe.pas" />
<DCCReference Include="uBootStrap.pas" />
<DCCReference Include="uMainMenuController.pas" />
<DCCReference Include="uNavPaneController.pas" />
<DCCReference Include="uPantallaPrincipal.pas">
@ -86,7 +88,7 @@
<!-- EurekaLog First Line
[Exception Log]
EurekaLog Version=6006
Activate=0
Activate=1
Activate Handle=1
Save Log File=1
Foreground Tab=0
@ -147,7 +149,7 @@ ZipPassword=
PreBuildEvent=
PostSuccessfulBuildEvent=
PostFailureBuildEvent=
ExceptionDialogType=2
ExceptionDialogType=3
Count=0
EMail Message Line Count=0
loNoDuplicateErrors=0
@ -238,7 +240,7 @@ boSaveCompressedCopyInCaseOfError=0
boHandleSafeCallExceptions=1
boCallRTLExceptionEvent=0
boCatchHandledExceptions=0
loCatchLeaks=1
loCatchLeaks=0
loGroupsSonLeaks=1
loHideBorlandLeaks=1
loFreeAllLeaks=1

View File

@ -12,6 +12,7 @@ STRINGTABLE
BEGIN
END
/* C:\Archivos de programa\EurekaLog 6\Delphi11\DIALOG.RES */
/* c:\archivos de programa\codegear\rad studio\5.0\lib\WindowsXP.res */
/* C:\Codigo Tecsitel\Lib\jvcl\JvXPCore.res */
/* C:\Codigo Tecsitel\Source\Cliente\uSplash.dfm */

View File

@ -8,8 +8,11 @@
resources were bound to the produced executable.
*/
/* c:\archivos de programa\codegear\rad studio\5.0\lib\WindowsXP.res */
/* C:\Archivos de programa\EurekaLog 6\Delphi11\DIALOG.RES */
/* C:\Codigo Tecsitel\Lib\jvcl\JvXPCore.res */
/* C:\Codigo Tecsitel\Source\Cliente\uSplash.dfm */
/* C:\Codigo Tecsitel\Source\Cliente\uAcercaDe.dfm */
/* C:\Codigo Tecsitel\Source\Cliente\uPantallaPrincipal.dfm */
/* c:\archivos de programa\codegear\rad studio\5.0\lib\WindowsXP.res */
/* uAcercaDe.dfm */
/* uSplash.dfm */
/* uPantallaPrincipal.dfm */
/* uBootStrap.dfm */
/* Unit1.dfm */

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,75 @@
unit uBootStrap;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, uSplash, uFactuGES_App, StdCtrls;
procedure Initialize;
procedure Run;
procedure Terminate;
implementation
uses
uDataModuleBase, uDataModuleConexion, uDataModuleConfiguracion,
uMainMenuController, uNavPaneController, uPantallaPrincipal;
procedure DoAppLoadModules;
begin
with AppFactuGES.ModuleManager do
begin
LoadModule('FormasPago_plugin.bpl');
LoadModule('TiposIVA_plugin.bpl');
LoadModule('Familias_plugin.bpl');
LoadModule('Contactos_plugin.bpl');
end;
end;
procedure DoAppMainForm;
begin
Application.CreateForm(TfPantallaPrincipal, fPantallaPrincipal);
end;
procedure Initialize;
begin
dmConexion := TdmConexion.Create(NIL);
dmConfiguracion := TdmConfiguracion.Create(NIL);
dmBase := TdmBase.Create(NIL);
AppFactuGES := TAppFactuGES.Create;
with AppFactuGES do
begin
AppSplashForm := TAppSplashForm.Create;
DoMainFormEvent := DoAppMainForm;
DoLoadModulesEvent := DoAppLoadModules;
end;
NavPaneController := TNavPaneController.Create;
MainMenuController := TMainMenuController.Create;
end;
procedure Run;
begin
AppFactuGES.Run;
repeat
//Nada
until AppFactuGES.Terminated;
end;
procedure Terminate;
begin
FreeANDNIL(MainMenuController);
FreeANDNIL(NavPaneController);
AppFactuGES := NIL;
FreeANDNIL(dmBase);
FreeANDNIL(dmConfiguracion);
FreeAndNil(dmConexion);
Application.ProcessMessages
end;
end.

View File

@ -64,7 +64,7 @@ end;
procedure TMainMenuController.CambiarEmpresaClick(Sender: TObject);
begin
AppFactuGES.CambarEmpresa((Sender as TMenuItem).Tag);
AppFactuGES.CambiarEmpresa((Sender as TMenuItem).Tag);
end;
procedure TMainMenuController.InitMainMenu;
@ -133,11 +133,5 @@ begin
uMenuUtils.SortMenuByTag(FMainMenu);
end;
initialization
MainMenuController := TMainMenuController.Create;
finalization
MainMenuController.Free;
MainMenuController := NIL;
end.

View File

@ -220,11 +220,5 @@ begin
FNavigationPane := Value;
end;
initialization
NavPaneController := TNavPaneController.Create;
finalization
NavPaneController.Free;
NavPaneController := NIL;
end.

View File

@ -13,10 +13,12 @@ object fPantallaPrincipal: TfPantallaPrincipal
Menu = HostMenu
OldCreateOrder = False
Position = poScreenCenter
Visible = True
WindowState = wsMaximized
OnCloseQuery = FormCloseQuery
OnCreate = FormCreate
OnDestroy = FormDestroy
OnShow = FormShow
PixelsPerInch = 96
TextHeight = 13
object pnlContenido: TTBXAlignmentPanel
@ -227,11 +229,11 @@ object fPantallaPrincipal: TfPantallaPrincipal
end
object XPManifest1: TXPManifest
Left = 248
Top = 48
Top = 88
end
object GeneralActionList: TActionList
Left = 312
Top = 173
Left = 288
Top = 85
object actSalir: TAction
Tag = -9000
Category = 'Archivo'
@ -432,12 +434,6 @@ object fPantallaPrincipal: TfPantallaPrincipal
Top = 181
Bitmap = {}
end
object HostManager: THostManager
MainMenu = HostMenu
OnAfterLoad = HostManagerAfterLoad
Left = 292
Top = 47
end
object StyleManagerButtons: TJvNavPaneStyleManager
Colors.ButtonColorFrom = clWindow
Colors.ButtonColorTo = clWindow
@ -487,21 +483,21 @@ object fPantallaPrincipal: TfPantallaPrincipal
'JvNavigationPane.Visible'
'TBXStatusBar1.Visible')
StoredValues = <>
Left = 472
Top = 120
Left = 248
Top = 128
end
object JvAppRegistryStorage: TJvAppRegistryStorage
StorageOptions.BooleanStringTrueValues = 'TRUE, YES, Y'
StorageOptions.BooleanStringFalseValues = 'FALSE, NO, N'
Root = 'Software\%APPL_NAME%'
SubStorages = <>
Left = 504
Left = 288
Top = 128
end
object ApplicationEvents: TApplicationEvents
OnException = ApplicationEventsException
Left = 152
Top = 174
Left = 160
Top = 182
end
object HostMenu: TJvMainMenu
Images = ModulesSmallImageList
@ -513,8 +509,8 @@ object fPantallaPrincipal: TfPantallaPrincipal
ImageSize.Height = 0
ImageSize.Width = 0
ItemPainter = JvXPMenuItemPainter1
Left = 384
Top = 256
Left = 248
Top = 168
object Archivo2_OLD: TMenuItem
Tag = -9000
Caption = 'Archivo'
@ -622,8 +618,8 @@ object fPantallaPrincipal: TfPantallaPrincipal
object JvXPMenuItemPainter1: TJvXPMenuItemPainter
SelectionFrameBrush.Color = 13811126
SelectionFramePen.Color = 6956042
Left = 424
Top = 256
Left = 288
Top = 168
end
object StatusPanelImageList: TPngImageList
PngImages = <
@ -677,8 +673,8 @@ object fPantallaPrincipal: TfPantallaPrincipal
Name = 'PngImage1'
Background = clWindow
end>
Left = 267
Top = 333
Left = 251
Top = 213
Bitmap = {}
end
end

View File

@ -29,7 +29,6 @@ type
JvNavigationPane: TJvNavigationPane;
pnlMain: TTBXAlignmentPanel;
JvSyncSplitter1: TJvSyncSplitter;
HostManager: THostManager;
actLogin: TAction;
StyleManagerButtons: TJvNavPaneStyleManager;
JvFormStorage: TJvFormStorage;
@ -84,7 +83,6 @@ type
Perfiles1: TMenuItem;
procedure FormCreate(Sender: TObject);
procedure FormDestroy(Sender: TObject);
procedure HostManagerAfterLoad(Sender: TObject; AModuleInfo: TModuleInfo);
procedure Salir1Click(Sender: TObject);
procedure actSalirExecute(Sender: TObject);
procedure actLoginExecute(Sender: TObject);
@ -107,6 +105,7 @@ type
procedure Informacindeempresa1Click(Sender: TObject);
procedure Usuarios1Click(Sender: TObject);
procedure Perfiles1Click(Sender: TObject);
procedure FormShow(Sender: TObject);
private
FContenido : TCustomEditor;
procedure ShowEmbedded(AEditor : ICustomEditor);
@ -114,11 +113,9 @@ type
procedure AplicarPerfil;
procedure RefrescarUI;
procedure InicializarUI;
procedure CargarModulos;
procedure OnThemeChange(Sender: TObject);
procedure RegisterModule(AModuleInfo : TModuleInfo);
procedure ExecuteActionMenu(Sender : TObject);
procedure WMSysCommand(var Msg: TMessage); message WM_SYSCOMMAND;
procedure WMSysCommand(var Msg: TMessage); message WM_SYSCOMMAND;
protected
function GetWorkPanel : TWinControl;
procedure CreateParams(var Params: TCreateParams); override;
@ -159,35 +156,23 @@ procedure TfPantallaPrincipal.FormCreate(Sender: TObject);
begin
ApplicationEvents.Activate;
Caption := AppFactuGES.AppName + ' ' + AppFactuGES.AppVersion;
SplashScreen := TSplashScreen.Create(Application) ;
SplashScreen.Show;
JvNavigationPane.StyleManager := dmBase.StyleManager;
dmBase.OnThemeChange := Self.OnThemeChange;
Self.OnThemeChange(Self); // Forzar el refresco de los colores del tema activo
with HostManager do
begin
BPLPath := ExtractFilePath(Application.ExeName) + '\';
MainMenu := Self.Menu;
MainForm := Self;
OnAfterLoad := HostManagerAfterLoad;
end;
actLogin.Execute;
end;
procedure TfPantallaPrincipal.FormDestroy(Sender: TObject);
begin
// ReleaseEmbedded;
HostManager.UnloadModules;
ApplicationEvents.CancelDispatch;
// ReleaseEmbedded;
ApplicationEvents.CancelDispatch;
end;
procedure TfPantallaPrincipal.HostManagerAfterLoad(Sender: TObject;
AModuleInfo: TModuleInfo);
procedure TfPantallaPrincipal.FormShow(Sender: TObject);
begin
RegisterModule(AModuleInfo);
InicializarUI;
end;
procedure TfPantallaPrincipal.RefrescarUI;
@ -212,15 +197,6 @@ begin
TBXStatusBar1.Panels[1].Caption := '';
end;
procedure TfPantallaPrincipal.RegisterModule(AModuleInfo : TModuleInfo);
var
AModule: TModuleController;
begin
AModule := AModuleInfo.Module;
SplashScreen.Texto := 'Cargando ''' + AModule.ModuleName + '''...';
end;
procedure TfPantallaPrincipal.ReleaseEmbedded;
begin
if Assigned(FContenido) then
@ -310,7 +286,6 @@ end;
procedure TfPantallaPrincipal.Informacindeempresa1Click(Sender: TObject);
begin
//
AppFactuGES.EmpresasController.Ver(AppFactuGES.EmpresaActiva);
end;
@ -319,14 +294,14 @@ var
AListaEmpresas : IBizEmpresa;
i : Integer;
begin
for i := 0 to HostManager.ModulesCount - 1 do
MainMenuController.RegisterModule(HostManager.Modules[i]);
for i := 0 to AppFactuGES.ModuleManager.ModulesCount - 1 do
MainMenuController.RegisterModule(AppFactuGES.ModuleManager.Modules[i]);
MainMenuController.SortMenuByTag;
MainMenuController.InitMainMenu;
for i := 0 to HostManager.ModulesCount - 1 do
NavPaneController.RegisterModule(HostManager.Modules[i]);
for i := 0 to AppFactuGES.ModuleManager.ModulesCount - 1 do
NavPaneController.RegisterModule(AppFactuGES.ModuleManager.Modules[i]);
NavPaneController.InitNavPane;
@ -350,28 +325,32 @@ end;
procedure TfPantallaPrincipal.actLoginExecute(Sender: TObject);
begin
HostManager.UnloadModules;
//-- HostManager.UnloadModules;
if AppFactuGES.UsuariosController.StartLogin then
begin
ShowHourglassCursor;
SplashScreen.Update;
Application.ProcessMessages;
CargarModulos;
try
InicializarUI;
{-- try
if AppFactuGES.UsuariosController.StartLogin then
begin
ShowHourglassCursor;
// SplashScreen.Update;
Application.ProcessMessages;
Visible := True;
AplicarPerfil;
finally
SplashScreen.Update;
SplashScreen.Hide;
FreeAndNIL(SplashScreen);
HideHourglassCursor;
end;
end
else
Application.Terminate;
CargarModulos;
try
InicializarUI;
Application.ProcessMessages;
Visible := True;
AplicarPerfil;
finally
HideHourglassCursor;
end;
end
else
Close;
finally
// SplashScreen.Update;
// SplashScreen.Hide;
// SplashScreen.Release;
end;
--}
end;
procedure TfPantallaPrincipal.actMenuComprasExecute(Sender: TObject);
@ -476,56 +455,17 @@ begin
DefaultHandler(Msg);
end;
procedure TfPantallaPrincipal.CargarModulos;
begin
HostManager.LoadModule('FormasPago_plugin.bpl');
HostManager.LoadModule('TiposIVA_plugin.bpl');
HostManager.LoadModule('Familias_plugin.bpl');
HostManager.LoadModule('Contactos_plugin.bpl');
// HostManager.LoadModule('Almacenes_plugin.bpl');
// HostManager.LoadModule('Articulos_plugin.bpl');
// HostManager.LoadModule('Inventario_plugin.bpl');
// HostManager.LoadModule('RecibosCliente_plugin.bpl');
// HostManager.LoadModule('RemesasCliente_plugin.bpl');
// HostManager.LoadModule('FacturasCliente_plugin.bpl');
// HostManager.LoadModule('RecibosProveedor_plugin.bpl');
// HostManager.LoadModule('FacturasProveedor_plugin.bpl');
{
HostManager.LoadModule('Presupuestos_plugin.bpl');
HostManager.LoadModule('Montajes_plugin.bpl');
HostManager.LoadModule('PedidosProveedor_plugin.bpl');
HostManager.LoadModule('PedidosCliente_plugin.bpl');
HostManager.LoadModule('AlbaranesProveedor_plugin.bpl');
HostManager.LoadModule('AlbaranesCliente_plugin.bpl');
HostManager.LoadModule('BancaElectronica_plugin.bpl');
HostManager.LoadModule('Comisiones_plugin.bpl');
HostManager.LoadModule('TiendaWeb_plugin.bpl');
HostManager.LoadModule('HistoricoMovimientos_plugin.bpl');
HostManager.LoadModule('RemesasProveedor_plugin.bpl');
HostManager.LoadModule('Referencias_plugin.bpl');
HostManager.LoadModule('Informes_plugin.bpl');
HostManager.LoadModule('InfVentasArticulo_plugin.bpl');
HostManager.LoadModule('InfMargenArticulo_plugin.bpl');
HostManager.LoadModule('PedidosMontaje_plugin.bpl');
HostManager.LoadModule('CobrosMontaje_plugin.bpl');
HostManager.LoadModule('MontajesDetalle_plugin.bpl');
HostManager.LoadModule('MontajesCompleto_plugin.bpl');
}
end;
constructor TfPantallaPrincipal.Create(AOwner: TComponent);
begin
inherited;
FContenido := NIL;
with AppFactuGES.ModuleManager do
begin
MainMenu := Self.Menu;
MainForm := Self;
end;
with NavPaneController do
begin
SmallImages := ModulesSmallImageList;
@ -579,7 +519,7 @@ procedure TfPantallaPrincipal.actAcercaExecute(Sender: TObject);
begin
with TfAcercaDe.Create(NIL) do
try
HostManager := Self.HostManager;
//--HostManager := Self.HostManager;
ShowModal;
finally
Free;
@ -623,7 +563,7 @@ begin
//Se libera el contenido que tenga ya que cambiamos de empresa;
ReleaseEmbedded;
AppFactuGES.CambarEmpresa(JvNavigationPane.ActivePage.Tag);
AppFactuGES.CambiarEmpresa(JvNavigationPane.ActivePage.Tag);
RefrescarUI;
end;

File diff suppressed because it is too large Load Diff

View File

@ -4,53 +4,76 @@ interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, JvGIF, StdCtrls;
Dialogs, ExtCtrls, JvGIF, StdCtrls, uFactuGES_App;
type
TSplashScreen = class(TForm)
Panel1: TPanel;
lblTexto: TLabel;
Image1: TImage;
procedure Image1Click(Sender: TObject);
private
function GetTexto: String;
procedure SetTexto(const Value: String);
{ Private declarations }
public
property Texto : String read GetTexto write SetTexto;
procedure ShowAsAbout;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
end;
TAppSplashForm = class(TInterfacedObject, IAppSplashForm)
private
FSplashScreen: TSplashScreen;
function GetMensaje: String;
procedure SetMensaje(const AMensaje : String);
public
constructor Create;
destructor Destroy; override;
procedure Show;
procedure Hide;
procedure Update;
property Mensaje : String read GetMensaje write SetMensaje;
end;
var
SplashScreen: TSplashScreen;
implementation
{$R *.dfm}
{ TSplashScreen }
{ TAppSplash }
procedure TSplashScreen.ShowAsAbout;
constructor TAppSplashForm.Create;
begin
Image1.OnClick := Image1Click;
ShowModal;
FSplashScreen := TSplashScreen.Create(NIL)
end;
procedure TSplashScreen.Image1Click(Sender: TObject);
destructor TAppSplashForm.Destroy;
begin
Close;
FSplashScreen.Release;
inherited;
end;
function TSplashScreen.GetTexto: String;
function TAppSplashForm.GetMensaje: String;
begin
Result := lblTexto.Caption;
FSplashScreen.lblTexto.Caption;
end;
procedure TSplashScreen.SetTexto(const Value: String);
procedure TAppSplashForm.Hide;
begin
lblTexto.Caption := Value;
Self.Update;
FSplashScreen.Hide;
end;
procedure TAppSplashForm.SetMensaje(const AMensaje: String);
begin
FSplashScreen.lblTexto.Caption := AMensaje;
end;
procedure TAppSplashForm.Show;
begin
FSplashScreen.Show;
end;
procedure TAppSplashForm.Update;
begin
FSplashScreen.Update;
end;
procedure TSplashScreen.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;
end.

View File

@ -40,10 +40,10 @@
<DCC_HppOutput>.\</DCC_HppOutput>
<DCC_BplOutput>..\..\Output\Debug\Cliente</DCC_BplOutput>
<DCC_DcpOutput>..\Lib</DCC_DcpOutput>
<DCC_UnitSearchPath>..\Lib</DCC_UnitSearchPath>
<DCC_ResourcePath>..\Lib</DCC_ResourcePath>
<DCC_ObjPath>..\Lib</DCC_ObjPath>
<DCC_IncludePath>..\Lib</DCC_IncludePath>
<DCC_UnitSearchPath>$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10;T:\COMPON~1\jcl\lib\d11\debug;$(BDSCOMMONDIR)\Dcp;..\Lib</DCC_UnitSearchPath>
<DCC_ResourcePath>$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10;T:\COMPON~1\jcl\lib\d11\debug;$(BDSCOMMONDIR)\Dcp;..\Lib</DCC_ResourcePath>
<DCC_ObjPath>$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10;T:\COMPON~1\jcl\lib\d11\debug;$(BDSCOMMONDIR)\Dcp;..\Lib</DCC_ObjPath>
<DCC_IncludePath>$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10;T:\COMPON~1\jcl\lib\d11\debug;$(BDSCOMMONDIR)\Dcp;..\Lib</DCC_IncludePath>
<DCC_Define>DEBUG</DCC_Define>
</PropertyGroup>
<ProjectExtensions>

View File

@ -35,4 +35,4 @@ END
/* C:\Codigo Tecsitel\Source\GUIBase\uDialogBase.dfm */
/* C:\Codigo Tecsitel\Source\GUIBase\uViewGrid.dfm */
/* C:\Codigo Tecsitel\Source\GUIBase\GUIBase.res */
/* C:\DOCUME~1\Usuario\CONFIG~1\Temp\dtf7B.tmp */
/* C:\Codigo Tecsitel\Source\GUIBase\GUIBase.drf */

View File

@ -13,4 +13,4 @@ BEGIN
END
/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Controller\Contactos_controller.res */
/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Controller\Contactos_controller.drf */
/* C:\DOCUME~1\Usuario\CONFIG~1\Temp\dtf5D.tmp */

View File

@ -12,9 +12,9 @@ STRINGTABLE
BEGIN
END
/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Data\uDataModuleContactos.DFM */
/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Data\uDataModuleContactos.dfm */
/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Data\uDataModuleClientes.dfm */
/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Data\uDataModuleProveedores.dfm */
/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Data\uDataModuleEmpleados.dfm */
/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Data\Contactos_data.res */
/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Data\Contactos_data.drf */
/* C:\DOCUME~1\Usuario\CONFIG~1\Temp\dtf5B.tmp */

View File

@ -13,4 +13,4 @@ BEGIN
END
/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Model\Contactos_model.res */
/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Model\Contactos_model.drf */
/* C:\DOCUME~1\Usuario\CONFIG~1\Temp\dtf59.tmp */

View File

@ -14,4 +14,4 @@ END
/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Plugin\uPluginContactos.dfm */
/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Plugin\Contactos_plugin.res */
/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Plugin\Contactos_plugin.drf */
/* C:\DOCUME~1\Usuario\CONFIG~1\Temp\dtf61.tmp */

View File

@ -45,4 +45,4 @@ END
/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Views\uViewDatosYSeleccionProveedor.dfm */
/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Views\uViewDatosYSeleccionCliente.dfm */
/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Views\Contactos_view.res */
/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Views\Contactos_view.drf */
/* C:\DOCUME~1\Usuario\CONFIG~1\Temp\dtf5F.tmp */

View File

@ -14,4 +14,4 @@ END
/* C:\Codigo Tecsitel\Source\Modulos\Tipos de IVA\Data\uDataModuleTiposIVA.dfm */
/* C:\Codigo Tecsitel\Source\Modulos\Tipos de IVA\Data\TiposIVA_data.res */
/* C:\DOCUME~1\Usuario\CONFIG~1\Temp\dtf8B.tmp */
/* C:\DOCUME~1\Usuario\CONFIG~1\Temp\dtf47.tmp */

View File

@ -13,4 +13,4 @@ BEGIN
END
/* C:\Codigo Tecsitel\Source\Modulos\Tipos de IVA\Model\TiposIVA_model.res */
/* C:\DOCUME~1\Usuario\CONFIG~1\Temp\dtf89.tmp */
/* C:\DOCUME~1\Usuario\CONFIG~1\Temp\dtf45.tmp */

Binary file not shown.

View File

@ -30,6 +30,8 @@ uses
uSchemaUtilsServer in 'Utiles\uSchemaUtilsServer.pas',
uServerAppUtils in 'Utiles\uServerAppUtils.pas',
uSesionesUtils in 'Utiles\uSesionesUtils.pas',
schContactosServer_Intf in '..\Modulos\Contactos\Model\schContactosServer_Intf.pas',
schContactosClient_Intf in '..\Modulos\Contactos\Model\schContactosClient_Intf.pas',
uBizProveedoresServer in '..\Modulos\Contactos\Model\uBizProveedoresServer.pas',
uBizClientesServer in '..\Modulos\Contactos\Model\uBizClientesServer.pas',
uBizContactosServer in '..\Modulos\Contactos\Model\uBizContactosServer.pas',
@ -43,21 +45,19 @@ uses
schTiposIVAServer_Intf in '..\Modulos\Tipos de IVA\Model\schTiposIVAServer_Intf.pas',
schTiposIVAClient_Intf in '..\Modulos\Tipos de IVA\Model\schTiposIVAClient_Intf.pas',
schUsuariosClient_Intf in '..\ApplicationBase\Usuarios\Model\schUsuariosClient_Intf.pas',
schUsuariosServer_Intf in '..\ApplicationBase\Usuarios\Model\schUsuariosServer_Intf.pas',
schContactosClient_Intf in '..\Modulos\Contactos\Model\schContactosClient_Intf.pas',
schContactosServer_Intf in '..\Modulos\Contactos\Model\schContactosServer_Intf.pas';
schUsuariosServer_Intf in '..\ApplicationBase\Usuarios\Model\schUsuariosServer_Intf.pas';
{$R *.res}
{$R ..\Servicios\RODLFile.res}
begin
Application.Initialize;
ReportMemoryLeaksOnShutdown := True;
// ReportMemoryLeaksOnShutdown := True;
Application.Title := 'FactuGES (Servidor)';
Application.ShowMainForm := False;
Application.CreateForm(TfServerForm, fServerForm);
Application.CreateForm(TdmServer, dmServer);
Application.ShowMainForm := False;
Application.Run;
Application.Terminate;

View File

@ -1,107 +1,106 @@
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectGuid>{ebdcd25d-40d7-4146-91ec-a0ea4aa1dcd1}</ProjectGuid>
<MainSource>FactuGES_Server.dpr</MainSource>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
<DCC_DependencyCheckOutputName>..\..\Output\Debug\Servidor\FactuGES_Server.exe</DCC_DependencyCheckOutputName>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<Version>7.0</Version>
<DCC_DebugInformation>False</DCC_DebugInformation>
<DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
<DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
<DCC_MapFile>3</DCC_MapFile>
<DCC_ExeOutput>..\..\Output\Release\Servidor</DCC_ExeOutput>
<DCC_Define>RELEASE</DCC_Define>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<Version>7.0</Version>
<DCC_MapFile>3</DCC_MapFile>
<DCC_ExeOutput>..\..\Output\Debug\Servidor</DCC_ExeOutput>
<DCC_Define>DEBUG;</DCC_Define>
<DCC_GenerateStackFrames>True</DCC_GenerateStackFrames>
</PropertyGroup>
<ProjectExtensions>
<Borland.Personality>Delphi.Personality</Borland.Personality>
<Borland.ProjectType />
<BorlandProject>
<BorlandProject><Delphi.Personality><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters></Parameters><VersionInfo><VersionInfo Name="IncludeVerInfo">True</VersionInfo><VersionInfo Name="AutoIncBuild">False</VersionInfo><VersionInfo Name="MajorVer">3</VersionInfo><VersionInfo Name="MinorVer">0</VersionInfo><VersionInfo Name="Release">0</VersionInfo><VersionInfo Name="Build">0</VersionInfo><VersionInfo Name="Debug">False</VersionInfo><VersionInfo Name="PreRelease">False</VersionInfo><VersionInfo Name="Special">False</VersionInfo><VersionInfo Name="Private">False</VersionInfo><VersionInfo Name="DLL">False</VersionInfo><VersionInfo Name="Locale">3082</VersionInfo><VersionInfo Name="CodePage">1252</VersionInfo></VersionInfo><VersionInfoKeys><VersionInfoKeys Name="CompanyName"></VersionInfoKeys><VersionInfoKeys Name="FileDescription"></VersionInfoKeys><VersionInfoKeys Name="FileVersion">3.0.0.0</VersionInfoKeys><VersionInfoKeys Name="InternalName"></VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName"></VersionInfoKeys><VersionInfoKeys Name="ProductVersion">3.0.0.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys><VersionInfoKeys Name="CompileDate">domingo, 30 de septiembre de 2007 20:47</VersionInfoKeys></VersionInfoKeys><Excluded_Packages>
<Excluded_Packages Name="C:\Archivos de programa\RemObjects Software\Pascal Script\Dcu\D10\PascalScript_RO_D10.bpl">RemObjects Pascal Script - RemObjects SDK 3.0 Integration</Excluded_Packages>
</Excluded_Packages><Source><Source Name="MainSource">FactuGES_Server.dpr</Source></Source></Delphi.Personality></BorlandProject></BorlandProject>
</ProjectExtensions>
<Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets" />
<ItemGroup>
<DelphiCompile Include="FactuGES_Server.dpr">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="..\ApplicationBase\Empresas\Model\schEmpresasClient_Intf.pas" />
<DCCReference Include="..\ApplicationBase\Empresas\Model\schEmpresasServer_Intf.pas" />
<DCCReference Include="..\ApplicationBase\Empresas\Servidor\srvEmpresas_Impl.pas">
<Form>srvEmpresas</Form>
</DCCReference>
<DCCReference Include="..\ApplicationBase\Usuarios\Model\schUsuariosClient_Intf.pas" />
<DCCReference Include="..\ApplicationBase\Usuarios\Model\schUsuariosServer_Intf.pas" />
<DCCReference Include="..\ApplicationBase\Usuarios\Servidor\srvUsuarios_Impl.pas" />
<DCCReference Include="..\Modulos\Contactos\Model\schContactosClient_Intf.pas" />
<DCCReference Include="..\Modulos\Contactos\Model\schContactosServer_Intf.pas" />
<DCCReference Include="..\Modulos\Contactos\Model\uBizClientesServer.pas" />
<DCCReference Include="..\Modulos\Contactos\Model\uBizContactosServer.pas" />
<DCCReference Include="..\Modulos\Contactos\Model\uBizEmpleadosServer.pas" />
<DCCReference Include="..\Modulos\Contactos\Model\uBizProveedoresServer.pas" />
<DCCReference Include="..\Modulos\Contactos\Servidor\srvContactos_Impl.pas">
<Form>srvContactos</Form>
</DCCReference>
<DCCReference Include="..\Modulos\Familias\Model\schFamiliasClient_Intf.pas" />
<DCCReference Include="..\Modulos\Familias\Model\schFamiliasServer_Intf.pas" />
<DCCReference Include="..\Modulos\Familias\Servidor\srvFamilias_Impl.pas" />
<DCCReference Include="..\Modulos\Formas de pago\Model\schFormasPagoClient_Intf.pas" />
<DCCReference Include="..\Modulos\Formas de pago\Model\schFormasPagoServer_Intf.pas" />
<DCCReference Include="..\Modulos\Formas de pago\Servidor\srvFormasPago_Impl.pas" />
<DCCReference Include="..\Modulos\Tipos de IVA\Model\schTiposIVAClient_Intf.pas" />
<DCCReference Include="..\Modulos\Tipos de IVA\Model\schTiposIVAServer_Intf.pas" />
<DCCReference Include="..\Modulos\Tipos de IVA\Servidor\srvTiposIVA_Impl.pas" />
<DCCReference Include="..\Servicios\FactuGES_Intf.pas" />
<DCCReference Include="..\Servicios\FactuGES_Invk.pas" />
<DCCReference Include="Configuracion\srvConfiguracion_Impl.pas">
<Form>srvConfiguracion</Form>
</DCCReference>
<DCCReference Include="Configuracion\uConexionBD.pas">
<Form>frConexionBD</Form>
</DCCReference>
<DCCReference Include="Configuracion\uConfGeneral.pas">
<Form>frConfGeneral</Form>
</DCCReference>
<DCCReference Include="Configuracion\uConfiguracion.pas">
<Form>fConfiguracion</Form>
</DCCReference>
<DCCReference Include="Configuracion\uFrameConfiguracion.pas">
<Form>FrameConfiguracion</Form>
</DCCReference>
<DCCReference Include="srvLogin_Impl.pas">
<Form>srvLogin</Form>
</DCCReference>
<DCCReference Include="uAcercaDe.pas">
<Form>fAcercaDe</Form>
</DCCReference>
<DCCReference Include="uDataModuleServer.pas">
<Form>dmServer</Form>
</DCCReference>
<DCCReference Include="uServerMainForm.pas">
<Form>fServerForm</Form>
</DCCReference>
<DCCReference Include="Utiles\RegExpr.pas" />
<DCCReference Include="Utiles\uBusinessUtils.pas" />
<DCCReference Include="Utiles\uDatabaseUtils.pas" />
<DCCReference Include="Utiles\uReferenciasUtils.pas" />
<DCCReference Include="Utiles\uRestriccionesUsuarioUtils.pas" />
<DCCReference Include="Utiles\uSchemaUtilsServer.pas" />
<DCCReference Include="Utiles\uServerAppUtils.pas" />
<DCCReference Include="Utiles\uSesionesUtils.pas" />
</ItemGroup>
<PropertyGroup>
<ProjectGuid>{ebdcd25d-40d7-4146-91ec-a0ea4aa1dcd1}</ProjectGuid>
<MainSource>FactuGES_Server.dpr</MainSource>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
<DCC_DependencyCheckOutputName>..\..\Output\Debug\Servidor\FactuGES_Server.exe</DCC_DependencyCheckOutputName>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<Version>7.0</Version>
<DCC_DebugInformation>False</DCC_DebugInformation>
<DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
<DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
<DCC_MapFile>3</DCC_MapFile>
<DCC_ExeOutput>..\..\Output\Release\Servidor</DCC_ExeOutput>
<DCC_Define>RELEASE</DCC_Define>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<Version>7.0</Version>
<DCC_MapFile>3</DCC_MapFile>
<DCC_ExeOutput>..\..\Output\Debug\Servidor</DCC_ExeOutput>
<DCC_Define>DEBUG;</DCC_Define>
<DCC_GenerateStackFrames>True</DCC_GenerateStackFrames>
</PropertyGroup>
<ProjectExtensions>
<Borland.Personality>Delphi.Personality</Borland.Personality>
<Borland.ProjectType/>
<BorlandProject>
<BorlandProject><Delphi.Personality><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters></Parameters><VersionInfo><VersionInfo Name="IncludeVerInfo">True</VersionInfo><VersionInfo Name="AutoIncBuild">False</VersionInfo><VersionInfo Name="MajorVer">3</VersionInfo><VersionInfo Name="MinorVer">0</VersionInfo><VersionInfo Name="Release">0</VersionInfo><VersionInfo Name="Build">0</VersionInfo><VersionInfo Name="Debug">False</VersionInfo><VersionInfo Name="PreRelease">False</VersionInfo><VersionInfo Name="Special">False</VersionInfo><VersionInfo Name="Private">False</VersionInfo><VersionInfo Name="DLL">False</VersionInfo><VersionInfo Name="Locale">3082</VersionInfo><VersionInfo Name="CodePage">1252</VersionInfo></VersionInfo><VersionInfoKeys><VersionInfoKeys Name="CompanyName"></VersionInfoKeys><VersionInfoKeys Name="FileDescription"></VersionInfoKeys><VersionInfoKeys Name="FileVersion">3.0.0.0</VersionInfoKeys><VersionInfoKeys Name="InternalName"></VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName"></VersionInfoKeys><VersionInfoKeys Name="ProductVersion">3.0.0.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys><VersionInfoKeys Name="CompileDate">domingo, 30 de septiembre de 2007 20:47</VersionInfoKeys></VersionInfoKeys><Excluded_Packages>
<Excluded_Packages Name="C:\Archivos de programa\RemObjects Software\Pascal Script\Dcu\D10\PascalScript_RO_D10.bpl">RemObjects Pascal Script - RemObjects SDK 3.0 Integration</Excluded_Packages>
</Excluded_Packages><Source><Source Name="MainSource">FactuGES_Server.dpr</Source></Source></Delphi.Personality></BorlandProject></BorlandProject>
</ProjectExtensions>
<Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets"/>
<ItemGroup>
<DelphiCompile Include="FactuGES_Server.dpr">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="..\ApplicationBase\Empresas\Model\schEmpresasClient_Intf.pas"/>
<DCCReference Include="..\ApplicationBase\Empresas\Model\schEmpresasServer_Intf.pas"/>
<DCCReference Include="..\ApplicationBase\Empresas\Servidor\srvEmpresas_Impl.pas">
<Form>srvEmpresas</Form>
</DCCReference>
<DCCReference Include="..\ApplicationBase\Usuarios\Model\schUsuariosClient_Intf.pas"/>
<DCCReference Include="..\ApplicationBase\Usuarios\Model\schUsuariosServer_Intf.pas"/>
<DCCReference Include="..\ApplicationBase\Usuarios\Servidor\srvUsuarios_Impl.pas"/>
<DCCReference Include="..\Modulos\Contactos\Model\schContactosClient_Intf.pas"/>
<DCCReference Include="..\Modulos\Contactos\Model\schContactosServer_Intf.pas"/>
<DCCReference Include="..\Modulos\Contactos\Model\uBizClientesServer.pas"/>
<DCCReference Include="..\Modulos\Contactos\Model\uBizContactosServer.pas"/>
<DCCReference Include="..\Modulos\Contactos\Model\uBizEmpleadosServer.pas"/>
<DCCReference Include="..\Modulos\Contactos\Model\uBizProveedoresServer.pas"/>
<DCCReference Include="..\Modulos\Contactos\Servidor\srvContactos_Impl.pas">
<Form>srvContactos</Form>
</DCCReference>
<DCCReference Include="..\Modulos\Familias\Model\schFamiliasClient_Intf.pas"/>
<DCCReference Include="..\Modulos\Familias\Model\schFamiliasServer_Intf.pas"/>
<DCCReference Include="..\Modulos\Familias\Servidor\srvFamilias_Impl.pas"/>
<DCCReference Include="..\Modulos\Formas de pago\Model\schFormasPagoClient_Intf.pas"/>
<DCCReference Include="..\Modulos\Formas de pago\Model\schFormasPagoServer_Intf.pas"/>
<DCCReference Include="..\Modulos\Formas de pago\Servidor\srvFormasPago_Impl.pas"/>
<DCCReference Include="..\Modulos\Tipos de IVA\Model\schTiposIVAClient_Intf.pas"/>
<DCCReference Include="..\Modulos\Tipos de IVA\Model\schTiposIVAServer_Intf.pas"/>
<DCCReference Include="..\Modulos\Tipos de IVA\Servidor\srvTiposIVA_Impl.pas"/>
<DCCReference Include="..\Servicios\FactuGES_Intf.pas"/>
<DCCReference Include="..\Servicios\FactuGES_Invk.pas"/>
<DCCReference Include="Configuracion\srvConfiguracion_Impl.pas">
<Form>srvConfiguracion</Form>
</DCCReference>
<DCCReference Include="Configuracion\uConexionBD.pas">
<Form>frConexionBD</Form>
</DCCReference>
<DCCReference Include="Configuracion\uConfGeneral.pas">
<Form>frConfGeneral</Form>
</DCCReference>
<DCCReference Include="Configuracion\uConfiguracion.pas">
<Form>fConfiguracion</Form>
</DCCReference>
<DCCReference Include="Configuracion\uFrameConfiguracion.pas">
<Form>FrameConfiguracion</Form>
</DCCReference>
<DCCReference Include="srvLogin_Impl.pas">
<Form>srvLogin</Form>
</DCCReference>
<DCCReference Include="uAcercaDe.pas">
<Form>fAcercaDe</Form>
</DCCReference>
<DCCReference Include="uDataModuleServer.pas">
<Form>dmServer</Form>
</DCCReference>
<DCCReference Include="uServerMainForm.pas">
<Form>fServerForm</Form>
</DCCReference>
<DCCReference Include="Utiles\RegExpr.pas"/>
<DCCReference Include="Utiles\uBusinessUtils.pas"/>
<DCCReference Include="Utiles\uDatabaseUtils.pas"/>
<DCCReference Include="Utiles\uReferenciasUtils.pas"/>
<DCCReference Include="Utiles\uRestriccionesUsuarioUtils.pas"/>
<DCCReference Include="Utiles\uSchemaUtilsServer.pas"/>
<DCCReference Include="Utiles\uServerAppUtils.pas"/>
<DCCReference Include="Utiles\uSesionesUtils.pas"/>
</ItemGroup>
</Project>
<!-- EurekaLog First Line
[Exception Log]

File diff suppressed because it is too large Load Diff

View File

@ -14,7 +14,7 @@ BEGIN
BEGIN
VALUE "FileVersion", "3.0.0.0\0"
VALUE "ProductVersion", "3.0.0.0\0"
VALUE "CompileDate", "miércoles, 17 de octubre de 2007 19:00\0"
VALUE "CompileDate", "lunes, 22 de octubre de 2007 0:05\0"
END
END
BLOCK "VarFileInfo"

View File

@ -7,6 +7,7 @@ uses
procedure ShowBalloonHint(const AMensaje: String; ABalloonIcon: TBalloonFlags);
implementation
uses
@ -25,5 +26,6 @@ begin
end;
end;
end.

View File

@ -3,12 +3,10 @@ unit uDataModuleServer;
interface
uses
SysUtils, Classes, uDAEngine, uDAClasses, uDADriverManager,
uROClient, uROBinMessage, uROServer, uROIndyTCPServer, uROIndyHTTPServer,
uROSessions, uDADataTable, uDABINAdapter, IBSQLMonitor, JvComponent,
JvAppStorage, JvAppRegistryStorage, uDAInterfaces,
JvComponentBase, uROEventRepository,
SyncObjs, JvLogFile, uDAIBXDriver, uDAADODriver;
SysUtils, Classes, SyncObjs, uDAEngine, uDAIBXDriver, JvLogFile, uROSessions,
JvComponentBase, JvAppStorage, JvAppRegistryStorage, uDAClasses,
uDADriverManager, uROClient, uROBinMessage, uROServer, uROIndyTCPServer,
uROIndyHTTPServer, uDAInterfaces;
const
SERVER_PORT = '8099'; // Puerto por defecto

View File

@ -13,7 +13,6 @@ object fServerForm: TfServerForm
Font.Style = []
OldCreateOrder = False
Position = poScreenCenter
OnCreate = FormCreate
PixelsPerInch = 96
TextHeight = 13
object JvGradient1: TJvGradient
@ -1065,6 +1064,7 @@ object fServerForm: TfServerForm
object TrayIcon1: TTrayIcon
BalloonFlags = bfInfo
PopupMenu = PopupMenu1
Visible = True
Left = 240
Top = 208
end

View File

@ -7,7 +7,7 @@ uses
uROClient, uROPoweredByRemObjectsButton, uROClientIntf, uROServer,
uROBinMessage, uROIndyHTTPServer, uROIndyTCPServer, frxClass, frxPreview,
JvAppInst, JvComponentBase, ExtCtrls, JvExControls, JvGradient, XPMan,
ActnList, Menus, JvGIF;
ActnList, Menus, JvGIF, AppEvnts;
type
TfServerForm = class(TForm)
@ -35,7 +35,6 @@ type
procedure actCerrarExecute(Sender: TObject);
procedure actRestartExecute(Sender: TObject);
procedure actOpcionesExecute(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure actAcercaExecute(Sender: TObject);
procedure actConexionesExecute(Sender: TObject);
procedure JvAppInstances1CmdLineReceived(Sender: TObject;
@ -52,7 +51,7 @@ var
implementation
uses
uDataModuleServer, uConfiguracion, uAcercaDe;
uDataModuleServer, uConfiguracion, uAcercaDe, uServerAppUtils;
{$R *.dfm}
@ -82,20 +81,15 @@ procedure TfServerForm.actOpcionesExecute(Sender: TObject);
var
AForm : TForm;
begin
AForm := TfConfiguracion.Create(NIL);
AForm := TfConfiguracion.Create(Application);
try
AForm.ShowModal;
finally
AForm.Free;
AForm.Release;
actRestart.Execute;
end;
end;
procedure TfServerForm.FormCreate(Sender: TObject);
begin
TrayIcon1.Visible := True;
end;
procedure TfServerForm.JvAppInstances1CmdLineReceived(Sender: TObject;
CmdLine: TStrings);
begin
@ -104,11 +98,11 @@ end;
procedure TfServerForm.actAcercaExecute(Sender: TObject);
begin
with TfAcercaDe.Create(NIL) do
with TfAcercaDe.Create(Application) do
try
ShowModal;
finally
Free;
Release;
end;
end;