|
Обработка заполнение табличной части и доступ к форме документа | ☑ | ||
---|---|---|---|---|
0
Полька
20.03.15
✎
13:43
|
Делаю внешнюю обработку заполнения табл.части документа.
По результатам заполнения подсчитываются итоги и их нужно вывести в документ ниже табличной части. У меня форма документа. А как к ней обратиться? ФормаДокумента = Документы.ИнвентаризацияРасчетовСконтрагентами.ПолучитьФорму????????; |
|||
1
Maxus43
20.03.15
✎
13:45
|
ФормаДокумента = ОбъектДокумента.ПолучитьФорму...
|
|||
2
sanja26
20.03.15
✎
13:47
|
(1) так она девственно чистую форму получит...
|
|||
3
Fish
20.03.15
✎
13:49
|
А зачем вообще форму получать? Если форма открыта, то используй оповещение.
|
|||
4
Полька
20.03.15
✎
13:50
|
форма открыта. как в ее реквизит записать значение?
|
|||
5
Полька
20.03.15
✎
13:51
|
Элементыформы.НадписьИтогиДт.Заголовок = ИтогиТекст.СтрокаДт;
|
|||
6
Fish
20.03.15
✎
13:52
|
(4) 1. Оповестить форму о том, что изменились данные.
2. В форме в обработке оповещения обновить данные и рассчитать итог. |
|||
7
Полька
20.03.15
✎
14:00
|
(6) не поняла :(
|
|||
8
Fish
20.03.15
✎
14:07
|
(7) Глобальный контекст (Global context)
Оповестить (Notify) Синтаксис: Оповестить(<ИмяСобытия>, <Параметр>, <Источник>) Параметры: <ИмяСобытия> (необязательный) Тип: Строка. Имя события. Может быть использовано для идентификации сообщений принимающими их формами. <Параметр> (необязательный) Тип: Произвольный. Параметр сообщения. Могут быть переданы любые необходимые данные. <Источник> (необязательный) Тип: Произвольный. Источник события. Например, в качестве источника может быть указана другая форма. Описание: Посылает оповещение всем созданным формам и всем подключенным через метод ПодключитьОбработчикОповещения процедурам модуля управляемого приложения (модуля обычного приложения) или общего модуля. Если для формы задана процедура-обработчик события ОбработкаОповещения, то она будет запущена, в процедуру будут переданы указанные параметры. Данный механизм может, например, применяться для организации обмена сообщениями между открытыми формами. Доступность: Тонкий клиент, веб-клиент, толстый клиент. Пример: Оповестить("ЗакрытьФорму", , ЭтаФорма); См. также: Форма, событие ОбработкаОповещения |
|||
9
Полька
20.03.15
✎
14:10
|
Это я читала.
Вопрос- какую форму оповещать то? Как к ней обратиться. |
|||
10
Fish
20.03.15
✎
14:15
|
(9) Читай внимательней:
"Посылает оповещение всем созданным формам". Никак не надо обращаться. Просто задаёшь имя события, например "ОбновитьИтогВформеМоегоДокумента" А уже в форме документа в обработке оповещения пишешь: Если Если ИмяСобытия = "ОбновитьИтогВформеМоегоДокумента" Тогда .... И здесь обновляешь свой реквизит. |
|||
11
Полька
20.03.15
✎
14:17
|
А в форме документа в обработке как писать, если документ стандартный и закрыт?
Все нужно сделать из внешней обработки |
|||
12
Fish
20.03.15
✎
14:22
|
(11) Ну тогда получай форму из ссылки на документ. Но опять же, если у тебя в форме есть процедура расчета итогов, и она не экспортная, то вызвать ты её не сможешь, сможешь только обратиться к реквизиту формы.
Значит, смотри, как у тебя в форме получается значение ИтогиТекст.СтрокаДт и, при необходимости, копируй код в свою обработку. |
|||
13
Полька
20.03.15
✎
14:24
|
так итоги у же посчитаны, не могу получить форму
|
|||
14
Fish
20.03.15
✎
14:26
|
(13) Как-то так: Форма = ДокСсыка.ПолучитьФорму()
|
|||
15
Полька
20.03.15
✎
14:27
|
вооооот :))) получилось
|
|||
16
Fish
20.03.15
✎
14:27
|
Ну а дальше Форма.Элементыформы.НадписьИтогиДт.Заголовок = НужноеЗначение;
|
|||
17
Полька
20.03.15
✎
14:28
|
все уже сидит на местах :))) спасибо
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |