2013-01-06 35 views
4

我想創建一個Delphi XE2功能通過VIES的SOAP服務來檢查增值稅號碼:http://ec.europa.eu/taxation_customs/vies/checkVatService.wsdl無法在德爾福加載WSDL文件/地點爲VIES SOAP服務

當我使用Delphi X2的WSDL進口商與上面的URL採用默認值,我得到以下錯誤: 無法加載WSDL文件/位置:http://ec.europa.eu/taxation_customs/vies/checkVatService.wsdl。錯誤[未找到請求的標頭 - URL:http://ec.europa.eu/taxation_customs/vies/checkVatService.wsdl - SOAPAction:「」

我在做什麼工作?

+0

我正在使用Dr. Bob的肥皂教程http://www.drbob42.com/examines/examinE2.htm,他使用checkVatService.wsdl,並且偶然發現了同樣的問題@Pep描述了使用XE3時的情況。 (但是,WSDL導入適用於XE) – Lars

+0

如果可能,可以使用其他版本的Delphi導入WSDL。生成的導入單元將與更高版本一起使用(我今天將其與XE8一起使用,無需進一步更改)... –

回答

6

將wsdl文件保存到光盤並導入保存的xml文件。 生成pas文件後,在(_1,_2)中更改matchCode =(1,2)行。

+0

謝謝,將它保存到磁盤可避免此問題。但是,沒有必要將(1,2)更改爲(_1,_2),因爲它已經生成(_1,_2) – Pep

+1

謝謝@Arjen van der Spek解決了XE3的問題! – Lars

+0

這也解決了Delphi 10中的問題。謝謝。 (_1,_2)中不需要重命名(1,2)。現在生成的代碼是「matchCode =(_1,_2,_3);」 –