No demo ainda não tem esta opção de consultar MDFEs não encerrados.
Mas eu faço assim.
primeiro configuro o componente.
DM.MDFe1.Configuracoes.Certificados.ArquivoPFX :=DM.qrConf.FieldByName('END_CERT').AsString;; DM.MDFe1.Configuracoes.Certificados.Senha :=DM.qrConf.FieldByName('SENHA_CERT').AsString; DM.MDFe1.Configuracoes.Certificados.NumeroSerie:=DM.qrConf.FieldByName('NR_SERIE_CERT').AsString; DM.MDFe1.Configuracoes.Geral.SSLLib := libCapicom;
DM.MDFe1.Configuracoes.Geral.FormaEmissao:=StrToTpEmis(OK,IntToStr(DM.qrConf.FieldByName('FORMA_EMISS_WEB').AsInteger)); DM.MDFe1.Configuracoes.Geral.Salvar:= True; DM.MDFe1.Configuracoes.Geral.RetirarAcentos := False; {Arquivos do MDFe} DM.MDFe1.Configuracoes.Arquivos.PathSchemas:=ExtractFilePath(application.exename)+'Schemas'; DM.MDFe1.Configuracoes.Arquivos.PathSalvar :=DM.qrConf.FieldByName('END_ARQ_ENV_RESP').AsString; DM.MDFe1.Configuracoes.Arquivos.PathMDFe:=DM.qrConf.FieldByName('END_ARQ_ENV_RESP').AsString; DM.MDFe1.Configuracoes.Arquivos.PathEvento:=DM.qrConf.FieldByName('END_ARQ_ENV_RESP').AsString;
DM.MDFe1.Configuracoes.WebServices.UF :=DM.qrConf.FieldByName('UF_EMIT').AsString; DM.MDFe1.Configuracoes.WebServices.Ambiente:=StrToTpAmb(Ok,IntToStr(DM.qrConf.FieldByName('TP_AMB_WEB').AsInteger)); DM.MDFe1.Configuracoes.WebServices.Visualizar:=True; DM.MDFe1.DAMDFe.TipoDAMDFe:=StrToTpImp(OK,IntToStr(DM.qrConf.FieldByName('TIPO_IMP_DACTE').AsInteger)); DM.MDFe1.DAMDFe.Logo :=DM.qrConf.FieldByName('END_LOGO_DACTE').AsString; DM.MDFe1.DAMDFe.PathPDF :=DM.qrConf.FieldByName('END_ARQ_PDF').AsString;
depois faço a busca e insiro no clientdataset;
try DM.MDFe1.WebServices.ConsMDFeNaoEnc.InfMDFe.Clear;//Limpa antes de inserir if DM.MDFe1.WebServices.ConsultaMDFeNaoEnc(DM.qrConf.FieldByName('CNPJ_EMIT').AsString) then //Nesta Linha da o erro begin cdsMdfe.EmptyDataSet; cdsMdfe.Close; cdsMdfe.Open; for i := 0 to DM.MDFe1.WebServices.ConsMDFeNaoEnc.InfMDFe.Count -1 do begin cdsMdfe.Insert; cdsMdfechave_acesso.AsString := DM.MDFe1.WebServices.ConsMDFeNaoEnc.InfMDFe.Items.chMDFe; cdsMdfenr_protocolo.AsString := DM.MDFe1.WebServices.ConsMDFeNaoEnc.InfMDFe.Items.nProt; cdsMdfe.Post; end; end; except on E:exception do begin Memo1.Lines.Add(DM.MDFe1.WebServices.ConsMDFeNaoEnc.xMotivo); Memo1.Lines.Add(' '); Memo1.Lines.Add('XML de Envio'); Memo1.Lines.Add(DM.MDFe1.WebServices.ConsMDFeNaoEnc.DadosMsg); Memo1.Lines.Add(' '); Memo1.Lines.Add(e.Message);
end; end;