Невозможно загрузить файл / расположение WSDL в Delphi для службы SOAP VIES

Я пытаюсь создать функцию Delphi XE2 для проверки номеров НДС через службу SOAP VIES: http://ec.europa.eu/taxation_customs/vies/checkVatService.wsdl

Когда я использую средство импорта WSDL Delphi X2 с указанным выше URL-адресом, принимающим значения по умолчанию, я получаю следующую ошибку: Не удается загрузить файл WSDL / расположение: http://ec.europa.eu/taxation_customs/vies/checkVatService.wsdl. Ошибка [Запрошенный заголовок не найден - URL: http: //ec.europa.eu/taxation_customs/vies/checkVatService.wsdl - SOAPAction: ""

Что я делаю в носке?


person Pep    schedule 06.01.2013    source источник
comment
Я использую руководство доктора Боба по мылу drbob42.com/examines/examinE2.htm, где он использовал checkVatService.wsdl и наткнулся на ту же проблему, которую описывает @Pep при использовании XE3. (Однако импорт WSDL работает для XE)   -  person Lars    schedule 15.04.2014
comment
Если возможно, вы можете импортировать WSDL, используя другую версию Delphi. Сгенерированный модуль импорта будет работать с более поздними версиями (я использую его с XE8 сегодня, без каких-либо дальнейших изменений) ...   -  person Bob Swart    schedule 22.05.2015


Ответы (1)


Сохраните файл wsdl на диск и импортируйте сохраненный файл xml. После создания файла pas измените строку matchCode = (1, 2) на (_1, _2).

person Arjen van der Spek    schedule 06.01.2013
comment
Спасибо, сохранение на диск позволило избежать проблемы. Однако нет необходимости изменять (1, 2) на (_1, _2), потому что он уже был сгенерирован с (_1, _2) - person Pep; 06.01.2013
comment
Спасибо @Arjen van der Spek, это также решило проблему для XE3! - person Lars; 15.04.2014
comment
Это также решает проблему в Delphi 10. Спасибо. Нет необходимости переименовывать (1,2) в (_1, _2). Теперь сгенерированный код равен matchCode = (_1, _2, _3); - person Giorgio Calzolato; 19.11.2015
comment
Решена та же проблема в 10.4 Sydney, ничего менять не нужно - person Firas Shrourou; 11.07.2020