Имя: Пароль:
1C
1С v8
Инициализация пустого 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 - время убил, а результат только такой: пакеты идут без проблем )
AdBlock убивает бесплатный контент. 1Сергей