Имя: Пароль:
1C
1С v8
Сбивается присваивание переменной
,
0 SvenSoft
 
02.10.19
14:16
Всем привет.

Нужно было подключить в УНФ Директ:Бинк, в процессе подключения выскакивает обишка "значение не является значением объектного типа (ТребуетсяТокен)", стал смотреть через отладчик, А ДАЛЬШЕ МИСТИКА:

имеем код:
[CODE]
        ПараметрыВозврата = ПолучитьИзВременногоХранилища(РезультатЗадания.АдресРезультата);
        Если ПараметрыВозврата.ТребуетсяТокен Тогда
[/CODE]

стоит точка останова на "Если .... ". Делаю вычисление выражения "ПолучитьИзВременногоХранилища(РезультатЗадания.АдресРезультата)" - возвращается структура, которая имеет в себе в том числе и ключ "ТребуетсяТокен", далее делаю вычисление "ПараметрыВозврата" которому собственно и присваивается значение возвращаемой структуры, но виже "Неопределено", ничего не понял! ))

Может кто-то сталкивался с подобным, подскажите плиз?
1 Ненавижу 1С
 
гуру
02.10.19
14:19
ключ ТребуетсяТокен есть, а его значение равно Неопределено, в чем проблема?

Если ПараметрыВозврата.ТребуетсяТокен=Истина Тогда
2 SvenSoft
 
02.10.19
14:23
(1) Нет нет, не значение ключа ТребуетсяТокен неопределенно, а ПараметрыВозврата неопределенно, т.е. не происходит присваивание значения в ПараметрыВозврата возвращаемые функцией ПолучитьИзВременногоХранилища(РезультатЗадания.АдресРезультата);

т.е. если смотрим одну строку:

ПараметрыВозврата = ПолучитьИзВременногоХранилища(РезультатЗадания.АдресРезультата);

то ПолучитьИзВременногоХранилища(РезультатЗадания.АдресРезультата) возвращает структуру в том числе и с ключем ТребуетсяТокен со строковым значением, а ПараметрыВозврата почему то Неопределенно - я первый раз такое вижу, будто значение не присваивается.
3 Cyberhawk
 
02.10.19
14:24
(1) Текст ошибки однозначно говорит о том, что переменная _слева_ от точки равна Неопределено
4 vicof
 
02.10.19
14:24
Потому что видимо есть реквизит формы с таким же именем
5 GROOVY
 
02.10.19
14:24
ПараметрыВозврата случайно не переменная модуля управляемой формы?
6 SvenSoft
 
02.10.19
14:29
(4) (5) Нет - этот код в ОбщийМодуль.ОбменСБанкамиСлужебныйКлиент конфигурации УНФ на поддержке стоит.
7 vicof
 
02.10.19
14:41
А сама конфа стоит на поддержке? Кэш чистил?
8 SvenSoft
 
02.10.19
14:49
Вот для полного понимания происходящего https://yadi.sk/i/nxJ-D5Sypl_TZQ
9 SvenSoft
 
02.10.19
14:51
(7) Конфи стоит на поддержке. Кеш не чистил - клиент-серверный вариант.
10 lodger
 
02.10.19
14:54
(9) рестарт
11 Has
 
02.10.19
14:56
точка останова на строке А=ТекущаяДата();
Вычислить выражение А
выдает А = Неопределено
12 Has
 
02.10.19
14:58
(+11) точка останова на точно на "Если" ?
13 SvenSoft
 
02.10.19
14:58
(10) делал уже, все зависимые службы рестарт - не помогло
(11) у меня ниже этой строки стоит точка останова.
(12) Да, на "Если.." стоит точка останова
14 Cyberhawk
 
02.10.19
15:02
(8) То что на видео показано ни о чем еще не говорит - нумерация строк может быть сбита и отладчик показывает еще не выполненные строки, т.е. чуть спешит
15 Cyberhawk
 
02.10.19
15:02
Нажми F10 в видео и покажи появление ошибки
16 SvenSoft
 
02.10.19
15:24
(15) Нажал https://yadi.sk/i/7Trs0yfVQ7rbyg + Ошибка в служебных сообщениях (она же и в режиме 1С:Предприятия выскакивает) говорит о том, что нет значения в переменной ПараметрыВозврата и соответственно ключа ТребуетсяТокен тоже нет. Т.е. не присвоила функция возвращаемое значение переменной ПараметрыВозврата в строке "ПараметрыВозврата = ПолучитьИзВременногоХранилища(РезультатЗадания.АдресРезультата);"
17 Cyberhawk
 
02.10.19
15:25
(16) Ставлю на кэш конфигурации - просто тупо нет той строки с присваиванием значения переменной
18 SvenSoft
 
02.10.19
15:27
(17) Т.е. все таки проблема с кешем?
19 SvenSoft
 
02.10.19
15:39
(15) Так же скажу, что по F10 уходит в процедуру ПроконтролироватьДлительныеОперации в ОбщийМодуль.ДлительныеОперацииГлобальный и в ней вызывается исключение: https://yadi.sk/i/1dUwwVD5sxSjow
20 hhhh
 
02.10.19
15:42
(16) а разве можно ПолучитьИзВременногоХранилища два раза вызывать?
21 SvenSoft
 
02.10.19
15:45
(20) Почему два раза? Один раз вызывается.
22 SvenSoft
 
02.10.19
16:08
(17) Да, видимо проблема была с кешем. Запустил 1C с параметром "/ClearCache" - после чего слетели некоторые компоненты, переустановил их заново и все прошло нормально, ошибка исчезла.

Всем спасибо!
23 Cyberhawk
 
02.10.19
16:08
(20) Хоть сколько раз вызывай.
Но даже если и один, как ты предполагаешь, то не думаешь же ты что у него ошибка только после того как он отладчиком залез)
24 Cyberhawk
 
02.10.19
16:09
(21) Он про то что ты в табло типа получаешь, значит один раз уже вызвал. А строка кода дальше уже обламывается)
25 Cyberhawk
 
02.10.19
16:09
"в табло типа получаешь" смешно получилось
26 hhhh
 
02.10.19
16:13
(21) На видео вашем вы в отладчике вызываете.
27 SvenSoft
 
02.10.19
16:14
(21) Вообще в 1С намучено, такие ошибки ХЗ как отлаживать. Вот так пальцем в небо тыкаешь, бац типо почистил кеш, переустановил компоненты опять же вынужденно - хлоп заработало. Пипец, пипецкий!
28 SvenSoft
 
02.10.19
16:15
* (23)
29 Cyberhawk
 
02.10.19
16:17
(27) Это еще что.
О слетевших итогах, как правило, только сами пользователи оповещают.
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан