Имя: Пароль:
1C
1С v8
изменение типа реквизита в табличной части при вводе по строке
0 Kurbash
 
22.06.15
08:55
Всем привет. Такая ситуация- есть ТЧ на произвольной форме. Форма управляемая. Хочу повесить на обработчик события ПриНачалеДобавления() код, который устанавливает тип данных на один из реквизитов ТЧ (у этого реквизита составной тип данных). Нужно просто для удобства пользователей чтобы не выбирали тип при внесении. Никто не подскажет как сделать?
1 DmitrO
 
22.06.15
09:02
1.в свойствах поля формы снять флажок ИзменятьТип
2.в ПриНачалеДобавления инициализировать значение реквизита ТЧ пустым значением нужного типа.
2 Kurbash
 
22.06.15
09:09
(1) до 1 я дотумкал, как 2. сделать не догоню
3 DmitrO
 
22.06.15
09:17
(2)Элемент.ТекущиеДанные.Номенклатура = ПредопределенноеЗначение("Справочник.Номенклатура.ПустаяСсылка");
4 Kurbash
 
22.06.15
09:20
(3) так строчки то еще нет, текущих данных нет, куда писать? Значение не объектного типа.
5 фобка
 
22.06.15
09:23
Элемент.ограничениеТипа()
6 Kurbash
 
22.06.15
09:23
ИзменяемыеЭлементы=Элементы.Операции.ПодчиненныеЭлементы;
ИзменяемыеЭлементы.ОперацииОперация.ВыбиратьТип=Ложь;
ИзменяемыеЭлементы.ОперацииОперация="";
вот так не канает тоже
7 DmitrO
 
22.06.15
09:23
Это потому что события ПриНачалеДобавления вообще нет.
Зато есть событие ПриНачалеРедактирования.
8 фобка
 
22.06.15
09:25
У поля есть НачалоВыбора() можно туда пихать
9 Kurbash
 
22.06.15
09:26
(7)http://i.prntscr.com/70527002de3041e99d795ad587fad0f8.png

(8) это управляемая форма, я пробою сделать что то такое:

ИзменяемыеЭлементы.ОперацииОперация.ОграничениеТипа.Типы()=Тип("Строка");
тоже не канает.
10 фобка
 
22.06.15
09:29
Потому что синтакс-помощник нужно читать

Элемент.ограничениетипа = новый описаниеТипов("Строка")
11 Kurbash
 
22.06.15
09:30
это да, тороплюсь просто, спс
12 DmitrO
 
22.06.15
09:30
(9)для танкистов повторяю еще раз:
- в платформе нет события ПриНачалеДобавления;
- в платформе есть событие ПередНачаломДобавления - но использовать его для решения этой задачи не нужно;
- в платформе есть событие ПриНачалеРедактирования, которое и нужно использовать для решения этой задачи.
13 Kurbash
 
22.06.15
09:36
(12) да у меня и на 10 взлетело