Ir para conteúdo
  • Cadastre-se

dev botao

e-Social: Limite de 50 eventos


Ver Solução Respondido por EMBarbosa,
  • Este tópico foi criado há 1040 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

O e-social impõe a limitação de 50 eventos por lote a ser enviado.  Não consegui identificar, dentro do método Enviar do componente ACBreSocial, em que momento esse limite é tratado.  Alguém pode me ajudar?

Esclarecimento:  Não carrego os registros nos INIs.  Minha aplicação possui uma rotina que gera um XML no formato do esquema (podendo ter mais de 50 registros/eventos).  A partir daí, uso o Eventos.LoadFromFile para transportar para o componente ACBreSocial e assiná-lo.   Em seguida, faço o envio com o método Enviar.  Funciona bem, até encontrar lotes com mais de 50 eventos.  Alguma ideia de como podemos tratar esta questão?

Link para o comentário
Compartilhar em outros sites

1 hora atrás, Jucemar Duarte disse:

O e-social impõe a limitação de 50 eventos por lote a ser enviado.  Não consegui identificar, dentro do método Enviar do componente ACBreSocial, em que momento esse limite é tratado.  Alguém pode me ajudar?

Esclarecimento:  Não carrego os registros nos INIs.  Minha aplicação possui uma rotina que gera um XML no formato do esquema (podendo ter mais de 50 registros/eventos).  A partir daí, uso o Eventos.LoadFromFile para transportar para o componente ACBreSocial e assiná-lo.   Em seguida, faço o envio com o método Enviar.  Funciona bem, até encontrar lotes com mais de 50 eventos.  Alguma ideia de como podemos tratar esta questão?

Pelo que entendi vc não quer que dê erro se passar de 50 e sim que ele consiga enviar fragmentado.

Se for isso, não vejo como essa regra poderia ser implementada dentro do ACBr, pois se você iniciou o envio ele seria responsável por separar e enviar cada 50 em um lote, teria que saber qual deu certo e qual deu erro, lembre-se que a comunicação é assincrona, pode ser que um lote consiga ser enviado e o outro não...
ao meu ver seria algo muito elaborado.

No meu caso faço a tratativa antes, mando para o componente apenas os 50 registros, no segundo envio mando os outros 50.

Entendo que essa regra deva ficar na aplicação cliente.

Editado por Alisson Souza Pereira
Incompleto
  • Curtir 1
Link para o comentário
Compartilhar em outros sites

"No meu caso faço a tratativa antes, mando para o componente apenas os 50 registros, no segundo envio mando os outros 50." - Alisson

Pois é, amigo Alissonatualmente estou jogando na conta do usuário escolher quais registros ele quer enviar (com limite de 50).  Mas isso não é nada elegante.  

Vou estudar o assunto.  Acredito que dê para fazer sim.  Acompanhe comigo: minha aplicação gerou um XML gigante com (por exemplo) 100 eventos. Quando carrego para o componente, o mesmo particiona em 100 XMLs já assinados.  Vou tentar fazer com que, na montagem do lote, o componente gere, em vez de um, quantos lotes forem necessários para satisfazer a requisição. 

 

Link para o comentário
Compartilhar em outros sites

  • Consultores
  • Solution
10 horas atrás, Jucemar Duarte disse:

"No meu caso faço a tratativa antes, mando para o componente apenas os 50 registros, no segundo envio mando os outros 50." - Alisson

Pois é, amigo Alissonatualmente estou jogando na conta do usuário escolher quais registros ele quer enviar (com limite de 50).  Mas isso não é nada elegante.  

Vou estudar o assunto.  Acredito que dê para fazer sim.  Acompanhe comigo: minha aplicação gerou um XML gigante com (por exemplo) 100 eventos. Quando carrego para o componente, o mesmo particiona em 100 XMLs já assinados.  Vou tentar fazer com que, na montagem do lote, o componente gere, em vez de um, quantos lotes forem necessários para satisfazer a requisição. 

 

Do meu ponto de vista, é muito melhor que o seu sistema faça o controle.

Se o componente fizesse o particionamento do lote, ele teria que retornar a você informações como quantidade de lotes e id de cada lote. Isso complica muito.

É bem mais fácil você implementar essa separação de lotes na sua aplicação e alimentar o componente de acordo com os lotes gerados pela sua aplicação.

  • Curtir 2

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
Link para o comentário
Compartilhar em outros sites

Em 11/06/2021 at 15:28, EMBarbosa disse:

Do meu ponto de vista, é muito melhor que o seu sistema faça o controle.

Se o componente fizesse o particionamento do lote, ele teria que retornar a você informações como quantidade de lotes e id de cada lote. Isso complica muito.

É bem mais fácil você implementar essa separação de lotes na sua aplicação e alimentar o componente de acordo com os lotes gerados pela sua aplicação.

EMBarbosa, você tem razão.  Eu cheguei à mesma conclusão ao estudar melhor o assunto.  Obrigado.

Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 1040 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • 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...