|
Инициализация пустого COM-объекта
| ☑ |
0
mrDSide
17.08.16
✎
18:50
|
Имеется внешняя компонента EInvVatService.Connector, которая начиная с последнего обновления веб-сервиса (для доступа к которому она и предназначена) начала возвращать пустой объект EDocStatusInfo (все поля инициализированы пустым значением соотв. типа - 0, "") при обращении к GetStatus(<Номер>). Данный объект содержит ответ сервиса о статусе электронного документа с указанным номером. В режиме конфигуратора это лечится вызовом "Вычислить выражение (Shift - F9)" для объекта EDocStatusInfo (поля заполняются данными). Каким образом реализовать программно чтение объекта аналогично вызову "Вычислить выражение (Shift - F9)"?
|
|
1
oleg_km
17.08.16
✎
19:09
|
Ну присвой какой-нибудь локальной переменной.
|
|
2
mrDSide
17.08.16
✎
19:12
|
(1) EDocStatusInfo локальная переменная, в которую возвращается результат.
|
|
3
mrDSide
17.08.16
✎
19:15
|
(1) EDocStatusInfo = EInvVatService.GetStatus(<Номер>)
|
|
4
mrDSide
17.08.16
✎
19:15
|
Потом "Вычислить выражение (Shift - F9)" EDocStatusInfo - и вуаля
|
|
5
oleg_km
17.08.16
✎
19:18
|
(2) Ну так вычислить выражение в отладчике эквивалентно присваиванию во встроенном языке. Поэтому если не работает - пиши в 1С. Хотя это у тебя веб=сервис. МОжет он как-то асинхронно заполняется. Попробуй паузу какую-нибудь вставить
|
|
6
mrDSide
17.08.16
✎
19:26
|
(5) не эквивалентно. проверил. буду, значит, в 1С писать. спасибо
|
|
7
oleg_km
17.08.16
✎
19:35
|
(6) Фидллером посмотри, какие запросы генерятся.
|
|
8
mrDSide
18.08.16
✎
11:19
|
(7) не нашёл как этим инструментом трафик шифрованного веб-сервиса просмотреть. Пробовал Wireshark - время убил, а результат только такой: пакеты идут без проблем )
|
|