git-svn-id: https://192.168.0.254/svn/Proyectos.Tecsitel_FactuGES2/trunk@854 0c75b7a4-871f-7646-8a2f-f78d34cc349f
114 lines
3.6 KiB
ObjectPascal
114 lines
3.6 KiB
ObjectPascal
unit uEditorAlbaranDevProveedor;
|
|
|
|
interface
|
|
|
|
uses
|
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
|
Dialogs, uEditorAlbaranProveedor, dxLayoutLookAndFeels, DB, uDADataTable,
|
|
JvAppStorage, JvAppRegistryStorage, JvComponentBase, JvFormPlacement, ImgList,
|
|
PngImageList, StdActns, ActnList, uViewTotales, ComCtrls, JvExComCtrls,
|
|
JvStatusBar, uViewIncidencias, uViewDetallesBase, uViewDetallesDTO,
|
|
uViewDetallesArticulos, uViewDetallesAlbaranProveedor, uCustomView, uViewBase,
|
|
uViewAlbaranProveedor, TBX, TB2Item, TB2Dock, TB2Toolbar, pngimage, ExtCtrls,
|
|
JvExControls, JvComponent, JvNavigationPane, uIEditorAlbaranDevProveedor,
|
|
uDAInterfaces, dxGDIPlusClasses, cxControls, cxContainer, cxEdit, cxLabel;
|
|
|
|
type
|
|
TfEditorAlbaranDevProveedor = class(TfEditorAlbaranProveedor, IEditorAlbaranDevProveedor)
|
|
procedure pgPaginasChanging(Sender: TObject; var AllowChange: Boolean);
|
|
protected
|
|
//Si queremos crear otra vista para el editor heredado solo tendriamos que
|
|
//sobreescribir este metodo
|
|
procedure AsignarVista; override;
|
|
procedure GuardarInterno; override;
|
|
procedure EliminarInterno; override;
|
|
public
|
|
procedure PonerTitulos(const ATitulo: string = ''); override;
|
|
end;
|
|
|
|
implementation
|
|
|
|
{$R *.dfm}
|
|
|
|
uses
|
|
uDataTableUtils, uDialogUtils, uViewAlbaranDevProveedor;
|
|
|
|
{ TfEditorAlbaranDevProveedor }
|
|
|
|
procedure TfEditorAlbaranDevProveedor.AsignarVista;
|
|
var
|
|
AViewAlbaranDevProveedor: TfrViewAlbaranDevProveedor;
|
|
|
|
begin
|
|
AViewAlbaranDevProveedor := TfrViewAlbaranDevProveedor.create(Self);
|
|
with AViewAlbaranDevProveedor do
|
|
begin
|
|
Parent := pagGeneral;
|
|
Align := alClient;
|
|
dxLayoutControl1.LookAndFeel := dxLayoutOfficeLookAndFeel1;
|
|
end;
|
|
ViewAlbaran := AViewAlbaranDevProveedor;
|
|
end;
|
|
|
|
procedure TfEditorAlbaranDevProveedor.EliminarInterno;
|
|
begin
|
|
//inherited; <- No descomentar. No hacer la parte del padre (por el mensaje)
|
|
if (Application.MessageBox('¿Desea borrar esta orden de devolución?', 'Atención', MB_YESNO) = IDYES) then
|
|
begin
|
|
FController.Eliminar(FAlbaran);
|
|
actCerrar.Execute;
|
|
end
|
|
end;
|
|
|
|
procedure TfEditorAlbaranDevProveedor.GuardarInterno;
|
|
var
|
|
bEsNuevo : Boolean;
|
|
begin
|
|
//inherited; <- No descomentar. No hacer la parte del padre (por el mensaje)
|
|
|
|
ShowHourglassCursor;
|
|
// frViewDetallesAlbaranProveedor1.SaveGridStatus;
|
|
frViewDetallesAlbaranProveedor1.BeginUpdate;
|
|
try
|
|
bEsNuevo := FAlbaran.EsNuevo;
|
|
FController.Guardar(FAlbaran);
|
|
finally
|
|
frViewDetallesAlbaranProveedor1.EndUpdate;
|
|
// frViewDetallesAlbaranProveedor1.RestoreGridStatus;
|
|
HideHourglassCursor;
|
|
end;
|
|
if bEsNuevo then
|
|
ShowInfoMessage('La orden de devolución se ha dado de alta con el código ' + FAlbaran.REFERENCIA);
|
|
|
|
Modified := False;
|
|
end;
|
|
|
|
procedure TfEditorAlbaranDevProveedor.pgPaginasChanging(Sender: TObject;
|
|
var AllowChange: Boolean);
|
|
begin
|
|
// inherited; <- No descomentar. No quiero hacer la parte del padre
|
|
if (not Assigned(FAlbaran)) or (FAlbaran.ID_PROVEEDOR = ID_NULO) then
|
|
begin
|
|
ShowWarningMessage('Antes de introducir conceptos debe elegir un proveedor para esta orden de devolución');
|
|
AllowChange := False;
|
|
end;
|
|
end;
|
|
|
|
procedure TfEditorAlbaranDevProveedor.PonerTitulos(const ATitulo: string);
|
|
var
|
|
FTitulo : String;
|
|
begin
|
|
FTitulo := ATitulo;
|
|
if (FTitulo = '') and Assigned(FAlbaran) then
|
|
begin
|
|
if FAlbaran.EsNuevo then
|
|
FTitulo := 'Nueva orden de devolución de proveedor'
|
|
else
|
|
FTitulo := 'Orden de devolución de proveedor' + ' - ' + FAlbaran.Proveedor.Nombre;
|
|
end;
|
|
|
|
inherited PonerTitulos(FTitulo);
|
|
end;
|
|
|
|
end.
|