🛠️ Доработка формы рабочего стола в 1С

Ключевые тезисы

  • Добавление на форму итоговых показателей (баланс, расходы, доходы) с помощью программного кода.
  • Создание интерактивных элементов для быстрого добавления новых операций прямо с рабочего стола.
  • Использование событий и встроенного языка для динамического обновления данных на форме.
  • Автоматическое заполнение реквизитов документов (счёт, категория) при их создании.

Настройка итогового баланса

  1. На страницу «Баланс» добавлена группа (свойство «Отображать как карточку») с декорацией-надписью внутри.
  2. В модуле формы создана серверная процедура ЗаполнитьИтоги().
  3. В процедуре выполняется запрос к таблице «БалансОстатки» для получения суммы остатков по всем счетам.
  4. Результат запроса программно записывается в заголовок декорации.
  5. Процедура вызывается в событии формы «ПриСозданииНаСервере», чтобы итоги рассчитывались при открытии.

Настройка итогов по расходам и доходам

  • Аналогично балансу, на страницы «Расходы» и «Доходы» добавлены группы с декорациями.
  • Для расчёта сумм за текущий месяц используются запросы к виртуальным таблицам регистров накопления.
  • В запросе задаются параметры периода: НачалоМесяца(ТекущаяДата()) и КонецМесяца(ТекущаяДата()).
  • В заголовок декорации выводится текст, например, «За октябрь: 9200», где название месяца формируется методом Формат().

Создание интерактивных элементов

  • К группам с итогами добавлены декорации-картинки (иконка «Добавить»).
  • Для группы включено свойство «Гиперссылка».
  • На событие группы «Нажатие» (на клиенте) назначен обработчик, который открывает форму нового документа (Расход/Доход).
  • Для удобства порядок страниц на форме изменён: «Расходы» вынесены на первое место.

Автоматическое заполнение документов

Заполнение счёта по умолчанию:

  1. В форме документа «Расход» в событии «ПриСозданииНаСервере» добавлен код.
  2. Проверяется, пуста ли ссылка объекта (т.е., создаётся ли новый документ).
  3. Если ссылка пуста, в реквизит «Счёт» подставляется значение из константы «СчётПоУмолчанию».

Передача категории из таблицы на рабочем столе:

  1. Для таблицы «Расходы» на рабочем столе создан обработчик события «Выбор» (при клике на строку).
  2. При клике открывается форма нового расхода, а в её параметры заполнения передаётся структура с ключом «КатегорияРасхода» и значением из выбранной строки.
  3. В форме документа в том же событии «ПриСозданииНаСервере» добавлена проверка: если в параметрах есть свойство «КатегорияРасхода», его значение подставляется в реквизит «Категория».

Динамическое обновление данных на форме

  • При открытии формы документа из рабочего стола (через событие «Выбор») дополнительно создаётся ОписаниеОповещенияОЗакрытии.
  • В нём указывается экспортная процедура на клиенте (например, ОбновитьСтатистику), которая должна выполниться после закрытия формы.
  • Эта процедура вызывает метод Обновить() для динамического списка (таблицы) на форме рабочего стола, что приводит к актуализации отображаемых сумм.

Выводы
В результате доработок создано удобное приложение для учёта финансов с рабочим столом, на котором видны актуальные итоги и есть быстрый доступ к созданию операций. Приложение использует событийную модель платформы 1С для автоматизации рутинных действий (подстановка значений, обновление данных).