Carlos Pais Posted December 27, 2012 at 10:03 PM Report #488702 Posted December 27, 2012 at 10:03 PM (edited) Webservice para registo de faturas emitidas Já alguem tem algum exemplo funcional para o envio do XML Eu tenho um codigo assim: Dim strURL = "http://servicos.portaldasfinancas.gov.pt/faturas/" Dim strSoapAction = "http://servicos.portaldasfinancas.gov.pt/faturas/" Dim strXml = txtCaminho.Text PostWebservice(strURL, strSoapAction, strXml) .... Private Function PostWebservice(ByVal AsmxUrl As String, ByVal SoapActionUrl As String, ByVal XmlBody As String) As String Dim objDom As Object Dim objXmlHttp As Object Dim strRet As String Dim intPos1 As Integer Dim intPos2 As Integer On Error GoTo Err_PW '' Create objects to DOMDocument and XMLHTTP objDom = CreateObject("MSXML2.DOMDocument") objXmlHttp = CreateObject("MSXML2.XMLHTTP") '' Load XML objDom.async = False objDom.LoadXML(XmlBody) '' Open the webservice objXmlHttp.Open("POST", AsmxUrl, False) '' Create headings objXmlHttp.setRequestHeader("Content-Type", "text/xml; charset=ISO-8859-1") objXmlHttp.setRequestHeader("SOAPAction", SoapActionUrl) '' Send XML command objXmlHttp.send(objDom.xml) '' Get all response text from webservice strRet = objXmlHttp.responseText '' Close object objXmlHttp = Nothing '' Extract result intPos1 = InStr(strRet, "Result>") + 7 intPos2 = InStr(strRet, "</") If intPos1 > 7 And intPos2 > 0 Then strRet = Mid(strRet, intPos1, intPos2 - intPos1) End If '' Return result PostWebservice = strRet MsgBox(PostWebservice, MsgBoxStyle.Information) Exit Function Err_PW: PostWebservice = "Error: " & Err.Number & " - " & Err.Description MsgBox(PostWebservice, MsgBoxStyle.Information) End Function que aparentemente está a funcionar, mas está a dar erro 5, que segundo parece é erro no login e password, que defacto está mal, pois falta-lhe o certificado, alguem sabe de como colocar o certificado a funcionar ... Edited December 27, 2012 at 10:22 PM by apocsantos geshi 😵😴🥵🥴 No Desenvolvimento as Possibilidades são Infinitas 😵😴🥵🥴 , podemos é ficar doidos ...
spinny Posted December 27, 2012 at 11:27 PM Report #488744 Posted December 27, 2012 at 11:27 PM de acordo com as paginas 9 e 10 em http://info.portaldasfinancas.gov.pt/NR/rdonlyres/AC494AE7-7E41-41C9-991B-15C3F0126ABF/0/ComunicacaodosdadosdasfaturasaAT.pdf , o username e a pass devem ser encriptados com uma chave AES e essa chave e que e encriptada com o certificado um amigo meu recebeu: o doc acima, 2 certs, user e pass de teste por email. possivelmente para obteres o cert. teras que fazer algum tipo de registo.
Carlos Pais Posted December 28, 2012 at 10:38 AM Author Report #488773 Posted December 28, 2012 at 10:38 AM Pois eu tambem já tenho isso, ... mas não sei é de como ponho isso a funcionar ... de acordo com as paginas 9 e 10 em http://info.portaldasfinancas.gov.pt/NR/rdonlyres/AC494AE7-7E41-41C9-991B-15C3F0126ABF/0/ComunicacaodosdadosdasfaturasaAT.pdf , o username e a pass devem ser encriptados com uma chave AES e essa chave e que e encriptada com o certificado um amigo meu recebeu: o doc acima, 2 certs, user e pass de teste por email. possivelmente para obteres o cert. teras que fazer algum tipo de registo. 😵😴🥵🥴 No Desenvolvimento as Possibilidades são Infinitas 😵😴🥵🥴 , podemos é ficar doidos ...
pmmachado Posted December 30, 2012 at 12:36 AM Report #488958 Posted December 30, 2012 at 12:36 AM Boas, consulta este tópico ... https://www.portugal-a-programar.pt/topic/57734-utilizar-webservices-da-at/page__hl__webservice__st__20 tens lá exemplos de código a funcionar. Cumps.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now