Página 2 de 4
Ambiente de produção 4.00
Enviado: 24 Abr 2018 10:25
por JoséQuintas
Realmente, se fosse UF diferente daria pra entender, mas se trata da mesma UF, nós dois testando SP.
Já teve mais alterações, estou vendo que o seu método está meio antigo, não sei se pode ter escapado alguma coisa.
Código: Selecionar todos
METHOD NFeStatusServico( cUF, cCertificado, cAmbiente ) CLASS SefazClass
hb_Default( @::cProjeto, WS_PROJETO_NFE )
hb_Default( @::cVersao, "3.10" )
IF ::cVersao == "3.10"
::aSoapActionList := { ;
{ "**", "3.10", "nfeStatusServicoNF2", "http://www.portalfiscal.inf.br/nfe/wsdl/NfeStatusServico2" }, ;
{ "BA", "3.10", "nfeStatusServicoNF", "http://www.portalfiscal.inf.br/nfe/wsdl/NfeStatusServico" } }
ELSE
::aSoapActionList := { ;
{ "**", "4.00", "nfeStatusServicoNF", "http://www.portalfiscal.inf.br/nfe/wsdl/NFeStatusServico4" } }
ENDIF
::Setup( cUF, cCertificado, cAmbiente, WS_NFE_STATUSSERVICO )
::cXmlEnvio := [<consStatServ versao="] + ::cVersao + [" ] + WS_XMLNS_NFE + [>]
::cXmlEnvio += XmlTag( "tpAmb", ::cAmbiente )
::cXmlEnvio += XmlTag( "cUF", ::UFCodigo( ::cUF ) )
::cXmlEnvio += XmlTag( "xServ", "STATUS" )
::cXmlEnvio += [</consStatServ>]
::XmlSoapPost()
RETURN ::cXmlRetorno
Numa das últimas alterações, movi a lista de SoapAction pra dentro do método.
O teste que usei, está pronto pra uso:
Só não esqueça de selecionar certificado primeiro.
Depois pode escolher versão e ambiente.
Ambiente de produção 4.00
Enviado: 24 Abr 2018 10:33
por JoséQuintas
Apenas como comentário:
criei as variáveis:
Código: Selecionar todos
cVersao := "3.10"
cCertificado := ""
cUF := "SP"
cAmbiente := WS_AMBIENTE_HOMOLOGACAO
e antes de usar, atribuo essas variáveis
Código: Selecionar todos
oSefaz := SefazClass():New()
oSefaz:cUF := cUF
oSefaz:cVersao := cVersao
oSefaz:cCertificado := cCertificado
oSefaz:cAmbiente := cAmbiente
Pelas opções do menu, apenas altero essas variáveis, é o que permite testar qualquer versão, qualquer ambiente, e qualquer UF.
Nota:
O programa teste tá pronto pra tudo, mas não a classe, com certeza faltam particularidades de UFs.
Ainda falta opção pra NFCE no teste.
Ambiente de produção 4.00
Enviado: 24 Abr 2018 10:36
por depaula.jau
No seu teste.exe
- Produção OK
- Homologação Deu erro:
Ambiente de produção 4.00
Enviado: 24 Abr 2018 10:40
por JoséQuintas
Depois do post já acrescentei a opção de NFCE, pra poder testar.
Mas acho que vou alterar o menu pra já indicar o que está selecionado, e economizar fonte/tela.
Ambiente de produção 4.00
Enviado: 24 Abr 2018 10:41
por depaula.jau
Se for o caso, posso atualizar as classes para que fiquem iguais.
Ambiente de produção 4.00
Enviado: 24 Abr 2018 10:54
por JoséQuintas
Então agora piorou a confusão.... trata-se do EXE exatamente igual.
Se está usando exatamente o mesmo EXE, vai estar usando exatamente os mesmos parâmetros aqui e aí.
Só seria diferente se tivesse recompilado o EXE com a SefazClass que tém aí.
Importante: o "F" que mencionei é aqui:
http: //www . portalfiscal.inf.br/nfe/wsdl/NFeStatusServico4
Isso não é endereço de internet, é parte da SOAP Action.
Ambiente de produção 4.00
Enviado: 24 Abr 2018 11:00
por JoséQuintas
Só acrescentei a opção de NFCE, mas ainda é a mesma.
Inclusive na própria resposta tem também o XMLNS=, o mesmo que usei na transmissão.
Isso é a resposta direta do webservice, sem nenhuma alteração.
Ambiente de produção 4.00
Enviado: 24 Abr 2018 11:10
por depaula.jau
Sim, sobre o F eu entendi.
E o Executável é exatamente o que postou descompactado. Estranho né!
Esse mesmo executavel que vc postou tras o retorno positivo de STATUS para ambiente de Produção
O problema esta sendo apenas Homologoção.
Meu amigo me enviou esse dado recebido do SEFAZ sob uma consultada na época:
Enviei um email para "Secretaria da Fazenda - Governo do Estado de Sao Paulo" <
sefaz@fazenda.sp.gov.br> perguntando se o ambiente de homologação da NFe 4.0 já está ativo para o estado de São Paulo e obtive a seguinte resposta:
Prezado Claudio,
Em 3/7/2017 foi realizada uma alteração nos servidores de homologação externa da NF-e, NFC-e e CT-e da SEFAZ-SP que passaram a aceitar apenas o protocolo de segurança TLS 1.2 ou superior para conexões.
Essa alteração foi desfeita em 10/7/2017 às 11h, retornando a aceitar os protocolos TLS1.2, TLS1.1, TLS1.0 e SSL3.0 no ambiente de homologação externa.
Agradecemos seu contato no "Fale Conosco" da Secretaria da Fazenda.
No meu caso esta com essa configuração, talvez tenha algo haver
Ambiente de produção 4.00
Enviado: 24 Abr 2018 11:20
por JoséQuintas
Aqui uso Windows 10, não alterei NADA de NADA.
Mas no Explorer tá assim:
Ambiente de produção 4.00
Enviado: 24 Abr 2018 11:28
por JoséQuintas
O pior é que isso pode até explicar não funcionar, mas ainda não explica o outro funcionar...
Ambiente de produção 4.00
Enviado: 24 Abr 2018 11:31
por JoséQuintas
E isso gera outra pergunta:
Se aí funciona de um jeito, e aqui de outro... qual dos dois é o certo? Ou qual será mantido?
Ambiente de produção 4.00
Enviado: 24 Abr 2018 11:55
por depaula.jau
Se ai pra vc funciona. Aqui também vai ter que funcionar igual.
Vou pegar uma maquina e Instalar o Windows 10 e fazer o teste usando o executável que vc enviou.
Tem que funcionar. a Unica coisa que acho estranho é funcionar em um ambiente e não funcionar no Outro.
Tanto com o meu executável quanto com o seu.
A partir do momento que vc me enviou um executável funcional eu eliminei todos os outros possíveis problemas como :
-Diferença de Classes (programação e atualizações que vc fez) e Diferença de Harbour/Compilador
Só me restaram a versão do Windows (Por conta dos protocolos)
Instalação do certificado (Esse também estou descartando porque deu certo ambiente de produção).
Te deixarei a par sobre o resultado do Windows 10.
Ambiente de produção 4.00
Enviado: 24 Abr 2018 12:48
por JoséQuintas
Novidade:
Testei no meu servidor com Windows 7.
Funciona em produção, mas não funciona em homologação.
Não mexi em nenhuma configuração.
Ambiente de produção 4.00
Enviado: 24 Abr 2018 12:53
por JoséQuintas
Ambiente de produção 4.00
Enviado: 24 Abr 2018 13:44
por depaula.jau
Eu atualizei o FrameWork 4.6.2 , apenas ele. Mesmo assim o resultado é o mesmo
Não sei se tem que manter todo Windows Atualizado. Eu não tenho habito de fazer todos os Updates.