Open crmmvio opened 1 week ago
A chave de acesso vai depender do schema do documento. Teria que verificar como pegar a chave para cada possível schema, acho que é meio "padrão" que tenha a propriedade ID com a chave. Mas precisaria conferir isso.
Se você puder conferir isso e me passar as informações de como pegar a chave para cada tipo de documento que a API pode retornar, eu posso sim incluir a informação da chave no Documento.
Estou usando assim, mas não sei te falar para todos por que no meu caso eu só estou considerando os documentos CTe e NFe, eu leio atravez do XmlDocument retornado na classe Documento, mas assim que eu tiver mais tempo tento fazer algo melhor e possa ser usado para todos os documentos.
namespace = http://www.portalfiscal.inf.br
para CTe ` var sefazNamespace = _configurationCustom.GetSectionValue("AppConfig:SefazNamespace"); XmlNamespaceManager ns = new XmlNamespaceManager(xmlDoc.NameTable); ns.AddNamespace("ns", $"{sefazNamespace}/cte");
XmlNode globalNode = xmlDoc.FirstChild; XmlNode nodeChaveAcesso = globalNode.SelectSingleNode("//ns:chCTe", ns); `
para NFe ` var sefazNamespace = _configurationCustom.GetSectionValue("AppConfig:SefazNamespace"); XmlNamespaceManager ns = new XmlNamespaceManager(xmlDoc.NameTable); ns.AddNamespace("ns", $"{sefazNamespace}/nfe");
XmlNode globalNode = xmlDoc.FirstChild; XmlNode nodeChaveAcesso = globalNode.SelectSingleNode("//ns:chNFe", ns); string result = nodeChaveAcesso.InnerText; `
Seria muito util se tivesse na lista de propriedade do retorno da consulta o numero de Chave de acesso do Documento ao invés de ter somente a NSU, isso seria possível?