Проблема со списком выбора
☑
0
sem4cnt
12.01.13
✎
18:13
На форме есть полеввода в режиме использования "РежимВыбораИзСписка". Тип значения поля "Произвольный".
В свойстве "СписокВыбора" поля передан список значений.
Теперь внимание!
Почему следующий код возвращает неопределено?
ЭлементыФормы.ПолеВводаБыстрыйВыборОтборов.СписокВыбора.НайтиПоЗначению(ПолеВводаБыстрыйВыборОтборов)
Хотя ПолеВводаБыстрыйВыборОтборов есть значение из этого списка?
1
Undefined vs NULL
12.01.13
✎
18:16
да врешь ты все, там обычно строки только
2
sem4cnt
12.01.13
✎
18:17
Где строки и насчет чего я вру?
3
sem4cnt
12.01.13
✎
19:17
Бред какой-то:
СписокНастроек = ЭлементыФормы.ПолеВводаБыстрыйВыборОтборов.СписокВыбора;
ТекущееЗначениеОтбора = СписокНастроек.НайтиПоЗначению(ПолеВводаБыстрыйВыборОтборов);
ФормаСохраненныхНастроекОтбора = ПолучитьФорму("ФормаСохраненныхНастроекОтбора", ЭтаФорма, ЭтаФорма);
ФормаСохраненныхНастроекОтбора.СписокСохраненныхНастроек = СписокНастроек;
Действие = ФормаСохраненныхНастроекОтбора.ОткрытьМодально();
// ВНимание!!!!!!
Если ЭлементыФормы.ПолеВводаБыстрыйВыборОтборов.СписокВыбора.НайтиПоЗначению(ТекущееЗначениеОтбора) = Неопределено Тогда
ЭлементыФормы.ПолеВводаБыстрыйВыборОтборов.Значение = Неопределено;
КонецЕсли;
4
sem4cnt
12.01.13
✎
19:18
(3) ЭлементыФормы.ПолеВводаБыстрыйВыборОтборов.Значение = Неопределено; // попадает все время сюда
5
sem4cnt
12.01.13
✎
19:18
А отладчик показывает: СписокНастроек = ЭлементыФормы.ПолеВводаБыстрыйВыборОтборов.СписокВыбора // Истина
6
sem4cnt
12.01.13
✎
19:19
Хрень полнейшая: списки одинаковы, а значение не находит!
7
sem4cnt
12.01.13
✎
19:30
Кто-нибудь может подсказать?
Проблема в том, что после того как в открытой форме происходит изменение списка, сохраненный ранее элемент уже не находится, даже если он в этом списке еще есть!!!
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший