Имя: Пароль:
1C
1С v8
Отображение регистра сведений в ТП справочника
,
0 k_aleks80
 
08.12.11
15:52
На обычной форме, в табличное поле (справочник) выводятся данные регистра сведений. Заполнение регистра осуществляется программно из справочника (по кнопке). Проблема: при создании (нового элемента справочника) и последующем заполнении регистра по кнопке данные не отображаются в табличном поле (элемент справочника предварительно сохраняется). После выхода и открытия этого элемента справочника, добавление (записей в регистр по кнопке справочника) и отображение работают как нужно (т.е. отображается сразу). Как сделать отображение сразу, при первоначальном создании элемента справочника? (пробовал обновление строк с созданием колонок формы; простое обновление формы; создание набора записей с отборами, их выгрузки в ТЗ и последующей загрузки ТЗ в ТП - не помогло)
1 Mort
 
08.12.11
15:58
Как сохраняется элемент справочника перед записью в регистр?
2 k_aleks80
 
08.12.11
15:59
Пользователем. По стандартной кнопке Сохранить.
3 k_aleks80
 
08.12.11
16:02
Сохранение данных из справочника в регистр привязано к обработчику кнопки Добавить (в процедуре создаются набор записей, заполняется и сохраняется).
4 jsmith82
 
08.12.11
16:06
я чёто вообще ничего не понял. можно как-то по другому
есть форма списка справочника, в ней расположено таб. поле с данными = регистрсведенийсписок.блабла
5 k_aleks80
 
08.12.11
16:10
(4) Есть форма элемента справочника. В нем есть вкладка. На вкладке "поле с данными = регистрсведенийсписок.блабла".
6 k_aleks80
 
08.12.11
16:17
1) Создали элемент справочника -> по кнопке Сохранить, сохранили.
2) Переходим на вкладку. Нажимаем Добавить (в обработчике данные в регистр добавились, осталось обновить данные на форме) -> поле пустое (кнопка обновить данные не помогает).
3) Закрываю элемент справочника. Открываю и теперь все прекрасно работает, т.е. нажимаем кнопку добавить и данные в ТП сразу же отображаются.
7 jsmith82
 
08.12.11
16:21
при записи набора записей регистра сведений повторно укажи отбор для списка
8 jsmith82
 
08.12.11
16:21
ТП.Отбор.Блабла.Значение = Ссылка;
ТП.Отбор.Блабла.Использование = Истина;
9 jsmith82
 
08.12.11
16:21
потому что при открытии ссылка пустая и сохраняется отбор на пустую ссылку
10 Живой Ископаемый
 
08.12.11
16:24
зачем жеж он заполняется программно? нельзя сказать что источник данных для ТП - список РС? с отбором по элементу справочника?
11 k_aleks80
 
08.12.11
16:24
(9) Перед всеми операциями с регистром справочник записывается (по кнопке Записать). Он появляется в БД и на момент манипуляций с регистром ссылка на элемент справочника уже есть.
12 jsmith82
 
08.12.11
16:27
ссылка есть, а отбор тп ссылается на него? нет
13 jsmith82
 
08.12.11
16:27
Процедура ДействияФормыБлабла(Кнопка)
   
   Если ЭтоНовый() Тогда
       ЗаписатьВФорме();
   КонецЕсли;
   НЗ = РегистрыСведений.Блабла.СоздатьНаборЗаписей();
   Запись = НЗ.Добавить();
   Запись.Блабла = Ссылка;
   Запись.Количество = 1;
   НЗ.Записать();
   Блабла.Отбор.Блабла.Значение = Ссылка;
   Блабла.Отбор.Блабла.Использование = Истина;
   
КонецПроцедуры

Процедура ПриОткрытии()
   
   Блабла.Отбор.Блабла.Значение = Ссылка;
   Блабла.Отбор.Блабла.Использование = Истина;    
   
КонецПроцедуры
14 jsmith82
 
08.12.11
16:28
вот это реально работает
15 Живой Ископаемый
 
08.12.11
16:29
2(14) тыж скажи данные какие у твоей Блабла
16 Живой Ископаемый
 
08.12.11
16:30
а так все верно
17 hhhh
 
08.12.11
16:37
(11) вообще-то нужно не РегистрСведенийСписок, а РегистрСведенийНаборЗаписей.
18 k_aleks80
 
08.12.11
16:44
(7),(8) - помогло. Спасибо.