arm-tabular-parser/api/arm_statements/rules/statement_code_orders.yaml
Andrey Epifancev 412a322b9d chore(arm_statements): копия пакета arm-statements@6bce80b (#52)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-18 19:38:43 +04:00

195 lines
8.8 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Упорядоченные перечни кодов строк форм ББ/ОФР по редакциям и вариантам — данные для структурного подтверждения
# неуверенного кода (05-domain-rules.md §11.9 «Код строки»; change unified-statement-normalization, K-5, Р-20).
#
# Что это: порядок кодов бланка (итоги после слагаемых: 1110 … 1190, 1100), без наименований (Р-3: «код → наименование»
# знает только ядро, arm-core/api/rules/statement_lines.yaml). Только четырёхзначные коды: пятизначная подстрока
# подтверждается через родителя (§11.9). Перечень — объединение кодов шаблонов банка (словарь имён ядра,
# fixtures/statements-xlsx/templates/) и кодов печатных форм 1С и сканов, найденных в fixtures (источник — комментарий
# у кода). Код без образца в fixtures сюда не добавляется: кандидаты — OQ-168.
#
# Где живёт: этот файл — источник; в пакете arm_statements лежит его байтовая копия (rules/statement_code_orders.yaml),
# идентичность проверяет sync-statements --check (как копии схем контракта в сервисах). Ядро берёт порядок и состав
# редакций из копии пакета; sync-statements --check сверяет, что все коды словаря имён ядра есть в перечне своей
# редакции. Правка перечня — PR сюда, затем в arm-statements, затем sync-statements в потребителях («сначала ядро»).
#
# Как читается (§11.9): четырёхзначные коды строк ok документа — последовательность; для каждой редакции берётся
# наибольшая подпоследовательность, согласованная с порядком перечня варианта формы документа (form_variant); выбирается
# редакция с более длинной (при равенстве — по эффективной дате: fsbu4 после 2024-12-31). Повтор кода допустим только
# там, где он есть в перечне (repeats): тогда структура подтверждает обе копии; повтор вне перечня с неуверенной копией —
# needs_review у неуверенной копии (Р-16, Р-20).
#
# Проверка формы файла — scripts/validate_contracts.py (make validate-contracts).
version: 1
# Законные повторы кода в одном перечне (Р-20). Ключ — редакция и форма; значение — коды, которые встречаются в
# перечне больше одного раза: в варианте full код стоит ровно 1 + (число его вхождений в этот список) раз, в simplified —
# не чаще (сейчас повторов в simplified нет; validate_contracts.py проверяет оба правила).
repeats:
66n:
# раздел III для некоммерческих организаций («Целевое финансирование») печатается после раздела III коммерческих
# (fixtures/ocr/aep_3.json, 31.12.2024: 1310 «Паевой фонд», 1320 «Целевой капитал», 1350 «Целевые средства»,
# 1360 «Фонд недвижимого и особо ценного движимого имущества», 1370 «Резервный и иные целевые фонды»)
BALANCE: ["1310", "1320", "1350", "1360", "1370", "1300"]
INCOME: []
fsbu4:
# печатная форма 1С по ФСБУ 4/2023 (fixtures/ocr/aep_6.json, «БО 1 кв 2025.json», «Бухгалтерская отчетность
# 1 кв.25.json»): 1220 «НДС, начисленный по отгрузке», 1520 «Обязательство по аренде» (AURORA-1431)
BALANCE: ["1220", "1520"]
# 2410 «Налог при упрощенной системе налогообложения» после 2412 (fixtures/ocr/aep_6.json, OQ-152)
INCOME: ["2410"]
editions:
66n:
BALANCE:
full:
- "1110"
- "1120"
- "1130"
- "1140"
- "1150"
- "1160"
- "1170"
- "1180"
- "1190"
- "1100"
- "1210"
- "1220"
- "1230"
- "1231" # код клиента: unagrande-group/2024-FY/ББ. Лист 1 .xls
- "1240"
- "1250"
- "1260"
- "1200"
- "1600"
- "1310"
- "1320"
- "1340"
- "1350"
- "1360"
- "1370"
- "1300"
- "1310" # раздел III НКО (aep_3), см. repeats
- "1320"
- "1350"
- "1360"
- "1370"
- "1300"
- "1410"
- "1420"
- "1430"
- "1450"
- "1400"
- "1510"
- "1520"
- "1530"
- "1540"
- "1550"
- "1500"
- "1700"
# упрощённая форма, приказ 66н прил. 5 — по бланку, образца в fixtures нет (OQ-166)
simplified: ["1150", "1170", "1210", "1250", "1230", "1600", "1300", "1350", "1360", "1410", "1450", "1510",
"1520", "1550", "1700"]
INCOME:
full:
- "2110"
- "2120"
- "2100"
- "2210"
- "2220"
- "2200"
- "2310"
- "2320"
- "2330"
- "2340"
- "2350"
- "2300"
- "2410"
- "2411"
- "2412"
- "2460"
- "2400"
- "2510"
- "2520"
- "2530" # печатная форма 1С: unagrande-co/2024-FY/ОФР. Лист 2 .xls, mezheninovskaya/2025-Q3
- "2500"
- "2900"
- "2910"
- "2930" # печатная форма 1С: fixtures/ocr/aep_3.json (после 2900)
# упрощённая форма, приказ 66н прил. 5 — по бланку, образца нет (OQ-166)
simplified: ["2110", "2120", "2330", "2340", "2350", "2410", "2400"]
fsbu4:
BALANCE:
full:
- "1105" # печатная форма 1С: npz/2025-Q3, fixtures/ocr/aep_6.json, «БО 1 кв 2025.json»
- "1110"
- "1130" # печатная форма 1С: npz/2025-Q3, «БО 1 кв 2025.json», «Бухгалтерская отчетность 1 кв.25.json»
- "1140" # то же и aep_6.json
- "1150"
- "1160"
- "1170"
- "1180"
- "1190"
- "1100"
- "1210"
- "1215"
- "1220"
- "1220" # «НДС, начисленный по отгрузке», см. repeats
- "1230"
- "1240"
- "1250"
- "1260"
- "1200"
- "1600"
- "1310"
- "1320"
- "1340"
- "1350"
- "1360"
- "1370"
- "1300"
- "1410"
- "1420"
- "1430"
- "1450"
- "1400"
- "1510"
- "1520"
- "1520" # «Обязательство по аренде», см. repeats
- "1530" # печатная форма 1С: npz/2025-Q3, aep_6.json, оба json 1 кв. 2025
- "1540"
- "1550"
- "1500"
- "1700"
# упрощённая форма по ФСБУ 4/2023 — состав принят как у 66н до образца (OQ-166, OQ-168)
simplified: ["1150", "1170", "1210", "1250", "1230", "1600", "1300", "1350", "1360", "1410", "1450", "1510",
"1520", "1550", "1700"]
INCOME:
full:
- "2110"
- "2120"
- "2100"
- "2210"
- "2220"
- "2200"
- "2310"
- "2320"
- "2330"
- "2340"
- "2350"
- "2300"
- "2410"
- "2411"
- "2412"
- "2410" # «Налог при упрощенной системе налогообложения», см. repeats
- "2420"
- "2460" # печатная форма 1С: npz/2025-Q3, aep_6.json, оба json 1 кв. 2025
- "2400"
- "2510"
- "2520"
- "2530"
- "2500"
- "2900"
- "2910"
# упрощённая форма по ФСБУ 4/2023 — как у 66н до образца (OQ-166, OQ-168)
simplified: ["2110", "2120", "2330", "2340", "2350", "2410", "2400"]