|
Как проверить есть-ли поле в структуре? |
☑ |
0
lanc2233
10.06.11
✎
03:47
|
Как проверить есть-ли в структуре поле с определенным наименованием?
|
|
1
iamnub
10.06.11
✎
03:50
|
Через попытку. Или индекс.
|
|
2
unknown181538
10.06.11
✎
03:58
|
Структура (Structure)
Свойство (Property)
Синтаксис:
Свойство(<Ключ>, <НайденноеЗначение>)
Параметры:
<Ключ> (обязательный)
Тип: Строка. Ключ для поиска свойства.
<НайденноеЗначение> (необязательный)
Тип: Произвольный. В данный параметр возвращается найденное значение. Если ключа нет в структуре, то возвращается Неопределено.
Возвращаемое значение:
Тип: Булево. Истина - ключ найден; Ложь - в противном случае.
Описание:
Получает значение элемента по указанному имени, а также проверяет, имеется ли указанное свойство.
Доступность:
Тонкий клиент, веб-клиент, сервер, толстый клиент, внешнее соединение.
Пример:
Отбор.Свойство("Дата");
|
|
3
lanc2233
10.06.11
✎
04:16
|
Спасибо
|
|
4
КонецЕсли
10.06.11
✎
09:13
|
(2) А что если ключ есть, но его значение Неопределено?
|
|
5
Поручик
10.06.11
✎
09:28
|
(4) И что? Поле есть, свойство вернёт значение Неопределено.
|
|
6
КонецЕсли
10.06.11
✎
09:41
|
(5)
Если ключа нет в структуре, то возвращается Неопределено.
Если такой ключ есть в структуре (значение неопределено), то возвращается Неопределено.
Получли Неопределено. Ну и чё? Есть ключ или нет?
|
|
7
NcSteel
10.06.11
✎
09:44
|
(5) Возвращает Либо истина либо ложь
Если СТруктура(ИмяКлюча, ПеременнаяДляЗначение) Тогда
//Есть ключ хоть и значение Неопределено
Иначе
//Нет ничерта с этим ключом.
КонецЕсли
|
|
8
NcSteel
10.06.11
✎
09:44
|
(7) *СТруктура.Свойство
|
|
9
unregistered
10.06.11
✎
09:46
|
(6) Тебе шашечки или ехать?
Получил значение Неопределено. И какая разница из структуры оно взялось или нет?
Логику алгоритмов надо закладывать на значения элементов структуры, а не на факт их отсутствия или наличия. ИМХО.
|
|
10
unregistered
10.06.11
✎
09:46
|
+ к (9) Кстати! (6) см. (7)
|
|