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) ['{2D7781DC-AD16-4857-9567-5C1620319781}'] end; IBizPedidoClienteArticulosPend = interface(IPedidoCliente_Articulos_Pendientes) ['{DD245879-DD80-4E96-995A-6D3A09D72544}'] end; TBizDetallesPedidoCliente = class(TPedidosCliente_DetallesDataTableRules, IBizDetallesPedidoCliente) private ContIdAux: Integer; protected procedure OnNewRecord(Sender: TDADataTable); override; public constructor Create(aDataTable: TDADataTable); override; end; TBizPedidoClienteArticulosPend = class(TPedidoCliente_Articulos_PendientesDataTableRules, IBizPedidoClienteArticulosPend) end; implementation { TBizDetallesPedidoCliente } uses uDataTableUtils; constructor TBizDetallesPedidoCliente.Create(aDataTable: TDADataTable); begin inherited Create(aDataTable); ContIdAux := -1; end; procedure TBizDetallesPedidoCliente.OnNewRecord(Sender: TDADataTable); begin inherited; ID := ContIdAux; // -1, -2, -3... Dec(ContIdAux); end; initialization RegisterDataTableRules(BIZ_CLIENT_DETALLES_PEDIDO_CLIENTE, TBizDetallesPedidoCliente); RegisterDataTableRules(BIZ_CLIENT_ARTICULOS_PEND_PEDIDO_CLIENTE, TBizPedidoClienteArticulosPend); end.