Suena a mal diseño original como dices.<g>
Los números consecutivos que deseas, deben
todos guardarse (como por ejemplo números de fracturas), o es suficiente con que sean únicos y si se pierden algunos en la secuencia consecutiva no hay problema?
Puedes guardar el último número en una tabla que actúa como contador.
Create Table Contador (tabla Char(10), ultimo i)
Luego cada vez que que necesitas un nuevo número para uno de tus registros, buscas el nombre de la tabla que necesita ese número en Contador y le sumas uno.
Si obtienes ese número al principio, y tus usuarios tiene un proceso largo para hacer sus cambios y luego guardar (save) el registro, tendrás registros fuera de secuencia ya que algunos usuarios serán mas rápidos que otros. Si los usuarios tienen la opción de cancelar la operación, tendrás números que no son usados (y agujeros en la secuencia). Todo esto es obvio pero lo menciono para que quede claro si entiendo lo que buscas.
Si quieres mantener una secuencia sin que se pierdan números, debes entonces obtener el número al final del proceso, justo antes de que guarden el nuevo registro. En VFP eso es muy fácil. Si usas SQL Server o similar (C/S) eso lo puedes hacer mas eficientemente con un Stored Procedure.
HTH