365 lines
55 KiB
Markdown
365 lines
55 KiB
Markdown
---
|
||
code: DOC-221276
|
||
title: "FNR03 Модуль работы с созданной записью"
|
||
---
|
||
|
||
# FNR03 Модуль работы с созданной записью
|
||
|
||
Цель модуля и этапа: обеспечить пользователю функционал работы с новой созданной записью после выполнения всех условий описанных в [FNR01 Модуль загрузки документов и создания записи](project/Document/DOC-037740)
|
||
и [FNR02 Модуль передачи PDF файлов в ИС Сканирование](project/Document/DOC-221275)
|
||
|
||
[100 тест 3 Свод ОСВ (континент - пример с консолидацией)\_корр.xlsx](_files/100%20%D1%82%D0%B5%D1%81%D1%82%203%20%D0%A1%D0%B2%D0%BE%D0%B4%20%D0%9E%D0%A1%D0%92%20%28%D0%BA%D0%BE)
|
||
|
||
[ПМП.xlsx](_files/%D0%9F%D0%9C%D0%9F.xlsx)
|
||
|
||

|
||
|
||

|
||
|
||
|
||
Модель расчетов ОФР\_часть 1.xlsx
|
||
|
||
27 мая 2026 г., 13:59
|
||
|
||
Пользовательский путь: [3. Пользовательский сценарий (Этап работы с новой записью консолидированной отчетности)](project/Document/DOC-037736)
|
||
|
||
1. При открытии записи пользователем система отрисовывает таблицы в сайдбаре с привязкой к организации и валидирует состав таблиц **F**
|
||
**in\_report\_rows и
|
||
fin\_report\_header:**
|
||
|
||
1. на наличие полей с значением confidence < установленного значения. Если такое поле найдено то система производит цветовое фоновое выделение ячейки и добавляет запись в лог о требовании провалидировать (проверить пользователем) распарсенное значение
|
||
|
||
Пример
|
||
|
||
| | | | | | | | |
|
||
| --- | --- | --- | --- | --- | --- | --- | --- |
|
||
| | A | B | C | D | E | F | G |
|
||
| | Пояснения | Наименование показателя | Код | На 30.09.2025 | На 31.12.2024 | На 31.12.2023 | Примечания |
|
||
| 1 | | АКТИВ | | | | | |
|
||
| 2 | | I. ВНЕОБОРОТНЫЕ АКТИВЫ | | | | | |
|
||
| 3 | | Нематериальные активы | 1110 | 262 | 333 | — | |
|
||
| 4 | | в т.ч. готовые к использованию | 11101 | 262 | 333 | — | |
|
||
| 5 | | Основные средства | 1150 | 611 560 | 559 335 | 404 467 | |
|
||
| 6 | | в т.ч. пригодные к использованию | 11501 | 243 510 | 253 850 | 140 495 | |
|
||
| 7 | | Оборудование к установке | 11502 | 228 833 | 132 440 | 42 093 | |
|
||
| 8 | | Незавершенное строительство | 11503 | 6 449 | 2 295 | 784 | |
|
||
| 9 | | Отложенные налоговые активы | 1180 | 42 341 | 52 289 | 49 533 | |
|
||
| 10 | | Итого по разделу I | 1100 | 654 164 | 700 986 | 552 514 | |
|
||
| 11 | | II. ОБОРОТНЫЕ АКТИВЫ | | | | | |
|
||
| 12 | | Запасы | 1210 | 411 955 | 382 282 | 360 961 | |
|
||
| 13 | | в т.ч. сырье и материалы | 12101 | 260 136 | 258 670 | 259 037 | |
|
||
| 14 | | Готовая продукция | 12102 | 101 2 | | | |
|
||
|
||
В текущем значении ячеек C3, D7 и B13 уровень confidence ниже заданного значения: система выделила ячейки для пользователя. В логе ❓ создана запись: ООО "Русский бисквит", форма 1 (Баланс) - требуется валидация пользователем
|
||
2. Производит контроль сумм на предмет соответствия расчетных и фактических значений по таблице ниже. Если значения не совпадают расчетным то в лог производится запись о нарушении контроля сумм:
|
||
|
||
Таблица контроля сумм
|
||
|
||
| | Формула (на основании фильтра кода строки row\_code) | Сообщение для отражения в логе | Комментарий |
|
||
| --- | --- | --- | --- |
|
||
| | 1700-1600=0 | Если false то выводим сообщение "Баланс за период не равен нулю", иначе проверка пройдена (в лог не выводим) | Контроль сумм производится строго по столбцу. То есть в формуле участвуют ячейки одного столбца: Например value\_current (код строки 1700) - value\_current (код строки 1600)=0 Каждая проверка должна производиться для столбцов value\_current, value\_prior\_year, value\_prior2\_year |
|
||
| | 1100= 1110+1150+1160+1170+1180+1190 | Если false то выводим сообщение "Группирующая строка {$row\_code} за период не равна сумме детальных строк", иначе проверка пройдена (в лог не выводим) |
|
||
| | 1200= 1210+ 1215+ 1220+ 1230+ 1240+ 1250+1260 |
|
||
| | 1300= 1310+ 1320 + 1340+ 1350+ 1360+ 1370 |
|
||
| | 1400 = 1410+ 1420+ 1430+ 1450 |
|
||
| | 1500 = 1510+ 1520+ 1540+ 1550 |
|
||
| | 2100=2110-2120 |
|
||
| | 2200= 2100-2210-2220 |
|
||
| | 2300 = 2200+ 2310+2320 2330+2340-2350 |
|
||
| | 2400 = 2300-2410+2420 |
|
||
| | 2400=1370(текущего периода)-1370(предыдущего периода) | Разность нераспределенного убытка (стр 1370) за текущий и предыдущий период не равная значению нераспределенной прибыли (непокрытого убытка) (стр 2400) | |
|
||
2. Пользователь выверяет значения и при необходимости редактирует их. После этого пользователь нажимает "Провалидировать и создать консолидированный отчет"
|
||
3. Система на основании данных создает новые формы:
|
||
1. Консолидированная финансовая отчетность (КФО ГСК) (таблица Consolidation\_template)
|
||
|
||
Правила создания формы
|
||
|
||
Визуальная форма:
|
||
|
||
Форма представляет собой сводную единую таблицу с фиксированным набором строк по организациям участвующих в консолидации (все ячейки кроме наименований показателя и кодов строк доступны для редактирования):
|
||
|
||
| | | | | | | | | | | | | | |
|
||
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
|
||
| А | B | C | D | E | F | G | H | I | J | K | L | M | N |
|
||
| Финансовая отчетность, тыс.руб. | | | | | | | | | | | | | |
|
||
| **БАЛАНС** | **тыс.руб.** | **Русский бисквит** | | | | **Пекарня "Сливочная"** | | | | **ИТОГО консолидированно** | | | |
|
||
| **АКТИВ** | **Код строки** | **${consolidation\_package. period }01.10.2025** | **в том числе взаимные обязательства** | **Очищенные показатели** | **Доля в показателе по Группе** | **01.10.2025** | **в том числе взаимные обязательства** | **Очищенные показатели** | **Доля в показателе по Группе** | **01.10.2025** | **Консолидированная отчетность от клиента** | **Расхождения** | **Примечания** |
|
||
| **I. ВНЕОБОРОТНЫЕ АКТИВЫ** | | источник: Баланс (форма 01) | источник: матрица взаимных вычетов (см приложение) | | | | | | | | | | |
|
||
| Правило заполнения по столбцу: | | значение ячейки **value\_current** таблицы **F** **in\_report\_rows** где**consolidation\_template.row\_code** | Заполнение ячейки зависит от кода строки. См таблицу Приложение 1 ниже | разность колонок: C - D | E (очищенные показатели) / K (Итого) | аналогично колонкам C-F | | | | сумма значений колонок **Company\_data.clean** ( "Очищенные показатели) | // Пока не заполняем | Ручной ввод | Ручной ввод |
|
||
| ППА | -- | | | | | | | | | | | | |
|
||
| Нематериальные активы | 1110 | | | | | | | | | | | | |
|
||
| Нематериальные поисковые активы | 1130 | | | | | | | | | | | | |
|
||
| Материальные поисковые активы | 1140 | | | | | | | | | | | | |
|
||
| Основные средства | 1150 | | | | | | | | | | | | |
|
||
| Право пользования активами | --- | ---- | | - | - | - | - | | | | | | |
|
||
| Инвестиционная недвижимость | 1160 | | | | | | | | | | | | |
|
||
| Финансовые вложения | 1170 | | | | | | | | | | | | |
|
||
| втч Гудвилл (суммируется в фин вложения) | | | | | | | | | | | | | |
|
||
| Отложенные налоговые активы | 1180 | | | | | | | | | | | | |
|
||
| Прочие внеоборотные активы | 1190 | | | | | | | | | | | | |
|
||
| ИТОГО по разделу I | 1100 | | | | | | | | | | | | |
|
||
| II. ОБОРОТНЫЕ АКТИВЫ | | | | | | | | | | | | | |
|
||
| Запасы | 1210 | | | | | | | | | | | | |
|
||
| Налог на добавленную стоимость по приобретенным ценностям | 1220 | | | | | | | | | | | | |
|
||
| Дебиторская задолженность | 1230 | | | | | | | | | | | | |
|
||
| Финансовые вложения (за исключением денежных эквивалентов) | 1240 | | | | | | | | | | | | |
|
||
| Денежные средства и денежные эквиваленты | 1250 | | | | | | | | | | | | |
|
||
| Гудвил | --- | | | | | | | | | | | | |
|
||
| Прочие оборотные активы | 1260 | | | | | | | | | | | | |
|
||
| **ИТОГО по разделу II** | **1200** | | | | | | | | | | | | |
|
||
| **БАЛАНС** | **1600** | | | | | | | | | | | | |
|
||
| | | | | | | | | | | | | | |
|
||
| **ПАССИВ** | **Код строки** | **01.10.2025** | **в том числе взаимные обязательства** | **Очищенные показатели** | **Доля в показателе по Группе** | **01.10.2025** | **в том числе взаимные обязательства** | **Очищенные показатели** | **Доля в показателе по Группе** | **01.10.2025** | **Консолидированная отчетность от клиента** | **Расхождения** | **Примечания** |
|
||
| **III. КАПИТАЛ И РЕЗЕРВЫ** | | | | | | | | | | | | | |
|
||
| Уставный капитал (иной аналогичный показатель в зависимости от ОПФ организации) | 1310 | | | | | | | | | | | | |
|
||
| Собственные акции, принадлежащие обществу, задолженность акционеров по оплате акций (иной аналогичный показатель в зависимости от ОПФ организации) | 1320 | | | | | | | | | | | | |
|
||
| Накопленная дооценка внеоборотных активов | 1340 | | | | | | | | | | | | |
|
||
| Добавочный капитал (без накопленной дооценки) | 1350 | | | | | | | | | | | | |
|
||
| Резервный капитал | 1360 | | | | | | | | | | | | |
|
||
| Нераспределенная прибыль (непокрытый убыток) | 1370 | | | | | | | | | | | | |
|
||
| **ИТОГО по разделу III** | **1300** | | | | | | | | | | | | |
|
||
| **IV. ДОЛГОСРОЧНЫЕ ОБЯЗАТЕЛЬСТВА** | | | | | | | | | | | | | |
|
||
| Заемные средства | 1410 | | | | | | | | | | | | |
|
||
| Отложенные налоговые обязательства | 1420 | | | | | | | | | | | | |
|
||
| Оценочные обязательства | 1430 | | | | | | | | | | | | |
|
||
| Прочие долгосрочные обязательства | 1450 | | | | | | | | | | | | |
|
||
| **ИТОГО по разделу IV** | **1400** | | | | | | | | | | | | |
|
||
| **V. КРАТКОСРОЧНЫЕ ОБЯЗАТЕЛЬСТВА** | | | | | **-** | | | | **-** | | | | |
|
||
| Заемные средства | 1510 | | | | | | | | | | | | |
|
||
| Кредиторская задолженность | 1520 | | | | | | | | | | | | |
|
||
| Доходы будущих периодов | 1530 | | | | | | | | | | | | |
|
||
| Оценочные обязательства | 1540 | | | | | | | | | | | | |
|
||
| Прочие краткосрочные обязательства | 1550 | | | | | | | | | | | | |
|
||
| **ИТОГО по разделу V** | **1500** | | | | | | | | | | | | |
|
||
| **БАЛАНС** | **1700** | | | | | | | | | | | | |
|
||
| | | | | | | | | | | | | | |
|
||
| **Расхождение баланса по Активу и Пассиву** | | | | | | | | | | | | | |
|
||
| | | | | | | | | | | | | | |
|
||
| **Отчет о финансовых результатах** | **тыс.руб.** | | | | | | | | | | | | |
|
||
| | | источник: ОФР (форма 2) | источник: матрица взаимных вычетов (см приложение) | | | | | | | | | | |
|
||
| **Наименования позиций\*** | **Код строки** | **01.10.2025** | **в том числе взаимные обороты** | **Очищенные показатели** | **Доля в показателе по Группе** | **01.10.2025** | **в том числе взаимные обороты** | **Очищенные показатели** | **Доля в показателе по Группе** | **01.10.2025** | **Консолидированная отчетность от клиента** | **Расхождения** | **Примечания** |
|
||
| Доходы и расходы по обычным видам деятельности | | | | | | | | | | | | | |
|
||
| Выpучка | 2110 | | | | | | | | | | | | |
|
||
| Себестоимость продаж | 2120 | | | | | | | | | | | | |
|
||
| Валовая прибыль (убыток) | 2100 | | | | | | | | | | | | |
|
||
| Коммерческие расходы | 2210 | | | | | | | | | | | | |
|
||
| Управленческие расходы | 2220 | | | | | | | | | | | | |
|
||
| Прибыль (убыток) от продаж | 2200 | | | | | | | | | | | | |
|
||
| Доходы от участия в других организациях | 2310 | 0 | | 0 | 0,00% | 0 | | 0 | - | 0 | | - | |
|
||
| Проценты к получению | 2320 | | | | | | | | | | | | |
|
||
| Проценты к уплате | 2330 | | | | | | | | | | | | |
|
||
| Прочие доходы | 2340 | | | | | | | | | | | | |
|
||
| Прочие расходы | 2350 | | | | | | | | | | | | |
|
||
| Прибыль (убыток) от продолжающейся деятельности до налогообложения | 2300 | | | | | | | | | | | | |
|
||
| Текущий налог на прибыль, в т.ч.: | 2410 | | | | | | | | | | | | |
|
||
| текущий налог на прибыль организаций | 2411 | 0 | | 0 | 0,00% | 0 | | 0 | - | 0 | | - | |
|
||
| отложенный налог на прибыль организаций | 2412 | 0 | | 0 | 0,00% | 0 | | 0 | - | 0 | | - | |
|
||
| Прибыль (убыток) от прекращаемой деятельности (за вычетом относящегося к ней налога на прибыль организаций) | 2420 | 0 | | 0 | 0,00% | 0 | | 0 | - | 0 | | - | |
|
||
| Прочее | 2460 | 0 | | 0 | 0,00% | 0 | | 0 | - | 0 | | - | |
|
||
| Чистая прибыль (убыток) | 2400 | | | | | | | | | | | | |
|
||
| Износ | | | | | | | | | | | | | |
|
||
| Износ основных средств (cумма начисленной амортизации) | - | | | | | | | | | | | | |
|
||
| | | | | | | | | | | | | | |
|
||
| Форма 0710002 с.2 | тыс.руб. | 0 | | | | 0 | | | | | | | |
|
||
| | | источник: ОФР (форма 2) | источник: матрица взаимных вычетов (см приложение) | | | | | | | | | | |
|
||
| Наименование показателя | Код строки | 01.10.2025 | в том числе взаимные обороты | Очищенные показатели | Доля в показателе по Группе | 01.10.2025 | в том числе взаимные обороты | Очищенные показатели | Доля в показателе по Группе | 01.10.2025 | Консолидированная отчетность от клиента | Расхождения | Примечания |
|
||
| СПРАВОЧНО Результат от переоценки внеоборотных активов, не включаемый в чистую прибыль (убыток) | 2510 | 0 | | 0 | 0,00% | 0 | | 0 | - | 0 | | - | |
|
||
| Результат от прочих операций, не включаемый в чистую прибыль (убыток) | 2520 | 0 | | 0 | 0,00% | 0 | | 0 | - | 0 | | - | |
|
||
| Налог на прибыль от операций, результат которых не включается в чистую прибыль (убыток) | 2530 | 0 | | 0 | 0,00% | 0 | | 0 | - | 0 | | | |
|
||
| Совокупный финансовый результат периода | 2500 | | | | | | | | | | | | |
|
||
| Базовая прибыль (убыток) на акцию | 2900 | 0 | | 0 | 0,00% | 0 | | 0 | - | 0 | | - | |
|
||
| Разводненная прибыль (убыток) на акцию | 2910 | 0 | | 0 | 0,00% | 0 | | 0 | - | 0 | | - | |
|
||
| | | | | | | | | | | | | | |
|
||
| Дополнительная информация | тыс.руб. | 0 | | | | 0 | | | | | | | |
|
||
| Из расшифровок, представленных участником сделки | | | | | | | | | | | | | |
|
||
|
||
**Приложение 1: Правила заполнения колонки "Очищенные показатели" : смотри правила формирования таблицы корректировки данных и правила формирования формы ниже**
|
||
|
||
**Внимание**
|
||
|
||
В таблице указаны только те строки, для которых предполагается заполнение. Если код строки в таблице не указан то не заполняем (значение 0 для корректного арифметического расчета для остальных колонок)
|
||
2. Таблицу корректировки данных и "шахматку"
|
||
|
||
Правила создания формы
|
||
|
||
1) "Шахматка"
|
||
|
||
Визуальная форма:
|
||
|
||
Форма представляет собой таблицу взаимных пересечений финансовых обязательств организаций участвующих в консолидации
|
||
|
||
| | Русский Бисквит | Пекарня | Организация 3 | Организация 4 | Организация N | Итого |
|
||
| --- | --- | --- | --- | --- | --- | --- |
|
||
| Русский Бисквит | | 5000,00 6000,00 (1000) | | | | |
|
||
| Пекарня | | | | | | |
|
||
| Организация 3 | | | | | | |
|
||
| Организация 4 | | | 20000 21000 (1000) | | | |
|
||
| Организация N | | | | | | |
|
||
|
||
где данные из примера:
|
||
|
||
"5000,00" - дебиторская задолженность из ОСВ компании "Русский бисквит" (поле **org\_a\_amount**
|
||
)
|
||
|
||
"6000,00" - кредиторская задолженность из ОСВ компании Пекарня (поле **org\_b\_amount**
|
||
)
|
||
|
||
"1000.00" - разность сумм
|
||
|
||
На выходе в визуальном представлении ожидается три таблицы:
|
||
|
||
* По парам счетов 58.03 (для дебета) и 67.03+66.03 (для кредита)
|
||
* По парам счетов 62+60+76 (за исключением субсчетов 76.7.5 и 76.7.9) и 62+60+76 (за исключением субсчета 76.7.1)
|
||
* По всем счетам всех ОСВ организации
|
||
|
||
Маппинг данных в поля **org\_a\_amount/org\_b\_amount**
|
||
идентичен маппингу таблицы описанной ниже
|
||
|
||
2) Таблица корректировки данных
|
||
|
||
Визуальная форма:
|
||
|
||
Форма представляет собой сводную парную таблицу (**Intercompany\_reconciliation**
|
||
)
|
||
заполняемой из сводной ОСВ
|
||
|
||
| Наименование организации А | счет | сумма | Наименование организации B | счет | сумма | Сумма расхождений | Процент расхождений | Комментарий |
|
||
| --- | --- | --- | --- | --- | --- | --- | --- | --- |
|
||
| Русский бисквит | 60.1 | 5000,00 | Пекарня | 62 | 6000,00 | разность значений org\_a\_amount и org\_b\_amount пример: 1110.00 | 6% | Пример: "Изменил с 5000 на 6000 потому что:" |
|
||
| .... | | | | | | | | |
|
||
| Итого: | --- | --- | --- | --- | ---- | сумма всех строк по колонке | --- | |
|
||
|
||
Маппинг данных в таблицу :
|
||
|
||
| Поле формы | Поле | Обязательность | Правило заполнения | Пример | Комментарий |
|
||
| --- | --- | --- | --- | --- | --- |
|
||
| - | reconciliation\_id | + | инкримент | | |
|
||
| - | package\_id | + | значением Consolidation\_package.package\_id | | |
|
||
| - | row\_code | + | значением org\_a\_account | 1100 | |
|
||
| - | org\_pair\_hash | + | Хэш-ключ пары: min(org\_id)|max(org\_id)|account | | |
|
||
| Наименование организации А | org\_a\_id | + | Organizations.org\_id | | |
|
||
| Счет | org\_a\_account | + | Osv\_report\_rows. account\_code | 62.01 | |
|
||
| Сумма | org\_a\_amount | + | Osv\_report\_rows. closing\_debit | | |
|
||
| - | org\_b\_counterparty\_name | + | значением Organizations.full\_name организации B найденной в детальной строке ОСВ принцип поиска: * если в ОСВ есть ИНН то ищем по ключу ИНН в справочнике организаций * если в ОСВ нет ИНН то производим поиск по маске имени в таблицах Organizations и Organization\_aliases | Пекарня "Счастливочная" | |
|
||
| | org\_a\_osv\_row\_id | + | Osv\_report\_rows.row\_id | | |
|
||
| | org\_a\_osv\_header\_id | + | Osv\_report\_header.report\_id | | |
|
||
| | org\_b\_id | + | Organizations.org\_id | | |
|
||
| | org\_b\_account | + | Osv\_report\_rows. account\_code | | |
|
||
| | org\_b\_amount | + | Osv\_report\_rows. closing\_credit | | |
|
||
| | | | | | |
|
||
| | | | | | |
|
||
| | | | | | |
|
||
|
||
Правила формирования формы:
|
||
|
||
Система берет в левую часть таблицы ОСВ со определенным счетом организации А, ищет упоминание контрагента в детализированной строке, по имени контрагента (орагнизации Б) находит ОСВ определенного счета, ищет по имени контрагента в детализированной строке упоминание Организации А и сопоставляет суммы. В зависимости от номера счета сопоставление строк организации А и организации Б может быть по приницпу как 1 к 1 так и 1 к многим. Если сумма не совпала (проверка не пройдена) то данная строка получает цветовое выделение) Ниже дано описание пар счетов требующих выверки пар сумм: Приложение 1
|
||
|
||
| Счет организации А | Код строки сводного отчета консолидации для маппинга полученного значения (row\_code) | Счет (счета) организации Б | Алгоритм: |
|
||
| --- | --- | --- | --- |
|
||
| 03 | | | |
|
||
| 60, 62, 76 (все подсчета кроме: 76.7.5, 76.7.9) | для: org\_a\_account = 1230 org\_b\_account=1520 | 60, 62, 76 (все подсчета кроме: 76.7.1) | * Система берет упоминание организации Б в счетах 60, 62, 76 (все подсчета кроме: 76.7.5, 76.7.9) организации А (при нахождении более одной строки производим расчет суммы строк). Находит счета 60, 62, 76 (все подсчета кроме: 76.7.1) организации Б и ищет парную строку. * Найденные значения маппируем: | организация А | | организация Б | | | --- | --- | --- | --- | | источник | целевое поле | источник | целевое поле | | Osv\_report\_rows. closing\_debit | org\_a\_amount | Osv\_report\_rows. closing\_credit | org\_b\_amount | * Если значения совпали проверка пройдена, значение суммы маппируем в таблицу **Company\_data** по ключу row\_code=org\_a\_account для организации А, и row\_code=org\_b\_account для организации Б * Если расхождение 5% система маппирует наименьшее значение из пары в таблицу **Company\_data** * Если расхождение 5% строка выделяется цветом, требуется анализ |
|
||
| 60, 62, 76 (все подсчета кроме: 76.7.5, 76.7.9) | для: org\_a\_account = 1230 org\_b\_account=1410 | 67 | * Система берет упоминание организации Б в счетах 60, 62, 76 (все подсчета кроме: 76.7.5, 76.7.9) организации А (при нахождении более одной строки производим расчет суммы строк). Находит счет 67 организации Б и ищет парную строку. * Найденные значения маппируем: | организация А | | организация Б | | | --- | --- | --- | --- | | источник | целевое поле | источник | целевое поле | | Osv\_report\_rows. closing\_debit | org\_a\_amount | Osv\_report\_rows. closing\_credit | org\_b\_amount | + Если значения совпали проверка пройдена, значение суммы маппируем в таблицу **Company\_data** по ключу row\_code=org\_a\_account для организации А, и row\_code=org\_b\_account для организации Б + Если расхождение 5% система маппирует наименьшее значение из пары в таблицу **Company\_data** + Если расхождение 5% строка выделяется цветом, требуется анализ |
|
||
| 60, 62, 76 (все подсчета кроме: 76.7.5, 76.7.9) | для: org\_a\_account = 1230 org\_b\_account=1510 | 66 | * Система берет упоминание организации Б в счетах 60, 62, 76 (все подсчета кроме: 76.7.5, 76.7.9) организации А (при нахождении более одной строки производим расчет суммы строк). Находит счет 66 организации Б и ищет парную строку. * Найденные значения маппируем: | организация А | | организация Б | | | --- | --- | --- | --- | | источник | целевое поле | источник | целевое поле | | Osv\_report\_rows. closing\_debit | org\_a\_amount | Osv\_report\_rows. closing\_credit | org\_b\_amount | + Если значения совпали проверка пройдена, значение суммы маппируем в таблицу **Company\_data** по ключу row\_code=org\_a\_account для организации А, и row\_code=org\_b\_account для организации Б + Если расхождение 5% система маппирует наименьшее значение из пары в таблицу **Company\_data** + Если расхождение 5% строка выделяется цветом, требуется анализ |
|
||
| 03 | для: org\_a\_account = 1150 org\_b\_account=1450/1550 | 76.7.1 76.1.5 76.7.9 | **Если по организации А таблица с ОСВ счета 03 не пуста:** * Система берет упоминание организации Б в счете 03 организации А (при нахождении более одной строки производим расчет суммы строк). Находит счет 76 организации Б и ищет парную строку в подсчетах 76.7.1, 76.1.5, 76.7.9. Вычисляет разность значений сумм по строкам (76.7.1-76.7.5-76.7.9) * Найденные значения маппируем: | организация А | | организация Б | | | --- | --- | --- | --- | | источник | целевое поле | источник | целевое поле | | Osv\_report\_rows. closing\_debit | org\_a\_amount | Osv\_report\_rows. closing\_credit | org\_b\_amount | * Если значения совпали то система считает проверку пройденной * Если значения не совпали, система производит подсчет процента расхождений * Если процент расхождений = 5% то система берет наименьшее значение из пары сумм организации А и организации Б и маппирует данное значение в таблицу **Company\_data** по ключу row\_code=org\_a\_account для организации А, и row\_code=org\_b\_account для организации Б * Если процент расхождений 5% то система считает проверку не пройденной, ни одна сумма из найденной пары не маппируется в итоговый отчет консолидации, строка в таблице выделяется цветом Е**сли по организации А таблица с ОСВ счета 03 пуста (не была подгружена)** * Система находит счет 76 организации Б и ищет упоминание организации А в подсчетах 76.7.1, 76.1.5, 76.7.9. Вычисляет разность значений сумм по строкам (76.7.1-76.7.5-76.7.9) * Результат маппируется в итоговый консолидированный отчет в строку ППА, колонка Итого |
|
||
| 58.01 | для: org\_a\_account = 1170 org\_b\_account= 1310 | 80/83 | **Если по организации Б таблица ОСВ со счетом 80 или 83 не пуста:** * Система берет упоминание организации Б в счете 58.01 (дебетовые сальдо на конец периода с уровня субконто Контрагенты по счету 58) * Ищет соответствующие записи по счету 80/83 организации Б * При нахождении более одной строки суммирует Найденные значения маппируем: | организация А | | организация Б | | | --- | --- | --- | --- | | источник | целевое поле | источник | целевое поле | | Osv\_report\_rows. closing\_debit | org\_a\_amount | Osv\_report\_rows. closing\_credit | org\_b\_amount | * Если значения совпали проверка пройдена, значение суммы маппируем в таблицу **Company\_data** по ключу row\_code=org\_a\_account для организации А, и row\_code=org\_b\_account для организации Б * Если расхождение 5% система маппирует наименьшее значение из пары в таблицу **Company\_data** * Если расхождение 5% строка выделяется цветом, требуется анализ **Если по организации Б таблица ОСВ со счетом 80 и 83 пуста (данные ОСВ не были подгружены):** * Система берет упоминание организации Б в счете 58.01 (дебетовые сальдо на конец периода с уровня субконто Контрагенты по счету 58) и маппирует найденное значение в сводный консолидированный отчет **Company\_data** по ключу row\_code=org\_a\_account для организации А, и row\_code=org\_b\_account для организации Б в колонку **elimination** * Система берет значение **Company\_data.source** по фильтру org\_b\_account=1310 и вычитает из него сумму по счету 58.01 компании А. Если результат разности больше 0 то данный результат записывается в в таблицу **Company\_data (уточнить колонку) по фильтру row\_name=Гудвил** |
|
||
| 58.03 | для: org\_a\_account = 1170 org\_b\_account=1410 | 67.03 | * Система берет упоминание организации Б в счете 58.03 организации А * Ищет соответствующие записи по счету 67.03 организации Б * При нахождении более одной строки суммирует Найденные значения маппируем: | организация А | | организация Б | | | --- | --- | --- | --- | | источник | целевое поле | источник | целевое поле | | Osv\_report\_rows. closing\_debit | org\_a\_amount | Osv\_report\_rows. closing\_credit | org\_b\_amount | * Если значения совпали проверка пройдена, значение суммы маппируем в таблицу **Company\_data** по ключу row\_code=org\_a\_account для организации А, и row\_code=org\_b\_account для организации Б * Если расхождение 5% система маппирует наименьшее значение из пары в таблицу **Company\_data** * Если расхождение 5% строка выделяется цветом, требуется анализ |
|
||
| 58.03 | для: org\_a\_account = 1240 org\_b\_account=1510 | 66.03 | * + Система берет упоминание организации Б в счете 58.03 организации А + Ищет соответствующие записи по счету 66.03 организации Б + При нахождении более одной строки суммирует Найденные значения маппируем: | организация А | | организация Б | | | --- | --- | --- | --- | | источник | целевое поле | источник | целевое поле | | Osv\_report\_rows. closing\_debit | org\_a\_amount | Osv\_report\_rows. closing\_credit | org\_b\_amount | * Если значения совпали проверка пройдена, значение суммы маппируем в таблицу **Company\_data** по ключу row\_code=org\_a\_account для организации А, и row\_code=org\_b\_account для организации Б * Если расхождение 5% система маппирует наименьшее значение из пары в таблицу **Company\_data** * Если расхождение 5% строка выделяется цветом, требуется анализ |
|
||
| ~~58~~ | ~~для:~~ ~~org\_a\_account = 1170~~ ~~org\_b\_account=1520~~ | ~~76~~ | * ~~Система берет упоминание организации Б в счете 58 (дебетовые сальдо на конец периода с уровня субконто Контрагенты по счету 58)~~ * ~~Ищет соответствующие записи по счету 76 организации Б~~ * ~~При нахождении более одной строки суммирует~~ ~~Найденные значения маппируем:~~ | ~~организация А~~ | | ~~организация Б~~ | | | --- | --- | --- | --- | | ~~источник~~ | ~~целевое поле~~ | ~~источник~~ | ~~целевое поле~~ | | ~~Osv\_report\_rows. closing\_debit~~ | ~~org\_a\_amount~~ | ~~Osv\_report\_rows. closing\_credit~~ | ~~org\_b\_amount~~ | * ~~Если значения совпали проверка пройдена, значение суммы маппируем в таблицу **C onsolidation\_template** по ключу row\_code=org\_a\_account для организации А, и row\_code=org\_b\_account для организации Б~~ * ~~Если расхождение 5% система маппирует наименьшее значение из пары в таблицу **C onsolidation\_template**~~ * ~~Если расхождение 5% строка выделяется цветом, требуется анализ~~ |
|
||
| 76 | для: org\_a\_account = 1230 org\_b\_account=1510 | 66.04 67.04 | * Система берет упоминание организации Б в счете 76 (все субсчета) организации А * Ищет соответствующие записи по счетам 66.04 и 67.04 организации Б * При нахождении более одной строки суммирует Найденные значения маппируем: | организация А | | организация Б | | | --- | --- | --- | --- | | источник | целевое поле | источник | целевое поле | | Osv\_report\_rows. closing\_debit | org\_a\_amount | Osv\_report\_rows. closing\_credit | org\_b\_amount | * Если значения совпали проверка пройдена, значение суммы маппируем в таблицу **Company\_data** по ключу row\_code=org\_a\_account для организации А, и row\_code=org\_b\_account для организации Б * Если расхождение 5% система маппирует наименьшее значение из пары в таблицу **Company\_data** * Если расхождение 5% строка выделяется цветом, требуется анализ |
|
||
| | | | |
|
||
| | | | |
|
||
| | | | |
|
||
| | | | |
|
||
| | | | |
|
||
| | | | |
|
||
| | | | |
|
||
| | | | |
|
||
| | | | |
|
||
|
||
Правила формирования по данным ОФР:
|
||
|
||
| Счет организации А | Код строки сводного отчета консолидации для маппинга полученного значения (row\_code) | Счет (счета) организации Б | Алгоритм: |
|
||
| --- | --- | --- | --- |
|
||
| 90.01 (КТ, с НДС) - приоритет. При отсутствии ОСВ сч. 90.01 - 62.01, 62.21, 62.31 (ДБ, с НДС) | **2110** | 60.01, 60.21, 60.31 (КТ); 76 - все субсчета, кроме 76.07.\* и 76.03.\*; плюс 76.07.2 (КТ) | * Система берёт по организации А оборот с НДС по ВГО: КТ сч. 90.01 либо (при его отсутствии) ДБ сч. 62.01/62.21/62.31, в разрезе Контрагенты * Сопоставляет с КТ-оборотом организации Б по сч. 60.01/60.21/60.31 и сч. 76 (с исключениями) * Правило min значение не применяется: в ОФР проставляется значение, полученное по стороне организации А (90.01 либо 62) * Элиминируемая сумма без НДС = Оборот с НДС / (1 + СрВзСтавка НДС / 100). Результат записывается в столбец ВГО строки 2110 |
|
||
| 60.01, 60.21, 60.31 (КТ) | **2120** | 90.01 (КТ, с НДС) - приоритет; 62.01, 62.21, 62.31 (ДБ) - при отсутствии 90.01 | * Исключение внутригрупповых оборотов из себестоимости - в тех же суммах, что и по выручке, но в зеркальном отражении, уменьшенных на сумму НДС в составе оборота (по СрВзСтавке НДС) * Элиминируемая сумма = Себестоимость продаж (2120) - Выручка по ВГО (значение, полученное по строке 2110) |
|
||
| 76.03 (ДБ) | **2310** | 76.03 (КТ) | * Элиминируемая сумма - сопоставление ( ДБ-оборота по сч. 76.03 организации А; КТ-оборота по сч. 76.03 организации Б) * В ОФР проставляется значение, полученное по ДБ-оборота сч. 76.03 (организации А) - результат записывается в столбец ВГО строки 2310 * Сопоставление пар - для дополнительного анализа пользователем в таблице корректировки данных |
|
||
| 76.03, 76.05, 76.08, 76.09 (ДБ) | **2320** | 66.02, 66.04, 66.06, 66.22, 66.24, 66.26 (КТ); 67.02, 67.04, 67.06, 67.22, 67.24, 67.26 (КТ) | * Исключение выполняется на основании ДБ-оборотов в периоде с уровня субконто Контрагенты по сч. 76 * Однозначных правил отражения процентов на конкретных субсчетах нет: субсчета/контрагенты для исключения работник ПА определяет самостоятельно * Элиминируемая сумма = min ( ДБ-оборот 76\* организации А; КТ-оборот 66, 67 организации Б) |
|
||
| 66.02, 66.04, 66.06, 66.22, 66.24, 66.26 (КТ); 67.02, 67.04, 67.06, 67.22, 67.24, 67.26 (КТ); 76.07.5 (проценты по ППА), 76.08, 76.28, 76.38 (КТ) | **2330** | 76.03, 76.05, 76.08, 76.09 (ДБ) | * Исключение выполняется на основании КТ-оборотов по чётным субсчетам сч. 66, 67, 76 с уровня субконто Контрагенты * Элиминируемая сумма = min ( КТ-оборот 66, 67, 76 организации А; ДБ-оборот 76 организации Б) |
|
||
3. Заполнение поля Гудвил
|
||
|
||
Правила создания формы
|
||
|
||
Визуальная форма:
|
||
|
||
| № п/п | Наименование ДО | Доля владения | ФВ ГО по состоянию на | Доля участия ГО в УК ДО | УК | Гудвилл (+) (-) |
|
||
| --- | --- | --- | --- | --- | --- | --- |
|
||
| 30.09.2025 | 30.09.2025 | 30.09.2025 | 30.09.2025 |
|
||
| тыс. руб | тыс. руб | тыс. руб | тыс. руб |
|
||
| | | | Счет 58.01 ГО | УК \* Доля владения/100 | Счет 80 + счет 83 ДО **ИЛИ** строка 1310 Бух. отчетности ДО | ФВ ГО - Доля участия ГО в УК ДО |
|
||
| Агрохолдинг Просторы АО | | | | | | |
|
||
| 1 | ООО Дон Агро | 99,99% | 4 060 000,00 | 371 135,88 | 371 173,00 | 3 688 864,12 |
|
||
| 2 | АО Дон Агро | 99,99% | 260 012,00 | 119 988,00 | 120 000,00 | 140 024,00 |
|
||
| 3 | ООО Дон Мучнов | 90,00% | 130 000,00 | 9,00 | 10,00 | 129 991,00 |
|
||
| 4 | ООО Инвестком | 99,99% | 267 000,00 | 9,999 | 10,00 | 266 990,00 |
|
||
| | **Всего** | | **4 717 012,00** | **491 142,88** | **491 193,00** | **4 225 869,12** |
|
||
|
||
Заполнение таблицы Гудвил:
|
||
|
||
1. 1. Необходимо сгруппировать строки по головной организации - для каждой головной организации (ГО) нужно создать список её дочерних организаций (ДО) отдельными строками.
|
||
2. Поле **Наименование ДО**
|
||
: указать дочернюю организацию, в которой у ГО есть доля; источник - контрагенты в счете 58.01 головной организации.
|
||
3. Поле **Доля владения**
|
||
: проставить долю ГО в ДО значением от 0 до 100. Сейчас нет источника данного поля, поэтому проставляется вручную.
|
||
4. Поле **ФВ ГО**
|
||
: сумма финансовых вложений ГО в данную ДО - дебетовый остаток по счёту 58.01 головной организации.
|
||
5. Поле **УК**
|
||
: уставный капитал ДО - кредитовый остаток по счету 80 + счет 83. При отсутствии данных счетов, поле заполняется на основании поля 1310 (Уставной капитал) Бухгалтерского баланса дочерней организации.
|
||
6. Поле **Доля участия ГО в УК ДО**
|
||
: рассчитывается как УК умножить на Долю владения и деленное на 100 (**УК \* Доля владения/100**
|
||
).
|
||
7. Поле **Гудвил (+/-)**
|
||
: рассчитывается как ФВ ГО минус доля участия ГО в УК ДО (**ФВ ГО - Доля участия ГО в УК ДО**
|
||
).
|
||
8. Гудвил может быть как больше, так и меньше нуля.
|
||
9. По каждой ГО формируется строка **Всего**
|
||
: суммируется по группе значения ФВ ГО, Доли участия ГО в УК ДО, УК и Гудвил.
|
||
10. Результат **Гудвил (+/-)**
|
||
заносится в в консолидированный отчет - в отдельную строку Гудвил.
|
||
4. Форму 276-ОД
|
||
|
||
Правила создания формы
|
||
4. Система производит валидацию сумм расхождений с суммами по строке 1300 и 1600 (колонка итого) созданного КФО ГСК в зависимости от условий. А именно:
|
||
1. Система сравнивает суммы колонок Итого по строкам 1300 и 1600 КФЩ ГСК. Если сумма по строке 1300 меньше чем сумма по строке 1600\*0.1 то:
|
||
1. Система сравнивает сумму расхождений из таблицы **Intercompany\_reconciliation**
|
||
по всем строкам где **row\_code**
|
||
в диапазоне **1100 -1700**
|
||
с суммой указанной в колонке Итого по строке 1600 созданного КФО ГСК
|
||
2. Если отклонение между суммами менее или равно 1% то проверка пройдена.
|
||
3. Иначе система записывает в лог сообщение Совокупный объем расхождений превышает установленную норму 1% от ВБ ГСК, строка 1600 КФО ГСК выделяется красным цветовым фоном
|
||
2. Иначе система сравнивает сумму расхождений
|
||
из таблицы **Intercompany\_reconciliation**
|
||
по всем строкам где **row\_code**
|
||
в диапазоне **1100 -1700**
|
||
с суммой указанной в колонке Итого по строке 1300 созданного КФО ГСК
|
||
1. Если отклонение между суммами менее или равно 10% то проверка пройдена.
|
||
2. Иначе система записывает в лог сообщение Совокупный объем расхождений превышает установленную норму 10% от ЧА ГСК, строка 1300 КФО ГСК выделяется красным цветовым фоном
|
||
5. Система производит валидацию сумм расхождений с суммами по строке 2110 и 2200 (колонка итого) созданного ОФР КФО ГСК в зависимости от условий. А именно:
|
||
1. Система рассчитывает уровень рентабельности продаж как отношение суммы колонки Итого по строке 2200 к сумме колонки Итого по строке 2110 созданного ОФР КФО ГСК (2200 делим на 2110)
|
||
1. Если рентабельность продаж меньше 10% или имеет отрицательное значение то:
|
||
1. Система сравнивает сумму расхождений из таблицы
|
||
**Intercompany\_reconciliation**
|
||
по строкам **где **row\_code****
|
||
в диапазоне **2110-2910**
|
||
с суммой указанной в колонке Итого по строке 2110 созданного ОФР КФО ГСК
|
||
2. Если отклонение между суммами менее или равно 1% то проверка пройдена
|
||
3. Иначе система записывает в лог сообщение Совокупный объем расхождений превышает установленную норму 1% от Выручки ГСК, строка 2110 ОФР КФО ГСК выделяется красным цветовым фоном
|
||
2. Иначе система сравнивает сумму расхождений из таблицы
|
||
**Intercompany\_reconciliation**
|
||
по строкам
|
||
**где **row\_code****
|
||
в диапазоне
|
||
**2110-2910**
|
||
с суммой указанной в колонке Итого по строке 2200 созданного ОФР КФО ГСК
|
||
1. Если отклонение между суммами менее или равно 10% то проверка пройдена.
|
||
2. Иначе система записывает в лог сообщение Совокупный объем расхождений превышает установленную норму 10% от Прибыли от продаж ГСК, строка 2200 ОФР КФО ГСК выделяется красным цветовым фоном
|