Ir para conteúdo
  • Cadastre-se

MSS

Membros
  • Total de ítens

    33
  • Registro em

  • Última visita

Tudo que MSS postou

  1. Bom dia, @anderson.mendonca! Aparentemente está tudo certo com relação ao CEP enviado no XML; apenas um pequeno detalhe está sendo desconsiderado: O eSocial valida o CEP informado contra a base de dados que eles possuem (deve ser os correios). Ao consultar o CEP , que você informou no XML, no site dos correios; recebemos como resposta os dados abaixo. ATENÇÃO! O CEP 31785-740 FOI ALTERADO CONFORME ABAIXO. Logradouro/Nome: Bairro/Distrito: Localidade/UF: CEP: Rua José Gomes Domingues Jaqueline Belo Horizonte/MG 31748-075 Dito isso, creio que o @Italo Jurisato Junior já resolveu o problema e basta você trocar o CEP INVÁLIDO (31785-740) pelo novo CEP VÁLIDO (31748-075). []s Mário Soares Santos
  2. Bom dia, Italo ! Correto. Ou as administrações públicas federais que não se enquadrem nas 4 naturezas juridicas especificadas. Existem sim, mas para essas vale a regra das oito posições do CNPJ. []s Mário Soares Santos
  3. Olá, Rafael! As partes de código mencionadas acima não atendem as regras especificadas, por isso, adicionei a propriedade NaturezaJuridica na classe de Configurações.Geral e alterei o código para o abaixo: if (TACBreSocial(FACBreSocial).Configuracoes.Geral.TipoEmpregador = tePessoaFisica) or ((TACBreSocial(FACBreSocial).Configuracoes.Geral.TipoEmpregador = teOrgaoPublico) and (IndexText(TACBreSocial(FACBreSocial).Configuracoes.Geral.NaturezaJuridica, ['1015', '1040', '1074', '1163']) >= 0)) then // Natureza jurídica de administração pública direta federal Result := Result + copy(OnlyNumber(CNPJF) + '00000000000000', 1, 14) else Result := Result + copy(OnlyNumber(Copy(CNPJF, 1, 8)) + '00000000000000', 1, 14); Os 14 caracteres do CNPJF, somente são utilizados quando o tipo do empregador for Pessoa Fisica ou Orgão Público cuja Natureza Juridica seja Administração Pública Direta Federal [101-5], [104-0], [107-4] ou [116-3], a negativa dessas condições obrigam que sejam informados apenas os 8 primeiros caracteres do CNPJF. []s. Mário Soares Santos
  4. MSS

    eSocial - Orgãos Públicos

    A geração da chave eSocial (function GerarChaveEsocial) e a geração da tag <nrInsc> (procedure GerarIdeEmpregador) não estavam atendendo as especificações do documento "Leiautes do eSocial v2.4.02"; quando o empregador é "Orgão Público"; fazendo-se necessário algumas modificações no código fonte das units mencionadas a seguir: ACBreSocialConfiguracoes.pas Adição da propriedade NaturezaJuridica na classe TGeralConfeSocial e tratamento nos metodos Assign, GravarIni e LerIni. pcesGerador.pas Alteração da function GerarChaveEsocial e da procedure GerarIdeEmpregador para geração do ID e nrInsc corretos quando empregador for Orgão Público. ACBreSocial-change-log.txt OBS: As alterações foram realizadas usando-se como base a versão trunk2, revisão 15056, de 29/04/2018, da ACBr.
  5. Olá, Italo ! Utilizo a configuração do Delphi para formatação/padronização de código (Tools->Options->Formatter->Delphi) e devo ter acionado a formatação inconscientemente; nas próximas alterações evitarei aplicar a minha padronização. []s, Mário.
  6. Bom dia, Italo! Já havia atualizado os meus fontes com a trunk2 antes de aplicar as alterações. De qualquer maneira, acabo de atualizar os meus fontes novamente (40 minutos atrás) e aplicar as alterações. Anexo os arquivos alterados. Estou iniciando o desenvolvimento do módulo eSocial e quaisquer alterações que eu venha a fazer no componente ACBrSPEDeSocial, estarei reportando aqui no fórum, para a avaliação dos responsáveis. pcesGerador.pas pcesS2399.pas
  7. Na geração do evento "S-2399 - Trabalhador Sem Vínculo de Emprego/Estatutário - Término" ocorre uma quebra de estruturação do XML e como consequência a validação através do XSD (v2.4.02) retorna erro. A estrutura do XML para esse evento, conforme a documentação do eSocial, deve ser a seguinte: * N1 - 1-1 - O - eSocial (S2399) ** N2 - 1-1 - O - evtTSVTermino *** N3 - 1-1 - O - ideEvento *** N3 - 1-1 - O - ideEmpregador *** N3 - 1-1 - O - ideTrabSemVinculo *** N3 - 1-1 - O - infoTSVTermino **** N4 - 0-1 - OCN - verbasResc ***** N5 - 1-50 - O - dmDev ****** N6 - 1-99 - O - ideEstabLot ******* N7 - 1-200 - O - detVerbas ******* N7 - 0-1 - ON - infoSaudeColet ******** N8 - 1-99 - O - detOper ********* N9 - 0-99 - OC - detPlano ******* N7 - 0-1 - ON - infoAgNocivo ******* N7 - 0-1 - ON - infoSimples ***** N5 - 0-99 - OC - procJudTrab ***** N5 - 0-1 - OC - infoMV ****** N6 - 1-10 - O - remunOutrEmpr **** N4 - 0-1 -OC quarentena Problema: O código constante na unit pcesS2399 (GerarInfoTSVTermino) faz com que a tag <remunOutrEmpr> entre na estrutura no nivel 4 (N4), quando o correto seria no nivel 6 (N6). Solução: Foi comentado a linha de código responsável pela chamada do metodo de geração dos dados da tag <remunOutrEpcesGerador.pasmpr>. A geração dessa tag já existe na unit pcesGerador (GerarInfoMV). Problema: Na unit pcesGerador (GerarInfoMV) a geração da tag <infoMV> somente ocorre quando a propriedade indMV for maior que zero (pInfoMV.indMV > 0). Porem, com a utilização do enumerador (tpIndMV), a propriedade pode assumir o valor zero (imvDescontadaempregador) e nesse caso não gera as informações da tag <infoMV> . Solução: Trocar o teste de "maior que zero" para "contido em". As soluções acima foram aplicadas nos arquivos anexos e validadas com a v2.4.02 do XSD. pcesS2399.pas pcesGerador.pas
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.