Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Как программно обновить форму отчета?
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Система компоновки данных
SV71
Всем здравия!

Самописная конфигурация.
Версия 1С 8.2, режим "Управляемое приложение".

1. Есть отчет по остаткам на счетах. В нем создана отдельная форма для отображения на "Рабочем столе".

2. Есть платежи, при изменении "Списка" которых на "Форме списка" формируется оповещение:
//////////////////////////////////////////////////////////////////////////////////
//
// Назначение: Обновляет отчет "Состояние счетов" на рабочем столе
//
// Вызов: событие формы "Список.ПриИзменении"
//
&НаКлиенте
Процедура СписокПриИзменении(пЭлемент)
    
    // ======================================================
    // = Обновить отчет "Состояние счетов" на рабочем столе =
    // ======================================================
    
    // ====================================
    // - Оповестить об изменении "Список" -
    // ====================================
    Оповестить("СписокПлатежейИзменился");
    
    // =====================================================================================
    // - Дальнейшая обработка происходит в "Отчеты.Формы.фРабочийСтол.ОбработкаОповещения" -
    // =====================================================================================
    
КонецПроцедуры // СписокПриИзменении


3. В форме отчета на рабочем столе вставлен обработчик, который отлавливает событие:
//////////////////////////////////////////////////////////////
//
// Назначение: Обеспечивает автоматическое обновление отчета
//
// Вызов: по событиям оповещения в системе
//
&НаКлиенте
Процедура ОбработкаОповещения(пИмяСобытия, пПараметр, пИсточник)
    
    // ==========================================================================================
    // = Событие "СписокПлатежейИзменился" формируется в Платеж.ФормаСписка.Список.ПриИзменении =
    // ==========================================================================================
    
    
    // ===========================
    // = Проверить "пИмяСобытия" =
    // ===========================
    Если пИмяСобытия = "СписокПлатежейИзменился" Тогда
        // = Нужно обновить отчет
        // ======================
        
        а=1;
        //Отчет.
        //ЭтаФорма.Результат.Вывод;
        
    КонецЕсли; // пИмяСобытия = "СписокПлатежейИзменился"
    
КонецПроцедуры


Не могу сообразить, как обновить отчет в строке, где пока написано "а=1".

Помогите пожалуйста.
Petre
Обновить отчет это по сути сформировать его заново. Т. е.:
ЭтотОбъект.СкомпоноватьРезультат();
Vofka
СкомпоноватьРезультат();


Petre, в управляемой форме надо без ЭтотОбъект, т.к. это метод формы.
Petre
Да. Собственно, "ЭтотОбъект" и есть управляемая форма, так что в контексте самой управляемой формы можно обойтись без него.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.