git-svn-id: https://192.168.0.254/svn/Proyectos.AlonsoYSal_FactuGES/trunk@25 9a1d36f3-7752-2d40-8ccb-50eb49674c68
179 lines
5.9 KiB
ObjectPascal
179 lines
5.9 KiB
ObjectPascal
unit uEditorFacturaProveedor;
|
||
|
||
interface
|
||
|
||
uses
|
||
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||
Dialogs, uEditorDBItem, DB, uDADataTable, JvAppStorage,
|
||
JvAppRegistryStorage, JvComponent, JvFormPlacement, ImgList,
|
||
PngImageList, StdActns, ActnList, ComCtrls, TBX, TB2Item, TB2Dock,
|
||
TB2Toolbar, ExtCtrls, JvExControls, JvNavigationPane,
|
||
uViewFacturaProveedor, uCustomView, uViewBase, uViewContenido, uViewTotales,
|
||
StdCtrls, pngimage, AppEvnts,
|
||
uBizFacturasProveedor, JvComponentBase;
|
||
|
||
type
|
||
IEditorFacturaProveedor = interface(IEditorDBItem)
|
||
['{22C02CC0-035C-4405-A610-C5734B09BB9F}']
|
||
function GetFacturaProveedor: IBizFacturasProveedor;
|
||
procedure SetFacturaProveedor(const Value: IBizFacturasProveedor);
|
||
property FacturaProveedor: IBizFacturasProveedor read GetFacturaProveedor write
|
||
SetFacturaProveedor;
|
||
end;
|
||
|
||
TfEditorFacturaProveedor = class(TfEditorDBItem, IEditorFacturaProveedor)
|
||
frViewTotales1: TfrViewTotales;
|
||
frViewFacturaProveedor1: TfrViewFacturaProveedor;
|
||
procedure actEliminarExecute(Sender: TObject);
|
||
procedure dsDataTableDataChange(Sender: TObject; Field: TField);
|
||
procedure FormShow(Sender: TObject); override;
|
||
procedure frViewDatosYSeleccionContacto1edtlNombrePropertiesChange(
|
||
Sender: TObject);
|
||
private
|
||
FFacturaProveedor: IBizFacturasProveedor;
|
||
FViewFacturaProveedor: IViewFacturaProveedor;
|
||
protected
|
||
function GetFacturaProveedor: IBizFacturasProveedor;
|
||
function GetViewFactura: IViewFacturaProveedor;
|
||
procedure SetFacturaProveedor(const Value: IBizFacturasProveedor);
|
||
procedure SetViewFactura(const Value: IViewFacturaProveedor);
|
||
property ViewFacturaProveedor: IViewFacturaProveedor read GetViewFactura write
|
||
SetViewFactura;
|
||
public
|
||
constructor Create(AOwner: TComponent); override;
|
||
destructor Destroy; override;
|
||
property FacturaProveedor: IBizFacturasProveedor read GetFacturaProveedor write
|
||
SetFacturaProveedor;
|
||
end;
|
||
|
||
var
|
||
fEditorFacturaProveedor: TfEditorFacturaProveedor;
|
||
|
||
implementation
|
||
|
||
uses uEditorUtils, uDataModuleFacturasProveedor, uBizImportesDetalleBase,
|
||
schFacturasProveedorClient_Intf, uExceptions;
|
||
|
||
{$R *.dfm}
|
||
|
||
function ShowEditorFacturaProveedor (ABizObject : TDADataTableRules) : TModalResult;
|
||
var
|
||
AEditor: TfEditorFacturaProveedor;
|
||
begin
|
||
AEditor := TfEditorFacturaProveedor.Create(Application);
|
||
try
|
||
AEditor.FacturaProveedor := (ABizObject as IBizFacturasProveedor);
|
||
Result := AEditor.ShowModal;
|
||
finally
|
||
AEditor.Release;
|
||
end;
|
||
end;
|
||
|
||
{ TfEditorFacturaProveedor }
|
||
|
||
{
|
||
**************************** TfEditorFacturaProveedor ****************************
|
||
}
|
||
constructor TfEditorFacturaProveedor.Create(AOwner: TComponent);
|
||
begin
|
||
inherited;
|
||
// ViewFacturaProveedor := CreateView(TfrViewFacturaProveedor) as IViewFacturaProveedor;
|
||
pgPaginas.ActivePageIndex := 0;
|
||
ViewFacturaProveedor := frViewFacturaProveedor1;
|
||
end;
|
||
|
||
destructor TfEditorFacturaProveedor.Destroy;
|
||
begin
|
||
FViewFacturaProveedor := NIL;
|
||
FFacturaProveedor := NIL;
|
||
inherited;
|
||
end;
|
||
|
||
procedure TfEditorFacturaProveedor.actEliminarExecute(Sender: TObject);
|
||
begin
|
||
if (Application.MessageBox('<27>Desea borrar este albar<61>n de proveedor?', 'Atenci<63>n', MB_YESNO) = IDYES) then
|
||
inherited;
|
||
end;
|
||
|
||
procedure TfEditorFacturaProveedor.dsDataTableDataChange(Sender: TObject; Field:
|
||
TField);
|
||
begin
|
||
inherited;
|
||
if Assigned(FFacturaProveedor) and (not (FFacturaProveedor.DataTable.Fetching) or
|
||
not (FFacturaProveedor.DataTable.Opening) or not (FFacturaProveedor.DataTable.Closing)) then
|
||
begin
|
||
if Length(FFacturaProveedor.NOMBRE) = 0 then
|
||
JvNavPanelHeader.Caption := 'Nueva factura de proveedor'
|
||
else
|
||
JvNavPanelHeader.Caption := 'Factura de ' + FFacturaProveedor.NOMBRE;
|
||
Caption := JvNavPanelHeader.Caption;
|
||
end;
|
||
end;
|
||
|
||
procedure TfEditorFacturaProveedor.FormShow(Sender: TObject);
|
||
begin
|
||
inherited;
|
||
|
||
if not Assigned(FViewFacturaProveedor) then
|
||
raise Exception.Create('No hay ninguna vista asignada');
|
||
|
||
if not Assigned(FacturaProveedor) then
|
||
raise Exception.Create('No hay ninguna factura asignada');
|
||
|
||
FacturaProveedor.DataTable.Active := True;
|
||
// FViewFacturaProveedor.ShowEmbedded(pagGeneral);
|
||
// FViewFacturaProveedor.SetFocus;
|
||
end;
|
||
|
||
function TfEditorFacturaProveedor.GetFacturaProveedor: IBizFacturasProveedor;
|
||
begin
|
||
Result := FFacturaProveedor;
|
||
end;
|
||
|
||
function TfEditorFacturaProveedor.GetViewFactura: IViewFacturaProveedor;
|
||
begin
|
||
Result := FViewFacturaProveedor;
|
||
end;
|
||
|
||
procedure TfEditorFacturaProveedor.SetFacturaProveedor(const Value:
|
||
IBizFacturasProveedor);
|
||
begin
|
||
FFacturaProveedor := Value;
|
||
|
||
if Assigned(FFacturaProveedor) then
|
||
begin
|
||
dsDataTable.DataTable := FFacturaProveedor.DataTable;
|
||
frViewTotales1.DADataSource.DataTable := FFacturaProveedor.DataTable;
|
||
|
||
if Assigned(FViewFacturaProveedor) then
|
||
FViewFacturaProveedor.FacturaProveedor := FFacturaProveedor;
|
||
end;
|
||
end;
|
||
|
||
procedure TfEditorFacturaProveedor.SetViewFactura(const Value:
|
||
IViewFacturaProveedor);
|
||
begin
|
||
FViewFacturaProveedor := Value;
|
||
|
||
if Assigned(FViewFacturaProveedor) and Assigned(FacturaProveedor) then
|
||
FViewFacturaProveedor.FacturaProveedor := FacturaProveedor;
|
||
end;
|
||
|
||
procedure TfEditorFacturaProveedor.frViewDatosYSeleccionContacto1edtlNombrePropertiesChange(
|
||
Sender: TObject);
|
||
begin
|
||
inherited;
|
||
if Length(frViewFacturaProveedor1.frViewDatosYSeleccionContacto1.edtlNombre.Text) = 0 then
|
||
JvNavPanelHeader.Caption := 'Nueva factura de proveedor'
|
||
else
|
||
JvNavPanelHeader.Caption := 'Factura de ' + frViewFacturaProveedor1.frViewDatosYSeleccionContacto1.edtlNombre.Text;
|
||
Caption := JvNavPanelHeader.Caption;
|
||
end;
|
||
|
||
initialization
|
||
RegisterEditor(IBizFacturasProveedor, ShowEditorFacturaProveedor, etItem);
|
||
|
||
finalization
|
||
|
||
end.
|