997b7fe110
Для ПКО серий добавлен поиск существующей серии по владельцу вида с приоритетом Номер+ГоденДо и fallback по сроку при пустом номере; исключено создание дублей при несовпадении GUID. Co-authored-by: Cursor <cursoragent@cursor.com>
165 lines
12 KiB
Markdown
165 lines
12 KiB
Markdown
# История изменений crm3-26.rhana
|
||
|
||
Формат версии: `1.3.0.NNN` (синхронизируется с `VERSION` и `Configuration.xml`).
|
||
|
||
---
|
||
|
||
## 1.3.0.43 (2026-07-21)
|
||
|
||
### Серии номенклатуры — подбор по владельцу вида и сроку
|
||
|
||
Модуль: `МенеджерОбменаЧерезУниверсальныйФормат`.
|
||
|
||
- Для ПКО `Справочник_СерииНоменклатуры` добавлен подбор существующей серии с учетом
|
||
владельца серий вида номенклатуры в целевой ИБ:
|
||
- `ВладелецВида + Номер + ГоденДо`,
|
||
- `ВладелецВида + Номер`,
|
||
- при пустом номере: `ВладелецВида + ГоденДо`.
|
||
- Поиск теперь опирается на маппинг видов номенклатуры на target (через
|
||
`РК_ВладелецСерийДляВидаНоменклатуры`), что снимает конфликт, когда вид в source и target различается.
|
||
- При найденной серии с другим GUID создается предупреждение и запись из пакета пропускается
|
||
(без создания дубликата).
|
||
|
||
---
|
||
|
||
## 1.3.0.42 (2026-07-15)
|
||
|
||
### Обмен — этапы графика оплаты ЗаказКлиента (Д1.2)
|
||
|
||
База: **1.3.0.41** (ws-rhana + объекты расчётов 1.3.0.40).
|
||
|
||
Модуль: `МенеджерОбменаЧерезУниверсальныйФормат`.
|
||
|
||
- `&После("ОтложеннаяОбработка_ЗаказыПоставщикуКлиента")` — `РК_ОтложеннаяОбработка_ЗаказыПоставщикуКлиента_ЭтапыОплаты`.
|
||
- При «бедных» этапах из XDTO (пустые `ДатаПлатежа` / `ВариантОтсчета`) ТЧ очищается и перезаполняется типовым `ЭтапыОплатыСервер.ПроверитьЗаполнитьЭтапыГрафикаОплаты` по соглашению / графику оплаты / договору.
|
||
- При пустых реквизитах шапки из соглашения подставляются `ГрафикОплаты`, `ФормаОплаты`.
|
||
- Только для узла **«Рабочая CRM3»** (`РК_ЭтоОбменС_Crm3Dev`).
|
||
|
||
Данные уже загруженных заказов: `docs/transfer/Код_дозаполнения_этапов_оплаты_заказов_crm3-26.bsl` (монорепозиторий).
|
||
|
||
---
|
||
|
||
## 1.3.0.41 (2026-07-09)
|
||
|
||
### HTTP Transfer API перенесён в ws-rhana
|
||
|
||
Удалены объекты `РК_TransferAPI` и связанные модули/константы/роль.
|
||
Read-only HTTP API — в универсальном расширении [`ws-rhana`](https://git.p7net.ru/1c/ws-rhana.git) (`РВС_TransferAPI`).
|
||
|
||
---
|
||
|
||
## 1.3.0.40 (2026-07-08)
|
||
|
||
### Обмен — объекты расчётов по договорам
|
||
|
||
Модуль: `МенеджерОбменаЧерезУниверсальныйФормат`.
|
||
|
||
В UT 11.5 `ОбъектыРасчетов` — отдельный справочник; в XDTO 1.8 не передаётся. Типовой `ВзаиморасчетыСервер.ПередЗаписью` при обмене crm3-dev → crm3-26 может не создать ОР (пустой партнёр на договоре, сбой `СоздатьПоКлючу`).
|
||
|
||
| Процедура/функция | Назначение |
|
||
|-------------------|------------|
|
||
| `РК_ПартнерКонтрагентДляДоговора` | партнёр/контрагент из договора, подсказок заказа или последнего заказа |
|
||
| `РК_ОбеспечитьОбъектРасчетовПоДоговору` | создание ОР через `СоздатьЭлемент`, если не найден |
|
||
| `РК_ПКО_ДоговорыКонтрагентов_ДозаполнитьПартнера` | `&После` ПКО договора — дозаполнение партнёра из контрагента |
|
||
| `РК_ОтложеннаяОбработка_ДосоздатьОбъектыРасчетов` | `&После` типовой отложенной обработки — досоздание ОР по договорам из пакета |
|
||
|
||
Применяется только к узлу «Рабочая CRM3» (`РК_ЭтоОбменС_Crm3Dev`).
|
||
|
||
---
|
||
|
||
## 1.3.0.39 (2026-07-06)
|
||
|
||
### Контрагенты — уникальность ИНН/КПП
|
||
|
||
Модуль: `ПартнерыИКонтрагентыЛокализация` (заимствован).
|
||
|
||
В целевой конфигурации (crm3-26) проверка уникальности ИНН/КПП реализована в модуле локализации, а не в `ПартнерыИКонтрагенты` (как в crm3-dev). Функция возвращает структуру `НайденныеСовпадения` / `ДоступноСоздание` и учитывает `ЮрФизЛицо` (различение ИП и физлица).
|
||
|
||
| Процедура/функция | Изменение |
|
||
|-------------------|-----------|
|
||
| `ИННКППУжеИспользуетсяВИнформационнойБазе` | при поиске дублей исключаются контрагенты с `ПометкаУдаления = Истина` |
|
||
| `ПроверитьКорректностьЗаполненияКонтрагента` | для записываемого контрагента с `ПометкаУдаления` проверка уникальности ИНН/КПП **не выполняется** |
|
||
|
||
**Поведение** — аналогично `crm3-dev.rhana` v1.0.1.333:
|
||
|
||
- обычная запись — уникальность среди непомеченных на удаление;
|
||
- запись с пометкой удаления — проверка уникальности ИНН/КПП пропускается;
|
||
- дубль только у помеченного контрагента не блокирует активную карточку.
|
||
|
||
**Примечание:** отдельная CRM-функция `CRM_КлиентыСервер.ИННКППУжеИспользуетсяВИнформационнойБазе` (поиск по `Партнеры.CRM_ИНН`) не затронута — она относится к сценариям CRM, не к типовой записи справочника `Контрагенты`.
|
||
|
||
---
|
||
|
||
## 1.3.0.38 (2026-07-06)
|
||
|
||
### Обмен — фильтр узла «Рабочая CRM3»
|
||
|
||
Модуль: `МенеджерОбменаЧерезУниверсальныйФормат`.
|
||
|
||
| Функция | Назначение |
|
||
|---------|------------|
|
||
| `РК_УзелCrm3Dev_GUID()` | GUID узла исходной ИБ в целевой (`97cd20ee-bb06-11f0-8dac-0cc47a7d055f`) |
|
||
| `РК_ЭтоОбменС_Crm3Dev(КомпонентыОбмена)` | Истина только для обмена crm3-dev ↔ crm3-26 |
|
||
|
||
**Поведение:** доработки получения (защита учёта номенклатуры, пропуск обновления видов и складов, нормализация серий) применяются **только** к узлу **«Рабочая CRM3»**. Обмен с **Бухгалтерией** не затрагивается.
|
||
|
||
---
|
||
|
||
## 1.3.0.37 (2026-07-06)
|
||
|
||
### Обмен crm3-dev → crm3-26 — приём данных
|
||
|
||
Модуль: `МенеджерОбменаЧерезУниверсальныйФормат`.
|
||
|
||
#### Номенклатура
|
||
|
||
| Обработчик | Изменение |
|
||
|------------|-----------|
|
||
| `&Перед` / `&После` `ПКО_Справочник_Номенклатура_Получение_ПередЗаписьюПолученныхДанных` | для существующей номенклатуры — снимок и восстановление учётных реквизитов целевой ИБ; для новой — заполнение по виду целевой ИБ |
|
||
| `&После` `ОтложеннаяОбработка_ЗаполнитьНоменклатуру` | повторное восстановление учёта после типовой отложенной обработки |
|
||
|
||
Защищаемые реквизиты: `ВидНоменклатуры`, `ОсобенностьУчета`, `ТипНоменклатуры`, `ИспользованиеХарактеристик`, `ВладелецСерий`, `ВладелецХарактеристик`, `ГруппаФинансовогоУчета`, `СкладскаяГруппа`.
|
||
|
||
#### Виды номенклатуры и склады
|
||
|
||
| Обработчик | Изменение |
|
||
|------------|-----------|
|
||
| `&ИзменениеИКонтроль` `ПКО_Справочник_ВидыНоменклатуры_ПередЗаписьюПолученныхДанных` | существующие виды не обновляются (сопоставление по GUID сохраняется) |
|
||
| `&ИзменениеИКонтроль` `ПКО_Справочник_Склады_Получение_ПередЗаписьюПолученныхДанных` | существующие склады не перезаписываются |
|
||
|
||
#### Серии номенклатуры
|
||
|
||
| Обработчик | Изменение |
|
||
|------------|-----------|
|
||
| `&После` `ДобавитьПКО_Справочник_СерииНоменклатуры` | подключение `РК_ПКО_Справочник_СерииНоменклатуры_ПередЗаписьюПолученныхДанных` |
|
||
| `РК_ПКО_Справочник_СерииНоменклатуры_ПередЗаписьюПолученныхДанных` | нормализация владельца серии по настройкам вида в целевой ИБ; пропуск при конфликте |
|
||
|
||
#### Ставки НДС 22%
|
||
|
||
| Обработчик | Изменение |
|
||
|------------|-----------|
|
||
| `&После` `ЗаполнитьПравилаКонвертацииПредопределенныхДанных` | ПКПД `Перечисление_СтавкиНДС`: значения `НДС22`, `НДС22_122` |
|
||
|
||
**Контекст:** политика защиты учётных настроек целевой ИБ при синхронизации с crm3-dev. Подробнее: `docs/transfer/Анализ_синхронизации_crm3-dev_crm3-26.md` в монорепозитории crm3-26.
|
||
|
||
---
|
||
|
||
## 1.3.0.36 (2026-07-01)
|
||
|
||
### Синхронизация — первичная защита учёта при получении
|
||
|
||
Модуль: `МенеджерОбменаЧерезУниверсальныйФормат`.
|
||
|
||
- Сохранение учётных реквизитов номенклатуры целевой ИБ при обновлении из crm3-dev.
|
||
- Существующие склады не перезаписываются данными из пакета обмена.
|
||
|
||
*Доработка развита в 1.3.0.37 (виды, серии, отложенная обработка, НДС22) и ограничена узлом CRM3 в 1.3.0.38.*
|
||
|
||
---
|
||
|
||
## Связанные объекты расширения (обмен)
|
||
|
||
| Модуль | Роль |
|
||
|--------|------|
|
||
| `МенеджерОбменаЧерезУниверсальныйФормат` | защита учёта при получении, фильтр узла, ПКПД НДС22 |
|