Então, mas eu preciso enviar as informações do dependente, é justamente isso que estou falando, ele é menor de 8 anos e não possui CPF, pois não é obrigatório para o eSocial, porém a informação do dependente não aparece no XML, como citei acima, e se eu coloco o CPF, coloquei para testar, a Tag é preenchida. Conclusão o dependente é menor de 8 anos e as informações precisam ser enviadas porém o mesmo não tem CPF, como então irei mandar essas informações? Sendo que preciso envia-las quando o titular possui dependente.
A regra não esta aceitando se a tag do CPF estiver menor ou igual 0 ele esta dando um break, no caso ela esta indo vazia e por isso não entra na rotina, mas preciso que entre independente de ter CPF ou não.
Segue o código:
O problemas esta dando na linha que esta em vermelho.
while true do
begin
// de 01 até 99
sSecao := 'detPlano' + IntToStrZero(I, 2) +
IntToStrZero(J, 3) + IntToStrZero(K, 1) +
IntToStrZero(L, 2) + IntToStrZero(M, 2);
sFim := INIRec.ReadString(sSecao, 'cpfDep', 'FIM');
if (sFim = 'FIM') or (Length(sFim) <= 0) then
break;
with detPlano.Add do
begin
tpDep := eSStrToTpDep(Ok, INIRec.ReadString(sSecao, 'tpDep', '00'));
cpfDep := sFim;
nmDep := INIRec.ReadString(sSecao, 'nmDep', '');
dtNascto := StringToDateTime(INIRec.ReadString(sSecao, 'dtNascto', '0'));
vlrPgDep := StringToFloatDef(INIRec.ReadString(sSecao, 'vlrPgDep', ''), 0);
end;
Inc(M);