unit uBizDetallesPedidoCliente;

interface

uses
  uDADataTable, schPedidosClienteClient_Intf;

const
  BIZ_CLIENT_DETALLES_PEDIDO_CLIENTE = 'Client.PedidoCliente.Detalles';
  BIZ_CLIENT_ARTICULOS_PEND_PEDIDO_CLIENTE = 'Client.PedidoCliente.ArticulosPendientes';


type
  IBizDetallesPedidoCliente = interface(IPedidosCliente_Detalles)
  ['{0DE6E75E-1FB4-4971-8720-F29ACCA1D25E}']
  end;

  IBizPedidoClienteArticulosPend = interface(IPedidosCliente_Articulos_Pendientes)
    ['{DD245879-DD80-4E96-995A-6D3A09D72544}']
  end;

  TBizDetallesPedidoCliente = class(TPedidosCliente_DetallesDataTableRules, IBizDetallesPedidoCliente)
  protected
    procedure OnNewRecord(Sender: TDADataTable); override;
    procedure BeforeInsert(Sender: TDADataTable); override;
  end;

  TBizPedidoClienteArticulosPend = class(TPedidosCliente_Articulos_PendientesDataTableRules, IBizPedidoClienteArticulosPend)
  end;

implementation

{ TBizDetallesPedidoCliente }

uses
  uDataTableUtils, DB;

procedure TBizDetallesPedidoCliente.BeforeInsert(Sender: TDADataTable);
var
  AMasterTable : TDADataTable;
begin
  inherited;
  AMasterTable := DataTable.GetMasterDataTable;
  if Assigned(AMasterTable) and (AMasterTable.State = dsInsert) then
    AMasterTable.Post;
end;

procedure TBizDetallesPedidoCliente.OnNewRecord(Sender: TDADataTable);
begin
  inherited;
  VISIBLE := 1;
end;

initialization
  RegisterDataTableRules(BIZ_CLIENT_DETALLES_PEDIDO_CLIENTE, TBizDetallesPedidoCliente);
  RegisterDataTableRules(BIZ_CLIENT_ARTICULOS_PEND_PEDIDO_CLIENTE, TBizPedidoClienteArticulosPend);
end.
