unit uBizDetallesPedidoProveedor; interface uses uDADataTable, schPedidosProveedorClient_Intf; const BIZ_CLIENT_DETALLES_PEDIDO_PROVEEDOR = 'Client.DetallesPedido.Proveedor'; BIZ_CLIENT_DETALLES_PEDIDO_PROVEEDOR_PEND = 'Client.DetallesPedido.Pendientes'; type IBizDetallesPedidoProveedor = interface(IPedidosProveedor_Detalles) ['{F868D8B0-18F9-469A-8461-3B1DADCC3B33}'] end; IBizDetallesPedidoProveedorPend = interface(IPedidosProveedor_Articulos_Pendientes) ['{0BE0236B-D58B-41CA-B939-8338875D4CF4}'] end; TBizDetallesPedidoProveedor = class(TPedidosProveedor_DetallesDataTableRules, IBizDetallesPedidoProveedor) private ContIdAux: Integer; protected procedure OnNewRecord(Sender: TDADataTable); override; public constructor Create(aDataTable: TDADataTable); override; end; TBizDetallesPedidoProveedorPend = class(TPedidosProveedor_Articulos_PendientesDataTableRules, IBizDetallesPedidoProveedorPend) end; implementation { TBizDetallesPedidoProveedor } uses uDataTableUtils; constructor TBizDetallesPedidoProveedor.Create(aDataTable: TDADataTable); begin inherited Create(aDataTable); ContIdAux := -1; end; procedure TBizDetallesPedidoProveedor.OnNewRecord(Sender: TDADataTable); begin inherited; ID := ContIdAux; // -1, -2, -3... Dec(ContIdAux); end; initialization RegisterDataTableRules(BIZ_CLIENT_DETALLES_PEDIDO_PROVEEDOR, TBizDetallesPedidoProveedor); RegisterDataTableRules(BIZ_CLIENT_DETALLES_PEDIDO_PROVEEDOR_PEND, TBizDetallesPedidoProveedorPend); end.