Si entiendo bien lo que quieres:
VV-0245-0556 Este dato debiera ser una cadena de ancho 12, para guardar también los guiones.
Luego con 2 campos de tipo número se guardarían los 2 contadores.
Y desde Delphi:
Código Delphi
[-]
Var
cNumero:String;
begin
cNumero:='VV'+FormatFloat('0000', Table1Conta +1)+FormatFloat('0000',Table1Conta2+1);
end;
Conta sería el campo contador para la posición 1 y Conta2 el campo contador para la posición 2.
Cada vez que se grabe un nuevo registro habrá que guardar los contadores actualizados para que el próximo tome los datos correctos.