Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Работа с сетью в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.04.2015, 14:23   #1
Smagulov85
Форумчанин
 
Аватар для Smagulov85
 
Регистрация: 22.11.2009
Сообщений: 142
По умолчанию Ошибка после импорта WSDL (SOAP Почты России)

Добрый день! хочу сделать программу для себя отслеживания посылок и писем через SOAP Почты России

Делаю импорт WSDL все проходит хорошо ошибок нет. Но когда пытаюсь скомпилировать проект он выдает ошибки.



Код:
[dcc32 Error] OperationHistory.pas(534): E2003 Undeclared identifier: 'mustUnderstand'
[dcc32 Error] OperationHistory.pas(538): E2005 'mustUnderstand' is not a type identifier
[dcc32 Error] OperationHistory.pas(543): E2005 'mustUnderstand' is not a type identifier
[dcc32 Error] OperationHistory.pas(941): E2005 'mustUnderstand' is not a type identifier
[dcc32 Fatal Error] main.pas(26): F2063 Could not compile used unit 'OperationHistory.pas'
Как исправить файл OperationHistory.pas
Вложения
Тип файла: zip OperationHistory.zip (5.9 Кб, 15 просмотров)
Если помог: Нажми Весы и оставь отзыв!!!
Smagulov85 вне форума Ответить с цитированием
Старый 21.04.2015, 16:11   #2
Streletz
Старожил
 
Регистрация: 03.01.2014
Сообщений: 2,870
По умолчанию

Delphi Вам прямым текстом пишет, что 'mustUnderstand' никак не задекларирован. Значит что-то, скорее всего, пошло не так. Проверьте файл, который у Вас получился в результате импорта. RAD Studio, конечно, далеко не худшая IDE (ИМХО), но всё-таки лучше иногда проверять результаты операций выполненных в автоматическом режиме.

Последний раз редактировалось Streletz; 22.04.2015 в 00:23.
Streletz вне форума Ответить с цитированием
Старый 22.04.2015, 01:09   #3
Smagulov85
Форумчанин
 
Аватар для Smagulov85
 
Регистрация: 22.11.2009
Сообщений: 142
По умолчанию

Да я только как уже не пытался.

Код:
 // ************************************************************************ //
  // XML       : AuthorizationHeader, global, <element>
  // Namespace : http://russianpost.org/operationhistory/data
  // Serializtn: [xoLiteralParam]
  // Info      : Wrapper
  // ************************************************************************ //
  AuthorizationHeader = class(TRemotable)
  private
    FmustUnderstand: mustUnderstand;
    FmustUnderstand_Specified: boolean;
    Flogin: string;
    Fpassword: string;
    procedure SetmustUnderstand(Index: Integer; const AmustUnderstand: mustUnderstand);
    function  mustUnderstand_Specified(Index: Integer): boolean;
  public
    constructor Create; override;
  published
    property mustUnderstand: mustUnderstand  Index (IS_ATTR or IS_OPTN) read FmustUnderstand write SetmustUnderstand stored mustUnderstand_Specified;
    property login:          string          read Flogin write Flogin;
    property password:       string          read Fpassword write Fpassword;
  end;
В документации написано, что AuthorizationHeader

Цитата:
Содержит авторизационные данные ИС-потребителей данных.
Комплексный тип cодержит последовательность элементов «login» и «password».
Атрибуты элемента:
mustUnderstand - содержит признак обязательности передачи заголовка сообщения через SOAP Proxy, должен всегда иметь значение «TRUE».
Если помог: Нажми Весы и оставь отзыв!!!
Smagulov85 вне форума Ответить с цитированием
Старый 22.04.2015, 01:49   #4
Streletz
Старожил
 
Регистрация: 03.01.2014
Сообщений: 2,870
По умолчанию

Видимо, просто не смотрели комментарии.
В файле после импорта есть ещё и такие строки. Одну из них (наиболее интересную) я подчеркнул.
Код:
// ************************************************************************ //
  // The following types, referred to in the WSDL document are not being represented
  // in this file. They are either aliases[@] of other types represented or were referred
  // to but never[!] declared in the document. The types from the latter category
  // typically map to predefined/known XML or Embarcadero types; however, they could also 
  // indicate incorrect WSDL documents that failed to declare or import a schema type.
  // ************************************************************************ //
  // !:int             - "http://www.w3.org/2001/XMLSchema"[Gbl]
  // !:boolean         - "http://www.w3.org/2001/XMLSchema"[Gbl]
  // !:dateTime        - "http://www.w3.org/2001/XMLSchema"[Gbl]
  // !:integer         - "http://www.w3.org/2001/XMLSchema"[Gbl]
  // !:string          - "http://www.w3.org/2001/XMLSchema"[Gbl]
  // !:mustUnderstand  - "http://schemas.xmlsoap.org/soap/envelope/"[GblAttr]
Streletz вне форума Ответить с цитированием
Старый 24.04.2015, 12:13   #5
Smagulov85
Форумчанин
 
Аватар для Smagulov85
 
Регистрация: 22.11.2009
Сообщений: 142
По умолчанию

Скажу честно я тупой... не понимаю как надо задекларировать значение mustUnderstand
Если помог: Нажми Весы и оставь отзыв!!!
Smagulov85 вне форума Ответить с цитированием
Старый 17.06.2015, 10:17   #6
Smagulov85
Форумчанин
 
Аватар для Smagulov85
 
Регистрация: 22.11.2009
Сообщений: 142
По умолчанию

Цитата:

// *********************************** *********************************** ** //
// The following types, referred to in the WSDL document are not being represented
// in this file. They are either aliases[@] of other types represented or were referred
// to but never[!] declared in the document. The types from the latter category
// typically map to predefined/known XML or Embarcadero types; however, they could also
// indicate incorrect WSDL documents that failed to declare or import a schema type.
// *********************************** *********************************** ** //
/
// !:mustUnderstand - "http://schemas.xmlsoap.org/soap/envelope/"[GblAttr]
Может кто пояснить, что это и как исправить эту ошибку

[dcc32 Error] OperationHistory.pas(534): E2003 Undeclared identifier: 'mustUnderstand'
Если помог: Нажми Весы и оставь отзыв!!!
Smagulov85 вне форума Ответить с цитированием
Старый 17.06.2015, 11:28   #7
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Попробуй опиши в type
Код:
mustUnderstand = integer;
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 17.06.2015, 14:22   #8
Smagulov85
Форумчанин
 
Аватар для Smagulov85
 
Регистрация: 22.11.2009
Сообщений: 142
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Попробуй опиши в type
Код:
mustUnderstand = integer;

спасибо! Но только так

Код:
mustUnderstand = boolean;
Если помог: Нажми Весы и оставь отзыв!!!
Smagulov85 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
не запускается Userform после импорта из другой книги ac1-caesar Microsoft Office Excel 13 23.10.2014 14:34
Закрыть книгу после импорта внешних данных agregator Microsoft Office Excel 0 21.05.2012 16:27
WSDL и SOAP, Отправка запросов к удаленному серверу. Алориан PHP 2 22.06.2009 12:57
soap wsdl nimf Общие вопросы Delphi 0 22.08.2008 16:10
Помогите разобраться со связкой PHP+SOAP+WSDL bobadd PHP 9 03.11.2007 12:58