![]() |
|
Установить тип "Число" для колонки таблиной части. Обычные формы | ☑ | ||
---|---|---|---|---|
0
sqr4
14.09.15
✎
15:03
|
Делаю так
Процедура ДанныеДляОценкиВыбор(Элемент, ВыбраннаяСтрока, Колонка, СтандартнаяОбработка) ТекСтр = Элемент.ТекущиеДанные; ЭлУправления = Колонка.ЭлементУправления; Если ТекСтр.Параметр.ВариантНастройки = Перечисления.ВариантыНастройкиПараметровОценкиСтоимостиСопровождения.ЧисловойДиапозон или не ТекСтр.Параметр.УчаствуетВРасчете Тогда ЭлУправления.СписокВыбора.Очистить(); ЭлУправления.КнопкаСпискаВыбора = Ложь; ЭлУправленияРежимВыбораИзСписка = Ложь; КвалификаторыЧисла = Новый КвалификаторыЧисла(10, 0, ДопустимыйЗнак.Неотрицательный); ОписаниеЧисла = Новый ОписаниеТипов("Число", КвалификаторыЧисла); ЭлУправления.ОграничениеТипа = ОписаниеЧисла; ЭлУправления.Значение = ОписаниеЧисла.ПривестиЗначение(ТекСтр.Значение); ЭлУправления.ВыбиратьТип = Ложь; ИначеЕсли ТекСтр.Параметр.ВариантНастройки = Перечисления.ВариантыНастройкиПараметровОценкиСтоимостиСопровождения.ВыбранноеЗначение Тогда //ЭлементыФормы.ДанныеДляОценки.Колонки.Значение.УстановитьЭлементУправления(Тип("ПолеВыбора")); КвалификаторыСтроки = Новый КвалификаторыСтроки(150); ОписаниеСтроки = Новый ОписаниеТипов("Строка", ,КвалификаторыСтроки); ЭлУправления.ОграничениеТипа = ОписаниеСтроки; ЭлУправления.Значение = ОписаниеСтроки.ПривестиЗначение(ТекСтр.Значение); ЭлУправления.ВыбиратьТип = Ложь; СписокОтветов = ПолучитьСписокВыбораДляПараметра(ТекСтр.Параметр); ЭлУправления.СписокВыбора = СписокОтветов; ЭлУправления.КнопкаСпискаВыбора = Истина; ЭлУправления.РежимВыбораИзСписка = Истина; ИначеЕсли ТекСтр.Параметр.ВариантНастройки = Перечисления.ВариантыНастройкиПараметровОценкиСтоимостиСопровождения.СписокЗначений Тогда //ЭлементыФормы.ДанныеДляОценки.Колонки.Значение.УстановитьЭлементУправления(Тип("ПолеВыбора")); ОписаниеТипа = ТекСтр.Параметр.ТипЗначенияХранилище.Получить(); ЭлУправления.ОграничениеТипа = ОписаниеТипа; ЭлУправления.Значение = ОписаниеТипа.ПривестиЗначение(ТекСтр.Значение); ЭлУправления.ВыбиратьТип = Ложь; ЭлУправления.КнопкаСпискаВыбора = Ложь; ЭлУправления.РежимВыбораИзСписка = Ложь; КонецЕсли; Если ТекСтр.Параметр = Справочники.ПараметрыОценкиСтоимостиСопровождения.КонфигурацияСильноДоработана Тогда СписокОтветов = Новый СписокЗначений; СписокОтветов.Добавить("Да"); СписокОтветов.Добавить("Нет"); ЭлементыФормы.ДанныеДляОценки.Колонки.Значение.ЭлементУправления.СписокВыбора = СписокОтветов; ЭлементыФормы.ДанныеДляОценки.Колонки.Значение.ЭлементУправления.КнопкаСпискаВыбора = Истина; ЭлементыФормы.ДанныеДляОценки.Колонки.Значение.ЭлементУправления.РежимВыбораИзСписка = Истина; КонецЕсли; КонецПроцедуры Т.е обрабатываю событие Выбор для табличной части на форме. Но если попытаться ввести в данную колонку какое то значение, то ничего не получится, поля остается недоступно для редактирования... |
|||
1
mistеr
14.09.15
✎
16:05
|
Табличная часть чего? Оттуда тип и берется.
|
|||
2
sqr4
14.09.15
✎
16:13
|
Табличная часть документа. Тип множественный - Число, Строка, ЛюбаяСсылка. Нужно явно указать тип
|
|||
3
sqr4
14.09.15
✎
16:18
|
С тем почему не указывается разобрался, ТекСтр.Значение было неясного типа, если явно указать, заполняется. А вот если опуститься на строку ниже в табличной части и ввести какое то строковое значение и затем обратно вернуться к числовому, он не даст его отредактировать. По возврату ЭлУправления.Значение идет типом строка и что с этим сделать я ни..я не понимаю, уже третий час убил.
|
|||
4
sqr4
14.09.15
✎
16:27
|
СписокОтветов = ПолучитьСписокВыбораДляПараметра(ТекСтр.Параметр);
ЭлУправления.СписокВыбора = СписокОтветов; ЭлУправления.КнопкаСпискаВыбора = Истина; ЭлУправления.РежимВыбораИзСписка = Истина; Вот это чтото делает, после чего ничего не ввести в поле ввода... |
|||
5
Nuobu
14.09.15
✎
16:27
|
ЭлУправления.РежимВыбораИзСписка = Истина;
|
|||
6
aleks_default
14.09.15
✎
16:34
|
Используй событие ПриАктивацииЯчейки, а не Выбор
|
|||
7
sqr4
14.09.15
✎
16:37
|
Убрал
ЭлУправления.РежимВыбораИзСписка = Истина; и взлетело. (5) Спасибо огромное |
|||
8
Nuobu
14.09.15
✎
16:37
|
(7) А кнопочка выбора из списка осталась?
|
|||
9
sqr4
14.09.15
✎
16:37
|
Хотя не понятно почему вот это
ЭлУправленияРежимВыбораИзСписка = Ложь; не отрабатывало... |
|||
10
sqr4
14.09.15
✎
16:38
|
(8) да
|
|||
11
Nuobu
14.09.15
✎
16:42
|
(9) В выбор не попадает.
А в остальных случаях стоит "ИначеЕсли". Поэтому до этой строки "ЭлУправленияРежимВыбораИзСписка = Ложь; " не доходит. |
|||
12
sqr4
14.09.15
✎
16:46
|
бл....яяя, точки нет... ЭлУправленияРежимВыбораИзСписка = Ложь;
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |