Files
153_CB-OUO_Parent-Payments/docs/ПЛАН. Остатки взаиморасчётов с детьми в садах (БГУ 2.0).md
T
tsvetkoff 3aa47428f1 Документация: подтверждено направление движений регистра
- «Кассовое поступление» — приход, «Передача платежей» — расход; регистр обнуляется при полной передаче
- В плане раздел «Требует подтверждения» заменён на подтверждённое решение
- В постановке уточнено: в «Кассовом поступлении» меняется только направление движения по регистру
2026-10-15 00:19:04 +05:00

121 lines
12 KiB
Markdown
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.
# ПЛАН. Остатки взаиморасчётов с детьми в садах (БГУ 2.0)
**Ветка:** `feature/ostatki-v-sadah`
**Основание:** `docs/ЗАДАЧА. Остатки взаиморасчётов с детьми в садах (БГУ 2.0).md`
**Дата:** 14.10.2026
**Статус:** решения получены полностью; можно начинать правки
---
## 0. Ревизия выполнена
Проведён разбор обоих документов и их связей. Ниже — что именно затронет работа.
**Документы и их текущая роль:**
| Роль сейчас | Объект | Проводка | Движения по регистрам |
|---|---|---|---|
| ЦБ принимает задолженность | `ПС_ПринятиеЗадолженностиОтУчреждения` | Дт 205.31 — Кт 304.04 | Журнал проводок **и** регистр взаиморасчётов (приход) |
| Сад передаёт задолженность | `ПС_ПередачаЗадолженностиВЦБ` | Дт 304.04 — Кт 205.31 | только Журнал проводок |
**Цепочка «ввод на основании»:** «Начисление родительской платы» → `ПС_ПередачаЗадолженностиВЦБ` (через `basedOn`) → `ПС_ПринятиеЗадолженностиОтУчреждения` (командой формы).
**Ссылки, которые надо пройти при переименовании:**
1. `Configuration.mdo` — состав документов.
2. `Roles\ПС_ОсновнаяРоль\Rights.rights` — два блока прав.
3. Подсистема `РодительскаяПлата.mdo` — состав содержимого.
4. `НачислениеРодительскойПлаты.mdo` — свойство `basedOn`.
5. Типы реквизитов `ДокументПередачи`: в `.mdo` ЦБ-документа и в регистре `ПС_ВзаиморасчетыПоРодительскойПлате`.
6. Код: `Тип("ДокументСсылка.…")`, тексты запросов `Документ.…`, `Документы.….СформироватьПечатныеФормыИзвещений`, `Документы.….ПолучитьМакет`, `ОткрытьФорму("Документ.….Форма.ФормаДокумента")` — в обоих документах, в общем модуле `ПС_УчетРодительскойПлаты`, в пульте, в форме «Начисления родительской платы».
7. Ключи параметров печати в `ПС_УчетРодительскойПлаты` (`ПАРАМЕТРЫ_ПЕЧАТИ_…`).
8. Типы в `.form`: `DocumentObject.…` в формах документов, `DocumentRef.…` в форме пульта.
9. Модули объектов и форм, модули менеджеров обоих документов, макеты печатных форм.
**Не затрагивается:** `ПС_РаботаСКонтрагентами`, `ПС_РазборПлатежейПоРодительскойПлате`, отчёт `ПС_ВедомостьЦБПоРодительскойПлате` (работает с регистром, а не с документами), интерфейс подсистемы, определяемые типы, подписки на события.
---
## 1. Переименование документов
| Сейчас | Стало |
|---|---|
| `ПС_ПринятиеЗадолженностиОтУчреждения` | `ПС_ПередачаПоступившихПлатежейВУчреждения` |
| `ПС_ПередачаЗадолженностиВЦБ` | `ПС_ПринятиеПоступившихПлатежейИзЦБ` |
Порядок работ: сначала переименование в метаданных, затем проход по цепочке ссылок из п. 0, затем код. Перед началом — переключить EDT на ветку и убедиться, что проект собирается.
---
## 2. Смена ролей и логики заполнения
- **ЦБ-документ** (`ПС_ПередачаПоступившихПлатежейВУчреждения`) — источник. Заполняется **из остатков регистра накопления** `ПС_ВзаиморасчетыПоРодительскойПлате`: в документ попадают поступившие платежи, ещё не переданные в сады.
- Почему не из расшифровки «Кассового поступления»: тогда пришлось бы отдельно контролировать, чтобы платежи одного поступления не уехали в несколько передач. Через регистр контроль не нужен — предыдущая передача выбирает остатки, следующая их уже не видит.
- Условие корректности — последовательность проведения: каждую следующую передачу проводить после предыдущей по дате.
- **Сад-документы** (`ПС_ПринятиеПоступившихПлатежейИзЦБ`) — вводятся **на основании** ЦБ-документа, **по одному на сад** (в выписке ЦБ за день платежи идут в адрес нескольких садов).
- **«Ввод на основании» разворачивается в обратную сторону:** снять `basedOn` у «Начисления родительской платы» (сейчас он указывает на сад-документ); первым заполняется ЦБ-документ передачи, а сад-документы вводятся по нему.
- Проверить и поправить автозаполнение реквизитов при вводе на основании: организация, учреждение, ИФО, КФО, суммы.
---
## 3. Снятие режима «Начальное сальдо»
Искореняется полностью:
- **Сад-документ:** реквизит `ПередачаСальдо`, команда `ЗаполнитьПоОстаткам20531` и её обработчик `ЗаполнитьПоОстаткам20531НаСервере`, процедуры `ОбновитьВидимостьРеквизитовРежимаСальдо` и `ПередачаСальдоПриИзменении`, связанные элементы формы.
- **ЦБ-документ:** реквизит `ПередачаСальдо` и ветка `ВидОперации = НачальноеСальдо` при формировании движений.
- **Перечисление** `ПС_ВидыОперацийПоВзаиморасчетам` — значение «Начальное сальдо» удаляется.
---
## 4. Проводки и печать — без изменений
- Проводки сохраняются буквально: у ЦБ Дт 205.31 — Кт 304.04, у сада Дт 304.04 — Кт 205.31. В ЦБ сторону уходила дебиторская задолженность, обратно возвращается кредиторская.
- Извещение ф. 0504805 — у обоих документов, как и было. Макеты и их имена не меняются.
---
## 5. Регистр взаиморасчётов и отчёт
- Регистр `ПС_ВзаиморасчетыПоРодительскойПлате` — главный инструмент контроля ЦБ: он должен показать, что **все данные о платежах уехали из ЦБ**. Пишется **только документами ЦБ** — «Кассовым поступлением» и «Передачей платежей»; сад-документы в него **не пишут**.
- Когда все документы проведены в правильной последовательности, регистр даёт **нулевые остатки**.
- Структуру регистра и отчёт `ПС_ВедомостьЦБПоРодительскойПлате` не трогаем. Отчёт остаётся средством контроля: нулевые остатки означают, что всё передано.
---
## 6. Пульт — не трогаем
- В форме пульта четыре запроса и типы реквизитов ссылаются на документы. После переименования их надо поправить механически, логику не менять.
---
## 7. Проверка
- Переработать приёмочные сценарии под новую схему: загрузка реестра → ЦБ собирает поступившие суммы → передача в сады → приём в каждом саду → нулевые остатки по регистру.
- Прогнать проверку маркеров EDT по изменённым объектам.
---
## 8. Документация
- **Убрать «Начальное сальдо»** из памятки (раздел 4) и руководства пользователя (п. 3.2) — режима больше нет.
- Переписать схему в руководстве пользователя и руководстве по эксплуатации под новую модель, переименовать документы во всех упоминаниях.
- Обновлять шар и `docs/` синхронно, после стабилизации результата.
---
## Решения по вопросам плана (согласовано)
1. **Источник заполнения ЦБ-документа** — остатки регистра накопления, а не расшифровка «Кассового поступления». Контроль дублей не нужен: предыдущая передача снимает остатки, следующая их не видит; требуется лишь соблюдать последовательность проведения по дате.
2. **Движения регистра** — остаются за ЦБ-документами: «Кассовым поступлением» и «Передачей платежей». Сад-документы движений в регистр не делают.
3. **«Начальное сальдо»** — искореняется полностью, включая значение в перечислении видов операций.
4. **`basedOn`** — разворачивается: первым заполняется ЦБ-документ передачи, на его основании вводятся документы приёма платежей в садах.
---
## Направление движений регистра (подтверждено)
«Кассовое поступление» даёт **приход** — поступившие платежи копятся у ЦБ. «Передача платежей» даёт **расход** — отдаём в сады. Регистр обнуляется, когда всё передано.
Это разворот относительно текущего кода: сейчас «Кассовое поступление» пишет расход (вид операции «Оплата» — платёж закрывал задолженность перед ЦБ). Направление меняется вместе с наименованиями: логика следует сути.