A função NFeEnviaEPEC realiza o envio do EPEC (Evento Prévio de Emissão em Contingência).
O EPEC é uma opção de contingência que substituiu o DPEC.
Para usar o EPEC, os passos básicos são:
- Constatado algum impedimento para transmissão da NF-e;
- Decisão da adoção do EPEC em detrimento das demais opções de contingência;
- Gerar a NF-e com a tag tpEmis=4.
- Efetuar o envio com esta função.
- Gerar o DANFE informando o protocolo de registro do EPEC.
- Efetuar a circulação da mercadoria com o DANFe gerado.
- Assim que os problemas que impediram a NF-e de ser transmitida forem sanados, é necessário transmitir a NF-e para a SEFAZ sem nenhuma alteração no XML e mantendo tpEmis=4.
Portanto, é importante que o desenvolvedor valide tudo que for possível no XML que será transmitido posteriormente e impeça qualquer tipo de alteração no mesmo depois que o EPEC for autorizado.
Tipo de Retorno
Integer
Pacote
O função NFeEnviaEPEC está definida dentro do pacote NF-eEnviaEPEC.pkg.
Sintaxe
Move (NFeEnviaEPEC(&{vParams})) to {iRet}
Onde:
- &{vParams} é uma variável do tipo tNFeEnviaEPEC e é passada por referência contendo campos com os parâmetro para execução da função e campos onde a função devolve informações, conforme abaixo:
- sSiglaWS: sigla do WS para onde será enviado o evento. Se for passado em branco, por padrão será usado "AN"
- iTpAmbiente: ambiente para envio (1-produção/2-homologação).
- sCertificado: é a string que representa o certificado digital que será usado na transmissão dos dados. Se não for informado, uma tela será exibida para o usuário escolher um dos certificados instalados para o usuário corrente. Veja mais detalhes sobre como informar este parâmetro clicando aqui.
- sVersao: versão do schema XML de comunicação. Se não for informado, será usado "4.00".
- sCaminhoXMLNFe: caminho do arquivo XML da NF-e cujo EPEC será transmitido. O XML deve estar sem assinatura e o tpEmis deve ser igual a 4.
- sCaminhoXMLEPEC: caminho completo do arquivo XML que será gerado pela função se a transmissão do EPEC for bem sucedida.
- sdhEvento: data e hora do evento. Se não for informado, a DLL usa a data/hora da máquina. Se desejar informar, usar o formato "AAA-MM-DD HH:MM:SS".
- sProxy: é usado para informar o endereço do servidor proxy, se necesário. Por exemplo http://proxyserver:port. Verificar com o cliente qual é o endereço do servidor proxy e a porta https, pois a porta padrão do https é 443, e sendo assim teríamos algo como http://192.168.15.1:443..
- sUsuario: é usado para informar o usuário para autenticação no proxy, se necessário.
- sSenha: é usado informar a senha de autenticação no proxy, se necessário.
- sLicenca: é usado para informar a chave da licença de uso ou registro quando a função é utilizada em ambiente de produção.
- bExibeErro: é usado para indicar se a função deve exibir ou não os erros que ocorrerem na execução.
- sMsgDados: retorna a mensagem XML do evento EPEC criado pela DLL que foi enviado ao WS.
- sMsgRetWS: retorna a mensagem XML de resposta do WS.
- icStat: retorna o resultado da chamada do WS.
- sMsgResultado: retorna a literal do resultado da chamada do WS.
- snProtocoloEPEC: retorna o número do protocolo de registro do Evento.
- sdhProtocoloEPEC: retorna a data e hora de registro do Evento.
- sListaChaveNFE: retorna uma lista de até 50 chaves de NF-e pendentes de conciliação no AN, isto é, que ainda não foram transmitidas para a SEFAZ de origem.
- {iRet} retorno da função, onde 0 (zero) indica que a comunicação com o Web Service foi bem sucedida e qualquer valor diferente de 0 (zero) indica que houve erro.
Observação
- O parâmetro sVesão caso não seja informado, passa a se informar "4.00" a partir da versão 2021/01. Versôes anteriores informam "1.00".
- Esta função está disponível a partir da versão 2019/01.
Não encontrou o que precisava, entre em contato conosco.