Имя: Пароль:
1C
1С v8
ТЧ на форме и списки значений
,
0 C0oLZ3r0
 
02.08.20
17:52
Все доброго времени суток :)

Такой вопрос: есть ТЧ, в ней несколько колонок. Возможно ли сделать так, чтобы в одной колонке в разных строках список значений имел разное наполнение (создается динамически). Если возможно, то можно пример реализации? Чего-то ступор с этим...

Заранее благодарю.
1 osa1C
 
02.08.20
18:08
(0) Что означают слова "разное наполнение" и по какому принципу это наполнение должно быть разным?
2 C0oLZ3r0
 
02.08.20
18:12
Три колонки в ТЧ. В третьей колонке - поле "список значений". Вот он должен наполняться динамически (зависит от значения во второй колонке)
3 MishaD
 
02.08.20
18:22
4 C0oLZ3r0
 
02.08.20
18:25
(3) близко... Там, так понял, один справочник - номенклатура.
5 osa1C
 
02.08.20
18:26
(4) Ну так в зависимости от значения во второй колонке, выбирай то что тебе нужно. Или мы должны догадаться что ты хочешь?
6 C0oLZ3r0
 
02.08.20
18:28
Если совсем точно - опишу:

сп1 = Новый СписокЗначений;
сп1.Добавить("Значение1");
сп1.Добавить("Значение2");

сп2 = Новый СписокЗначений;
сп2.Добавить("Новый1");
сп2.Добавить("Новый2");

Допустим, у нас в текущей строке, во второй колонке указано значение 2. Нам нужно в третьей колонке показывать сп2. :))))

Добраться до элемента не получается чтобы загрузить туда список значений %)
7 SuperMario
 
02.08.20
18:47
(0) Событие на колонку прикрути "НачалоВыбора"

&НаКлиенте
Процедура ЕдиницаИзмеренияНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
    ТекДанные = Элементы.Ингредиенты.ТекущиеДанные;
    Элемент.СписокВыбора.ЗагрузитьЗначения(ПолучитьСписокЕдиницИнгредиента (ТекДанные.Ингредиент));
КонецПроцедуры
8 SuperMario
 
02.08.20
18:50
+(7)  РежимВыбораИзСписка поставь ))
9 C0oLZ3r0
 
02.08.20
19:01
(7) Огромное спасибо!

Теперь такой момент:
Делаю так

&НаКлиенте
Процедура Поле3НачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
ТД = Элементы.ТЧ.ТекущиеДанные;
Если ТД.Поле2 = 1 Тогда
Элемент.СписокВыбора.ЗагрузитьЗначения(МассивИзСп1)
ИначеЕсли ТД.Поле2 = 2 Тогда
Элемент.СписокВыбора.ЗагрузитьЗначения(МассивИзсп2)
КонецЕсли;

Во всех ячейках третьей колонки одинаковый состав списка.
10 SuperMario
 
02.08.20
19:31
(9) отладчик тебе в помощь)
проверь содержимое массивов
11 SuperMario
 
02.08.20
19:32
должно все работать!
12 C0oLZ3r0
 
02.08.20
19:38
Да... Буду разбираться. В любом случае благодарю :))

Если нажать F4 - данные в списке обновляет и при повторной попытке выбора все ок.