Ir para conteúdo
  • Cadastre-se

dev botao

Erro ao carregar XML do evento S-5011


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

Recommended Posts

  • Membros Pro
Postado

 

 

Bom dia!

Após a atualização do ACBR referente revisão 16797 , está apresentando o erro "List index out of bounds (0)' ao tentar carregar o xml do evento S-5011.

var S5011: TS5011;

begin
  S5011 := TS5011.Create;
  S5011.Xml := S1299XML5011.AsString;
  ....
end;

verifiquei os fontes e ao que parece o problema é no treco abaixo (linha 778 da unit pcesS5011.pas), onde, após adicionar um item no comando InfoCREstab.add, o InfoCREstab.Count permanece = 0. Não consegui entender o porque, talvez eu esteja fazendo algo errado

          while Leitor.rExtrai(4, 'infoCREstab', '', j + 1) <> '' do
          begin
            infoCS.ideEstab.Items[i].infoCREstab.Add;
            infoCS.ideEstab.Items[i].infoCREstab.Items[j].FtpCR     := leitor.rCampo(tcInt, 'tpCR');
            infoCS.ideEstab.Items[i].infoCREstab.Items[j].FvrCR     := leitor.rCampo(tcDe2, 'vrCR');
            infoCS.ideEstab.Items[i].infoCREstab.Items[j].FvrSuspCR := leitor.rCampo(tcDe2, 'vrSuspCR');
            inc(j);
          end;

Obrigado a todos!

  • Membros Pro
Postado

Boa tarde!

Acredito que consegui resolver o problema, que era na "function TinfoCREstabCollection.New: TinfoCREstabCollectionItem;" (linha 1173), faltava o comando Self.Add(Result);

Unit alterada em anexo.

Abraço a todos!

pcesS5011.pas

  • Curtir 2
  • Consultores
Postado
Em 07/04/2019 at 11:41, arce disse:

Atualizei o fonte com a modificação que o @CarlosSolla mencionou e o erro continua ocorrendo, quando chama o método LerXML.

Segue o arquivo de retorno para análise, pq eu não encontrei uma solução.

EventoS5011.xml 43 kB · 0 downloads

Olá Arce,

   Testei no tanto no Lazarus como no Delphi e funcionou corretamente.

   Utilizando o programa de exemplo, fiz as seguintes alterações no evento "onclick" do botão "btnCarregarXML":

procedure TFExemploEsocial.btnCarregarXMLClick(Sender: TObject);
var
  i: Integer;
 S5011: TS5011;
begin
  OpenDialog1.Title := 'Selecione o Evento (Arquivo XML)';
  OpenDialog1.DefaultExt := '*.xml';
  OpenDialog1.Filter :=
    'Arquivos XML (*.xml)|*.xml|Todos os Arquivos (*.*)|*.*';
  OpenDialog1.InitialDir := ACBreSocial1.Configuracoes.Arquivos.PathSalvar;

  if OpenDialog1.Execute then
  begin
    MemoResp.Clear;
    MemoResp.Lines.LoadFromFile(OpenDialog1.FileName);
    S5011 := TS5011.Create;
    S5011.Xml:= MemoResp.Lines.Text;
  end;

  MemoResp.Lines.Clear;
  MemoResp.Lines.Add('XML de Eventos Carregado com Sucesso!');
  MemoResp.Lines.Add(' ');
  ...// as demais linhas deixei não alterei..

Talvez tenha alguma coisa que eu não entendi. Queira verificar, por favor.

[]'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.
  • Consultores
Postado
30 minutos atrás, arce disse:

@EMBarbosaOs testes foram realizados com o XML que enviei? Pq este contém dados referente a Produçaõ Rural S-1250

Ué... testei com o arquivo que você anexou acima...

  • Curtir 1

[]'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.
Postado

Agora deu certo, limpei as DCUs e recompilei. Estranho, pq uso o ACBr com os diretórios vinculados individualmente no path do projeto, para realizar customizações.

O importante que funcionou. Muito obrigado

  • Curtir 1
  • Administradores
Postado

Obrigado por reportar.

Fechando. Para novas dúvidas, criar um novo tópico.

  • Curtir 1
Consultora SAC ACBr

Juliana Tamizou

Gerente de Projetos ACBr / Diretora de Marketing AFRAC
Ajude o Projeto ACBr crescer - Seja Pro

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

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

  • Este tópico foi criado há 2060 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • 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.