{*******************************************************}
{                                                       }
{       Administración de puntos de venta               }
{                                                       }
{       Copyright (C) 2006 Rodax Software S.L.          }
{                                                       }
{*******************************************************}

unit uBizTraspasos;

interface

uses
  Classes, DB, SysUtils, uROClasses, uDADataTable, uDBSelectionList;


const
  BIZ_TRASPASOS = 'Client.Traspasos';

type
  TInvTraspasoEstado = (titPendiente, titAprobado);

  IBizTraspasos = interface(IDAStronglyTypedDataTable) //ITraspasos)
  ['{91E16E44-2A50-4459-A758-B14948E0A134}']
    procedure Show;
    procedure SetEstado(const AValue : TInvTraspasoEstado);
    function GetEstado : TInvTraspasoEstado ;
    property Estado : TInvTraspasoEstado read GetEstado write SetEstado;
  end;


  TBizTraspasosDataTableRules = class(TDADataTableRules, IBizTraspasos) //TTraspasosDataTableRules, IBizTraspasos,
  protected
    procedure SetEstado(const AValue : TInvTraspasoEstado);
    function GetEstado : TInvTraspasoEstado ;
  public
    procedure Show;
    property Estado : TInvTraspasoEstado read GetEstado write SetEstado;
  end;


implementation

uses
  uEditorUtils, uDataModuleTraspasos;

{ TBizRecepcionDataTableRules }

function TBizTraspasosDataTableRules.GetEstado: TInvTraspasoEstado;
begin
  if DataTable.FieldByName('APROBADO').AsString = 'S' then
    Result := titAprobado
  else
    Result := titPendiente
end;

procedure TBizTraspasosDataTableRules.SetEstado(
  const AValue: TInvTraspasoEstado);
begin
  case AValue of
    titPendiente   : DataTable.FieldByName('APROBADO').AsString := 'N';
    titAprobado    : DataTable.FieldByName('APROBADO').AsString := 'S';
    else
      DataTable.FieldByName('APROBADO').AsString := 'N';
  end;
end;

procedure TBizTraspasosDataTableRules.Show;
begin
  ShowEditor(IBizTraspasos, Self, etItem);
end;

initialization
  RegisterDataTableRules(BIZ_TRASPASOS, TBizTraspasosDataTableRules);

end.

