unit uBizDireccionesContacto; interface uses uDAInterfaces, uDADataTable, schContactosClient_Intf; const BIZ_CLIENT_DIRECCIONES_CONTACTO = 'Client.DireccionesContacto'; type IBizDireccionesContacto = interface(IDireccionesContacto) ['{0E94C935-1D3C-4B67-968A-B01EBEEFB26A}'] function EsNuevo : Boolean; end; TBizDireccionesContacto = class(TDireccionesContactoDataTableRules, IBizDireccionesContacto) protected public function EsNuevo : Boolean; procedure OnNewRecord(Sender: TDADataTable); override; end; implementation uses Dialogs,uDataTableUtils; { TBizDatosBancarios } function TBizDireccionesContacto.EsNuevo: Boolean; begin Result := (ID < 0); end; procedure TBizDireccionesContacto.OnNewRecord(Sender: TDADataTable); begin inherited; ID := GetRecNo; // -1, -2, -3... end; initialization RegisterDataTableRules(BIZ_CLIENT_DIRECCIONES_CONTACTO, TBizDireccionesContacto); end.