Y que es lo que necesitas exactamente? Por que sabrás que el RFC está compuesto por las dos primeras letras del apellido paterno, la primera del apellido materno y la primera del primer nombre, así como la fecha de nacimiento de la persona en el formato
aammdd, y una homoclave de 3 caracteres, la cual genera Hacienda y hasta ahora no se en que se basan para generarla...
Ahora, teniendo el nombre y la fecha de nacimiento de la persona puedes formar fácilente la primera parte del RFC, pero los 3 últimos caracteres (la homoclave) esos si no sabría como se generan...
Algo rápido:
Código Delphi
[-]
function GenerateRFC(Nombre, Materno, Paterno: string; Fecha: TDateTime): string;
var
Temp: string;
AA, MM, DD: Word;
begin
Temp := Copy(Paterno, 1, 2) + Copy(Materno, 1, 1) + Copy(Nombre, 1, 1);
DecodeDate(Fecha, AA, MM, DD);
Result := Format('%s%d%d%d', [Temp, AA, MM, DD])
end;
Saludos...