ConsultarLoteEventos(aIdLoteEventos)
Para consultar um evento do eSocial que enviamos, utilizaremos o método ConsultarLoteEventos e informaremos o número de protocolo de um evento válido.
Método
ConsultarLoteEventos(const aIdLoteEventos: WideString): IspdRetConsultarLote;
Parâmetros
Argumento | Tipo | Detalhes |
aIdLoteEventos | String | Número de protocolo que é retornado no envio dos eventos |
Retorno
Este método retornará um objeto do tipo IspdRetConsultarLote com quatro níveis de retorno:
IspdRetConsultarLote
Os campos a seguir são referentes ao Lote, onde é indicado o Status do lote na receita e suas principais informações. É dele que retiramos as informações para os demais níveis. Ele é demonstrado com a interface RetConsulta em nossos exemplos.
Campo | Função | Tipo | Exemplo |
IdLote | Propriedade que retorna o Identificador de lote | String | 9f1100ff-e8d8-4ab3-80c5-063ca5fg7f9a |
NumeroProtocolo | Propriedade que retorna o protocolo de envio do evento | String | 1.2.201801.0000000000001110983 |
Mensagem | Propriedade que retorna a mensagem gerada pela Receita | String | Lote processado com sucesso. |
Status | Propriedade que retorna o status atual do Lote | String |
EMPROCESSAMENTO PROCESSADO ERRO |
XmlEnvio | Propriedade que retorna o XML de resposta da Receita | String | XML de retorno |
XmlRetorno | Propriedade que retorna o XML de resposta da Receita | String | XML de retorno |
TempoEstimadoConclusao | Propriedade que retorna o tempo (em segundos) que a receita irá demorar para processar o lote | Array | 020 |
Eventos | Propriedade que retorna os eventos do lote | Propriedade que retorna as ocorrências do envio | _RetConsultaItem := _RetConsulta.Eventos[1]; |
Ocorrencias | Propriedade que retorna as ocorrências do envio | Array | _RetConsultaOcorrenciaEnvio := _RetConsulta.Ocorrencias[1]; |
IspdRetConsultarLoteOcorrenciaEnvio
Dentro do campo ocorrências nós retiramos as informações referentes a erros ocorridos no lote. É possível verificar a descrição e em que local ocorreu o erro ou advertência. Ele é demonstrado com a interface RetConsultaOcorrenciaEnvio em nossos exemplos.
Campo | Função | Tipo | Exemplo |
Codigo | Propriedade que retorna o código da situação desse evento | String | 609 |
Descricao | Propriedade que retorna a descrição da ocorrência | String | Código inválido. |
Tipo | Propriedade que retorna o código do tipo de ocorrência | String |
1 - Erro 2 - Advertência |
Localizacao | Propriedade que retorna o caminho da tag ou atributo em que ocorreu o erro. | String | /eSocial/envioLoteEventos/eventos/evento/@Id |
IspdRetConsultarLoteItem
Dentro do campo eventos nós retiramos as informações dos eventos enviados a receita. É possível verificar a situação dos eventos, se eles foram autorizados ou não e suas principais informações. Ele é demonstrado com a interface RetConsultaItem em nossos exemplos.
Campo | Função | Tipo | Exemplo |
IdEvento | Identificação do evento | String | ID1081871680000002018011010350000001 |
NumeroRecibo | Recibo de autorização do evento | String | 1.2.0000000000010884662 |
cStat | Código da situação desse evento | String | 201 |
Mensagem | Mensagem referente ao código do evento | String | Sucesso. |
Status | Status do evento na receita | String | AUTORIZADO |
Ocorrencias | Ocorrências dos eventos | Array | _RetConsultaOcorrencia := _RetConsultaItem.Ocorrencias[1]; |
S5001 | Informações das contribuições sociais por trabalhador, quando existir | Array | _RetConsultaItem.S5001 |
S5002 | Imposto de Renda Retido na Fonte, quando existir | Array | _RetConsultaItem.S5002 |
S5003 | Informações do FGTS por Trabalhador | Array | _RetConsultaItem.S5003 |
S5011 | Informações das contribuições sociais consolidadas por contribuinte, quando existir | Array | _RetConsultaItem.S5011 |
S5012 | Informações do IRRF consolidadas por contribuinte, quando existir | Array | _RetConsultaItem.S5012 |
S5013 | Informações do FGTS consolidadas por contribuinte | Array | _RetConsultaItem.S5013 |
IspdRetConsultarLoteOcorrencia
Dentro do campo ocorrência nos eventos nós retiramos as informações referentes a erros ocorridos nos eventos. É possível verificar a descrição e em que local ocorreu o erro ou advertência. Ele é demonstrado com a interface RetConsultaOcorrencia em nossos exemplos.
Campo | Função | Tipo | Exemplo |
Codigo | Propriedade que retorna o código da situação desse evento | String | 609 |
Descricao | Propriedade que retorna a descrição da ocorrência | String | Código inválido. |
Tipo | Propriedade que retorna o código do tipo de ocorrência | String |
1 - Erro 2 - Advertência |
Localizacao | Propriedade que retorna o caminho da tag ou atributo em que ocorreu o erro. | String | /eSocial/envioLoteEventos/eventos/evento/@Id |
Requisitos
Para consultar um evento, é necessário referenciar um número de protocolo válido.
Exemplos
Delphi
var
Lote: IspdRetConsultarLote;
_i, _j, _k: Integer;
begin
Lote := eSocial.ConsultarLoteEventos(edtIDLote.Text);
mmRetorno.Lines.Clear;
mmRetorno.Lines.Add('Lote:');
mmRetorno.Lines.Add(' Número do Protocolo: ' + Lote.NumeroProtocolo);
mmRetorno.Lines.Add(' Mensagem de Retorno: ' + Lote.Mensagem);
mmRetorno.Lines.Add(' Status do Lote: ' + Lote.Status);
mmRetorno.Lines.Add(' Tempo estimado para conclusão do processamento: ' + Lote.TempoEstimadoConclusao + #13#10);
for _i := 0 to Lote.Count - 1 do
begin
mmRetorno.Lines.Add('Evento ' + IntToStr(_i+1) + ':');
mmRetorno.Lines.Add(' Id Evento: ' + Lote.Eventos[_i].IdEvento);
mmRetorno.Lines.Add(' Número Recibo: ' + Lote.Eventos[_i].NumeroRecibo);
mmRetorno.Lines.Add(' Código de Status: ' + Lote.Eventos[_i].cStat);
mmRetorno.Lines.Add(' Mensagem: ' + Lote.Eventos[_i].Mensagem);
mmRetorno.Lines.Add(' Status do Evento: ' + Lote.Eventos[_i].Status + #13#10);
for _j := 0 to Lote.Eventos[_i].Count -1 do
begin
mmRetorno.Lines.Add(' Ocorrencia ' + IntToStr(_j+1) + ':');
mmRetorno.Lines.Add(' Código: ' + Lote.Eventos[_i].Ocorrencias[_j].Codigo);
mmRetorno.Lines.Add(' Descrição: ' + Lote.Eventos[_i].Ocorrencias[_j].Descricao);
mmRetorno.Lines.Add(' Tipo: ' + Lote.Eventos[_i].Ocorrencias[_j].Tipo);
mmRetorno.Lines.Add(' Localização: ' + Lote.Eventos[_i].Ocorrencias[_j].Localizacao + #13#10);
end;
end;
for _k := 0 to Lote.CountOcorrencias - 1 do
begin
mmRetorno.Lines.Add('Lote:');
mmRetorno.Lines.Add(' Codigo: ' + Lote.Ocorrencias[_k].Codigo);
mmRetorno.Lines.Add(' Tipo: ' + Lote.Ocorrencias[_k].Tipo);
mmRetorno.Lines.Add(' Localização: ' + Lote.Ocorrencias[_k].Localizacao);
mmRetorno.Lines.Add(' Descrição: ' + Lote.Ocorrencias[_k].Descricao);
end;
mmRetorno.Lines.Add('XML Envio: ' + #13#10 + ' ' + Lote.XmlEnvio);
mmRetorno.Lines.Add('XML Retorno: ' + #13#10 + ' ' + Lote.XmlRetorno);
C#
ESocialClientX.IspdRetConsultarLote Lote;
Lote = eSocial.ConsultarLoteEventos(edtIDLote.Text);
mmRetorno.Text = "Lote:" + Environment.NewLine;
mmRetorno.Text += " Número do Protocolo: " + Lote.NumeroProtocolo + Environment.NewLine;
mmRetorno.Text += " Mensagem de Retorno: " + Lote.Mensagem + Environment.NewLine;
mmRetorno.Text += " Status do Lote: " + Lote.Status + Environment.NewLine;
mmRetorno.Text += " Tempo estimado para conclusão do processamento: " + Lote.TempoEstimadoConclusao + Environment.NewLine + Environment.NewLine;
mmRetorno.Text += Environment.NewLine;
for (var k = 0; k < Lote.CountOcorrencias(); k++)
{
mmRetorno.Text = "Lote:" + Environment.NewLine;
mmRetorno.Text += " Codigo: " + Lote.Ocorrencias[k].Codigo + Environment.NewLine;
mmRetorno.Text += " Tipo: " + Lote.Ocorrencias[k].Tipo + Environment.NewLine;
mmRetorno.Text += " Localização: " + Lote.Ocorrencias[k].Localizacao + Environment.NewLine;
mmRetorno.Text += " Descrição: " + Lote.Ocorrencias[k].Descricao + Environment.NewLine + Environment.NewLine;
}
for (var i = 0; i < Lote.Count(); i++)
{
mmRetorno.Text = "Evento:" + Environment.NewLine;
mmRetorno.Text += " Id Evento: " + Lote.Eventos[i].IdEvento + Environment.NewLine;
mmRetorno.Text += " Número Recibo: " + Lote.Eventos[i].NumeroRecibo + Environment.NewLine;
mmRetorno.Text += " Código de Status: " + Lote.Eventos[i].cStat + Environment.NewLine;
mmRetorno.Text += " Mensagem: " + Lote.Eventos[i].Mensagem + Environment.NewLine;
mmRetorno.Text += " Status do Evento: " + Lote.Eventos[i].Status + Environment.NewLine;
mmRetorno.Text += Environment.NewLine;
for (var j = 0; j < Lote.Eventos[i].Count(); j++)
{
mmRetorno.Text += " Ocorrência: " + (j + 1).ToString() + Environment.NewLine;
mmRetorno.Text += " Código: " + Lote.Eventos[i].Ocorrencias[j].Codigo + Environment.NewLine;
mmRetorno.Text += " Descrição: " + Lote.Eventos[i].Ocorrencias[j].Descricao + Environment.NewLine;
mmRetorno.Text += " Tipo: " + Lote.Eventos[i].Ocorrencias[j].Tipo + Environment.NewLine;
mmRetorno.Text += " Localização: " + Lote.Eventos[i].Ocorrencias[j].Localizacao + Environment.NewLine;
}
Visual Basic 6
Dim Lote As spdRetConsultarLote
Dim i, j, k As Integer
Set Lote = eSocial.ConsultarLoteEventos(edtIDLote.Text)
mmRetorno.Text = "Lote:" & vbNewLine
mmRetorno.Text = mmRetorno.Text & " Número do Protocolo: " & Lote.NumeroProtocolo & vbNewLine
mmRetorno.Text = mmRetorno.Text & " Mensagem de Retorno: " & Lote.Mensagem & vbNewLine
mmRetorno.Text = mmRetorno.Text & " Status do Lote: " & Lote.Status & vbNewLine
mmRetorno.Text = mmRetorno.Text & " Tempo estimado para conclusão do processamento: " & Lote.TempoEstimadoConclusao & vbNewLine & vbNewLine
mmRetorno.Text = mmRetorno.Text & "XML Envio: " & vbNewLine & " " & Lote.XmlEnvio
mmRetorno.Text = mmRetorno.Text & "XML Retorno: " & vbNewLine & " " & Lote.XmlRetorno
For i = 0 To Lote.Count - 1
mmRetorno.Text = mmRetorno.Text & "Evento: " & Lote.Eventos(i).IdEvento & vbNewLine
mmRetorno.Text = mmRetorno.Text & " Número Recibo: " & Lote.Eventos(i).NumeroRecibo & vbNewLine
mmRetorno.Text = mmRetorno.Text & " Código de Status: " & Lote.Eventos(i).cStat & vbNewLine
mmRetorno.Text = mmRetorno.Text & " Mensagem: " & Lote.Eventos(i).Mensagem & vbNewLine
mmRetorno.Text = mmRetorno.Text & " Status do Evento: " & Lote.Eventos(i).Status & vbNewLine & vbNewLine
For j = 0 To Lote.Eventos(i).Count - 1
mmRetorno.Text = mmRetorno.Text & " Código: " & Lote.Eventos(i).Ocorrencias(j).Codigo & vbNewLine
mmRetorno.Text = mmRetorno.Text & " Descrição: " & Lote.Eventos(i).Ocorrencias(j).Descricao & vbNewLine
mmRetorno.Text = mmRetorno.Text & " Localização: " & Lote.Eventos(i).Ocorrencias(j).Localizacao & vbNewLine
mmRetorno.Text = mmRetorno.Text & " Descrição: " & Lote.Eventos(i).Ocorrencias(j).Descricao & vbNewLine & vbNewLine
Next
Next
For k = 0 To Lote.CountOcorrencias - 1
mmRetorno.Text = "Lote:" & vbNewLine
mmRetorno.Text = mmRetorno.Text & " Codigo: " & Lote.Eventos(i).Ocorrencias(j).Envio.Codigo & vbNewLine
mmRetorno.Text = mmRetorno.Text & " Tipo: " & Lote.Eventos(i).Ocorrencias(j).Envio.Tipo & vbNewLine
mmRetorno.Text = mmRetorno.Text & " Localização: " & Lote.Eventos(i).Ocorrencias(j).Envio.Localizacao & vbNewLine
mmRetorno.Text = mmRetorno.Text & " Descrição: " & Lote.Eventos(i).Ocorrencias(j).Envio.Descricao & vbNewLine & vbNewLine
Next
Comentários
0 comentário
Por favor, entre para comentar.