Имя: Пароль:
1C
1С v8
Табличная часть на форме - заполнение.
,
0 capllary
 
04.03.15
11:46
Всем привет, подскажите как сделать заполнение столбца табличной в зависимости от другого столбца.

Т.е. на форме элемента справочника есть ТЧ, в ней есть столбец данные которого ссылаются на другой справочник. Создал еще один столбец. Теперь надо чтобы этот столбец заполнялся данными справочника из первого столбца. Знаю что это прописывается процедурой ПриИзменении, но что именно прописать не знаю. Подскажите.
1 Ненавижу 1С
 
гуру
04.03.15
11:48
зависит что ты добавил, реквизит ТЧ или просто столбец
2 capllary
 
04.03.15
11:50
(1) Пока просто столбец. И как в реквизите ТЧ прописать ссылку на данные справочника?
3 D_E_S_131
 
04.03.15
11:50
И на форме у тебя есть только табличное поле, а не ТЧ.
4 capllary
 
04.03.15
11:50
(1) Там можно выбрать только сам справочник, а это означает что заполнять будет только наименованием его.
5 capllary
 
04.03.15
11:50
(3) ТЧ.
6 capllary
 
04.03.15
11:51
(5) ТаблПоле
7 capllary
 
04.03.15
11:51
Но это ТаблПоле ссылается на ТЧ этого же справочника.
8 Бубка Гоп
 
04.03.15
11:52
(4) шта?
9 D_E_S_131
 
04.03.15
11:52
(5) Если ты добавил в табличное поле, которое связано с ТЧ, новую колонку, то заполнять ты можешь текст ячейки. Использовать для этого предопределенное событие ПриВыводеСтроки.
10 D_E_S_131
 
04.03.15
11:52
(8) Почти как Йода говорит. :)
11 vhl
 
04.03.15
11:54
(0) Зависит от того, надо ли тебе сохранять в базе эту колонку и использовать потом где-то или только отображать пользователю в данном документе.
12 anatoly
 
04.03.15
11:54
(9) обычно ПриПолученииДанных - ПриВыводеСтроки гораздо тормознее (при прокрутке)
13 capllary
 
04.03.15
11:55
(11) Пока только отображать пользователю.
14 Бубка Гоп
 
04.03.15
11:55
И никого не интересует, уф или оф? мне вот любопытно
15 capllary
 
04.03.15
11:55
(14) ОФ
16 Бубка Гоп
 
04.03.15
11:56
(15) тогда (12)
17 capllary
 
04.03.15
12:15
Вот что я просил, получилось самому.

Процедура ТСНаименованиеТСПриИзменении(Элемент)
    
    ТаблицаЗначений = Новый ТаблицаЗначений;
    ТаблицаЗначений = ТС.Выгрузить();
    Для Каждого СтрокаТаблицы Из ТаблицаЗначений Цикл
        СтрокаТаблицы.ТипТС = СтрокаТаблицы.Наименование.ТипТС;
    КонецЦикла;
    ТС.Загрузить(ТаблицаЗначений);
        
КонецПроцедуры
18 D_E_S_131
 
04.03.15
12:17
(12) Гон. ПриПолученииДанных лучше только если нужно получить для текста что-то не связанное напрямую с данными в таблице — позволит получить выборку доп.данных одним запросом. Но срабатывает ПриПолученииДанных несколько раз.
19 capllary
 
05.03.15
09:23
Господа, помогите решить еще один квест, как можно получить данные и ТЧ справочника, ссылающиеся на данные другого справочника?

Объясню всю цепочку:

Есть обработка, в ней указывается Справочник1, в котором есть ТЧ и в этой ТЧ значение одного столбца ссылается на Справочник2. Справочник2 имеет несколько показателей. Эти показатели мне и необходимо получить обработкой в которой указывается только Справочник1.
20 capllary
 
05.03.15
09:25
Или может лучше дописать Справочник1 чтобы в него заполнялись эти показатели из Справочника2?
21 salvator
 
05.03.15
09:26
(17) При каждом изменении выгружать/загружать таблицу значений? Ты извращенец?
22 capllary
 
05.03.15
09:26
(21) Не, только учусь)
23 capllary
 
05.03.15
09:27
(21) Тем более там максиму 3 строки бывает.
24 capllary
 
05.03.15
09:29
(23) Вот кстати  так я (17) указал заполнение ТЧ справочника1 показателем из Справочника2.
25 salvator
 
05.03.15
09:30
Процедура ТСНаименованиеТСПриИзменении(Элемент)
    
    СтрокаТЧ = ЭлементыФормы.Товары.ТекущиеДанные;
    СтрокаТЧ.ТипТС = СтрокаТЧ.Наименование.ТипТС;
          
КонецПроцедуры
26 capllary
 
05.03.15
09:31
(25) Спасибо, буду знать.
27 capllary
 
05.03.15
09:32
(25) Но меня сейчас больше интересует (19) вопрос.
28 salvator
 
05.03.15
09:36
(27) Что такое "показатели"? Что значит "указывается справочник"?
Выражайся терминами 1С.
29 capllary
 
05.03.15
09:40
(28) Есть обработка, реквизитом которой является Справочник1, в котором есть ТЧ и в этой ТЧ значение одного столбца ссылается на Справочник2. Справочник2 имеет несколько реквизитов. Эти реквизиты мне и необходимо получить обработкой. (28)
30 Бубка Гоп
 
05.03.15
09:40
может указывается ссылка на элемент справочника?
тогда тебе поможет вот что
ЭлементСправочника = СсылкаНаЭлементСправочника.Получить();

После этого будут доступны все реквизиты (показатели?) элемента справочника, будь то строки или ссылки на элементы другого справочника
31 Бубка Гоп
 
05.03.15
09:43
(30) + ну и потом:

ЭлементСправочника2 = ЭлементСправочника.СсылкаНаЭлементСправочника2.Получить();

получишь реквизиты второго справочника
32 capllary
 
05.03.15
09:44
(30) Да, но как мне получить данные из ТЧ СсылкаНаЭлементСправочника2 Справочника1?
33 capllary
 
05.03.15
09:46
(31) Спасибо, разобрался:

ЭлементСправочника2 = ЭлементСправочника.ТС.Получить(0).Наименование.ПолучитьОбъект();
34 Бубка Гоп
 
05.03.15
09:46
(32) см (31). т.е. точно так же как и 1 справочника...
35 Бубка Гоп
 
05.03.15
09:47
(33) Наименование? О.о
36 capllary
 
05.03.15
09:48
(35) Это реквизит ТЧ справочника1.
37 capllary
 
05.03.15
09:49
(35) Который ссылается на Справочник2
38 Бубка Гоп
 
05.03.15
09:50
видимо там все таки хранится ссылка, а не наименование...
советую называть реквизиты так, чтобы их имена не совпадали со стандартными (как например, "наименование", "родитель", "ссылка" и т.п.)
39 capllary
 
05.03.15
09:52
(38) Ок. буду знать.