unit uBizDetallesPresupuestoCliente; interface uses uDADataTable, schPedidosClienteClient_Intf; const BIZ_CLIENT_DETALLES_PEDIDO_CLIENTE = 'Client.PresupuestoCliente.Detalles'; BIZ_CLIENT_ARTICULOS_PEND_PEDIDO_CLIENTE = 'Client.PresupuestoCliente.ArticulosPendientes'; type IBizDetallesPresupuestoCliente = interface(IPedidosCliente_Detalles) ['{2D7781DC-AD16-4857-9567-5C1620319781}'] end; IBizPresupuestoClienteArticulosPend = interface(IPedidoCliente_Articulos_Pendientes) ['{DD245879-DD80-4E96-995A-6D3A09D72544}'] end; TBizDetallesPresupuestoCliente = class(TPedidosCliente_DetallesDataTableRules, IBizDetallesPresupuestoCliente) private ContIdAux: Integer; protected procedure OnNewRecord(Sender: TDADataTable); override; public constructor Create(aDataTable: TDADataTable); override; end; TBizPresupuestoClienteArticulosPend = class(TPedidoCliente_Articulos_PendientesDataTableRules, IBizPresupuestoClienteArticulosPend) end; implementation { TBizDetallesPresupuestoCliente } uses uDataTableUtils; constructor TBizDetallesPresupuestoCliente.Create(aDataTable: TDADataTable); begin inherited Create(aDataTable); ContIdAux := -1; end; procedure TBizDetallesPresupuestoCliente.OnNewRecord(Sender: TDADataTable); begin inherited; ID := ContIdAux; // -1, -2, -3... Dec(ContIdAux); end; initialization RegisterDataTableRules(BIZ_CLIENT_DETALLES_PEDIDO_CLIENTE, TBizDetallesPresupuestoCliente); RegisterDataTableRules(BIZ_CLIENT_ARTICULOS_PEND_PEDIDO_CLIENTE, TBizPresupuestoClienteArticulosPend); end.