Olá Pessoal,
Com esse refactoring mudou a forma de ler as informações de retorno ao averbar um documento.
Para pegar o retorno do envio, agora fazemos da seguinte forma:
ACBrANe1.WebService.Enviar.****
onde **** é os campos: Numero, Serie, Filial, etc
Veja este fragmento de código do programa exemplo:
memoLog.Lines.Add('Parâmetros de Retorno');
memoLog.Lines.Add('Numero : ' + Numero);
memoLog.Lines.Add('Serie : ' + Serie);
memoLog.Lines.Add('Filial : ' + Filial);
memoLog.Lines.Add('CNPJ Cliente : ' + CNPJCliente);
memoLog.Lines.Add('Tipo Documento: ' + tpDoc);
memoLog.Lines.Add('Data/Hora : ' + DateTimeToStr(DataHora));
memoLog.Lines.Add('Numero do Prot: ' + Protocolo);
memoLog.Lines.Add('CTe : ' + CTe);
memoLog.Lines.Add('Sucesso : ' + BoolToStr(Sucesso, True));
Temos também os dados do seguro que é lido da seguinte forma:
ACBrANe1.WebService.Enviar.DadosSeguro.****
if aDadosSeguro.Count > 0 then
begin
memoLog.Lines.Add(' ');
memoLog.Lines.Add('Dados do Seguro:');
for i := 0 to aDadosSeguro.Count -1 do
begin
memoLog.Lines.Add('Numero Averbação: ' + aDadosSeguro[i].NumeroAverbacao);
memoLog.Lines.Add('CNPJ Seguradora : ' + aDadosSeguro[i].CNPJSeguradora);
memoLog.Lines.Add('Nome Seguradora : ' + aDadosSeguro[i].NomeSeguradora);
memoLog.Lines.Add('Numero Apolice : ' + aDadosSeguro[i].NumApolice);
memoLog.Lines.Add('Tipo Movimento : ' + aDadosSeguro[i].TpMov);
memoLog.Lines.Add('Tipo de DDR : ' + aDadosSeguro[i].TpDDR);
memoLog.Lines.Add('Valor Averbado : ' + FloatToStr(aDadosSeguro[i].ValorAverbado));
memoLog.Lines.Add('Ramo Averbado : ' + aDadosSeguro[i].RamoAverbado);
memoLog.Lines.Add('---------');
end;
end;
Recomento fortemente que estudem o programa exemplo.
No que se refere ao retorno vejam a procedure ChecarResposta.