-
Total de ítens
207 -
Registro em
-
Última visita
-
Days Won
1
Tipo de Conteúdo
Blocks
Notes ACBrLibNFe
Fóruns
Downloads
Calendário
Posts postados por Joceandro Perin
-
-
Bom dia galera
Nos processos judiciais existem duas opções a mais..
1 - IRRF
2 - Contribuições sociais do trabalhador
3 - FGTS
4 - Contribuição sindicalNa tipagem existem apenas duas.. Ajustei e incluí as duas novas opções faltantes..
tpTpTributo = (tptIRRF, tptPrevidenciaria, tptFGTS, tptContribSind);
@Italo Jurisato Junior Segue unit para avaliação..
-
Verifiquei aqui em outros grupos e o problema é no servidor do eSocial mesmo..
-
10 minutos atrás, Jonathan Fabricio Seibel disse:
Poiseh mais o estranho que na consulta o erro 500 continua... e para enviar... vi que o servidor estava caindo o tempo todo até que por fim consegui...
Aqui tbm não consigo consultar, retorna o erro 500..
-
4 minutos atrás, Jonathan Fabricio Seibel disse:
Blz.. a minha esta assim:
function TItemLoteEventos.GetIDEvento: string;
var
Ini: Integer;
begin
// <evtInfoEmpregador Id="ID1012345678900002017071908065532932">
Result := EmptyStr;
Ini := pos('Id=', XML);
if ini > 0 then
begin
Result := Copy(XML, Ini + 4, 38);
Result := StringReplace(Result, '"', '', []);
Result := StringReplace(Result, '>', '', []);
Result := StringReplace(Result, '<', '', []);
Result := StringReplace(Result, '=', '', []);
end;
end;Como deve ser ?
Essa que você passou é a correta a que funciona, aí foi ajustado pra essa..
function TItemLoteEventos.GetIDEvento: string; var Ini: Integer; begin Result := EmptyStr; Ini := pos('Id=', XML); if ini > 0 then Result := OnlyNumber(Copy(XML, Ini + 4, 38)); end;
nessa implementação ele remove a string "ID" deixando apenas a numeração.. Aí retorna o erro do ID incorreto..
Eu acho que o Italo ajustou essa função pra poder gerar os XML em diretório com uma ID pra não sobrepor sempre o mesmo XML, e assim manter o histórico dos XML gerados..
-
8 minutos atrás, Jonathan Fabricio Seibel disse:
Ahh, pode ser então ws do esocial com problema.. Com os ajustes que foi feito ontem, o envio não estava funcionando, aí voltando a função GetIDEvento para a implementação anterior, volta a funcionar..
-
Certo, você enviou em ambiente de produção ou homologação? Se for homologação, você pode zerar a base e enviar tudo novamente, se for produção, tem que enviar todas as exclusões observando a data iniValid que foi enviado anteriormente..
Então, essa informação do iniValid e finValid como envio dos registros pela primeira vez como 2016-01 para ambiente de homologação e 2018-01 para produção, foi orientação do eSocial.. Mas não está bem clara nos manuais como tem que ser enviado a alteração, eu vi outros colegas desenvolvedores nos grupos de whatsapp do eSocial enviando dessa forma e aqui funcionou, estou conseguindo enviar a inclusão, alteração e exclusão..
-
Voltei a implementação anterior da função , GetIDEvento e o envio funcionou, mas a consulta retorna erro 500
@Italo Jurisato Junior alguma ideia??
-
Tem coisa errada nas tags iniValid e finValid.. É bem confuso de entender como tem que ser enviado, mas quando é enviado pela primeira vez, deve ser informado a iniValid = 2016-01 para homologação e 2018-01 para produção e finValid só deve ser enviado se esse registro terá uma data fim de validade, caso contrário não deve enviar nenhuma informação nessas tags.. Quando for uma alteração, o iniValid da tag idePeriodo deverá ser o do último enviado e iniValid da tag novoPeriodo o mês em questão e assim por diante conforme haja novas alterações.. Bem confuso esse negócio
-
Pelo que eu vi aqui o erro acontece no método Validar da unit ACBreSocialLoteEventos
Parece que foi alterado o método GetIDEvento dessa unit, e não está mais retornado a string "ID"
-
Tbm estou com esse erro dps de sincronizar os fontes ontem
-
Bom dia,
Peguei mais uma situação aqui, meu executável voltou a ficar preso em memória quando subo o evento S-1050.. Pelo debug consegui ver que está preso por causa do objeto THorarioIntervaloCollection..
Observei que esses objetos são destruídos, porém usando o Free, mesmo assim ele continua em memória, troquei pelo FreeAndNil e resolveu o problema..
@Italo Jurisato Junior @Rafael Dias Mandei as units para avaliação..
-
Eu acho que você deve enviar usando a versão 2.4.01, a versão 2.4.02 eu acho que não está subindo ainda..
- 1
-
Boa tarde galera..
Na função GerarFGTS da unit pcesS2300, está passando a tipagem sem fazer a conversão pro gerador, desta forma está gerando inconsistência no eSocial..
Como estava..
procedure TEvtTSVInicio.GerarFGTS(obj: TFGTS); begin if obj.dtOpcFGTS > 0 then begin Gerador.wGrupo('fgts'); Gerador.wCampo(tcStr, '', 'opcFGTS', 1, 1, 1, obj.OpcFGTS); Gerador.wCampo(tcDat, '', 'dtOpcFGTS', 10, 10, 0, obj.dtOpcFGTS); Gerador.wGrupo('/fgts'); end; end;
Ajustado para..
procedure TEvtTSVInicio.GerarFGTS(obj: TFGTS); begin if obj.dtOpcFGTS > 0 then begin Gerador.wGrupo('fgts'); Gerador.wCampo(tcStr, '', 'opcFGTS', 1, 1, 1, eSOpcFGTSToStr(obj.OpcFGTS)); Gerador.wCampo(tcDat, '', 'dtOpcFGTS', 10, 10, 0, obj.dtOpcFGTS); Gerador.wGrupo('/fgts'); end; end;
@Italo Jurisato Junior @Rafael Dias Segue unit.. Abraço..
-
Bom dia galera..
Peguei uma situação aqui em que o empregado não se enquadra no regime de jornada 1 - Submetidos a Horário de Trabalho (Cap. II da CLT) campo tpRegJor, porém a tag horContratual está sempre montando, e ao enviar esses empregados está retornando inconsistências..
Observei que a montagem desta tag somente é obrigatória respeitando a seguinte validação.. O preenchimento é obrigatório se {tpRegJor} = [1]
Como não estou passando valores para essas tags, ele está setando valores default, gerando as inconsistências no eSocial..
@Italo Jurisato Junior @Rafael Dias
Mandei as units com os ajustes para avaliação.. Obrigado..
-
Boa tarde galera..
A tipagem tpNivelEstagio deve possuir duas opções a mais conforme layout 2.4.01..
8 - Especial;
9 - Mãe social. (Lei 7644, de 1987)Adicionei as duas opções faltantes na unit pcesConversaoeSocial...
tpNivelEstagio = (nvFundamental, nvMedio, nvEnsinoProfis, nvSuperior, nvEspecial, nvMaeSocial);
Adequado a unit pcesS2300 para passar corretamente a conversão pro gerador..
@Italo Jurisato Junior @Rafael Dias Segue as units para avaliação, obrigado..
-
-
-
-
Bom dia, estava com esse problema, aí observei uma validação que tem e consegui enviar..
No manual a condição para montagem é F (até 31/12/2017 se {codCateg} = [104]). N (nas demais situações).
Então pelo meu entendimento, se a aposentadoria foi até 31/12/2017 e a Categoria for 104 - Empregado - Doméstico, ele aceita a montagem, se for diferente disso, deve ser passado N ou não montar essa tag..
-
Humm, pode ser outro detalhe então, a tabela 1060 eu ainda não montei porque a obrigatoriedade dela passa a ser em Janeiro de 2019 junto com o evento 2240 e demais eventos pertinentes a saúde e segurança do trabalho.. Não sei se alguém já tentou enviar essa tabela com sucesso, poderia dar uma opinião..
- 1
-
Bom dia, uma coisa que eu vi de diferente no teu XML, foi a tag <verProc>, estou gerando assim <verProc>1.0</verProc>
-
Boa tarde galera..
Peguei uma situação aqui em que o empregado está afastado há algum tempo..
Quando ele vai gerar o campo codMotAfast está setando o valor errado, ajustei a unit pcesGerador para passar a tipagem convertida pra string pro gerador, desta forma seta o valor correto..
Como estava..
procedure TeSocialEvento.GerarAfastamento(pAfastamento: TAfastamento); begin if pAfastamento.DtIniAfast > 0 then begin Gerador.wGrupo('afastamento'); Gerador.wCampo(tcDat, '', 'dtIniAfast', 10, 10, 1, pAfastamento.DtIniAfast); Gerador.wCampo(tcStr, '', 'codMotAfast', 1, 1, 1, pAfastamento.codMotAfast); Gerador.wGrupo('/afastamento'); end; end;
Ajustado para..
procedure TeSocialEvento.GerarAfastamento(pAfastamento: TAfastamento); begin if pAfastamento.DtIniAfast > 0 then begin Gerador.wGrupo('afastamento'); Gerador.wCampo(tcDat, '', 'dtIniAfast', 10, 10, 1, pAfastamento.DtIniAfast); Gerador.wCampo(tcStr, '', 'codMotAfast', 1, 1, 1, eStpMotivosAfastamentoToStr(pAfastamento.codMotAfast)); Gerador.wGrupo('/afastamento'); end; end;
@Italo Jurisato Junior, @Rafael Dias Mandei a unit para avaliação.. Abraços..
-
1 minuto atrás, isaque.ribeiro disse:
Funcionou corretamente!
Mas em que cenário em uso o tipo teOrgaoPublico?
Realmente não sei te dizer em que momento utiliza, só sei que quando você seta teOrgaoPublico ou tePessoaFisica, ele passa a montar o ID com todo CNPJ/CPF que é orientado no manual.. Com CPF eu já testei e sei que passa, agora órgão público não sei o motivo..
-
2 horas atrás, EdmarFrazao disse:
posta o exemplo para ver o que você fez
Segue um exemplo do que eu fiz.. Tem servido como um "quebra galho" por enquanto..
function TrataErro(Msg: string): string; var Tamanho, PosFin, PosIni: Integer; begin try Result := Msg; Result := StringReplace(Result, Chr(09), '', [rfReplaceAll]); // Tab Result := StringReplace(Result, Chr(10), '', [rfReplaceAll]); // Line feed Result := StringReplace(Result, Chr(13), '', [rfReplaceAll]); // Carriage return Result := StringReplace(Result, Chr(39), '', [rfReplaceAll]); // Apostrophe Result := StringReplace(Result, '1824 - Element ', '', [rfReplaceAll]); Result := StringReplace(Result, ': is not a valid value of the local atomic type.', '', [rfReplaceAll]); PosIni := Pos('{', Result); PosFin := Pos('}', Result); if (PosIni > 0) and (PosFin > 0) then begin Tamanho := PosFin - PosIni; System.Delete(Result, PosIni, Tamanho); Result := StringReplace(Result, '}', ' > ', [rfReplaceAll]); end; except Result := Msg; end; end;
Ajuste no campo tpRegJor e natAtividade
em ACBreSocial
Postado
Boa tarde galera
O campo natAtividade dos eventos S-2200 e S-2206 está setando o valor incorreto, verifiquei aqui que está pegando o ord da tipagem e somando mais um, se eu passar navUrbano, ele sempre seta navRural.. Acredito que esse problema começou a ocorrer depois da inclusão da opção navNaoInformar na tipagem..
Ajustei os fontes para pegar a conversão, desta forma não haverá problemas..
Como estava..
Ajustado para...
Ajustei tbm o campo tpRegJor para seguir o mesmo padrão..
@Italo Jurisato Junior Segue os fontes para avaliação..
pcesS2206.pas
pcesS2300.pas
pcesS2306.pas