Документация: README расширения целевой ИБ (обмен, контрагенты, состав).

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
+119
View File
@@ -0,0 +1,119 @@
# crm3-26.rhana
Расширение РАНА для целевой конфигурации **crm3-26** (ИБ `crm3`, сервер `1c-srv.rhana.local`).
Текущая версия: см. [`VERSION`](VERSION) и реквизит `Version` в `src/Configuration.xml`.
Префикс новых объектов расширения: **`РК_`**.
## Назначение
Доработки целевой CRM3 редакции 3.1, не входящие в типовую конфигурацию:
- **приём данных** при синхронизации **crm3-dev → crm3-26** (защита учётных настроек целевой ИБ);
- **НСИ и бизнес-логика** РАНА (контрагенты, договоры, реализация, заказы, отладка);
- **совместимость обмена** с исходной базой (EnterpriseData 1.8, ставки НДС 22%).
Парное расширение исходной ИБ: [`crm3-dev.rhana`](../crm3-dev.rhana).
## Документация
| Документ | Содержание |
|----------|------------|
| [`CHANGELOG.md`](CHANGELOG.md) | история версий и описание доработок |
| [`../docs/transfer/Анализ_синхронизации_crm3-dev_crm3-26.md`](../docs/transfer/Анализ_синхронизации_crm3-dev_crm3-26.md) | полный анализ синхронизации (монорепозиторий crm3-26) |
| [`../docs/meta/REPOSITORIES.md`](../docs/meta/REPOSITORIES.md) | связанные git-репозитории конфигураций |
## Синхронизация crm3-dev → crm3-26
### Разделение ответственности
| Сторона | Расширение | Роль |
|---------|------------|------|
| **Исходная** (`crm3_placentapharm`) | `crm3-dev.rhana` | совместимость **отправки** (XDTO 1.8, валюта банк.счетов, фильтр узла CRM3-26) |
| **Целевая** (`crm3`) | `crm3-26.rhana` | защита **приёма** (учёт номенклатуры, склады, виды, серии) |
Доработки обмена на каждой стороне применяются **только к узлу CRM3**, без влияния на обмен с Бухгалтерией.
### Ключевые функции (целевая ИБ)
Модуль: `МенеджерОбменаЧерезУниверсальныйФормат`, область `Синхронизация_crm3_dev_crm3_26`.
| Функция | Назначение |
|---------|------------|
| `РК_УзелCrm3Dev_GUID()` | GUID узла «Рабочая CRM3» (`97cd20ee-bb06-11f0-8dac-0cc47a7d055f`) |
| `РК_ЭтоОбменС_Crm3Dev(КомпонентыОбмена)` | Истина только для обмена с исходной CRM |
### Защита при получении (v1.3.0.37+)
| Объект | Поведение |
|--------|-----------|
| **Номенклатура** (существует) | снимок и восстановление учётных реквизитов целевой ИБ после типового `ПередЗаписью` и отложенной обработки |
| **Номенклатура** (новая) | заполнение учёта по виду номенклатуры **целевой** ИБ |
| **Виды номенклатуры** (существует) | пропуск обновления (сопоставление по GUID сохраняется) |
| **Склады** (существует) | пропуск перезаписи реквизитов |
| **Серии номенклатуры** | проверка владельца серий по настройкам вида в целевой ИБ |
| **Ставки НДС** | ПКПД: `НДС22`, `НДС22_122` |
Защищаемые реквизиты номенклатуры: `ВидНоменклатуры`, `ОсобенностьУчета`, `ТипНоменклатуры`, `ИспользованиеХарактеристик`, `ВладелецСерий`, `ВладелецХарактеристик`, `ГруппаФинансовогоУчета`, `СкладскаяГруппа`.
## Контрагенты — уникальность ИНН/КПП (v1.3.0.39)
В crm3-26 проверка реализована в **`ПартнерыИКонтрагентыЛокализация`** (не в `ПартнерыИКонтрагенты`, как в crm3-dev).
| Процедура/функция | Изменение |
|-------------------|-----------|
| `ИННКППУжеИспользуетсяВИнформационнойБазе` | дубли ищутся только среди контрагентов **без** пометки удаления |
| `ПроверитьКорректностьЗаполненияКонтрагента` | для контрагента с `ПометкаУдаления` проверка уникальности **не выполняется** |
Поведение согласовано с `crm3-dev.rhana` v1.0.1.333. Отдельная CRM-функция `CRM_КлиентыСервер.ИННКППУжеИспользуетсяВИнформационнойБазе` (поиск по `Партнеры.CRM_ИНН`) не затронута.
## Состав расширения (основное)
### Общие модули
| Модуль | Назначение |
|--------|------------|
| `МенеджерОбменаЧерезУниверсальныйФормат` | синхронизация crm3-dev, защита учёта при получении |
| `ПартнерыИКонтрагентыЛокализация` | уникальность ИНН/КПП контрагентов |
| `РК_ОбщегоНазначения` / `РК_ОбщегоНазначенияВызовСервера` / `РК_ОбщегоНазначенияКлиентСервер` | инфраструктура РАНА (режим отладки и др.) |
| `ОбщегоНазначенияКлиентСервер` | доработки отборов динамических списков |
### Обработки и формы
| Объект | Назначение |
|--------|------------|
| `РК_ОбработкаПарнеровКонтрагентов` | работа с партнёрами и контрагентами |
| `РК_ФормаНастроекРана` | настройки расширения |
| `ЗагрузкаДанныхИзФайла` | доработки загрузки НСИ |
### Подсистемы
- `РК_РАНА` — общие доработки РАНА
- `РК_РАНА326` — доработки, специфичные для целевой конфигурации
## Репозиторий
```text
https://git.p7net.ru/1c/crm3_26.rhana.git
```
Каталог в монорепозитории: `crm3-26.rhana/`.
## Обновление из конфигуратора
После выгрузки из 1С EDT / конфигуратора:
```bash
scripts/normalize_1c_export.sh crm3-26.rhana # из корня crm3-26
cd crm3-26.rhana && git add -A && git status
```
Синхронизация `.gitattributes` / `.editorconfig`: `scripts/sync_git_1c_config.sh` (см. [`tools/git_1c/README.md`](../tools/git_1c/README.md)).
## Связанные конфигурации
| Сторона | Конфигурация | ИБ | Расширение |
|---------|--------------|-----|------------|
| Исходная | `crm3-dev` | `crm3_placentapharm` | `crm3-dev.rhana` |
| Целевая | `crm3-26` | `crm3` | **`crm3-26.rhana`** |