git-svn-id: https://192.168.0.254/svn/Proyectos.LuisLeon_FactuGES2/trunk@204 b2cfbe5a-eba1-4a0c-8b32-7feea0a119f2
103 lines
2.9 KiB
ObjectPascal
103 lines
2.9 KiB
ObjectPascal
unit uDatosBancariosContactoController;
|
||
|
||
interface
|
||
|
||
uses
|
||
Windows, Forms, Classes, Controls, Contnrs, SysUtils, uDADataTable,
|
||
uBizContactos, uBizContactosDatosBancarios, uIDataModuleContactos,
|
||
uControllerBase;
|
||
|
||
type
|
||
IDatosBancariosContactoController = interface(IControllerBase)
|
||
['{2E1C410A-B11D-4E1C-A7DF-9321BAEA5952}']
|
||
procedure Ver(ADatoBancario : IBizContactosDatosBancarios);
|
||
function Localizar(ADatosBancarios: IBizContactosDatosBancarios; const ID : Integer): Boolean;
|
||
end;
|
||
|
||
TDatosBancariosContactoController = class(TControllerBase, IDatosBancariosContactoController)
|
||
private
|
||
FDataModule : IDataModuleContactos;
|
||
protected
|
||
public
|
||
procedure Ver(ADatoBancario : IBizContactosDatosBancarios);
|
||
function Localizar(ADatosBancarios: IBizContactosDatosBancarios; const ID : Integer): Boolean;
|
||
constructor Create; override;
|
||
destructor Destroy; override;
|
||
function ValidarDatosBancarios(ADatoBancario : IBizContactosDatosBancarios): Boolean; virtual;
|
||
end;
|
||
|
||
implementation
|
||
|
||
{ TDatosBancariosContactoController }
|
||
|
||
uses
|
||
uDataModuleContactos, schContactosClient_Intf, uIBANUtils,
|
||
uEditorRegistryUtils, cxControls, uIEditorDatoBancarioContacto;
|
||
|
||
|
||
constructor TDatosBancariosContactoController.Create;
|
||
begin
|
||
inherited;
|
||
FDataModule := TDataModuleContactos.Create(Nil);
|
||
end;
|
||
|
||
destructor TDatosBancariosContactoController.Destroy;
|
||
begin
|
||
FDataModule := Nil;
|
||
inherited;
|
||
end;
|
||
|
||
function TDatosBancariosContactoController.Localizar(
|
||
ADatosBancarios: IBizContactosDatosBancarios; const ID : Integer): Boolean;
|
||
begin
|
||
Result := True;
|
||
ShowHourglassCursor;
|
||
try
|
||
with ADatosBancarios.DataTable do
|
||
begin
|
||
DisableControls;
|
||
First;
|
||
if not Locate(fld_DatosBancariosID, ID, []) then
|
||
Result := False;
|
||
EnableControls;
|
||
end;
|
||
finally
|
||
HideHourglassCursor;
|
||
end;
|
||
end;
|
||
|
||
function TDatosBancariosContactoController.ValidarDatosBancarios(
|
||
ADatoBancario: IBizContactosDatosBancarios): Boolean;
|
||
begin
|
||
if not ADatoBancario.IBANIsNull then
|
||
begin
|
||
ADatoBancario.DataTable.Edit;
|
||
ADatoBancario.IBAN := StringReplace(ADatoBancario.IBAN, ' ', '', [rfReplaceAll]); // Quitar espacios
|
||
ADatoBancario.DataTable.Post;
|
||
|
||
if not EsCodigoIBANValido(ADatoBancario.IBAN) then
|
||
raise Exception.Create('Comprueba que el c<>digo IBAN indicado es correcto.');
|
||
end;
|
||
end;
|
||
|
||
procedure TDatosBancariosContactoController.Ver(
|
||
ADatoBancario : IBizContactosDatosBancarios);
|
||
var
|
||
AEditor : IEditorDatoBancarioContacto;
|
||
begin
|
||
AEditor := NIL;
|
||
|
||
CreateEditor('EditorDatoBancarioContacto', IEditorDatoBancarioContacto, AEditor);
|
||
if Assigned(AEditor) then
|
||
try
|
||
AEditor.DatoBancario := ADatoBancario;
|
||
AEditor.Controller := Self;
|
||
AEditor.ShowModal;
|
||
finally
|
||
AEditor.Release;
|
||
AEditor := NIL;
|
||
end;
|
||
end;
|
||
|
||
end.
|