Имя: Пароль:
1C
 
v8: Проверка на пустой список
0 onx1
 
05.04.10
15:56
Есть список параметр СКД. В случае если он не ещё заполнен Количество() возвращает 1, а единственный элемент имеет значение <Пустое значение> с типом ЭлементСпискаЗначений.
Так вот как задать условие на проверку незаданности списка, а именно с чем сравнивать Список[0] и что это за значение <Пустое значение>?
1 IronDemon
 
05.04.10
16:02
И какой тип у значения "ЭлементСпискаЗначений"?
2 onx1
 
05.04.10
16:07
(1) я сам не понимаю. У элемента списка значений тип - ЭлементСпискаЗначений, значение - <Пустое значение>. Сравнение с Неопределено Справочники.Номенклатура.ПустаяСсылка() результата не дает
3 IronDemon
 
05.04.10
16:09
Отладчиком "разверни"
4 Defender aka LINN
 
05.04.10
16:10
Список[0] - элемент списка значений. В СП даже написано, какие у него есть свойства. Удивительно, правда?
5 onx1
 
05.04.10
16:11
(3) Тип - Неопределено!
(4) Ага)
6 IronDemon
 
05.04.10
16:12
(0) В параметрах доступные типы указаны?
7 ShoGUN
 
05.04.10
16:13
(0) ЗначениеЗаполнено() - универсально
8 ShoGUN
 
05.04.10
16:15
Только не сам список проверять, а элементы, естественно.
9 onx1
 
05.04.10
16:17
С чем сравнить "Список[0]" чтобы получить Истина (Неопределено, NULL, ПустаяСсылка, "<Пустое значение>", "" не подходят)?

(6) это правое значение отбора (ВидСравнения.ВСписке).
(7)(8) "проверка мутабельных значений на заполненность не поддерживается"
10 ShoGUN
 
05.04.10
16:17
(9) Список[0].Значение
11 onx1
 
05.04.10
16:21
(10) имеет тип Неопределено, значение - ничего не написано
но сравнение с Список[0].Значение = Неопределено почему то выдало истина:)
12 ShoGUN
 
05.04.10
16:22
(11) ЗначениеЗаполнено(Список[0].Значение) - так понятней?
13 onx1
 
05.04.10
16:23
Спасибо. Но все равно "дурацкие" списки
14 ShoGUN
 
05.04.10
16:24
(13) Используй массив, он не "дурацкий". Список значений - очень своеобразная штука.
15 onx1
 
05.04.10
16:28
(14) понимаю, я бы использовал, но в некоторых случаях только список и можно. как например этот параметр СКД
16 Jolly Roger
 
05.04.10
16:33
(11) все правильно. типзнч(неопределено) = неопределено. мог бы уже и сам проверить...
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой