Pues tendrás que hacerlo con un bucle, por ejemplo, ordenas por nombre (por ejemplo) y luego lo vas recorriendo de principio a fin y le vas poniendo el código que toque.
Algo así:
Código:
query.close;
query.selectsql.text := 'select * from tbclientes order by apellidos, nombre';
query.open;
iNumero := 1;
while not query.eof do
begin
query.edit;
query.fieldbyname('codigo').asinteger := iNumero;
query.post;
query.next;
inc( iNumero );
end;