|
v7: Обновление таблицы. | ☑ | ||
---|---|---|---|---|
0
Eeakie
17.12.12
✎
18:23
|
Есть справочник "Клиенты". У каждого клиента есть контакты (подчиненный справочник). Все контакты выведены на форму элемента в виде ТЗ и недоступны для юзеров. Править их можно только по кнопке, которая отправляет прямиком в подчиненный справочник. Вопрос: как после правки справочника сразу обновить ТЗ, которая находится на форме элемента справочника "Клиенты". Бредово звучит, но уже час мучаюсь и ничего не получается.
|
|||
1
zak555
17.12.12
✎
18:25
|
переформировать её ?
|
|||
2
2012_12_17
17.12.12
✎
18:25
|
Форма.Обновить()
|
|||
3
Eeakie
17.12.12
✎
18:30
|
(1) В том то и проблема. При открытии элемента "Клиенты" формируется эта ТЗшка. Как запустить повторную процедуру формирования ПОСЛЕ закрытия подчиненного справочника?
|
|||
4
Eeakie
17.12.12
✎
18:33
|
На кнопке редактирования подчиненного справочника висит ОткрытьФорму(...). После закрытия надо запустить процедуру формирования.
|
|||
5
GLazNik
17.12.12
✎
18:41
|
Вариант1: ОбработкаОжидания + глобальная переменная (или константа, зависит от деталей) отвечающая за измененность справочника.
Вариант2: при ОткрытьФорму передать контекст текущей формы. при записи перезаполнять ТЗ по контексту. |
|||
6
Eeakie
17.12.12
✎
18:43
|
(5) Спасибо.
|
|||
7
Eeakie
18.12.12
✎
13:44
|
(5) Я извиняюсь, конечно, но после передачи контекста в форму подчиненного справочника, как менять первоначальную ТЗ?
// повешено на кнопку редактирования ОткрытьФорму("Справочник.КонтактыКлиентов", глВзятьКонтекст(Контекст)); // в подчиненном справочнике // ПриОткрытии() Конт = Форма.Параметр; // ПриЗакрытии() (там всего 4-5 элемента) Конт.Форма.ТЗКонтакты.УдалитьСтроки(); ВыбратьЭлементы(); Пока ПолучитьЭлемент() = 1 Цикл Конт.Форма.ТЗКонтакты.НоваяСтрока(); ... КонецЦикла; Нихрена, естественно, не происходит в исходной таблице. Как вернуть измененный контекст? |
|||
8
Eeakie
18.12.12
✎
13:46
|
*Жду очередного глума от MikeWare*
|
|||
9
Mikeware
18.12.12
✎
13:47
|
:-)
|
|||
10
Eeakie
18.12.12
✎
13:47
|
(9) Я тебя заметил первее, чем ты откомментил ;)
|
|||
11
dk
18.12.12
✎
13:48
|
тебе же сказали уже обнови форму
|
|||
12
Eeakie
18.12.12
✎
13:54
|
А можно как-нибудь вызвать процедуру первоначального модуля через модуль редактируемого справочника?
|
|||
13
Надсмотрщик
18.12.12
✎
13:55
|
Процедура ПриПовторномОткрытии()
КонецПроцедуры Синтаксис: ПриПовторномОткрытии() Назначение: Предопределенная процедура при повторном открытии формы в случае, если открывают уже открытую форму - то есть форма просто активизируется. Замечание: Данная процедура может располагаться только в программном модуле формы. |
|||
14
Eeakie
18.12.12
✎
14:02
|
(13) Не работает что-то.
|
|||
15
Надсмотрщик
18.12.12
✎
14:05
|
(14) А что ты там пишешь?
|
|||
16
Eeakie
18.12.12
✎
14:08
|
(15) ЗаполнениеКонтактов() - процедурка для заполнения ТЗ. Через отладчик в ПриПовторномОткрытии даже не останавливается.
|
|||
17
palpetrovich
18.12.12
✎
14:09
|
а посмотреть в типовой Справочник Номенклатура с подчиненными Единицами не судьба?
|
|||
18
Эльниньо
18.12.12
✎
14:15
|
ОткрытьФормуМодально("Справочник.КонтактыКлиентов");
ОсвежитьТЗ(); |
|||
19
Eeakie
18.12.12
✎
16:06
|
(18) Лучший.
|
|||
20
Eeakie
18.12.12
✎
16:12
|
MikeWare, давай, я жду ;D
|
|||
21
Ёпрст
18.12.12
✎
16:18
|
(20) могу ответить за него - ТП на форму, поставщиком прямой запрос, + автообновление в свойствах ТП..
усё. |
|||
22
m-serg74
18.12.12
✎
16:20
|
(19) если у справочника КонтактыКлиентов есть Форма элемента, то после ОткрытьМодально, если начнешь добавлять новые элементы, думаю лажа будет, но не уверен до конца... пусть знающие поправят
|
|||
23
Ёпрст
18.12.12
✎
16:21
|
(22) никакой лажи не будет
|
|||
24
Надсмотрщик
18.12.12
✎
16:22
|
(0) ЗаполнениеКонтактов()
повесь на свою кнопку последней строкой |
|||
25
Eeakie
18.12.12
✎
16:26
|
(24) Уже сделал. Всё отлично пашет.
(21) Так и хотел сделать изначально, но попросили сделать ТЗшкой и правкой справочника отдельной кнопкой. Проще было бы даже редактировать напрямую в ТЗ, но... |
|||
26
Sh1ko
18.12.12
✎
18:09
|
Перезаполнять всю таблицу при изменении одного элемента не кошерно. В типовых сделано именно через контекст и меняется только нужная строка (при изменении), или добавляется в конец новая, и все это в модуле формы элемента подчиненного справочника.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |