Ir para conteúdo
  • Cadastre-se

Rodrigo - Digibyte

Membros Pro
  • Total de ítens

    354
  • Registro em

  • Última visita

  • Days Won

    1

Tudo que Rodrigo - Digibyte postou

  1. Segue ajuste prevendo a nova versão do layout ACBrECFBlocos.pas
  2. Pessoal, como estão fazendo, após o envio deo evento, pra pegar o retorno do eSocial? Tempo fixo, ajustável, ... ? Qual seria a melhor estratégia pra otimizar isso? O tempo de processamento depende do evento e do dia pelo que vi até agora.
  3. Não sei como está no exemplo mas sim, basta mudar a versão ACBreSocial_Envio.Configuracoes.Geral.VersaoDF := veS01_00_00;
  4. Sim, estamos, com essa regra if (vClassTrib = '22') then evtPgtos.ideEvento.indGuia := '1';
  5. Bom dia, segue pequena correção devido a algumas alterações no layout do provedor IPM Basicamente antes cnpj/cpf vinha sem pontuação, agora vem com. Alterei de modo que funcione das duas formas. pnfsNFSeR.pas
  6. Quando falou desmontar o xml considerou a solução de carregar o xml e assinar?
  7. Já verificou o manual? Lá tem informações importantes. https://www.gov.br/esocial/pt-br/documentacao-tecnica/manuais/mos-s-1-0-consolidada-ate-a-no-s-1-0-09-2021.pdf
  8. Olá, existem uma série de configurações no webservices. Quais seriam os valores recomendados e quais são usadas pelo eSocial? Onde eu poderia achar isso? Pesquisando vi que algumas delas parecem ser usadas ou fazer sentido apenas para nota fiscal. property Visualizar: Boolean read FVisualizar write FVisualizar default False; property UF: String read FUF write SetUF; property UFCodigo: integer read FUFCodigo; property AguardarConsultaRet: cardinal read FAguardarConsultaRet write FAguardarConsultaRet; property Tentativas: integer read FTentativas write SetTentativas default 5; property IntervaloTentativas: cardinal read FIntervaloTentativas write SetIntervaloTentativas default 1000; property AjustaAguardaConsultaRet: Boolean read FAjustaAguardaConsultaRet write FAjustaAguardaConsultaRet default False; property Salvar: Boolean read FSalvar write FSalvar default False; property Params: TStrings read FParams write SetParams; property TimeOut: Integer read FTimeOut write SetTimeOut default 5000; property TimeOutPorThread: Boolean read FTimeOutPorThread write SetTimeOutPorThread default False; property QuebradeLinha: String read FQuebradeLinha write FQuebradeLinha; property TimeZoneConf: TTimeZoneConf read FTimeZoneConf write FTimeZoneConf;
  9. Acho que pela mensagem se teve 1200 tem que ser sim, caso contrário tem que ser não
  10. Estava faltando uma validação pra não gerar o grupo, segue unit, desconsiderar a primeira pcesGerador.pas
  11. pcesGerador.pas A geração do grupo estava dependendo da versão, o que está incorreto. Apenas a tag opcFGTS não deve ser gerado na versão 1.0. ATENÇÂO: existem várias regras pra geração do grupo, não relacionadas a versão. Provavelmente, se não estiver tratado, irá gerar o grupo indevidamente mas é falta de tratamento do seu sistema, não é erro do acbr. N (se tpAdmissao = [6] OU (se codCateg for diferente de [104] e dtAdm >= [1988-10-05]) OU (se codCateg = [104] e dtAdm >= [2015-10-01]));
  12. Olá. Observei vários tópicos relativo a algumas mudanças no provedor, todos eles em relação aos WebServices. Eu uso muito a importação de XML e verificando porque o sistema parou de importar houveram muitas alterações nos campos. Posso ajustar, porém, será que alguma prefeitura utiliza a versão anterior do layout? E se utiliza, como resolver?
  13. Não estava gerando indGuia, segue correção pcesS1210.pas
  14. Bom dia. Estou abrindo uma página no WebBrowser mas ela aparece com scroll horizontal. Gostaria que ela se ajustasse/respeitasse a largura do WebBrowser, sem scroll. Alguma dica? Obrigado.
  15. Olá. Algumas tags referente a quantidade de dias trabalhados no desligamento de intermitente não estavam sendo geradas corretamente, segue correção. //O campo é sempre obrigatório para a categoria 111 (Intermitente) if (VersaoDF = ve02_05_00) then begin Gerador.wCampo(tcStr, '', 'indCumprParc', 1, 1, 1, eSTpCumprParcialAvisoToStr(obj.indCumprParc)); if ((obj.QtdDiasInterm >= 0) or (obj.CodCateg = 111)) then Gerador.wCampo(tcInt, '', 'qtdDiasInterm', 1, 2, 1, obj.QtdDiasInterm); end; if (VersaoDF = veS01_00_00) and (obj.infoIntermInst()) then GerarinfoInterm(obj.infoInterm); Abaixo o código incorreto, mesmo com zero dias deve informar a tag. Aproveitei e tirei referência a versão ve02_04_01 que não existe mais e modifiquei pensando na versão simplificada. if VersaoDF <= ve02_05_00 then begin Gerador.wCampo(tcStr, '', 'indCumprParc', 1, 1, 1, eSTpCumprParcialAvisoToStr(obj.indCumprParc)); //O campo é sempre obrigatório para a categoria 111 (Intermitente) if (VersaoDF <> ve02_04_01) and ((obj.QtdDiasInterm > 0) or (obj.CodCateg = 111)) then Gerador.wCampo(tcInt, '', 'qtdDiasInterm', 1, 2, 1, obj.QtdDiasInterm); end; pcesS2299.pas
  16. Não posso deixar de comentar, acabei de acessar o fórum pra pesquisar sobre isso, que estava gerando erro aqui !
  17. Usamos muito o ambiente de testes do eSocial. Pra isso os programadores devem ter acesso a um certificado digital válido, porém fornecer esse certificado ao meu ver é um grande problema de segurança. Alguma dica? Como vocês contornam essa situação?
  18. pcesGerador.pas Cometi um erro pois a tag pode aparecer ou não, agora creio estar correto, favor avaliar Alterado de if (VersaoDF = veS01_00_00) then Gerador.wCampo(tcStr, '', 'indGuia', 1, 1, 1, pEvt.indGuia); Para if (VersaoDF = veS01_00_00) then Gerador.wCampo(tcStr, '', 'indGuia', 1, 1, 0, pEvt.indGuia);
  19. Conforme layout foi acrescentado o campo acima, favor conferir a implementação. pcesGerador.paspcesCommon.pas
  20. Ia postar justamente isso, a solução é a alteração conforme o @EdmarFrazao postou. Tinha feito aqui e funcionou.
  21. Olá. Estava com problemas ao enviar o eSocial na máquina do cliente. Ao pegar um backup pra debugar/analisar o erro aqui funcionou tudo perfeito de primeira, como o certificado estava no banco enviou tudo de primeira. Utilizo SSLLib := libWinCrypt portanto creio eu independente de qualquer dll ou s.o. Pela experiência de quem já passou por problemas semelhantes, o que mais costuma influenciar na transmissão do eSocial? Quais seriam os pontos de atenção? Antivírus, sistema de banco, firewall, ... ???
  22. Gostaria de saber a diferença entre os métodos CarregarCertificado e DescarregarCertificado, estou confuso com informações desencontradas. Em alguns exemplos vi usando um, em outros outro. Analisando o código abaixo fiquei sem entender porque alguns exemplo chamam descarregar e outros carregar ... pra mim seria sempre carregar ... procedure TDFeSSLCryptClass.CarregarCertificado; begin DescarregarCertificado; Clear; if not EstaVazio(FpDFeSSL.URLPFX) then CarregarCertificadoDeURLPFX else if (not EstaVazio(FpDFeSSL.DadosPFX)) then CarregarCertificadoDeDadosPFX else if not EstaVazio(FpDFeSSL.ArquivoPFX) then CarregarCertificadoDeArquivoPFX else if NaoEstaVazio(FpDFeSSL.NumeroSerie) then CarregarCertificadoDeNumeroSerie else raise EACBrDFeException.Create( 'DadosPFX, ArquivoPFX, URLPFX ou NumeroSerie não especificados !'); LerInfoCertificadoCarregado; FpCertificadoLido := True; end;
  23. Ninguém iniciou as alterações? Qual seria a melhor forma de fazer isso, tratar dentro das classes se gera ou não determinada tag? Ou criar classes separadas visto que o layout antigo irá morrer?
  24. Houve uma alteração nesta classe +- em Novembro/2020 alterando 426: tpCaepf = (tcContrIndividual, tcProdRural, tcSegEspecial);//layout 2.1 para 436: tpCaepf = (tcVazio, tcContrIndividual, tcProdRural, tcSegEspecial);//layout 2.1 Porém tinha faltado corrigir as funções abaixo. Segue arquivo corrigido. pcesConversaoeSocial.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.

The popup will be closed in 10 segundos...