This repository has been archived on 2024-11-28. You can view files and clone it, but cannot push or open issues or pull requests.
Noviseda_FactuGES2/Source/Modulos/Contactos/Plugin/uPluginContactos.pas
2010-07-01 17:26:52 +00:00

199 lines
6.2 KiB
ObjectPascal

unit uPluginContactos;
interface
uses
uModuleController, uInterfaces, uHostManager, Menus, Classes, ActnList,
ImgList, Controls, PngImageList, uPlugins_Intf;
type
TPluginContactos = class(TModuleController, IMCContactos)
actClientes: TAction;
actProveedores: TAction;
Compras1: TMenuItem;
ExtraImages: TPngImageList;
LargeImages: TPngImageList;
MainMenu: TMainMenu;
ModuleActionList: TActionList;
Proveedores1: TMenuItem;
Resumen1: TMenuItem;
SmallImages: TPngImageList;
Ventas1: TMenuItem;
actEmpleados: TAction;
Vendedores1: TMenuItem;
actGruposCliente: TAction;
actGruposProveedor: TAction;
actGruposEmpleado: TAction;
Categoriasdeempleado1: TMenuItem;
Gruposdeproveedor1: TMenuItem;
Da1: TMenuItem;
Empresa1: TMenuItem;
actVendedores: TAction;
Vendedores2: TMenuItem;
procedure actClientesExecute(Sender: TObject);
procedure actProveedoresExecute(Sender: TObject);
procedure actEmpleadosExecute(Sender: TObject);
procedure actGruposClienteExecute(Sender: TObject);
procedure actGruposProveedorExecute(Sender: TObject);
procedure actGruposEmpleadoExecute(Sender: TObject);
procedure actEmpleadosUpdate(Sender: TObject);
procedure actVendedoresExecute(Sender: TObject);
procedure actVendedoresUpdate(Sender: TObject);
public
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
procedure VerClientesVendedor(const ID_Vendedor: Integer;
const ANombreVendedor : String = '');
end;
implementation
{$R *.dfm}
uses
Forms, Dialogs, uGUIBase, uCustomEditor, SysUtils, uContactosController,
uClientesController, uProveedoresController, uEmpleadosController, cxControls,
uVendedoresController, uGruposClienteController, uBizGruposCliente,
uGruposProveedorController, uBizGruposProveedor, uGruposEmpleadoController,
uBizGruposEmpleado, uContactosViewRegister, uBizContactos, uFactuGES_App;
function GetModule : TModuleController;
begin
Result := TPluginContactos.Create(NIL);
end;
exports
GetModule name GET_MODULE_FUNC;
{
******************************* TModuleContactos *******************************
}
procedure TPluginContactos.actClientesExecute(Sender: TObject);
var
AClientesController : IClientesController;
AClientes : IBizCliente;
begin
try
AClientesController := TClientesController.Create;
AClientes := (AClientesController.BuscarTodos as IBizCliente);
AClientesController.VerTodos(AClientes);
finally
AClientes := Nil;
AClientesController := Nil;
end;
end;
procedure TPluginContactos.actGruposClienteExecute(Sender: TObject);
var
AGruposClienteController : IGruposClienteController;
AGruposCliente : IBizGrupoCliente;
begin
AGruposClienteController := TGruposClienteController.Create;
AGruposCliente := (AGruposClienteController.BuscarTodos as IBizGrupoCliente);
AGruposClienteController.VerTodos(AGruposCliente);
end;
procedure TPluginContactos.actGruposEmpleadoExecute(Sender: TObject);
var
AGruposEmpleadoController : IGruposEmpleadoController;
AGruposEmpleado : IBizGrupoEmpleado;
begin
AGruposEmpleadoController := TGruposEmpleadoController.Create;
AGruposEmpleado := (AGruposEmpleadoController.BuscarTodos as IBizGrupoEmpleado);
AGruposEmpleadoController.VerTodos(AGruposEmpleado);
end;
procedure TPluginContactos.actGruposProveedorExecute(Sender: TObject);
var
AGruposProveedorController : IGruposProveedorController;
AGruposProveedor : IBizGrupoProveedor;
begin
AGruposProveedorController := TGruposProveedorController.Create;
AGruposProveedor := (AGruposProveedorController.BuscarTodos as IBizGrupoProveedor);
AGruposProveedorController.VerTodos(AGruposProveedor);
end;
procedure TPluginContactos.actProveedoresExecute(Sender: TObject);
var
AProveedoresController : IProveedoresController;
AProveedores : IBizProveedor;
begin
AProveedoresController := TProveedoresController.Create;
AProveedores := (AProveedoresController.BuscarTodos as IBizProveedor);
AProveedoresController.VerTodos(AProveedores);
end;
procedure TPluginContactos.actVendedoresExecute(Sender: TObject);
var
AVendedoresController : IVendedoresController;
AVendedores : IBizVendedor;
begin
AVendedoresController := TVendedoresController.Create;
AVendedores := (AVendedoresController.BuscarTodos as IBizVendedor);
AVendedoresController.VerTodos(AVendedores);
end;
procedure TPluginContactos.actVendedoresUpdate(Sender: TObject);
begin
(Sender as TAction).Enabled := Assigned(AppFactuGES.EmpresaActiva)
end;
procedure TPluginContactos.actEmpleadosExecute(Sender: TObject);
var
AEmpleadosController : IEmpleadosController;
AEmpleados : IBizEmpleado;
begin
AEmpleadosController := TEmpleadosController.Create;
AEmpleados := (AEmpleadosController.BuscarTodos as IBizEmpleado);
AEmpleadosController.VerTodos(AEmpleados);
end;
procedure TPluginContactos.actEmpleadosUpdate(Sender: TObject);
begin
(Sender as TAction).Enabled := Assigned(AppFactuGES.EmpresaActiva);
end;
constructor TPluginContactos.Create(AOwner: TComponent);
begin
inherited;
ModuleName := MODULENAME_CONTACTOS;
uContactosViewRegister.RegisterViews;
end;
destructor TPluginContactos.Destroy;
begin
uContactosViewRegister.UnregisterViews;
inherited;
end;
procedure TPluginContactos.VerClientesVendedor(const ID_Vendedor: Integer;
const ANombreVendedor: String);
var
AClientesController : IClientesController;
AClientesVendedor : IBizCliente;
AText : String;
begin
AText := Format('Lista de clientes del vendedor %s', [ANombreVendedor]);
AClientesController := TClientesController.Create;
try
ShowHourglassCursor;
try
AClientesVendedor := AClientesController.BuscarTodosVendedor(ID_Vendedor);
finally
HideHourglassCursor;
end;
AClientesController.VerTodos(AClientesVendedor, True, AText);
finally
AClientesVendedor := NIL;
AClientesController := NIL;
end;
end;
initialization
uHostManager.RegisterModuleClass(TPluginContactos);
finalization
uHostManager.UnRegisterModuleClass(TPluginContactos);
end.