Имя: Пароль:
1C
1С v8
Использование реквизита табличной части типа "Строка" в качестве списка значений
0 lavalit
 
20.01.15
16:32
Всем привет.
В табличной части документа есть строковый реквизит, который можно использовать в виде списка. Заполнить список значениями через конфигуратор можно. И оно даже работает. А вот как этот список заполнить программно?
Если на форме просто реквизит "строка", то его список можно заполнить как обычный СписокЗначений. Если же реквизит в табчасти... че та стесняется запонляться.
1 lavalit
 
22.01.15
18:06
Поможет кто нибудь? Людииии....
2 Euguln
 
22.01.15
18:07
(0) Это ты про список выбора чтоль?
3 ДенисЧ
 
22.01.15
18:08
текущаяСтрока.Реквизит.СписокВыбора?
4 palpetrovich
 
22.01.15
18:13
(0) речь про это?
РеквизитСписок.Добавить("Первый");
РеквизитСписок.Добавить("Второй");
ЭлементыФормы.ТабличнаяЧасть1.Колонки.реквизитТЧ.ЭлементУправления.СписокВыбора = РеквизитСписок;
5 фобец
 
22.01.15
18:25
(4) ...СписокВыбора.Загрузить(РеквизитСписок.ВыгрузитьЗначения());
6 lavalit
 
23.01.15
12:48
(4) Ну да. правда я делал вот так:
Элементы.МойРеквизит.СписокВыбора.Добавить("траляля")
7 lavalit
 
23.01.15
12:48
Поробую вариант (4) и(5)
отпишу чего там и как
8 lavalit
 
23.01.15
13:43
(4)(5) Не не прокатывает такая фишка
Выдает ошибку;
{Документ.Накладная.Форма.ФормаДокумента.Форма(1733)}: Значение не является значением объектного типа (СписокВыбора)

А это сам код... вернее проблемная его часть

Процедура ТоварыНоменклатураПриИзменении(Элемент)
СписокДопов= Новый СписокЗначений;
СписокДопов.Добавить("Один");
СписокДопов.Добавить("Два");
КонецЦикла;
    СтрокаТЧ.ДопРеквизит.СписокВыбора.Загрузить(СписокДопов.ВыгрузитьЗначения());

Реквизит включал и в режим "поле выбора" и "поле ввода"
все одно нет доступа к "списоквыбора".
Просто сделать
СтрокаТЧ.ДопРеквизит = "траляля"; Эт сколько угодно..
9 polosov
 
23.01.15
13:50
(8) Где ты там метод "Загрузить" нашел?
10 kosts
 
23.01.15
13:51
ЭлементыФормы.ТабличноеПоле1.Колонки.Колонка2.ЭлементУправления.СписокВыбора.Добавить("Первый");
11 polosov
 
23.01.15
13:51
Процедура ТоварыНоменклатураПриИзменении(Элемент)
СписокДопов= Новый Массив;
СписокДопов.Добавить("Один");
СписокДопов.Добавить("Два");
КонецЦикла;
    СтрокаТЧ.ДопРеквизит.СписокВыбора.ЗагрузитьЗначения(СписокДопов);
12 lavalit
 
23.01.15
14:52
(11) Да в том то и дело, что оно еще "СписокВыбора" не видит.. до "загрузить..." дело то и не доходит.
Строка  СтрокаТЧ.ДопРеквизит.СписокВыбора.ЗагрузитьЗначения(СписокДопов); Тоже не прокатывает...
13 kosts
 
23.01.15
14:55
(12) В какой момент должен список установиться?
14 kosts
 
23.01.15
14:56
Вот прямо в момент выбора...


Процедура ТабличноеПоле1Колонка2НачалоВыбораИзСписка(Элемент, СтандартнаяОбработка)
    
    ЭлементыФормы.ТабличноеПоле1.Колонки.Колонка2.ЭлементУправления.СписокВыбора.Добавить("Первый");
    
КонецПроцедуры

15 lavalit
 
23.01.15
15:32
(13) ... список хотелось бы устаканить в момент выбора номенклатуры.... от нее собственно зависит содержание списка ... Допустим у меня есть номенклатура "Спички" Один единственный элемент справочника... но на самом деле есть спички Балабановской фабрики, Калужской фабрики и т.д. в Характеристики забивать не хочу, потому как пришлось бы при каждом поступлении править справочник.... сча скажу почему... есть допустим спички балабаново с тучей вариантов картинок на коробке... вот в поступлении это все хозяйство поступляю.... а потом делаю реал и  уже исходя из того, что есть в наличии формирую список вот ентого самого списка допов... получается "спички-Бал-Самолеты" или "спички-Бал-Юбилей бабушки удава" ну и т.д.
16 palpetrovich
 
23.01.15
16:32
(15) смотри примерчик http://www.fayloobmennik.net/4513950
строки в ТЧ только сам добавь :)
17 lavalit
 
23.01.15
23:07
(16) Спасибы гляну но уже завтра сегоня замотался уже .. отпишу тогда чего там и как получится.... но в данном примере я так понял , что список готовился сразу на любую новую строку? Хотя мне надо бы для каждой строки свой списочек.... НУ  в общем гляну чттам и как получаетса))
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.