|
Проверка инициализации переменной |
☑ |
0
ligatr
07.02.19
✎
10:37
|
Как проверить инициализирована ли объектная переменная?
|
|
1
TormozIT
гуру
07.02.19
✎
10:39
|
Сравнить с Неопределено
|
|
2
ligatr
07.02.19
✎
10:47
|
Что-то не работает.
Если Рез.Абонент = Неопределено Тогда
Сообщить("Нет переменной");
Иначе
Сообщить("Количество записей - "+Рез.СчетчикКоэффициент);
КонецЕсли;
{Документ.ВводПоказанийСчетчиков.Форма.ФормаДокумента.Форма(448)}: Значение не является значением объектного типа (Абонент)
|
|
3
ДенисЧ
07.02.19
✎
10:50
|
А что такое "рез"?
Может, Если Рез.Свойство("Абонент") смотреть?
|
|
4
sieben
07.02.19
✎
10:53
|
(2) У тебя какая-то очень мутная терминология.
Значение = Новый УникальныйИдентитикатор;
Заглушка = Новый Структура("Абонент", Значение);
ЗаполнитьЗначениеСвойств(Заглушка, Рез);
Если Заглушка.Абонент = Значение Тогда
Сообщить "Нет переменной"
КонецЕсли;
|
|
5
OpKc
07.02.19
✎
11:10
|
(2) что такое Рез?
|
|
6
Лефмихалыч
07.02.19
✎
11:11
|
(0) ЗначениеЗаполнено()
|
|
7
Lama12
07.02.19
✎
11:13
|
(2) Переменная, в данном случае, это "Рез", а "Абонент" уже реквизит переменной.
|
|
8
Гипервизор
07.02.19
✎
11:21
|
Реквизит переменной? Интересный термин.
|
|
9
YaFedor
07.02.19
✎
11:41
|
(8) Он имел ввиду "Реквизит объекта", того объекта, который записан в переменную.
(0) На вопрос в (0) дан правильный ответ в (1) в (2) отражено непонимание ответа :-)
|
|
10
hhhh
07.02.19
✎
11:56
|
(9) в (1) неверный ответ, правильно в (6)
|
|
11
Гипервизор
07.02.19
✎
12:30
|
(10) Какие ваши доказательства?
|
|
12
hhhh
07.02.19
✎
12:57
|
да, похоже правильно в (3)
|
|
13
ejikbeznojek
08.02.19
✎
12:56
|
(12) Вы путаетесь в показаниях.
Так где правильнее то в 3 или в 6?)
В случае если под переменной имеется ввиду Рез.Абонент
Сравнивать с неопределенно может быть и не правильно, потому что абонемент может быть равен справочники.Абонементы.ПустаяСсылка() или Null.
ЗначениеЗаполнено() мне кажется лучше))
|
|
14
Лефмихалыч
08.02.19
✎
12:58
|
(13) в 6 правильно. 3 - это решение для другого вопроса, которого автор не задавал.
|
|
15
Василий Алибабаевич
08.02.19
✎
13:03
|
(14) В контексте (6) ничем не отличается от (1). Оно даст ответ заполнено но ли чем-либо. Но не даст ответа - заполнено ли тем, от чего можно получить "Рез.СчетчикКоэффициент".
|
|
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший