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.
LuisLeon_FactuGES/Source/Modulos/Empresas/Views/uEditorEmpresas.pas
2010-07-15 16:51:21 +00:00

140 lines
3.9 KiB
ObjectPascal

unit uEditorEmpresas;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, uEditorBase, ToolWin, ComCtrls, JvExControls, JvComponent,
JvNavigationPane, uViewEmpresas, uBizEmpresas, ActnList, DBActns, uViewGrid,
Menus, uDataModuleBase, ImgList, PngImageList, TB2Dock, TB2Toolbar, TBX,
TB2Item, StdActns, TB2ExtItems, TBXExtItems, TB2MRU, DB, uDADataTable,
JvFormAutoSize, uDAScriptingProvider, uDACDSDataTable, JvAppStorage,
JvAppRegistryStorage, JvFormPlacement, ExtCtrls, uCustomView, uViewBase,
uViewBarraSeleccion, pngimage, uIEditorEmpresas, uEditorGridBase,
JvComponentBase, uViewGridBase, uEmpresasController, JvExComCtrls,
JvStatusBar;
type
TfEditorEmpresas = class(TfEditorGridBase, IEditorEmpresas)
frViewEmpresas1: TfrViewEmpresas;
procedure FormShow(Sender: TObject);
private
FEmpresas: IBizEmpresa;
FController : IEmpresasController;
protected
function GetEmpresas: IBizEmpresa;
procedure SetEmpresas(const Value: IBizEmpresa);
function GetController : IEmpresasController; virtual;
procedure SetController (const Value : IEmpresasController); virtual;
procedure NuevoInterno; override;
procedure EliminarInterno; override;
procedure ModificarInterno; override;
public
procedure PonerTitulos(const ATitulo: string = ''); override;
property Empresas: IBizEmpresa read GetEmpresas write SetEmpresas;
property Controller : IEmpresasController read GetController write SetController;
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
end;
implementation
uses
uCustomEditor, uDataModuleEmpresas, //uDataModuleUsuarios,
// uEditorAlmacen,
uEditorDBBase,
cxGrid, cxGridCustomTableView; //, uListaEmpresas;
{$R *.dfm}
{
****************************** TfEditorEmpresas *******************************
}
procedure TfEditorEmpresas.FormShow(Sender: TObject);
begin
inherited;
if not Assigned(ViewGrid) then
raise Exception.Create('No hay ninguna vista asignada');
if not Assigned(Empresas) then
raise Exception.Create('No hay ningún Almacen asignado');
Empresas.DataTable.Active := True;
ViewGrid.GotoFirst;
end;
function TfEditorEmpresas.GetEmpresas: IBizEmpresa;
begin
Result := FEmpresas;
end;
function TfEditorEmpresas.GetController: IEmpresasController;
begin
Result := FController;
end;
procedure TfEditorEmpresas.ModificarInterno;
begin
inherited;
FController.Ver(Empresas);
end;
procedure TfEditorEmpresas.NuevoInterno;
begin
inherited;
FController.Anadir(Empresas);
FController.Ver(Empresas);
end;
procedure TfEditorEmpresas.PonerTitulos(const ATitulo: string);
var
FTitulo : String;
begin
// FTitulo := 'Lista de empresas - ' + dmUsuarios.EmpresaActual.NOMBRE;
inherited PonerTitulos(FTitulo);
end;
procedure TfEditorEmpresas.SetEmpresas(const Value: IBizEmpresa);
begin
FEmpresas := Value;
dsDataTable.DataTable := FEmpresas.DataTable;
if Assigned(ViewGrid) then
(ViewGrid as IViewEmpresas).Empresas := Empresas;
end;
procedure TfEditorEmpresas.SetController(const Value: IEmpresasController);
begin
FController := Value;
end;
destructor TfEditorEmpresas.Destroy;
begin
FEmpresas := NIL;
inherited;
end;
procedure TfEditorEmpresas.EliminarInterno;
begin
if (Application.MessageBox('¿Desea borrar esta empresa?', 'Atención', MB_YESNO) = IDYES) then
begin
inherited;
//Para que en el caso de no poderse realizar la operación se refresquen
//los datos y no nos permita eliminar un registro a la segunda
if not FController.Eliminar(Empresas) then
actRefrescar.Execute;
end;
end;
constructor TfEditorEmpresas.Create(AOwner: TComponent);
begin
inherited;
ViewGrid := frViewEmpresas1; //CreateView(TfrViewEmpresas) as IViewEmpresas;
end;
end.