Как автоматизировать расчет родительской платы за школьное питание на основе меню-требований и табеля посещаемости в 1С:БГУ

Программист 1С v8.3 (Управляемые формы) Бухгалтерский учет Сфера услуг, туризм и социальный сектор
← На главную

В практике ведения учета в школьных учреждениях часто возникает сложная задача: бухгалтерии необходимо рассчитать родительскую плату не по фиксированной ставке, а по фактической стоимости продуктов, затраченных на питание ребенка в конкретный день. В типовой конфигурации «1С:Бухгалтерия государственного учреждения» (БГУ) версии 1.0 и 2.0 механизмы учета продуктов (документ Меню-требование) и механизмы начисления оплаты (документ Начисление родительской платы) существуют автономно. Это приводит к тому, что бухгалтеры вынуждены вести расчеты в сторонних таблицах Excel, что повышает риск ошибок и трудозатраты. В этой статье мы подробно разберем, как связать эти механизмы и автоматизировать процесс.

Анализ проблемы: почему нет прямой связи?

Разберем ситуацию подробно. Для корректного расчета нам нужны данные из двух разных контуров учета:

  1. Складской учет и производство: Здесь формируется документ Меню-требование. В нем указана дата, категория довольствующихся (например, «Учащиеся 1-4 классов») и стоимость порции, которая может меняться ежедневно в зависимости от набора продуктов.
  2. Учет услуг и посещаемости: Здесь используется Табель учета посещаемости детей. В нем фиксируются ФИО ребенка и дни его фактического присутствия.

Проблема заключается в том, что в табеле ребенок не привязан жестко к «Категории довольствующихся» из меню. Если в один день в столовой питаются разные группы детей по разным ценам, система «не знает», какую именно сумму закрепить за конкретным Ивановым или Петровым. Выясним, как решить эту задачу программными средствами.

Шаг 1: Создание связующего звена (Категории питания)

Проанализируем структуру данных. Чтобы алгоритм заработал, нам необходимо закрепить за каждым ребенком его категорию питания. Рассмотрим несколько вариантов реализации:

Вариант А: Использование групп справочника. Мы можем поместить детей в группы (папки) справочника Дети, названия которых будут идентичны категориям из меню-требований. Это самый простой способ, не требующий изменения конфигурации, однако он неудобен, если ребенок меняет категорию в течение года.

Вариант Б: Создание регистра сведений (Рекомендуется). Для конфигураций на управляемых формах (БГУ 2.0) лучше всего создать Расширение и добавить в него регистр сведений КатегорииПитанияУчащихся. Структура регистра может быть следующей:

Шаг 2: Разработка алгоритма сбора данных через запрос

Теперь, когда у нас есть связь между ребенком и его категорией, рассмотрим, как собрать данные для начисления. Нам потребуется написать запрос, который соединит три таблицы: табель посещаемости, наш новый регистр категорий и меню-требования. Посмотрим на логику построения такого запроса.

Разобьем логику на этапы:

  1. Выбираем из табеля дни посещения по каждому ребенку.
  2. Присоединяем к каждому ребенку его категорию питания на дату посещения из регистра сведений.
  3. Присоединяем таблицу Меню-требование по двум полям: Дата и КатегорияДовольствующихся.
  4. Получаем итоговую сумму как результат умножения факта посещения (1 или 0) на стоимость порции из меню.

Пример структуры запроса (схематично):


ВЫБРАТЬ
    Табель.Ребенок КАК Ребенок,
    Табель.Период КАК ДатаПосещения,
    Категории.КатегорияДовольствующихся КАК Категория,
    Меню.СтоимостьПорции КАК Цена
ИЗ
    РегистрСведений.ТабельПосещаемости КАК Табель
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КатегорииПитанияУчащихся.СрезПоследних(&ДатаРасчета) КАК Категории
    ПО Табель.Ребенок = Категории.Ребенок
ЛЕВОЕ СОЕДИНЕНИЕ Документ.МенюТребование.Состав КАК Меню
    ПО Табель.Период = Меню.Ссылка.Дата
    И Категории.КатегорияДовольствующихся = Меню.КатегорияДовольствующихся

Шаг 3: Создание внешней обработки для заполнения документа

Чтобы бухгалтер не вносил данные вручную, создадим внешнюю обработку заполнения для документа Начисление родительской платы. Проанализируем, как она должна работать:

  1. Бухгалтер создает новый документ Начисление родительской платы и указывает месяц.
  2. Нажимает кнопку «Заполнить по данным питания».
  3. Обработка выполняет описанный выше запрос за указанный период.
  4. Программа группирует данные по детям и рассчитывает итоговую сумму за месяц (сумма стоимостей порций за все дни посещения).
  5. Табличная часть документа заполняется автоматически.

Важный нюанс: В документе Меню-требование стоимость порции часто не хранится в явном виде, она рассчитывается как сумма стоимостей всех продуктов, деленная на количество порций. Поэтому в запросе нужно обращаться к табличной части СписаниеПродуктов и вычислять стоимость Сумма / КоличествоПорций.

Шаг 4: Нормативное обоснование для бухгалтерии

При переходе на автоматизированный расчет бухгалтерия может столкнуться с вопросом правомерности. Выясним, как обосновать такой подход. Согласно Федеральному закону № 273-ФЗ «Об образовании в РФ», порядок установления родительской платы определяется учредителем. Если в вашем муниципальном положении прописано, что «оплата производится по фактическим расходам», то ежедневный расчет на основе меню является единственно верным.

Рассмотрим рекомендации для учетной политики учреждения:

Альтернативные решения: специализированные модули

Если разработка собственного расширения кажется слишком трудоемкой, проанализируем существующие на рынке решения. Существуют отраслевые конфигурации, такие как «1С:Школьное питание». В отличие от базовой БГУ, там реализован пофамильный учет порций «из коробки».

Преимущества специализированных модулей:

Заключение и рекомендации

Для реализации качественной связи между меню и родительской платой в 1С:БГУ 1.0 или 2.0 наиболее эффективным путем является:

  1. Добавление признака КатегорияДовольствующихся в карточку ребенка или отдельный регистр.
  2. Использование внешней обработки, которая «сшивает» данные двух контуров учета по Дате и Категории.

Такой подход полностью исключает ручной расчет в Excel, минимизирует вероятность ошибок при переносе сумм в 1С и позволяет бухгалтеру обосновать каждую копейку в квитанции перед проверяющими органами и родителями. Мы надеемся, что предложенные шаги помогут вам оптимизировать работу школьной столовой и бухгалтерии.

← На главную