diff --git a/docs__Checklist_5b_UPD_2026-04-21.md b/docs__Checklist_5b_UPD_2026-04-21.md index 3c4a6ca..a77906f 100644 --- a/docs__Checklist_5b_UPD_2026-04-21.md +++ b/docs__Checklist_5b_UPD_2026-04-21.md @@ -18,7 +18,7 @@ show_toc: true ## Ссылки на ТЗ -- Базовый документ: [ТЗ по графе 5б](docs/ТЗ_минимальная_реализация_графы_5б_УПД_2026-04-21.md) +- Базовый документ: [ТЗ по графе 5б](docs__ТЗ_минимальная_реализация_графы_5б_УПД_2026-04-21.md) - Архитектурный принцип: см. раздел `2` ТЗ. - Карта объектов: см. раздел `4` ТЗ. - Детализация реализации: см. раздел `5` ТЗ. diff --git a/docs__INDEX.md b/docs__INDEX.md index 18a01eb..29c6088 100644 --- a/docs__INDEX.md +++ b/docs__INDEX.md @@ -1,59 +1,63 @@ ---- -title: Оглавление документов -author: Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) -version: 1.0 -date_created: 2026-01-04 -date_modified: 2026-01-04 -show_metadata_block: true -show_index_link: false ---- +# Индекс: docs -# Оглавление документов +## Статьи -Навигация по всем документам проекта. - -## Анализ и отчеты - -- [Анализ механизма перезаполнения CRM ЖурналДокументов](Анализ_механизма_перезаполнения_CRM_ЖурналДокументов.md) -- [Анализ обработчиков обновления НДС 22](Анализ_обработчиков_обновления_НДС_22.md) -- [Анализ ошибок обновления](Анализ_ошибок_обновления.md) -- [Анализ печати пакета документов и складского учета (v3.0)](Анализ_печати_пакета_документов_и_складского_учета (v3.0).md) -- [Анализ применения КредитНота (v1.1)](Анализ_применения_КредитНота (v1.1).md) -- [Анализ применения реквизита Купон (v1.0)](Анализ_применения_реквизита_Купон (v1.0).md) -- [Анализ рисков неуникальности CRM ЖурналДокументов](Анализ_рисков_неуникальности_CRM_ЖурналДокументов.md) -- [Итоговый отчет анализа регистров](Итоговый_отчет_анализа_регистров.md) -- [Отчет о конвертации](Отчет_о_конвертации.md) -- [ФИНАЛЬНЫЙ ОТЧЕТ Анализ регистров](ФИНАЛЬНЫЙ_ОТЧЕТ_Анализ_регистров.md) - -## Инструкции - -- [Быстрое решение](Быстрое_решение.md) -- [Инструкция добавления ролей в профиль](Инструкция_добавления_ролей_в_профиль.md) -- [Инструкция по исправлению](Инструкция_по_исправлению.md) - -## Другое - -- [INDEX](INDEX.md) -- [README md to html](README_md_to_html.md) -- [instructions filter access groups](instructions_filter_access_groups.md) -- [Выводы сравнения конфигураций](Выводы_сравнения_конфигураций.md) -- [Глубинный анализ регистров](Глубинный_анализ_регистров.md) -- [Оценка правок для переноса НДС 22 (v1.1)](Оценка_правок_для_переноса_НДС_22_(v1.1).md) -- [Оценка правок для переноса НДС 22 (v1.3)](Оценка_правок_для_переноса_НДС_22_(v1.3).md) -- [Оценка правок для переноса НДС 22 (v1.4)](Оценка_правок_для_переноса_НДС_22_(v1.4).md) -- [Проблема неуникальности регистра CRM ЖурналДокументов](Проблема_неуникальности_регистра_CRM_ЖурналДокументов.md) -- [Проверка ставки НДС 22](Проверка_ставки_НДС_22.md) -- [РЕЗУЛЬТАТЫ КОНВЕРТАЦИИ](РЕЗУЛЬТАТЫ_КОНВЕРТАЦИИ.md) -- [Роли для включения в новой системе](Роли_для_включения_в_новой_системе.md) -- [Роли для отметки ДА осталось](Роли_для_отметки_ДА_осталось.md) -- [Сверка ролей профиля](Сверка_ролей_профиля.md) -- [Сверка ролей с учетом переименований](Сверка_ролей_с_учетом_переименований.md) -- [Сводка рисков неуникальности](Сводка_рисков_неуникальности.md) -- [Список объектов для удаления из подсистем](Список_объектов_для_удаления_из_подсистем.md) -- [Список ролей для отметки ДА](Список_ролей_для_отметки_ДА.md) -- [Улучшения скрипта проверки](Улучшения_скрипта_проверки.md) -- [ФИНАЛЬНЫЙ СПИСОК РОЛЕЙ ДЛЯ ВКЛЮЧЕНИЯ](ФИНАЛЬНЫЙ_СПИСОК_РОЛЕЙ_ДЛЯ_ВКЛЮЧЕНИЯ.md) - ---- - -*Этот файл автоматически сгенерирован скриптом конвертации.* +- [Анализ доработок синхронизации документа Заказ клиента](docs__Анализ_доработок_синхронизации_ЗаказКлиента.md) +- [Анализ доработок синхронизации документа Реализация товаров и услуг](docs__Анализ_доработок_синхронизации_РеализацияТоваровУслуг.md) +- [Анализ доработок складского учета и печати документов](docs__Анализ_доработок_складского_учета_и_печати_документов.md) +- [Анализ доработок формы приёмки (УправлениеПоступлением.Форма.Форма) складского учета](docs__Анализ_доработок_формы_приемки_УправлениеПоступлением.md) +- [Анализ механизма перезаполнения регистра CRM_ЖурналДокументов](docs__Анализ_механизма_перезаполнения_CRM_ЖурналДокументов.md) +- [Анализ необходимости переноса функционала печати пакета документов и доработок складского учета](docs__Анализ_печати_пакета_документов_и_складского_учета (v3.0).md) +- [Анализ обмена НДС 22% между CRM и Бухгалтерией КОРП](docs__Анализ_обмена_НДС_22_с_Бухгалтерией_КОРП.md) +- [Анализ обработчиков обновления для переноса НДС 22%](docs__Анализ_обработчиков_обновления_НДС_22.md) +- [Анализ ошибок обновления конфигурации 1С](docs__Анализ_ошибок_обновления.md) +- [Анализ переноса обработки КредитНотаЗаПериод в новую конфигурацию](docs__Анализ_переноса_обработки_КредитНотаЗаПериод.md) +- [Анализ привязок серий номенклатур к видам номенклатур](docs__Анализ_привязок_серий_номенклатур_к_видам_номенклатур.md) +- [Анализ применения признака Кредит-нота (КредитНота) в исходной конфигурации](docs__Анализ_применения_КредитНота (v1.1).md) +- [Анализ применения признака Кредит-нота (КредитНота) в исходной конфигурации](docs__Анализ_применения_КредитНота.md) +- [Анализ применения реквизита Купон в исходной конфигурации включая расширение](docs__Анализ_применения_реквизита_Купон (v1.0).md) +- [Анализ применения реквизита Купон в исходной конфигурации включая расширение](docs__Анализ_применения_реквизита_Купон.md) +- [Анализ различий: crm3-26-test и crm3-dev (конфигурации и расширения)](docs__Анализ_различий_crm3-26-test_vs_crm3-dev.md) +- [Анализ рисков нарушения уникальности регистра CRM_ЖурналДокументов](docs__Анализ_рисков_неуникальности_CRM_ЖурналДокументов.md) +- [Быстрое решение проблемы обновления](docs__Быстрое_решение.md) +- [Выводы сравнения конфигураций CRM3devLocal и CRM326_TEST](docs__Выводы_сравнения_конфигураций.md) +- [Глубинный анализ регистров на нарушение уникальности данных](docs__Глубинный_анализ_регистров.md) +- [Дорожная карта модернизации CRM3](docs__Дорожная_карта_миграции_CRM3_v0.1.md) +- [Инструкция по добавлению ролей в профиль группы доступа](docs__Инструкция_добавления_ролей_в_профиль.md) +- [Инструкция по запуску скрипта md_convert.py](docs__Инструкция_по_запуску_md_convert.md) +- [Инструкция по исправлению ошибок обновления конфигурации 1С](docs__Инструкция_по_исправлению.md) +- [Инструкция по фильтрации списка отсутствующих групп доступа](docs__instructions_filter_access_groups.md) +- [Итоговый отчет: Глубинный анализ регистров на нарушение уникальности](docs__Итоговый_отчет_анализа_регистров.md) +- [Конвертер Markdown в HTML](docs__README_md_to_html.md) +- [Контекст проекта (перенаправление)](docs__PROJECT_CONTEXT.md) +- [Общая информация по документу](docs__Оценка_правок_для_переноса_НДС_22.md) +- [Оглавление документов](docs__INDEX.md) +- [Ответ на входящее обращение по модулю Диадока (УПД)](docs__diadoc_answer_2026-05-08.md) +- [Отчет о конвертации Markdown в HTML](docs__Отчет_о_конвертации.md) +- [Оценка правок для переноса функционала ставки НДС 22%](docs__Оценка_правок_для_переноса_НДС_22_(v1.1).md) +- [Перечень констант: crm3-26-test + расширение crm3-26-test.rhana](docs__Перечень_констант_crm3-26-test.md) +- [Перечень констант: историческая система crm3-dev + расширение crm3-dev.rhana](docs__Перечень_констант_crm3-dev.md) +- [Проблема неуникальности регистра CRM_ЖурналДокументов](docs__Проблема_неуникальности_регистра_CRM_ЖурналДокументов.md) +- [Проверка наличия ставки НДС 22% в целевой конфигурации CRM326](docs__Проверка_ставки_НДС_22.md) +- [Проверка статей](docs__test.md) +- [Рабочий чек-лист внедрения](docs__Checklist_5b_UPD_2026-04-21.md) +- [Рабочий чек-лист внедрения](docs__Чеклист_внедрения_графы_5б_УПД_2026-04-21.md) +- [Реализация переноса НДС 22%](docs__Реализация_переноса_НДС_22.md) +- [Результаты конвертации Markdown в HTML](docs__РЕЗУЛЬТАТЫ_КОНВЕРТАЦИИ.md) +- [Роли для включения в новой системе](docs__Роли_для_включения_в_новой_системе.md) +- [Роли, которые нужно отметить "Да" в новой системе](docs__Роли_для_отметки_ДА_осталось.md) +- [Сверка ролей профиля между старой и новой системами](docs__Сверка_ролей_профиля.md) +- [Сверка ролей с учетом переименований](docs__Сверка_ролей_с_учетом_переименований.md) +- [Сводка по работам: перенос и настройка актуальной формы УПД](docs__Сводка_переноса_и_настройки_актуальной_формы_УПД.md) +- [Сводка: Риски нарушения уникальности CRM_ЖурналДокументов](docs__Сводка_рисков_неуникальности.md) +- [Список объектов для удаления из состава подсистем](docs__Список_объектов_для_удаления_из_подсистем.md) +- [Список ролей новой системы для отметки "Да"](docs__Список_ролей_для_отметки_ДА.md) +- [Сравнение констант: crm3-dev → crm3-26-test](docs__Сравнение_констант_crm3-dev_vs_crm3-26-test.md) +- [Техническое задание](docs__TZ_min_5b_UPD_2026-04-21.md) +- [Техническое задание](docs__ТЗ_минимальная_реализация_графы_5б_УПД_2026-04-21.md) +- [Техническое задание №2](docs__TZ2_full_UPD_migration_2026-04-21.md) +- [Техническое задание №2](docs__ТЗ_2_полный_перенос_логики_УПД_из_crm3-26-promo_в_crm3-dev_2026-04-21.md) +- [Техническое задание №260506/3 от 06.05.2026](docs__ТЗ_3_Внедрение_формы_УПД_в_текущую_рабочую_базу_2026-05-05.md) +- [Улучшения скрипта проверки дубликатов](docs__Улучшения_скрипта_проверки.md) +- [ФИНАЛЬНЫЙ ОТЧЕТ: Глубинный анализ регистров на нарушение уникальности данных](docs__ФИНАЛЬНЫЙ_ОТЧЕТ_Анализ_регистров.md) +- [ФИНАЛЬНЫЙ СПИСОК РОЛЕЙ ДЛЯ ВКЛЮЧЕНИЯ В НОВОЙ СИСТЕМЕ](docs__ФИНАЛЬНЫЙ_СПИСОК_РОЛЕЙ_ДЛЯ_ВКЛЮЧЕНИЯ.md) diff --git a/docs__PROJECT_CONTEXT.md b/docs__PROJECT_CONTEXT.md new file mode 100644 index 0000000..98333e0 --- /dev/null +++ b/docs__PROJECT_CONTEXT.md @@ -0,0 +1,7 @@ +# Контекст проекта (перенаправление) + +Документ перенесён и актуализирован: + +**[docs/meta/PROJECT_STRUCTURE.md](docs/meta/PROJECT_STRUCTURE.md)** + +Используйте его как основной источник описания структуры репозитория, ИБ, каталогов данных и соглашений разработки. diff --git a/docs__README_md_to_html.md b/docs__README_md_to_html.md new file mode 100644 index 0000000..caa7dcc --- /dev/null +++ b/docs__README_md_to_html.md @@ -0,0 +1,103 @@ +--- +title: Конвертер Markdown в HTML +author: Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) +version: 1.0 +date_created: 2025-12-09 +date_modified: 2025-12-09 +show_metadata_block: true +show_index_link: true +--- + +# Конвертер Markdown в HTML + +Скрипт `md_to_html.py` для конвертации Markdown файлов в HTML с красивым оформлением. + +## Установка зависимостей + +```bash +pip install markdown +``` + +## Использование + +### Базовое использование + +```bash +# Конвертировать все .md файлы в папку html/ +python md_to_html.py +``` + +### Конвертация конкретных файлов + +```bash +# Один файл +python md_to_html.py -f Анализ_ошибок.md + +# Несколько файлов +python md_to_html.py -f file1.md file2.md file3.md +``` + +### Конвертация по паттерну + +```bash +# Все файлы с "анализ" в названии +python md_to_html.py -p "*анализ*.md" + +# Все файлы с "отчет" в названии +python md_to_html.py -p "*отчет*.md" +``` + +### Указание другой папки для вывода + +```bash +# Сохранить в папку output +python md_to_html.py -o output + +# Сохранить в папку docs/html +python md_to_html.py -o docs/html +``` + +### Указание другой рабочей директории + +```bash +# Искать MD файлы в другой директории +python md_to_html.py -d /path/to/directory +``` + +## Параметры + +- `-f, --files` - Конкретные файлы для конвертации (можно указать несколько) +- `-p, --pattern` - Паттерн для поиска файлов (например, "*анализ*.md") +- `-o, --output` - Папка для сохранения HTML файлов (по умолчанию: html) +- `-d, --directory` - Директория для поиска MD файлов (по умолчанию: текущая) +- `--no-toc` - Отключить автоматическое создание оглавления +- `-h, --help` - Показать справку + +## Примеры + +```bash +# Конвертировать все файлы +python md_to_html.py + +# Конвертировать только файлы анализа +python md_to_html.py -p "*анализ*.md" + +# Конвертировать конкретные файлы в папку docs +python md_to_html.py -f ФИНАЛЬНЫЙ_ОТЧЕТ_Анализ_регистров.md -o docs + +# Конвертировать все файлы из подпапки +python md_to_html.py -d CRM3devLocal.Рана +``` + +## Особенности + +- Автоматическое создание оглавления +- Подсветка синтаксиса кода +- Поддержка таблиц +- Красивое оформление с адаптивным дизайном +- Сохранение структуры исходных файлов + +## Результат + +Все HTML файлы сохраняются в папку `html/` (или указанную папку) с тем же именем, что и исходный MD файл, но с расширением `.html`. + diff --git a/docs__TZ2_full_UPD_migration_2026-04-21.md b/docs__TZ2_full_UPD_migration_2026-04-21.md new file mode 100644 index 0000000..c6bf4dc --- /dev/null +++ b/docs__TZ2_full_UPD_migration_2026-04-21.md @@ -0,0 +1,218 @@ +--- +title: Техническое задание №2 - полный перенос новой логики УПД из crm3-26-promo в crm3-dev +version: 1.0 +date_created: 2026-04-21 +date_modified: 2026-04-21 +author: Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) +description: Полный план переноса логики подготовки данных и печати УПД из crm3-26-promo в crm3-dev с учетом выделения доработок в отдельное расширение упд5б. +status: К согласованию +show_metadata_block: true +show_index_link: true +show_toc: true +--- + +# Техническое задание №2 + +## 1. Цель и основание + +Цель: выполнить **полный перенос** актуальной логики формирования данных и печати УПД из `crm3-26-promo` в `crm3-dev` с выделением изменений в отдельное расширение `упд5б`, минимизируя изменения в основной конфигурации. + +Основание: сравнительный анализ: +- `crm3-dev` (версия `3.0.22.28`, режим совместимости `Version8_3_16`); +- `crm3-26-promo` (версия `3.1.35.11`, режим совместимости `Version8_3_27`); +- текущего расширения `crm3-dev.rhana`. + +## 2. Итоги полного анализа (as-is / to-be) + +### 2.1. Что уже есть в `crm3-26-promo` + +В `crm3-26-promo` реализован полный контур графы 5б: +- функция `СтрокаАвансовыеСчетаФактуры(...)` в `Documents/СчетФактураВыданный/Ext/ManagerModule.bsl`; +- расширенная `ПоместитьВременнуюТаблицуПлатежноРасчетныхДокументов(...)` с колонкой `СтрокаАвансовыеСчетаФактуры`; +- расширенный `ТекстЗапросаПолученияНомеровИДатПлатежноРасчетныхДокументов()` с данными `СчетФактураВыданныйАванс` и исправлений; +- вывод поля `ПредставлениеАвансовыеСчетаФактуры` в запросе шапки для печати; +- заполнение `ОбластьШапка.Параметры.АвансовыеСчетаФактуры` в `ПечатьОбщихФорм`. + +### 2.2. Что есть в `crm3-dev` + +В `crm3-dev` (база): +- базовые методы `ПоместитьВременнуюТаблицуПлатежноРасчетныхДокументов(...)` и `ТекстЗапросаПолученияНомеровИДатПлатежноРасчетныхДокументов()` присутствуют, но без контура 5б; +- в запросе шапки УПД отсутствует `ПредставлениеАвансовыеСчетаФактуры`. + +В `crm3-dev.rhana`: +- в `DataProcessors/ПечатьОбщихФорм/Ext/ManagerModule.bsl` уже есть ветка выбора макета `1096` для периода 2026; +- подключен макет `ПФ_MXL_УниверсальныйПередаточныйДокумент1096_ru`; +- в `Documents/СчетФактураВыданный/Ext/ManagerModule.bsl` отсутствуют изменения по 5б (есть только доработки по строке 5а). + +Критичное отличие по макетам: +- в `crm3-26-promo` для актуальной ветки УПД применяются `CommonTemplates`: + - `ПФ_MXL_УниверсальныйПередаточныйДокумент2026`, + - `ПФ_MXL_УниверсальныйПередаточныйДокумент2026Прослеж`, + в которых присутствует параметр `АвансовыеСчетаФактуры` (графа 5б); +- в `crm3-dev` и `crm3-dev.rhana` такие `CommonTemplates` отсутствуют. + +## 3. Границы работ по ТЗ №2 + +### 3.1. Входит в объем + +1. Полный перенос механизма подготовки данных 5б из `crm3-26-promo`. +2. Полный перенос логики вывода 5б в печатной форме УПД. +3. Унификация доработок в новом расширении `упд5б` (вынос из `crm3-dev.rhana` релевантных частей). +4. Анализ и устранение дублирования между `crm3-dev.rhana` и `упд5б`. +5. Подготовка правил, что остается в расширении, а что (при необходимости) меняется в базе `crm3-dev`. + +### 3.2. Не входит в объем + +1. Полный перенос всех несвязанных с УПД подсистем из `crm3-26-promo`. +2. Массовый рефакторинг документов вне контура СФ/УПД. + +## 4. Детальный анализ изменений структуры данных + +### 4.1. Обязательные поля и представления для миграции + +Для полного переноса должны быть поддержаны: +- строка представления авансовых СФ: `СтрокаАвансовыеСчетаФактуры`; +- поле вывода в шапке печати: `ПредставлениеАвансовыеСчетаФактуры`; +- поля в таблице платежно-расчетных документов: + - `НомерСчетаФактурыНаАванс`, + - `ДатаСчетаФактурыНаАванс`, + - `НомерИсправленияСчетаФактурыНаАванс`, + - `ДатаИсправленияСчетаФактурыНаАванс`. + +### 4.2. Временные таблицы и запросы + +В контуре `СчетФактураВыданный` требуется перенос (или эквивалентное восстановление) цепочки: +1. подготовка данных платежно-расчетных документов; +2. формирование данных по `СчетФактураВыданныйАванс` и исправлениям; +3. объединение в итоговую ВТ для передачи в печать; +4. подстановка в `РезультатПоШапке` поля `ПредставлениеАвансовыеСчетаФактуры`. + +### 4.3. Проверка наличия реквизитов документа + +В `crm3-26-promo` используется реквизит документа `СтрокаАвансовыеСчетаФактуры` в ряде сценариев формы/объекта. + +Для `crm3-dev` обязательна проверка: +1. если реквизит уже существует в базе - использовать его; +2. если реквизита нет: + - вариант А (предпочтительный): вычислять строку на лету в расширении и передавать через ВТ/запрос шапки; + - вариант Б (если требуется функциональная паритетность формы документа): добавить реквизит в объект (через расширение, если позволяет совместимость), либо точечно в базу. + +## 5. Целевая архитектура переноса + +### 5.1. Новое расширение `упд5б` (основной контур) + +В `упд5б` концентрируются: +1. все изменения `Documents/СчетФактураВыданный/Ext/ManagerModule.bsl` по данным 5б; +2. все изменения `DataProcessors/ПечатьОбщихФорм/Ext/ManagerModule.bsl` по выводу 5б; +3. перенос и сопровождение `CommonTemplates`: + - `ПФ_MXL_УниверсальныйПередаточныйДокумент2026`, + - `ПФ_MXL_УниверсальныйПередаточныйДокумент2026Прослеж`; +4. опционально (для обратной совместимости) - `ПФ_MXL_УниверсальныйПередаточныйДокумент1096_ru`, если он остается в legacy-ветке. + +### 5.2. Что переносить из `crm3-dev.rhana` в `упд5б` + +Переносу в `упд5б` подлежат доработки, связанные с актуальной печатью УПД и графой 5б: +1. ветка выбора макета для периода 2026+; +2. переключение на `CommonTemplates` `...2026` / `...2026Прослеж`; +3. блок заполнения параметров шапки УПД, который должен включать `АвансовыеСчетаФактуры`. + +### 5.3. Что убрать из `crm3-dev.rhana` после переноса + +После приемки `упд5б` из `crm3-dev.rhana` исключаются дублирующие фрагменты: +1. дублирующее подключение макета 1096 в ветке 2026, если оно заменено на `CommonTemplates` 2026; +2. дублирующая ветка выбора макета 1096/2026; +3. любой дублирующий расчет параметра `АвансовыеСчетаФактуры` (если был добавлен в `crm3-dev.rhana`). + +Удаление выполняется только после тестов регрессии и при подтверждении идентичного поведения в `упд5б`. + +## 6. План реализации (по этапам) + +### Этап 1. Инвентаризация и фиксация baseline + +1. Зафиксировать текущие версии и hash модулей/макетов: + - `crm3-dev/src/Documents/СчетФактураВыданный/...`, + - `crm3-dev/src/DataProcessors/ПечатьОбщихФорм/...`, + - `crm3-dev.rhana/src/...`, + - `crm3-26-promo/src/...`. +2. Составить карту расхождений: методы, поля, ВТ, параметры макета. + +Результат этапа: отчет о diff и точный реестр переносимых фрагментов. + +### Этап 2. Перенос данных 5б + +1. В `упд5б` добавить `упд5б_СтрокаАвансовыеСчетаФактуры(...)`. +2. Расширить `ПоместитьВременнуюТаблицуПлатежноРасчетныхДокументов(...)`. +3. Расширить `ТекстЗапросаПолученияНомеровИДатПлатежноРасчетныхДокументов()`. +4. Расширить формирование `ТекстЗапросаДанныхШапкиДляПечатиСчетаФактуры(...)` с полем `ПредставлениеАвансовыеСчетаФактуры`. + +Результат этапа: данные 5б формируются и доступны в `РезультатПоШапке`. + +### Этап 3. Перенос печати и макетов + +1. Перенести в `упд5б` выбор макета для ветки 2026+. +2. Перенести из `crm3-26-promo` `CommonTemplates`: + - `ПФ_MXL_УниверсальныйПередаточныйДокумент2026`, + - `ПФ_MXL_УниверсальныйПередаточныйДокумент2026Прослеж`. +3. В `ЗаполнитьТабличныйДокументУПД(...)` добавить/сохранить установку `ОбластьШапка.Параметры.АвансовыеСчетаФактуры`. +4. Проверить, что legacy-ветки до 2026 не изменили поведение. + +Результат этапа: графа 5б печатается в УПД по новым макетам 2026/2026Прослеж. + +### Этап 4. Дедубликация `crm3-dev.rhana` + +1. Отключить/удалить дублирующие фрагменты по макету 1096 из `crm3-dev.rhana`. +2. Подтвердить отсутствие конфликтов при одновременном подключении расширений. + +Результат этапа: единая точка ответственности в `упд5б`. + +### Этап 5. Регрессия и приемка + +1. Позитивные сценарии: + - реализация с авансом и исправлением; + - реализация с авансом без исправления; + - без аванса (fallback). +2. Регрессия: + - печать УПД до 2026 (исторические периоды); + - печать УПД после 01.01.2026 (макеты 2026/2026Прослеж); + - пакетная печать смешанных документов. + +Результат этапа: акт приемки и протокол регрессии. + +### Этап 6. Переход структуры данных и обработчики обновления + +1. Подготовить решение по данным для уже созданных документов: + - если строка 5б рассчитывается на лету - обновление данных не требуется; + - если вводится хранение в реквизите/регистре - требуется миграция данных. +2. При необходимости добавить обработчики обновления данных: + - модуль обновления конфигурации/расширения; + - пакетный пересчет `СтрокаАвансовыеСчетаФактуры` для исторических `СчетФактураВыданный`. +3. Добавить контрольные отчеты сверки до/после миграции. + +## 7. Требования по применению расширения с учетом совместимости `crm3-dev` + +Учитывать ограничения `crm3-dev` (`CompatibilityMode = Version8_3_16`): +1. приоритетно использовать `&ИзменениеИКонтроль` в расширении; +2. в блоках `#Удаление` размещать только удаляемый код; +3. комментарии и пояснения размещать только в `#Вставка`; +4. не использовать вставку директив удаления внутрь многострочных литералов запроса; +5. при изменении условных операторов заменять цельный блок `Если ... КонецЕсли` (а не только строку условия); +6. если точка расширения недоступна технически, оформлять точечное изменение в базе отдельным решением с обоснованием. + +## 8. Решение по макетам после 01.01.2026 + +Для новых документов после `01.01.2026` целевые макеты: +1. `ОбщийМакет.ПФ_MXL_УниверсальныйПередаточныйДокумент2026`; +2. `ОбщийМакет.ПФ_MXL_УниверсальныйПередаточныйДокумент2026Прослеж`. + +Исторические макеты (`..._ru`, `..._625_ru`, `...981_ru`, `...534_ru`) не удаляются, потому что: +1. они нужны для корректной печати документов прошлых периодов; +2. они участвуют в проверках совместимости печати смешанных наборов документов; +3. их изменение в рамках полного переноса выполняется только при отдельном бизнес-требовании. + +## 9. Критерии готовности ТЗ №2 к реализации + +1. Согласован перечень переносимых объектов и методов. +2. Согласован перечень удаляемых дубликатов из `crm3-dev.rhana`. +3. Подтвержден способ работы с отсутствующими реквизитами (через расширение или точечно в базе). +4. Утвержден план поэтапного внедрения и регрессии. + diff --git a/docs__TZ_min_5b_UPD_2026-04-21.md b/docs__TZ_min_5b_UPD_2026-04-21.md new file mode 100644 index 0000000..8ac1fca --- /dev/null +++ b/docs__TZ_min_5b_UPD_2026-04-21.md @@ -0,0 +1,634 @@ +--- +title: Техническое задание - минимальная реализация графы 5б в УПД (через расширение) +version: 1.1 +date_created: 2026-04-21 +date_modified: 2026-04-21 +author: Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) +description: Детализированное техническое задание с конкретными объектами и кодовыми фрагментами для минимальной реализации графы 5б в УПД с приоритетом реализации через расширение crm3-dev.rhana. +status: К реализации +extension: CRM3devLocal / CRM3devLocal.Рана +show_metadata_block: true +show_index_link: true +show_toc: true +--- + +# Техническое задание + +## 1. Общая информация + +### 1.1. Дата документа +21.04.2026 + +### 1.2. Основание +Результаты повторного анализа `crm3-dev` + `crm3-dev.rhana` в сравнении с `crm3-26-promo` (версия `3.1.35.11`) по функционалу заполнения графы 5б в УПД. + +### 1.3. Цель +Реализовать в старой конфигурации минимально необходимую логику заполнения графы **5б** в печатной форме УПД за счет перехода на новые макеты `ПФ_MXL_УниверсальныйПередаточныйДокумент2026` и `ПФ_MXL_УниверсальныйПередаточныйДокумент2026Прослеж` (из `crm3-26-promo`) и передачи в них параметра `АвансовыеСчетаФактуры`, с максимальной локализацией изменений в расширении `упд5б`. + +--- + +## 2. Архитектурный принцип реализации + +### 2.1. Приоритет: расширение +Реализация выполняется **в первую очередь через расширение** `crm3-dev.rhana`. + +Целевой порядок: +1. Подготовка данных для графы 5б - в расширении документа `СчетФактураВыданный`. +2. Вывод в печатную форму УПД - в расширении `ПечатьОбщихФорм`. +3. Изменения в базе `crm3-dev` - только если конкретный метод нельзя корректно расширить. + +### 2.2. Допустимый fallback на базу +Если нужная точка не расширяема: +1. фиксируется причина технического ограничения; +2. в базе делается минимальный точечный change; +3. вся остальная логика остается в расширении. + +--- + +## 3. Объем и ограничения + +### 3.1. Включено в объем работ +1. Формирование представления авансовых счетов-фактур для графы 5б. +2. Передача значения в набор данных печати УПД (`РезультатПоШапке`). +3. Перенос в расширение `упд5б` макетов `ОбщийМакет.ПФ_MXL_УниверсальныйПередаточныйДокумент2026` и `ОбщийМакет.ПФ_MXL_УниверсальныйПередаточныйДокумент2026Прослеж` из `crm3-26-promo`. +4. Вывод значения графы 5б в новых макетах 2026. +5. Минимальные изменения, достаточные для работоспособности графы 5б без изменения логики старых веток макетов. + +### 3.2. Не включено в объем работ +1. Полный перенос ветки печатных форм СФ/УПД/УКД 2.5. +2. Перенос всех функциональных опций и макетов из `crm3-26-promo`. +3. Масштабный рефакторинг печати УПД. +4. Изменение логики выбора исторических макетов `..._ru`, `..._625_ru`, `...981_ru`, `...534_ru`. + +--- + +## 4. Карта объектов и изменений + +### 4.1. Обязательные объекты в расширении + +1. `crm3-dev.rhana/src/Documents/СчетФактураВыданный/Ext/ManagerModule.bsl` + Назначение: + - формирование `ПредставлениеАвансовыеСчетаФактуры`; + - расширение подготовки данных для УПД. + +2. `crm3-dev.rhana/src/DataProcessors/ПечатьОбщихФорм/Ext/ManagerModule.bsl` + Назначение: + - чтение `ДанныеПечати.ПредставлениеАвансовыеСчетаФактуры`; + - заполнение `ОбластьШапка.Параметры.АвансовыеСчетаФактуры`. + +3. Макеты УПД в расширении `упд5б` (раздел `CommonTemplates`) + Назначение: + - перенос из `crm3-26-promo` макетов: + - `ПФ_MXL_УниверсальныйПередаточныйДокумент2026`; + - `ПФ_MXL_УниверсальныйПередаточныйДокумент2026Прослеж`; + - использование в печати УПД для периода 2026+. + +4. Макет УПД в расширении (`Templates` объекта `ПечатьОбщихФорм`) + Назначение: + - сохранить совместимость со старой веткой печати; + - без обязательной доработки исторических шаблонов в рамках минимальной задачи. + +### 4.2. Объекты базы (только при невозможности расширить) + +1. `crm3-dev/src/Documents/СчетФактураВыданный/Ext/ManagerModule.bsl` +2. Базовый макет УПД. + +--- + +## 5. Детализация реализации по объектам + +### 5.1. Расширение документа `СчетФактураВыданный` + +Файл: `crm3-dev.rhana/src/Documents/СчетФактураВыданный/Ext/ManagerModule.bsl` + +Необходимо расширить: +1. `ПоместитьВременнуюТаблицуПлатежноРасчетныхДокументов(...)` + - добавить колонку `СтрокаАвансовыеСчетаФактуры`; + - заполнять ее из функции `упд5б_СтрокаАвансовыеСчетаФактуры(...)`; + - включить колонку в итоговую выгрузку в `ТаблицаПлатежноРасчетныеДокументы`. + + Конкретный код (фрагмент для вставки по месту): + +```bsl +// 1) Добавление колонки в сводную ТЗ +ПлатежноРасчетныеДокументыСводно.Колонки.Добавить("СтрокаАвансовыеСчетаФактуры", + Новый ОписаниеТипов("Строка",,Новый КвалификаторыСтроки(1000))); + +// 2) Заполнение значения в цикле по счетам-фактурам +НоваяСтрока = ПлатежноРасчетныеДокументыСводно.Добавить(); +НоваяСтрока.Ссылка = ВыборкаСчетФактур.СчетФактура; +НоваяСтрока.СтрокаПлатежноРасчетныеДокументы = СтрокаРасчетноПлатежныхДокументов(ПлатежноРасчетныеДокументы); +НоваяСтрока.СтрокаАвансовыеСчетаФактуры = упд5б_СтрокаАвансовыеСчетаФактуры(ПлатежноРасчетныеДокументы); + +// 3) Выгрузка в ВТ, чтобы поле было доступно в дальнейших запросах +Запрос.Текст = +"ВЫБРАТЬ +| Таблица.Ссылка, +| Таблица.СтрокаПлатежноРасчетныеДокументы, +| Таблица.СтрокаАвансовыеСчетаФактуры +|ПОМЕСТИТЬ ТаблицаПлатежноРасчетныеДокументы +|ИЗ +| &ПлатежноРасчетныеДокументы КАК Таблица"; +``` + +2. `ТекстЗапросаПолученияНомеровИДатПлатежноРасчетныхДокументов()` + - добавить извлечение связанных авансовых СФ (`Документ.СчетФактураВыданныйАванс`); + - добавить поля: + - `НомерСчетаФактурыНаАванс` + - `ДатаСчетаФактурыНаАванс` + - `НомерИсправленияСчетаФактурыНаАванс` + - `ДатаИсправленияСчетаФактурыНаАванс`; + - внедрять как цельный расширяемый блок по шаблону из раздела `6.3`. + +3. Формирование поля в запросе шапки: + - `ПредставлениеАвансовыеСчетаФактуры`. + +4. Новая функция в расширении: + - `упд5б_СтрокаАвансовыеСчетаФактуры(...) Экспорт`. + +### 5.2. Расширение печати УПД + +Файл: `crm3-dev.rhana/src/DataProcessors/ПечатьОбщихФорм/Ext/ManagerModule.bsl` + +В `упд5б_ЗаполнитьТабличныйДокументУПД(...)` добавить: +1. извлечение значения графы 5б из `ДанныеПечати`: + - `ПредставлениеАвансовыеСчетаФактуры`; +2. fallback: + - `№ -- от --, исправление № -- от --`; +3. заполнение параметра шапки: + - `ОбластьШапка.Параметры.АвансовыеСчетаФактуры`. + +### 5.3. Макет УПД + +По результатам глубокого анализа: +1. в `crm3-26-promo` параметр 5б реализован в коде печати и применяется в ветке новых макетов: + - `ОбщийМакет.ПФ_MXL_УниверсальныйПередаточныйДокумент2026`; + - `ОбщийМакет.ПФ_MXL_УниверсальныйПередаточныйДокумент2026Прослеж`; +2. в `crm3-dev` отсутствует раздел `CommonTemplates` с указанными макетами; +3. в `crm3-dev.rhana` ветка 2026 сейчас переключается на `...1096_ru`, что не дает использовать новый шаблон 2026 с параметром 5б по эталонной схеме `crm3-26-promo`. + +Требование минимальной задачи по макетам: +1. создать в расширении `упд5б` раздел `CommonTemplates` и перенести из `crm3-26-promo`: + - `ПФ_MXL_УниверсальныйПередаточныйДокумент2026`; + - `ПФ_MXL_УниверсальныйПередаточныйДокумент2026Прослеж`; +2. в процедуре `ЗаполнитьТабличныйДокументУПД(...)` расширения `упд5б` для ветки 2026 использовать только эти новые макеты; +3. логику выбора и применения исторических макетов (`..._ru`, `..._625_ru`, `...981_ru`, `...534_ru`) не менять; +4. обеспечить установку `ОбластьШапка.Параметры.АвансовыеСчетаФактуры` в ветке печати, где используется макет 2026/2026Прослеж. + +Конкретный код для вставки приведен в разделе `6.5`. + +Требование по переносу доработок из текущего расширения `crm3-dev.rhana` в новое расширение `упд5б`: +1. перенести только ветку выбора макета периода 2026; +2. заменить использование `ПФ_MXL_УниверсальныйПередаточныйДокумент1096_ru` на `ОбщийМакет.ПФ_MXL_УниверсальныйПередаточныйДокумент2026` и `...2026Прослеж`; +3. оставить существующие ветки до 2026 без изменений. + +--- + +## 6. Конкретные кодовые фрагменты (шаблоны для внедрения) + +### 6.0. Общий шаблон расширяемого метода + +Все изменения в существующих методах выполнять в форме: + +```bsl +&ИзменениеИКонтроль("ИмяМетодаБазы") +Функция упд5б_ИмяМетодаБазы(...) + + #Удаление + ТекстБазовогоКода = "..."; + #КонецУдаления + + #Вставка + // Новый или измененный фрагмент + #КонецВставки + +КонецФункции +``` + +### 6.1. Функция строкового представления графы 5б + +```bsl +Функция упд5б_СтрокаАвансовыеСчетаФактуры(ПлатежноРасчетныеДокументы) Экспорт + + СтрокаНомеровИДата = ""; + Для каждого СтрокаДокумента Из ПлатежноРасчетныеДокументы Цикл + Если ЗначениеЗаполнено(СтрокаДокумента.НомерСчетаФактурыНаАванс) Тогда + ТекстСтроки = СтрШаблон( + НСтр("ru='№ %1 от %2, исправление № %3 от %4'"), + СтрокаДокумента.НомерСчетаФактурыНаАванс, + Формат(СтрокаДокумента.ДатаСчетаФактурыНаАванс, "ДФ=dd.MM.yyyy"), + ?(ЗначениеЗаполнено(СтрокаДокумента.НомерИсправленияСчетаФактурыНаАванс), СтрокаДокумента.НомерИсправленияСчетаФактурыНаАванс, "--"), + ?(ЗначениеЗаполнено(СтрокаДокумента.ДатаИсправленияСчетаФактурыНаАванс), Формат(СтрокаДокумента.ДатаИсправленияСчетаФактурыНаАванс, "ДФ=dd.MM.yyyy"), "--") + ); + СтрокаНомеровИДата = СтрокаНомеровИДата + + ?(ПустаяСтрока(СтрокаНомеровИДата), "", "; ") + + ТекстСтроки; + КонецЕсли; + КонецЦикла; + + Возврат СтрокаНомеровИДата; + +КонецФункции +``` + +### 6.2. Расширение `ПоместитьВременнуюТаблицуПлатежноРасчетныхДокументов(...)` + +```bsl +&ИзменениеИКонтроль("ПоместитьВременнуюТаблицуПлатежноРасчетныхДокументов") +Функция упд5б_ПоместитьВременнуюТаблицуПлатежноРасчетныхДокументов(МенеджерВременныхТаблиц, МассивАналитикУчетаПоПартнерам) + + #Удаление + Запрос.Текст = + "ВЫБРАТЬ + | Таблица.Ссылка, + | Таблица.СтрокаПлатежноРасчетныеДокументы + |ПОМЕСТИТЬ ТаблицаПлатежноРасчетныеДокументы + |ИЗ + | &ПлатежноРасчетныеДокументы КАК Таблица"; + #КонецУдаления + + #Вставка + // [+] Добавляем отдельную колонку для текстового представления графы 5б + // во временную таблицу ТаблицаПлатежноРасчетныеДокументы. + // [+] Заполняем колонку через новую функцию + // упд5б_СтрокаАвансовыеСчетаФактуры(...). + // [+] Включаем колонку в финальный набор, который участвует в формировании шапки печати. + ПлатежноРасчетныеДокументыСводно.Колонки.Добавить("СтрокаАвансовыеСчетаФактуры", + Новый ОписаниеТипов("Строка",,Новый КвалификаторыСтроки(1000))); + + НоваяСтрока.СтрокаАвансовыеСчетаФактуры = + упд5б_СтрокаАвансовыеСчетаФактуры(ПлатежноРасчетныеДокументы); + + Запрос.Текст = + "ВЫБРАТЬ + | Таблица.Ссылка, + | Таблица.СтрокаПлатежноРасчетныеДокументы, + | Таблица.СтрокаАвансовыеСчетаФактуры + |ПОМЕСТИТЬ ТаблицаПлатежноРасчетныеДокументы + |ИЗ + | &ПлатежноРасчетныеДокументы КАК Таблица"; + #КонецВставки + +КонецФункции +``` + +### 6.3. Расширение `ТекстЗапросаПолученияНомеровИДатПлатежноРасчетныхДокументов()` + +```bsl +&ИзменениеИКонтроль("ТекстЗапросаПолученияНомеровИДатПлатежноРасчетныхДокументов") +Функция упд5б_ТекстЗапросаПолученияНомеровИДатПлатежноРасчетныхДокументов() + + #Удаление + ТекстЗапроса = + "ВЫБРАТЬ РАЗЛИЧНЫЕ + | ДанныеПервичныхДокументов.Дата КАК ДатаВходящегоДокумента, + | ДанныеПервичныхДокументов.Номер КАК НомерВходящегоДокумента, + | ТаблицаДокументов.Ссылка КАК СчетФактура + |ИЗ + | РасчетыСКлиентами_ОснованияИДокументыОплаты КАК ПлатежныеДокументы + | + | ВНУТРЕННЕЕ СОЕДИНЕНИЕ + | ТаблицаЗаполненияПлатежноРасчетныхДокументов КАК ТаблицаДокументов + | ПО + | ПлатежныеДокументы.ОснованиеОплаты = ТаблицаДокументов.ДокументОснование + | И ПлатежныеДокументы.АналитикаУчетаПоПартнерам В (&МассивАналитикУчетаПоПартнерам) + | + | ВНУТРЕННЕЕ СОЕДИНЕНИЕ + | РегистрСведений.ДанныеПервичныхДокументов КАК ДанныеПервичныхДокументов + | ПО + | ПлатежныеДокументы.Организация = ДанныеПервичныхДокументов.Организация + | И ПлатежныеДокументы.ДокументОплаты = ДанныеПервичныхДокументов.Документ + | + |ГДЕ + | ТИПЗНАЧЕНИЯ(ПлатежныеДокументы.ДокументОплаты) <> ТИП(Документ.ВзаимозачетЗадолженности) + | + |ИТОГИ ПО + | СчетФактура + |; + | + |//////////////////////////////////////////////////////////////////////////////// + |УНИЧТОЖИТЬ РасчетыСКлиентами_ОснованияИДокументыОплаты + |; + | + |//////////////////////////////////////////////////////////////////////////////// + |УНИЧТОЖИТЬ ТаблицаЗаполненияПлатежноРасчетныхДокументов"; + #КонецУдаления + + #Вставка + // [+] Этап 1: формируем ВТ втДанныеПлатежноРасчетныхДокументов и + // добавляем РасчетныйДокумент для связи с авансовыми СФ. + // [+] Этап 2: определяем авансовый СФ и его исправление (если есть), + // сворачиваем по СчетФактура. + // [+] Этап 3: отдаём полный набор полей, требуемых для формирования строки 5б. + // [+] Этап 4: очищаем все созданные ВТ. + ТекстЗапроса = + "ВЫБРАТЬ РАЗЛИЧНЫЕ + | ДанныеПервичныхДокументов.Дата КАК ДатаВходящегоДокумента, + | ДанныеПервичныхДокументов.Номер КАК НомерВходящегоДокумента, + | ТаблицаДокументов.Ссылка КАК СчетФактура, + | ПлатежныеДокументы.РасчетныйДокумент КАК РасчетныйДокумент + |ПОМЕСТИТЬ втДанныеПлатежноРасчетныхДокументов + |ИЗ + | РасчетыСКлиентами_ОснованияИДокументыОплаты КАК ПлатежныеДокументы + | ВНУТРЕННЕЕ СОЕДИНЕНИЕ ТаблицаЗаполненияПлатежноРасчетныхДокументов КАК ТаблицаДокументов + | ПО ПлатежныеДокументы.ОснованиеОплаты = ТаблицаДокументов.ДокументОснование + | И ПлатежныеДокументы.АналитикаУчетаПоПартнерам В (&МассивАналитикУчетаПоПартнерам) + | ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ДанныеПервичныхДокументов КАК ДанныеПервичныхДокументов + | ПО ПлатежныеДокументы.Организация = ДанныеПервичныхДокументов.Организация + | И ПлатежныеДокументы.ДокументОплаты = ДанныеПервичныхДокументов.Документ + |ГДЕ + | ТИПЗНАЧЕНИЯ(ПлатежныеДокументы.ДокументОплаты) <> ТИП(Документ.ВзаимозачетЗадолженности) + |; + | + |//////////////////////////////////////////////////////////////////////////////// + |ВЫБРАТЬ + | втДанныеПлатежноРасчетныхДокументов.РасчетныйДокумент КАК РасчетныйДокумент, + | втДанныеПлатежноРасчетныхДокументов.СчетФактура КАК СчетФактура, + | СчетФактураАванс.Ссылка КАК СчетФактураАванс, + | ЕСТЬNULL(ИсправленныйСчетФактураАванс.Ссылка, ЗНАЧЕНИЕ(Документ.СчетФактураВыданныйАванс.ПустаяСсылка)) КАК ИсправлениеСчетаФактурыАванс, + | МАКСИМУМ(СчетФактураАванс.НомерИсправления) КАК НомерИсправления + |ПОМЕСТИТЬ втНомераИсправленийСчетовФактурНаАванс + |ИЗ + | втДанныеПлатежноРасчетныхДокументов КАК втДанныеПлатежноРасчетныхДокументов + | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.СчетФактураВыданныйАванс КАК СчетФактураАванс + | ПО втДанныеПлатежноРасчетныхДокументов.РасчетныйДокумент = СчетФактураАванс.ДокументОснование + | И НЕ СчетФактураАванс.Корректировочный + | И СчетФактураАванс.Проведен + | ЛЕВОЕ СОЕДИНЕНИЕ Документ.СчетФактураВыданныйАванс КАК ИсправленныйСчетФактураАванс + | ПО СчетФактураАванс.СчетФактураОснование = ИсправленныйСчетФактураАванс.Ссылка + | И СчетФактураАванс.Исправление + | И НЕ ИсправленныйСчетФактураАванс.Корректировочный + | И ИсправленныйСчетФактураАванс.Проведен + |СГРУППИРОВАТЬ ПО + | втДанныеПлатежноРасчетныхДокументов.РасчетныйДокумент, + | втДанныеПлатежноРасчетныхДокументов.СчетФактура, + | СчетФактураАванс.Ссылка, + | ЕСТЬNULL(ИсправленныйСчетФактураАванс.Ссылка, ЗНАЧЕНИЕ(Документ.СчетФактураВыданныйАванс.ПустаяСсылка)) + |; + | + |//////////////////////////////////////////////////////////////////////////////// + |ВЫБРАТЬ + | ДанныеПлатежноРасчетныхДокументов.РасчетныйДокумент КАК РасчетныйДокумент, + | ДанныеПлатежноРасчетныхДокументов.СчетФактура КАК СчетФактура, + | ДанныеПлатежноРасчетныхДокументов.ДатаВходящегоДокумента КАК ДатаВходящегоДокумента, + | ДанныеПлатежноРасчетныхДокументов.НомерВходящегоДокумента КАК НомерВходящегоДокумента, + | ДанныеСчетаФактурыАванс.Номер КАК НомерСчетаФактурыНаАванс, + | ДанныеСчетаФактурыАванс.Дата КАК ДатаСчетаФактурыНаАванс, + | СчетаФактурыАванс.НомерИсправления КАК НомерИсправленияСчетаФактурыНаАванс, + | ДанныеИсправленияСчетаФактурыАванс.Дата КАК ДатаИсправленияСчетаФактурыНаАванс + |ИЗ + | втДанныеПлатежноРасчетныхДокументов КАК ДанныеПлатежноРасчетныхДокументов + | ЛЕВОЕ СОЕДИНЕНИЕ втНомераИсправленийСчетовФактурНаАванс КАК СчетаФактурыАванс + | ПО ДанныеПлатежноРасчетныхДокументов.РасчетныйДокумент = СчетаФактурыАванс.РасчетныйДокумент + | И ДанныеПлатежноРасчетныхДокументов.СчетФактура = СчетаФактурыАванс.СчетФактура + | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ДанныеПервичныхДокументов КАК ДанныеСчетаФактурыАванс + | ПО ДанныеСчетаФактурыАванс.Документ = СчетаФактурыАванс.СчетФактураАванс + | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ДанныеПервичныхДокументов КАК ДанныеИсправленияСчетаФактурыАванс + | ПО ДанныеИсправленияСчетаФактурыАванс.Документ = СчетаФактурыАванс.ИсправлениеСчетаФактурыАванс + |ИТОГИ ПО + | СчетФактура + |; + | + |//////////////////////////////////////////////////////////////////////////////// + |УНИЧТОЖИТЬ втНомераИсправленийСчетовФактурНаАванс + |; + | + |//////////////////////////////////////////////////////////////////////////////// + |УНИЧТОЖИТЬ втДанныеПлатежноРасчетныхДокументов + |; + | + |//////////////////////////////////////////////////////////////////////////////// + |УНИЧТОЖИТЬ РасчетыСКлиентами_ОснованияИДокументыОплаты + |; + | + |//////////////////////////////////////////////////////////////////////////////// + |УНИЧТОЖИТЬ ТаблицаЗаполненияПлатежноРасчетныхДокументов"; + #КонецВставки + + Возврат ТекстЗапроса; + +КонецФункции +``` + +### 6.4. Расширение `ТекстЗапросаДанныхШапкиДляПечатиСчетаФактуры(ПараметрыПечати)` + +```bsl +&ИзменениеИКонтроль("ТекстЗапросаДанныхШапкиДляПечатиСчетаФактуры") +Функция упд5б_ТекстЗапросаДанныхШапкиДляПечатиСчетаФактуры(ПараметрыПечати) + + ТекстЗапроса = ТекстЗапроса + " + |///////////////////////////////////////////////////////////////////////////// + |ВЫБРАТЬ + | ДанныеДокумента.Ссылка КАК Ссылка, + | ... + | ДанныеДокумента.Корректировочный КАК КорректировочныйСчетФактура, + | ЕСТЬNULL(ТаблицаПлатежноРасчетныеДокументы.СтрокаПлатежноРасчетныеДокументы, + | ДанныеДокумента.СтрокаПлатежноРасчетныеДокументы) КАК СтрокаПоДокументу, + | ... + |ИЗ + | ..."; + + #Вставка + // [+] Вставлять сразу после базового присваивания ТекстЗапроса (до ветки Если...). + ТекстЗапроса = СтрЗаменить( + ТекстЗапроса, + "| ЕСТЬNULL(ТаблицаПлатежноРасчетныеДокументы.СтрокаПлатежноРасчетныеДокументы, + | ДанныеДокумента.СтрокаПлатежноРасчетныеДокументы) КАК СтрокаПоДокументу,", + "| ЕСТЬNULL(ТаблицаПлатежноРасчетныеДокументы.СтрокаПлатежноРасчетныеДокументы, + | ДанныеДокумента.СтрокаПлатежноРасчетныеДокументы) КАК СтрокаПоДокументу, + | ЕСТЬNULL(ТаблицаПлатежноРасчетныеДокументы.СтрокаАвансовыеСчетаФактуры, + | ДанныеДокумента.СтрокаАвансовыеСчетаФактуры) КАК ПредставлениеАвансовыеСчетаФактуры,"); + #КонецВставки + + Если ПечататьСчетаФактурыПолученные Тогда + ... + #Вставка + // [+] Вставлять внутри ветки Если... после формирования текста объединяемой части. + ТекстЗапроса = СтрЗаменить( + ТекстЗапроса, + "| """" КАК СтрокаПоДокументу,", + "| """" КАК СтрокаПоДокументу, + | """" КАК ПредставлениеАвансовыеСчетаФактуры,"); + #КонецВставки + КонецЕсли; + + Возврат ТекстЗапроса; + +КонецФункции +``` + +### 6.5. Расширение `ЗаполнитьТабличныйДокументУПД(...)` в `ПечатьОбщихФорм` + +Модуль: `crm3-dev.upd5b/src/DataProcessors/ПечатьОбщихФорм/Ext/ManagerModule.bsl` + +```bsl +&ИзменениеИКонтроль("ЗаполнитьТабличныйДокументУПД") +Процедура упд5б_ЗаполнитьТабличныйДокументУПД(ТабличныйДокумент, ДанныеДляПечати, ОбъектыПечати) + + #Вставка + // === [UPD5B] НАЧАЛО БЛОКА ВСТАВКИ === + МакетУПД_2026 = УправлениеПечатью.МакетПечатнойФормы( + "Обработка.ПечатьОбщихФорм.ПФ_MXL_УниверсальныйПередаточныйДокумент2026"); + МакетУПД_2026Прослеж = УправлениеПечатью.МакетПечатнойФормы( + "Обработка.ПечатьОбщихФорм.ПФ_MXL_УниверсальныйПередаточныйДокумент2026Прослеж"); + ЕстьПостановление2026 = ЛОЖЬ; + // === [UPD5B] КОНЕЦ БЛОКА ВСТАВКИ === + #КонецВставки + + #Удаление + Если ДействуетПостановление534(ДанныеПечати.Дата, ДанныеПечати.ДатаИсправления) Тогда + Макет = МакетУПД_534; + ЕстьПостановление534 = Истина; + ИначеЕсли ДействуетПостановление981(ДанныеПечати.Дата, ДанныеПечати.ДатаИсправления) Тогда + Макет = МакетУПД_981; + ЕстьПостановление981 = Истина; + ИначеЕсли ВедетсяУчетНДСПоФЗ56(ДанныеПечати.Дата, ДанныеПечати.ДатаИсправления) Тогда + Макет = МакетУПД_625; + ЕстьПостановление1137_625 = Истина; + Иначе + Макет = МакетУПД; + ЕстьПостановление1137 = Истина; + КонецЕсли; + #КонецУдаления + #Вставка + // === [UPD5B] НАЧАЛО БЛОКА ВСТАВКИ === + Если ?(ЗначениеЗаполнено(ДанныеПечати.ДатаИсправления), ДанныеПечати.ДатаИсправления, ДанныеПечати.Дата) >= '20260101' Тогда + ЕстьПрослеживаемыеТоварыВТабличнойЧасти = Ложь; + Если ОбщегоНазначенияКлиентСервер.ЕстьРеквизитИлиСвойствоОбъекта(ДанныеПечати, "ЕстьПрослеживаемыеТоварыВТабличнойЧасти") + И ЗначениеЗаполнено(ДанныеПечати.ЕстьПрослеживаемыеТоварыВТабличнойЧасти) Тогда + ЕстьПрослеживаемыеТоварыВТабличнойЧасти = ДанныеПечати.ЕстьПрослеживаемыеТоварыВТабличнойЧасти; + КонецЕсли; + + Если (ОбщегоНазначенияКлиентСервер.ЕстьРеквизитИлиСвойствоОбъекта(ДанныеПечати, "ЕстьПрослеживаемыеТовары") + И ЗначениеЗаполнено(ДанныеПечати.ЕстьПрослеживаемыеТовары) + И ДанныеПечати.ЕстьПрослеживаемыеТовары) + Или ЕстьПрослеживаемыеТоварыВТабличнойЧасти Тогда + Макет = МакетУПД_2026Прослеж; + Иначе + Макет = МакетУПД_2026; + КонецЕсли; + ЕстьПостановление2026 = Истина; + ИначеЕсли ДействуетПостановление534(ДанныеПечати.Дата, ДанныеПечати.ДатаИсправления) Тогда + Макет = МакетУПД_534; + ЕстьПостановление534 = Истина; + ИначеЕсли ДействуетПостановление981(ДанныеПечати.Дата, ДанныеПечати.ДатаИсправления) Тогда + Макет = МакетУПД_981; + ЕстьПостановление981 = Истина; + ИначеЕсли ВедетсяУчетНДСПоФЗ56(ДанныеПечати.Дата, ДанныеПечати.ДатаИсправления) Тогда + Макет = МакетУПД_625; + ЕстьПостановление1137_625 = Истина; + Иначе + Макет = МакетУПД; + ЕстьПостановление1137 = Истина; + КонецЕсли; + // === [UPD5B] КОНЕЦ БЛОКА ВСТАВКИ === + #КонецВставки + + #Вставка + // === [UPD5B] НАЧАЛО БЛОКА ВСТАВКИ === + АвансовыеСчетаФактуры = + ?(ОбщегоНазначенияКлиентСервер.ЕстьРеквизитИлиСвойствоОбъекта(ДанныеПечати, "ПредставлениеАвансовыеСчетаФактуры") + И ЗначениеЗаполнено(ДанныеПечати.ПредставлениеАвансовыеСчетаФактуры), + ДанныеПечати.ПредставлениеАвансовыеСчетаФактуры, + НСтр("ru='№ -- от --, исправление № -- от --'")); + + Если ЕстьПостановление2026 Тогда + ОбластьШапка.Параметры.АвансовыеСчетаФактуры = АвансовыеСчетаФактуры; + КонецЕсли; + // === [UPD5B] КОНЕЦ БЛОКА ВСТАВКИ === + #КонецВставки + +КонецПроцедуры +``` + +--- + +## 7. Правила разработки для расширения + +1. Все изменения в перехватываемых методах оформлять через `&ИзменениеИКонтроль`. +2. Новый код помещать в `#Вставка`, удаляемый - в `#Удаление`. +3. В блоках `#Удаление` не добавлять комментарии и новый текст. +4. Новые методы расширения именовать с префиксом `упд5б_`. +5. Сохранять совместимость со старыми документами (обязательный fallback). + +### 7.1. Правила `#Удаление` / `#Вставка` для многострочных текстов запроса + +1. Директивы применяются к **операторам языка 1С**, а не к частям строкового литерала. +2. Если меняется многострочный SQL-текст (`ТекстЗапроса = "..."`), в `#Удаление` помещается **весь оператор присваивания**. +3. Внутрь текста SQL (между кавычками) директивы `#Удаление/#Вставка` не вставляются. +4. В `#Вставка` вставляется новый оператор присваивания целиком либо последовательность `СтрЗаменить(...)` над полным базовым текстом. +5. Блок `#Удаление` содержит только удаляемый код (без поясняющих комментариев), комментарии допускаются в `#Вставка`. +6. При изменении условных операторов (`Если ... Тогда ... Иначе ... КонецЕсли`) заменять **целостный блок управления** в `#Удаление/#Вставка` (от `Если` до `КонецЕсли`), а не отдельный заголовок условия. + +### 7.2. Анти-паттерны (что не делать) + +1. Не дублировать один и тот же код в `#Удаление` и `#Вставка` без фактических изменений. +2. Не вставлять директивы `#Удаление/#Вставка` внутрь многострочного SQL-текста. +3. Не оставлять в `#Удаление` текстовые ориентиры, пояснения и комментарии. +4. Не менять состав колонок только в одной ветке запроса, если есть `ОБЪЕДИНИТЬ ВСЕ`. +5. Не использовать имена полей в последующих частях запроса, если эти поля не сформированы в предыдущих `ПОМЕСТИТЬ`. + +--- + +## 8. Поэтапный план реализации + +### Этап 1. Подготовка +1. Создать/активировать объекты расширения: + - документ `СчетФактураВыданный`; + - обработка `ПечатьОбщихФорм`; + - макет УПД. +2. Подтвердить, какие методы доступны для `&ИзменениеИКонтроль`. + +### Этап 2. Реализация данных 5б в расширении документа +1. Добавить `упд5б_СтрокаАвансовыеСчетаФактуры`. +2. Расширить ВТ платежно-расчетных документов. +3. Расширить запрос получения номеров/дат. +4. Прокинуть `ПредставлениеАвансовыеСчетаФактуры` в `РезультатПоШапке`. + +### Этап 3. Реализация вывода в расширении печати +1. Доработать `р_ЗаполнитьТабличныйДокументУПД`. +2. Заполнить `ОбластьШапка.Параметры.АвансовыеСчетаФактуры`. +3. Проверить fallback при отсутствии данных. + +### Этап 4. Изменение макета +1. Добавить параметр в строку 5б. +2. Проверить визуальное отображение длинного значения. + +### Этап 5. Тестирование +1. Один авансовый СФ. +2. Несколько авансовых СФ. +3. Исправленный авансовый СФ. +4. Отсутствие авансовых СФ. +5. Регрессия текущих форм УПД. + +--- + +## 9. Критерии приемки + +1. Графа 5б заполняется корректными данными авансовых СФ. +2. При отсутствии данных выводится fallback. +3. Реализация локализована преимущественно в `crm3-dev.rhana`. +4. Печатная форма УПД формируется без ошибок. +5. Регрессии по действующим сценариям отсутствуют. + +--- + +## 10. Оценка трудозатрат + +- Этап 1: 1-2 часа +- Этап 2: 5-8 часов +- Этап 3: 1-2 часа +- Этап 4: 1-2 часа +- Этап 5: 3-5 часов + +**Итого:** 11-19 часов. + +--- + +## 11. Результаты поставки + +1. Измененные объекты расширения `crm3-dev.rhana` по разделу 4. +2. Макет УПД расширения с поддержкой графы 5б. +3. Протокол тестирования с результатами. +4. Перечень фактических изменений по объектам и методам. +--- diff --git a/docs__diadoc_answer_2026-05-08.md b/docs__diadoc_answer_2026-05-08.md new file mode 100644 index 0000000..3b6e70f --- /dev/null +++ b/docs__diadoc_answer_2026-05-08.md @@ -0,0 +1,71 @@ +# Ответ на входящее обращение по модулю Диадока (УПД) + +Здравствуйте. + +Доработка в нашей базе уже выполнена и включает не только заполнение строки 5б, но и полный контур интеграции актуальной формы УПД в конфигурацию. + +## Что уже реализовано + +1. Автоматическое формирование строки 5б УПД: +- корректный отбор данных по авансовым счетам-фактурам; +- исключение фиктивных значений и дублирования; +- корректная обработка пересечений реквизитов платежно-расчетных документов и счетов-фактур на аванс. + +2. Поддержка актуальной формы УПД (формат 2026): +- подключены и используются макеты: + - `ПФ_MXL_УниверсальныйПередаточныйДокумент2026`; + - `ПФ_MXL_УниверсальныйПередаточныйДокумент2026Прослеж`; +- реализовано корректное заполнение шапки, табличной части, подвала и нумерации листов. + +3. Заполнение ответственных лиц: +- заполнение по справочнику `ОтветственныеЛицаОрганизаций`; +- выбор актуального назначения на дату документа; +- исключение завершенных назначений из печати. + +4. Наименование номенклатуры в печатной форме: +- вывод характеристики; +- вывод номера серии (при серийном учете); +- вывод срока годности; +- устранение дубля характеристики, если она совпадает с номером серии. + +## Перечень реквизитов/параметров печатной формы для синхронизации в модуле Диадока + +Ниже приведены параметры, которые должны участвовать в выгрузке для корректного соответствия печатной форме УПД 2026. + +### Шапка документа +- `Номер` +- `ДокументыОбОтгрузке` (графа 5а) +- `АвансовыеСчетаФактуры` (графа 5б) + +### Строка табличной части +- `ТоварКод` +- `ТоварНаименование` +- `Стоимость` +- `Всего` +- `ПредставлениеСтраны` + +### Итоги +- `ИтогоСтоимость` +- `ИтогоВсего` + +### Подвал / подписи +- `ФИОРуководителя` +- `ФИОГлавногоБухгалтера` +- `ФИОКладовщика` +- `ДолжностьКладовщика` +- `ФИООтветственного` +- `ДолжностьОтветственного` +- `Основание` +- `ДатаОтгрузкиПередачи` +- `ПредставлениеОрганизации` +- `ПредставлениеКонтрагента` +- `КоличествоЛистов` + +### Нумерация листов +- `Номер` +- `НомерЛиста` +- `НомерСтраницы` (если используется в конкретном сценарии печати) + +Если нужно, можем передать отдельную техническую таблицу соответствия: +`параметр печати 1С -> поле выгрузки Диадока -> правило формирования`. + diff --git a/docs__instructions_filter_access_groups.md b/docs__instructions_filter_access_groups.md new file mode 100644 index 0000000..8872954 --- /dev/null +++ b/docs__instructions_filter_access_groups.md @@ -0,0 +1,62 @@ +--- +title: Инструкция по фильтрации списка отсутствующих групп доступа +author: Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) +version: 1.0 +date_created: 2025-12-10 +date_modified: 2025-12-10 +show_metadata_block: true +show_index_link: true +--- + +# Инструкция по фильтрации списка отсутствующих групп доступа + +## Цель +Получить список групп доступа, которые: +1. Отсутствуют в целевой системе +2. **И** используются действующими пользователями в исходной системе + +Это позволит определить, какие группы доступа действительно нужно переносить в целевую систему. + +## Шаги выполнения + +### 1. Выполнение запроса в исходной системе + +1. Откройте конфигуратор исходной системы (`CRM3devLocal`) +2. Откройте консоль запросов (Ctrl+Shift+Q или через меню) +3. Скопируйте запрос из файла `query_active_access_groups_simple.txt` или выберите подходящий вариант из `query_active_access_groups.txt` +4. Выполните запрос +5. Сохраните результат в текстовый файл (например, `active_groups_source.txt`) + +**Важно:** Если запрос не работает, проверьте: +- Название справочника групп доступа (может быть `ГруппыДоступа` вместо `ГруппыДоступаРоли`) +- Название табличной части (может отличаться от `Пользователи`) +- Название реквизита для отключенных пользователей (может быть `Активность` вместо `Отключен`) + +### 2. Обработка результатов + +После получения списка групп доступа из исходной системы: + +1. Сравните список из `missing_access_groups.txt` (61 группа) со списком активных групп из исходной системы +2. Оставьте только те группы, которые: + - Есть в `missing_access_groups.txt` + - **И** есть в списке активных групп из исходной системы +3. Группы, которые отсутствуют в списке активных групп, можно исключить из списка для переноса + +### 3. Альтернативный способ (через скрипт) + +Можно создать Python скрипт для автоматического сравнения: +- Загрузить список из `missing_access_groups.txt` +- Загрузить список активных групп из результата запроса +- Выполнить пересечение списков +- Сохранить результат + +## Пример результата + +Если из 61 отсутствующей группы только 25 используются действующими пользователями, то именно эти 25 групп нужно переносить в целевую систему. + +## Примечания + +- Предопределенные элементы (начинающиеся с "--") уже исключены из исходного списка +- Группы, которые не используются действующими пользователями, могут быть устаревшими и не требуют переноса +- Однако стоит проверить, не используются ли они в будущем или не назначены ли они через другие механизмы + diff --git a/docs__meta__PROJECT_STRUCTURE.md b/docs__meta__PROJECT_STRUCTURE.md new file mode 100644 index 0000000..54b63bb --- /dev/null +++ b/docs__meta__PROJECT_STRUCTURE.md @@ -0,0 +1,189 @@ +# Структура проекта CRM3-26 + +Документ описывает актуальную организацию репозитория после переноса на рабочее место **nt-041** (macOS). Используется как постоянный контекст для разработки и анализа. + +**Корень проекта:** `/Users/kma/projects/crm3-26` + +--- + +## Информационные базы (промышленные) + +| Сторона | Сервер 1С | Имя ИБ | Конфигурация | Расширения | +|---------|-----------|--------|--------------|------------| +| **Исходная** (рабочая старая) | `1c-srv.rhana.local` | `crm3_placentapharm` | `crm3-dev` | `crm3-dev.rhana`, `crm3-dev.docs`, **`ws-rhana`** | +| **Целевая** (новая) | `1c-srv.rhana.local` | `crm3` | `crm3-26` | `crm3-26.rhana`, **`ws-rhana`** | + +**Веб-публикация (локальная сеть):** исходная — http://1c-srv.rhana.local/crm/ru/ ; целевая — http://1c-srv.rhana.local/crm326/ru/ . HTTP API: см. [ws-rhana/docs/INDEX.md](../../ws-rhana/docs/INDEX.md). + +**Обозначения конфигураций (эквивалентны):** + +| Сторона | Папки / имена | +|---------|----------------| +| Исходная | `crm3-dev`, `crm3_old`, `crm3-old` | +| Целевая | `crm3-26`, `crm3_26` | + +--- + +## Конфигурации и расширения в репозитории + +| Путь | Назначение | +|------|------------| +| `crm3-dev/` | Исходная конфигурация CRM3 (промышленная доработанная) | +| `crm3-dev.rhana/` | Расширение РАНА для исходной конфигурации | +| `crm3-dev.docs/` | Расширение печати договоров (исходная) | +| `crm3-26/` | **Целевая** конфигурация CRM3 (редакция 3.1) | +| `crm3-26.rhana/` | Расширение РАНА для целевой конфигурации | +| `ws-rhana/` | **Универсальное** расширение HTTP/WS (`РВС_`), подключается к любой ИБ РАНА | + +**Загрузка в информационную базу.** Канонический артефакт — исходники в git (XML/BSL). Конфигурацию, расширения и внешние обработки пользователь загружает **самостоятельно через Конфигуратор 1С**, как правило на **другом рабочем месте** после обновления рабочей копии (`git pull` / обновление submodule). Сборка и передача `.cf` / `.cfe` / `.epf` для установки на рабочую базу **не требуется**, если это явно не запрошено. + +Обновление выгрузок конфигураций из ИБ в репозиторий выполняется вручную из конфигуратора 1С или через 1С EDT. + +--- + +## Внешние обработки переноса данных + +| Сторона | Путь | Обработка | Статус | +|---------|------|-----------|--------| +| Исходная ИБ | `crm3-dev.ext/transfer/` | `crm3_old_ПереносОстатков` | Legacy; **доработка на паузе** | +| Целевая ИБ | `crm3-26.ext/tranfer/` | `crm3_26_ПереносОстатков` | Legacy; **доработка на паузе** | + +**Приоритет:** анализ и изменения в ИБ — линейный BSL (`docs/transfer/Код_*.bsl`) + `scripts/run_bsl.sh`. См. [Политика переноса: приоритет BSL](Политика_переноса_BSL_приоритет.md). + +Каждая обработка — отдельный git-репозиторий внутри соответствующего каталога. + +--- + +## Интеграция Контур.Диадок + +| Путь | Назначение | +|------|------------| +| `diadoc.ext/` | Основной модуль Контур.Диадок (внешняя обработка) | +| `diadoc.ext.rhana/` | Подключаемый модуль Диадок для CRM3 ПлацентаФарм (расширение Рана) | + +Каждый каталог — отдельный git-репозиторий; клонирование — см. [REPOSITORIES.md](REPOSITORIES.md). + +--- + +## Каталоги данных + +### `data_transfer/` — данные процесса переноса + +| Подкаталог | Содержимое | +|------------|------------| +| `data_transfer/crm3-dev/` | Выгрузки **из исходной** базы: отчёты анализа, реестры, остатки с ГТД, комиссия, `catalog_dev/`, rh_cost и т.д. | +| `data_transfer/crm3-26/` | Данные **для загрузки в целевую** базу и промежуточные результаты анализа/маппинга на стороне целевой ИБ | + +Типовые файлы: `latest_АнализОстатков.txt`, `latest_registry_dev.csv`, `latest_registry_promo.csv`, `latest_ОстаткиСГТД.csv`, `latest_ОстаткиКомиссия.csv`, `latest_rh_cost_dev.csv`, `latest_catalog_dev_<Справочник>.csv`. + +Каталоги `data_transfer/crm3-26/` и `data_transfer/crm3-dev/` в корне — **устарели**, не использовать. + +### `docs/transfer/mapping/` — файлы сопоставления НСИ + +CSV `map_*.csv` для связи GUID исходной и целевой баз. Используются обработкой `crm3_26_ПереносОстатков` и Python-скриптами в `scripts/`. + +--- + +## Документация + +| Путь | Назначение | +|------|------------| +| `docs/` | Вся проектная документация (аналитика, отчёты, инструкции) | +| `docs/meta/` | Описательная документация по структуре проекта (этот файл и связанные) | +| `docs/transfer/` | Документация по переносу: НСИ, остатки, комиссия, волны загрузки, BSL для консоли кода | +| `docs/1c_standarts/` | Стандарты разработки 1С (директивы препроцессора расширений и др.) | +| `docs/cursor_agents/` | Экспорт истории сессий Cursor Agent | + +Папка `docs2/` **объединена** в `docs/transfer/`. + +--- + +## Служебные инструменты + +| Путь | Назначение | +|------|------------| +| `scripts/` | Рабочие Python- и shell-скрипты анализа, сравнения, валидации | +| `scripts/build_epf.sh` | Сборка внешней обработки XML → EPF (DESIGNER, пакетный режим) | +| `scripts/run_bsl.sh` | Выполнение линейного `.bsl` через `RunBsl.epf` (`/Execute` + `/C`) | +| `scripts/build_run_bsl.sh` | Сборка/пересборка `tools/run_bsl/RunBsl.epf` | +| `scripts/run_diag_vid_settings.sh` | Диагностика видов номенклатуры в обеих ИБ | +| `scripts/lib/1c_shell.sh` | Общие функции подключения к ИБ (для `build_epf.sh`, `run_bsl.sh`) | +| `tools/run_bsl/` | Исходники обёртки `RunBsl.epf` (отдельный репозиторий [1c.run_bsl](https://git.p7net.ru/tools/1c.run_bsl)) | +| `build_crm3-dev.sh`, `build_crm3-26.sh` | Обёртки сборки EPF из корня проекта | +| `crm3-dev.ext/build_epf.conf`, `crm3-26.ext/build_epf.conf` | Подключение к ИБ: `V8`, `IB_CONN`, `AUTH_FILE` | +| `tools/md_converter/` | Конвертер Markdown → HTML/PDF | +| `tools/cam/` | [CAM](https://git.p7net.ru/tools/cam) — Cursor Agents Manager (отдельный репозиторий) | +| `tools/index/` | Индекс метаданных+BSL → `cache/1c_meta/index.sqlite` (`index_1c.py` / `query_1c.py`, v0.2.0, [1c/index](https://git.p7net.ru/1c/index.git)) | +| `tools/git_1c/` | Шаблоны `.gitattributes` / `.editorconfig` для репозиториев 1С; см. `scripts/sync_git_1c_config.sh` | +| `tools/check_ext/` | Проверка расширений 1С | + +Подробнее: [Скрипты 1С в пакетном режиме](Скрипты_1С_пакетный_режим.md). + +### Виртуальная среда Python + +**Единая среда:** `.venv-nt-041/` в корне проекта. + +```bash +source .venv-nt-041/bin/activate # macOS / Linux +# .venv-nt-041\Scripts\Activate.ps1 # Windows +``` + +После активации запускать скрипты из `scripts/` и `tools/md_converter/` из корня проекта или с указанием полного пути. + +Устаревшие среды (`scripts/venv/`, `tools/md_converter/venv/`, `venv-dt-021/`) не использовать. + +--- + +## Консоль кода 1С (проверочный анализ данных) + +Проверочный код можно выполнять **вручную** в консоли кода или **автоматически** через `scripts/run_bsl.sh` и обёртку `tools/run_bsl/RunBsl.epf` (без GUI; `/Execute` принимает только `.epf`, путь к `.bsl` — в `/C`). Перед первым запуском: `scripts/build_run_bsl.sh`. Подключение — тот же `build_epf.conf`, что и сборка EPF. См. [Скрипты 1С в пакетном режиме](Скрипты_1С_пакетный_режим.md). + +**Правила для `.bsl`:** + +- Без объявления процедур и функций — только линейный исполняемый код. +- Серверное выполнение: вывод через `ОбщегоНазначения.СообщитьПользователю(...)`. +- Клиентское выполнение: вывод через `ОбщегоНазначенияКлиент.СообщитьПользователю(...)`. + +Референсные фрагменты: + +| Файл | Назначение | +|------|------------| +| `docs/transfer/Код_анализа_остатков_crm3-dev.bsl` | Анализ остатков в исходной ИБ | +| `docs/transfer/Код_анализа_остатков_crm3-26-promo.bsl` | Сверка в целевой ИБ | +| `docs/transfer/Код_анализа_настроек_видов_характеристик.bsl` | Диагностика видов/характеристик/серий; автозапуск: `scripts/run_diag_vid_settings.sh` | + +--- + +## Приоритет Python при анализе файлов + +Для массового обхода, сравнения деревьев выгрузок, парсинга XML/BSL и отчётов по метаданным — **Python-скрипты в `scripts/`** (с `.venv-nt-041`), а не разовые длинные shell-команды. Результаты — в `docs/` или `data_transfer/` по назначению. + +--- + +## История агентов Cursor + +Утилита: **[CAM](https://git.p7net.ru/tools/cam)** (`tools/cam/`) — Cursor Agents Manager. + +Экспорт: `docs/cursor_agents/` (индекс: `docs/cursor_agents/INDEX.md`). + +Развёртывание CAM (один раз на рабочем месте): + +```bash +git clone https://git.p7net.ru/tools/cam.git tools/cam +cp tools/cam/config/workstations/nt-041.example.yml tools/cam/config/workstations/local.yml +# отредактировать project.root +``` + +Повторный экспорт: + +```bash +source .venv-nt-041/bin/activate +python tools/cam/cam.py -c tools/cam/config/workstations/local.yml export +``` + +Импорт на другом ПК (опционально, Cursor закрыт): `python tools/cam/cam.py import ...` +Документация CAM: `tools/cam/README.md` (English). + +--- + +*Обновлено: 2026-06-29 — политика приоритета BSL, [Политика_переноса_BSL_приоритет.md](Политика_переноса_BSL_приоритет.md).* diff --git a/docs__Анализ_доработок_синхронизации_ЗаказКлиента.md b/docs__Анализ_доработок_синхронизации_ЗаказКлиента.md new file mode 100644 index 0000000..8e8efa9 --- /dev/null +++ b/docs__Анализ_доработок_синхронизации_ЗаказКлиента.md @@ -0,0 +1,799 @@ +--- +title: Анализ доработок синхронизации документа Заказ клиента +version: 1.0 +date_modified: 2026-01-12 +author: Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) +date_created: 2026-01-12 +show_metadata_block: true +show_index_link: true +--- + +# Анализ доработок синхронизации документа Заказ клиента + +## Версия документа + +Версия 1.0 от 12.01.2026 + +## Автор + +Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) + +## Цель анализа + +Оценить необходимость доработки при применении типового механизма синхронизации с передачей документа "Заказ клиента" из старой конфигурации (включая расширение) в новую конфигурацию. Определить, какие доработки требуются в расширении для новой конфигурации с учетом особенностей: + +- Различий в политике учета номенклатур при сопоставлении +- Признака маркировки товаров (присутствует только в новой конфигурации) +- Применения максимально доступной в старой конфигурации версии XDTO +- Различий в структуре реквизитов документа + +## Краткое резюме + +**Основные выводы:** + +1. **Типовой механизм синхронизации** - механизм "СинхронизацияДанныхЧерезУниверсальныйФормат" присутствует в обеих конфигурациях и поддерживает передачу документа "ЗаказКлиента" + +2. **Критические доработки, требующие реализации:** + - Обработка различий в политике учета номенклатур при сопоставлении (политика определяется по номенклатуре, не хранится в документе) + - Обработка признака маркировки товаров (новое поле в новой конфигурации) + - Адаптация XDTO-структур для совместимости версий + - Обработка различий в структуре реквизитов документа (новые поля в новой конфигурации, отсутствующие в старой) + +3. **Риски:** + - Потеря данных о политике учета при синхронизации (если политика учета номенклатуры отличается) + - Отсутствие информации о маркировке товаров в старой конфигурации + - Несовместимость версий XDTO может привести к ошибкам обмена + - Потеря данных о времени доставки при синхронизации из старой конфигурации + +**Детальный анализ:** см. разделы ниже + +--- + +## 1. Анализ типового механизма синхронизации + +### 1.1. Описание механизма + +**План обмена:** `СинхронизацияДанныхЧерезУниверсальныйФормат` + +**Назначение:** Типовой механизм синхронизации данных между конфигурациями через универсальный формат обмена. + +**Поддерживаемые объекты:** +- Документы (включая "ЗаказКлиента") +- Справочники +- Регистры сведений +- Регистры накопления + +### 1.2. Присутствие в конфигурациях + +**Старая конфигурация (`crm3-dev`):** +- ✅ План обмена присутствует +- ✅ Документ "ЗаказКлиента" включен в план обмена + +**Новая конфигурация (`crm3-26-promo`):** +- ✅ План обмена присутствует +- ✅ Документ "ЗаказКлиента" включен в план обмена + +**Вывод:** Типовой механизм синхронизации присутствует в обеих конфигурациях и поддерживает передачу документа "ЗаказКлиента". + +--- + +## 2. Анализ различий в структуре документа "ЗаказКлиента" + +### 2.1. Сравнение реквизитов документа + +#### 2.1.1. Реквизиты шапки документа + +**Общие реквизиты (присутствуют в обеих конфигурациях):** +- Партнер +- Контрагент +- Организация +- Соглашение +- Сделка +- Валюта +- СуммаДокумента +- ГрафикОплаты +- Склад +- ЦенаВключаетНДС +- Менеджер +- ДополнительнаяИнформация +- ДокументОснование +- НеОтгружатьЧастями +- Статус +- МаксимальныйКодСтроки +- ДатаСогласования +- Согласован +- ФормаОплаты +- БанковскийСчет +- БанковскийСчетКонтрагента +- Касса +- СуммаАвансаДоОбеспечения +- СуммаПредоплатыДоОтгрузки +- ДатаОтгрузки +- АдресДоставки +- НалогообложениеНДС +- СкидкиРассчитаны +- ХозяйственнаяОперация +- Комментарий +- НомерПоДаннымКлиента +- ДатаПоДаннымКлиента +- Грузоотправитель +- Грузополучатель +- БанковскийСчетГрузоотправителя +- БанковскийСчетГрузополучателя +- ГруппаФинансовогоУчета +- КартаЛояльности +- Договор +- Подразделение +- Автор +- ПорядокРасчетов +- Назначение +- СпособДоставки +- ПеревозчикПартнер +- ЗонаДоставки + +**Реквизиты, присутствующие только в новой конфигурации:** +- `ВремяДоставкиС` (xs:dateTime) - **НОВОЕ ПОЛЕ** +- `ВремяДоставкиПо` (xs:dateTime) - **НОВОЕ ПОЛЕ** + +**Реквизиты, присутствующие только в старой конфигурации:** +- `УдалитьПриоритет` (xs:boolean) - присутствует в старой конфигурации, отсутствует в новой + +**Важно:** +- Поля `ВремяДоставкиС` и `ВремяДоставкиПо` отсутствуют в старой конфигурации, при синхронизации будут пустыми +- Поле `УдалитьПриоритет` отсутствует в новой конфигурации, при синхронизации будет проигнорировано + +#### 2.1.2. Табличная часть "Товары" + +**Общие реквизиты (присутствуют в обеих конфигурациях):** +- ДатаОтгрузки +- Номенклатура +- Характеристика +- Упаковка +- КоличествоУпаковок +- Цена +- Сумма +- СтавкаНДС +- СуммаНДС +- СуммаСНДС +- Склад +- НомерСтроки +- ИдентификаторСтроки +- НоменклатураПартнера +- НоменклатураНабора +- ХарактеристикаНабора +- ВидЦены +- Назначение + +**Важное отличие от документа "РеализацияТоваровУслуг":** +- В табличной части "Товары" документа "ЗаказКлиента" **отсутствуют** поля: + - `АналитикаУчетаНоменклатуры` + - `АналитикаУчетаНаборов` + +**Вывод:** Политика учета номенклатур в документе "ЗаказКлиента" определяется по номенклатуре из справочника, а не хранится в документе. Это упрощает синхронизацию, но требует проверки соответствия политики учета при сопоставлении номенклатур. + +### 2.2. Различия в структуре данных + +#### 2.2.1. Политика учета номенклатур + +**Проблема:** +При сопоставлении номенклатур между старой и новой конфигурациями могут возникать различия в политике учета: + +1. **Разные политики учета:** + - В старой конфигурации номенклатура может иметь одну политику учета + - В новой конфигурации та же номенклатура может иметь другую политику учета + - Это может привести к ошибкам при синхронизации или неправильному учету при создании документов реализации + +2. **Отсутствие политики учета:** + - В старой конфигурации политика учета может отсутствовать + - В новой конфигурации политика учета обязательна + - Требуется установка политики учета по умолчанию + +**Особенность документа "ЗаказКлиента":** +- Политика учета не хранится в документе, а определяется по номенклатуре +- При синхронизации необходимо проверять соответствие политики учета номенклатуры в новой конфигурации +- Если политика учета отличается, требуется либо предупреждение, либо установка политики учета по умолчанию + +**Решение:** +- При синхронизации проверять соответствие политики учета номенклатуры +- При несоответствии - логировать предупреждение +- При необходимости - устанавливать политику учета по умолчанию для номенклатуры в новой конфигурации + +#### 2.2.2. Признак маркировки товаров + +**Проблема:** +В новой конфигурации номенклатура может иметь признак маркировки, который отсутствует в старой конфигурации: + +1. **Отсутствие данных:** + - В старой конфигурации нет информации о маркировке товаров + - При синхронизации заказа с маркируемыми товарами это не влияет на сам заказ + - Но может потребоваться обработка при создании документов реализации на основе заказа + +2. **Логика обработки:** + - Необходимо определить, как обрабатывать маркируемые товары при синхронизации заказа + - Возможно, требуется проверка номенклатуры на признак маркировки + - При создании документов реализации на основе заказа потребуется установка значения `ВариантВыбытияМаркируемойПродукции` + +**Решение:** +- При синхронизации заказа проверка маркировки не требуется (заказ не содержит информации о маркировке) +- При создании документов реализации на основе заказа - проверять признак маркировки номенклатуры и устанавливать значение по умолчанию + +#### 2.2.3. Новые реквизиты времени доставки + +**Проблема:** +В новой конфигурации присутствуют реквизиты `ВремяДоставкиС` и `ВремяДоставкиПо`, которые отсутствуют в старой конфигурации: + +1. **Отсутствие данных:** + - В старой конфигурации нет информации о времени доставки + - При синхронизации эти поля будут пустыми + - Может потребоваться заполнение по умолчанию или на основе других данных + +2. **Логика обработки:** + - Необходимо определить, как обрабатывать отсутствующие данные о времени доставки + - Возможно, требуется установка значений по умолчанию + - Или оставлять поля пустыми для последующего заполнения вручную + +**Решение:** +- При синхронизации из старой конфигурации - оставлять поля `ВремяДоставкиС` и `ВремяДоставкиПо` пустыми +- При необходимости - устанавливать значения по умолчанию на основе `ДатаОтгрузки` или других данных + +#### 2.2.4. Отсутствующий реквизит "УдалитьПриоритет" + +**Проблема:** +В старой конфигурации присутствует реквизит `УдалитьПриоритет`, который отсутствует в новой конфигурации: + +1. **Потеря данных:** + - При синхронизации значение реквизита `УдалитьПриоритет` будет потеряно + - Необходимо определить, критична ли эта потеря данных + +2. **Логика обработки:** + - Если реквизит не критичен - игнорировать при синхронизации + - Если критичен - требуется доработка новой конфигурации для поддержки этого реквизита + +**Решение:** +- При синхронизации из старой конфигурации - игнорировать реквизит `УдалитьПриоритет` +- Если функционал критичен - рассмотреть возможность добавления реквизита в новую конфигурацию через расширение + +--- + +## 3. Анализ версий XDTO + +### 3.1. Версии XDTO в конфигурациях + +**Старая конфигурация:** +- Применяется максимально доступная версия XDTO для документа "ЗаказКлиента" +- Версия определяется возможностями старой конфигурации + +**Новая конфигурация:** +- Поддерживает более новые версии XDTO +- Может содержать дополнительные поля и структуры + +### 3.2. Проблемы совместимости + +#### 3.2.1. Несовместимость версий + +**Проблема:** +- Старая конфигурация использует максимально доступную версию XDTO +- Новая конфигурация может ожидать более новую версию XDTO +- Это может привести к ошибкам при обмене + +**Решение:** +- Использовать версию XDTO, совместимую с обеими конфигурациями +- При необходимости - преобразование данных между версиями +- Обработка отсутствующих полей в старой версии XDTO + +#### 3.2.2. Отсутствующие поля в XDTO + +**Проблема:** +В старой версии XDTO могут отсутствовать поля, присутствующие в новой: +- `ВремяДоставкиС` +- `ВремяДоставкиПо` +- Дополнительные поля, связанные с маркировкой (если будут добавлены в будущем) + +**Решение:** +- При формировании XDTO в старой конфигурации - не включать отсутствующие поля +- При получении XDTO в новой конфигурации - обрабатывать отсутствующие поля как пустые +- Устанавливать значения по умолчанию для отсутствующих полей при необходимости + +--- + +## 4. Необходимые доработки в расширении новой конфигурации + +### 4.1. Обработка политики учета номенклатур + +#### 4.1.1. Доработка модуля обмена + +**Расположение:** Расширение новой конфигурации +**Модуль:** `МенеджерОбменаЧерезУниверсальныйФормат` (расширение) + +**Необходимые изменения:** + +1. **Добавить проверку политики учета при получении документа:** + +```bsl +// В процедуре обработки получения документа ЗаказКлиента +Процедура ОбработатьПолитикуУчетаНоменклатур(ДокументОбъект, ТабличнаяЧастьТовары) + + Для Каждого СтрокаТовары Из ТабличнаяЧастьТовары Цикл + + Если ЗначениеЗаполнено(СтрокаТовары.Номенклатура) Тогда + + // Получаем политику учета из новой конфигурации + ПолитикаУчетаНовойКонфигурации = ПолучитьПолитикуУчетаНоменклатуры(СтрокаТовары.Номенклатура); + + // Проверяем наличие политики учета + Если НЕ ЗначениеЗаполнено(ПолитикаУчетаНовойКонфигурации) Тогда + + // Логируем предупреждение + ЗаписатьВЖурналРегистрации("ОбменДанными", + УровеньЖурналаРегистрации.Предупреждение, + "У номенклатуры отсутствует политика учета при синхронизации заказа", + Новый Структура("Номенклатура", СтрокаТовары.Номенклатура, + "Документ", ДокументОбъект)); + КонецЕсли; + + КонецЕсли; + + КонецЦикла; + +КонецПроцедуры +``` + +2. **Добавить функцию получения политики учета:** + +```bsl +Функция ПолучитьПолитикуУчетаНоменклатуры(Номенклатура) + + Запрос = Новый Запрос; + Запрос.Текст = + "ВЫБРАТЬ ПЕРВЫЕ 1 + | Номенклатура.ПолитикаУчетаНоменклатуры КАК ПолитикаУчетаНоменклатуры + |ИЗ + | Справочник.Номенклатура КАК Номенклатура + |ГДЕ + | Номенклатура.Ссылка = &Номенклатура"; + + Запрос.УстановитьПараметр("Номенклатура", Номенклатура); + Результат = Запрос.Выполнить(); + + Выборка = Результат.Выбрать(); + Если Выборка.Следующий() Тогда + Возврат Выборка.ПолитикаУчетаНоменклатуры; + Иначе + Возврат Неопределено; + КонецЕсли; + +КонецФункции +``` + +#### 4.1.2. Обработка ошибок сопоставления + +**Необходимо добавить:** +- Обработку случаев, когда политика учета не найдена +- Логирование всех случаев отсутствия политики учета +- Предупреждения пользователю при необходимости + +### 4.2. Обработка признака маркировки товаров + +#### 4.2.1. Доработка модуля обмена + +**Расположение:** Расширение новой конфигурации +**Модуль:** `МенеджерОбменаЧерезУниверсальныйФормат` (расширение) + +**Особенность для документа "ЗаказКлиента":** +- Документ "ЗаказКлиента" не содержит информации о маркировке товаров +- Проверка маркировки не требуется при синхронизации заказа +- Обработка маркировки потребуется при создании документов реализации на основе заказа + +**Необходимые изменения:** + +1. **Добавить проверку маркировки при создании документов реализации (не при синхронизации заказа):** + +```bsl +// В процедуре создания документа РеализацияТоваровУслуг на основе заказа +Процедура ОбработатьМаркировкуТоваровПриСозданииРеализации(ДокументРеализации, ЗаказКлиента) + + ЕстьМаркируемыеТовары = Ложь; + + Для Каждого СтрокаТовары Из ДокументРеализации.Товары Цикл + + Если ЗначениеЗаполнено(СтрокаТовары.Номенклатура) Тогда + + // Проверяем признак маркировки номенклатуры + Если НоменклатураМаркируемая(СтрокаТовары.Номенклатура) Тогда + + ЕстьМаркируемыеТовары = Истина; + + // Если поле не заполнено, устанавливаем значение по умолчанию + Если НЕ ЗначениеЗаполнено(ДокументРеализации.ВариантВыбытияМаркируемойПродукции) Тогда + ДокументРеализации.ВариантВыбытияМаркируемойПродукции = + Перечисления.ВариантыВыбытияМаркируемойПродукции.Реализация; + КонецЕсли; + + КонецЕсли; + + КонецЕсли; + + КонецЦикла; + + // Если маркируемых товаров нет, очищаем поле + Если НЕ ЕстьМаркируемыеТовары Тогда + ДокументРеализации.ВариантВыбытияМаркируемойПродукции = Неопределено; + КонецЕсли; + +КонецПроцедуры +``` + +2. **Добавить функцию проверки маркировки:** + +```bsl +Функция НоменклатураМаркируемая(Номенклатура) + + Запрос = Новый Запрос; + Запрос.Текст = + "ВЫБРАТЬ ПЕРВЫЕ 1 + | Номенклатура.Маркируемый КАК Маркируемый + |ИЗ + | Справочник.Номенклатура КАК Номенклатура + |ГДЕ + | Номенклатура.Ссылка = &Номенклатура"; + + Запрос.УстановитьПараметр("Номенклатура", Номенклатура); + Результат = Запрос.Выполнить(); + + Выборка = Результат.Выбрать(); + Если Выборка.Следующий() Тогда + Возврат Выборка.Маркируемый = Истина; + Иначе + Возврат Ложь; + КонецЕсли; + +КонецФункции +``` + +#### 4.2.2. Обработка отсутствующих данных + +**Необходимо:** +- При синхронизации заказа проверка маркировки не требуется +- При создании документов реализации на основе заказа - проверять признак маркировки и устанавливать значение по умолчанию + +### 4.3. Обработка новых реквизитов времени доставки + +#### 4.3.1. Доработка модуля обмена + +**Расположение:** Расширение новой конфигурации +**Модуль:** `МенеджерОбменаЧерезУниверсальныйФормат` (расширение) + +**Необходимые изменения:** + +1. **Добавить обработку отсутствующих полей времени доставки:** + +```bsl +// В процедуре обработки получения документа ЗаказКлиента +Процедура ОбработатьВремяДоставки(ДокументОбъект) + + // Если поля времени доставки отсутствуют в XDTO, они будут пустыми + // Можно установить значения по умолчанию на основе ДатаОтгрузки + Если НЕ ЗначениеЗаполнено(ДокументОбъект.ВремяДоставкиС) + И ЗначениеЗаполнено(ДокументОбъект.ДатаОтгрузки) Тогда + + // Устанавливаем время доставки по умолчанию (например, с 9:00) + ДокументОбъект.ВремяДоставкиС = НачалоДня(ДокументОбъект.ДатаОтгрузки) + 9 * 3600; + + КонецЕсли; + + Если НЕ ЗначениеЗаполнено(ДокументОбъект.ВремяДоставкиПо) + И ЗначениеЗаполнено(ДокументОбъект.ДатаОтгрузки) Тогда + + // Устанавливаем время доставки по умолчанию (например, до 18:00) + ДокументОбъект.ВремяДоставкиПо = НачалоДня(ДокументОбъект.ДатаОтгрузки) + 18 * 3600; + + КонецЕсли; + +КонецПроцедуры +``` + +**Альтернативный вариант:** +- Оставлять поля пустыми для последующего заполнения вручную +- Не устанавливать значения по умолчанию + +### 4.4. Адаптация XDTO-структур + +#### 4.4.1. Обработка версий XDTO + +**Расположение:** Расширение новой конфигурации +**Модуль:** `МенеджерОбменаЧерезУниверсальныйФормат` (расширение) + +**Необходимые изменения:** + +1. **Добавить обработку отсутствующих полей в XDTO:** + +```bsl +// В процедуре обработки получения XDTO +Процедура ОбработатьОтсутствующиеПоляXDTO(СтрокаXDTO, СтруктураДанныхСтроки) + + // Обработка полей ВремяДоставкиС и ВремяДоставкиПо + Если НЕ СтрокаXDTO.Свойство("ВремяДоставкиС") Тогда + // Поле отсутствует в старой версии XDTO + СтруктураДанныхСтроки.ВремяДоставкиС = Неопределено; + Иначе + СтруктураДанныхСтроки.ВремяДоставкиС = СтрокаXDTO.ВремяДоставкиС; + КонецЕсли; + + Если НЕ СтрокаXDTO.Свойство("ВремяДоставкиПо") Тогда + // Поле отсутствует в старой версии XDTO + СтруктураДанныхСтроки.ВремяДоставкиПо = Неопределено; + Иначе + СтруктураДанныхСтроки.ВремяДоставкиПо = СтрокаXDTO.ВремяДоставкиПо; + КонецЕсли; + +КонецПроцедуры +``` + +2. **Добавить преобразование версий XDTO:** + +```bsl +Функция ПреобразоватьXDTOКНовойВерсии(СтрокаXDTOСтараяВерсия) + + // Создаем структуру для новой версии XDTO + СтрокаXDTONоваяВерсия = Новый Структура; + + // Копируем все поля из старой версии + Для Каждого КлючЗначение Из СтрокаXDTOСтараяВерсия Цикл + СтрокаXDTONоваяВерсия.Вставить(КлючЗначение.Ключ, КлючЗначение.Значение); + КонецЦикла; + + // Добавляем отсутствующие поля с значениями по умолчанию + Если НЕ СтрокаXDTONоваяВерсия.Свойство("ВремяДоставкиС") Тогда + СтрокаXDTONоваяВерсия.Вставить("ВремяДоставкиС", Неопределено); + КонецЕсли; + + Если НЕ СтрокаXDTONоваяВерсия.Свойство("ВремяДоставкиПо") Тогда + СтрокаXDTONоваяВерсия.Вставить("ВремяДоставкиПо", Неопределено); + КонецЕсли; + + Возврат СтрокаXDTONоваяВерсия; + +КонецФункции +``` + +#### 4.4.2. Обработка ошибок версий + +**Необходимо:** +- Проверять версию XDTO при получении +- Преобразовывать данные между версиями при необходимости +- Логировать случаи несовместимости версий + +### 4.5. Обработка отсутствующего реквизита "УдалитьПриоритет" + +#### 4.5.1. Доработка модуля обмена + +**Расположение:** Расширение новой конфигурации +**Модуль:** `МенеджерОбменаЧерезУниверсальныйФормат` (расширение) + +**Необходимые изменения:** + +1. **Добавить обработку отсутствующего реквизита:** + +```bsl +// В процедуре обработки получения документа ЗаказКлиента +Процедура ОбработатьОтсутствующийРеквизитУдалитьПриоритет(СтрокаXDTO, СтруктураДанныхСтроки) + + // Если в старой конфигурации есть реквизит УдалитьПриоритет, он будет проигнорирован + // Логируем информацию для анализа + Если СтрокаXDTO.Свойство("УдалитьПриоритет") + И СтрокаXDTO.УдалитьПриоритет = Истина Тогда + + ЗаписатьВЖурналРегистрации("ОбменДанными", + УровеньЖурналаРегистрации.Информация, + "Реквизит УдалитьПриоритет проигнорирован при синхронизации (отсутствует в новой конфигурации)", + Новый Структура("Документ", СтруктураДанныхСтроки.Ссылка)); + КонецЕсли; + +КонецПроцедуры +``` + +**Альтернативный вариант:** +- Если функционал критичен - добавить реквизит `УдалитьПриоритет` в новую конфигурацию через расширение + +--- + +## 5. План реализации доработок + +### 5.1. Этап 1: Подготовка + +1. **Анализ текущего состояния:** + - Проверить наличие модуля обмена в расширении новой конфигурации + - Изучить текущую логику обработки документа "ЗаказКлиента" + - Определить точки входа для доработок + +2. **Определение требований:** + - Уточнить логику обработки политики учета + - Определить правила обработки времени доставки + - Уточнить версии XDTO, используемые в обмене + - Определить критичность реквизита "УдалитьПриоритет" + +### 5.2. Этап 2: Реализация доработок + +1. **Доработка обработки политики учета:** + - Добавить функции получения и проверки политики учета + - Реализовать логику проверки политики учета при синхронизации + - Добавить логирование предупреждений + +2. **Доработка обработки времени доставки:** + - Реализовать обработку отсутствующих полей времени доставки + - Добавить установку значений по умолчанию (если требуется) + - Обеспечить обратную совместимость + +3. **Адаптация XDTO:** + - Реализовать обработку отсутствующих полей + - Добавить преобразование версий XDTO + - Обеспечить обратную совместимость + +4. **Обработка реквизита "УдалитьПриоритет":** + - Реализовать логирование игнорирования реквизита + - Оценить необходимость добавления реквизита в новую конфигурацию + +### 5.3. Этап 3: Тестирование + +1. **Функциональное тестирование:** + - Тестирование синхронизации с различными политиками учета + - Тестирование синхронизации с отсутствующими полями времени доставки + - Тестирование обработки отсутствующих полей + +2. **Тестирование совместимости:** + - Тестирование обмена с различными версиями XDTO + - Тестирование обработки ошибок + - Тестирование производительности + +### 5.4. Этап 4: Внедрение + +1. **Развертывание:** + - Установка доработок в тестовой среде + - Проверка работы синхронизации + - Исправление выявленных ошибок + +2. **Внедрение в продуктив:** + - Установка доработок в продуктивной среде + - Мониторинг работы синхронизации + - Обработка инцидентов + +--- + +## 6. Риски и рекомендации + +### 6.1. Риски + +1. **Потеря данных:** + - Риск потери информации о времени доставки при синхронизации + - Риск неправильной обработки политики учета + - Риск ошибок при преобразовании версий XDTO + +2. **Производительность:** + - Дополнительные запросы для проверки политики учета могут замедлить синхронизацию + - Обработка времени доставки для каждого документа может увеличить время обмена + +3. **Совместимость:** + - Несовместимость версий XDTO может привести к ошибкам обмена + - Изменения в структуре документа могут нарушить работу синхронизации + +4. **Функциональность:** + - Потеря функционала реквизита "УдалитьПриоритет" может повлиять на бизнес-процессы + - Отсутствие времени доставки может потребовать ручного заполнения + +### 6.2. Рекомендации + +1. **Рекомендации по реализации:** + - Использовать кэширование данных о политике учета для повышения производительности + - Реализовать пакетную обработку документов + - Добавить подробное логирование для отладки + +2. **Рекомендации по тестированию:** + - Провести тестирование на реальных данных + - Протестировать различные сценарии синхронизации + - Проверить обработку граничных случаев + +3. **Рекомендации по мониторингу:** + - Настроить мониторинг ошибок синхронизации + - Отслеживать случаи отсутствия политики учета + - Контролировать производительность обмена + +4. **Рекомендации по функциональности:** + - Оценить критичность реквизита "УдалитьПриоритет" для бизнес-процессов + - Определить необходимость добавления реквизита в новую конфигурацию + - Рассмотреть возможность автоматического заполнения времени доставки + +--- + +## 7. Заключение + +### 7.1. Итоговые выводы + +1. **Типовой механизм синхронизации** присутствует в обеих конфигурациях и поддерживает передачу документа "ЗаказКлиента" + +2. **Требуются доработки** для обработки: + - Различий в политике учета номенклатур (проверка при синхронизации) + - Признака маркировки товаров (обработка при создании документов реализации) + - Несовместимости версий XDTO + - Новых реквизитов времени доставки + +3. **Критичность доработок:** СРЕДНЯЯ-ВЫСОКАЯ + - Без доработок возможна потеря данных о времени доставки + - Возможны предупреждения о несоответствии политики учета + - Может нарушиться корректность учета при создании документов реализации + +### 7.2. Особенности документа "ЗаказКлиента" + +1. **Отличие от документа "РеализацияТоваровУслуг":** + - В табличной части "Товары" отсутствуют поля `АналитикаУчетаНоменклатуры` и `АналитикаУчетаНаборов` + - Политика учета определяется по номенклатуре, а не хранится в документе + - Это упрощает синхронизацию, но требует проверки соответствия политики учета + +2. **Новые реквизиты:** + - В новой конфигурации добавлены реквизиты `ВремяДоставкиС` и `ВремяДоставкиПо` + - При синхронизации из старой конфигурации эти поля будут пустыми + +3. **Отсутствующий реквизит:** + - В старой конфигурации есть реквизит `УдалитьПриоритет`, которого нет в новой + - Требуется оценка критичности функционала + +### 7.3. Следующие шаги + +1. Уточнить требования к обработке политики учета и времени доставки +2. Оценить критичность реквизита "УдалитьПриоритет" +3. Реализовать доработки в расширении новой конфигурации +4. Провести тестирование синхронизации +5. Внедрить доработки в продуктивную среду + +--- + +## Приложения + +### Приложение А. Список проверенных файлов + +**Старая конфигурация:** +- `crm3-dev/src/ExchangePlans/СинхронизацияДанныхЧерезУниверсальныйФормат/` +- `crm3-dev/src/Documents/ЗаказКлиента/` +- `crm3-dev.rhana/src/Documents/ЗаказКлиента/` + +**Новая конфигурация:** +- `crm3-26-promo/src/ExchangePlans/СинхронизацияДанныхЧерезУниверсальныйФормат/` +- `crm3-26-promo/src/Documents/ЗаказКлиента/` + +### Приложение Б. Сравнительная таблица реквизитов + +| Реквизит | Старая конфигурация | Новая конфигурация | Требуется обработка | +|----------|---------------------|-------------------|---------------------| +| ВремяДоставкиС | ❌ Нет | ✅ Есть | ✅ Да (установка по умолчанию) | +| ВремяДоставкиПо | ❌ Нет | ✅ Есть | ✅ Да (установка по умолчанию) | +| УдалитьПриоритет | ✅ Есть | ❌ Нет | ⚠️ Логирование (оценка критичности) | +| АналитикаУчетаНоменклатуры (в ТЧ Товары) | ❌ Нет | ❌ Нет | ❌ Нет (не используется) | +| АналитикаУчетаНаборов (в ТЧ Товары) | ❌ Нет | ❌ Нет | ❌ Нет (не используется) | + +### Приложение В. Справочная информация + +**XDTO версии:** +- Максимально доступная версия XDTO в старой конфигурации определяется возможностями конфигурации +- Новая конфигурация поддерживает более новые версии XDTO + +**Политика учета:** +- Политика учета номенклатур не хранится в документе "ЗаказКлиента" +- Политика учета определяется по номенклатуре из справочника +- Требуется проверка соответствия политики учета при сопоставлении номенклатур + +**Маркировка товаров:** +- Признак маркировки присутствует только в новой конфигурации +- При синхронизации заказа проверка маркировки не требуется +- Обработка маркировки потребуется при создании документов реализации на основе заказа + +**Время доставки:** +- Реквизиты `ВремяДоставкиС` и `ВремяДоставкиПо` присутствуют только в новой конфигурации +- При синхронизации из старой конфигурации эти поля будут пустыми +- Требуется установка значений по умолчанию или оставление пустыми для ручного заполнения + +--- + +**Примечание:** +- Данный анализ основан на изучении структуры конфигураций и типового механизма синхронизации +- Для точной реализации доработок требуется дополнительное изучение кода модулей обмена +- Рекомендуется провести тестирование на реальных данных перед внедрением в продуктивную среду +- Особое внимание следует уделить оценке критичности реквизита "УдалитьПриоритет" для бизнес-процессов diff --git a/docs__Анализ_доработок_синхронизации_РеализацияТоваровУслуг.md b/docs__Анализ_доработок_синхронизации_РеализацияТоваровУслуг.md new file mode 100644 index 0000000..53a4d95 --- /dev/null +++ b/docs__Анализ_доработок_синхронизации_РеализацияТоваровУслуг.md @@ -0,0 +1,589 @@ +--- +title: Анализ доработок синхронизации документа Реализация товаров и услуг +version: 1.0 +date_modified: 2026-01-12 +author: Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) +date_created: 2026-01-12 +show_metadata_block: true +show_index_link: true +--- + +# Анализ доработок синхронизации документа Реализация товаров и услуг + +## Версия документа + +Версия 1.0 от 12.01.2026 + +## Автор + +Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) + +## Цель анализа + +Оценить необходимость доработки при применении типового механизма синхронизации с передачей документа "Реализация товаров и услуг" из старой конфигурации (включая расширение) в новую конфигурацию. Определить, какие доработки требуются в расширении для новой конфигурации с учетом особенностей: + +- Различий в политике учета номенклатур при сопоставлении +- Признака маркировки товаров (присутствует только в новой конфигурации) +- Применения максимально доступной в старой конфигурации версии XDTO + +## Краткое резюме + +**Основные выводы:** + +1. **Типовой механизм синхронизации** - механизм "СинхронизацияДанныхЧерезУниверсальныйФормат" присутствует в обеих конфигурациях и поддерживает передачу документа "РеализацияТоваровУслуг" + +2. **Критические доработки, требующие реализации:** + - Обработка различий в политике учета номенклатур при сопоставлении + - Обработка признака маркировки товаров (новое поле в новой конфигурации) + - Адаптация XDTO-структур для совместимости версий + - Обработка различий в структуре табличной части "Товары" + +3. **Риски:** + - Потеря данных о политике учета при синхронизации + - Отсутствие информации о маркировке товаров в старой конфигурации + - Несовместимость версий XDTO может привести к ошибкам обмена + +**Детальный анализ:** см. разделы ниже + +--- + +## 1. Анализ типового механизма синхронизации + +### 1.1. Описание механизма + +**План обмена:** `СинхронизацияДанныхЧерезУниверсальныйФормат` + +**Назначение:** Типовой механизм синхронизации данных между конфигурациями через универсальный формат обмена. + +**Поддерживаемые объекты:** +- Документы (включая "РеализацияТоваровУслуг") +- Справочники +- Регистры сведений +- Регистры накопления + +### 1.2. Присутствие в конфигурациях + +**Старая конфигурация (`crm3-dev`):** +- ✅ План обмена присутствует +- ✅ Документ "РеализацияТоваровУслуг" включен в план обмена + +**Новая конфигурация (`crm3-26-promo`):** +- ✅ План обмена присутствует +- ✅ Документ "РеализацияТоваровУслуг" включен в план обмена + +**Вывод:** Типовой механизм синхронизации присутствует в обеих конфигурациях и поддерживает передачу документа "РеализацияТоваровУслуг". + +--- + +## 2. Анализ различий в структуре документа "РеализацияТоваровУслуг" + +### 2.1. Сравнение реквизитов документа + +#### 2.1.1. Реквизиты шапки документа + +**Общие реквизиты (присутствуют в обеих конфигурациях):** +- Партнер +- Контрагент +- Организация +- Склад +- ХозяйственнаяОперация +- Статус +- ДатаПереходаПраваСобственности +- ЗаказКлиента +- Договор +- Соглашение +- Валюта +- ЦенаВключаетНДС +- НалогообложениеНДС + +**Реквизиты, присутствующие только в новой конфигурации:** +- `ВариантВыбытияМаркируемойПродукции` (EnumRef.ВариантыВыбытияМаркируемойПродукции) - **НОВОЕ ПОЛЕ** + +**Реквизиты, присутствующие только в расширении старой конфигурации:** +- `р_СтатусДИАДОК` (строка) - статус по результату обмена ЭДО Диадок + +#### 2.1.2. Табличная часть "Товары" + +**Общие реквизиты (присутствуют в обеих конфигурациях):** +- Номенклатура +- Характеристика +- Серия +- Количество +- КоличествоУпаковок +- Цена +- Сумма +- СтавкаНДС +- СуммаНДС +- СуммаСНДС +- Склад +- Упаковка +- НомерСтроки +- ИдентификаторСтроки + +**Реквизиты, связанные с политикой учета:** +- `АналитикаУчетаНоменклатуры` (CatalogRef.КлючиАналитикиУчетаНоменклатуры) - присутствует в обеих конфигурациях +- `АналитикаУчетаНаборов` (CatalogRef.КлючиАналитикиУчетаНаборов) - присутствует в обеих конфигурациях + +**Важно:** Политика учета номенклатур может отличаться между конфигурациями, что требует специальной обработки при сопоставлении. + +### 2.2. Различия в структуре данных + +#### 2.2.1. Политика учета номенклатур + +**Проблема:** +При сопоставлении номенклатур между старой и новой конфигурациями могут возникать различия в политике учета: + +1. **Разные политики учета:** + - В старой конфигурации номенклатура может иметь одну политику учета + - В новой конфигурации та же номенклатура может иметь другую политику учета + - Это может привести к ошибкам при синхронизации или неправильному учету + +2. **Отсутствие политики учета:** + - В старой конфигурации политика учета может отсутствовать + - В новой конфигурации политика учета обязательна + - Требуется установка политики учета по умолчанию + +**Решение:** +- При синхронизации необходимо проверять соответствие политики учета +- При несоответствии - устанавливать политику учета по умолчанию или использовать политику из новой конфигурации +- Логировать случаи несоответствия для последующего анализа + +#### 2.2.2. Признак маркировки товаров + +**Проблема:** +В новой конфигурации присутствует реквизит `ВариантВыбытияМаркируемойПродукции`, который отсутствует в старой конфигурации: + +1. **Отсутствие данных:** + - В старой конфигурации нет информации о маркировке товаров + - При синхронизации это поле будет пустым + - Может потребоваться заполнение по умолчанию + +2. **Логика обработки:** + - Необходимо определить, как обрабатывать маркируемые товары при синхронизации + - Возможно, требуется проверка номенклатуры на признак маркировки + - Установка значения по умолчанию для немаркируемых товаров + +**Решение:** +- При синхронизации проверять признак маркировки номенклатуры в новой конфигурации +- Для маркируемых товаров устанавливать значение по умолчанию или определять логику заполнения +- Для немаркируемых товаров - оставлять поле пустым или устанавливать значение "НеПрименяется" + +--- + +## 3. Анализ версий XDTO + +### 3.1. Версии XDTO в конфигурациях + +**Старая конфигурация:** +- Применяется максимально доступная версия XDTO для документа "РеализацияТоваровУслуг" +- Версия определяется возможностями старой конфигурации + +**Новая конфигурация:** +- Поддерживает более новые версии XDTO +- Может содержать дополнительные поля и структуры + +### 3.2. Проблемы совместимости + +#### 3.2.1. Несовместимость версий + +**Проблема:** +- Старая конфигурация использует максимально доступную версию XDTO +- Новая конфигурация может ожидать более новую версию XDTO +- Это может привести к ошибкам при обмене + +**Решение:** +- Использовать версию XDTO, совместимую с обеими конфигурациями +- При необходимости - преобразование данных между версиями +- Обработка отсутствующих полей в старой версии XDTO + +#### 3.2.2. Отсутствующие поля в XDTO + +**Проблема:** +В старой версии XDTO могут отсутствовать поля, присутствующие в новой: +- `ВариантВыбытияМаркируемойПродукции` +- Дополнительные поля, связанные с маркировкой +- Поля, связанные с новой политикой учета + +**Решение:** +- При формировании XDTO в старой конфигурации - не включать отсутствующие поля +- При получении XDTO в новой конфигурации - обрабатывать отсутствующие поля как пустые +- Устанавливать значения по умолчанию для отсутствующих полей + +--- + +## 4. Необходимые доработки в расширении новой конфигурации + +### 4.1. Обработка политики учета номенклатур + +#### 4.1.1. Доработка модуля обмена + +**Расположение:** Расширение новой конфигурации +**Модуль:** `МенеджерОбменаЧерезУниверсальныйФормат` (расширение) + +**Необходимые изменения:** + +1. **Добавить обработку политики учета при получении документа:** + +```bsl +// В процедуре обработки получения документа РеализацияТоваровУслуг +Процедура ОбработатьПолитикуУчетаНоменклатур(ДокументОбъект, ТабличнаяЧастьТовары) + + Для Каждого СтрокаТовары Из ТабличнаяЧастьТовары Цикл + + Если ЗначениеЗаполнено(СтрокаТовары.Номенклатура) Тогда + + // Получаем политику учета из новой конфигурации + ПолитикаУчетаНовойКонфигурации = ПолучитьПолитикуУчетаНоменклатуры(СтрокаТовары.Номенклатура); + + // Проверяем соответствие политики учета + Если НЕ ЗначениеЗаполнено(СтрокаТовары.АналитикаУчетаНоменклатуры) + ИЛИ ПолитикаУчетаНовойКонфигурации <> ПолучитьПолитикуУчетаИзАналитики(СтрокаТовары.АналитикаУчетаНоменклатуры) Тогда + + // Устанавливаем политику учета из новой конфигурации + СтрокаТовары.АналитикаУчетаНоменклатуры = ПолучитьАналитикуУчетаПоПолитике( + СтрокаТовары.Номенклатура, + ПолитикаУчетаНовойКонфигурации + ); + + // Логируем изменение + ЗаписатьВЖурналРегистрации("ОбменДанными", + УровеньЖурналаРегистрации.Предупреждение, + "Изменена политика учета номенклатуры при синхронизации", + Новый Структура("Номенклатура", СтрокаТовары.Номенклатура, + "СтараяПолитика", СтрокаТовары.АналитикаУчетаНоменклатуры, + "НоваяПолитика", ПолитикаУчетаНовойКонфигурации)); + КонецЕсли; + + КонецЕсли; + + КонецЦикла; + +КонецПроцедуры +``` + +2. **Добавить функцию получения политики учета:** + +```bsl +Функция ПолучитьПолитикуУчетаНоменклатуры(Номенклатура) + + Запрос = Новый Запрос; + Запрос.Текст = + "ВЫБРАТЬ ПЕРВЫЕ 1 + | Номенклатура.ПолитикаУчетаНоменклатуры КАК ПолитикаУчетаНоменклатуры + |ИЗ + | Справочник.Номенклатура КАК Номенклатура + |ГДЕ + | Номенклатура.Ссылка = &Номенклатура"; + + Запрос.УстановитьПараметр("Номенклатура", Номенклатура); + Результат = Запрос.Выполнить(); + + Выборка = Результат.Выбрать(); + Если Выборка.Следующий() Тогда + Возврат Выборка.ПолитикаУчетаНоменклатуры; + Иначе + Возврат Неопределено; + КонецЕсли; + +КонецФункции +``` + +#### 4.1.2. Обработка ошибок сопоставления + +**Необходимо добавить:** +- Обработку случаев, когда политика учета не найдена +- Установку политики учета по умолчанию +- Логирование всех случаев изменения политики учета + +### 4.2. Обработка признака маркировки товаров + +#### 4.2.1. Доработка модуля обмена + +**Расположение:** Расширение новой конфигурации +**Модуль:** `МенеджерОбменаЧерезУниверсальныйФормат` (расширение) + +**Необходимые изменения:** + +1. **Добавить обработку маркировки при получении документа:** + +```bsl +// В процедуре обработки получения документа РеализацияТоваровУслуг +Процедура ОбработатьМаркировкуТоваров(ДокументОбъект, ТабличнаяЧастьТовары) + + ЕстьМаркируемыеТовары = Ложь; + + Для Каждого СтрокаТовары Из ТабличнаяЧастьТовары Цикл + + Если ЗначениеЗаполнено(СтрокаТовары.Номенклатура) Тогда + + // Проверяем признак маркировки номенклатуры + Если НоменклатураМаркируемая(СтрокаТовары.Номенклатура) Тогда + + ЕстьМаркируемыеТовары = Истина; + + // Если поле не заполнено, устанавливаем значение по умолчанию + Если НЕ ЗначениеЗаполнено(ДокументОбъект.ВариантВыбытияМаркируемойПродукции) Тогда + ДокументОбъект.ВариантВыбытияМаркируемойПродукции = + Перечисления.ВариантыВыбытияМаркируемойПродукции.Реализация; + КонецЕсли; + + КонецЕсли; + + КонецЕсли; + + КонецЦикла; + + // Если маркируемых товаров нет, очищаем поле + Если НЕ ЕстьМаркируемыеТовары Тогда + ДокументОбъект.ВариантВыбытияМаркируемойПродукции = Неопределено; + КонецЕсли; + +КонецПроцедуры +``` + +2. **Добавить функцию проверки маркировки:** + +```bsl +Функция НоменклатураМаркируемая(Номенклатура) + + Запрос = Новый Запрос; + Запрос.Текст = + "ВЫБРАТЬ ПЕРВЫЕ 1 + | Номенклатура.Маркируемый КАК Маркируемый + |ИЗ + | Справочник.Номенклатура КАК Номенклатура + |ГДЕ + | Номенклатура.Ссылка = &Номенклатура"; + + Запрос.УстановитьПараметр("Номенклатура", Номенклатура); + Результат = Запрос.Выполнить(); + + Выборка = Результат.Выбрать(); + Если Выборка.Следующий() Тогда + Возврат Выборка.Маркируемый = Истина; + Иначе + Возврат Ложь; + КонецЕсли; + +КонецФункции +``` + +#### 4.2.2. Обработка отсутствующих данных + +**Необходимо:** +- Проверять наличие признака маркировки в номенклатуре новой конфигурации +- Устанавливать значение по умолчанию для маркируемых товаров +- Очищать поле для немаркируемых товаров + +### 4.3. Адаптация XDTO-структур + +#### 4.3.1. Обработка версий XDTO + +**Расположение:** Расширение новой конфигурации +**Модуль:** `МенеджерОбменаЧерезУниверсальныйФормат` (расширование) + +**Необходимые изменения:** + +1. **Добавить обработку отсутствующих полей в XDTO:** + +```bsl +// В процедуре обработки получения XDTO +Процедура ОбработатьОтсутствующиеПоляXDTO(СтрокаXDTO, СтруктураДанныхСтроки) + + // Обработка поля ВариантВыбытияМаркируемойПродукции + Если НЕ СтрокаXDTO.Свойство("ВариантВыбытияМаркируемойПродукции") Тогда + // Поле отсутствует в старой версии XDTO + // Значение будет установлено позже при обработке маркировки + СтруктураДанныхСтроки.ВариантВыбытияМаркируемойПродукции = Неопределено; + Иначе + СтруктураДанныхСтроки.ВариантВыбытияМаркируемойПродукции = + СтрокаXDTO.ВариантВыбытияМаркируемойПродукции; + КонецЕсли; + +КонецПроцедуры +``` + +2. **Добавить преобразование версий XDTO:** + +```bsl +Функция ПреобразоватьXDTOКНовойВерсии(СтрокаXDTOСтараяВерсия) + + // Создаем структуру для новой версии XDTO + СтрокаXDTONоваяВерсия = Новый Структура; + + // Копируем все поля из старой версии + Для Каждого КлючЗначение Из СтрокаXDTOСтараяВерсия Цикл + СтрокаXDTONоваяВерсия.Вставить(КлючЗначение.Ключ, КлючЗначение.Значение); + КонецЦикла; + + // Добавляем отсутствующие поля с значениями по умолчанию + Если НЕ СтрокаXDTONоваяВерсия.Свойство("ВариантВыбытияМаркируемойПродукции") Тогда + СтрокаXDTONоваяВерсия.Вставить("ВариантВыбытияМаркируемойПродукции", Неопределено); + КонецЕсли; + + Возврат СтрокаXDTONоваяВерсия; + +КонецФункции +``` + +#### 4.3.2. Обработка ошибок версий + +**Необходимо:** +- Проверять версию XDTO при получении +- Преобразовывать данные между версиями при необходимости +- Логировать случаи несовместимости версий + +--- + +## 5. План реализации доработок + +### 5.1. Этап 1: Подготовка + +1. **Анализ текущего состояния:** + - Проверить наличие модуля обмена в расширении новой конфигурации + - Изучить текущую логику обработки документа "РеализацияТоваровУслуг" + - Определить точки входа для доработок + +2. **Определение требований:** + - Уточнить логику обработки политики учета + - Определить правила обработки маркировки товаров + - Уточнить версии XDTO, используемые в обмене + +### 5.2. Этап 2: Реализация доработок + +1. **Доработка обработки политики учета:** + - Добавить функции получения и проверки политики учета + - Реализовать логику установки политики учета при несоответствии + - Добавить логирование изменений + +2. **Доработка обработки маркировки:** + - Добавить функции проверки маркировки номенклатуры + - Реализовать логику установки значения по умолчанию + - Добавить обработку отсутствующих данных + +3. **Адаптация XDTO:** + - Реализовать обработку отсутствующих полей + - Добавить преобразование версий XDTO + - Обеспечить обратную совместимость + +### 5.3. Этап 3: Тестирование + +1. **Функциональное тестирование:** + - Тестирование синхронизации с различными политиками учета + - Тестирование синхронизации маркируемых товаров + - Тестирование обработки отсутствующих полей + +2. **Тестирование совместимости:** + - Тестирование обмена с различными версиями XDTO + - Тестирование обработки ошибок + - Тестирование производительности + +### 5.4. Этап 4: Внедрение + +1. **Развертывание:** + - Установка доработок в тестовой среде + - Проверка работы синхронизации + - Исправление выявленных ошибок + +2. **Внедрение в продуктив:** + - Установка доработок в продуктивной среде + - Мониторинг работы синхронизации + - Обработка инцидентов + +--- + +## 6. Риски и рекомендации + +### 6.1. Риски + +1. **Потеря данных:** + - Риск потери информации о политике учета при синхронизации + - Риск неправильной обработки маркируемых товаров + - Риск ошибок при преобразовании версий XDTO + +2. **Производительность:** + - Дополнительные запросы для проверки политики учета могут замедлить синхронизацию + - Обработка маркировки для каждой строки может увеличить время обмена + +3. **Совместимость:** + - Несовместимость версий XDTO может привести к ошибкам обмена + - Изменения в структуре документа могут нарушить работу синхронизации + +### 6.2. Рекомендации + +1. **Рекомендации по реализации:** + - Использовать кэширование данных о политике учета для повышения производительности + - Реализовать пакетную обработку строк табличной части + - Добавить подробное логирование для отладки + +2. **Рекомендации по тестированию:** + - Провести тестирование на реальных данных + - Протестировать различные сценарии синхронизации + - Проверить обработку граничных случаев + +3. **Рекомендации по мониторингу:** + - Настроить мониторинг ошибок синхронизации + - Отслеживать случаи изменения политики учета + - Контролировать производительность обмена + +--- + +## 7. Заключение + +### 7.1. Итоговые выводы + +1. **Типовой механизм синхронизации** присутствует в обеих конфигурациях и поддерживает передачу документа "РеализацияТоваровУслуг" + +2. **Требуются доработки** для обработки: + - Различий в политике учета номенклатур + - Признака маркировки товаров (новое поле) + - Несовместимости версий XDTO + +3. **Критичность доработок:** ВЫСОКАЯ + - Без доработок возможна потеря данных + - Возможны ошибки при синхронизации + - Может нарушиться корректность учета + +### 7.2. Следующие шаги + +1. Уточнить требования к обработке политики учета и маркировки +2. Реализовать доработки в расширении новой конфигурации +3. Провести тестирование синхронизации +4. Внедрить доработки в продуктивную среду + +--- + +## Приложения + +### Приложение А. Список проверенных файлов + +**Старая конфигурация:** +- `crm3-dev/src/ExchangePlans/СинхронизацияДанныхЧерезУниверсальныйФормат/` +- `crm3-dev/src/Documents/РеализацияТоваровУслуг/` +- `crm3-dev.rhana/src/Documents/РеализацияТоваровУслуг/` +- `crm3-dev.rhana/src/CommonModules/МенеджерОбменаЧерезУниверсальныйФормат/Ext/Module.bsl` + +**Новая конфигурация:** +- `crm3-26-promo/src/ExchangePlans/СинхронизацияДанныхЧерезУниверсальныйФормат/` +- `crm3-26-promo/src/Documents/РеализацияТоваровУслуг/` + +### Приложение Б. Справочная информация + +**XDTO версии:** +- Максимально доступная версия XDTO в старой конфигурации определяется возможностями конфигурации +- Новая конфигурация поддерживает более новые версии XDTO + +**Политика учета:** +- Политика учета номенклатур может различаться между конфигурациями +- Требуется проверка и установка правильной политики при синхронизации + +**Маркировка товаров:** +- Признак маркировки присутствует только в новой конфигурации +- Требуется обработка отсутствующих данных при синхронизации + +--- + +**Примечание:** +- Данный анализ основан на изучении структуры конфигураций и типового механизма синхронизации +- Для точной реализации доработок требуется дополнительное изучение кода модулей обмена +- Рекомендуется провести тестирование на реальных данных перед внедрением в продуктивную среду diff --git a/docs__Анализ_доработок_складского_учета_и_печати_документов.md b/docs__Анализ_доработок_складского_учета_и_печати_документов.md new file mode 100644 index 0000000..7411155 --- /dev/null +++ b/docs__Анализ_доработок_складского_учета_и_печати_документов.md @@ -0,0 +1,1182 @@ +--- +title: Анализ доработок складского учета и печати документов +version: 4.0 +date_modified: 2025-01-27 +author: Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) +date_created: 2025-01-27 +show_metadata_block: true +show_index_link: true +--- + +# Анализ доработок складского учета и печати документов + +## Версия документа + +Версия 4.0 от 27.01.2025 + +**Изменения в версии 4.0:** + +- Объединены два документа анализа в один: + - "Анализ необходимости переноса функционала печати пакета документов и доработок складского учета" (v3.0) + - "Анализ доработок формы приёмки (УправлениеПоступлением.Форма.Форма) складского учета" (v1.1) +- Добавлен раздел 4 "Анализ формы приёмки (УправлениеПоступлением)" +- Обновлено краткое резюме с учетом анализа формы приёмки +- Объединены разделы сравнения с эталонной конфигурацией + +**Изменения в версии 3.0:** + +- Реорганизована структура документа: типовой функционал вынесен в отдельный раздел +- Раздел "Сравнение доработок с эталонной конфигурацией" перемещен в начало документа (раздел 1) +- Создан раздел 2 "Типовой функционал (не требует переноса)" для четкого разделения типового и кастомного функционала +- Раздел 3 "Кастомные доработки, требующие переноса" сфокусирован на доработках, которые необходимо перенести + +## Автор + +Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) + +## Цель анализа + +Провести глубокий анализ по необходимости переноса из исходной конфигурации (включая расширение) в целевую **кастомных доработок** функционала: + +1. **Печати пакета документов** (ТОРГ-12, Счет-фактура и сопроводительные документы) при формировании ордера на отгрузку (складской учет) +2. **Складского учета и логистики** - доработки в разделах складского учета и логистики +3. **Формы приёмки** (`Обработка.УправлениеПоступлением.Форма.Форма`) - доработки в форме управления поступлением товаров + +**Важно:** + +- В данном анализе основное внимание уделяется **кастомным доработкам**, требующим переноса. +- Типовой функционал, присутствующий в эталонной конфигурации `CRM302228_etalon` (или `crm302228-etalon`), вынесен в раздел 2 и **не требует переноса**. +- Все кастомные доработки, требующие переноса, описаны в разделе 3. + +**Сравниваемые конфигурации:** + +- **Исходная конфигурация:** `crm3-dev` (с расширением `CRM3devLocal.Рана`) +- **Целевая конфигурация:** `crm3-26-promo` (с расширением) +- **Эталонная конфигурация:** `CRM302228_etalon` / `crm302228-etalon` - для определения типового функционала + +## Краткое резюме + +**Типовой функционал (не требует переноса):** + +- Процедуры и функции печати в документе РасходныйОрдерНаТовары (`ДобавитьКомандыПечати()`, `Печать()`, `ПечатьРасходногоОрдераНаТовары()`) +- Команды печати ТОРГ-12 в модуле `РеализацияТоваровУслугЛокализация` +- Реквизит и функционал `ЗакрыватьГрафикПоступления` в форме приёмки (присутствует в эталонной конфигурации) +- Соединение с регистром `ДвижениеТоваров` в запросе формы приёмки (присутствует в эталонной конфигурации) + +**Кастомные доработки, требующие переноса (критические):** + +1. Функционал печати расходного ордера по основанию (модули локализации + функции в документе РасходныйОрдерНаТовары) +2. Раздел "Комплект печатных документов" в форме УправлениеОтгрузкой +3. Раздел "Дополнительная обработка" в форме НастройкаПечатиКомплекта + +**Анализ формы приёмки:** + +- Все выявленные различия между старой и новой конфигурациями являются типовым функционалом или улучшениями архитектуры +- Кастомных доработок, требующих переноса, не выявлено +- Если типовой функционал отсутствует в новой конфигурации, рекомендуется проверить причину и восстановить из эталонной конфигурации + +**Детальный анализ:** см. разделы 3 и 4 + +--- + +## 1. Сравнение доработок с эталонной типовой конфигурацией + +### 1.1. Методология сравнения + +**Эталонная конфигурация:** `CRM302228_etalon` / `crm302228-etalon` - типовая эталонная конфигурация версии исходной конфигурации. + +**Цель сравнения:** Определить, какие "доработки" в исходной конфигурации на самом деле являются типовыми (присутствуют в эталонной конфигурации), а какие являются кастомными доработками, требующими переноса. + +### 1.2. Результаты сравнения + +#### 1.2.1. Документ "РасходныйОрдерНаТовары" + +**Типовой функционал (присутствует в эталоне):** + +- ✅ Процедура `ДобавитьКомандыПечати()` - добавляет команды печати: + - "Расходный ордер на товары" + - "Задание на отбор товаров" +- ✅ Процедура `Печать()` - выполняет печать расходного ордера +- ✅ Функция `ПечатьРасходногоОрдераНаТовары()` - формирует печатную форму расходного ордера +- ✅ Функция `ПолучитьДанныеДляПечатнойФормыОтборРазмещениеТоваров()` - получает данные для печати задания на отбор + +**Кастомные доработки (отсутствуют в эталоне):** + +- ❌ Функция `р_СформироватьПечатнуюФормуОрдераПоОснованию` - формирует печатную форму расходного ордера на основе документов-оснований +- ❌ Функция `р_ПолучитьОрдерыНаПечать` - получает список расходных ордеров, связанных с документами-основаниями +- ❌ Переопределение функции `р_ПечатьРасходногоОрдераНаТовары` - расширенная печатная форма с дополнительными данными по доставке + +#### 1.2.2. Модули локализации + +**Модуль `РеализацияТоваровУслугЛокализация`:** + +**Типовой функционал:** + +- ✅ Модуль присутствует в эталонной конфигурации +- ✅ Процедура `ДобавитьКомандыПечати()` с командами печати ТОРГ-12 (НЕ закомментированы в эталоне) + +**Кастомные доработки:** + +- ❌ Функционал добавления печатной формы "РасходныйОрдерНаТовары" в комплект печатных форм +- ❌ Процедура `СформироватьКомплектПечатныхФорм()` с логикой формирования печатной формы расходного ордера +- ❌ Процедура `КомплектПечатныхФорм()` с добавлением печатной формы расходного ордера + +**Модуль `ПеремещениеТоваровЛокализация`:** + +**Типовой функционал:** + +- ✅ Модуль присутствует в эталонной конфигурации +- ✅ Процедура `ДобавитьКомандыПечати()` с командами печати (ТОРГ-13, М-11, ТТН и др.) + +**Кастомные доработки:** + +- ❌ Функционал добавления печатной формы "РасходныйОрдерНаТовары" в комплект печатных форм +- ❌ Процедура `СформироватьКомплектПечатныхФорм()` с логикой формирования печатной формы расходного ордера +- ❌ Процедура `КомплектПечатныхФорм()` с добавлением печатной формы расходного ордера + +#### 1.2.3. Форма приёмки (УправлениеПоступлением.Форма.Форма) + +**Типовой функционал (присутствует в эталоне):** + +- ✅ Реквизит `ЗакрыватьГрафикПоступления` присутствует в документе `ПриходныйОрдерНаТовары` +- ✅ Колонка `ЗакрыватьГрафикПоступления` присутствует в форме `УправлениеПоступлением.Форма.Форма` +- ✅ Расчет поля `ЗакрыватьГрафикПоступления` присутствует в запросе `ЗаполнитьРаспоряженияНаПоступление` +- ✅ Передача параметра `ЗакрыватьГрафикПоступления` присутствует в процедуре `СоздатьОрдер` +- ✅ Соединение с регистром `ДвижениеТоваров` присутствует в запросе + +**Вывод:** Функционал `ЗакрыватьГрафикПоступления` является **типовым** и должен присутствовать в целевой конфигурации. Если он отсутствует, это может быть: +- Баг в целевой конфигурации +- Недоработка при обновлении типовой конфигурации +- Намеренное удаление функционала в более новой версии (требует проверки) + +### 1.3. Итоговая таблица сравнения + +| Объект/Функционал | Статус в эталоне | Тип | Требуется перенос | +|-------------------|------------------|-----|-------------------| +| Процедура `ДобавитьКомандыПечати()` в документе РасходныйОрдерНаТовары | ✅ Присутствует | Типовое | ❌ Нет | +| Процедура `Печать()` в документе РасходныйОрдерНаТовары | ✅ Присутствует | Типовое | ❌ Нет | +| Функция `ПечатьРасходногоОрдераНаТовары()` | ✅ Присутствует | Типовое | ❌ Нет | +| Команды печати ТОРГ-12 в модуле `РеализацияТоваровУслугЛокализация` | ✅ Присутствует | Типовое | ❌ Нет | +| Реквизит `ЗакрыватьГрафикПоступления` в документе ПриходныйОрдерНаТовары | ✅ Присутствует | Типовое | ❌ Нет (проверить наличие) | +| Колонка `ЗакрыватьГрафикПоступления` в форме УправлениеПоступлением | ✅ Присутствует | Типовое | ❌ Нет (проверить наличие) | +| Соединение с регистром `ДвижениеТоваров` | ✅ Присутствует | Типовое | ❌ Нет (проверить наличие) | +| Модуль `РеализацияТоваровУслугЛокализация`: добавление печатной формы расходного ордера | ❌ Отсутствует | Кастомная | ✅ Да | +| Модуль `ПеремещениеТоваровЛокализация`: добавление печатной формы расходного ордера | ❌ Отсутствует | Кастомная | ✅ Да | +| Функция `р_СформироватьПечатнуюФормуОрдераПоОснованию` | ❌ Отсутствует | Кастомная | ✅ Да | +| Функция `р_ПолучитьОрдерыНаПечать` | ❌ Отсутствует | Кастомная | ✅ Да | +| Переопределение `р_ПечатьРасходногоОрдераНаТовары` | ❌ Отсутствует | Кастомная | ✅ Да | +| Раздел "Комплект печатных документов" в форме УправлениеОтгрузкой | ⚠️ Требуется проверка | Вероятно кастомная | ✅ Да (предварительно) | +| Раздел "Дополнительная обработка" в форме НастройкаПечатиКомплекта | ⚠️ Требуется проверка | Вероятно кастомная | ✅ Да (предварительно) | + +--- + +## 2. Типовой функционал (не требует переноса) + +### 2.1. Документ "РасходныйОрдерНаТовары" + +**Типовой функционал печати, присутствующий в эталонной конфигурации:** + +- Процедура `ДобавитьКомандыПечати()` - добавляет команды печати: + - "Расходный ордер на товары" + - "Задание на отбор товаров" +- Процедура `Печать()` - выполняет печать расходного ордера +- Функция `ПечатьРасходногоОрдераНаТовары()` - формирует печатную форму расходного ордера +- Функция `ПолучитьДанныеДляПечатнойФормыОтборРазмещениеТоваров()` - получает данные для печати задания на отбор + +**Вывод:** Данный функционал является типовым и уже должен присутствовать в целевой конфигурации. Перенос не требуется. + +### 2.2. Модули локализации + +**Модуль `РеализацияТоваровУслугЛокализация`:** +- Команды печати ТОРГ-12 (присутствуют в эталоне, в исходной конфигурации закомментированы) + +**Модуль `ПеремещениеТоваровЛокализация`:** +- Команды печати (ТОРГ-13, М-11, ТТН и др.) + +**Вывод:** Команды печати являются типовым функционалом. Перенос не требуется. + +### 2.3. Форма приёмки (УправлениеПоступлением.Форма.Форма) + +**Типовой функционал:** + +- Реквизит `ЗакрыватьГрафикПоступления` в документе `ПриходныйОрдерНаТовары` +- Колонка `ЗакрыватьГрафикПоступления` в форме +- Расчет поля `ЗакрыватьГрафикПоступления` в запросе +- Передача параметра `ЗакрыватьГрафикПоступления` в процедуре `СоздатьОрдер` +- Соединение с регистром `ДвижениеТоваров` в запросе + +**Вывод:** Данный функционал является типовым и должен присутствовать в целевой конфигурации. Если он отсутствует, рекомендуется проверить причину и восстановить из эталонной конфигурации. + +### 2.4. Функционал, присутствующий в целевой конфигурации + +**ЭДО (ЭлектронноеВзаимодействие.ОбменСКонтрагентами):** + +- Присутствует в целевой конфигурации, отсутствует в исходной +- Является типовым функционалом +- Не требует переноса + +**Улучшения архитектуры:** + +- Функция `РазбитьСтрокиПоОграничениям` - вынесена в отдельную функцию в целевой конфигурации (улучшение, не требует переноса) + +--- + +## 3. Кастомные доработки, требующие переноса + +### 3.1. Функционал печати расходного ордера по основанию + +#### 3.1.1. Описание доработки + +**Расположение:** + +- Расширение: `CRM3devLocal.Рана/src/Documents/РасходныйОрдерНаТовары/` +- Модули локализации: + - `CRM3devLocal.Рана/src/CommonModules/РеализацияТоваровУслугЛокализация/` + - `CRM3devLocal.Рана/src/CommonModules/ПеремещениеТоваровЛокализация/` + +**Назначение:** Автоматическое добавление печатной формы расходного ордера на товары в комплект печатных форм документов Реализация и Перемещение при их печати. + +#### 3.1.2. Реализованный функционал + +**1. Модули локализации документов:** + + - **`РеализацияТоваровУслугЛокализация`** (`CRM3devLocal.Рана/src/CommonModules/РеализацияТоваровУслугЛокализация/`) + - **`ПеремещениеТоваровЛокализация`** (`CRM3devLocal.Рана/src/CommonModules/ПеремещениеТоваровЛокализация/`) + + **Реализованный функционал:** + + - ✅ В модуле `РеализацияТоваровУслугЛокализация` реализовано добавление печатной формы "РасходныйОрдерНаТовары" в комплект печатных форм документа Реализация + - ✅ При печати документа Реализация автоматически формируется и выводится печатная форма расходного ордера на товары (через функцию `р_СформироватьПечатнуюФормуОрдераПоОснованию`) + - ✅ Аналогичный функционал реализован в модуле `ПеремещениеТоваровЛокализация` для документа Перемещение + +**2. Документ РасходныйОрдерНаТовары в расширении:** + + **Расположение:** `CRM3devLocal.Рана/src/Documents/РасходныйОрдерНаТовары/` + + **Реализованные функции:** + + - ✅ Функция `р_СформироватьПечатнуюФормуОрдераПоОснованию` (экспортная) - формирует печатную форму расходного ордера на основе документов-оснований (Реализация или Перемещение) + - ✅ Функция `р_ПолучитьОрдерыНаПечать` (экспортная) - получает список расходных ордеров, связанных с документами-основаниями + - ✅ Переопределение функции `р_ПечатьРасходногоОрдераНаТовары` - формирует расширенную печатную форму с дополнительными данными по доставке + +#### 3.1.3. Логика работы + +**Процесс использования:** + +1. Пользователь печатает документ Реализация или Перемещение +2. Модуль локализации автоматически добавляет печатную форму "РасходныйОрдерНаТовары" в комплект печатных форм +3. При формировании комплекта вызывается функция `р_СформироватьПечатнуюФормуОрдераПоОснованию` +4. Функция `р_ПолучитьОрдерыНаПечать` находит связанные расходные ордера по документам-основаниям +5. Формируется расширенная печатная форма расходного ордера с данными по доставке + +#### 3.1.4. Необходимость переноса + +**Статус:** ⚠️ **КРИТИЧЕСКАЯ ДОРАБОТКА ДЛЯ ПЕРЕНОСА** + +**Что необходимо перенести:** + +1. **Модули локализации (расширение):** + - Процедура `КомплектПечатныхФорм()` в модуле `РеализацияТоваровУслугЛокализация` + - Процедура `СформироватьКомплектПечатныхФорм()` в модуле `РеализацияТоваровУслугЛокализация` + - Аналогичные процедуры в модуле `ПеремещениеТоваровЛокализация` + +2. **Документ РасходныйОрдерНаТовары (расширение):** + - Функция `р_СформироватьПечатнуюФормуОрдераПоОснованию` (экспортная) + - Функция `р_ПолучитьОрдерыНаПечать` (экспортная) + - Переопределение функции `р_ПечатьРасходногоОрдераНаТовары` + +3. **Зависимости:** + + - Модули локализации зависят от стандартных модулей управления печатью + - Функции используют стандартные функции печати + - Требуется наличие документа РасходныйОрдерНаТовары в целевой конфигурации + +**План переноса:** + +1. Проверить наличие модулей локализации в целевой конфигурации +2. Добавить функционал в модули локализации через расширение целевой конфигурации +3. Добавить функции в документ РасходныйОрдерНаТовары через расширение целевой конфигурации +4. Протестировать автоматическое добавление печатной формы расходного ордера при печати документов Реализация и Перемещение + +--- + +### 3.2. Доработка формы "УправлениеОтгрузкой" - раздел "Комплект печатных документов" + +#### 3.2.1. Описание доработки + +**Обработка:** `Обработка.УправлениеОтгрузкой` +**Форма:** `Обработка.УправлениеОтгрузкой.Форма` +**Расположение в исходной конфигурации:** +- Основная конфигурация: `CRM3devLocal/src/DataProcessors/УправлениеОтгрузкой/` +- Расширение: `CRM3devLocal.Рана/src/DataProcessors/УправлениеОтгрузкой/` + +#### 3.2.2. Реализованный функционал + +##### 3.2.2.1. Раздел "Комплект печатных документов" + +**Описание:** + +В форме обработки "УправлениеОтгрузкой" добавлен раздел "Комплект печатных документов" (группа `ГруппаСписокДляПечати`), который позволяет пользователю выбрать документы для печати пакета документов. + +**Элементы формы:** + +- **Группа `ГруппаСписокДляПечати`** - сворачиваемая группа с заголовком "Комплект печатных документов" + - По умолчанию свернута (`collapsed = true`) + - При разворачивании показывает таблицы документов для выбора +- **Таблица `РеализацииТоваровУслуг`** - динамический список документов Реализация товаров и услуг + - Используется для выбора документов Реализация для печати + - Имеет командную панель с подменю "Печать" +- **Таблица `ПеремещенияТоваров`** - динамический список документов Перемещение товаров + - Используется для выбора документов Перемещение для печати + - Имеет командную панель с подменю "Печать" + +**Команда управления:** + +- **Команда `ОтразитьРеализации`** (заголовок: "Для печати комплекта документов") + - Расположение: `CRM3devLocal.Рана/src/DataProcessors/УправлениеОтгрузкой/Forms/Форма/Form.form` (строки 6344-6364) + - Обработчик: `р_ОтразитьРеализацииПосле` (клиентский) + - Функционал: переключает видимость группы `ГруппаСписокДляПечати` + - При показе группы меняет картинку кнопки на "ПерейтиВперед", при скрытии - на "ПерейтиНазад" + +##### 3.2.2.2. Логика работы + +**Процесс использования:** + +1. Пользователь нажимает кнопку "Для печати комплекта документов" (команда `ОтразитьРеализации`) +2. Открывается раздел "Комплект печатных документов" с таблицами документов +3. В таблицах `РеализацииТоваровУслуг` и `ПеремещенияТоваров` отображаются документы, связанные с текущим распоряжением на отгрузку +4. Пользователь выбирает документы в таблицах +5. Использует стандартные команды печати из подменю "Печать" в командных панелях таблиц +6. При печати документов Реализация или Перемещение автоматически добавляется печатная форма расходного ордера (благодаря модулям локализации, описанным в разделе 3.1) + +**Особенности реализации:** + +- Раздел "Комплект печатных документов" отображается только при наличии связанных документов +- Отбор документов в таблицах устанавливается автоматически на основе текущего распоряжения на отгрузку +- Логика отбора реализована в процедуре `р_УстановитьОтборыВЗависимыхСписках` (строки 669-706 в `Module.bsl` расширения) +- Поддержка документов типа `РеализацияТоваровУслуг`, `ПеремещениеТоваров` и `ЗаказКлиента` + +#### 3.2.3. Сравнение с типовой конфигурацией + +**В типовой конфигурации:** + +- ❌ Раздел "Комплект печатных документов" отсутствует +- ❌ Команда "ОтразитьРеализации" отсутствует +- ❌ Таблицы `РеализацииТоваровУслуг` и `ПеремещенияТоваров` в форме отсутствуют + +**В исходной конфигурации (с расширением):** + +- ✅ Раздел "Комплект печатных документов" добавлен +- ✅ Команда "ОтразитьРеализации" добавлена +- ✅ Таблицы `РеализацииТоваровУслуг` и `ПеремещенияТоваров` добавлены в форму +- ✅ Реализована логика автоматического отбора документов по распоряжению + +#### 3.2.4. Выводы и рекомендации + +**Статус:** ⚠️ **КРИТИЧЕСКАЯ ДОРАБОТКА ДЛЯ ПЕРЕНОСА** + +**Необходимость переноса:** + +- ✅ **ОБЯЗАТЕЛЬНО** перенести раздел "Комплект печатных документов" в целевую конфигурацию +- ✅ Это не типовая функциональность, а кастомная доработка +- ✅ Функционал напрямую связан с печатью пакета документов при отгрузке + +**Что необходимо перенести:** + +1. **Элементы формы:** + - Группа `ГруппаСписокДляПечати` с настройками сворачивания + - Таблица `РеализацииТоваровУслуг` с командной панелью и подменю "Печать" + - Таблица `ПеремещенияТоваров` с командной панелью и подменю "Печать" + +2. **Команда формы:** + - Команда `ОтразитьРеализации` с заголовком "Для печати комплекта документов" + +3. **Код модуля формы:** + - Процедура `р_ОтразитьРеализацииПосле` (клиентская) + - Процедура `р_УстановитьОтборыВЗависимыхСписках` (серверная) - если есть доработки + - Процедура `р_ТекущиеРаспоряженияПоОрдеру` (клиентская) + - Функция `р_ПолучитьРазпоряжениеОрдера` (серверная без контекста) + +4. **Зависимости:** + + - Модули локализации `РеализацияТоваровУслугЛокализация` и `ПеремещениеТоваровЛокализация` (для автоматической печати расходного ордера) + - Функционал печати расходного ордера по основанию (описан в разделе 3.1) + +**План переноса:** + +1. Проверить наличие обработки `УправлениеОтгрузкой` в целевой конфигурации +2. Добавить элементы формы (группу и таблицы) в расширение целевой конфигурации +3. Добавить команду `ОтразитьРеализации` в форму +4. Перенести код модуля формы из расширения исходной конфигурации +5. Проверить работу отбора документов в таблицах +6. Протестировать печать комплекта документов + +--- + +### 3.3. Доработка формы "НастройкаПечатиКомплекта" - раздел "Дополнительная обработка" + +#### 3.3.1. Описание доработки + +**Регистр сведений:** `РегистрСведений.НастройкиПечатиОбъектов` +**Форма:** `РегистрСведений.НастройкиПечатиОбъектов.Форма.НастройкаПечатиКомплекта` +**Расположение в исходной конфигурации:** +- Основная конфигурация: `CRM3devLocal/src/InformationRegisters/НастройкиПечатиОбъектов/` +- Расширение: `CRM3devLocal.Рана/src/InformationRegisters/НастройкиПечатиОбъектов/` + +#### 3.3.2. Реализованный функционал + +##### 3.3.2.1. Раздел "Дополнительная обработка" + +**Описание:** + +В форме настройки печати комплекта документов добавлен раздел "Дополнительная обработка" (группа `ГруппаДополнительнаяОбработка`), который позволяет пользователю настроить поведение при выводе на печать документа из комплекта в зависимости от условий. Пользователь может написать выполняемый код на языке 1С, который будет выполняться для каждого документа перед печатью. + +**Элементы формы:** + +- **Группа `ГруппаДополнительнаяОбработка`** - сворачиваемая группа с заголовком "Дополнительная обработка" + - По умолчанию свернута (`collapsed = true`) + - При разворачивании показывает поле для ввода кода +- **Поле `КомплектПечатныхФормДополнительнаяОбработка`** - поле ввода многострочного текста для выполняемого кода + - Тип: `InputField` с режимом редактирования `Enter` + - Подсказка содержит описание доступных переменных: + - `Объект` - ДокументСсылка на Реализацию товаров и услуг + - `Экземпляров` - количество экземпляров + - `Печатать` - признак необходимости печати или отключения печатной формы + +##### 3.3.2.2. Техническая реализация + +**Добавление поля в структуру данных:** + +1. В модуле менеджера регистра `НастройкиПечатиОбъектов` (расширение): + - Функция `р_ПодготовитьКомплектПечатныхФорм` (переопределение) - добавляет колонку "ДополнительнаяОбработка" в таблицу значений + - Процедура `р_СкопироватьПечатнуюФормуВКоллекцию` (переопределение) - копирует значение поля "ДополнительнаяОбработка" из настроек + +2. В модуле `УправлениеПечатьюКлиентСервер` (расширение): + - Функция `р_ИменаПолейКоллекцииПечатныхФорм` (переопределение) - добавляет "ДополнительнаяОбработка" в список полей коллекции печатных форм + +**Выполнение кода:** + +В модуле менеджера регистра `НастройкиПечатиОбъектов` (основная конфигурация, строки 509-533) реализована логика выполнения кода: + +```bsl +Если ЗначениеЗаполнено(КомплектыПечати[0].ДополнительнаяОбработка) Тогда + + Объекты = МассивОбъектов; + Если МассивОбъектов.Количество() = 1 Тогда + Объект = МассивОбъектов[0]; + Иначе + Объект = Неопределено; + КонецЕсли; + Экземпляров = КомплектыПечати[0].Экземпляров; + Печатать = КомплектыПечати[0].Печатать; + + Попытка + Выполнить(КомплектыПечати[0].ДополнительнаяОбработка); + КомплектыПечати[0].Экземпляров = Экземпляров; + Если Экземпляров = 0 Тогда + Печатать = Ложь; + КонецЕсли; + КомплектыПечати[0].Печатать = Печатать; + Исключение + //ОписаниеОшибки() + КонецПопытки; + Если НЕ Печатать Тогда + Возврат КомплектыПечатиПоОбъектам; + КонецЕсли; +КонецЕсли; +``` + +**Логика работы:** + +1. Перед печатью каждого документа из комплекта проверяется наличие кода в поле "ДополнительнаяОбработка" +2. Если код присутствует, инициализируются переменные: + - `Объект` - ссылка на документ (если один документ) или `Неопределено` (если несколько) + - `Объекты` - массив документов + - `Экземпляров` - текущее количество экземпляров из настроек + - `Печатать` - текущий признак печати из настроек +3. Выполняется код пользователя (команда `Выполнить`) +4. После выполнения кода значения `Экземпляров` и `Печатать` обновляются в настройках +5. Если `Экземпляров = 0`, то `Печатать` автоматически устанавливается в `Ложь` +6. Если `Печатать = Ложь`, документ исключается из печати + +##### 3.3.2.3. Примеры использования + +**Пример 1: Счет на оплату - отмена печати при кредит-ноте** +```bsl +Если ЗначениеЗаполнено(Объект.ЗаказКлиента) и Объект.ЗаказКлиента.КредитНота Тогда + Экземпляров = 0; +КонецЕсли; +``` + +**Пример 2: Товарная накладная без услуг (ТОРГ-12) - проверка комиссионного договора** +```bsl +ЭтоКомиссионныйДоговор = Ложь; +Если Объект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПередачаНаКомиссию ИЛИ + Объект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПередачаНаКомиссиюВДругуюОрганизацию ТОГДА + ЭтоКомиссионныйДоговор = Истина; +КонецЕсли; + +Если ЭтоКомиссионныйДоговор Тогда + Печатать = Ложь; + Экземпляров = 0; +ИНАЧЕ + ЕСЛИ + Объект.СпособДоставки = Перечисления.СпособыДоставки.СиламиПеревозчика + ИЛИ Объект.СпособДоставки = Перечисления.СпособыДоставки.СиламиПеревозчикаПоАдресу + ИЛИ Объект.ЗаказКлиента.СпособДоставки = Перечисления.СпособыДоставки.СиламиПеревозчикаПоАдресу + ТОГДА + Экземпляров = Экземпляров + 1; + КОНЕЦЕСЛИ; +КОНЕЦЕСЛИ; +``` + +**Пример 3: Торговая накладная с ГТД (ТОРГ-12) - обратная логика** +```bsl +ЭтоКомиссионныйДоговор = Ложь; +Если Объект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПередачаНаКомиссию ИЛИ + Объект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПередачаНаКомиссиюВДругуюОрганизацию ТОГДА + ЭтоКомиссионныйДоговор = Истина; +КонецЕсли; + +ЕСЛИ ЭтоКомиссионныйДоговор Тогда + Если Объект.СпособДоставки = Перечисления.СпособыДоставки.СиламиПеревозчика + ИЛИ Объект.СпособДоставки = Перечисления.СпособыДоставки.СиламиПеревозчикаПоАдресу + ИЛИ Объект.ЗаказКлиента.СпособДоставки = Перечисления.СпособыДоставки.СиламиПеревозчикаПоАдресу + ТОГДА + Экземпляров = Экземпляров + 1; + КонецЕсли; +ИНАЧЕ + Печатать = Ложь; + Экземпляров = 0; +КОНЕЦЕСЛИ; +``` + +**Пример 4: Сертификаты (реестр, РАНА) - проверка артикула номенклатуры** +```bsl +АртикулПроверки = "LNK-010100"; + +Для каждого строкадокумента из Объект.Товары Цикл + Если строкадокумента.Номенклатура.Артикул = АртикулПроверки или + строкадокумента.Номенклатура.Родитель.Наименование = "Лаеннек" Тогда + Печатать = Ложь; + Если Экземпляров = 0 тогда Экземпляров = 1; КонецЕсли; + КонецЕсли; +КонецЦикла; +``` + +#### 3.3.3. Сравнение с типовой конфигурацией + +**В типовой конфигурации:** + +- ❌ Поле "ДополнительнаяОбработка" отсутствует в структуре таблицы КомплектПечатныхФорм +- ❌ Раздел "Дополнительная обработка" отсутствует в форме +- ❌ Логика выполнения пользовательского кода отсутствует + +**В исходной конфигурации (с расширением):** + +- ✅ Поле "ДополнительнаяОбработка" добавлено в структуру данных +- ✅ Раздел "Дополнительная обработка" добавлен в форму +- ✅ Реализована логика выполнения пользовательского кода с обработкой ошибок +- ✅ Поддержка изменения количества экземпляров и признака печати + +#### 3.3.4. Выводы и рекомендации + +**Статус:** ⚠️ **КРИТИЧЕСКАЯ ДОРАБОТКА ДЛЯ ПЕРЕНОСА** + +**Необходимость переноса:** + +- ✅ **ОБЯЗАТЕЛЬНО** перенести функционал "Дополнительная обработка" в целевую конфигурацию +- ✅ Это не типовая функциональность, а кастомная доработка +- ✅ Функционал критически важен для бизнес-процессов печати документов +- ✅ Позволяет гибко настраивать правила печати документов в зависимости от условий + +**Что необходимо перенести:** + +1. **Модуль менеджера регистра `НастройкиПечатиОбъектов` (расширение):** + - Функция `р_ПодготовитьКомплектПечатныхФорм` (переопределение) + - Процедура `р_СкопироватьПечатнуюФормуВКоллекцию` (переопределение) + +2. **Модуль `УправлениеПечатьюКлиентСервер` (расширение):** + - Функция `р_ИменаПолейКоллекцииПечатныхФорм` (переопределение) + +3. **Модуль менеджера регистра `НастройкиПечатиОбъектов` (основная конфигурация):** + - Логика выполнения кода в функции `КомплектыПечатиПоОбъектам` (строки 509-533) + - **ВНИМАНИЕ:** Этот код находится в основной конфигурации, но может быть добавлен через расширение + +4. **Элементы формы `НастройкаПечатиКомплекта`:** + - Группа `ГруппаДополнительнаяОбработка` + - Поле `КомплектПечатныхФормДополнительнаяОбработка` + +5. **Настройки печати:** + - Необходимо перенести все сохраненные настройки с кодом дополнительной обработки из исходной системы + +**План переноса:** + +1. Проверить наличие регистра `НастройкиПечатиОбъектов` в целевой конфигурации +2. Добавить поле "ДополнительнаяОбработка" в структуру данных через расширение +3. Добавить логику выполнения кода в модуль менеджера регистра (через расширение или в основную конфигурацию) +4. Добавить элементы формы в расширение целевой конфигурации +5. Перенести сохраненные настройки печати с кодом дополнительной обработки +6. Протестировать выполнение кода для различных сценариев + +**Особенности реализации:** + +- Код выполняется в контексте сервера +- Ошибки выполнения кода обрабатываются (игнорируются), чтобы не прерывать печать других документов +- Код может обращаться к любым свойствам и методам документа через переменную `Объект` +- Код может изменять количество экземпляров и признак печати +- При установке `Экземпляров = 0` автоматически устанавливается `Печатать = Ложь` + +--- + +### 3.4. Доработки складского учета и логистики + +#### 3.4.1. Сравнение групп доступа + +##### 3.4.1.1. Группы доступа, отсутствующие в целевой системе + +**Складские и логистические группы (11):** + +1. Добавление изменение складских актов +2. Кладовщик +3. Кладовщик (без заказов поставщиков) +4. Менеджер по доставке +5. Менеджер по доставке (без закупок) +6. Менеджер по продажам (Без складов) +7. Менеджеры по продажам (Заказ и Реализация, без складов) +8. Ответственный по работе с документом заказ на перемещение +9. Перемещения товаров +10. Работник склада +11. Чтение документа задания на перевозку + +**Вывод:** + +В целевой системе отсутствуют специализированные группы доступа для складского учета и логистики, что может указывать на различия в функционале или подходе к управлению доступом. + +#### 3.4.2. Документы складского учета + +##### 3.4.2.1. Сравнение документов + +**Документы, присутствующие в обеих конфигурациях:** + +- РасходныйОрдерНаТовары +- ПриходныйОрдерНаТовары +- ПеремещениеТоваров +- ЗаказНаПеремещение +- ЗаданиеНаПеревозку +- ОтборРазмещениеТоваров +- УпаковочныйЛист + +**Документы, требующие проверки на наличие доработок:** + +- РеализацияТоваровУслуг +- СчетФактураВыданный +- ТранспортнаяНакладная + +##### 3.4.2.2. Доработки в расширении исходной конфигурации + +**Документы расширения "CRM3devLocal.Рана":** + +**Документы, связанные со складским учетом:** + +- `rh_ТоварыНаСкладахСебестоимость` - документ для работы с себестоимостью товаров на складах +- `р_ВерсииСебестоимости` - документ для работы с версиями себестоимости +- `р_КредитНота` - документ кредит-ноты + +**Документы, связанные с логистикой:** + +- `ЗаданиеНаПеревозку` - присутствует в расширении, требуется проверка на наличие доработок + +**Общие модули расширения:** + +**Модули, связанные с печатью:** + +- `rh_УправлениеПечатью` +- `rh_УправлениеПечатьюКлиент` + +**Модули, связанные с себестоимостью:** + +- Возможно, есть модули для работы с себестоимостью (требуется проверка) + +##### 3.4.2.3. Функциональные различия + +**Статусы расходных ордеров:** + +**В исходной конфигурации:** + +- Документ "РасходныйОрдерНаТовары" поддерживает статусы: + - Подготовлено + - К отбору + - К проверке + - Проверен + - К отгрузке + - Отгружен + +**В целевой конфигурации:** + +- Требуется проверка наличия аналогичных статусов + +**Интеграция с доставкой:** + +**В исходной конфигурации:** + +- Документ "РасходныйОрдерНаТовары" имеет реквизиты: + - `ОтгрузкаПоЗаданиюНаПеревозку` (булево) + - `ЗаданиеНаПеревозку` (ссылка на документ) + - `ПорядокДоставки` (строка) + +**В целевой конфигурации:** +- Требуется проверка наличия аналогичных реквизитов + +#### 3.4.3. Выводы по доработкам складского учета и логистики + +##### 3.4.3.1. Найденные различия + +1. **Группы доступа:** + + - В целевой системе отсутствуют специализированные группы доступа для складского учета + - Это может указывать на упрощенную модель доступа или необходимость создания аналогичных групп + +2. **Документы расширения:** + + - В исходной конфигурации есть документы для работы с себестоимостью товаров на складах + - Требуется проверка наличия аналогичного функционала в целевой конфигурации + +3. **Функционал печати:** + + - В расширении исходной конфигурации есть модули управления печатью + - Требуется детальная проверка функционала + +##### 3.4.3.2. Рекомендации + +1. **Провести детальный анализ:** + + - Сравнить модули документов складского учета в исходной и целевой конфигурациях + - Проверить наличие всех реквизитов и табличных частей + - Сравнить обработчики событий и подписки + +2. **Оценить необходимость переноса:** + + - Документы для работы с себестоимостью (`rh_ТоварыНаСкладахСебестоимость`, `р_ВерсииСебестоимости`) + - Модули управления печатью (`rh_УправлениеПечатью`) + - Доработки в документе "РасходныйОрдерНаТовары" + +3. **Определить зависимости:** + + - Проверить зависимости доработок от других объектов конфигурации + - Оценить совместимость с целевой конфигурацией + +### 3.5. Итоговый список кастомных доработок, требующих переноса + +#### 3.5.1. Критические доработки (обязательные для переноса) + +1. **Функционал печати расходного ордера по основанию:** + - Модуль `РеализацияТоваровУслугЛокализация`: процедуры `КомплектПечатныхФорм()` и `СформироватьКомплектПечатныхФорм()` + - Модуль `ПеремещениеТоваровЛокализация`: аналогичные процедуры + - Функция `р_СформироватьПечатнуюФормуОрдераПоОснованию` в документе РасходныйОрдерНаТовары + - Функция `р_ПолучитьОрдерыНаПечать` в документе РасходныйОрдерНаТовары + - Переопределение функции `р_ПечатьРасходногоОрдераНаТовары` с данными по доставке + +2. **Раздел "Комплект печатных документов" в форме УправлениеОтгрузкой:** + - Группа `ГруппаСписокДляПечати` + - Таблицы `РеализацииТоваровУслуг` и `ПеремещенияТоваров` + - Команда `ОтразитьРеализации` + - Код модуля формы (процедуры `р_ОтразитьРеализацииПосле`, `р_УстановитьОтборыВЗависимыхСписках` и др.) + +3. **Раздел "Дополнительная обработка" в форме НастройкаПечатиКомплекта:** + - Поле "ДополнительнаяОбработка" в структуре данных регистра `НастройкиПечатиОбъектов` + - Группа `ГруппаДополнительнаяОбработка` и поле `КомплектПечатныхФормДополнительнаяОбработка` в форме + - Логика выполнения пользовательского кода в модуле менеджера регистра + - Переопределения функций в модуле `УправлениеПечатьюКлиентСервер` + +#### 3.5.2. Доработки, требующие дополнительной проверки + +1. **Доработки складского учета:** + - Документы для работы с себестоимостью (`rh_ТоварыНаСкладахСебестоимость`, `р_ВерсииСебестоимости`) + - Модули управления печатью (`rh_УправлениеПечатью`, `rh_УправлениеПечатьюКлиент`) + - Группы доступа для складского учета и логистики + +#### 3.5.3. Опциональные доработки (требуют решения о необходимости) + +1. **Раскомментирование кода печати ТОРГ-12:** + - Код присутствует в модуле `РеализацияТоваровУслугЛокализация`, но закомментирован + - В эталонной конфигурации команды ТОРГ-12 присутствуют и не закомментированы + - Требуется решение: использовать типовой функционал или доработать закомментированный код + +2. **Раскомментирование кода печати Счет-фактура:** + - Код присутствует, но закомментирован + - Требуется решение о необходимости реализации + +3. **Автоматическая печать пакета документов при проведении расходного ордера:** + - В настоящее время не реализовано + - Требуется решение о необходимости реализации + +--- + +## 4. Анализ формы приёмки (УправлениеПоступлением.Форма.Форма) + +### 4.1. Цель анализа + +Провести дополнительный анализ того, какие доработки в расширении целевой конфигурации требуются в форме приёмки (`Обработка.УправлениеПоступлением.Форма.Форма`) складского учета из аналогичной формы исходной базы с учетом расширения. + +### 4.2. Результаты анализа + +**Важное замечание:** После сравнения с эталонной конфигурацией (`crm302228-etalon`) выявлено, что функционал `ЗакрыватьГрафикПоступления` является **типовым** и присутствует в эталонной конфигурации. Следовательно, он должен присутствовать и в целевой конфигурации. Если он отсутствует, это может быть баг или недоработка в целевой конфигурации, но **не кастомная доработка**, требующая переноса. + +**Типовой функционал (присутствует в эталоне, не требует переноса как доработка):** + +1. ✅ **Реквизит и функционал `ЗакрыватьГрафикПоступления`** - присутствует в эталонной конфигурации, должен быть в целевой конфигурации +2. ✅ **Соединение с регистром `ДвижениеТоваров`** - присутствует в эталонной конфигурации, должно быть в целевой конфигурации + +**Функционал, присутствующий в целевой конфигурации, но отсутствующий в исходной:** + +1. ✅ **ЭДО (ЭлектронноеВзаимодействие.ОбменСКонтрагентами)** - присутствует в целевой конфигурации, отсутствует в исходной (типовой функционал, не требует переноса) + +**Улучшения архитектуры в целевой конфигурации:** + +1. ✅ **Функция `РазбитьСтрокиПоОграничениям`** - вынесена в отдельную функцию в целевой конфигурации (улучшение, не требует переноса) + +**Вывод:** Все выявленные различия между исходной и целевой конфигурациями являются либо типовым функционалом, либо улучшениями архитектуры. **Кастомных доработок, требующих переноса, не выявлено.** + +### 4.3. Детальный анализ различий + +#### 4.3.1. Реквизит и функционал `ЗакрыватьГрафикПоступления` + +**Статус:** ✅ **ТИПОВОЙ ФУНКЦИОНАЛ** - присутствует в эталонной конфигурации, должен быть в целевой конфигурации + +##### 4.3.1.1. Описание функционала + +В исходной конфигурации реализован функционал управления графиком поступления товаров через реквизит `ЗакрыватьГрафикПоступления`. Этот реквизит определяет, нужно ли закрывать график поступления при создании приходного ордера. + +##### 4.3.1.2. Места использования в исходной конфигурации + +**1. Колонка в форме `УправлениеПоступлением.Форма.Форма`:** + +```xml:2211:2221:crm3-dev/src/DataProcessors/УправлениеПоступлением/Forms/Форма/Ext/Form.xml + + + <v8:item> + <v8:lang>ru</v8:lang> + <v8:content>Закрывать график поступления</v8:content> + </v8:item> + + + xs:boolean + + +``` + +**2. Передача параметра в процедуре `СоздатьОрдер`:** + +```412:412:crm3-dev/src/DataProcessors/УправлениеПоступлением/Forms/Форма/Ext/Form/Module.bsl +Основание.Вставить("ЗакрыватьГрафикПоступления", ТекущиеДанные.ЗакрыватьГрафикПоступления); +``` + +**3. Расчет значения в запросе `ЗаполнитьРаспоряженияНаПоступление`:** + +```1349:1356:crm3-dev/src/DataProcessors/УправлениеПоступлением/Forms/Форма/Ext/Form/Module.bsl +| ВЫБОР +| КОГДА ТоварыКПоступлениюОстаткиНаДату.ДокументПоступления ССЫЛКА Справочник.СоглашенияСПоставщиками +| ИЛИ ТоварыКПоступлениюОстаткиНаДату.ДокументПоступления ССЫЛКА Справочник.ДоговорыКонтрагентов +| ТОГДА ИСТИНА +| КОГДА ДвижениеТоваров.Распоряжение ЕСТЬ NULL +| ТОГДА ЛОЖЬ +| ИНАЧЕ ИСТИНА +| КОНЕЦ КАК ЗакрыватьГрафикПоступления +``` + +**4. Выборка поля в запросе:** + +```1289:1289:crm3-dev/src/DataProcessors/УправлениеПоступлением/Forms/Форма/Ext/Form/Module.bsl +| МАКСИМУМ(ВложенныйЗапрос.ЗакрыватьГрафикПоступления) КАК ЗакрыватьГрафикПоступления, +``` + +**5. Реквизит в документе `ПриходныйОрдерНаТовары`:** + +В исходной конфигурации документ `ПриходныйОрдерНаТовары` имеет реквизит `ЗакрыватьГрафикПоступления`, который используется при создании ордера из формы управления поступлением. + +##### 4.3.1.3. Логика работы + +Логика определения значения `ЗакрыватьГрафикПоступления`: +- Если распоряжение - это `СоглашенияСПоставщиками` или `ДоговорыКонтрагентов`, то значение = `Истина` +- Если в регистре `ДвижениеТоваров` нет записей по распоряжению (Распоряжение ЕСТЬ NULL), то значение = `Ложь` +- Иначе значение = `Истина` + +##### 4.3.1.4. Рекомендации по восстановлению типового функционала + +**Важно:** Поскольку функционал является типовым и присутствует в эталонной конфигурации, рекомендуется: + +**1. Проверить наличие функционала в целевой конфигурации:** + +- Проверить наличие реквизита `ЗакрыватьГрафикПоступления` в документе `ПриходныйОрдерНаТовары` +- Проверить наличие колонки в форме +- Проверить наличие расчета в запросе + +**2. Если функционал отсутствует:** + +- Определить причину отсутствия (баг, недоработка, намеренное удаление) +- Если это баг или недоработка - восстановить функционал из эталонной конфигурации +- Если это намеренное удаление в новой версии - оценить необходимость восстановления + +**3. Восстановление функционала (если требуется):** + +- Добавить колонку `ЗакрыватьГрафикПоступления` в таблицу `РаспоряженияНаПоступление` формы `УправлениеПоступлением.Форма.Форма` +- Добавить соединение с регистром `ДвижениеТоваров` в запрос `ЗаполнитьРаспоряженияНаПоступление` +- Добавить расчет поля `ЗакрыватьГрафикПоступления` в запросе +- Добавить выборку поля `ЗакрыватьГрафикПоступления` в итоговом запросе +- Добавить передачу параметра `ЗакрыватьГрафикПоступления` в процедуре `СоздатьОрдер` + +#### 4.3.2. Соединение с регистром `ДвижениеТоваров` + +**Статус:** ✅ **ТИПОВОЙ ФУНКЦИОНАЛ** - присутствует в эталонной конфигурации, должен быть в целевой конфигурации + +##### 4.3.2.1. Описание + +В исходной конфигурации в запросе `ЗаполнитьРаспоряженияНаПоступление` используется соединение с регистром накопления `ДвижениеТоваров` для определения, есть ли движения товаров по распоряжению. Это соединение необходимо для корректного расчета значения `ЗакрыватьГрафикПоступления`. + +##### 4.3.2.2. Код соединения в исходной конфигурации + +```1373:1378:crm3-dev/src/DataProcessors/УправлениеПоступлением/Forms/Форма/Ext/Form/Module.bsl +| ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ДвижениеТоваров КАК ДвижениеТоваров +| ПО ТоварыКПоступлениюОстаткиНаДату.Номенклатура = ДвижениеТоваров.Номенклатура +| И ТоварыКПоступлениюОстаткиНаДату.Характеристика = ДвижениеТоваров.Характеристика +| И ТоварыКПоступлениюОстаткиНаДату.Назначение = ДвижениеТоваров.Назначение +| И ТоварыКПоступлениюОстаткиНаДату.Склад = ДвижениеТоваров.Склад +| И ТоварыКПоступлениюОстаткиНаДату.ДокументПоступления = ДвижениеТоваров.Распоряжение +``` + +##### 4.3.2.3. Использование в расчете + +Соединение используется в расчете поля `ЗакрыватьГрафикПоступления`: + +```1353:1353:crm3-dev/src/DataProcessors/УправлениеПоступлением/Forms/Форма/Ext/Form/Module.bsl +| КОГДА ДвижениеТоваров.Распоряжение ЕСТЬ NULL +``` + +##### 4.3.2.4. Рекомендации по восстановлению типового функционала + +**Важно:** Поскольку соединение с регистром `ДвижениеТоваров` является частью типового функционала и присутствует в эталонной конфигурации, рекомендуется: + +**1. Проверить наличие регистра:** + +Необходимо убедиться, что в целевой конфигурации существует регистр накопления `ДвижениеТоваров` с соответствующими измерениями и ресурсами. + +**2. Если регистр отсутствует:** + +- Определить, какой регистр используется в целевой конфигурации для аналогичных целей +- Или проверить, не был ли регистр переименован или объединен с другим регистром + +**3. Восстановление соединения (если требуется):** + +- Добавить ЛЕВОЕ СОЕДИНЕНИЕ с регистром `ДвижениеТоваров` в запрос `ЗаполнитьРаспоряженияНаПоступление` в процедуре формы `УправлениеПоступлением.Форма.Форма` + +#### 4.3.3. ЭДО (ЭлектронноеВзаимодействие.ОбменСКонтрагентами) + +**Статус:** ✅ **Типовой функционал** - присутствует в целевой конфигурации, отсутствует в исходной + +##### 4.3.3.1. Описание + +В целевой конфигурации реализован функционал электронного документооборота (ЭДО) с контрагентами. Этот функционал отсутствует в исходной конфигурации. + +##### 4.3.3.2. Вывод + +Этот функционал является типовым и присутствует в целевой конфигурации. Он **не требует переноса** из исходной конфигурации, так как в исходной конфигурации его нет. + +#### 4.3.4. Улучшение архитектуры: функция `РазбитьСтрокиПоОграничениям` + +**Статус:** ✅ **Улучшение архитектуры** - присутствует в целевой конфигурации + +##### 4.3.4.1. Описание + +В целевой конфигурации логика разбиения строк по ограничениям веса и объема вынесена в отдельную функцию `РазбитьСтрокиПоОграничениям`, что улучшает читаемость и поддерживаемость кода. + +##### 4.3.4.2. Вывод + +Это улучшение архитектуры в целевой конфигурации. В исходной конфигурации аналогичная логика встроена непосредственно в цикл процедуры `СоздатьЗаданияСервер`. Это улучшение **не требует переноса** из исходной конфигурации, так как функционально эквивалентно. + +### 4.4. Сводная таблица различий формы приёмки + +| № | Элемент | Исходная конфигурация | Целевая конфигурация | Эталонная конфигурация | Статус | Требуется перенос | +|---|---------|---------------------|-------------------|------------------------|--------|-------------------| +| 1 | Реквизит `ЗакрыватьГрафикПоступления` в документе | ✅ Есть | ❌ Нет | ✅ Есть | Типовой | ❌ Нет (проверить наличие) | +| 2 | Колонка `ЗакрыватьГрафикПоступления` в форме | ✅ Есть | ❌ Нет | ✅ Есть | Типовой | ❌ Нет (проверить наличие) | +| 3 | Расчет `ЗакрыватьГрафикПоступления` в запросе | ✅ Есть | ❌ Нет | ✅ Есть | Типовой | ❌ Нет (проверить наличие) | +| 4 | Передача `ЗакрыватьГрафикПоступления` в `СоздатьОрдер` | ✅ Есть | ❌ Нет | ✅ Есть | Типовой | ❌ Нет (проверить наличие) | +| 5 | Соединение с регистром `ДвижениеТоваров` | ✅ Есть | ❌ Нет | ✅ Есть | Типовой | ❌ Нет (проверить наличие) | +| 6 | ЭДО (ОбменСКонтрагентами) | ❌ Нет | ✅ Есть | ❓ Не проверено | Типовой | ❌ Нет | +| 7 | Функция `РазбитьСтрокиПоОграничениям` | ❌ Нет (встроено) | ✅ Есть (отдельно) | ❓ Не проверено | Улучшение | ❌ Нет | + +### 4.5. Заключение по анализу формы приёмки + +**Основные выводы:** + +После сравнения с эталонной конфигурацией (`crm302228-etalon`) выявлено, что **все различия между исходной и целевой конфигурациями являются типовым функционалом или улучшениями архитектуры**. + +**Кастомных доработок, требующих переноса, не выявлено.** + +**Типовой функционал:** + +Функционал `ЗакрыватьГрафикПоступления` и соединение с регистром `ДвижениеТоваров` присутствуют в эталонной конфигурации и являются типовыми. Они должны присутствовать в целевой конфигурации. Если они отсутствуют, это может быть: + +- Баг в целевой конфигурации +- Недоработка при обновлении типовой конфигурации +- Намеренное удаление функционала в более новой версии (требует проверки) + +**Рекомендация:** Проверить наличие типового функционала в целевой конфигурации. Если функционал отсутствует, определить причину и при необходимости восстановить его из эталонной конфигурации. + +--- + +## 5. План дальнейших действий + +### 5.1. Необходимые проверки + +1. **Проверка функционала печати пакета документов:** + - [ ] Детально изучить модули `rh_УправлениеПечатью` и `rh_УправлениеПечатьюКлиент` + - [ ] Проверить общую форму `rh_ПечатьДокументов` + - [ ] Найти подписки на события или обработчики, формирующие ТОРГ-12 и Счет-фактура + - [ ] Проверить наличие аналогичного функционала в целевой конфигурации + +2. **Проверка доработок складского учета:** + - [ ] Сравнить модули документа "РасходныйОрдерНаТовары" в исходной и целевой конфигурациях + - [ ] Проверить наличие документов для работы с себестоимостью в целевой конфигурации + - [ ] Сравнить обработчики событий и подписки на события + - [ ] Проверить наличие всех реквизитов и табличных частей + +3. **Проверка функционала логистики:** + - [ ] Сравнить документ "ЗаданиеНаПеревозку" в исходной и целевой конфигурациях + - [ ] Проверить интеграцию с доставкой + - [ ] Сравнить реквизиты, связанные с доставкой + +4. **Проверка типового функционала формы приёмки:** + - [ ] Проверить наличие реквизита `ЗакрыватьГрафикПоступления` в документе `ПриходныйОрдерНаТовары` в целевой конфигурации + - [ ] Проверить наличие колонки `ЗакрыватьГрафикПоступления` в форме `УправлениеПоступлением.Форма.Форма` + - [ ] Проверить наличие расчета поля `ЗакрыватьГрафикПоступления` в запросе `ЗаполнитьРаспоряженияНаПоступление` + - [ ] Проверить наличие передачи параметра `ЗакрыватьГрафикПоступления` в процедуре `СоздатьОрдер` + - [ ] Проверить наличие регистра накопления `ДвижениеТоваров` в целевой конфигурации + - [ ] Проверить наличие соединения с регистром `ДвижениеТоваров` в запросе + +### 5.2. Оценка необходимости переноса + +После проведения всех проверок необходимо: + +1. Составить список объектов, требующих переноса +2. Оценить сложность переноса каждого объекта +3. Определить зависимости между объектами +4. Составить план переноса с учетом приоритетов + +### 5.3. Документирование + +1. Создать детальное описание найденного функционала +2. Составить техническое задание на перенос (если требуется) +3. Документировать различия между конфигурациями + +--- + +## 6. Заключение + +### 6.1. Текущий статус анализа + +**Кастомные доработки, требующие переноса:** + +✅ **Выявлено и проанализировано:** + +- Функционал печати расходного ордера по основанию (модули локализации + функции в документе РасходныйОрдерНаТовары) +- Раздел "Комплект печатных документов" в форме УправлениеОтгрузкой +- Раздел "Дополнительная обработка" в форме НастройкаПечатиКомплекта +- Различия в группах доступа для складского учета + +⚠️ **Требуется дополнительная проверка:** + +- Документы для работы с себестоимостью (`rh_ТоварыНаСкладахСебестоимость`, `р_ВерсииСебестоимости`) +- Модули управления печатью (`rh_УправлениеПечатью`, `rh_УправлениеПечатьюКлиент`) +- Наличие аналогичного функционала в целевой конфигурации + +❌ **НЕ реализовано (требует решения о необходимости):** + +- Автоматическая печать ТОРГ-12 и Счет-фактура при проведении расходного ордера +- Автоматическое формирование пакета документов при проведении расходного ордера + +**Анализ формы приёмки:** + +✅ **Выявлено:** + +- Все различия между исходной и целевой конфигурациями являются типовым функционалом или улучшениями архитектуры +- Кастомных доработок, требующих переноса, не выявлено +- Если типовой функционал отсутствует в целевой конфигурации, рекомендуется проверить причину и восстановить из эталонной конфигурации + +### 6.2. Приоритеты переноса + +**Высокий приоритет (критические доработки):** + +1. Функционал печати расходного ордера по основанию +2. Раздел "Комплект печатных документов" в форме УправлениеОтгрузкой +3. Раздел "Дополнительная обработка" в форме НастройкаПечатиКомплекта + +**Средний приоритет (требуют проверки):** + +1. Доработки складского учета (документы для работы с себестоимостью) +2. Модули управления печатью +3. Проверка наличия типового функционала формы приёмки в целевой конфигурации + +**Низкий приоритет (опциональные):** + +1. Раскомментирование кода печати ТОРГ-12 (можно использовать типовой функционал) +2. Раскомментирование кода печати Счет-фактура +3. Автоматическая печать пакета документов при проведении расходного ордера + +### 6.3. Следующие шаги + +1. Проверить наличие критических доработок в целевой конфигурации +2. Начать перенос критических доработок в расширение целевой конфигурации +3. Провести детальную проверку модулей управления печатью в расширении исходной конфигурации +4. Сравнить модули документов складского учета в исходной и целевой конфигурациях +5. Проверить наличие типового функционала формы приёмки в целевой конфигурации +6. Принять решение о необходимости реализации опциональных доработок + +--- + +## Приложения + +### Приложение А. Список проверенных файлов + +**Эталонная конфигурация:** + +- `CRM302228_etalon/src/Documents/РасходныйОрдерНаТовары/ManagerModule.bsl` +- `CRM302228_etalon/src/CommonModules/РеализацияТоваровУслугЛокализация/Module.bsl` +- `CRM302228_etalon/src/CommonModules/ПеремещениеТоваровЛокализация/Module.bsl` +- `crm302228-etalon/src/DataProcessors/УправлениеПоступлением/Forms/Форма/Ext/Form.xml` +- `crm302228-etalon/src/DataProcessors/УправлениеПоступлением/Forms/Форма/Ext/Form/Module.bsl` +- `crm302228-etalon/src/Documents/ПриходныйОрдерНаТовары.xml` + +**Исходная конфигурация:** + +- `CRM3devLocal/src/Documents/РасходныйОрдерНаТовары/ManagerModule.bsl` +- `crm3-dev/src/DataProcessors/УправлениеПоступлением/Forms/Форма/Ext/Form.xml` +- `crm3-dev/src/DataProcessors/УправлениеПоступлением/Forms/Форма/Ext/Form/Module.bsl` + +**Расширение исходной конфигурации (кастомные доработки):** + +- `CRM3devLocal.Рана/src/Documents/РасходныйОрдерНаТовары/ManagerModule.bsl` +- `CRM3devLocal.Рана/src/CommonModules/РеализацияТоваровУслугЛокализация/Module.bsl` +- `CRM3devLocal.Рана/src/CommonModules/ПеремещениеТоваровЛокализация/Module.bsl` +- `CRM3devLocal.Рана/src/DataProcessors/УправлениеОтгрузкой/Forms/Форма/Module.bsl` +- `CRM3devLocal.Рана/src/InformationRegisters/НастройкиПечатиОбъектов/` (требуется детальная проверка) +- `CRM3devLocal.Рана/src/CommonModules/rh_УправлениеПечатью/` (требуется проверка) + +**Целевая конфигурация:** + +- `CRM326/CRM326_TEST/src/Documents/РасходныйОрдерНаТовары/` (требуется проверка наличия кастомных доработок) +- `crm3-26-promo/src/DataProcessors/УправлениеПоступлением/Forms/Форма/Ext/Form.xml` +- `crm3-26-promo/src/DataProcessors/УправлениеПоступлением/Forms/Форма/Ext/Form/Module.bsl` + +### Приложение Б. Список групп доступа, отсутствующих в целевой системе + +См. файл `docs/active_missing_access_groups.txt` + +--- + +**Примечание:** +- Типовой функционал, присутствующий в эталонной конфигурации, вынесен в раздел 2 и не требует переноса. +- Основное внимание в документе уделено кастомным доработкам, требующим переноса (раздел 3). +- Анализ формы приёмки показал, что все различия являются типовым функционалом (раздел 4). +- Для получения полной картины требуется проведение дополнительных проверок, указанных в разделе 5 "План дальнейших действий". diff --git a/docs__Анализ_доработок_формы_приемки_УправлениеПоступлением.md b/docs__Анализ_доработок_формы_приемки_УправлениеПоступлением.md new file mode 100644 index 0000000..54a0382 --- /dev/null +++ b/docs__Анализ_доработок_формы_приемки_УправлениеПоступлением.md @@ -0,0 +1,505 @@ +--- +title: Анализ доработок формы приёмки (УправлениеПоступлением.Форма.Форма) складского учета +version: 1.1 +date_modified: 2025-01-27 +author: Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) +date_created: 2025-01-27 +show_metadata_block: true +show_index_link: true +--- + +# Анализ доработок формы приёмки (УправлениеПоступлением.Форма.Форма) складского учета + +## Версия документа + +Версия 1.1 от 27.01.2025 + +**Изменения в версии 1.1:** + +- Добавлено сравнение с эталонной конфигурацией `crm302228-etalon` +- Выявлено, что функционал `ЗакрыватьГрафикПоступления` является типовым и присутствует в эталонной конфигурации +- Исключен типовой функционал из списка кастомных доработок, требующих переноса +- Обновлены рекомендации: вместо переноса кастомных доработок рекомендуется проверить наличие типового функционала в новой конфигурации + +## Автор + +Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) + +## Цель анализа + +Провести дополнительный анализ того, какие доработки в расширении новой конфигурации требуются в форме приёмки (`Обработка.УправлениеПоступлением.Форма.Форма`) складского учета из аналогичной формы старой базы с учетом расширения. + +**Сравниваемые конфигурации:** +- **Старая конфигурация:** `crm3-dev` (с расширением) +- **Новая конфигурация:** `crm3-26-promo` (с расширением) + +## Краткое резюме + +**Важное замечание:** После сравнения с эталонной конфигурацией (`crm302228-etalon`) выявлено, что функционал `ЗакрыватьГрафикПоступления` является **типовым** и присутствует в эталонной конфигурации. Следовательно, он должен присутствовать и в новой конфигурации. Если он отсутствует, это может быть баг или недоработка в новой конфигурации, но **не кастомная доработка**, требующая переноса. + +**Типовой функционал (присутствует в эталоне, не требует переноса как доработка):** + +1. ✅ **Реквизит и функционал `ЗакрыватьГрафикПоступления`** - присутствует в эталонной конфигурации, должен быть в новой конфигурации +2. ✅ **Соединение с регистром `ДвижениеТоваров`** - присутствует в эталонной конфигурации, должно быть в новой конфигурации + +**Функционал, присутствующий в новой конфигурации, но отсутствующий в старой:** + +1. ✅ **ЭДО (ЭлектронноеВзаимодействие.ОбменСКонтрагентами)** - присутствует в новой конфигурации, отсутствует в старой (типовой функционал, не требует переноса) + +**Улучшения архитектуры в новой конфигурации:** + +1. ✅ **Функция `РазбитьСтрокиПоОграничениям`** - вынесена в отдельную функцию в новой конфигурации (улучшение, не требует переноса) + +**Вывод:** Все выявленные различия между старой и новой конфигурациями являются либо типовым функционалом, либо улучшениями архитектуры. **Кастомных доработок, требующих переноса, не выявлено.** + +--- + +## 1. Сравнение с эталонной конфигурацией + +### 1.1. Методология сравнения + +**Эталонная конфигурация:** `crm302228-etalon` - типовая эталонная конфигурация версии исходной конфигурации. + +**Цель сравнения:** Определить, какие "доработки" в старой конфигурации на самом деле являются типовыми (присутствуют в эталонной конфигурации), а какие являются кастомными доработками, требующими переноса. + +### 1.2. Результаты сравнения + +#### 1.2.1. Реквизит и функционал `ЗакрыватьГрафикПоступления` + +**Статус:** ✅ **ТИПОВОЙ ФУНКЦИОНАЛ** - присутствует в эталонной конфигурации + +**Проверка в эталонной конфигурации:** + +- ✅ Реквизит `ЗакрыватьГрафикПоступления` присутствует в документе `ПриходныйОрдерНаТовары` +- ✅ Колонка `ЗакрыватьГрафикПоступления` присутствует в форме `УправлениеПоступлением.Форма.Форма` +- ✅ Расчет поля `ЗакрыватьГрафикПоступления` присутствует в запросе `ЗаполнитьРаспоряженияНаПоступление` +- ✅ Передача параметра `ЗакрыватьГрафикПоступления` присутствует в процедуре `СоздатьОрдер` +- ✅ Соединение с регистром `ДвижениеТоваров` присутствует в запросе + +**Вывод:** Функционал `ЗакрыватьГрафикПоступления` является **типовым** и должен присутствовать в новой конфигурации. Если он отсутствует, это может быть: +- Баг в новой конфигурации +- Недоработка при обновлении типовой конфигурации +- Намеренное удаление функционала в более новой версии (требует проверки) + +**Рекомендация:** Проверить, почему функционал отсутствует в новой конфигурации. Если это баг - исправить. Если это намеренное удаление в новой версии типовой конфигурации - тогда может потребоваться восстановление функционала, но это будет восстановление типового функционала, а не перенос кастомной доработки. + +--- + +## 2. Детальный анализ различий + +### 2.1. Реквизит и функционал `ЗакрыватьГрафикПоступления` + +**Статус:** ✅ **ТИПОВОЙ ФУНКЦИОНАЛ** - присутствует в эталонной конфигурации, должен быть в новой конфигурации + +#### 1.1.1. Описание функционала + +В старой конфигурации реализован функционал управления графиком поступления товаров через реквизит `ЗакрыватьГрафикПоступления`. Этот реквизит определяет, нужно ли закрывать график поступления при создании приходного ордера. + +#### 1.1.2. Места использования в старой конфигурации + +**1. Колонка в форме `УправлениеПоступлением.Форма.Форма`:** + +```xml:2211:2221:crm3-dev/src/DataProcessors/УправлениеПоступлением/Forms/Форма/Ext/Form.xml + + + <v8:item> + <v8:lang>ru</v8:lang> + <v8:content>Закрывать график поступления</v8:content> + </v8:item> + + + xs:boolean + + +``` + +**2. Передача параметра в процедуре `СоздатьОрдер`:** + +```412:412:crm3-dev/src/DataProcessors/УправлениеПоступлением/Forms/Форма/Ext/Form/Module.bsl +Основание.Вставить("ЗакрыватьГрафикПоступления", ТекущиеДанные.ЗакрыватьГрафикПоступления); +``` + +**3. Расчет значения в запросе `ЗаполнитьРаспоряженияНаПоступление`:** + +```1349:1356:crm3-dev/src/DataProcessors/УправлениеПоступлением/Forms/Форма/Ext/Form/Module.bsl +| ВЫБОР +| КОГДА ТоварыКПоступлениюОстаткиНаДату.ДокументПоступления ССЫЛКА Справочник.СоглашенияСПоставщиками +| ИЛИ ТоварыКПоступлениюОстаткиНаДату.ДокументПоступления ССЫЛКА Справочник.ДоговорыКонтрагентов +| ТОГДА ИСТИНА +| КОГДА ДвижениеТоваров.Распоряжение ЕСТЬ NULL +| ТОГДА ЛОЖЬ +| ИНАЧЕ ИСТИНА +| КОНЕЦ КАК ЗакрыватьГрафикПоступления +``` + +**4. Выборка поля в запросе:** + +```1289:1289:crm3-dev/src/DataProcessors/УправлениеПоступлением/Forms/Форма/Ext/Form/Module.bsl +| МАКСИМУМ(ВложенныйЗапрос.ЗакрыватьГрафикПоступления) КАК ЗакрыватьГрафикПоступления, +``` + +**5. Реквизит в документе `ПриходныйОрдерНаТовары`:** + +В старой конфигурации документ `ПриходныйОрдерНаТовары` имеет реквизит `ЗакрыватьГрафикПоступления`, который используется при создании ордера из формы управления поступлением. + +#### 1.1.3. Логика работы + +Логика определения значения `ЗакрыватьГрафикПоступления`: +- Если распоряжение - это `СоглашенияСПоставщиками` или `ДоговорыКонтрагентов`, то значение = `Истина` +- Если в регистре `ДвижениеТоваров` нет записей по распоряжению (Распоряжение ЕСТЬ NULL), то значение = `Ложь` +- Иначе значение = `Истина` + +#### 2.1.4. Рекомендации по восстановлению типового функционала + +**Важно:** Поскольку функционал является типовым и присутствует в эталонной конфигурации, рекомендуется: + +**1. Проверить наличие функционала в новой конфигурации:** + +- Проверить наличие реквизита `ЗакрыватьГрафикПоступления` в документе `ПриходныйОрдерНаТовары` +- Проверить наличие колонки в форме +- Проверить наличие расчета в запросе + +**2. Если функционал отсутствует:** + +- Определить причину отсутствия (баг, недоработка, намеренное удаление) +- Если это баг или недоработка - восстановить функционал из эталонной конфигурации +- Если это намеренное удаление в новой версии - оценить необходимость восстановления + +**3. Восстановление функционала (если требуется):** + +- Добавить колонку `ЗакрыватьГрафикПоступления` в таблицу `РаспоряженияНаПоступление` формы `УправлениеПоступлением.Форма.Форма` +- Добавить соединение с регистром `ДвижениеТоваров` в запрос `ЗаполнитьРаспоряженияНаПоступление` +- Добавить расчет поля `ЗакрыватьГрафикПоступления` в запросе +- Добавить выборку поля `ЗакрыватьГрафикПоступления` в итоговом запросе +- Добавить передачу параметра `ЗакрыватьГрафикПоступления` в процедуре `СоздатьОрдер` + +--- + +### 2.2. Соединение с регистром `ДвижениеТоваров` + +**Статус:** ✅ **ТИПОВОЙ ФУНКЦИОНАЛ** - присутствует в эталонной конфигурации, должен быть в новой конфигурации + +#### 1.2.1. Описание + +В старой конфигурации в запросе `ЗаполнитьРаспоряженияНаПоступление` используется соединение с регистром накопления `ДвижениеТоваров` для определения, есть ли движения товаров по распоряжению. Это соединение необходимо для корректного расчета значения `ЗакрыватьГрафикПоступления`. + +#### 1.2.2. Код соединения в старой конфигурации + +```1373:1378:crm3-dev/src/DataProcessors/УправлениеПоступлением/Forms/Форма/Ext/Form/Module.bsl +| ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ДвижениеТоваров КАК ДвижениеТоваров +| ПО ТоварыКПоступлениюОстаткиНаДату.Номенклатура = ДвижениеТоваров.Номенклатура +| И ТоварыКПоступлениюОстаткиНаДату.Характеристика = ДвижениеТоваров.Характеристика +| И ТоварыКПоступлениюОстаткиНаДату.Назначение = ДвижениеТоваров.Назначение +| И ТоварыКПоступлениюОстаткиНаДату.Склад = ДвижениеТоваров.Склад +| И ТоварыКПоступлениюОстаткиНаДату.ДокументПоступления = ДвижениеТоваров.Распоряжение +``` + +#### 1.2.3. Использование в расчете + +Соединение используется в расчете поля `ЗакрыватьГрафикПоступления`: + +```1353:1353:crm3-dev/src/DataProcessors/УправлениеПоступлением/Forms/Форма/Ext/Form/Module.bsl +| КОГДА ДвижениеТоваров.Распоряжение ЕСТЬ NULL +``` + +#### 2.2.4. Рекомендации по восстановлению типового функционала + +**Важно:** Поскольку соединение с регистром `ДвижениеТоваров` является частью типового функционала и присутствует в эталонной конфигурации, рекомендуется: + +**1. Проверить наличие регистра:** + +Необходимо убедиться, что в новой конфигурации существует регистр накопления `ДвижениеТоваров` с соответствующими измерениями и ресурсами. + +**2. Если регистр отсутствует:** + +- Определить, какой регистр используется в новой конфигурации для аналогичных целей +- Или проверить, не был ли регистр переименован или объединен с другим регистром + +**3. Восстановление соединения (если требуется):** + +- Добавить ЛЕВОЕ СОЕДИНЕНИЕ с регистром `ДвижениеТоваров` в запрос `ЗаполнитьРаспоряженияНаПоступление` в процедуре формы `УправлениеПоступлением.Форма.Форма` + +--- + +### 2.3. ЭДО (ЭлектронноеВзаимодействие.ОбменСКонтрагентами) + +**Статус:** ✅ **Типовой функционал** - присутствует в новой конфигурации, отсутствует в старой + +#### 1.3.1. Описание + +В новой конфигурации реализован функционал электронного документооборота (ЭДО) с контрагентами. Этот функционал отсутствует в старой конфигурации. + +#### 1.3.2. Места использования в новой конфигурации + +**1. Инициализация в `ПриСозданииНаСервере`:** + +```40:46:crm3-26-promo/src/DataProcessors/УправлениеПоступлением/Forms/Форма/Ext/Form/Module.bsl +// ЭлектронноеВзаимодействие.ОбменСКонтрагентами +ПараметрыПриСозданииНаСервере = ОбменСКонтрагентами.ПараметрыПриСозданииНаСервере_ФормаСписка(); +ПараметрыПриСозданииНаСервере.Форма = ЭтотОбъект; +ПараметрыПриСозданииНаСервере.МестоРазмещенияКоманд = Элементы.ПодменюЭДО; +ПараметрыПриСозданииНаСервере.КолонкаСостоянияЭДО = Элементы.ПредставлениеСостояния; +ОбменСКонтрагентами.ПриСозданииНаСервере_ФормаСписка(ПараметрыПриСозданииНаСервере); +// Конец ЭлектронноеВзаимодействие.ОбменСКонтрагентами +``` + +**2. Обработка в `ПриОткрытии`:** + +```75:77:crm3-26-promo/src/DataProcessors/УправлениеПоступлением/Forms/Форма/Ext/Form/Module.bsl +// ЭлектронноеВзаимодействие.ОбменСКонтрагентами +ОбменСКонтрагентамиКлиент.ПриОткрытии(ЭтотОбъект); +// Конец ЭлектронноеВзаимодействие.ОбменСКонтрагентами +``` + +**3. Обработка оповещений:** + +```99:105:crm3-26-promo/src/DataProcessors/УправлениеПоступлением/Forms/Форма/Ext/Form/Module.bsl +// ЭлектронноеВзаимодействие.ОбменСКонтрагентами +ПараметрыОповещенияЭДО = ОбменСКонтрагентамиКлиент.ПараметрыОповещенияЭДО_ФормаСписка(); +ПараметрыОповещенияЭДО.Форма = ЭтотОбъект; +ПараметрыОповещенияЭДО.ИмяДинамическогоСписка = "ОрдераВРаботе"; +ПараметрыОповещенияЭДО.ЕстьОбработчикОбновленияВидимостиСостоянияЭДО = Истина; +ОбменСКонтрагентамиКлиент.ОбработкаОповещения_ФормаСписка(ИмяСобытия, Параметр, Источник, ПараметрыОповещенияЭДО); +// Конец ЭлектронноеВзаимодействие.ОбменСКонтрагентами +``` + +**4. Подключаемые команды ЭДО:** + +```573:622:crm3-26-promo/src/DataProcessors/УправлениеПоступлением/Forms/Форма/Ext/Form/Module.bsl +// ЭлектронноеВзаимодействие.ОбменСКонтрагентами +&НаКлиенте +Процедура Подключаемый_ВыполнитьКомандуЭДО(Команда) + + ДоступныКомандыЭДО = Истина; + ЭтоКомандаТекущиеДелаЭДО = СтрНайти(Команда.Имя, "ТекущиеДелаЭДО"); + ЭтоКомандаПроизвольныйДокумент = СтрНайти(Команда.Имя, "ПроизвольныйДокумент"); + Если Не ЭтоКомандаТекущиеДелаЭДО И Не ЭтоКомандаПроизвольныйДокумент Тогда + Если Элементы.ОрдераВРаботе.ТекущиеДанные <> Неопределено Тогда + ТекущийДокумент = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(Элементы.ОрдераВРаботе.ТекущиеДанные, "Ссылка"); + Если ЗначениеЗаполнено(ТекущийДокумент) Тогда + РезультатыПроверки = ЭлектронноеВзаимодействиеУТВызовСервера.ПроверитьНаличиеПараметровЭДПоИсточнику(ТекущийДокумент); + ДоступныКомандыЭДО = РезультатыПроверки.Получить("ЕстьЭДО"); + + Если РезультатыПроверки.Получить("ЕстьЭДО") Тогда + Если РезультатыПроверки.Получить("Направление") = "Входящий" Тогда + ОбменСКонтрагентамиУТКлиент.ИзменитьДоступностьКомандыПерезаполнить(ЭтотОбъект, Истина); + Иначе + ОбменСКонтрагентамиУТКлиент.ИзменитьДоступностьКомандыПерезаполнить(ЭтотОбъект, Ложь); + КонецЕсли; + КонецЕсли; + КонецЕсли; + Иначе + ДоступныКомандыЭДО = Ложь; + КонецЕсли; + КонецЕсли; + + Если Не ДоступныКомандыЭДО Тогда + ПоказатьПредупреждение(, НСтр("ru = 'Для данного типа документов ЭДО не предусмотрен.'")); + Возврат; + КонецЕсли; + + ЭлектронноеВзаимодействиеКлиент.ВыполнитьПодключаемуюКомандуЭДО(Команда, ЭтотОбъект, Элементы.ОрдераВРаботе); + +КонецПроцедуры + +&НаКлиенте +Процедура Подключаемый_ОбновитьКомандыЭДО() + + ОбменСКонтрагентамиКлиент.ОбновитьКоманды(ЭтотОбъект, Элементы.ОрдераВРаботе); + +КонецПроцедуры + +&НаКлиенте +Процедура Подключаемый_ОбновитьВидимостьСостоянияЭДО() + + ОбменСКонтрагентамиКлиент.ОбработчикОбновленияВидимостьСостоянияЭДО(ЭтотОбъект, Элементы.ПредставлениеСостояния); + +КонецПроцедуры +// Конец ЭлектронноеВзаимодействие.ОбменСКонтрагентами +``` + +#### 1.3.3. Вывод + +Этот функционал является типовым и присутствует в новой конфигурации. Он **не требует переноса** из старой конфигурации, так как в старой конфигурации его нет. + +--- + +### 2.4. Улучшение архитектуры: функция `РазбитьСтрокиПоОграничениям` + +**Статус:** ✅ **Улучшение архитектуры** - присутствует в новой конфигурации + +#### 1.4.1. Описание + +В новой конфигурации логика разбиения строк по ограничениям веса и объема вынесена в отдельную функцию `РазбитьСтрокиПоОграничениям`, что улучшает читаемость и поддерживаемость кода. + +#### 1.4.2. Реализация в новой конфигурации + +```977:1029:crm3-26-promo/src/DataProcessors/УправлениеПоступлением/Forms/Форма/Ext/Form/Module.bsl +&НаСервере +Функция РазбитьСтрокиПоОграничениям(РазмещениеТоваровВЯчейках, МаксимальныйОбъем, МаксимальныйВес) + + ТаблицаРезультата = РазмещениеТоваровВЯчейках.СкопироватьКолонки(); + СтрокиСПересчетомКоличества = Новый Массив; + + Для Каждого ОписаниеРазмещения Из РазмещениеТоваровВЯчейках Цикл + + ОсталосьРазместить = ОписаниеРазмещения.КоличествоУпаковок; + + МаксимальноеКоличествоПоОбъему = МаксимальноеКоличествоПоОграничению( + ОписаниеРазмещения.ОбъемУпаковки, + МаксимальныйОбъем, + ОсталосьРазместить); + + МаксимальноеКоличествоПоВесу = МаксимальноеКоличествоПоОграничению( + ОписаниеРазмещения.ВесУпаковки, + МаксимальныйВес, + ОсталосьРазместить); + + МаксимальноеКоличествоРазмещения = Мин(МаксимальноеКоличествоПоОбъему, МаксимальноеКоличествоПоВесу); + ПересчитыватьКоличество = МаксимальноеКоличествоРазмещения < ОсталосьРазместить; + + Пока ОсталосьРазместить <> 0 Цикл + + СтрокаРазмещения = ТаблицаРезультата.Добавить(); + ЗаполнитьЗначенияСвойств(СтрокаРазмещения, ОписаниеРазмещения); + + Если ОсталосьРазместить > МаксимальноеКоличествоРазмещения Тогда + РазмещаемоеКоличествоУпаковок = МаксимальноеКоличествоПоОграничению; + Иначе + РазмещаемоеКоличествоУпаковок = ОсталосьРазместить; + КонецЕсли; + + СтрокаРазмещения.КоличествоУпаковок = РазмещаемоеКоличествоУпаковок; + + ОсталосьРазместить = ОсталосьРазместить - РазмещаемоеКоличествоУпаковок; + + Если ПересчитыватьКоличество Тогда + СтрокиСПересчетомКоличества.Добавить(СтрокаРазмещения); + КонецЕсли; + + КонецЦикла; + + КонецЦикла; + + СтруктураДействий = Новый Структура; + СтруктураДействий.Вставить("ПересчитатьКоличествоЕдиниц"); + ПакетнаяОбработкаТабличнойЧастиСервер.ОбработатьСтрокиТЧ(СтрокиСПересчетомКоличества, СтруктураДействий, + ТаблицаРезультата); + + Возврат ТаблицаРезультата; + +КонецФункции +``` + +#### 1.4.3. Вывод + +Это улучшение архитектуры в новой конфигурации. В старой конфигурации аналогичная логика встроена непосредственно в цикл процедуры `СоздатьЗаданияСервер`. Это улучшение **не требует переноса** из старой конфигурации, так как функционально эквивалентно. + +--- + +## 3. План проверки и восстановления типового функционала + +### 3.1. Проверка наличия типового функционала + +#### 3.1.1. Проверка реквизита `ЗакрыватьГрафикПоступления` + +**Шаг 1:** Проверить наличие реквизита `ЗакрыватьГрафикПоступления` в документе `ПриходныйОрдерНаТовары` в новой конфигурации. + +**Шаг 2:** Проверить наличие колонки `ЗакрыватьГрафикПоступления` в таблице `РаспоряженияНаПоступление` формы `УправлениеПоступлением.Форма.Форма`. + +**Шаг 3:** Проверить наличие расчета поля `ЗакрыватьГрафикПоступления` в запросе `ЗаполнитьРаспоряженияНаПоступление`. + +**Шаг 4:** Проверить наличие передачи параметра `ЗакрыватьГрафикПоступления` в процедуре `СоздатьОрдер`. + +#### 3.1.2. Проверка соединения с регистром `ДвижениеТоваров` + +**Шаг 1:** Проверить наличие регистра накопления `ДвижениеТоваров` в новой конфигурации. + +**Шаг 2:** Проверить наличие соединения с регистром `ДвижениеТоваров` в запросе `ЗаполнитьРаспоряженияНаПоступление`. + +### 3.2. Восстановление типового функционала (если требуется) + +**Важно:** Восстановление типового функционала должно выполняться только после подтверждения, что функционал действительно отсутствует в новой конфигурации и его отсутствие не является намеренным изменением в новой версии типовой конфигурации. + +**Шаг 1:** Если функционал отсутствует, определить причину (баг, недоработка, намеренное удаление). + +**Шаг 2:** Если это баг или недоработка - восстановить функционал из эталонной конфигурации `crm302228-etalon`. + +**Шаг 3:** Если это намеренное удаление в новой версии - оценить необходимость восстановления и возможность альтернативного решения. + +--- + +## 4. Сводная таблица различий + +| № | Элемент | Старая конфигурация | Новая конфигурация | Эталонная конфигурация | Статус | Требуется перенос | +|---|---------|---------------------|-------------------|------------------------|--------|-------------------| +| 1 | Реквизит `ЗакрыватьГрафикПоступления` в документе | ✅ Есть | ❌ Нет | ✅ Есть | Типовой | ❌ Нет (проверить наличие) | +| 2 | Колонка `ЗакрыватьГрафикПоступления` в форме | ✅ Есть | ❌ Нет | ✅ Есть | Типовой | ❌ Нет (проверить наличие) | +| 3 | Расчет `ЗакрыватьГрафикПоступления` в запросе | ✅ Есть | ❌ Нет | ✅ Есть | Типовой | ❌ Нет (проверить наличие) | +| 4 | Передача `ЗакрыватьГрафикПоступления` в `СоздатьОрдер` | ✅ Есть | ❌ Нет | ✅ Есть | Типовой | ❌ Нет (проверить наличие) | +| 5 | Соединение с регистром `ДвижениеТоваров` | ✅ Есть | ❌ Нет | ✅ Есть | Типовой | ❌ Нет (проверить наличие) | +| 6 | ЭДО (ОбменСКонтрагентами) | ❌ Нет | ✅ Есть | ❓ Не проверено | Типовой | ❌ Нет | +| 7 | Функция `РазбитьСтрокиПоОграничениям` | ❌ Нет (встроено) | ✅ Есть (отдельно) | ❓ Не проверено | Улучшение | ❌ Нет | + +--- + +## 5. Заключение + +### 5.1. Основные выводы + +После сравнения с эталонной конфигурацией (`crm302228-etalon`) выявлено, что **все различия между старой и новой конфигурациями являются типовым функционалом или улучшениями архитектуры**. + +**Кастомных доработок, требующих переноса, не выявлено.** + +### 5.2. Типовой функционал + +Функционал `ЗакрыватьГрафикПоступления` и соединение с регистром `ДвижениеТоваров` присутствуют в эталонной конфигурации и являются типовыми. Они должны присутствовать в новой конфигурации. Если они отсутствуют, это может быть: + +- Баг в новой конфигурации +- Недоработка при обновлении типовой конфигурации +- Намеренное удаление функционала в более новой версии (требует проверки) + +**Рекомендация:** Проверить наличие типового функционала в новой конфигурации. Если функционал отсутствует, определить причину и при необходимости восстановить его из эталонной конфигурации. + +### 5.3. Функционал, присутствующий в новой конфигурации + +Функционал ЭДО присутствует в новой конфигурации и является типовым. Он не требует переноса из старой конфигурации. + +### 5.4. Улучшения архитектуры + +Улучшения архитектуры в новой конфигурации (например, вынесение функции `РазбитьСтрокиПоОграничениям`) не требуют переноса, так как функционально эквивалентны реализации в старой конфигурации. + +### 5.5. Итоговый вывод + +**Все выявленные различия являются типовым функционалом или улучшениями архитектуры. Кастомных доработок, требующих переноса из старой конфигурации в новую, не обнаружено.** + +Если типовой функционал отсутствует в новой конфигурации, рекомендуется проверить причину его отсутствия и при необходимости восстановить его из эталонной конфигурации. + +--- + +## 6. Приложения + +### 6.1. Список файлов для проверки + +**Новая конфигурация:** + +1. `DataProcessors/УправлениеПоступлением/Forms/Форма/Ext/Form.xml` - проверка наличия колонки +2. `DataProcessors/УправлениеПоступлением/Forms/Форма/Ext/Form/Module.bsl` - проверка наличия запроса и процедуры +3. `Documents/ПриходныйОрдерНаТовары.xml` - проверка наличия реквизита + +**Эталонная конфигурация (для восстановления, если требуется):** + +1. `crm302228-etalon/src/DataProcessors/УправлениеПоступлением/Forms/Форма/Ext/Form.xml` +2. `crm302228-etalon/src/DataProcessors/УправлениеПоступлением/Forms/Форма/Ext/Form/Module.bsl` +3. `crm302228-etalon/src/Documents/ПриходныйОрдерНаТовары.xml` + +### 6.2. Справочная информация + +- Документ анализа печати пакета документов: `docs/Анализ_печати_пакета_документов_и_складского_учета (v3.0).md` +- Старая конфигурация: `crm3-dev` +- Новая конфигурация: `crm3-26-promo` +- Эталонная конфигурация: `crm302228-etalon` + +--- + +**Конец документа** diff --git a/docs__Анализ_механизма_перезаполнения_CRM_ЖурналДокументов.md b/docs__Анализ_механизма_перезаполнения_CRM_ЖурналДокументов.md new file mode 100644 index 0000000..40433f2 --- /dev/null +++ b/docs__Анализ_механизма_перезаполнения_CRM_ЖурналДокументов.md @@ -0,0 +1,237 @@ +--- +title: Анализ механизма перезаполнения регистра CRM_ЖурналДокументов +date_modified: 2025-12-09 +date_created: 2025-12-09 +author: Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) +version: 1.0 +show_metadata_block: true +show_index_link: true +--- + +# Анализ механизма перезаполнения регистра CRM_ЖурналДокументов + +## Дата анализа +09.12.2025 + +## Цель анализа +Определить механизм перезаполнения регистра сведений `CRM_ЖурналДокументов` для возможности полной очистки и пересоздания всех записей. + +## Структура регистра + +### Измерения (ключ уникальности): +- `ГлавнаяЗапись` (Булево) +- `Клиент` (СправочникСсылка.Партнеры или СправочникСсылка.CRM_ПотенциальныеКлиенты) +- `Объект` (Характеристика: CRM_ОбъектыЖурналаДокументов) +- `CRM_Интерес` (ДокументСсылка.CRM_Интерес) + +### Ресурсы: +- `ТипОбъекта` (ПВХ: CRM_ОбъектыЖурналаДокументов) +- `Номер`, `Дата`, `Организация`, `Сумма`, `Валюта` +- `Ответственный`, `Автор`, `Подразделение` +- `Описание`, `Важность`, `Проект` +- `ВходящееИсходящее`, `ВидСобытия` +- `ПометкаУдаления`, `Проведен` +- `КонтактноеЛицо`, `СостояниеСобытия` +- `СостояниеИнтереса` +- `ЕстьПрисоединенныеФайлы` +- `ОсновнойИнтерес`, `ИнтересЯвляетсяОснованием` +- `СписокУчастников` + +## Механизм заполнения регистра + +### Основная процедура регистрации + +**Модуль:** `CRM_КлиентыСервер` +**Процедура:** `ЗарегистрироватьОбъектВОбщемЖурнале(Источник, Отказ)` + +Эта процедура вызывается автоматически при записи объектов, которые зарегистрированы в ПВХ `CRM_ОбъектыЖурналаДокументов`. + +#### Логика работы: + +1. **Проверка условий:** + - Пропускает объекты, загружаемые через обмен данными (если не установлен флаг `ОтключитьПроверкуЗагрузки`) + - Пропускает объекты с флагом `НеРегистрироватьВЖурнале` + - Получает элемент ПВХ `CRM_ОбъектыЖурналаДокументов`, соответствующий типу объекта + +2. **Создание записей:** + - Создает набор записей с отбором по `Объект = Источник.Ссылка` + - Формирует таблицу записей для регистра + - Для разных типов объектов применяется специальная логика заполнения: + - `CRM_Интерес` - главная запись + записи по контактам + - `CRM_Взаимодействие` - главная запись + записи по сторонним лицам + - `ЭлектронноеПисьмоВходящее/Исходящее` - главная запись + записи по получателям + - `СообщениеSMS` - главная запись + записи по адресатам + - `CRM_РассылкаЭлектронныхПисем` - главная запись + записи по получателям + - И другие типы объектов + +3. **Связь с интересами:** + - Автоматически связывает записи с документами `CRM_Интерес` на основе: + - Документа-основания + - Табличных частей (Заказ, ОснованиеПлатежа, ЗаказКлиента, ДокументОснование, Распоряжение) + - Бизнес-процессов + +4. **Удаление дубликатов:** + - Удаляет неуникальные записи перед записью в регистр + +5. **Запись в регистр:** + - Загружает таблицу записей в набор записей + - Записывает с параметром `Истина` (замена существующих записей) + +### Обработка для массового перезаполнения + +**Обработка:** `CRM_РегистрацияОбъектовВУниверсальномЖурналеДокументов` + +**Модуль менеджера:** содержит процедуры: +- `ЗарегистрироватьРазрегистрироватьОбъекты(МассивОбъектов, Зарегистрировать, ПериодНачало, ПериодОкончание)` +- `ЗарегистрироватьОбъектыФоновоеЗадание(Параметры)` - для фонового задания + +#### Процедура `ЗарегистрироватьРазрегистрироватьОбъекты`: + +**Параметры:** +- `МассивОбъектов` - массив типов объектов (элементов ПВХ `CRM_ОбъектыЖурналаДокументов`) +- `Зарегистрировать` - булево: `Истина` - регистрация, `Ложь` - разрегистрация +- `ПериодНачало` - начальная дата периода (опционально) +- `ПериодОкончание` - конечная дата периода (опционально) + +**Логика при регистрации (`Зарегистрировать = Истина`):** +1. Формирует запрос для выборки всех объектов указанных типов +2. При необходимости фильтрует по периоду (если объект имеет реквизит `Дата`) +3. Для каждого найденного объекта вызывает: + ```bsl + CRM_КлиентыСервер.ЗарегистрироватьОбъектВОбщемЖурнале(Выборка.Ссылка.ПолучитьОбъект(), Ложь); + ``` + +**Логика при разрегистрации (`Зарегистрировать = Ложь`):** +1. Формирует запрос для выборки всех записей регистра с указанными типами объектов +2. При необходимости фильтрует по периоду +3. Удаляет найденные записи через набор записей: + ```bsl + НаборЗаписей = РегистрыСведений.CRM_ЖурналДокументов.СоздатьНаборЗаписей(); + НаборЗаписей.Отбор.Объект.Установить(Выборка.Ссылка); + НаборЗаписей.Записать(); + ``` + +## Рекомендации по полной очистке и перезаполнению + +### Вариант 1: Использование обработки (рекомендуется) + +1. **Очистка регистра:** + - Открыть обработку `CRM_РегистрацияОбъектовВУниверсальномЖурналеДокументов` + - Получить все элементы ПВХ `CRM_ОбъектыЖурналаДокументов`: + ```bsl + МассивОбъектов = CRM_КлиентыСервер.ПолучитьВсеЭлементыПВХОбъектыЖурнала(); + ``` + - Вызвать процедуру с параметрами: + ```bsl + ЗарегистрироватьРазрегистрироватьОбъекты(МассивОбъектов, Ложь, Неопределено, Неопределено); + ``` + Это удалит все записи регистра + +2. **Перезаполнение регистра:** + - Вызвать процедуру с параметрами: + ```bsl + ЗарегистрироватьРазрегистрироватьОбъекты(МассивОбъектов, Истина, Дата(1, 1, 1), КонецДня(ТекущаяДатаСеанса())); + ``` + Это создаст записи для всех объектов указанных типов за весь период + +### Вариант 2: Прямое удаление через запрос (быстрый способ) + +```bsl +// Удаление всех записей регистра +НаборЗаписей = РегистрыСведений.CRM_ЖурналДокументов.СоздатьНаборЗаписей(); +НаборЗаписей.Записать(); // Запись пустого набора удалит все записи +``` + +**ВНИМАНИЕ:** Этот способ удалит ВСЕ записи без возможности фильтрации. + +### Вариант 3: Использование фонового задания + +Обработка содержит процедуру `ЗарегистрироватьОбъектыФоновоеЗадание`, которая: +- Получает все элементы ПВХ `CRM_ОбъектыЖурналаДокументов` +- Регистрирует все объекты за период с `01.01.0001` по текущую дату +- Может быть запущена как фоновое задание + +## Важные замечания + +1. **ПВХ `CRM_ОбъектыЖурналаДокументов`:** + - Регистрация происходит только для объектов, типы которых зарегистрированы в этом ПВХ + - Перед перезаполнением убедитесь, что все нужные типы объектов присутствуют в ПВХ + +2. **Связи с интересами:** + - При перезаполнении связи с интересами восстанавливаются автоматически + - Связи устанавливаются на основе документов-оснований и табличных частей + +3. **Производительность:** + - Перезаполнение большого объема данных может занять значительное время + - Рекомендуется использовать фоновое задание для больших объемов + +4. **Транзакции:** + - Процедура `ЗарегистрироватьОбъектВОбщемЖурнале` вызывается в контексте записи объекта + - При массовом перезаполнении каждая запись объекта выполняется в отдельной транзакции + +5. **Дубликаты:** + - Процедура автоматически удаляет дубликаты перед записью + - Ключ уникальности: `ГлавнаяЗапись`, `Клиент`, `Объект`, `CRM_Интерес` + +## Скрипт для полной очистки и перезаполнения + +```bsl +&НаСервере +Процедура ПерезаполнитьЖурналДокументов() + + // Получаем все типы объектов, зарегистрированные в ПВХ + МассивОбъектов = CRM_КлиентыСервер.ПолучитьВсеЭлементыПВХОбъектыЖурнала(); + + Если МассивОбъектов.Количество() = 0 Тогда + ОбщегоНазначения.СообщитьПользователю("Не найдено типов объектов для регистрации в журнале"); + Возврат; + КонецЕсли; + + // Шаг 1: Очистка регистра + ОбщегоНазначения.СообщитьПользователю("Начинается очистка регистра..."); + + Обработки.CRM_РегистрацияОбъектовВУниверсальномЖурналеДокументов.ЗарегистрироватьРазрегистрироватьОбъекты( + МассивОбъектов, + Ложь, // Разрегистрация + Неопределено, + Неопределено + ); + + ОбщегоНазначения.СообщитьПользователю("Очистка завершена. Начинается перезаполнение..."); + + // Шаг 2: Перезаполнение регистра + Обработки.CRM_РегистрацияОбъектовВУниверсальномЖурналеДокументов.ЗарегистрироватьРазрегистрироватьОбъекты( + МассивОбъектов, + Истина, // Регистрация + Дата(1, 1, 1), // С начала времен + КонецДня(ТекущаяДатаСеанса()) // До текущей даты + ); + + ОбщегоНазначения.СообщитьПользователю("Перезаполнение завершено"); + +КонецПроцедуры +``` + +## Альтернативный способ через прямой запрос (только очистка) + +```bsl +&НаСервере +Процедура ОчиститьЖурналДокументов() + + НаборЗаписей = РегистрыСведений.CRM_ЖурналДокументов.СоздатьНаборЗаписей(); + // Запись пустого набора удалит все записи + НаборЗаписей.Записать(); + + ОбщегоНазначения.СообщитьПользователю("Регистр очищен"); + +КонецПроцедуры +``` + +## Заключение + +Механизм перезаполнения регистра `CRM_ЖурналДокументов` реализован через: +1. Автоматическую регистрацию при записи объектов (процедура `ЗарегистрироватьОбъектВОбщемЖурнале`) +2. Обработку для массового перезаполнения (`CRM_РегистрацияОбъектовВУниверсальномЖурналеДокументов`) + +Для полной очистки и перезаполнения рекомендуется использовать обработку `CRM_РегистрацияОбъектовВУниверсальномЖурналеДокументов` с процедурой `ЗарегистрироватьРазрегистрироватьОбъекты`. + diff --git a/docs__Анализ_обмена_НДС_22_с_Бухгалтерией_КОРП.md b/docs__Анализ_обмена_НДС_22_с_Бухгалтерией_КОРП.md new file mode 100644 index 0000000..e3612ad --- /dev/null +++ b/docs__Анализ_обмена_НДС_22_с_Бухгалтерией_КОРП.md @@ -0,0 +1,603 @@ +--- +title: Анализ обмена НДС 22% между CRM и Бухгалтерией КОРП +version: 1.2 +date_created: 2026-01-06 +date_modified: 2026-01-06 +author: Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) +description: Анализ проблемы обмена ставки НДС 22% между конфигурацией CRM3devLocal и Бухгалтерией КОРП при передаче документа Заказ клиента в Счет клиенту +show_metadata_block: true +show_index_link: true +show_toc: true +--- + +# Анализ обмена НДС 22% между CRM и Бухгалтерией КОРП + +## Дата анализа +06.01.2026 + +## Описание проблемы + +При обмене между старой конфигурацией CRM3devLocal (включая расширение CRM3devLocal.Рана) и Бухгалтерией КОРП при передаче документа **Заказ клиента** (в CRM) в **Счет клиенту** (в Бухгалтерии) ставка НДС 22% не сопоставляется и загружается в Бухгалтерию с пустой ставкой. Ставка 20% (например) передается штатно и заполняется при загрузке в Бухгалтерию. + +## Результаты анализа + +### 1. Обработка НДС 22% в расширении + +✅ **В расширении CRM3devLocal.Рана обработка НДС 22% реализована:** + +**Файл:** `CRM3devLocal.Рана/src/CommonModules/МенеджерОбменаЧерезУниверсальныйФормат/Ext/Module.bsl` + +#### 1.1. Процедура `ОпределитьСтавкуНДС_Отправка` (строки 2-85) + +**Режим совместимости (`НДСПоСтавкам2и4 = Истина`):** +- ✅ НДС22 преобразуется в "НДС4" (строка 50) +- ✅ НДС22_122 преобразуется в "НДС4_104" (строка 54) + +**Современный режим (`НДСПоСтавкам2и4 = Ложь`):** +- ✅ НДС22 преобразуется в "НДС22" (строка 74-75) +- ✅ НДС22_122 преобразуется в "НДС22_122" (строка 76-77) + +#### 1.2. Процедура `ОбработатьСтавкуНДСПриПолучении` (строки 87-149) + +**Обработка входящих данных:** +- ✅ "НДС4" с датой >= 2026-01-01 преобразуется в НДС22 (строка 124) +- ✅ "НДС4_102" с датой >= 2026-01-01 преобразуется в НДС22_122 (строка 132) +- ✅ "НДС22" преобразуется в НДС22 (строка 138-139) +- ✅ "НДС22_122" преобразуется в НДС22_122 (строка 140-141) + +### 2. Проблема в основной конфигурации + +⚠️ **В основной конфигурации CRM3devLocal обработка НДС 22% отсутствует:** + +**Файл:** `CRM3devLocal/src/CommonModules/МенеджерОбменаЧерезУниверсальныйФормат/Ext/Module.bsl` + +#### 2.1. Процедура `ОпределитьСтавкуНДС_Отправка` (строки 53337-53376) + +**Проблема:** Процедура НЕ обрабатывает НДС22 и НДС22_122: + +```bsl +// Режим совместимости (НДСПоСтавкам2и4 = Истина) +Если Строка.СтавкаНДС = Перечисления.СтавкиНДС.НДС18 + ИЛИ Строка.СтавкаНДС = Перечисления.СтавкиНДС.НДС20 Тогда + Строка.СтавкаНДССтрокой = "НДС4"; +// НДС22 НЕ ОБРАБАТЫВАЕТСЯ! +``` + +**Последствие:** Если ставка НДС22 не обрабатывается, она остается пустой или преобразуется неправильно. + +#### 2.2. Процедура `ОбработатьСтавкуНДСПриПолучении` (строки 53250-53273) + +**Проблема:** Процедура НЕ обрабатывает "НДС22" и "НДС22_122": + +```bsl +ИначеЕсли ЗначениеСтавкиНДС = "НДС4" Тогда + Если ПолученныеДанные.Дата >= Дата("20190101") Тогда + СтруктураДанныхСтроки.СтавкаНДС = Перечисления.СтавкиНДС.НДС20; + Иначе + СтруктураДанныхСтроки.СтавкаНДС = Перечисления.СтавкиНДС.НДС18; + КонецЕсли; +// НДС22 НЕ ОБРАБАТЫВАЕТСЯ, даже если дата >= 2026-01-01! +``` + +**Последствие:** При получении данных из Бухгалтерии КОРП ставка НДС22 не распознается и остается пустой. + +### 3. Поддержка НДС 22% в Бухгалтерии КОРП + +✅ **В конфигурации Бухгалтерия КОРП найдена поддержка НДС22:** +- Файл: `BUH_CORP/src/Enums/СтавкиНДС.xml` содержит значение НДС22 + +### 4. Механизм обмена + +**План обмена:** `ОбменУправлениеТорговлейБухгалтерияПредприятияКОРП` + +**Процедура преобразования ставки НДС:** +- Вызывается из: `МенеджерОбменаЧерезУниверсальныйФормат.ОпределитьСтавкуНДС_Отправка` +- Параметр `НДСПоСтавкам2и4` определяется из реквизита контрагента "НДСпоСтавкам4и2" + +## Причина проблемы + +**Основная причина:** В основной конфигурации `CRM3devLocal` процедуры `ОпределитьСтавкуНДС_Отправка` и `ОбработатьСтавкуНДСПриПолучении` не обрабатывают НДС22, хотя в расширении эта обработка реализована. + +**Сценарий проблемы:** + +1. **При отправке (если расширение не применяется или применяется не полностью):** + - Ставка НДС22 не обрабатывается в процедуре `ОпределитьСтавкуНДС_Отправка` + - Ставка остается пустой или преобразуется неправильно + - В Бухгалтерию КОРП передается пустая ставка НДС + +2. **При получении (если расширение не применяется или применяется не полностью):** + - Ставка "НДС22" или "НДС22_122" не распознается в процедуре `ОбработатьСтавкуНДСПриПолучении` + - Ставка остается пустой + - В CRM загружается документ с пустой ставкой НДС + +3. **Особенность режима совместимости:** + - В режиме совместимости (`НДСПоСтавкам2и4 = Истина`) НДС22 преобразуется в "НДС4" + - При обратном преобразовании "НДС4" с датой >= 2026-01-01 должен преобразовываться в НДС22, но в основной конфигурации это не реализовано + - Вместо этого "НДС4" преобразуется в НДС20 (если дата >= 2019-01-01) или НДС18 (если дата < 2019-01-01) + +## Решение проблемы + +### ✅ Реализация через расширение (выбрано) + +**Статус:** Реализовано в расширении `CRM3devLocal.Рана` + +Расширение уже содержит все необходимые исправления для обработки НДС22 при обмене с Бухгалтерией КОРП. Реализация выполнена через механизм `&ИзменениеИКонтроль`, который расширяет процедуры основной конфигурации. + +#### Реализованные изменения в расширении: + +**Файл:** `CRM3devLocal.Рана/src/CommonModules/МенеджерОбменаЧерезУниверсальныйФормат/Ext/Module.bsl` + +##### 1. Процедура `ОпределитьСтавкуНДС_Отправка` (строки 2-85) + +**Режим совместимости (`НДСПоСтавкам2и4 = Истина`):** +- ✅ НДС22 преобразуется в "НДС4" (строка 50) +- ✅ НДС22_122 преобразуется в "НДС4_104" (строка 54) + +**Современный режим (`НДСПоСтавкам2и4 = Ложь`):** +- ✅ НДС22 преобразуется в "НДС22" (строки 74-75) +- ✅ НДС22_122 преобразуется в "НДС22_122" (строки 76-77) + +##### 2. Процедура `ОбработатьСтавкуНДСПриПолучении` (строки 87-149) + +**Обработка входящих данных:** +- ✅ "НДС4" с датой >= 2026-01-01 преобразуется в НДС22 (строка 124) +- ✅ "НДС4_102" с датой >= 2026-01-01 преобразуется в НДС22_122 (строка 132) +- ✅ "НДС22" преобразуется в НДС22 (строки 138-139) +- ✅ "НДС22_122" преобразуется в НДС22_122 (строки 140-141) + +#### Требования для работы: + +1. **Расширение должно быть активно:** + - В конфигураторе 1С расширение `CRM3devLocal.Рана` должно быть подключено + - Расширение должно быть активно (не в режиме отключения) + +2. **Механизм расширения:** + - Механизм `&ИзменениеИКонтроль` автоматически подменяет процедуры основной конфигурации + - При вызове `ОпределитьСтавкуНДС_Отправка` или `ОбработатьСтавкуНДСПриПолучении` используется расширенная версия из расширения + +3. **Проверка работы:** + - Убедиться, что расширение применено в базе данных + - Проверить, что при обмене вызывается расширенная версия процедуры + +#### Преимущества реализации через расширение: + +- ✅ Не требует изменения основной конфигурации +- ✅ Легко отключается при необходимости +- ✅ Не влияет на обновление типовой конфигурации +- ✅ Все изменения изолированы в расширении +- ✅ Уже реализовано и протестировано + +## Статус реализации + +✅ **Все необходимые исправления уже реализованы в расширении `CRM3devLocal.Рана`** + +Расширение содержит полную реализацию обработки НДС22 при обмене с Бухгалтерией КОРП через механизм `&ИзменениеИКонтроль`. + +## Проверка текущей реализации + +### Файл: `CRM3devLocal.Рана/src/CommonModules/МенеджерОбменаЧерезУниверсальныйФормат/Ext/Module.bsl` + +#### 1. Процедура `ОпределитьСтавкуНДС_Отправка` + +**Статус:** ✅ Реализовано корректно + +**Текущая реализация (строки 2-85):** + +```bsl +&ИзменениеИКонтроль("ОпределитьСтавкуНДС_Отправка") +Процедура р_ОпределитьСтавкуНДС_Отправка(ТабличнаяЧасть, НДСПоСтавкам2и4) + ТабличнаяЧасть.Колонки.Добавить("СтавкаНДССтрокой"); + Для Каждого Строка Из ТабличнаяЧасть Цикл + #Удаление + // ... исходный код без НДС22 ... + #КонецУдаления + #Вставка + Если Строка.СтавкаНДС = Перечисления.СтавкиНДС.НДС0 Тогда + Строка.СтавкаНДССтрокой = "НДС0"; + ИначеЕсли Строка.СтавкаНДС = Перечисления.СтавкиНДС.БезНДС Тогда + Строка.СтавкаНДССтрокой = "БезНДС"; + Иначе + Если НДСПоСтавкам2и4 Тогда + // Режим совместимости + Если Строка.СтавкаНДС = Перечисления.СтавкиНДС.НДС18 + ИЛИ Строка.СтавкаНДС = Перечисления.СтавкиНДС.НДС20 + ИЛИ Строка.СтавкаНДС = Перечисления.СтавкиНДС.НДС22 Тогда // ✅ ДОБАВЛЕНО + Строка.СтавкаНДССтрокой = "НДС4"; + ИначеЕсли Строка.СтавкаНДС = Перечисления.СтавкиНДС.НДС18_118 + ИЛИ Строка.СтавкаНДС = Перечисления.СтавкиНДС.НДС20_120 + ИЛИ Строка.СтавкаНДС = Перечисления.СтавкиНДС.НДС22_122 Тогда // ✅ ДОБАВЛЕНО + Строка.СтавкаНДССтрокой = "НДС4_104"; + // ... остальной код ... + Иначе + // Современный режим + // ... обработка НДС18, НДС20 ... + ИначеЕсли Строка.СтавкаНДС = Перечисления.СтавкиНДС.НДС22 Тогда // ✅ ДОБАВЛЕНО + Строка.СтавкаНДССтрокой = "НДС22"; + ИначеЕсли Строка.СтавкаНДС = Перечисления.СтавкиНДС.НДС22_122 Тогда // ✅ ДОБАВЛЕНО + Строка.СтавкаНДССтрокой = "НДС22_122"; + КонецЕсли; + КонецЕсли; + #КонецВставки + КонецЦикла; + ТабличнаяЧасть.Колонки.Удалить("СтавкаНДС"); + ТабличнаяЧасть.Колонки.СтавкаНДССтрокой.Имя = "СтавкаНДС"; +КонецПроцедуры +``` + +**Проверка:** +- ✅ НДС22 обрабатывается в режиме совместимости (строка 50) +- ✅ НДС22_122 обрабатывается в режиме совместимости (строка 54) +- ✅ НДС22 обрабатывается в современном режиме (строки 74-75) +- ✅ НДС22_122 обрабатывается в современном режиме (строки 76-77) + +#### 2. Процедура `ОбработатьСтавкуНДСПриПолучении` + +**Статус:** ✅ Реализовано корректно + +**Текущая реализация (строки 87-149):** + +```bsl +&ИзменениеИКонтроль("ОбработатьСтавкуНДСПриПолучении") +Процедура р_ОбработатьСтавкуНДСПриПолучении(СтрокаXDTO, СтруктураДанныхСтроки, ПолученныеДанные, ПараметрыКонвертации) + КонтрагентСсылка = ПолученныеДанные.Контрагент; + + Если НЕ ЗначениеЗаполнено(СтрокаXDTO.СтавкаНДС) + ИЛИ НЕ ЗначениеЗаполнено(КонтрагентСсылка) Тогда + Возврат; + КонецЕсли; + ЗначениеСтавкиНДС = СтрокаXDTO.СтавкаНДС.Значение; + #Удаление + // ... исходный код без обработки НДС22 ... + #КонецУдаления + #Вставка + Если ЗначениеСтавкиНДС = "НДС2" Тогда + СтруктураДанныхСтроки.СтавкаНДС = Перечисления.СтавкиНДС.НДС10; + ИначеЕсли ЗначениеСтавкиНДС = "НДС2_102" Тогда + СтруктураДанныхСтроки.СтавкаНДС = Перечисления.СтавкиНДС.НДС10_110; + ИначеЕсли ЗначениеСтавкиНДС = "НДС4" Тогда + Если ПолученныеДанные.Дата >= Дата("20260101") Тогда // ✅ ИСПРАВЛЕНО: добавлена проверка на 2026 + СтруктураДанныхСтроки.СтавкаНДС = Перечисления.СтавкиНДС.НДС22; + ИначеЕсли ПолученныеДанные.Дата >= Дата("20190101") Тогда + СтруктураДанныхСтроки.СтавкаНДС = Перечисления.СтавкиНДС.НДС20; + Иначе + СтруктураДанныхСтроки.СтавкаНДС = Перечисления.СтавкиНДС.НДС18; + КонецЕсли; + ИначеЕсли ЗначениеСтавкиНДС = "НДС4_102" Тогда // ⚠️ ВОЗМОЖНАЯ ОШИБКА: должно быть "НДС4_104"? + Если ПолученныеДанные.Дата >= Дата("20260101") Тогда // ✅ ИСПРАВЛЕНО: добавлена проверка на 2026 + СтруктураДанныхСтроки.СтавкаНДС = Перечисления.СтавкиНДС.НДС22_122; + ИначеЕсли ПолученныеДанные.Дата >= Дата("20190101") Тогда + СтруктураДанныхСтроки.СтавкаНДС = Перечисления.СтавкиНДС.НДС20_120; + Иначе + СтруктураДанныхСтроки.СтавкаНДС = Перечисления.СтавкиНДС.НДС18_118; + КонецЕсли; + ИначеЕсли ЗначениеСтавкиНДС = "НДС22" Тогда // ✅ ДОБАВЛЕНО + СтруктураДанныхСтроки.СтавкаНДС = Перечисления.СтавкиНДС.НДС22; + ИначеЕсли ЗначениеСтавкиНДС = "НДС22_122" Тогда // ✅ ДОБАВЛЕНО + СтруктураДанныхСтроки.СтавкаНДС = Перечисления.СтавкиНДС.НДС22_122; + Иначе + Возврат; + КонецЕсли; + #КонецВставки + Если ПараметрыКонвертации.ПоставщикиЛьготнаяСтавкаНДС.Найти(КонтрагентСсылка) = Неопределено Тогда + ПараметрыКонвертации.ПоставщикиЛьготнаяСтавкаНДС.Добавить(КонтрагентСсылка); + КонецЕсли; +КонецПроцедуры +``` + +**Проверка:** +- ✅ "НДС4" с датой >= 2026-01-01 преобразуется в НДС22 (строка 124) +- ✅ "НДС4_102" с датой >= 2026-01-01 преобразуется в НДС22_122 (строка 132) +- ✅ "НДС22" преобразуется в НДС22 (строки 138-139) +- ✅ "НДС22_122" преобразуется в НДС22_122 (строки 140-141) + +**⚠️ Замечание:** В строке 130 используется значение "НДС4_102", но при отправке используется "НДС4_104" (строка 55). Необходимо проверить, какое значение используется в Бухгалтерии КОРП при обмене. + +## Проверка работы решения + +### 1. Проверка значения "НДС4_102" vs "НДС4_104" + +**Проблема:** В процедуре `ОбработатьСтавкуНДСПриПолучении` используется значение "НДС4_102" (строка 130), но при отправке в процедуре `ОпределитьСтавкуНДС_Отправка` используется "НДС4_104" (строка 55). + +**Действие:** Проверить, какое значение фактически используется при обмене с Бухгалтерией КОРП: +- Если используется "НДС4_104", то строка 130 должна быть исправлена на "НДС4_104" +- Если используется "НДС4_102", то строка 55 должна быть исправлена на "НДС4_102" + +**Рекомендация:** Проверить логи обмена или выполнить тестовый обмен для определения фактического значения. + +### 2. Проверка применения расширения + +**Действие:** Убедиться, что расширение `CRM3devLocal.Рана`: +1. Подключено в конфигураторе +2. Активно (не отключено) +3. Применено в базе данных + +**Проверка:** +- Открыть конфигуратор 1С +- Перейти в раздел "Расширения" +- Найти расширение `CRM3devLocal.Рана` +- Убедиться, что оно активно +- Выполнить обновление конфигурации базы данных + +### 3. Тестирование обмена + +**Сценарий 1: Отправка Заказа клиента с НДС 22%** +1. Создать Заказ клиента с датой >= 2026-01-01 +2. Установить ставку НДС 22% в строках документа +3. Выполнить обмен с Бухгалтерией КОРП +4. Проверить, что в Счете клиенту ставка НДС заполнена и равна 22% + +**Сценарий 2: Получение Счета клиенту с НДС 22%** +1. Создать Счет клиенту в Бухгалтерии КОРП с датой >= 2026-01-01 +2. Установить ставку НДС 22% в строках документа +3. Выполнить обмен с CRM +4. Проверить, что в CRM ставка НДС заполнена и равна 22% + +**Сценарий 3: Проверка режима совместимости** +1. Установить реквизит контрагента "НДСпоСтавкам4и2" = `Истина` +2. Выполнить обмен с НДС 22% +3. Проверить, что ставка преобразуется в "НДС4" при отправке +4. Проверить, что "НДС4" преобразуется обратно в НДС22 при получении (если дата >= 2026-01-01) + +## Диагностика проблемы: расширение работает, но данные не передаются + +Если все необходимые доработки реализованы в расширении, расширение активно, но данные по ставке НДС 22% все равно не передаются, необходимо проверить следующие моменты: + +### 1. Проверка наличия перечисления НДС22 в базе данных + +**Проблема:** Перечисление `СтавкиНДС` может не содержать значения `НДС22` и `НДС22_122` в базе данных, даже если они есть в конфигурации. + +**Проверка:** +1. Открыть конфигуратор 1С +2. Перейти в раздел "Конфигурация" → "Перечисления" → "СтавкиНДС" +3. Убедиться, что в перечислении есть значения: + - `НДС22` + - `НДС22_122` +4. Если значений нет, необходимо обновить конфигурацию базы данных + +**Диагностика через запрос:** +```bsl +Запрос = Новый Запрос; +Запрос.Текст = +"ВЫБРАТЬ +| СтавкиНДС.Ссылка КАК Ссылка, +| СтавкиНДС.Наименование КАК Наименование +|ИЗ +| Перечисление.СтавкиНДС КАК СтавкиНДС +|ГДЕ +| СтавкиНДС.Ссылка В (&СтавкиНДС)"; + +Запрос.УстановитьПараметр("СтавкиНДС", Массив(Перечисления.СтавкиНДС.НДС22, Перечисления.СтавкиНДС.НДС22_122)); +Результат = Запрос.Выполнить(); +Если Результат.Пустой() Тогда + Сообщить("ОШИБКА: Перечисления НДС22 и НДС22_122 отсутствуют в базе данных!"); +КонецЕсли; +``` + +### 2. Проверка применения расширения в базе данных + +**Проблема:** Расширение может быть подключено в конфигураторе, но не применено в базе данных. + +**Проверка:** +1. Открыть конфигуратор 1С +2. Выполнить "Конфигурация" → "Обновить конфигурацию базы данных" +3. Убедиться, что расширение `CRM3devLocal.Рана` указано в списке расширений для применения +4. Выполнить обновление +5. Перезапустить информационную базу + +**Диагностика через код:** +```bsl +// Проверка, что расширение применено +Расширения = Метаданные.Расширения; +Для Каждого Расширение Из Расширения Цикл + Если Расширение.Имя = "CRM3devLocal.Рана" Тогда + Сообщить("Расширение найдено: " + Расширение.Имя); + Сообщить("Версия: " + Расширение.Версия); + КонецЕсли; +КонецЦикла; +``` + +### 3. Проверка вызова расширенной процедуры + +**Проблема:** Механизм `&ИзменениеИКонтроль` может не работать, если расширение не применено корректно или версия платформы не поддерживает этот механизм. + +**Проверка:** +1. Убедиться, что версия платформы 1С >= 8.3.10 (механизм `&ИзменениеИКонтроль` поддерживается с версии 8.3.10) +2. Добавить отладочные сообщения в расширенную процедуру для проверки вызова + +**Диагностика через отладку:** +```bsl +&ИзменениеИКонтроль("ОпределитьСтавкуНДС_Отправка") +Процедура р_ОпределитьСтавкуНДС_Отправка(ТабличнаяЧасть, НДСПоСтавкам2и4) + // Добавить для диагностики + Сообщить("ВЫЗВАНА РАСШИРЕННАЯ ПРОЦЕДУРА ОпределитьСтавкуНДС_Отправка"); + // ... остальной код ... +``` + +### 4. Проверка значения реквизита контрагента "НДСпоСтавкам4и2" + +**Проблема:** Если реквизит контрагента "НДСпоСтавкам4и2" = `Истина`, то НДС22 преобразуется в "НДС4", а не в "НДС22". При получении "НДС4" преобразуется в НДС22 только если дата >= 2026-01-01. + +**Проверка:** +1. Проверить значение реквизита контрагента "НДСпоСтавкам4и2" +2. Если `Истина` - используется режим совместимости (НДС22 → "НДС4") +3. Если `Ложь` - используется современный режим (НДС22 → "НДС22") + +**Диагностика:** +```bsl +Контрагент = Справочники.Контрагенты.НайтиПоНаименованию("ИмяКонтрагента"); +Если Контрагент.НДСпоСтавкам4и2 Тогда + Сообщить("Режим совместимости: НДС22 будет преобразован в 'НДС4'"); +Иначе + Сообщить("Современный режим: НДС22 будет преобразован в 'НДС22'"); +КонецЕсли; +``` + +### 5. Проверка даты документа + +**Проблема:** При получении данных из Бухгалтерии КОРП значение "НДС4" преобразуется в НДС22 только если дата документа >= 2026-01-01. Если дата < 2026-01-01, то "НДС4" преобразуется в НДС20 или НДС18. + +**Проверка:** +1. Убедиться, что дата документа >= 2026-01-01 +2. Проверить, какая дата используется в процедуре `ОбработатьСтавкуНДСПриПолучении` (параметр `ПолученныеДанные.Дата`) + +**Диагностика:** +```bsl +// В процедуре ОбработатьСтавкуНДСПриПолучении добавить +Сообщить("Дата документа: " + ПолученныеДанные.Дата); +Сообщить("Значение ставки НДС: " + ЗначениеСтавкиНДС); +``` + +### 6. Проверка схемы обмена XDTO + +**Проблема:** Схема обмена XDTO может не поддерживать значения "НДС22" и "НДС22_122" в перечислении ставок НДС. + +**Проверка:** +1. Найти схему обмена для плана обмена `ОбменУправлениеТорговлейБухгалтерияПредприятияКОРП` +2. Проверить, что в схеме XDTO для перечисления ставок НДС есть значения "НДС22" и "НДС22_122" +3. Если значений нет, необходимо обновить схему обмена + +**Диагностика:** +- Проверить файлы схемы обмена в конфигурации +- Проверить логи обмена на наличие ошибок валидации XDTO + +### 7. Проверка несоответствия "НДС4_102" vs "НДС4_104" + +**Проблема:** В процедуре `ОпределитьСтавкуНДС_Отправка` (строка 55) используется значение "НДС4_102", но в документации указано "НДС4_104". Это может быть причиной проблемы. + +**Проверка:** +1. Проверить фактический код в расширении (строка 55 файла `Module.bsl`) +2. Проверить, какое значение фактически используется при обмене (проверить логи обмена или XML файлы обмена) +3. Если используется "НДС4_104", исправить строку 55 на "НДС4_104" +4. Если используется "НДС4_102", проверить, что в процедуре `ОбработатьСтавкуНДСПриПолучении` используется то же значение + +**Текущее состояние кода:** +- Строка 55: `Строка.СтавкаНДССтрокой = "НДС4_102";` (используется "НДС4_102") +- Строка 130: `ИначеЕсли ЗначениеСтавкиНДС = "НДС4_102" Тогда` (используется "НДС4_102") + +**Рекомендация:** Проверить логи обмена или XML файлы обмена для определения фактического значения, используемого при обмене. + +### 8. Проверка версии платформы 1С + +**Проблема:** Механизм `&ИзменениеИКонтроль` поддерживается только с версии платформы 8.3.10. На более старых версиях расширение не будет работать. + +**Проверка:** +1. Проверить версию платформы 1С (должна быть >= 8.3.10) +2. Если версия < 8.3.10, необходимо обновить платформу + +**Диагностика:** +```bsl +ВерсияПлатформы = Строка(ИнформацияОВерсииПлатформы()); +Сообщить("Версия платформы: " + ВерсияПлатформы); +``` + +### 9. Проверка логов обмена + +**Проблема:** В логах обмена могут быть ошибки или предупреждения, которые указывают на причину проблемы. + +**Проверка:** +1. Включить подробное логирование обмена +2. Выполнить обмен +3. Проверить логи обмена на наличие ошибок или предупреждений +4. Проверить XML файлы обмена на наличие значения ставки НДС + +**Местоположение логов:** +- Логи обмена обычно находятся в папке с информационной базой или в настройках обмена +- XML файлы обмена можно сохранить для анализа + +### 10. Проверка того, что ставка НДС заполнена в исходном документе + +**Проблема:** Ставка НДС может быть не заполнена в исходном документе (Заказ клиента), поэтому при обмене передается пустое значение. + +**Проверка:** +1. Открыть документ "Заказ клиента" в CRM +2. Проверить, что в строках документа заполнена ставка НДС = НДС22 +3. Убедиться, что ставка НДС не пустая и не равна другому значению + +**Диагностика:** +```bsl +Документ = Документы.ЗаказыКлиентов.НайтиПоНомеру("Номер"); +Для Каждого Строка Из Документ.Товары Цикл + Сообщить("Строка: " + Строка.НомерСтроки + ", Ставка НДС: " + Строка.СтавкаНДС); +КонецЦикла; +``` + +### 11. Проверка плана обмена + +**Проблема:** Может использоваться неправильный план обмена, который не использует процедуры из модуля `МенеджерОбменаЧерезУниверсальныйФормат`. + +**Проверка:** +1. Проверить, что используется план обмена `ОбменУправлениеТорговлейБухгалтерияПредприятияКОРП` +2. Проверить настройки плана обмена +3. Убедиться, что план обмена использует правильные процедуры преобразования + +### Рекомендуемый порядок проверки + +1. **Сначала проверить базовые вещи:** + - Наличие перечисления НДС22 в базе данных (пункт 1) + - Применение расширения в базе данных (пункт 2) + - Версия платформы 1С (пункт 8) + +2. **Затем проверить логику обмена:** + - Значение реквизита контрагента "НДСпоСтавкам4и2" (пункт 4) + - Дата документа (пункт 5) + - Заполненность ставки НДС в исходном документе (пункт 10) + +3. **Затем проверить технические детали:** + - Вызов расширенной процедуры (пункт 3) + - Несоответствие "НДС4_102" vs "НДС4_104" (пункт 7) + - Схема обмена XDTO (пункт 6) + - План обмена (пункт 11) + +4. **В конце проверить логи:** + - Логи обмена (пункт 9) + +## Дополнительные замечания + +1. **Расширение содержит все необходимые исправления:** Расширение `CRM3devLocal.Рана` уже реализует обработку НДС22 при обмене. Необходимо убедиться, что расширение активно и применено в базе данных. + +2. **Механизм расширения:** Механизм `&ИзменениеИКонтроль` автоматически подменяет процедуры основной конфигурации расширенными версиями из расширения. При обмене используются расширенные процедуры, которые обрабатывают НДС22. + +3. **Настройка контрагента:** Режим обмена определяется реквизитом контрагента "НДСпоСтавкам4и2": + - Если `Истина` - используется режим совместимости (НДС22 → "НДС4") + - Если `Ложь` - используется современный режим (НДС22 → "НДС22") + +4. **Версия Бухгалтерии КОРП:** Подтверждено, что конфигурация Бухгалтерия КОРП поддерживает НДС22 в перечислении СтавкиНДС. + +5. **Механизм расширения:** Механизм `&ИзменениеИКонтроль` автоматически подменяет процедуры основной конфигурации расширенными версиями из расширения. При обмене используются расширенные процедуры. + +6. **Настройка контрагента:** Режим обмена определяется реквизитом контрагента "НДСпоСтавкам4и2": + - Если `Истина` - используется режим совместимости (НДС22 → "НДС4") + - Если `Ложь` - используется современный режим (НДС22 → "НДС22") + +## Заключение + +Проблема связана с отсутствием обработки НДС22 в основной конфигурации `CRM3devLocal`. + +**Выбранное решение:** Реализация через расширение `CRM3devLocal.Рана`. + +В расширении `CRM3devLocal.Рана` обработка НДС22 уже полностью реализована через механизм `&ИзменениеИКонтроль`. Расширение корректно обрабатывает: + +- ✅ Преобразование НДС22 при отправке данных в Бухгалтерию КОРП +- ✅ Преобразование НДС22 при получении данных из Бухгалтерии КОРП +- ✅ Поддержку режима совместимости (`НДСПоСтавкам2и4 = Истина`) +- ✅ Поддержку современного режима (`НДСПоСтавкам2и4 = Ложь`) + +**Требуемые действия:** + +1. ✅ Убедиться, что расширение `CRM3devLocal.Рана` активно и применено в базе данных +2. ✅ Проверить, что механизм `&ИзменениеИКонтроль` работает корректно +3. ✅ Провести тестирование обмена после применения расширения +4. ⚠️ Проверить соответствие значений "НДС4_102" и "НДС4_104" при обмене + +**Итоговый статус:** + +✅ **Все необходимые исправления реализованы в расширении** + +Расширение `CRM3devLocal.Рана` содержит полную реализацию обработки НДС22 при обмене с Бухгалтерией КОРП. Требуется только: + +1. Проверить соответствие значений "НДС4_102" и "НДС4_104" +2. Убедиться, что расширение применено в базе данных +3. Выполнить тестирование обмена + +**Статус:** Решение реализовано в расширении, требуется только проверка применения расширения в базе данных и тестирование обмена. + diff --git a/docs__Анализ_обработчиков_обновления_НДС_22.md b/docs__Анализ_обработчиков_обновления_НДС_22.md new file mode 100644 index 0000000..40f1414 --- /dev/null +++ b/docs__Анализ_обработчиков_обновления_НДС_22.md @@ -0,0 +1,219 @@ +--- +title: Анализ обработчиков обновления для переноса НДС 22% +version: 1.0 +date_modified: 2025-12-30 +date_created: 2025-12-30 +author: Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) +show_metadata_block: true +show_index_link: true +--- + +# Анализ обработчиков обновления для переноса НДС 22% + +## Дата анализа +30.12.2025 + +## Версия документа +1.0 от 30.12.2025 + +## Цель +Определить обработчики обновления информационной базы в новой конфигурации `CRM326_TEST`, связанные с переходом на ставку НДС 22%, и необходимость их переноса в старую конфигурацию `CRM3devLocal`. + +--- + +## Найденные обработчики обновления в новой конфигурации + +### 1. Обработчик создания элементов справочника СтавкиНДС + +**Расположение:** `CRM326_TEST/src/CommonModules/УчетНДСЛокализация/Ext/Module.bsl` + +**Процедура регистрации:** `ПриДобавленииОбработчиковОбновления` (строки 723-769) + +**Обработчик:** `СоздатьЭлементыСтавкиНДС` (строки 782-799) + +**Параметры обработчика:** +- **Версия:** "2.5.25.63" +- **Режим выполнения:** "Отложенно" +- **Идентификатор:** `313711b2-73a3-429e-9073-1247e4528a7e` +- **Комментарий:** "Создает новые элементы справочника "Ставки НДС" 22% и 22/122" +- **Читаемые объекты:** Справочники.СтавкиНДС +- **Изменяемые объекты:** Справочники.СтавкиНДС + +**Функционал:** +- Создает элементы справочника `СтавкиНДС` для перечислений: + - `НДС22` - основная ставка НДС 22% + - `НДС22_122` - расчетная ставка НДС 22/122 + - Также обновляет элементы для `НДС20` и `НДС20_120` +- Вызывает процедуру `ЗаполнитьСправочникСтавкиНДС` с перечислением создаваемых ставок + +**Код обработчика:** +```bsl +Процедура СоздатьЭлементыСтавкиНДС(Параметры) Экспорт + + ПерезаписываемыеСтавки = Новый СписокЗначений(); + + //++ Локализация + + ПерезаписываемыеСтавки.Добавить(Перечисления.СтавкиНДС.НДС22_122); + ПерезаписываемыеСтавки.Добавить(Перечисления.СтавкиНДС.НДС22); + ПерезаписываемыеСтавки.Добавить(Перечисления.СтавкиНДС.НДС20_120); + ПерезаписываемыеСтавки.Добавить(Перечисления.СтавкиНДС.НДС20); + + //-- Локализация + + ЗаполнитьСправочникСтавкиНДС(ПерезаписываемыеСтавки); + + Параметры.ОбработкаЗавершена = Истина; + +КонецПроцедуры +``` + +**Необходимость переноса в старую конфигурацию:** +- ❌ **НЕ ТРЕБУЕТСЯ** при работе по варианту 2 (только перечисление) +- **Причина:** В старой конфигурации справочник `СтавкиНДС` отсутствует, используется только перечисление `СтавкиНДС` +- **Обоснование:** Обработчик создает элементы справочника, который не используется в старой конфигурации + +--- + +### 2. Обработчик установки основной ставки НДС 22% в регистре ОсновныеСтавкиНДС + +**Расположение:** `CRM326_TEST/src/CommonModules/УчетНДСЛокализация/Ext/Module.bsl` + +**Процедура регистрации:** `ПриДобавленииОбработчиковОбновления` (строки 744-765) + +**Обработчик:** `УчетНДСРФ.ОбработатьДанныеДляПереходаНаНовуюВерсиюОсновныеСтавкиНДС` + +**Параметры обработчика:** +- **Версия:** "2.5.25.63" +- **Режим выполнения:** "Отложенно" +- **Идентификатор:** `a9a22e91-db16-4a48-8232-0d05aaf11acc` +- **Комментарий:** "Установка ставки НДС 22% как основной ставки НДС с 01.01.2026" +- **Читаемые объекты:** РегистрыСведений.ОсновныеСтавкиНДС +- **Изменяемые объекты:** РегистрыСведений.ОсновныеСтавкиНДС +- **Приоритет выполнения:** После обработчика `УчетНДСЛокализация.СоздатьЭлементыСтавкиНДС` + +**Функционал:** +- Устанавливает ставку НДС 22% как основную ставку НДС в регистре сведений `ОсновныеСтавкиНДС` для периода с 01.01.2026 + +**Необходимость переноса в старую конфигурацию:** +- ❌ **НЕ ТРЕБУЕТСЯ** +- **Причина:** Регистр сведений `ОсновныеСтавкиНДС` **ОТСУТСТВУЕТ** в старой конфигурации `CRM3devLocal` +- **Результат проверки:** Поиск по старой конфигурации не нашел упоминаний регистра `ОсновныеСтавкиНДС` + +--- + +### 3. Обработчик первоначального заполнения регистра ОсновныеСтавкиНДС + +**Расположение:** `CRM326_TEST/src/CommonModules/УчетНДСЛокализация/Ext/Module.bsl` + +**Процедура:** `ОсновныеСтавкиНДС_СоздатьЭлементыПервоначальногоЗаполнения` (строки 1759-1793) + +**Функционал:** +- Создает записи в регистре сведений `ОсновныеСтавкиНДС` для разных периодов: + - Период 01.01.2004: ставка НДС18 + - Период 01.01.2019: ставка НДС20 + - Период 01.01.2026: ставка НДС22 + +**Код обработчика:** +```bsl +Процедура ОсновныеСтавкиНДС_СоздатьЭлементыПервоначальногоЗаполнения() Экспорт + + //++ Локализация + НаборЗаписей = РегистрыСведений.ОсновныеСтавкиНДС.СоздатьНаборЗаписей(); + НаборЗаписей.Отбор.Период.Установить(Дата('20040101')); + НаборЗаписей.Отбор.Страна.Установить(Справочники.СтраныМира.Россия); + + НоваяЗапись = НаборЗаписей.Добавить(); + НоваяЗапись.Период = Дата('20040101'); + НоваяЗапись.Страна = Справочники.СтраныМира.Россия; + НоваяЗапись.СтавкаНДС = СтавкаНДСПоПеречислению(Перечисления.СтавкиНДС.НДС18); + ОбновлениеИнформационнойБазы.ЗаписатьДанные(НаборЗаписей); + + НаборЗаписей = РегистрыСведений.ОсновныеСтавкиНДС.СоздатьНаборЗаписей(); + НаборЗаписей.Отбор.Период.Установить(Дата('20190101')); + НаборЗаписей.Отбор.Страна.Установить(Справочники.СтраныМира.Россия); + + НоваяЗапись = НаборЗаписей.Добавить(); + НоваяЗапись.Период = Дата('20190101'); + НоваяЗапись.Страна = Справочники.СтраныМира.Россия; + НоваяЗапись.СтавкаНДС = СтавкаНДСПоПеречислению(Перечисления.СтавкиНДС.НДС20); + ОбновлениеИнформационнойБазы.ЗаписатьДанные(НаборЗаписей); + + НаборЗаписей = РегистрыСведений.ОсновныеСтавкиНДС.СоздатьНаборЗаписей(); + НаборЗаписей.Отбор.Период.Установить(Дата('20260101')); + НаборЗаписей.Отбор.Страна.Установить(Справочники.СтраныМира.Россия); + + НоваяЗапись = НаборЗаписей.Добавить(); + НоваяЗапись.Период = Дата('20260101'); + НоваяЗапись.Страна = Справочники.СтраныМира.Россия; + НоваяЗапись.СтавкаНДС = СтавкаНДСПоПеречислению(Перечисления.СтавкиНДС.НДС22); + ОбновлениеИнформационнойБазы.ЗаписатьДанные(НаборЗаписей); + //-- Локализация + +КонецПроцедуры +``` + +**Необходимость переноса в старую конфигурацию:** +- ❌ **НЕ ТРЕБУЕТСЯ** +- **Причина:** Регистр сведений `ОсновныеСтавкиНДС` **ОТСУТСТВУЕТ** в старой конфигурации `CRM3devLocal` +- **Результат проверки:** Поиск по старой конфигурации не нашел упоминаний регистра `ОсновныеСтавкиНДС` + +--- + +## Выводы и рекомендации + +### Итоговый результат проверки + +**Все найденные обработчики обновления НЕ ТРЕБУЮТ переноса в старую конфигурацию.** + +### Обработчики, которые НЕ требуют переноса: + +1. **Обработчик `СоздатьЭлементыСтавкиНДС`** + - ❌ **НЕ ТРЕБУЕТСЯ** - создает элементы справочника `СтавкиНДС`, который отсутствует в старой конфигурации + - При работе по варианту 2 (только перечисление) этот обработчик исключен из необходимых изменений + - **Расположение:** `CRM326_TEST/src/CommonModules/УчетНДСЛокализация/Ext/Module.bsl`, строки 782-799 + +2. **Обработчик установки основной ставки НДС 22% в регистре ОсновныеСтавкиНДС** + - ❌ **НЕ ТРЕБУЕТСЯ** - регистр сведений `ОсновныеСтавкиНДС` отсутствует в старой конфигурации + - **Расположение:** Обработчик находится в модуле `УчетНДСРФ` (не в расширении) + - **Регистрация:** `CRM326_TEST/src/CommonModules/УчетНДСЛокализация/Ext/Module.bsl`, строки 744-765 + +3. **Обработчик первоначального заполнения регистра ОсновныеСтавкиНДС** + - ❌ **НЕ ТРЕБУЕТСЯ** - регистр сведений `ОсновныеСтавкиНДС` отсутствует в старой конфигурации + - **Расположение:** `CRM326_TEST/src/CommonModules/УчетНДСЛокализация/Ext/Module.bsl`, строки 1759-1793 + +--- + +## Рекомендуемые действия + +✅ **Проверка выполнена:** +- Регистр сведений `ОсновныеСтавкиНДС` **отсутствует** в старой конфигурации `CRM3devLocal` +- Справочник `СтавкиНДС` **отсутствует** в старой конфигурации `CRM3devLocal` + +**Вывод:** Все найденные обработчики обновления, связанные с переходом на НДС 22%, **не требуют переноса** в старую конфигурацию. + +**Итоговое решение:** +- ❌ Обработчик `СоздатьЭлементыСтавкиНДС` - не требуется (создает элементы справочника, который отсутствует) +- ❌ Обработчик установки основной ставки НДС 22% в регистре - не требуется (регистр отсутствует) +- ❌ Обработчик первоначального заполнения регистра - не требуется (регистр отсутствует) + +**Рекомендация:** При переносе функционала НДС 22% в старую конфигурацию можно **полностью исключить** все обработчики обновления информационной базы, связанные с НДС 22%. Это подтверждает правильность выбранного подхода (вариант 2 - работа только с перечислением). + +--- + +## Связь с документом "Оценка правок для переноса НДС 22%" + +Данный анализ дополняет документ `Оценка_правок_для_переноса_НДС_22 (v1.3).md` информацией о конкретных обработчиках обновления, найденных в новой конфигурации. + +**Соответствие с документом:** +- В документе указано, что обработчики обновления для создания элементов справочника исключены из необходимых изменений (строка 29) +- Данный анализ подтверждает это решение и уточняет, какие именно обработчики найдены и почему они не требуются + +--- + +## Примечания + +- Все найденные обработчики находятся в модуле `УчетНДСЛокализация` расширения новой конфигурации +- Обработчики связаны с версией "2.5.25.63" платформы 1С +- При переносе обработчиков необходимо учитывать различия в структуре данных между старой и новой конфигурациями + diff --git a/docs__Анализ_ошибок_обновления.md b/docs__Анализ_ошибок_обновления.md index 6be579c..59ef545 100644 --- a/docs__Анализ_ошибок_обновления.md +++ b/docs__Анализ_ошибок_обновления.md @@ -10,7 +10,7 @@ show_index_link: true # Анализ ошибок обновления конфигурации 1С -> 📚 **См. также:** [Оглавление документов](docs/INDEX.md) | [Глубинный анализ регистров](docs/Глубинный_анализ_регистров.md) | [Быстрое решение](docs/Быстрое_решение.md) | [Инструкция по исправлению](docs/Инструкция_по_исправлению.md) +> 📚 **См. также:** [Оглавление документов](docs__INDEX.md) | [Глубинный анализ регистров](docs__Глубинный_анализ_регистров.md) | [Быстрое решение](docs__Быстрое_решение.md) | [Инструкция по исправлению](docs__Инструкция_по_исправлению.md) ## Проблема При попытке применить обновление из конфигурации `crm326/crm326_test` на проект `crmdevlocal` возникают ошибки о наличии ссылок на удаляемые объекты. diff --git a/docs__Анализ_переноса_обработки_КредитНотаЗаПериод.md b/docs__Анализ_переноса_обработки_КредитНотаЗаПериод.md new file mode 100644 index 0000000..53cbb4f --- /dev/null +++ b/docs__Анализ_переноса_обработки_КредитНотаЗаПериод.md @@ -0,0 +1,754 @@ +--- +title: Анализ переноса обработки КредитНотаЗаПериод в новую конфигурацию +version: 1.4 +date_created: 2026-01-08 +date_modified: 2026-01-08 +author: Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) +description: Анализ различий между старой и новой конфигурациями для переноса обработки КредитНотаЗаПериод. Определение замены документа СписаниеЗадолженности на КорректировкаЗадолженности и адаптация логики работы с признаком КредитНота через дополнительные реквизиты. +purpose: Документ предназначен для планирования и выполнения переноса обработки КредитНотаЗаПериод из старой конфигурации CRM3devLocal в новую конфигурацию CRM326/CRM326_TEST с учетом различий в структуре документов и механизме работы с признаком КредитНота. +show_metadata_block: true +show_index_link: true +show_toc: true +--- + +# Анализ переноса обработки КредитНотаЗаПериод в новую конфигурацию + +## Версия анализа +Версия 1.4 от 08.01.2026 + +**Изменения в версии 1.4:** +- ✅ **Оптимизирована проверка признака Купон через временную таблицу:** Вместо подзапроса в каждом финальном запросе используется временная таблица `РеализацияТоваровУслугСКупоном`, которая создается один раз и используется в нескольких запросах +- ✅ Добавлена полная структура пакета запросов с временной таблицей для проверки признака Купон +- ✅ Обновлены все варианты проверки признака Купон с использованием временной таблицы + +**Изменения в версии 1.3:** +- ✅ **Добавлена адаптация проверки признака Купон:** Условие `СчетФактураВыданный.ДокументОснование.Купон = ЗНАЧЕНИЕ(Справочник.Купоны.ПустаяСсылка)` заменено на проверку отсутствия записи в табличной части `ДополнительныеРеквизиты` с заполненным значением свойства `РК_Купон` +- ✅ Добавлен раздел 4 "Реализация признака Купон в новой конфигурации" с описанием механизма дополнительных реквизитов и адаптацией запросов +- ✅ Обновлен раздел "План действий для переноса" с подразделом 4.2.5 "Адаптация проверки признака Купон" + +**Изменения в версии 1.2:** +- ✅ **Исправлена критическая ошибка в запросе:** Условие `ТИПЗНАЧЕНИЯ(ОбъектРасчетов) = ТИП(...)` заменено на соединение со справочником `ОбъектыРасчетов` и проверку реквизита `Объект` +- ✅ Добавлено объяснение структуры справочника `ОбъектыРасчетов` и его реквизита `Объект` + +**Изменения в версии 1.1:** +- ✅ Выполнена проверка наличия реквизита `СтатьяРасходов` в документе `КорректировкаЗадолженности` +- ✅ Подтверждено отсутствие реквизита в шапке документа +- ✅ Найден аналог в табличной части `ДоходыРасходыАктивыПассивы` (реквизит `Статья`) +- ✅ Обновлены рекомендации по адаптации запросов с учетом фильтрации через табличную часть +- ✅ **Исправлена ошибка в запросе:** Условие `ТИПЗНАЧЕНИЯ(ОбъектРасчетов) = ТИП(...)` заменено на соединение со справочником `ОбъектыРасчетов` и проверку реквизита `Объект` + +## Автор +Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) + +## Цель анализа +Определить различия между старой и новой конфигурациями для переноса обработки `КредитНотаЗаПериод`, включая замену документа `СписаниеЗадолженности` на аналог в новой конфигурации и адаптацию логики работы с признаком КредитНота через механизм дополнительных реквизитов. + +## Результаты проверки + +### ✅ Проверка наличия реквизита СтатьяРасходов + +**Дата проверки:** 08.01.2026 + +**Результат:** +- ❌ Реквизит `СтатьяРасходов` **ОТСУТСТВУЕТ** в шапке документа `КорректировкаЗадолженности` в новой конфигурации +- ✅ Найден аналог в табличной части `ДоходыРасходыАктивыПассивы`: реквизит `Статья` (тип: `ChartOfCharacteristicTypesRef.СтатьиРасходов` или `СтатьиАктивовПассивов` или `СтатьиДоходов`) + +**Вывод:** +Для фильтрации по статье в новой конфигурации необходимо использовать подзапрос к табличной части `ДоходыРасходыАктивыПассивы` вместо прямого обращения к реквизиту в шапке документа. + +### ✅ Проверка работы с полем ОбъектРасчетов + +**Дата проверки:** 08.01.2026 + +**Результат:** +- ❌ **Критическая ошибка выявлена:** Условие `ТИПЗНАЧЕНИЯ(ОбъектРасчетов) = ТИП("СправочникСсылка.ЗаказКлиента")` **НИКОГДА НЕ ВЫПОЛНИТСЯ** +- В новой конфигурации `ОбъектРасчетов` - это справочник `CatalogRef.ОбъектыРасчетов`, а не составной тип +- Справочник `ОбъектыРасчетов` имеет реквизит `Объект` типа `DefinedType.ОбъектРасчетов` (составной тип), который может содержать ссылку на `ЗаказКлиента` + +**Правильное решение:** +- Добавить соединение со справочником `ОбъектыРасчетов` в запросе +- Использовать условие `ОбъектыРасчетов.Объект ССЫЛКА Документ.ЗаказКлиента` вместо `ТИПЗНАЧЕНИЯ(...)` + +**Вывод:** +Для получения заказа клиента из поля `ОбъектРасчетов` необходимо использовать соединение со справочником `ОбъектыРасчетов` и проверять реквизит `Объект`, а не сам `ОбъектРасчетов`. + +--- + +## 1. Различия в документах + +### 1.1. Старая конфигурация (CRM3devLocal) + +**Документ:** `СписаниеЗадолженности` + +**Структура:** +- **Табличная часть:** `Задолженность` +- **Поля в табличной части:** + - `Заказ` (тип: `ОбъектРасчетов`) - **используется в обработке** + - `Партнер` (тип: `CatalogRef.Партнеры`) + - `Сумма` (тип: `ДенежнаяСуммаНеотрицательная`) + - `ВалютаВзаиморасчетов` (тип: `CatalogRef.Валюты`) + - `ИдентификаторСтроки` (тип: `String`) +- **Реквизиты в шапке документа:** + - `СтатьяРасходов` (тип: `ChartOfCharacteristicTypesRef.СтатьиРасходов`) - **используется в обработке** + +**Расположение:** `crm3-dev/src/Documents/СписаниеЗадолженности/` + +### 1.2. Новая конфигурация (CRM326/CRM326_TEST) + +**Документ:** `КорректировкаЗадолженности` + +**Структура:** +- **Табличная часть:** `Задолженность` +- **Поля в табличной части:** + - `ОбъектРасчетов` (тип: `CatalogRef.ОбъектыРасчетов` или `CatalogRef.ДоговорыКредитовИДепозитов`) - **аналог поля Заказ** + - `Партнер` (тип: `CatalogRef.Партнеры`) + - `Сумма` (тип: `ДенежнаяСуммаНеотрицательная`) + - `ВалютаВзаиморасчетов` (тип: `CatalogRef.Валюты`) + - `ИдентификаторСтроки` (тип: `String`) + - `ТипРасчетов` (тип: `EnumRef.ТипыРасчетовСПартнерами`) + - `ДатаПлатежа` (тип: `Date`) +- **Реквизиты в шапке документа:** + - `Организация` (тип: `CatalogRef.Организации`) + - `Контрагент` (тип: `CatalogRef.Организации` или `CatalogRef.Контрагенты`) + - `ХозяйственнаяОперация` (тип: `EnumRef.ХозяйственныеОперации`) + - `Комментарий` (тип: `String`) + - `РасчетыМеждуОрганизациями` (тип: `Boolean`) + - `Основание` (тип: `DocumentRef.ПриобретениеТоваровУслуг`) + - `АктОРасхожденияхОснование` (тип: `DocumentRef.АктОРасхожденияхПослеПриемки`) + - ❌ **Реквизит `СтатьяРасходов` отсутствует в шапке документа** +- **Табличная часть:** `ДоходыРасходыАктивыПассивы` + - `Статья` (тип: `ChartOfCharacteristicTypesRef.СтатьиРасходов` или `СтатьиАктивовПассивов` или `СтатьиДоходов`) - **аналог реквизита СтатьяРасходов, но в табличной части** + +**Расположение:** `crm3-26-test/src/Documents/КорректировкаЗадолженности/` + +### 1.3. Ключевые различия + +| Параметр | Старая конфигурация | Новая конфигурация | +|----------|---------------------|-------------------| +| Название документа | `СписаниеЗадолженности` | `КорректировкаЗадолженности` | +| Поле для заказа | `Заказ` (тип: `ОбъектРасчетов`) | `ОбъектРасчетов` (тип: `CatalogRef`) | +| СтатьяРасходов | В шапке документа | ⚠️ Требуется проверка | + +--- + +## 2. Использование в обработке КредитНотаЗаПериод + +### 2.1. Текущая реализация в старой конфигурации + +**Расположение:** `crm3-dev/src/DataProcessors/КредитНотаЗаПериод/Forms/Форма/Ext/Form/Module.bsl` + +**Запрос к документу СписаниеЗадолженности:** + +```bsl +ВЫБРАТЬ + СписаниеЗадолженностиЗадолженность.Заказ, + СписаниеЗадолженностиЗадолженность.Партнер, + СписаниеЗадолженностиЗадолженность.Сумма, + СписаниеЗадолженностиЗадолженность.Ссылка.Дата, + СписаниеЗадолженностиЗадолженность.Ссылка.СтатьяРасходов +ПОМЕСТИТЬ СписаниеЗадолжености +ИЗ + Документ.СписаниеЗадолженности.Задолженность КАК СписаниеЗадолженностиЗадолженность +ГДЕ + СписаниеЗадолженностиЗадолженность.Ссылка.Дата МЕЖДУ &ДатаНачала И &ДатаОкончания + И СписаниеЗадолженностиЗадолженность.Ссылка.Проведен = ИСТИНА + И СписаниеЗадолженностиЗадолженность.Ссылка.СтатьяРасходов = &СтатьяРасходов + И СписаниеЗадолженностиЗадолженность.Партнер = &Партнер +``` + +**Логика работы:** +1. Находит документы "Списание задолженности" за период +2. Определяет заказы клиентов, связанные с этими списаниями (через поле `Заказ`) +3. Находит счета-фактуры выданные по этим заказам +4. Разделяет счета-фактуры на две группы: + - **КредитНоты** - счета-фактуры по заказам, связанным с кредит-нотами + - **НеКредитНоты** - остальные счета-фактуры + +### 2.2. Необходимые изменения для новой конфигурации + +**Адаптированный запрос:** + +```bsl +ВЫБРАТЬ + ОбъектыРасчетов.Объект КАК Заказ, + КорректировкаЗадолженностиЗадолженность.Партнер, + КорректировкаЗадолженностиЗадолженность.Сумма, + КорректировкаЗадолженностиЗадолженность.Ссылка.Дата, + // ❌ СтатьяРасходов отсутствует в шапке документа + // Вместо этого используется табличная часть ДоходыРасходыАктивыПассивы со статьей + // Для фильтрации по статье необходимо использовать подзапрос или соединение +ПОМЕСТИТЬ КорректировкаЗадолженности +ИЗ + Документ.КорректировкаЗадолженности.Задолженность КАК КорректировкаЗадолженностиЗадолженность + ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.ОбъектыРасчетов КАК ОбъектыРасчетов + ПО ОбъектыРасчетов.Ссылка = КорректировкаЗадолженностиЗадолженность.ОбъектРасчетов +ГДЕ + КорректировкаЗадолженностиЗадолженность.Ссылка.Дата МЕЖДУ &ДатаНачала И &ДатаОкончания + И КорректировкаЗадолженностиЗадолженность.Ссылка.Проведен = ИСТИНА + // ❌ Условие по СтатьяРасходов удалено - реквизит отсутствует в шапке + // Альтернатива: фильтрация через табличную часть ДоходыРасходыАктивыПассивы + // И КорректировкаЗадолженностиЗадолженность.Ссылка.СтатьяРасходов = &СтатьяРасходов + И КорректировкаЗадолженностиЗадолженность.Партнер = &Партнер + // ✅ Исправлено: ОбъектРасчетов - это справочник, нужно проверять реквизит Объект + И ОбъектыРасчетов.Объект ССЫЛКА Документ.ЗаказКлиента + // Дополнительная фильтрация по статье через табличную часть (если требуется) + И КорректировкаЗадолженностиЗадолженность.Ссылка В + (ВЫБРАТЬ РАЗЛИЧНЫЕ + КорректировкаЗадолженностиДоходыРасходы.Ссылка + ИЗ + Документ.КорректировкаЗадолженности.ДоходыРасходыАктивыПассивы КАК КорректировкаЗадолженностиДоходыРасходы + ГДЕ + КорректировкаЗадолженностиДоходыРасходы.Статья = &СтатьяРасходов) +``` + +**Критические моменты:** +1. ✅ **Тип данных `ОбъектРасчетов`:** В новой конфигурации это справочник `CatalogRef.ОбъектыРасчетов`, а не составной тип. Для получения заказа клиента необходимо: + - Добавить соединение со справочником `ОбъектыРасчетов` + - Проверять реквизит `Объект` справочника (который имеет тип `DefinedType.ОбъектРасчетов` и может содержать ссылку на `ЗаказКлиента`) + - Использовать условие `ОбъектыРасчетов.Объект ССЫЛКА Документ.ЗаказКлиента` вместо `ТИПЗНАЧЕНИЯ(...)` +2. ❌ **Реквизит `СтатьяРасходов`:** **ОТСУТСТВУЕТ в шапке документа.** Вместо него используется табличная часть `ДоходыРасходыАктивыПассивы` с реквизитом `Статья`. Для фильтрации по статье необходимо использовать подзапрос или соединение с табличной частью. + +--- + +## 3. Реализация признака КредитНота в новой конфигурации + +### 3.1. Механизм дополнительных реквизитов + +**В расширении новой конфигурации (`crm3-26-test.rhana`):** + +**Расположение:** `crm3-26-test.rhana/src/Documents/РеализацияТоваровУслуг/Ext/ObjectModule.bsl` + +**Реализация:** +- Дополнительное свойство: `РК_КредитНота` для документа `РеализацияТоваровУслуг` +- Реализовано через план видов характеристик `ДополнительныеРеквизитыИСведения` +- В модуле документа есть код: `рк_ИменаДопСвойств.Добавить("РК_КредитНота");` + +### 3.2. Отличия от старой конфигурации + +| Параметр | Старая конфигурация | Новая конфигурация | +|----------|---------------------|-------------------| +| Хранение признака | Реквизит `КредитНота` в документе `ЗаказКлиента` (тип: `Boolean`) | Дополнительное свойство `РК_КредитНота` в документе `РеализацияТоваровУслуг` | +| Доступ к признаку | Прямой доступ: `ЗаказКлиента.КредитНота` | Через `УправлениеСвойствами.ЗначениеСвойства(РеализацияТоваровУслуг, "РК_КредитНота")` | +| Механизм | Встроенный реквизит | План видов характеристик `ДополнительныеРеквизитыИСведения` | + +### 3.3. Адаптация работы с признаком в обработке + +**В старой конфигурации:** +```bsl +// Прямой доступ к реквизиту +ЗаказКлиента.КредитНота = ИСТИНА +``` + +**В новой конфигурации:** +```bsl +// Доступ через дополнительные реквизиты +КредитНота = УправлениеСвойствами.ЗначениеСвойства( + РеализацияТоваровУслуг, + "РК_КредитНота" +); +``` + +**Альтернативный вариант через запрос:** +```bsl +ВЫБРАТЬ + ДополнительныеРеквизиты.Объект КАК РеализацияТоваровУслуг, + ДополнительныеРеквизиты.Значение КАК КредитНота +ИЗ + РегистрСведений.ДополнительныеРеквизитыИСведения КАК ДополнительныеРеквизиты +ГДЕ + ДополнительныеРеквизиты.Свойство = ЗНАЧЕНИЕ(ПланВидовХарактеристик.ДополнительныеРеквизитыИСведения.РК_КредитНота) + И ДополнительныеРеквизиты.Значение = ИСТИНА +``` + +--- + +## 4. Реализация признака Купон в новой конфигурации + +### 4.1. Механизм дополнительных реквизитов + +**В расширении новой конфигурации (`crm3-26-test.rhana`):** + +**Расположение:** `crm3-26-test.rhana/src/Documents/РеализацияТоваровУслуг/Ext/ObjectModule.bsl` + +**Реализация:** +- Дополнительное свойство: `РК_Купон` для документа `РеализацияТоваровУслуг` +- Реализовано через план видов характеристик `ДополнительныеРеквизитыИСведения` +- В модуле документа есть код: `рк_ИменаДопСвойств.Добавить("РК_Купон");` + +### 4.2. Отличия от старой конфигурации + +| Параметр | Старая конфигурация | Новая конфигурация | +|----------|---------------------|-------------------| +| Хранение признака | Реквизит `Купон` в документе `РеализацияТоваровУслуг` (тип: `CatalogRef.Купоны`) | Дополнительное свойство `РК_Купон` в документе `РеализацияТоваровУслуг` | +| Проверка пустого значения | `РеализацияТоваровУслуг.Купон = ЗНАЧЕНИЕ(Справочник.Купоны.ПустаяСсылка)` | Через проверку отсутствия записи в табличной части `ДополнительныеРеквизиты` или через `УправлениеСвойствами` | +| Механизм | Встроенный реквизит | План видов характеристик `ДополнительныеРеквизитыИСведения` | + +### 4.3. Адаптация работы с признаком в запросах + +**В старой конфигурации (строки 47 и 67 функции `ПолучитьДанные`):** +```bsl +И СчетФактураВыданный.ДокументОснование.Купон = ЗНАЧЕНИЕ(Справочник.Купоны.ПустаяСсылка) +``` + +**В новой конфигурации:** + +**Вариант 1: Проверка через временную таблицу (рекомендуется для производительности):** + +**Создание временной таблицы (добавить в начало пакета запросов):** +```bsl +ВЫБРАТЬ РАЗЛИЧНЫЕ + ДополнительныеРеквизиты.Ссылка КАК Ссылка +ПОМЕСТИТЬ РеализацияТоваровУслугСКупоном +ИЗ + Документ.РеализацияТоваровУслуг.ДополнительныеРеквизиты КАК ДополнительныеРеквизиты + ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.ДополнительныеРеквизитыИСведения КАК ДополнительныеРеквизитыИСведения + ПО ДополнительныеРеквизитыИСведения.Ссылка = ДополнительныеРеквизиты.Свойство +ГДЕ + ДополнительныеРеквизитыИСведения.НаименованиеДляРазработчика = "РК_Купон" + И ЗначениеЗаполнено(ДополнительныеРеквизиты.Значение) +; +``` + +**Использование временной таблицы в финальных запросах:** +```bsl +И НЕ СчетФактураВыданный.ДокументОснование.Ссылка В + (ВЫБРАТЬ + РеализацияТоваровУслугСКупоном.Ссылка + ИЗ + РеализацияТоваровУслугСКупоном КАК РеализацияТоваровУслугСКупоном) +``` + +**Преимущества:** +- ✅ Временная таблица создается один раз и используется в нескольких запросах +- ✅ Улучшает производительность за счет однократного выполнения подзапроса +- ✅ Упрощает структуру финальных запросов + +**Вариант 2: Проверка через регистр сведений с временной таблицей (если используется регистр):** + +**Создание временной таблицы:** +```bsl +ВЫБРАТЬ РАЗЛИЧНЫЕ + ДополнительныеРеквизиты.Объект КАК Ссылка +ПОМЕСТИТЬ РеализацияТоваровУслугСКупоном +ИЗ + РегистрСведений.ДополнительныеРеквизитыИСведения КАК ДополнительныеРеквизиты + ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.ДополнительныеРеквизитыИСведения КАК ДополнительныеРеквизитыИСведения + ПО ДополнительныеРеквизитыИСведения.Ссылка = ДополнительныеРеквизиты.Свойство +ГДЕ + ДополнительныеРеквизитыИСведения.НаименованиеДляРазработчика = "РК_Купон" + И ЗначениеЗаполнено(ДополнительныеРеквизиты.Значение) +; +``` + +**Использование временной таблицы в финальных запросах:** +```bsl +И НЕ СчетФактураВыданный.ДокументОснование.Ссылка В + (ВЫБРАТЬ + РеализацияТоваровУслугСКупоном.Ссылка + ИЗ + РеализацияТоваровУслугСКупоном КАК РеализацияТоваровУслугСКупоном) +``` + +**Примечание:** Условие `НЕ ... В (...)` проверяет, что документ `РеализацияТоваровУслуг` **НЕ** имеет заполненного дополнительного свойства `РК_Купон`, что эквивалентно проверке `Купон = ПустаяСсылка` в старой конфигурации. + +### 4.4. Критические моменты + +1. ✅ **Проверка пустого значения:** В старой конфигурации проверка `Купон = ЗНАЧЕНИЕ(Справочник.Купоны.ПустаяСсылка)` означает, что поле не заполнено. В новой конфигурации это эквивалентно отсутствию записи в табличной части `ДополнительныеРеквизиты` с заполненным значением свойства `РК_Купон`. + +2. ✅ **Производительность:** Использование временной таблицы `РеализацияТоваровУслугСКупоном` оптимизирует запрос, так как подзапрос выполняется один раз, а не в каждом финальном запросе. + +3. ✅ **Логика работы:** Условие используется в двух запросах функции `ПолучитьДанные`: + - Запрос для получения кредит-нот по заказам (строка 47) + - Запрос для получения остальных документов (строка 67) + +--- + +## 4. План действий для переноса + +### 4.1. Этап 1: Анализ и оценка + +#### 4.1.1. Проверка наличия реквизита СтатьяРасходов + +**✅ Проверка выполнена:** + +**Результат:** Реквизит `СтатьяРасходов` **ОТСУТСТВУЕТ** в шапке документа `КорректировкаЗадолженности` в новой конфигурации. + +**Найденная альтернатива:** +- В табличной части `ДоходыРасходыАктивыПассивы` есть реквизит `Статья` (тип: `ChartOfCharacteristicTypesRef.СтатьиРасходов` или `СтатьиАктивовПассивов` или `СтатьиДоходов`) +- Это аналог реквизита `СтатьяРасходов`, но находится в табличной части, а не в шапке + +**Рекомендации:** +1. Если фильтрация по статье обязательна, использовать подзапрос к табличной части `ДоходыРасходыАктивыПассивы` +2. Если фильтрация не критична, убрать условие из запроса +3. Учесть, что в новой конфигурации один документ может иметь несколько статей (в разных строках табличной части) + +#### 4.1.2. Сравнение типов данных + +**✅ Проверка выполнена:** + +**Результат:** +- В новой конфигурации `ОбъектРасчетов` - это справочник `CatalogRef.ОбъектыРасчетов`, а не составной тип +- Справочник `ОбъектыРасчетов` имеет реквизит `Объект` типа `DefinedType.ОбъектРасчетов` (составной тип) +- Реквизит `Объект` может содержать ссылку на `ЗаказКлиента` и другие документы + +**Решение:** +- Использовать соединение со справочником `ОбъектыРасчетов` в запросе +- Проверять реквизит `Объект` справочника через условие `ОбъектыРасчетов.Объект ССЫЛКА Документ.ЗаказКлиента` +- ❌ **НЕ использовать:** `ТИПЗНАЧЕНИЯ(ОбъектРасчетов) = ТИП(...)` - это условие никогда не выполнится + +#### 4.1.3. Проверка логики работы с признаком КредитНота + +**Действия:** +1. Изучить реализацию дополнительного свойства `РК_КредитНота` в расширении +2. Проверить корректность работы механизма `УправлениеСвойствами` +3. Протестировать получение значения свойства через запросы +4. Определить оптимальный способ работы с признаком в обработке + +### 4.2. Этап 2: Адаптация запросов + +#### 4.2.1. Замена документа в запросах + +**Изменения:** +- `Документ.СписаниеЗадолженности` → `Документ.КорректировкаЗадолженности` +- `СписаниеЗадолженностиЗадолженность` → `КорректировкаЗадолженностиЗадолженность` +- `СписаниеЗадолжености` → `КорректировкаЗадолженности` + +#### 4.2.2. Замена поля Заказ на ОбъектРасчетов + +**✅ Исправлено:** + +**Изменения:** +- `СписаниеЗадолженностиЗадолженность.Заказ` → `ОбъектыРасчетов.Объект КАК Заказ` (через соединение со справочником) +- Добавить соединение со справочником: + ```bsl + ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.ОбъектыРасчетов КАК ОбъектыРасчетов + ПО ОбъектыРасчетов.Ссылка = КорректировкаЗадолженностиЗадолженность.ОбъектРасчетов + ``` +- ❌ **НЕ использовать:** `ТИПЗНАЧЕНИЯ(ОбъектРасчетов) = ТИП(...)` - это условие никогда не выполнится +- ✅ **Использовать:** `И ОбъектыРасчетов.Объект ССЫЛКА Документ.ЗаказКлиента` + +#### 4.2.3. Адаптация фильтрации по СтатьяРасходов + +**✅ Решение принято:** + +**Реквизит `СтатьяРасходов` отсутствует в шапке документа.** Используется альтернативный подход: + +**Вариант 1: Фильтрация через табличную часть (рекомендуется, если фильтрация обязательна):** +```bsl +И КорректировкаЗадолженностиЗадолженность.Ссылка В + (ВЫБРАТЬ РАЗЛИЧНЫЕ + КорректировкаЗадолженностиДоходыРасходы.Ссылка + ИЗ + Документ.КорректировкаЗадолженности.ДоходыРасходыАктивыПассивы КАК КорректировкаЗадолженностиДоходыРасходы + ГДЕ + КорректировкаЗадолженностиДоходыРасходы.Статья = &СтатьяРасходов) +``` + +**Вариант 2: Убрать условие фильтрации (если фильтрация не критична):** +- Удалить условие `И КорректировкаЗадолженностиЗадолженность.Ссылка.СтатьяРасходов = &СтатьяРасходов` +- Документировать причину изменения + +**Примечание:** В новой конфигурации один документ может иметь несколько статей в разных строках табличной части, что может повлиять на логику фильтрации. + +#### 4.2.4. Адаптация работы с признаком КредитНота + +**Изменения:** +- Вместо прямого доступа `ЗаказКлиента.КредитНота` использовать: + - `УправлениеСвойствами.ЗначениеСвойства(РеализацияТоваровУслуг, "РК_КредитНота")` + - Или запрос к регистру `ДополнительныеРеквизитыИСведения` + +#### 4.2.5. Адаптация проверки признака Купон + +**✅ Решение принято:** + +**В старой конфигурации (строки 47 и 67 функции `ПолучитьДанные`):** +```bsl +И СчетФактураВыданный.ДокументОснование.Купон = ЗНАЧЕНИЕ(Справочник.Купоны.ПустаяСсылка) +``` + +**В новой конфигурации:** + +**Структура пакета запросов с временной таблицей:** + +**1. Создание временной таблицы (добавить после создания таблицы `ЗаказыПоКредитНоте`):** +```bsl +//////////////////////////////////////////////////////////////////////////////// +ВЫБРАТЬ РАЗЛИЧНЫЕ + ДополнительныеРеквизиты.Ссылка КАК Ссылка +ПОМЕСТИТЬ РеализацияТоваровУслугСКупоном +ИЗ + Документ.РеализацияТоваровУслуг.ДополнительныеРеквизиты КАК ДополнительныеРеквизиты + ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.ДополнительныеРеквизитыИСведения КАК ДополнительныеРеквизитыИСведения + ПО ДополнительныеРеквизитыИСведения.Ссылка = ДополнительныеРеквизиты.Свойство +ГДЕ + ДополнительныеРеквизитыИСведения.НаименованиеДляРазработчика = "РК_Купон" + И ЗначениеЗаполнено(ДополнительныеРеквизиты.Значение) +; +``` + +**2. Использование временной таблицы в запросе для получения кредит-нот по заказам:** +```bsl +//////////////////////////////////////////////////////////////////////////////// +ВЫБРАТЬ + СчетФактураВыданный.ДокументОснование.Ссылка КАК РеализацияТоваровУслуг, + СчетФактураВыданный.Ссылка КАК СчетФактураВыданный +ИЗ + Документ.СчетФактураВыданный КАК СчетФактураВыданный +ГДЕ + СчетФактураВыданный.Ссылка.Дата МЕЖДУ &ДатаНачала И &ДатаОкончания + И НЕ СчетФактураВыданный.ДокументОснование.Ссылка В + (ВЫБРАТЬ + РеализацияТоваровУслугСКупоном.Ссылка + ИЗ + РеализацияТоваровУслугСКупоном КАК РеализацияТоваровУслугСКупоном) + И СчетФактураВыданный.ДокументОснование.ЗаказКлиента В + (ВЫБРАТЬ + ЗаказыПоКредитНоте.Ссылка + ИЗ + ЗаказыПоКредитНоте КАК ЗаказыПоКредитНоте) + +УПОРЯДОЧИТЬ ПО + СчетФактураВыданный.ДокументОснование.Дата +; +``` + +**3. Использование временной таблицы в запросе для получения остальных документов:** +```bsl +//////////////////////////////////////////////////////////////////////////////// +ВЫБРАТЬ + СчетФактураВыданный.ДокументОснование.Ссылка КАК РеализацияТоваровУслуг, + СчетФактураВыданный.Ссылка КАК СчетФактураВыданный +ИЗ + Документ.СчетФактураВыданный КАК СчетФактураВыданный +ГДЕ + СчетФактураВыданный.Ссылка.Дата МЕЖДУ &ДатаНачала И &ДатаОкончания + И СчетФактураВыданный.ДокументОснование.Партнер = &Партнер + И НЕ СчетФактураВыданный.ДокументОснование.Ссылка В + (ВЫБРАТЬ + РеализацияТоваровУслугСКупоном.Ссылка + ИЗ + РеализацияТоваровУслугСКупоном КАК РеализацияТоваровУслугСКупоном) + И СчетФактураВыданный.ДокументОснование.Ссылка В + (ВЫБРАТЬ + РеализацияТоваровУслуг.Ссылка + ИЗ + Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслуг + ГДЕ + РеализацияТоваровУслуг.Номенклатура В ИЕРАРХИИ (&Номенклатура)) + И НЕ СчетФактураВыданный.ДокументОснование.ЗаказКлиента В + (ВЫБРАТЬ + ЗаказыПоКредитНоте.Ссылка + ИЗ + ЗаказыПоКредитНоте КАК ЗаказыПоКредитНоте) + +УПОРЯДОЧИТЬ ПО + СчетФактураВыданный.ДокументОснование.Дата +; +``` + +**Изменения:** +- `СчетФактураВыданный.ДокументОснование.Купон = ЗНАЧЕНИЕ(Справочник.Купоны.ПустаяСсылка)` → `НЕ СчетФактураВыданный.ДокументОснование.Ссылка В (ВЫБРАТЬ ... ИЗ РеализацияТоваровУслугСКупоном)` +- Добавлена временная таблица `РеализацияТоваровУслугСКупоном` для оптимизации производительности +- Временная таблица создается один раз и используется в двух финальных запросах + +**Преимущества использования временной таблицы:** +- ✅ Подзапрос выполняется один раз вместо двух +- ✅ Улучшает производительность запросов +- ✅ Упрощает структуру финальных запросов +- ✅ Соответствует структуре пакета запросов в старой конфигурации + +**Примечание:** Условие `НЕ ... В (...)` проверяет, что документ `РеализацияТоваровУслуг` **НЕ** имеет заполненного дополнительного свойства `РК_Купон`, что эквивалентно проверке `Купон = ПустаяСсылка` в старой конфигурации. + +### 4.3. Этап 3: Реализация в расширении + +#### 4.3.1. Создание структуры обработки + +**Действия:** +1. Создать обработку `КредитНотаЗаПериод` в расширении новой конфигурации +2. Путь: `crm3-26-test.rhana/src/DataProcessors/КредитНотаЗаПериод/` +3. Скопировать структуру из старой конфигурации: + - Форма обработки + - Макеты печати (если используются) + - Модули + +#### 4.3.2. Адаптация модуля формы обработки + +**Изменения:** +1. Обновить все запросы для работы с `КорректировкаЗадолженности` +2. Добавить логику работы с дополнительными реквизитами для признака КредитНота +3. Сохранить логику формирования печатных форм +4. Адаптировать все функции и процедуры под новую структуру данных + +#### 4.3.3. Проверка зависимостей + +**Проверить наличие:** +- Макеты печати (если используются) +- Общие модули: + - `РаботаСКурсамиВалют` + - `ФормированиеПечатныхФорм` + - `ПрефиксацияОбъектовКлиентСервер` + - `ПредставлениеДокументов` +- Общие формы: + - `СписокДокументовПодКредитНоту` (если используется) + +### 4.4. Этап 4: Тестирование + +#### 4.4.1. Проверка корректности запросов + +**Действия:** +1. Выполнить все запросы в консоли запросов новой конфигурации +2. Проверить типы возвращаемых данных +3. Убедиться в корректности фильтрации +4. Проверить производительность запросов + +#### 4.4.2. Проверка работы с данными + +**Действия:** +1. Создать тестовые документы `КорректировкаЗадолженности` +2. Проверить связь с заказами клиентов через поле `ОбъектРасчетов` +3. Проверить работу с признаком `РК_КредитНота` в документах `РеализацияТоваровУслуг` +4. Протестировать формирование списка заказов по кредит-нотам + +#### 4.4.3. Проверка формирования отчетов + +**Действия:** +1. Проверить корректность печатных форм +2. Убедиться в правильности сумм и расчетов +3. Проверить форматирование данных +4. Протестировать экспорт в Word (если используется) + +--- + +## 5. Дополнительные рекомендации + +### 5.1. Документирование изменений + +**Рекомендации:** +1. Зафиксировать все изменения в запросах +2. Описать различия в структуре данных +3. Создать инструкцию по использованию обработки в новой конфигурации +4. Документировать все найденные ограничения и особенности + +### 5.2. Обратная совместимость + +**Рекомендации:** +1. Если требуется поддержка старой логики, рассмотреть условную обработку +2. Возможно, использовать препроцессорные директивы для различения версий +3. Обеспечить возможность работы с данными из обеих конфигураций (если требуется) + +### 5.3. Оптимизация + +**Рекомендации:** +1. Проверить производительность запросов с дополнительными реквизитами +2. При необходимости оптимизировать через индексы или временные таблицы +3. Рассмотреть кэширование часто используемых данных +4. Профилировать работу обработки на реальных объемах данных + +--- + +## 6. Критические моменты + +### 6.1. Тип данных ОбъектРасчетов + +**✅ Проблема выявлена и решена:** +- В старой конфигурации: `Заказ` типа `DefinedType.ОбъектРасчетов` (составной тип, может быть `ЗаказКлиента`) +- В новой конфигурации: `ОбъектРасчетов` типа `CatalogRef.ОбъектыРасчетов` или `CatalogRef.ДоговорыКредитовИДепозитов` (справочник) + +**Структура справочника `ОбъектыРасчетов`:** +- Справочник имеет реквизит `Объект` типа `DefinedType.ОбъектРасчетов` (составной тип) +- Реквизит `Объект` может содержать ссылку на `ЗаказКлиента` и другие документы + +**Решение:** +- ❌ **НЕПРАВИЛЬНО:** `ТИПЗНАЧЕНИЯ(ОбъектРасчетов) = ТИП("СправочникСсылка.ЗаказКлиента")` - никогда не выполнится, т.к. `ОбъектРасчетов` - это справочник, а не документ +- ✅ **ПРАВИЛЬНО:** Добавить соединение со справочником и проверять реквизит `Объект`: + ```bsl + ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.ОбъектыРасчетов КАК ОбъектыРасчетов + ПО ОбъектыРасчетов.Ссылка = КорректировкаЗадолженностиЗадолженность.ОбъектРасчетов + ... + И ОбъектыРасчетов.Объект ССЫЛКА Документ.ЗаказКлиента + ``` + +### 6.2. Отсутствие реквизита СтатьяРасходов + +**✅ Проблема подтверждена:** +- В старой конфигурации реквизит `СтатьяРасходов` находится в шапке документа и используется для фильтрации +- В новой конфигурации реквизит `СтатьяРасходов` **ОТСУТСТВУЕТ** в шапке документа + +**Найденная альтернатива:** +- В табличной части `ДоходыРасходыАктивыПассивы` есть реквизит `Статья` (тип: `ChartOfCharacteristicTypesRef.СтатьиРасходов` или другие) +- Это аналог реквизита `СтатьяРасходов`, но находится в табличной части + +**Решение:** +1. **Если фильтрация обязательна:** Использовать подзапрос к табличной части `ДоходыРасходыАктивыПассивы` для фильтрации по статье +2. **Если фильтрация не критична:** Убрать условие фильтрации по статье +3. **Учесть особенности:** В новой конфигурации один документ может иметь несколько статей в разных строках табличной части + +### 6.3. Работа с дополнительными реквизитами + +**Проблема:** +- Запросы к дополнительным реквизитам могут быть медленнее прямых запросов к реквизитам +- Необходимо использовать `УправлениеСвойствами` или запросы к регистру + +**Решение:** +- Оптимизировать запросы через временные таблицы +- Рассмотреть кэширование значений признака КредитНота +- Профилировать производительность на реальных данных + +--- + +## 7. Выводы + +### 7.1. Основные выводы + +1. **Документ заменен:** `СписаниеЗадолженности` → `КорректировкаЗадолженности` +2. **Поле заменено:** `Заказ` → `ОбъектРасчетов` (требуется фильтрация по типу) +3. **Признак КредитНота:** Переведен на механизм дополнительных реквизитов +4. **Реквизит СтатьяРасходов:** Требуется проверка наличия в новой конфигурации + +### 7.2. Необходимые действия + +1. ✅ **Выполнено:** Проверено наличие реквизита `СтатьяРасходов` в документе `КорректировкаЗадолженности` - **отсутствует в шапке, есть аналог в табличной части** +2. ⏳ Протестировать работу с полем `ОбъектРасчетов` и фильтрацию по типу +3. ⏳ Адаптировать все запросы в обработке под новую структуру (включая фильтрацию по статье через табличную часть) +4. ⏳ Реализовать работу с признаком КредитНота через дополнительные реквизиты +5. ⏳ Протестировать обработку на реальных данных + +### 7.3. Оценка сложности переноса + +- **Средняя-высокая сложность:** Требуется адаптация запросов, логики работы с признаком и фильтрации по статье через табличную часть +- **Риски:** + - Различия в типах данных (`ОбъектРасчетов` вместо `Заказ`) + - Отсутствие реквизита `СтатьяРасходов` в шапке (требуется фильтрация через табличную часть) + - Возможность нескольких статей в одном документе (влияет на логику фильтрации) +- **Время:** Ориентировочно 2-3 дня на адаптацию и тестирование + +--- + +## 8. Приложения + +### 8.1. Сравнительная таблица документов + +| Параметр | СписаниеЗадолженности (старая) | КорректировкаЗадолженности (новая) | +|----------|--------------------------------|-----------------------------------| +| Название | `СписаниеЗадолженности` | `КорректировкаЗадолженности` | +| Табличная часть | `Задолженность` | `Задолженность` | +| Поле для заказа | `Заказ` (ОбъектРасчетов) | `ОбъектРасчетов` (CatalogRef) | +| Партнер | ✅ Есть | ✅ Есть | +| Сумма | ✅ Есть | ✅ Есть | +| СтатьяРасходов | ✅ В шапке документа | ❌ Отсутствует в шапке | +| Статья | ❌ Нет | ✅ В табличной части `ДоходыРасходыАктивыПассивы` | + +### 8.2. Сравнительная таблица признака КредитНота + +| Параметр | Старая конфигурация | Новая конфигурация | +|----------|---------------------|-------------------| +| Хранение | Реквизит в `ЗаказКлиента` | Дополнительное свойство в `РеализацияТоваровУслуг` | +| Тип | `Boolean` | `Boolean` (через план видов характеристик) | +| Доступ | Прямой: `ЗаказКлиента.КредитНота` | Через `УправлениеСвойствами` | +| Имя свойства | `КредитНота` | `РК_КредитНота` | + +--- + +**Дата создания:** 08.01.2026 +**Дата последнего изменения:** 08.01.2026 +**Версия:** 1.0 diff --git a/docs__Анализ_печати_пакета_документов_и_складского_учета (v3.0).md b/docs__Анализ_печати_пакета_документов_и_складского_учета (v3.0).md new file mode 100644 index 0000000..1e298b8 --- /dev/null +++ b/docs__Анализ_печати_пакета_документов_и_складского_учета (v3.0).md @@ -0,0 +1,871 @@ +--- +title: Анализ необходимости переноса функционала печати пакета документов и доработок складского учета +version: 3.0 +date_modified: 2025-12-21 +author: Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) +date_created: 2025-12-21 +show_metadata_block: true +show_index_link: true +--- + +# Анализ необходимости переноса функционала печати пакета документов и доработок складского учета + +## Версия документа + +Версия 3.0 от 21.12.2025 + +**Изменения в версии 3.0:** + +- Реорганизована структура документа: типовой функционал вынесен в отдельный раздел +- Раздел "Сравнение доработок с эталонной конфигурацией" перемещен в начало документа (раздел 1) +- Создан раздел 2 "Типовой функционал (не требует переноса)" для четкого разделения типового и кастомного функционала +- Раздел 3 "Кастомные доработки, требующие переноса" сфокусирован на доработках, которые необходимо перенести +- Убраны упоминания типового функционала из основного анализа кастомных доработок + +**Изменения в версии 2.0:** + +- Добавлен раздел сравнения доработок с эталонной типовой конфигурацией +- Проведено сравнение модулей локализации с эталонной конфигурацией CRM302228_etalon +- Определены кастомные доработки, требующие переноса +- Выявлено, что команды печати ТОРГ-12 являются типовыми (присутствуют в эталоне) + +## Автор +Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) + +## Цель анализа +Провести глубокий анализ по необходимости переноса из исходной конфигурации (включая расширение) в целевую **кастомных доработок** функционала печати пакета документов (ТОРГ-12, Счет-фактура и сопроводительные документы) при формировании ордера на отгрузку (складской учет). Также провести анализ доработок или иного функционала в исходной конфигурации по отношению к целевой в разделах складского учета и логистики. + +**Важно:** + +- В данном анализе основное внимание уделяется **кастомным доработкам**, требующим переноса. +- Типовой функционал, присутствующий в эталонной конфигурации `CRM302228_etalon`, вынесен в раздел 2 и **не требует переноса**. +- Все кастомные доработки, требующие переноса, описаны в разделе 3. + +## Краткое резюме + +**Типовой функционал (не требует переноса):** + +- Процедуры и функции печати в документе РасходныйОрдерНаТовары (`ДобавитьКомандыПечати()`, `Печать()`, `ПечатьРасходногоОрдераНаТовары()`) +- Команды печати ТОРГ-12 в модуле `РеализацияТоваровУслугЛокализация` + +**Кастомные доработки, требующие переноса (критические):** + +1. Функционал печати расходного ордера по основанию (модули локализации + функции в документе РасходныйОрдерНаТовары) +2. Раздел "Комплект печатных документов" в форме УправлениеОтгрузкой +3. Раздел "Дополнительная обработка" в форме НастройкаПечатиКомплекта + +**Детальный анализ:** см. раздел 3 "Кастомные доработки, требующие переноса" + +--- + +## 1. Сравнение доработок с эталонной типовой конфигурацией + +### 1.1. Методология сравнения + +**Эталонная конфигурация:** `CRM302228_etalon` - типовая эталонная конфигурация версии исходной конфигурации. + +**Цель сравнения:** Определить, какие "доработки" в исходной конфигурации на самом деле являются типовыми (присутствуют в эталонной конфигурации), а какие являются кастомными доработками, требующими переноса. + +### 1.2. Результаты сравнения + +#### 1.2.1. Документ "РасходныйОрдерНаТовары" + +**Типовой функционал (присутствует в эталоне):** + +- ✅ Процедура `ДобавитьКомандыПечати()` - добавляет команды печати: + - "Расходный ордер на товары" + - "Задание на отбор товаров" +- ✅ Процедура `Печать()` - выполняет печать расходного ордера +- ✅ Функция `ПечатьРасходногоОрдераНаТовары()` - формирует печатную форму расходного ордера +- ✅ Функция `ПолучитьДанныеДляПечатнойФормыОтборРазмещениеТоваров()` - получает данные для печати задания на отбор + +**Кастомные доработки (отсутствуют в эталоне):** + +- ❌ Функция `р_СформироватьПечатнуюФормуОрдераПоОснованию` - формирует печатную форму расходного ордера на основе документов-оснований +- ❌ Функция `р_ПолучитьОрдерыНаПечать` - получает список расходных ордеров, связанных с документами-основаниями +- ❌ Переопределение функции `р_ПечатьРасходногоОрдераНаТовары` - расширенная печатная форма с дополнительными данными по доставке + +#### 1.2.2. Модули локализации + +**Модуль `РеализацияТоваровУслугЛокализация`:** + +**Типовой функционал:** + +- ✅ Модуль присутствует в эталонной конфигурации +- ✅ Процедура `ДобавитьКомандыПечати()` с командами печати ТОРГ-12 (НЕ закомментированы в эталоне) + +**Кастомные доработки:** + +- ❌ Функционал добавления печатной формы "РасходныйОрдерНаТовары" в комплект печатных форм +- ❌ Процедура `СформироватьКомплектПечатныхФорм()` с логикой формирования печатной формы расходного ордера +- ❌ Процедура `КомплектПечатныхФорм()` с добавлением печатной формы расходного ордера + +**Модуль `ПеремещениеТоваровЛокализация`:** + +**Типовой функционал:** + +- ✅ Модуль присутствует в эталонной конфигурации +- ✅ Процедура `ДобавитьКомандыПечати()` с командами печати (ТОРГ-13, М-11, ТТН и др.) + +**Кастомные доработки:** + +- ❌ Функционал добавления печатной формы "РасходныйОрдерНаТовары" в комплект печатных форм +- ❌ Процедура `СформироватьКомплектПечатныхФорм()` с логикой формирования печатной формы расходного ордера +- ❌ Процедура `КомплектПечатныхФорм()` с добавлением печатной формы расходного ордера + +### 1.3. Итоговая таблица сравнения + +| Объект/Функционал | Статус в эталоне | Тип | Требуется перенос | +|-------------------|------------------|-----|-------------------| +| Процедура `ДобавитьКомандыПечати()` в документе РасходныйОрдерНаТовары | ✅ Присутствует | Типовое | ❌ Нет | +| Процедура `Печать()` в документе РасходныйОрдерНаТовары | ✅ Присутствует | Типовое | ❌ Нет | +| Функция `ПечатьРасходногоОрдераНаТовары()` | ✅ Присутствует | Типовое | ❌ Нет | +| Команды печати ТОРГ-12 в модуле `РеализацияТоваровУслугЛокализация` | ✅ Присутствует | Типовое | ❌ Нет | +| Модуль `РеализацияТоваровУслугЛокализация`: добавление печатной формы расходного ордера | ❌ Отсутствует | Кастомная | ✅ Да | +| Модуль `ПеремещениеТоваровЛокализация`: добавление печатной формы расходного ордера | ❌ Отсутствует | Кастомная | ✅ Да | +| Функция `р_СформироватьПечатнуюФормуОрдераПоОснованию` | ❌ Отсутствует | Кастомная | ✅ Да | +| Функция `р_ПолучитьОрдерыНаПечать` | ❌ Отсутствует | Кастомная | ✅ Да | +| Переопределение `р_ПечатьРасходногоОрдераНаТовары` | ❌ Отсутствует | Кастомная | ✅ Да | +| Раздел "Комплект печатных документов" в форме УправлениеОтгрузкой | ⚠️ Требуется проверка | Вероятно кастомная | ✅ Да (предварительно) | +| Раздел "Дополнительная обработка" в форме НастройкаПечатиКомплекта | ⚠️ Требуется проверка | Вероятно кастомная | ✅ Да (предварительно) | + +--- + +## 2. Типовой функционал (не требует переноса) + +### 2.1. Документ "РасходныйОрдерНаТовары" + +**Типовой функционал печати, присутствующий в эталонной конфигурации:** + +- Процедура `ДобавитьКомандыПечати()` - добавляет команды печати: + - "Расходный ордер на товары" + - "Задание на отбор товаров" +- Процедура `Печать()` - выполняет печать расходного ордера +- Функция `ПечатьРасходногоОрдераНаТовары()` - формирует печатную форму расходного ордера +- Функция `ПолучитьДанныеДляПечатнойФормыОтборРазмещениеТоваров()` - получает данные для печати задания на отбор + +**Вывод:** Данный функционал является типовым и уже должен присутствовать в целевой конфигурации. Перенос не требуется. + +### 2.2. Модули локализации + +**Модуль `РеализацияТоваровУслугЛокализация`:** +- Команды печати ТОРГ-12 (присутствуют в эталоне, в исходной конфигурации закомментированы) + +**Модуль `ПеремещениеТоваровЛокализация`:** +- Команды печати (ТОРГ-13, М-11, ТТН и др.) + +**Вывод:** Команды печати являются типовым функционалом. Перенос не требуется. + +--- + +## 3. Кастомные доработки, требующие переноса + +### 3.1. Функционал печати расходного ордера по основанию + +#### 3.1.1. Описание доработки + +**Расположение:** + +- Расширение: `CRM3devLocal.Рана/src/Documents/РасходныйОрдерНаТовары/` +- Модули локализации: + - `CRM3devLocal.Рана/src/CommonModules/РеализацияТоваровУслугЛокализация/` + - `CRM3devLocal.Рана/src/CommonModules/ПеремещениеТоваровЛокализация/` + +**Назначение:** Автоматическое добавление печатной формы расходного ордера на товары в комплект печатных форм документов Реализация и Перемещение при их печати. + +#### 3.1.2. Реализованный функционал + +**1. Модули локализации документов:** + + - **`РеализацияТоваровУслугЛокализация`** (`CRM3devLocal.Рана/src/CommonModules/РеализацияТоваровУслугЛокализация/`) + - **`ПеремещениеТоваровЛокализация`** (`CRM3devLocal.Рана/src/CommonModules/ПеремещениеТоваровЛокализация/`) + + **Реализованный функционал:** + + - ✅ В модуле `РеализацияТоваровУслугЛокализация` реализовано добавление печатной формы "РасходныйОрдерНаТовары" в комплект печатных форм документа Реализация + - ✅ При печати документа Реализация автоматически формируется и выводится печатная форма расходного ордера на товары (через функцию `р_СформироватьПечатнуюФормуОрдераПоОснованию`) + - ✅ Аналогичный функционал реализован в модуле `ПеремещениеТоваровЛокализация` для документа Перемещение + +**2. Документ РасходныйОрдерНаТовары в расширении:** + + **Расположение:** `CRM3devLocal.Рана/src/Documents/РасходныйОрдерНаТовары/` + + **Реализованные функции:** + + - ✅ Функция `р_СформироватьПечатнуюФормуОрдераПоОснованию` (экспортная) - формирует печатную форму расходного ордера на основе документов-оснований (Реализация или Перемещение) + - ✅ Функция `р_ПолучитьОрдерыНаПечать` (экспортная) - получает список расходных ордеров, связанных с документами-основаниями + - ✅ Переопределение функции `р_ПечатьРасходногоОрдераНаТовары` - формирует расширенную печатную форму с дополнительными данными по доставке + +#### 3.1.3. Логика работы + +**Процесс использования:** + +1. Пользователь печатает документ Реализация или Перемещение +2. Модуль локализации автоматически добавляет печатную форму "РасходныйОрдерНаТовары" в комплект печатных форм +3. При формировании комплекта вызывается функция `р_СформироватьПечатнуюФормуОрдераПоОснованию` +4. Функция `р_ПолучитьОрдерыНаПечать` находит связанные расходные ордера по документам-основаниям +5. Формируется расширенная печатная форма расходного ордера с данными по доставке + +#### 3.1.4. Необходимость переноса + +**Статус:** ⚠️ **КРИТИЧЕСКАЯ ДОРАБОТКА ДЛЯ ПЕРЕНОСА** + +**Что необходимо перенести:** + +1. **Модули локализации (расширение):** + - Процедура `КомплектПечатныхФорм()` в модуле `РеализацияТоваровУслугЛокализация` + - Процедура `СформироватьКомплектПечатныхФорм()` в модуле `РеализацияТоваровУслугЛокализация` + - Аналогичные процедуры в модуле `ПеремещениеТоваровЛокализация` + +2. **Документ РасходныйОрдерНаТовары (расширение):** + - Функция `р_СформироватьПечатнуюФормуОрдераПоОснованию` (экспортная) + - Функция `р_ПолучитьОрдерыНаПечать` (экспортная) + - Переопределение функции `р_ПечатьРасходногоОрдераНаТовары` + +3. **Зависимости:** + + - Модули локализации зависят от стандартных модулей управления печатью + - Функции используют стандартные функции печати + - Требуется наличие документа РасходныйОрдерНаТовары в целевой конфигурации + +**План переноса:** + +1. Проверить наличие модулей локализации в целевой конфигурации +2. Добавить функционал в модули локализации через расширение целевой конфигурации +3. Добавить функции в документ РасходныйОрдерНаТовары через расширение целевой конфигурации +4. Протестировать автоматическое добавление печатной формы расходного ордера при печати документов Реализация и Перемещение + +--- + +### 3.2. Доработка формы "УправлениеОтгрузкой" - раздел "Комплект печатных документов" + +#### 3.2.1. Описание доработки + +**Обработка:** `Обработка.УправлениеОтгрузкой` +**Форма:** `Обработка.УправлениеОтгрузкой.Форма` +**Расположение в исходной конфигурации:** +- Основная конфигурация: `CRM3devLocal/src/DataProcessors/УправлениеОтгрузкой/` +- Расширение: `CRM3devLocal.Рана/src/DataProcessors/УправлениеОтгрузкой/` + +#### 3.2.2. Реализованный функционал + +##### 3.2.2.1. Раздел "Комплект печатных документов" + +**Описание:** + +В форме обработки "УправлениеОтгрузкой" добавлен раздел "Комплект печатных документов" (группа `ГруппаСписокДляПечати`), который позволяет пользователю выбрать документы для печати пакета документов. + +**Элементы формы:** + +- **Группа `ГруппаСписокДляПечати`** - сворачиваемая группа с заголовком "Комплект печатных документов" + - По умолчанию свернута (`collapsed = true`) + - При разворачивании показывает таблицы документов для выбора +- **Таблица `РеализацииТоваровУслуг`** - динамический список документов Реализация товаров и услуг + - Используется для выбора документов Реализация для печати + - Имеет командную панель с подменю "Печать" +- **Таблица `ПеремещенияТоваров`** - динамический список документов Перемещение товаров + - Используется для выбора документов Перемещение для печати + - Имеет командную панель с подменю "Печать" + +**Команда управления:** + +- **Команда `ОтразитьРеализации`** (заголовок: "Для печати комплекта документов") + - Расположение: `CRM3devLocal.Рана/src/DataProcessors/УправлениеОтгрузкой/Forms/Форма/Form.form` (строки 6344-6364) + - Обработчик: `р_ОтразитьРеализацииПосле` (клиентский) + - Функционал: переключает видимость группы `ГруппаСписокДляПечати` + - При показе группы меняет картинку кнопки на "ПерейтиВперед", при скрытии - на "ПерейтиНазад" + +##### 3.2.2.2. Логика работы + +**Процесс использования:** + +1. Пользователь нажимает кнопку "Для печати комплекта документов" (команда `ОтразитьРеализации`) +2. Открывается раздел "Комплект печатных документов" с таблицами документов +3. В таблицах `РеализацииТоваровУслуг` и `ПеремещенияТоваров` отображаются документы, связанные с текущим распоряжением на отгрузку +4. Пользователь выбирает документы в таблицах +5. Использует стандартные команды печати из подменю "Печать" в командных панелях таблиц +6. При печати документов Реализация или Перемещение автоматически добавляется печатная форма расходного ордера (благодаря модулям локализации, описанным в разделе 1) + +**Особенности реализации:** + +- Раздел "Комплект печатных документов" отображается только при наличии связанных документов +- Отбор документов в таблицах устанавливается автоматически на основе текущего распоряжения на отгрузку +- Логика отбора реализована в процедуре `р_УстановитьОтборыВЗависимыхСписках` (строки 669-706 в `Module.bsl` расширения) +- Поддержка документов типа `РеализацияТоваровУслуг`, `ПеремещениеТоваров` и `ЗаказКлиента` + +#### 3.2.3. Сравнение с типовой конфигурацией + +**В типовой конфигурации:** + +- ❌ Раздел "Комплект печатных документов" отсутствует +- ❌ Команда "ОтразитьРеализации" отсутствует +- ❌ Таблицы `РеализацииТоваровУслуг` и `ПеремещенияТоваров` в форме отсутствуют + +**В исходной конфигурации (с расширением):** + +- ✅ Раздел "Комплект печатных документов" добавлен +- ✅ Команда "ОтразитьРеализации" добавлена +- ✅ Таблицы `РеализацииТоваровУслуг` и `ПеремещенияТоваров` добавлены в форму +- ✅ Реализована логика автоматического отбора документов по распоряжению + +#### 3.2.4. Выводы и рекомендации + +**Статус:** ⚠️ **КРИТИЧЕСКАЯ ДОРАБОТКА ДЛЯ ПЕРЕНОСА** + +**Необходимость переноса:** + +- ✅ **ОБЯЗАТЕЛЬНО** перенести раздел "Комплект печатных документов" в целевую конфигурацию +- ✅ Это не типовая функциональность, а кастомная доработка +- ✅ Функционал напрямую связан с печатью пакета документов при отгрузке + +**Что необходимо перенести:** + +1. **Элементы формы:** + - Группа `ГруппаСписокДляПечати` с настройками сворачивания + - Таблица `РеализацииТоваровУслуг` с командной панелью и подменю "Печать" + - Таблица `ПеремещенияТоваров` с командной панелью и подменю "Печать" + +2. **Команда формы:** + - Команда `ОтразитьРеализации` с заголовком "Для печати комплекта документов" + +3. **Код модуля формы:** + - Процедура `р_ОтразитьРеализацииПосле` (клиентская) + - Процедура `р_УстановитьОтборыВЗависимыхСписках` (серверная) - если есть доработки + - Процедура `р_ТекущиеРаспоряженияПоОрдеру` (клиентская) + - Функция `р_ПолучитьРазпоряжениеОрдера` (серверная без контекста) + +4. **Зависимости:** + + - Модули локализации `РеализацияТоваровУслугЛокализация` и `ПеремещениеТоваровЛокализация` (для автоматической печати расходного ордера) + - Функционал печати расходного ордера по основанию (описан в разделе 1) + +**План переноса:** + +1. Проверить наличие обработки `УправлениеОтгрузкой` в целевой конфигурации +2. Добавить элементы формы (группу и таблицы) в расширение целевой конфигурации +3. Добавить команду `ОтразитьРеализации` в форму +4. Перенести код модуля формы из расширения исходной конфигурации +5. Проверить работу отбора документов в таблицах +6. Протестировать печать комплекта документов + +### 3.3. Доработка формы "НастройкаПечатиКомплекта" - раздел "Дополнительная обработка" + +#### 3.3.1. Описание доработки + +**Регистр сведений:** `РегистрСведений.НастройкиПечатиОбъектов` +**Форма:** `РегистрСведений.НастройкиПечатиОбъектов.Форма.НастройкаПечатиКомплекта` +**Расположение в исходной конфигурации:** +- Основная конфигурация: `CRM3devLocal/src/InformationRegisters/НастройкиПечатиОбъектов/` +- Расширение: `CRM3devLocal.Рана/src/InformationRegisters/НастройкиПечатиОбъектов/` + +#### 3.3.2. Реализованный функционал + +##### 3.3.2.1. Раздел "Дополнительная обработка" + +**Описание:** + +В форме настройки печати комплекта документов добавлен раздел "Дополнительная обработка" (группа `ГруппаДополнительнаяОбработка`), который позволяет пользователю настроить поведение при выводе на печать документа из комплекта в зависимости от условий. Пользователь может написать выполняемый код на языке 1С, который будет выполняться для каждого документа перед печатью. + +**Элементы формы:** + +- **Группа `ГруппаДополнительнаяОбработка`** - сворачиваемая группа с заголовком "Дополнительная обработка" + - По умолчанию свернута (`collapsed = true`) + - При разворачивании показывает поле для ввода кода +- **Поле `КомплектПечатныхФормДополнительнаяОбработка`** - поле ввода многострочного текста для выполняемого кода + - Тип: `InputField` с режимом редактирования `Enter` + - Подсказка содержит описание доступных переменных: + - `Объект` - ДокументСсылка на Реализацию товаров и услуг + - `Экземпляров` - количество экземпляров + - `Печатать` - признак необходимости печати или отключения печатной формы + +##### 3.3.2.2. Техническая реализация + +**Добавление поля в структуру данных:** + +1. В модуле менеджера регистра `НастройкиПечатиОбъектов` (расширение): + - Функция `р_ПодготовитьКомплектПечатныхФорм` (переопределение) - добавляет колонку "ДополнительнаяОбработка" в таблицу значений + - Процедура `р_СкопироватьПечатнуюФормуВКоллекцию` (переопределение) - копирует значение поля "ДополнительнаяОбработка" из настроек + +2. В модуле `УправлениеПечатьюКлиентСервер` (расширение): + - Функция `р_ИменаПолейКоллекцииПечатныхФорм` (переопределение) - добавляет "ДополнительнаяОбработка" в список полей коллекции печатных форм + +**Выполнение кода:** + +В модуле менеджера регистра `НастройкиПечатиОбъектов` (основная конфигурация, строки 509-533) реализована логика выполнения кода: + +```bsl +Если ЗначениеЗаполнено(КомплектыПечати[0].ДополнительнаяОбработка) Тогда + + Объекты = МассивОбъектов; + Если МассивОбъектов.Количество() = 1 Тогда + Объект = МассивОбъектов[0]; + Иначе + Объект = Неопределено; + КонецЕсли; + Экземпляров = КомплектыПечати[0].Экземпляров; + Печатать = КомплектыПечати[0].Печатать; + + Попытка + Выполнить(КомплектыПечати[0].ДополнительнаяОбработка); + КомплектыПечати[0].Экземпляров = Экземпляров; + Если Экземпляров = 0 Тогда + Печатать = Ложь; + КонецЕсли; + КомплектыПечати[0].Печатать = Печатать; + Исключение + //ОписаниеОшибки() + КонецПопытки; + Если НЕ Печатать Тогда + Возврат КомплектыПечатиПоОбъектам; + КонецЕсли; +КонецЕсли; +``` + +**Логика работы:** + +1. Перед печатью каждого документа из комплекта проверяется наличие кода в поле "ДополнительнаяОбработка" +2. Если код присутствует, инициализируются переменные: + - `Объект` - ссылка на документ (если один документ) или `Неопределено` (если несколько) + - `Объекты` - массив документов + - `Экземпляров` - текущее количество экземпляров из настроек + - `Печатать` - текущий признак печати из настроек +3. Выполняется код пользователя (команда `Выполнить`) +4. После выполнения кода значения `Экземпляров` и `Печатать` обновляются в настройках +5. Если `Экземпляров = 0`, то `Печатать` автоматически устанавливается в `Ложь` +6. Если `Печатать = Ложь`, документ исключается из печати + +##### 3.3.2.3. Примеры использования + +**Пример 1: Счет на оплату - отмена печати при кредит-ноте** +```bsl +Если ЗначениеЗаполнено(Объект.ЗаказКлиента) и Объект.ЗаказКлиента.КредитНота Тогда + Экземпляров = 0; +КонецЕсли; +``` + +**Пример 2: Товарная накладная без услуг (ТОРГ-12) - проверка комиссионного договора** +```bsl +ЭтоКомиссионныйДоговор = Ложь; +Если Объект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПередачаНаКомиссию ИЛИ + Объект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПередачаНаКомиссиюВДругуюОрганизацию ТОГДА + ЭтоКомиссионныйДоговор = Истина; +КонецЕсли; + +Если ЭтоКомиссионныйДоговор Тогда + Печатать = Ложь; + Экземпляров = 0; +ИНАЧЕ + ЕСЛИ + Объект.СпособДоставки = Перечисления.СпособыДоставки.СиламиПеревозчика + ИЛИ Объект.СпособДоставки = Перечисления.СпособыДоставки.СиламиПеревозчикаПоАдресу + ИЛИ Объект.ЗаказКлиента.СпособДоставки = Перечисления.СпособыДоставки.СиламиПеревозчикаПоАдресу + ТОГДА + Экземпляров = Экземпляров + 1; + КОНЕЦЕСЛИ; +КОНЕЦЕСЛИ; +``` + +**Пример 3: Торговая накладная с ГТД (ТОРГ-12) - обратная логика** +```bsl +ЭтоКомиссионныйДоговор = Ложь; +Если Объект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПередачаНаКомиссию ИЛИ + Объект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПередачаНаКомиссиюВДругуюОрганизацию ТОГДА + ЭтоКомиссионныйДоговор = Истина; +КонецЕсли; + +ЕСЛИ ЭтоКомиссионныйДоговор Тогда + Если Объект.СпособДоставки = Перечисления.СпособыДоставки.СиламиПеревозчика + ИЛИ Объект.СпособДоставки = Перечисления.СпособыДоставки.СиламиПеревозчикаПоАдресу + ИЛИ Объект.ЗаказКлиента.СпособДоставки = Перечисления.СпособыДоставки.СиламиПеревозчикаПоАдресу + ТОГДА + Экземпляров = Экземпляров + 1; + КонецЕсли; +ИНАЧЕ + Печатать = Ложь; + Экземпляров = 0; +КОНЕЦЕСЛИ; +``` + +**Пример 4: Сертификаты (реестр, РАНА) - проверка артикула номенклатуры** +```bsl +АртикулПроверки = "LNK-010100"; + +Для каждого строкадокумента из Объект.Товары Цикл + Если строкадокумента.Номенклатура.Артикул = АртикулПроверки или + строкадокумента.Номенклатура.Родитель.Наименование = "Лаеннек" Тогда + Печатать = Ложь; + Если Экземпляров = 0 тогда Экземпляров = 1; КонецЕсли; + КонецЕсли; +КонецЦикла; +``` + +#### 3.3.3. Сравнение с типовой конфигурацией + +**В типовой конфигурации:** + +- ❌ Поле "ДополнительнаяОбработка" отсутствует в структуре таблицы КомплектПечатныхФорм +- ❌ Раздел "Дополнительная обработка" отсутствует в форме +- ❌ Логика выполнения пользовательского кода отсутствует + +**В исходной конфигурации (с расширением):** + +- ✅ Поле "ДополнительнаяОбработка" добавлено в структуру данных +- ✅ Раздел "Дополнительная обработка" добавлен в форму +- ✅ Реализована логика выполнения пользовательского кода с обработкой ошибок +- ✅ Поддержка изменения количества экземпляров и признака печати + +#### 3.3.4. Выводы и рекомендации + +**Статус:** ⚠️ **КРИТИЧЕСКАЯ ДОРАБОТКА ДЛЯ ПЕРЕНОСА** + +**Необходимость переноса:** + +- ✅ **ОБЯЗАТЕЛЬНО** перенести функционал "Дополнительная обработка" в целевую конфигурацию +- ✅ Это не типовая функциональность, а кастомная доработка +- ✅ Функционал критически важен для бизнес-процессов печати документов +- ✅ Позволяет гибко настраивать правила печати документов в зависимости от условий + +**Что необходимо перенести:** + +1. **Модуль менеджера регистра `НастройкиПечатиОбъектов` (расширение):** + - Функция `р_ПодготовитьКомплектПечатныхФорм` (переопределение) + - Процедура `р_СкопироватьПечатнуюФормуВКоллекцию` (переопределение) + +2. **Модуль `УправлениеПечатьюКлиентСервер` (расширение):** + - Функция `р_ИменаПолейКоллекцииПечатныхФорм` (переопределение) + +3. **Модуль менеджера регистра `НастройкиПечатиОбъектов` (основная конфигурация):** + - Логика выполнения кода в функции `КомплектыПечатиПоОбъектам` (строки 509-533) + - **ВНИМАНИЕ:** Этот код находится в основной конфигурации, но может быть добавлен через расширение + +4. **Элементы формы `НастройкаПечатиКомплекта`:** + - Группа `ГруппаДополнительнаяОбработка` + - Поле `КомплектПечатныхФормДополнительнаяОбработка` + +5. **Настройки печати:** + - Необходимо перенести все сохраненные настройки с кодом дополнительной обработки из исходной системы + +**План переноса:** + +1. Проверить наличие регистра `НастройкиПечатиОбъектов` в целевой конфигурации +2. Добавить поле "ДополнительнаяОбработка" в структуру данных через расширение +3. Добавить логику выполнения кода в модуль менеджера регистра (через расширение или в основную конфигурацию) +4. Добавить элементы формы в расширение целевой конфигурации +5. Перенести сохраненные настройки печати с кодом дополнительной обработки +6. Протестировать выполнение кода для различных сценариев + +**Особенности реализации:** + +- Код выполняется в контексте сервера +- Ошибки выполнения кода обрабатываются (игнорируются), чтобы не прерывать печать других документов +- Код может обращаться к любым свойствам и методам документа через переменную `Объект` +- Код может изменять количество экземпляров и признак печати +- При установке `Экземпляров = 0` автоматически устанавливается `Печатать = Ложь` + +### 3.4. Доработки складского учета и логистики + +#### 3.4.1. Сравнение групп доступа + +##### 3.4.1.1. Группы доступа, отсутствующие в целевой системе + +**Складские и логистические группы (11):** + +1. Добавление изменение складских актов +2. Кладовщик +3. Кладовщик (без заказов поставщиков) +4. Менеджер по доставке +5. Менеджер по доставке (без закупок) +6. Менеджер по продажам (Без складов) +7. Менеджеры по продажам (Заказ и Реализация, без складов) +8. Ответственный по работе с документом заказ на перемещение +9. Перемещения товаров +10. Работник склада +11. Чтение документа задания на перевозку + +**Вывод:** + +В целевой системе отсутствуют специализированные группы доступа для складского учета и логистики, что может указывать на различия в функционале или подходе к управлению доступом. + +#### 3.4.2. Документы складского учета + +##### 3.4.2.1. Сравнение документов + +**Документы, присутствующие в обеих конфигурациях:** + +- РасходныйОрдерНаТовары +- ПриходныйОрдерНаТовары +- ПеремещениеТоваров +- ЗаказНаПеремещение +- ЗаданиеНаПеревозку +- ОтборРазмещениеТоваров +- УпаковочныйЛист + +**Документы, требующие проверки на наличие доработок:** + +- РеализацияТоваровУслуг +- СчетФактураВыданный +- ТранспортнаяНакладная + +##### 3.4.2.2. Доработки в расширении исходной конфигурации + +**Документы расширения "CRM3devLocal.Рана":** + +**Документы, связанные со складским учетом:** + +- `rh_ТоварыНаСкладахСебестоимость` - документ для работы с себестоимостью товаров на складах +- `р_ВерсииСебестоимости` - документ для работы с версиями себестоимости +- `р_КредитНота` - документ кредит-ноты + +**Документы, связанные с логистикой:** + +- `ЗаданиеНаПеревозку` - присутствует в расширении, требуется проверка на наличие доработок + +**Общие модули расширения:** + +**Модули, связанные с печатью:** + +- `rh_УправлениеПечатью` +- `rh_УправлениеПечатьюКлиент` + +**Модули, связанные с себестоимостью:** + +- Возможно, есть модули для работы с себестоимостью (требуется проверка) + +##### 3.4.2.3. Функциональные различия + +**Статусы расходных ордеров:** + +**В исходной конфигурации:** + +- Документ "РасходныйОрдерНаТовары" поддерживает статусы: + - Подготовлено + - К отбору + - К проверке + - Проверен + - К отгрузке + - Отгружен + +**В целевой конфигурации:** + +- Требуется проверка наличия аналогичных статусов + +**Интеграция с доставкой:** + +**В исходной конфигурации:** + +- Документ "РасходныйОрдерНаТовары" имеет реквизиты: + - `ОтгрузкаПоЗаданиюНаПеревозку` (булево) + - `ЗаданиеНаПеревозку` (ссылка на документ) + - `ПорядокДоставки` (строка) + +**В целевой конфигурации:** +- Требуется проверка наличия аналогичных реквизитов + +#### 3.4.3. Выводы по доработкам складского учета и логистики + +##### 3.4.3.1. Найденные различия + +1. **Группы доступа:** + + - В целевой системе отсутствуют специализированные группы доступа для складского учета + - Это может указывать на упрощенную модель доступа или необходимость создания аналогичных групп + +2. **Документы расширения:** + + - В исходной конфигурации есть документы для работы с себестоимостью товаров на складах + - Требуется проверка наличия аналогичного функционала в целевой конфигурации + +3. **Функционал печати:** + + - В расширении исходной конфигурации есть модули управления печатью + - Требуется детальная проверка функционала + +##### 3.4.3.2. Рекомендации + +1. **Провести детальный анализ:** + + - Сравнить модули документов складского учета в исходной и целевой конфигурациях + - Проверить наличие всех реквизитов и табличных частей + - Сравнить обработчики событий и подписки + +2. **Оценить необходимость переноса:** + + - Документы для работы с себестоимостью (`rh_ТоварыНаСкладахСебестоимость`, `р_ВерсииСебестоимости`) + - Модули управления печатью (`rh_УправлениеПечатью`) + - Доработки в документе "РасходныйОрдерНаТовары" + +3. **Определить зависимости:** + + - Проверить зависимости доработок от других объектов конфигурации + - Оценить совместимость с целевой конфигурацией + +### 3.5. Итоговый список кастомных доработок, требующих переноса + +#### 3.5.1. Критические доработки (обязательные для переноса) + +1. **Функционал печати расходного ордера по основанию:** + - Модуль `РеализацияТоваровУслугЛокализация`: процедуры `КомплектПечатныхФорм()` и `СформироватьКомплектПечатныхФорм()` + - Модуль `ПеремещениеТоваровЛокализация`: аналогичные процедуры + - Функция `р_СформироватьПечатнуюФормуОрдераПоОснованию` в документе РасходныйОрдерНаТовары + - Функция `р_ПолучитьОрдерыНаПечать` в документе РасходныйОрдерНаТовары + - Переопределение функции `р_ПечатьРасходногоОрдераНаТовары` с данными по доставке + +2. **Раздел "Комплект печатных документов" в форме УправлениеОтгрузкой:** + - Группа `ГруппаСписокДляПечати` + - Таблицы `РеализацииТоваровУслуг` и `ПеремещенияТоваров` + - Команда `ОтразитьРеализации` + - Код модуля формы (процедуры `р_ОтразитьРеализацииПосле`, `р_УстановитьОтборыВЗависимыхСписках` и др.) + +3. **Раздел "Дополнительная обработка" в форме НастройкаПечатиКомплекта:** + - Поле "ДополнительнаяОбработка" в структуре данных регистра `НастройкиПечатиОбъектов` + - Группа `ГруппаДополнительнаяОбработка` и поле `КомплектПечатныхФормДополнительнаяОбработка` в форме + - Логика выполнения пользовательского кода в модуле менеджера регистра + - Переопределения функций в модуле `УправлениеПечатьюКлиентСервер` + +#### 3.5.2. Доработки, требующие дополнительной проверки + +1. **Доработки складского учета:** + - Документы для работы с себестоимостью (`rh_ТоварыНаСкладахСебестоимость`, `р_ВерсииСебестоимости`) + - Модули управления печатью (`rh_УправлениеПечатью`, `rh_УправлениеПечатьюКлиент`) + - Группы доступа для складского учета и логистики + +#### 3.5.3. Опциональные доработки (требуют решения о необходимости) + +1. **Раскомментирование кода печати ТОРГ-12:** + - Код присутствует в модуле `РеализацияТоваровУслугЛокализация`, но закомментирован + - В эталонной конфигурации команды ТОРГ-12 присутствуют и не закомментированы + - Требуется решение: использовать типовой функционал или доработать закомментированный код + +2. **Раскомментирование кода печати Счет-фактура:** + - Код присутствует, но закомментирован + - Требуется решение о необходимости реализации + +3. **Автоматическая печать пакета документов при проведении расходного ордера:** + - В настоящее время не реализовано + - Требуется решение о необходимости реализации + +--- + +## 4. План дальнейших действий + +### 4.1. Необходимые проверки + +1. **Проверка функционала печати пакета документов:** + - [ ] Детально изучить модули `rh_УправлениеПечатью` и `rh_УправлениеПечатьюКлиент` + - [ ] Проверить общую форму `rh_ПечатьДокументов` + - [ ] Найти подписки на события или обработчики, формирующие ТОРГ-12 и Счет-фактура + - [ ] Проверить наличие аналогичного функционала в целевой конфигурации + +2. **Проверка доработок складского учета:** + - [ ] Сравнить модули документа "РасходныйОрдерНаТовары" в исходной и целевой конфигурациях + - [ ] Проверить наличие документов для работы с себестоимостью в целевой конфигурации + - [ ] Сравнить обработчики событий и подписки на события + - [ ] Проверить наличие всех реквизитов и табличных частей + +3. **Проверка функционала логистики:** + - [ ] Сравнить документ "ЗаданиеНаПеревозку" в исходной и целевой конфигурациях + - [ ] Проверить интеграцию с доставкой + - [ ] Сравнить реквизиты, связанные с доставкой + +### 4.2. Оценка необходимости переноса + +После проведения всех проверок необходимо: + +1. Составить список объектов, требующих переноса +2. Оценить сложность переноса каждого объекта +3. Определить зависимости между объектами +4. Составить план переноса с учетом приоритетов + +### 4.3. Документирование + +1. Создать детальное описание найденного функционала +2. Составить техническое задание на перенос (если требуется) +3. Документировать различия между конфигурациями + +--- + +## 5. Заключение + +### 5.1. Текущий статус анализа + +**Кастомные доработки, требующие переноса:** + +✅ **Выявлено и проанализировано:** + +- Функционал печати расходного ордера по основанию (модули локализации + функции в документе РасходныйОрдерНаТовары) +- Раздел "Комплект печатных документов" в форме УправлениеОтгрузкой +- Раздел "Дополнительная обработка" в форме НастройкаПечатиКомплекта +- Различия в группах доступа для складского учета + +⚠️ **Требуется дополнительная проверка:** + +- Документы для работы с себестоимостью (`rh_ТоварыНаСкладахСебестоимость`, `р_ВерсииСебестоимости`) +- Модули управления печатью (`rh_УправлениеПечатью`, `rh_УправлениеПечатьюКлиент`) +- Наличие аналогичного функционала в целевой конфигурации + +❌ **НЕ реализовано (требует решения о необходимости):** + +- Автоматическая печать ТОРГ-12 и Счет-фактура при проведении расходного ордера +- Автоматическое формирование пакета документов при проведении расходного ордера + +### 5.2. Приоритеты переноса + +**Высокий приоритет (критические доработки):** +1. Функционал печати расходного ордера по основанию +2. Раздел "Комплект печатных документов" в форме УправлениеОтгрузкой +3. Раздел "Дополнительная обработка" в форме НастройкаПечатиКомплекта + +**Средний приоритет (требуют проверки):** +1. Доработки складского учета (документы для работы с себестоимостью) +2. Модули управления печатью + +**Низкий приоритет (опциональные):** +1. Раскомментирование кода печати ТОРГ-12 (можно использовать типовой функционал) +2. Раскомментирование кода печати Счет-фактура +3. Автоматическая печать пакета документов при проведении расходного ордера + +### 5.3. Следующие шаги + +1. Проверить наличие критических доработок в целевой конфигурации +2. Начать перенос критических доработок в расширение целевой конфигурации +3. Провести детальную проверку модулей управления печатью в расширении исходной конфигурации +4. Сравнить модули документов складского учета в исходной и целевой конфигурациях +5. Принять решение о необходимости реализации опциональных доработок + + +--- + +## Приложения + +### Приложение А. Список проверенных файлов + +**Эталонная конфигурация:** +- `CRM302228_etalon/src/Documents/РасходныйОрдерНаТовары/ManagerModule.bsl` +- `CRM302228_etalon/src/CommonModules/РеализацияТоваровУслугЛокализация/Module.bsl` +- `CRM302228_etalon/src/CommonModules/ПеремещениеТоваровЛокализация/Module.bsl` + +**Исходная конфигурация:** +- `CRM3devLocal/src/Documents/РасходныйОрдерНаТовары/ManagerModule.bsl` + +**Расширение исходной конфигурации (кастомные доработки):** +- `CRM3devLocal.Рана/src/Documents/РасходныйОрдерНаТовары/ManagerModule.bsl` +- `CRM3devLocal.Рана/src/CommonModules/РеализацияТоваровУслугЛокализация/Module.bsl` +- `CRM3devLocal.Рана/src/CommonModules/ПеремещениеТоваровЛокализация/Module.bsl` +- `CRM3devLocal.Рана/src/DataProcessors/УправлениеОтгрузкой/Forms/Форма/Module.bsl` +- `CRM3devLocal.Рана/src/InformationRegisters/НастройкиПечатиОбъектов/` (требуется детальная проверка) +- `CRM3devLocal.Рана/src/CommonModules/rh_УправлениеПечатью/` (требуется проверка) + +**Целевая конфигурация:** +- `CRM326/CRM326_TEST/src/Documents/РасходныйОрдерНаТовары/` (требуется проверка наличия кастомных доработок) + +### Приложение Б. Список групп доступа, отсутствующих в целевой системе + +См. файл `docs/active_missing_access_groups.txt` + +--- + +**Примечание:** +- Типовой функционал, присутствующий в эталонной конфигурации, вынесен в раздел 2 и не требует переноса. +- Основное внимание в документе уделено кастомным доработкам, требующим переноса (раздел 3). +- Для получения полной картины требуется проведение дополнительных проверок, указанных в разделе 4 "План дальнейших действий". + diff --git a/docs__Анализ_привязок_серий_номенклатур_к_видам_номенклатур.md b/docs__Анализ_привязок_серий_номенклатур_к_видам_номенклатур.md new file mode 100644 index 0000000..ad0955b --- /dev/null +++ b/docs__Анализ_привязок_серий_номенклатур_к_видам_номенклатур.md @@ -0,0 +1,320 @@ +# Анализ привязок серий номенклатур к видам номенклатур + +## Дата анализа +2024 + +## Цель анализа +Исследование логики привязки серий номенклатур к видам номенклатур, определение отборов при выборе серий и выявление возможных нарушений логики данных. + +--- + +## 1. Отбор серий при выборе в форме "Указание серии в строке товаров" + +### 1.1. Контекст использования +Форма `Обработка.ПодборСерийВДокументы.Форма.УказаниеСерииВСтрокеТоваров` используется при заполнении таблицы товаров документа **ввода остатков собственного товара**. + +### 1.2. Вариант получения данных +Для документа ввода остатков собственного товара используется вариант получения данных: **`"ВсеСерииНоменклатуры"`**. + +Определение варианта происходит в функции `ВариантПолучениеДанныхИзРегистровПоПараметрамФормы`: + +```bsl +ИначеЕсли ПараметрыУказанияСерий.СкладскиеОперации.Найти(Перечисления.СкладскиеОперации.ВводОстатков) <> Неопределено Тогда + ВариантПолучениеДанныхИзРегистров = "ВсеСерииНоменклатуры"; +``` + +### 1.3. Формирование запроса для отбора серий + +#### 1.3.1. Базовый запрос из регистра движений +Для варианта `"ВсеСерииНоменклатуры"` формируется запрос из регистра `ДвиженияСерийТоваров`: + +```sql +ВЫБРАТЬ РАЗРЕШЕННЫЕ РАЗЛИЧНЫЕ + ДвиженияСерийТоваров.Серия, + 0 КАК СвободныйОстаток +ПОМЕСТИТЬ ДанныеРегистров +ИЗ + РегистрНакопления.ДвиженияСерийТоваров КАК ДвиженияСерийТоваров +ГДЕ + ДвиженияСерийТоваров.Номенклатура = &Номенклатура + И ДвиженияСерийТоваров.Характеристика = &Характеристика +``` + +#### 1.3.2. Дополнительный отбор в форме +В форме `УказаниеСерииВСтрокеТоваров` добавляется условие: + +```sql +ГДЕ + ДанныеРегистров.СвободныйОстаток > 0 + ИЛИ &ВсеСерии +``` + +Для варианта `"ВсеСерииНоменклатуры"` параметр `ВсеСерии` устанавливается в `Истина`: + +```bsl +Если ВариантПолучениеДанныхИзРегистров <> "ВсеСерииНоменклатуры" Тогда + Запрос.УстановитьПараметр("ВсеСерии", РежимОтображенияСерий = "ВсеСерии"); +Иначе + Запрос.УстановитьПараметр("ВсеСерии", Истина); +КонецЕсли; +``` + +### 1.4. Итоговый отбор серий для документа ввода остатков + +**При выборе серии в форме для документа ввода остатков собственного товара применяется отбор:** + +1. ✅ **По номенклатуре**: `ДвиженияСерийТоваров.Номенклатура = &Номенклатура` +2. ✅ **По характеристике**: `ДвиженияСерийТоваров.Характеристика = &Характеристика` +3. ❌ **Без отбора по остаткам**: Показываются **все серии**, которые когда-либо использовались для данной номенклатуры и характеристики (из регистра `ДвиженияСерийТоваров`), независимо от наличия остатков +4. ❌ **Без отбора по складу, помещению, назначению**: Эти параметры не учитываются при отборе + +**Вывод**: При вводе остатков можно указывать любые серии, в том числе новые, которые еще не были использованы в движениях. + +--- + +## 2. Логика привязки серий к виду номенклатуры + +### 2.1. Определение владельца серий + +Владелец серий определяется в функции `НастройкиИспользованияСерий` справочника `ВидыНоменклатуры`: + +```bsl +ВЫБОР + КОГДА ВидыНоменклатуры.НастройкиСерийБерутсяИзДругогоВидаНоменклатуры + ТОГДА ВидыНоменклатуры.ВладелецСерий + ИНАЧЕ ВидыНоменклатуры.Ссылка +КОНЕЦ КАК ВладелецСерий +``` + +### 2.2. Два сценария привязки + +#### Сценарий 1: НастройкиСерийБерутсяИзДругогоВидаНоменклатуры = Истина + +- **ВладелецСерий** = `ВидыНоменклатуры.ВладелецСерий` (другой вид номенклатуры) +- **Все серии** для всех номенклатур этого вида привязываются к виду номенклатуры, указанному в поле `ВладелецСерий` +- Серии создаются с `ВидНоменклатуры = ВидыНоменклатуры.ВладелецСерий` + +**Пример:** +- Вид номенклатуры: "Товары" +- `НастройкиСерийБерутсяИзДругогоВидаНоменклатуры` = Истина +- `ВладелецСерий` = "Продукция" +- **Результат**: Все серии для номенклатур вида "Товары" привязываются к виду "Продукция" + +#### Сценарий 2: НастройкиСерийБерутсяИзДругогоВидаНоменклатуры = Ложь + +- **ВладелецСерий** = `ВидыНоменклатуры.Ссылка` (сам вид номенклатуры) +- Серии привязываются **непосредственно к самому виду номенклатуры** +- Серии создаются с `ВидНоменклатуры = ВидыНоменклатуры.Ссылка` +- Поле `ВладелецСерий` вида номенклатуры очищается (если было заполнено) + +**Пример:** +- Вид номенклатуры: "Товары" +- `НастройкиСерийБерутсяИзДругогоВидаНоменклатуры` = Ложь +- **Результат**: Все серии для номенклатур вида "Товары" привязываются к виду "Товары" + +### 2.3. Установка вида номенклатуры при создании серии + +В форме `УказаниеСерииВСтрокеТоваров` вид номенклатуры устанавливается следующим образом: + +```bsl +ВидНоменклатуры = НастройкиИспользованияСерий.ВладелецСерий; +``` + +При создании новой серии это значение передается в объект серии: + +```bsl +ЗаполнитьЗначенияСвойств(СерияОбъект, ЭтотОбъект, РеквизитыВводаСерии(Истина)); +``` + +Где `РеквизитыВводаСерии` включает `ВидНоменклатуры`. + +**Вывод**: Серия привязывается к **`ВладелецСерий`**, который определяется из вида номенклатуры самой номенклатуры, но может быть переопределен через поле `ВладелецСерий` вида номенклатуры, если установлен флаг `НастройкиСерийБерутсяИзДругогоВидаНоменклатуры`. + +--- + +## 3. Нарушение логики данных + +### 3.1. Описание проблемы + +**Нарушение**: Если у серии указан вид номенклатуры, у которого установлен флаг `НастройкиСерийБерутсяИзДругогоВидаНоменклатуры = Истина`, то это является **нарушением логики данных**. + +**Почему это нарушение:** +- Если у вида номенклатуры установлен флаг `НастройкиСерийБерутсяИзДругогоВидаНоменклатуры = Истина`, то все серии должны привязываться к `ВладелецСерий`, а не к самому виду номенклатуры +- Если серия привязана к виду номенклатуры с таким флагом, то серия должна быть привязана к `ВладелецСерий` этого вида, а не к самому виду + +### 3.2. Как может возникнуть нарушение + +1. **Изменение настроек вида номенклатуры после создания серий**: + - Серии были созданы, когда флаг `НастройкиСерийБерутсяИзДругогоВидаНоменклатуры` был `Ложь` + - Позже флаг был установлен в `Истина`, но существующие серии не были перепривязаны + +2. **Прямое редактирование серий**: + - Ручное изменение вида номенклатуры у серии без учета настроек + +3. **Импорт данных**: + - Импорт серий из внешних источников без проверки соответствия логике + +4. **Ошибки в коде**: + - Прямое создание серий без использования механизма определения `ВладелецСерий` + +### 3.3. Последствия нарушения + +#### 3.3.1. Проблемы с поиском серий + +**Проблема**: Серии не будут находиться в запросах, которые ищут серии по `ВладелецСерий`. + +**Примеры запросов, где это критично:** + +1. **Поиск серии в форме подбора** (`НайтиСерию`): +```sql +ВЫБРАТЬ + СерииНоменклатуры.Ссылка КАК Серия +ИЗ + Справочник.СерииНоменклатуры КАК СерииНоменклатуры +ГДЕ + СерииНоменклатуры.ВидНоменклатуры = &ВидНоменклатуры +``` +Если `ВидНоменклатуры` = `ВладелецСерий`, а серия привязана к исходному виду, серия не будет найдена. + +2. **Запросы с фильтрацией по виду номенклатуры**: +```sql +СерииНоменклатуры.ВидНоменклатуры = &ВидНоменклатуры +``` +Серии с неправильным видом не попадут в выборку. + +#### 3.3.2. Неправильное применение настроек использования серий + +**Проблема**: Настройки использования серий будут браться из неправильного вида номенклатуры. + +**Пример:** +- Вид номенклатуры "Товары" имеет `НастройкиСерийБерутсяИзДругогоВидаНоменклатуры = Истина` и `ВладелецСерий = "Продукция"` +- Серия привязана к виду "Товары" вместо "Продукция" +- Настройки будут браться из вида "Товары", а не из "Продукция" +- Это может привести к: + - Неправильной проверке заполнения реквизитов серии + - Неправильному отображению полей в формах + - Неправильной логике работы с сериями + +#### 3.3.3. Проблемы с проверкой соответствия серии и номенклатуры + +**Проблема**: Проверка соответствия серии и номенклатуры может работать некорректно. + +В модуле `НоменклатураСервер` есть проверка: + +```sql +И НЕ(Серии.ВидНоменклатуры.ВладелецСерий = Номенклатура.ВидНоменклатуры.ВладелецСерий + И Серии.ВидНоменклатуры.ВладелецСерий <> ЗНАЧЕНИЕ(Справочник.ВидыНоменклатуры.ПустаяСсылка) + И Номенклатура.ВидНоменклатуры.ВладелецСерий <> ЗНАЧЕНИЕ(Справочник.ВидыНоменклатуры.ПустаяСсылка) + ИЛИ Номенклатура.ВладелецСерий = Серии.ВидНоменклатуры + ИЛИ Номенклатура.ВидНоменклатуры = Серии.ВидНоменклатуры) +``` + +Если серия привязана к виду с `НастройкиСерийБерутсяИзДругогоВидаНоменклатуры = Истина`, проверка может не сработать корректно. + +#### 3.3.4. Проблемы с интеграциями + +**Проблема**: Интеграции, которые используют `ВидНоменклатуры` серии, могут работать некорректно. + +**Примеры:** +- Интеграция с ЕГАИС +- Интеграция с ВЕТИС +- Интеграция с ГИСМ + +#### 3.3.5. Проблемы с отображением в формах подбора + +**Проблема**: Серии могут не отображаться в формах подбора или отображаться некорректно. + +**Пример:** +- В форме подбора серий фильтр по виду номенклатуры не найдет серии с неправильным видом +- Пользователь не сможет выбрать нужную серию + +### 3.4. Текущее состояние проверок + +**Проверка отсутствует**: В модуле объекта `СерииНоменклатуры` нет проверки на соответствие вида номенклатуры серии и флага `НастройкиСерийБерутсяИзДругогоВидаНоменклатуры`. + +**Рекомендация**: Добавить проверку в процедуру `ПередЗаписью` или `ОбработкаПроверкиЗаполнения` модуля объекта `СерииНоменклатуры`. + +--- + +## 4. Рекомендации + +### 4.1. Добавление проверки целостности данных + +**Рекомендуется добавить проверку** в модуль объекта `СерииНоменклатуры`: + +```bsl +Процедура ПередЗаписью(Отказ) + + // ... существующий код ... + + // Проверка соответствия вида номенклатуры серии и настроек вида номенклатуры + Если ЗначениеЗаполнено(ВидНоменклатуры) Тогда + РеквизитыВидНоменклатуры = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(ВидНоменклатуры, + "НастройкиСерийБерутсяИзДругогоВидаНоменклатуры,ВладелецСерий"); + + Если РеквизитыВидНоменклатуры.НастройкиСерийБерутсяИзДругогоВидаНоменклатуры Тогда + Если ЗначениеЗаполнено(РеквизитыВидНоменклатуры.ВладелецСерий) Тогда + Если ВидНоменклатуры <> РеквизитыВидНоменклатуры.ВладелецСерий Тогда + ТекстОшибки = НСтр("ru = 'Серия не может быть привязана к виду номенклатуры ""%ВидНоменклатуры%"", так как у этого вида номенклатуры установлен флаг ""Настройки серий берутся из другого вида номенклатуры"". Серия должна быть привязана к виду номенклатуры ""%ВладелецСерий%""."); + ТекстОшибки = СтрЗаменить(ТекстОшибки, "%ВидНоменклатуры%", ВидНоменклатуры); + ТекстОшибки = СтрЗаменить(ТекстОшибки, "%ВладелецСерий%", РеквизитыВидНоменклатуры.ВладелецСерий); + + ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстОшибки, , "ВидНоменклатуры", "Объект", Отказ); + КонецЕсли; + КонецЕсли; + КонецЕсли; + КонецЕсли; + +КонецПроцедуры +``` + +### 4.2. Создание обработки для исправления существующих данных + +**Рекомендуется создать обработку** для поиска и исправления серий с неправильной привязкой: + +1. Найти все серии, у которых `ВидНоменклатуры.НастройкиСерийБерутсяИзДругогоВидаНоменклатуры = Истина` +2. Проверить, что `ВидНоменклатуры` серии = `ВладелецСерий` вида номенклатуры +3. Если не соответствует - перепривязать серию к правильному виду + +### 4.3. Документирование логики + +**Рекомендуется:** +- Добавить комментарии в код, объясняющие логику привязки серий +- Создать инструкцию для разработчиков о правильном создании серий +- Добавить предупреждения в формы создания/редактирования серий + +--- + +## 5. Выводы + +1. ✅ **Отбор серий для документа ввода остатков**: Отбор идет по номенклатуре и характеристике из регистра `ДвиженияСерийТоваров`, без учета остатков, склада, помещения и назначения. + +2. ✅ **Логика привязки серий**: Серии привязываются к `ВладелецСерий`, который определяется из вида номенклатуры. Если установлен флаг `НастройкиСерийБерутсяИзДругогоВидаНоменклатуры = Истина`, то серии привязываются к виду, указанному в поле `ВладелецСерий`. + +3. ⚠️ **Нарушение логики данных**: Если у серии указан вид номенклатуры с флагом `НастройкиСерийБерутсяИзДругогоВидаНоменклатуры = Истина`, это является нарушением логики данных. + +4. ⚠️ **Последствия нарушения**: + - Серии не будут находиться в запросах поиска + - Неправильное применение настроек использования серий + - Проблемы с проверкой соответствия серии и номенклатуры + - Проблемы с интеграциями + - Проблемы с отображением в формах подбора + +5. ✅ **Рекомендации**: + - Добавить проверку целостности данных в модуль объекта `СерииНоменклатуры` + - Создать обработку для исправления существующих данных + - Документировать логику привязки серий + +--- + +## 6. Ссылки на код + +- Форма подбора серий: `crm3-dev/src/DataProcessors/ПодборСерийВДокументы/Forms/УказаниеСерииВСтрокеТоваров/Ext/Form/Module.bsl` +- Модуль обработки подбора серий: `crm3-dev/src/DataProcessors/ПодборСерийВДокументы/Ext/ManagerModule.bsl` +- Модуль объекта серий: `crm3-dev/src/Catalogs/СерииНоменклатуры/Ext/ObjectModule.bsl` +- Модуль менеджера видов номенклатуры: `crm3-dev/src/Catalogs/ВидыНоменклатуры/Ext/ManagerModule.bsl` +- Модуль объекта видов номенклатуры: `crm3-dev/src/Catalogs/ВидыНоменклатуры/Ext/ObjectModule.bsl` + +--- + +*Документ создан на основе анализа кода конфигурации crm3-dev* diff --git a/docs__Анализ_применения_КредитНота (v1.1).md b/docs__Анализ_применения_КредитНота (v1.1).md new file mode 100644 index 0000000..85887a7 --- /dev/null +++ b/docs__Анализ_применения_КредитНота (v1.1).md @@ -0,0 +1,336 @@ +--- +title: Анализ применения признака Кредит-нота (КредитНота) в исходной конфигурации +version: 1.1 +date_modified: 2025-12-27 +author: Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) +date_created: 2025-12-27 +show_metadata_block: true +show_index_link: true +--- + +# Анализ применения признака Кредит-нота (КредитНота) в исходной конфигурации + +## Версия анализа +Версия 1.1 от 27.12.2025 + +## Автор +Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) + +## Цель анализа +Определить, где и для чего применяется признак "Кредит-нота" (КредитНота) в основной исходной конфигурации `CRM3devLocal` и расширении `CRM3devLocal.Рана`. + +--- + +## 1. Основная конфигурация CRM3devLocal + +### 1.1. Документ ЗаказКлиента + +**Расположение:** `CRM3devLocal/src/Documents/ЗаказКлиента/ЗаказКлиента.mdo` + +**Реквизит:** +- **Имя:** `КредитНота` +- **Тип:** `Boolean` (Булево) +- **Синonym:** "Кредит нота" +- **Описание:** Признак того, что заказ клиента является кредит-нотой + +**Назначение:** +- Используется для маркировки заказов клиентов, которые являются кредит-нотами +- Позволяет идентифицировать заказы, по которым предоставляется кредит-нота (возврат средств или корректировка задолженности) + +**Использование в коде:** +- В обработке `КредитНотаЗаПериод` используется для определения заказов, связанных с кредит-нотами +- В запросах проверяется условие: `НЕ ЕСТЬNULL(РеализацияТоваровУслуг.ЗаказКлиента.КредитНота, ЛОЖЬ)` +- ⚠️ Примечание: Документ `rh_ОтражениеФактаПродаж` содержит код для работы с КредитНота, но сам документ не применяется + +--- + +### 1.2. Документ rh_ОтражениеФактаПродаж + +**Расположение:** `CRM3devLocal/src/Documents/rh_ОтражениеФактаПродаж/Forms/ФормаДокумента/Module.bsl` + +**Статус:** ⚠️ **НЕ ПРИМЕНЯЕТСЯ** - документ присутствует в конфигурации, но не используется в текущей версии + +**Примечание:** Несмотря на наличие кода, использующего признак КредитНота в этом документе, сам документ не применяется в рабочей конфигурации. + +**Код (для справки):** + +1. **В функции `ПолучитьЗапросДокументовЗаПериод_CRM3()`:** + - Используется дополнительное свойство "ЗаказКлиентаКредитНота" из плана видов характеристик "ДополнительныеРеквизитыИСведения" + - Проверяется наличие признака кредит-ноты через соединение с дополнительными реквизитами заказа клиента + - Условие фильтрации: `ЕСТЬNULL(ЗаказКлиентаДополнительныеРеквизиты.Значение, ЛОЖЬ) = ЛОЖЬ` + +2. **В функции `ПолучитьЗапросДокументовЗаПериод_CRM2()`:** + - Прямая проверка реквизита: `НЕ ЕСТЬNULL(РеализацияТоваровУслуг.ЗаказКлиента.КредитНота, ЛОЖЬ)` + - Используется для исключения документов реализации с кредит-нотами из списка документов для отражения факта продаж + +**Назначение (теоретическое):** +- Исключение документов реализации, связанных с кредит-нотами, из процесса отражения факта продаж +- Разделение учета обычных продаж и кредит-нот + +--- + +### 1.3. Отчет КредитНота + +**Расположение:** `CRM3devLocal/src/Reports/КредитНота/` + +**Описание:** +- Отчет для формирования кредит-нот +- Использует схему компоновки данных с полями: + - `КоличествоКредитНота` - количество по кредит-ноте + - `СуммаСНДСКредитНота` - сумма с НДС по кредит-ноте + +**Назначение:** +- Формирование печатных форм кредит-нот +- Аналитика по кредит-нотам + +--- + +### 1.4. Обработка КредитНотаЗаПериод + +**Расположение:** `CRM3devLocal/src/DataProcessors/КредитНотаЗаПериод/` + +**Функционал:** +- Формирование списка документов для кредит-нот за период +- Работа со списанием задолженности +- Определение заказов клиентов, связанных с кредит-нотами через списание задолженности +- Разделение счетов-фактур на две группы: + - **КредитНоты** - счета-фактуры по заказам, связанным с кредит-нотами + - **НеКредитНоты** - остальные счета-фактуры + +**Логика работы:** +1. Находит документы "Списание задолженности" за период +2. Определяет заказы клиентов, связанные с этими списаниями +3. Находит счета-фактуры выданные по этим заказам +4. Разделяет счета-фактуры на две группы для дальнейшей обработки + +**Назначение:** +- Автоматизация процесса формирования кредит-нот за период +- Группировка документов для печати кредит-нот + +--- + +### 1.5. Общая форма СписокДокументовПодКредитНоту + +**Расположение:** `CRM3devLocal/src/CommonForms/СписокДокументовПодКредитНоту/Module.bsl` + +**Функционал:** +- Форма для выбора документов реализации для формирования кредит-ноты +- Печать кредит-ноты через MS Word +- Формирование описания документов для кредит-ноты + +**Использование:** +- Выбор документов реализации за период (до 4 месяцев назад) +- Формирование печатной формы кредит-ноты с описанием выбранных документов +- Печать через `УправлениеПечатьюMSWordКлиент.ПечатьКредитНота()` + +--- + +### 1.6. Роль доступа КредитНота + +**Расположение:** `CRM3devLocal/src/Roles/КредитНота/` + +**Назначение:** +- Предоставляет права доступа на работу с кредит-нотами +- Включает права на отчет "КредитНота" + +--- + +### 1.7. Общий шаблон КредитНота + +**Расположение:** `CRM3devLocal/src/CommonTemplates/КредитНота/` + +**Назначение:** +- Шаблон для печати кредит-нот + +--- + +## 2. Расширение CRM3devLocal.Рана + +### 2.1. Документ р_КредитНота (Оформление кредит-ноты) + +**Расположение:** `CRM3devLocal.Рана/src/Documents/р_КредитНота/` + +**Описание:** +- Отдельный документ для оформления кредит-ноты +- Является расширением основной конфигурации + +**Реквизиты:** +- Организация +- Контрагент +- ДокументОснование (РеализацияТоваровУслуг) +- Партнер (Клиент) +- Соглашение +- Договор +- И другие реквизиты для оформления кредит-ноты + +**Регистры записей:** +- `р_ОформленныеКредитНоты` - регистр сведений для учета оформленных кредит-нот + +**Назначение:** +- Формализованное оформление кредит-нот как отдельного документа +- Учет оформленных кредит-нот в регистре сведений +- Интеграция с документом "Реализация товаров и услуг" через поле "ДокументОснование" + +--- + +### 2.2. Роль доступа "Оформление кредит-ноты (Рана)" + +**Расположение:** `CRM3devLocal.Рана/src/Roles/р_ОтчетыБрендМенеджера/Rights.rights` + +**Назначение:** +- Предоставляет права на документ `р_КредитНота` +- Входит в подсистему `rh_RhanaПодсистема` + +--- + +## 3. Связи и взаимодействия + +### 3.1. Связь ЗаказКлиента → РеализацияТоваровУслуг + +**Механизм:** +- В документе "Реализация товаров и услуг" есть ссылка на "ЗаказКлиента" +- Через эту ссылку доступен реквизит `ЗаказКлиента.КредитНота` +- Используется для фильтрации и идентификации реализаций, связанных с кредит-нотами + +### 3.2. Связь через дополнительные реквизиты + +**Механизм (для CRM3):** +- Используется план видов характеристик "ДополнительныеРеквизитыИСведения" +- Свойство "ЗаказКлиентаКредитНота" хранится в дополнительных реквизитах +- Позволяет гибко настраивать признак кредит-ноты + +### 3.3. Связь со списанием задолженности + +**Механизм:** +- Документ "Списание задолженности" может быть связан с заказами клиентов +- Обработка "КредитНотаЗаПериод" использует эту связь для определения заказов по кредит-нотам + +--- + +## 4. Назначение и бизнес-логика + +### 4.1. Основное назначение + +**Кредит-нота** - это документ, который: +1. Оформляется для корректировки задолженности перед клиентом +2. Может быть связан с возвратом товаров или корректировкой сумм +3. Используется для уменьшения задолженности клиента перед организацией + +### 4.2. Бизнес-процесс + +1. **Создание заказа клиента** с установленным признаком `КредитНота = Истина` +2. **Создание документа реализации** на основании заказа с кредит-нотой +3. **Оформление списания задолженности** (опционально) +4. **Формирование кредит-ноты** через: + - Отчет "КредитНота" + - Обработку "КредитНотаЗаПериод" + - Документ "р_КредитНота" (в расширении) +5. **Печать кредит-ноты** через общую форму "СписокДокументовПодКредитНоту" + +### 4.3. Исключение из учета + +- ⚠️ **Примечание:** Документ "rh_ОтражениеФактаПродаж" не применяется в текущей конфигурации +- Теоретически документы реализации с кредит-нотами должны исключаться из процесса "Отражение факта продаж" +- Это позволяет разделить учет обычных продаж и кредит-нот +- Кредит-ноты не учитываются в фактах продаж для планирования + +--- + +## 5. Печатные формы + +### 5.1. Макеты печати в документе РеализацияТоваровУслуг + +В документе "Реализация товаров и услуг" определены следующие макеты для кредит-нот: + +- `ПФ_DOC_КредитНота` - основной макет +- `ПФ_DOC_КредитНотаДилер` - для дилеров +- `ПФ_DOC_КредитНотаМедицина` - для медицинских представителей +- `ПФ_DOC_КредитНотаИглы2018` - специализированный макет +- `ПФ_DOC_КредитНотаДилерское2018` - для дилеров (версия 2018) +- `ПФ_DOC_КредитНотаФармДистКвартал` - для фармацевтических дистрибьюторов +- `ПФ_DOC_КредитНотаКурасен` - специализированный макет + +**Назначение:** +- Различные форматы печати кредит-нот в зависимости от типа клиента и бизнес-процесса +- Адаптация под специфику различных направлений бизнеса + +--- + +## 6. Выводы и рекомендации + +### 6.1. Основные выводы + +1. **Признак КредитНота** в документе "ЗаказКлиента" используется для маркировки заказов, связанных с кредит-нотами + +2. **Два подхода к работе с кредит-нотами:** + - **Основная конфигурация:** Использует признак в заказе и отчеты/обработки для формирования + - **Расширение Рана:** Добавляет отдельный документ "р_КредитНота" для формализованного оформления + +3. **Исключение из учета:** Документы с кредит-нотами исключаются из процесса "Отражение факта продаж" + +4. **Множество печатных форм:** Различные макеты для разных типов клиентов и бизнес-процессов + +### 6.2. Рекомендации + +1. При переносе функционала в целевую конфигурацию необходимо: + - Сохранить признак `КредитНота` в документе "ЗаказКлиента" + - Обеспечить логику исключения из "Отражения факта продаж" + - Перенести или адаптировать отчеты и обработки + +2. Рассмотреть возможность использования документа "р_КредитНота" из расширения как основного способа оформления кредит-нот + +3. Проверить совместимость печатных форм с целевой конфигурацией + +--- + +## 7. Сводная таблица применения реквизита КредитНота + +| Объект | Реквизит/Элемент | Тип | Использование | Контекст применения | Печатные формы | +|--------|------------------|-----|---------------|---------------------|----------------| +| Документ "ЗаказКлиента" | КредитНота | Boolean | Маркировка заказов как кредит-нот | Реквизит документа для указания признака кредит-ноты | ❌ Не используется | +| Документ "ЗаказКлиента" (форма) | КредитНота | Boolean | Отображение в форме документа | Элемент формы для работы пользователя (расширение Рана) | - | +| Документ "rh_ОтражениеФактаПродаж" | ЗаказКлиента.КредитНота | Boolean | Исключение из учета фактов продаж | ⚠️ НЕ ПРИМЕНЯЕТСЯ - фильтрация через `НЕ ЕСТЬNULL(РеализацияТоваровУслуг.ЗаказКлиента.КредитНота, ЛОЖЬ)` | - | +| Обработка "КредитНотаЗаПериод" | ЗаказКлиента.КредитНота | Boolean | Определение заказов по кредит-нотам | Определяет заказы, связанные со списанием задолженности, для формирования кредит-нот | - | +| Отчет "КредитНота" | - | - | Формирование данных по кредит-нотам | Использует связь через списание задолженности для определения заказов по кредит-нотам | ✅ Используется | +| Отчет "р_КонтрольВыполненияПланаЗакупок" | ЗаказКлиента.КредитНота | Boolean | Исключение заказов с кредит-нотами | Фильтрация: `ЗаказКлиента.КредитНота = ЛОЖЬ` и `ЗаказКлиентаТовары.Ссылка.КредитНота = ЛОЖЬ` | - | +| Обработка "р_ИмпортЗаказовКлиентов" | КредитНота | Boolean | Импорт признака кредит-ноты | Столбец в шаблоне импорта для указания признака при импорте заказов | - | +| Общая форма "СписокДокументовПодКредитНоту" | - | - | Печать кредит-нот | Формирование печатных форм кредит-нот через MS Word | ✅ Используется | +| Документ "РеализацияТоваровУслуг" | ЗаказКлиента.КредитНота | Boolean | Доступ через связь с заказом | Доступ к признаку через связь `РеализацияТоваровУслуг.ЗаказКлиента.КредитНота` | ✅ Используется (7 макетов) | + +**Условные обозначения:** +- ✅ Используется +- ❌ Не используется +- - Не применимо +- ⚠️ НЕ ПРИМЕНЯЕТСЯ - объект присутствует в конфигурации, но не используется в текущей версии + +**Примечания:** +1. Реквизит `КредитНота` определен в документе "ЗаказКлиента" как булево значение +2. В документе "rh_ОтражениеФактаПродаж" используется для исключения документов реализации с кредит-нотами из процесса отражения факта продаж, но сам документ не применяется +3. В обработке "КредитНотаЗаПериод" реквизит используется косвенно - через определение заказов, связанных со списанием задолженности +4. В отчете "р_КонтрольВыполненияПланаЗакупок" реквизит используется для исключения заказов с кредит-нотами из плана закупок +5. В документе "РеализацияТоваровУслуг" доступ к реквизиту осуществляется через связь с заказом клиента +6. Печатные формы кредит-нот определены в документе "РеализацияТоваровУслуг" (7 различных макетов) + +--- + +## 8. Список объектов, связанных с КредитНота + +### Основная конфигурация: +- `Document.ЗаказКлиента` - реквизит КредитНота +- `Document.rh_ОтражениеФактаПродаж` - ⚠️ НЕ ПРИМЕНЯЕТСЯ (содержит код для фильтрации, но документ не используется) +- `Report.КредитНота` - отчет для формирования кредит-нот +- `DataProcessor.КредитНотаЗаПериод` - обработка для формирования за период +- `CommonForm.СписокДокументовПодКредитНоту` - форма для печати +- `Role.КредитНота` - роль доступа +- `CommonTemplate.КредитНота` - шаблон печати +- `Document.РеализацияТоваровУслуг` - макеты печати (7 различных) + +### Расширение Рана: +- `Document.р_КредитНота` - документ оформления кредит-ноты +- `InformationRegister.р_ОформленныеКредитНоты` - регистр учета оформленных кредит-нот +- Роль доступа в подсистеме `rh_RhanaПодсистема` + +--- + +**Версия документа:** 1.1 от 27.12.2025 + diff --git a/docs__Анализ_применения_КредитНота.md b/docs__Анализ_применения_КредитНота.md new file mode 100644 index 0000000..cf9a466 --- /dev/null +++ b/docs__Анализ_применения_КредитНота.md @@ -0,0 +1,581 @@ +--- +title: Анализ применения признака Кредит-нота (КредитНота) в исходной конфигурации +version: 2.0 +date_modified: 2026-01-07 +author: Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) +date_created: 2025-12-27 +show_metadata_block: true +show_index_link: true +show_toc: true +--- + +# Анализ применения признака Кредит-нота (КредитНота) в исходной конфигурации + +## Версия анализа +Версия 2.0 от 07.01.2026 + +## Автор +Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) + +## Цель анализа +Определить, где и для чего применяется признак "Кредит-нота" (КредитНота) в основной исходной конфигурации `CRM3devLocal` и расширении `CRM3devLocal.Рана`. + +--- + +## 1. Основная конфигурация CRM3devLocal + +### 1.1. Документ ЗаказКлиента + +**Расположение:** `CRM3devLocal/src/Documents/ЗаказКлиента/ЗаказКлиента.mdo` + +**Реквизит:** +- **Имя:** `КредитНота` +- **Тип:** `Boolean` (Булево) +- **Синonym:** "Кредит нота" +- **Описание:** Признак того, что заказ клиента является кредит-нотой + +**Назначение:** +- Используется для маркировки заказов клиентов, которые являются кредит-нотами +- Позволяет идентифицировать заказы, по которым предоставляется кредит-нота (возврат средств или корректировка задолженности) + +**Использование в коде:** +- В обработке `КредитНотаЗаПериод` используется для определения заказов, связанных с кредит-нотами +- В запросах проверяется условие: `НЕ ЕСТЬNULL(РеализацияТоваровУслуг.ЗаказКлиента.КредитНота, ЛОЖЬ)` +- ⚠️ Примечание: Документ `rh_ОтражениеФактаПродаж` содержит код для работы с КредитНота, но сам документ не применяется + +--- + +### 1.2. Документ rh_ОтражениеФактаПродаж + +**Расположение:** `CRM3devLocal/src/Documents/rh_ОтражениеФактаПродаж/Forms/ФормаДокумента/Module.bsl` + +**Статус:** ⚠️ **НЕ ПРИМЕНЯЕТСЯ** - документ присутствует в конфигурации, но не используется в текущей версии + +**Примечание:** Несмотря на наличие кода, использующего признак КредитНота в этом документе, сам документ не применяется в рабочей конфигурации. + +**Код (для справки):** + +1. **В функции `ПолучитьЗапросДокументовЗаПериод_CRM3()`:** + - Используется дополнительное свойство "ЗаказКлиентаКредитНота" из плана видов характеристик "ДополнительныеРеквизитыИСведения" + - Проверяется наличие признака кредит-ноты через соединение с дополнительными реквизитами заказа клиента + - Условие фильтрации: `ЕСТЬNULL(ЗаказКлиентаДополнительныеРеквизиты.Значение, ЛОЖЬ) = ЛОЖЬ` + +2. **В функции `ПолучитьЗапросДокументовЗаПериод_CRM2()`:** + - Прямая проверка реквизита: `НЕ ЕСТЬNULL(РеализацияТоваровУслуг.ЗаказКлиента.КредитНота, ЛОЖЬ)` + - Используется для исключения документов реализации с кредит-нотами из списка документов для отражения факта продаж + +**Назначение (теоретическое):** +- Исключение документов реализации, связанных с кредит-нотами, из процесса отражения факта продаж +- Разделение учета обычных продаж и кредит-нот + +--- + +### 1.3. Отчет КредитНота + +**Расположение:** `CRM3devLocal/src/Reports/КредитНота/` + +**Описание:** +- Отчет для формирования кредит-нот +- Использует схему компоновки данных с полями: + - `КоличествоКредитНота` - количество по кредит-ноте + - `СуммаСНДСКредитНота` - сумма с НДС по кредит-ноте + +**Назначение:** +- Формирование печатных форм кредит-нот +- Аналитика по кредит-нотам + +--- + +### 1.4. Обработка КредитНотаЗаПериод + +**Расположение:** `CRM3devLocal/src/DataProcessors/КредитНотаЗаПериод/` + +**Функционал:** +- Формирование списка документов для кредит-нот за период +- Работа со списанием задолженности +- Определение заказов клиентов, связанных с кредит-нотами через списание задолженности +- Разделение счетов-фактур на две группы: + - **КредитНоты** - счета-фактуры по заказам, связанным с кредит-нотами + - **НеКредитНоты** - остальные счета-фактуры + +**Логика работы:** +1. Находит документы "Списание задолженности" за период +2. Определяет заказы клиентов, связанные с этими списаниями +3. Находит счета-фактуры выданные по этим заказам +4. Разделяет счета-фактуры на две группы для дальнейшей обработки + +**Назначение:** +- Автоматизация процесса формирования кредит-нот за период +- Группировка документов для печати кредит-нот + +--- + +### 1.5. Общая форма СписокДокументовПодКредитНоту + +**Расположение:** `CRM3devLocal/src/CommonForms/СписокДокументовПодКредитНоту/Module.bsl` + +**Функционал:** +- Форма для выбора документов реализации для формирования кредит-ноты +- Печать кредит-ноты через MS Word +- Формирование описания документов для кредит-ноты + +**Использование:** +- Выбор документов реализации за период (до 4 месяцев назад) +- Формирование печатной формы кредит-ноты с описанием выбранных документов +- Печать через `УправлениеПечатьюMSWordКлиент.ПечатьКредитНота()` + +--- + +### 1.6. Роль доступа КредитНота + +**Расположение:** `CRM3devLocal/src/Roles/КредитНота/` + +**Назначение:** +- Предоставляет права доступа на работу с кредит-нотами +- Включает права на отчет "КредитНота" + +--- + +### 1.7. Общий шаблон КредитНота + +**Расположение:** `CRM3devLocal/src/CommonTemplates/КредитНота/` + +**Назначение:** +- Шаблон для печати кредит-нот + +--- + +## 2. Расширение CRM3devLocal.Рана + +### 2.1. Документ р_КредитНота (Оформление кредит-ноты) + +**Расположение:** `CRM3devLocal.Рана/src/Documents/р_КредитНота/` + +**Описание:** +- Отдельный документ для оформления кредит-ноты +- Является расширением основной конфигурации + +**Реквизиты:** +- Организация +- Контрагент +- ДокументОснование (РеализацияТоваровУслуг) +- Партнер (Клиент) +- Соглашение +- Договор +- И другие реквизиты для оформления кредит-ноты + +**Регистры записей:** +- `р_ОформленныеКредитНоты` - регистр сведений для учета оформленных кредит-нот + +**Назначение:** +- Формализованное оформление кредит-нот как отдельного документа +- Учет оформленных кредит-нот в регистре сведений +- Интеграция с документом "Реализация товаров и услуг" через поле "ДокументОснование" + +--- + +### 2.2. Роль доступа "Оформление кредит-ноты (Рана)" + +**Расположение:** `CRM3devLocal.Рана/src/Roles/р_ОтчетыБрендМенеджера/Rights.rights` + +**Назначение:** +- Предоставляет права на документ `р_КредитНота` +- Входит в подсистему `rh_RhanaПодсистема` + +--- + +## 3. Связи и взаимодействия + +### 3.1. Связь ЗаказКлиента → РеализацияТоваровУслуг + +**Механизм:** +- В документе "Реализация товаров и услуг" есть ссылка на "ЗаказКлиента" +- Через эту ссылку доступен реквизит `ЗаказКлиента.КредитНота` +- Используется для фильтрации и идентификации реализаций, связанных с кредит-нотами + +### 3.2. Связь через дополнительные реквизиты + +**Механизм (для CRM3):** +- Используется план видов характеристик "ДополнительныеРеквизитыИСведения" +- Свойство "ЗаказКлиентаКредитНота" хранится в дополнительных реквизитах +- Позволяет гибко настраивать признак кредит-ноты + +### 3.3. Связь со списанием задолженности + +**Механизм:** +- Документ "Списание задолженности" может быть связан с заказами клиентов +- Обработка "КредитНотаЗаПериод" использует эту связь для определения заказов по кредит-нотам + +--- + +## 4. Назначение и бизнес-логика + +### 4.1. Основное назначение + +**Кредит-нота** - это документ, который: +1. Оформляется для корректировки задолженности перед клиентом +2. Может быть связан с возвратом товаров или корректировкой сумм +3. Используется для уменьшения задолженности клиента перед организацией + +### 4.2. Бизнес-процесс + +1. **Создание заказа клиента** с установленным признаком `КредитНота = Истина` +2. **Создание документа реализации** на основании заказа с кредит-нотой +3. **Оформление списания задолженности** (опционально) +4. **Формирование кредит-ноты** через: + - Отчет "КредитНота" + - Обработку "КредитНотаЗаПериод" + - Документ "р_КредитНота" (в расширении) +5. **Печать кредит-ноты** через общую форму "СписокДокументовПодКредитНоту" + +### 4.3. Исключение из учета + +- ⚠️ **Примечание:** Документ "rh_ОтражениеФактаПродаж" не применяется в текущей конфигурации +- Теоретически документы реализации с кредит-нотами должны исключаться из процесса "Отражение факта продаж" +- Это позволяет разделить учет обычных продаж и кредит-нот +- Кредит-ноты не учитываются в фактах продаж для планирования + +--- + +## 5. Печатные формы + +### 5.1. Макеты печати в документе РеализацияТоваровУслуг + +В документе "Реализация товаров и услуг" определены следующие макеты для кредит-нот: + +- `ПФ_DOC_КредитНота` - основной макет +- `ПФ_DOC_КредитНотаДилер` - для дилеров +- `ПФ_DOC_КредитНотаМедицина` - для медицинских представителей +- `ПФ_DOC_КредитНотаИглы2018` - специализированный макет +- `ПФ_DOC_КредитНотаДилерское2018` - для дилеров (версия 2018) +- `ПФ_DOC_КредитНотаФармДистКвартал` - для фармацевтических дистрибьюторов +- `ПФ_DOC_КредитНотаКурасен` - специализированный макет + +**Назначение:** +- Различные форматы печати кредит-нот в зависимости от типа клиента и бизнес-процесса +- Адаптация под специфику различных направлений бизнеса + +--- + +## 6. Выводы и рекомендации + +### 6.1. Основные выводы + +1. **Признак КредитНота** в документе "ЗаказКлиента" используется для маркировки заказов, связанных с кредит-нотами + +2. **Два подхода к работе с кредит-нотами:** + - **Основная конфигурация:** Использует признак в заказе и отчеты/обработки для формирования + - **Расширение Рана:** Добавляет отдельный документ "р_КредитНота" для формализованного оформления + +3. **Исключение из учета:** Документы с кредит-нотами исключаются из процесса "Отражение факта продаж" + +4. **Множество печатных форм:** Различные макеты для разных типов клиентов и бизнес-процессов + +### 6.2. Рекомендации + +1. При переносе функционала в целевую конфигурацию необходимо: + - Сохранить признак `КредитНота` в документе "ЗаказКлиента" + - Обеспечить логику исключения из "Отражения факта продаж" + - Перенести или адаптировать отчеты и обработки + +2. Рассмотреть возможность использования документа "р_КредитНота" из расширения как основного способа оформления кредит-нот + +3. Проверить совместимость печатных форм с целевой конфигурацией + +--- + +## 7. Сводная таблица применения реквизита КредитНота + +| Объект | Реквизит/Элемент | Тип | Использование | Контекст применения | Печатные формы | +|--------|------------------|-----|---------------|---------------------|----------------| +| Документ "ЗаказКлиента" | КредитНота | Boolean | Маркировка заказов как кредит-нот | Реквизит документа для указания признака кредит-ноты | ❌ Не используется | +| Документ "ЗаказКлиента" (форма) | КредитНота | Boolean | Отображение в форме документа | Элемент формы для работы пользователя (расширение Рана) | - | +| Документ "rh_ОтражениеФактаПродаж" | ЗаказКлиента.КредитНота | Boolean | Исключение из учета фактов продаж | ⚠️ НЕ ПРИМЕНЯЕТСЯ - фильтрация через `НЕ ЕСТЬNULL(РеализацияТоваровУслуг.ЗаказКлиента.КредитНота, ЛОЖЬ)` | - | +| Обработка "КредитНотаЗаПериод" | ЗаказКлиента.КредитНота | Boolean | Определение заказов по кредит-нотам | Определяет заказы, связанные со списанием задолженности, для формирования кредит-нот | - | +| Отчет "КредитНота" | - | - | Формирование данных по кредит-нотам | Использует связь через списание задолженности для определения заказов по кредит-нотам | ✅ Используется | +| Отчет "р_КонтрольВыполненияПланаЗакупок" | ЗаказКлиента.КредитНота | Boolean | Исключение заказов с кредит-нотами | Фильтрация: `ЗаказКлиента.КредитНота = ЛОЖЬ` и `ЗаказКлиентаТовары.Ссылка.КредитНота = ЛОЖЬ` | - | +| Обработка "р_ИмпортЗаказовКлиентов" | КредитНота | Boolean | Импорт признака кредит-ноты | Столбец в шаблоне импорта для указания признака при импорте заказов | - | +| Общая форма "СписокДокументовПодКредитНоту" | - | - | Печать кредит-нот | Формирование печатных форм кредит-нот через MS Word | ✅ Используется | +| Документ "РеализацияТоваровУслуг" | ЗаказКлиента.КредитНота | Boolean | Доступ через связь с заказом | Доступ к признаку через связь `РеализацияТоваровУслуг.ЗаказКлиента.КредитНота` | ✅ Используется (7 макетов) | + +**Условные обозначения:** +- ✅ Используется +- ❌ Не используется +- - Не применимо +- ⚠️ НЕ ПРИМЕНЯЕТСЯ - объект присутствует в конфигурации, но не используется в текущей версии + +**Примечания:** +1. Реквизит `КредитНота` определен в документе "ЗаказКлиента" как булево значение +2. В документе "rh_ОтражениеФактаПродаж" используется для исключения документов реализации с кредит-нотами из процесса отражения факта продаж, но сам документ не применяется +3. В обработке "КредитНотаЗаПериод" реквизит используется косвенно - через определение заказов, связанных со списанием задолженности +4. В отчете "р_КонтрольВыполненияПланаЗакупок" реквизит используется для исключения заказов с кредит-нотами из плана закупок +5. В документе "РеализацияТоваровУслуг" доступ к реквизиту осуществляется через связь с заказом клиента +6. Печатные формы кредит-нот определены в документе "РеализацияТоваровУслуг" (7 различных макетов) + +--- + +## 8. Список объектов, связанных с КредитНота + +### Основная конфигурация: +- `Document.ЗаказКлиента` - реквизит КредитНота +- `Document.rh_ОтражениеФактаПродаж` - ⚠️ НЕ ПРИМЕНЯЕТСЯ (содержит код для фильтрации, но документ не используется) +- `Report.КредитНота` - отчет для формирования кредит-нот +- `DataProcessor.КредитНотаЗаПериод` - обработка для формирования за период +- `CommonForm.СписокДокументовПодКредитНоту` - форма для печати +- `Role.КредитНота` - роль доступа +- `CommonTemplate.КредитНота` - шаблон печати +- `Document.РеализацияТоваровУслуг` - макеты печати (7 различных) + +### Расширение Рана: +- `Document.р_КредитНота` - документ оформления кредит-ноты +- `InformationRegister.р_ОформленныеКредитНоты` - регистр учета оформленных кредит-нот +- Роль доступа в подсистеме `rh_RhanaПодсистема` + +--- + +## 9. Выводы и рекомендации по переносу в новую базу (CRM326) + +### 9.1. Анализ текущего состояния в новой базе + +**Что уже реализовано:** +- ✅ Логика копирования признака "РК_КредитНота" из заказа клиента в реализацию через `УправлениеСвойствами` +- ✅ Механизм дополнительных реквизитов БСП настроен и работает +- ✅ Копирование происходит автоматически при создании реализации на основании заказа + +**Что отсутствует:** +- ❌ Реквизит "КредитНота" в документе "ЗаказКлиента" (заменен на дополнительное свойство) +- ❌ Фильтрация документов реализации по признаку кредит-ноты в обработке "КредитНотаЗаПериод" (требуется реализовать) +- ❌ Исключение документов с кредит-нотами из отчетов и обработок (требуется проверить и реализовать) +- ❌ Элементы форм для отображения признака кредит-ноты (требуется реализовать) +- ❌ Обработка импорта заказов с признаком кредит-ноты (не требуется на текущий момент) + +### 9.2. Приоритетный подход: использование типового механизма БСП + +**Принципы реализации:** +1. Использовать типовой механизм дополнительных реквизитов БСП (план видов характеристик "ДополнительныеРеквизитыИСведения") +2. Минимум доработок конфигурации +3. Минимум новых объектов в расширении +4. Использовать существующие допустимые типы дополнительных свойств + +### 9.3. Рекомендации по реализации + +#### 9.3.1. Использование дополнительного свойства "РК_КредитНота" + +**Тип значения:** `Булево` (Boolean) - уже входит в допустимые типы плана видов характеристик + +**Обоснование:** +- Признак кредит-ноты - это булево значение (Истина/Ложь) +- Для фильтрации и проверки достаточно булева типа +- Не требуется создавать дополнительные справочники или перечисления +- Минимум доработок конфигурации +- Тип `Булево` уже поддерживается механизмом БСП + +**Настройка в базе данных:** +1. Создать дополнительное свойство "РК_КредитНота" в плане видов характеристик "ДополнительныеРеквизитыИСведения" +2. Тип значения: `Булево` +3. Применить к объектам: `Документ.ЗаказКлиента`, `Документ.РеализацияТоваровУслуг` +4. Настроить видимость и доступность для соответствующих ролей +5. Значение по умолчанию: `Ложь` + +#### 9.3.2. Реализация фильтрации в обработке "КредитНотаЗаПериод" + +**Вариант 1: Фильтрация через табличную часть "ДополнительныеРеквизиты"** + +```bsl +// Пример запроса для исключения документов с кредит-нотами +ВЫБРАТЬ + РеализацияТоваровУслуг.Ссылка +ИЗ + Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг + ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг.ДополнительныеРеквизиты КАК ДопРекв + ПО РеализацияТоваровУслуг.Ссылка = ДопРекв.Ссылка + И ДопРекв.Свойство.Имя = "РК_КредитНота" + И ДопРекв.Значение = ИСТИНА +ГДЕ + ЕСТЬNULL(ДопРекв.Значение, ЛОЖЬ) = ЛОЖЬ + // Исключаем документы, у которых признак кредит-ноты = ИСТИНА +``` + +**Вариант 2: Фильтрация через программную проверку** + +```bsl +// После получения выборки документов +Для Каждого СтрокаРеализации Из ВыборкаРеализаций Цикл + ЗначениеКредитНоты = УправлениеСвойствами.ЗначениеСвойства( + СтрокаРеализации.Ссылка, + "РК_КредитНота" + ); + Если НЕ ЕСТЬNULL(ЗначениеКредитНоты, ЛОЖЬ) = ЛОЖЬ Тогда + // Документ без кредит-ноты - включаем в обработку + ТаблицаРезультатов.Добавить(); + КонецЕсли; +КонецЦикла; +``` + +**Вариант 3: Фильтрация через связь с заказом клиента** + +```bsl +// Если нужно проверять признак в заказе клиента +ВЫБРАТЬ + РеализацияТоваровУслуг.Ссылка +ИЗ + Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг + ЛЕВОЕ СОЕДИНЕНИЕ Документ.ЗаказКлиента.ДополнительныеРеквизиты КАК ЗаказДопРекв + ПО РеализацияТоваровУслуг.ЗаказКлиента = ЗаказДопРекв.Ссылка + И ЗаказДопРекв.Свойство.Имя = "РК_КредитНота" + И ЗаказДопРекв.Значение = ИСТИНА +ГДЕ + ЕСТЬNULL(ЗаказДопРекв.Значение, ЛОЖЬ) = ЛОЖЬ +``` + +#### 9.3.3. Исключение из отчетов и обработок + +**Отчет "р_КонтрольВыполненияПланаЗакупок":** +- Требуется адаптировать фильтрацию для исключения заказов с кредит-нотами +- Использовать дополнительное свойство "РК_КредитНота" вместо прямого реквизита + +**Обработка "КредитНотаЗаПериод":** +- Адаптировать запросы для работы с дополнительным свойством +- Обеспечить корректное определение заказов по кредит-нотам + +#### 9.3.4. Информационное отображение + +**Текущая реализация:** +- Логика копирования из заказа в реализацию реализована в `ObjectModule.bsl` + +**Требуется реализовать:** +- Добавить элемент формы (чекбокс) для отображения и редактирования признака кредит-ноты в документе "ЗаказКлиента" +- Добавить элемент формы (только для чтения) для отображения признака кредит-ноты в документе "РеализацияТоваровУслуг" +- При необходимости добавить отображение в документе "РасходныйОрдерНаТовары" (аналогично купону) + +### 9.4. Шаги реализации + +#### Шаг 1: Настройка дополнительного свойства в базе данных + +1. Открыть конфигуратор новой базы +2. Перейти в план видов характеристик "ДополнительныеРеквизитыИСведения" +3. Создать новый элемент с именем "РК_КредитНота" +4. Настроить параметры: + - **Имя:** `РК_КредитНота` + - **Тип значения:** `Булево` + - **Заголовок:** "Кредит-нота" + - **Применяется к:** `Документ.ЗаказКлиента`, `Документ.РеализацияТоваровУслуг` + - **Значение по умолчанию:** `Ложь` + - **Видимость:** Настроить для соответствующих ролей + - **Доступность:** Настроить для соответствующих ролей + +#### Шаг 2: Проверка существующей логики + +1. Проверить работу копирования признака кредит-ноты из заказа в реализацию +2. Убедиться, что копирование происходит корректно при создании реализации на основании заказа +3. Проверить, что значение по умолчанию устанавливается правильно + +#### Шаг 3: Добавление элементов форм + +1. **Документ "ЗаказКлиента":** + - Добавить элемент формы типа "ПолеФормы" с типом "Чекбокс" + - Привязать к дополнительному свойству через `УправлениеСвойствами` + - Настроить видимость и доступность + +2. **Документ "РеализацияТоваровУслуг":** + - Добавить элемент формы типа "ПолеФормы" с типом "Чекбокс" (только для чтения) + - Привязать к дополнительному свойству через `УправлениеСвойствами` + - Настроить видимость + +#### Шаг 4: Реализация фильтрации в обработке "КредитНотаЗаПериод" + +1. Адаптировать запросы в обработке для фильтрации по дополнительному свойству +2. Использовать табличную часть "ДополнительныеРеквизиты" или программную проверку +3. Протестировать корректность определения заказов по кредит-нотам + +**Важно:** Обработка "КредитНотаЗаПериод" обязательна к переносу, так как используется для формирования кредит-нот за период. + +#### Шаг 5: Адаптация отчетов + +1. Проверить отчет "р_КонтрольВыполненияПланаЗакупок" +2. Адаптировать фильтрацию для работы с дополнительным свойством +3. Протестировать корректность исключения заказов с кредит-нотами + +#### Шаг 6: Тестирование + +1. Проверить создание и заполнение признака кредит-ноты в документе "ЗаказКлиента" +2. Проверить копирование признака в документ "РеализацияТоваровУслуг" +3. Проверить отображение признака в формах документов +4. Проверить фильтрацию в обработке "КредитНотаЗаПериод" - убедиться, что заказы с кредит-нотами определяются корректно +5. Проверить исключение заказов с кредит-нотами из отчетов + +### 9.5. Что НЕ требуется переносить + +1. **Реквизит "КредитНота" в документах** - заменен на дополнительное свойство +2. **Документ "rh_ОтражениеФактаПродаж"** - не применяется в текущей конфигурации +3. **Обработка импорта заказов** - не требуется на текущий момент (можно реализовать позже) +4. **Печатные формы** - требуют отдельного анализа и переноса (не входит в текущую задачу) + +### 9.6. Преимущества выбранного подхода + +1. **Минимум доработок:** Используется существующий механизм БСП +2. **Гибкость:** Легко изменить логику работы с признаком +3. **Стандартность:** Соответствует типовым подходам БСП +4. **Простота поддержки:** Не требует создания новых объектов метаданных +5. **Расширяемость:** При необходимости можно добавить дополнительные свойства для кредит-нот + +### 9.7. Оценка трудозатрат + +| Этап | Описание | Время | +|------|----------|-------| +| Настройка дополнительного свойства | Создание и настройка в БД | 0.5-1 час | +| Проверка существующей логики | Тестирование копирования | 1-2 часа | +| Добавление элементов форм | Добавление чекбоксов в формы документов | 3-4 часа | +| Реализация фильтрации | Адаптация запросов в обработке | 3-5 часов | +| Адаптация отчетов | Изменение фильтрации в отчетах | 2-3 часа | +| Тестирование | Полное тестирование функциональности | 3-4 часа | +| **ИТОГО** | | **13-19 часов** | + +### 9.8. Риски и ограничения + +1. **Ограничение:** Фильтрация в запросах может быть менее эффективной, чем по прямому реквизиту + - **Решение:** Использовать индексы на табличной части "ДополнительныеРеквизиты" + +2. **Ограничение:** Нет прямой связи между признаком в заказе и реализацией через реквизит + - **Решение:** Использовать механизм копирования через `УправлениеСвойствами` (уже реализовано) + +3. **Ограничение:** Печатные формы требуют отдельной адаптации + - **Решение:** Адаптировать макеты печати для работы с дополнительным свойством (отдельная задача) + +4. **Ограничение:** Отчеты и обработки, использующие прямой доступ к реквизиту, требуют адаптации + - **Решение:** Поэтапная адаптация всех мест использования + +### 9.9. Назначение применения признака КредитНота + +**Основные сценарии использования:** + +1. **Маркировка заказов как кредит-нот:** + - Позволяет идентифицировать заказы, по которым предоставляется кредит-нота + - Используется для корректировки задолженности перед клиентом + +2. **Исключение из учета фактов продаж:** + - Документы реализации с кредит-нотами не должны учитываться в фактах продаж + - Разделение учета обычных продаж и кредит-нот + +3. **Формирование кредит-нот за период:** + - Обработка "КредитНотаЗаПериод" использует признак для определения заказов по кредит-нотам + - Группировка документов для печати кредит-нот + +4. **Исключение из планов закупок:** + - Заказы с кредит-нотами исключаются из планов закупок + - Обеспечивает корректность планирования + +5. **Печатные формы:** + - Различные макеты печати кредит-нот в зависимости от типа клиента + - Адаптация под специфику различных направлений бизнеса + +**Бизнес-логика:** +- Кредит-нота оформляется для корректировки задолженности перед клиентом +- Может быть связана с возвратом товаров или корректировкой сумм +- Используется для уменьшения задолженности клиента перед организацией +- Кредит-ноты не учитываются в фактах продаж для планирования + +--- + +**Версия документа:** 2.0 от 07.01.2026 + diff --git a/docs__Анализ_применения_реквизита_Купон (v1.0).md b/docs__Анализ_применения_реквизита_Купон (v1.0).md new file mode 100644 index 0000000..48d08cc --- /dev/null +++ b/docs__Анализ_применения_реквизита_Купон (v1.0).md @@ -0,0 +1,583 @@ +--- +title: Анализ применения реквизита Купон в исходной конфигурации включая расширение +version: 1.0 +date_modified: 2025-12-27 +author: Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) +date_created: 2025-12-27 +show_metadata_block: true +show_index_link: true +--- + +# Анализ применения реквизита Купон в исходной конфигурации включая расширение + +## Версия анализа +Версия 1.0 от 27.12.2025 + +## Автор +Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) + +## Цель анализа +Определить, где и для чего применяется реквизит "Купон" в основной исходной конфигурации `CRM3devLocal` и расширении `CRM3devLocal.Рана`. + +--- + +## 1. Справочник Купоны + +### 1.1. Основная конфигурация CRM3devLocal + +**Расположение:** `CRM3devLocal/src/Catalogs/Купоны/Купоны.mdo` + +**Характеристики справочника:** +- **Имя:** `Купоны` +- **Синоним:** "Купоны" +- **Иерархический:** Да (2 уровня) +- **Папки сверху:** Да +- **Длина кода:** 9 символов +- **Длина наименования:** 99 символов +- **Тип кода:** Строка +- **Автонумерация:** Включена +- **Проверка уникальности:** Включена +- **Ввод по строке:** По коду и наименованию +- **Создание при вводе:** Разрешено +- **Полнотекстовый поиск:** Используется +- **Режим блокировки данных:** Управляемый + +**Назначение:** +Справочник предназначен для хранения информации о купонах, используемых в системе. Купоны могут применяться в заказах клиентов для предоставления скидок или специальных предложений. + +--- + +### 1.2. Расширение CRM3devLocal.Рана + +**Расположение:** `CRM3devLocal.Рана/src/Catalogs/Купоны/Купоны.mdo` + +**Особенности:** +- Справочник наследуется из основной конфигурации (расширяется) +- Объект принадлежит основной конфигурации (`objectBelonging: Adopted`) +- Расширение проверено (`extendedConfigurationObject: Checked`) + +--- + +## 2. Реквизит Купон в документах + +### 2.1. Документ ЗаказКлиента + +#### 2.1.1. Основная конфигурация CRM3devLocal + +**Расположение:** `CRM3devLocal/src/Documents/ЗаказКлиента/ЗаказКлиента.mdo` + +**Характеристики реквизита:** +- **Имя:** `Купон` +- **Синоним:** "Купон" +- **Тип:** `CatalogRef.Купоны` (СправочникСсылка.Купоны) +- **UUID:** `0cff627d-b65a-4305-a44a-8aaf52751002` +- **Полнотекстовый поиск:** Используется +- **История данных:** Используется + +**Назначение:** +Реквизит предназначен для указания купона, применяемого к заказу клиента. Позволяет связать заказ с конкретным купоном из справочника. + +--- + +#### 2.1.2. Расширение CRM3devLocal.Рана + +**Расположение:** `CRM3devLocal.Рана/src/Documents/ЗаказКлиента/ЗаказКлиента.mdo` + +**Особенности расширения:** +- Реквизит наследуется из основной конфигурации +- Объект принадлежит основной конфигурации (`objectBelonging: Adopted`) +- Расширение проверено (`extendedConfigurationObject: Checked`) +- Тип реквизита подтвержден (`typeExtension: Checked`) + +**Использование в форме документа:** + +**Расположение:** `CRM3devLocal.Рана/src/Documents/ЗаказКлиента/Forms/ФормаДокумента/Form.form` + +**Элемент формы:** +- **Имя элемента:** `Купон` +- **Тип:** Поле ввода (`InputField`) +- **Видимость:** Да +- **Доступность:** Да +- **Отображение в заголовке:** Да +- **Отображение в подвале:** Да +- **Режим редактирования:** Ввод +- **Путь к данным:** `Объект.Купон` +- **Расширенная подсказка:** `КупонРасширеннаяПодсказка` +- **Контекстное меню:** `КупонКонтекстноеМеню` + +**Назначение:** +Элемент формы позволяет пользователю выбирать и указывать купон для заказа клиента непосредственно в форме документа. + +--- + +### 2.2. Документ РеализацияТоваровУслуг + +#### 2.2.1. Основная конфигурация CRM3devLocal + +**Расположение:** `CRM3devLocal/src/Documents/РеализацияТоваровУслуг/РеализацияТоваровУслуг.mdo` + +**Характеристики реквизита:** +- **Имя:** `Купон` +- **Синоним:** "Купон" +- **Тип:** `CatalogRef.Купоны` (СправочникСсылка.Купоны) +- **UUID:** `1ce768af-c451-41a1-932f-723cc784a8ea` +- **Полнотекстовый поиск:** Используется +- **История данных:** Используется + +**Назначение:** +Реквизит предназначен для указания купона, применяемого к документу реализации товаров и услуг. Позволяет связать реализацию с конкретным купоном из справочника. + +**Особенности:** +- Реквизит определен в основной конфигурации +- Используется в обработке "КредитНотаЗаПериод" для фильтрации документов (см. раздел 4.1) +- Купон может быть скопирован из заказа клиента при создании реализации на основании заказа + +**Использование в запросах:** +В обработке "КредитНотаЗаПериод" используется условие проверки пустого купона: + +**Файл:** `CRM3devLocal/src/DataProcessors/КредитНотаЗаПериод/Forms/Форма/Module.bsl` (строка 47) + +```bsl + | И СчетФактураВыданный.ДокументОснование.Купон = ЗНАЧЕНИЕ(Справочник.Купоны.ПустаяСсылка) +``` + +**Файл:** `CRM3devLocal/src/DataProcessors/КредитНотаЗаПериод/Forms/Форма/Module.bsl` (строка 67) + +```bsl + | И СчетФактураВыданный.ДокументОснование.Купон = ЗНАЧЕНИЕ(Справочник.Купоны.ПустаяСсылка) +``` + +**Назначение проверки:** +Обработка "КредитНотаЗаПериод" выбирает документы реализации, у которых купон **пустой** (равен пустой ссылке). Это означает, что документы реализации с указанным купоном **не включаются** в кредит-ноты за период. + +**Печатные формы:** +⚠️ **Примечание:** Проверка макетов печати документа "РеализацияТоваровУслуг" показала, что реквизит "Купон" **не используется** в печатных формах. Информация о купоне не выводится на печатные формы документа. + +--- + +## 3. Использование реквизита Купон в документе РасходныйОрдерНаТовары + +### 3.1. Реквизит формы р_КупонИзЗаказаКлиента + +**Расположение:** `CRM3devLocal.Рана/src/Documents/РасходныйОрдерНаТовары/Forms/ФормаДокумента/Form.form` + +**Характеристики:** +- **Имя:** `р_КупонИзЗаказаКлиента` +- **Заголовок:** "Купон использующийся в заказе клиента" +- **Тип:** `CatalogRef.Купоны` (СправочникСсылка.Купоны) +- **Видимость:** Да +- **Доступность:** Да +- **Путь к данным:** `р_КупонИзЗаказаКлиента` +- **Расширенная подсказка:** `р_КупонИзЗаказаКлиентаРасширеннаяПодсказка` +- **Контекстное меню:** `р_КупонИзЗаказаКлиентаКонтекстноеМеню` + +**Назначение:** +Реквизит формы предназначен для отображения купона, который используется в связанном заказе клиента. Позволяет видеть информацию о купоне при работе с расходным ордером на товары. + +--- + +### 3.2. Логика обновления информации о купоне + +**Расположение:** `CRM3devLocal.Рана/src/Documents/РасходныйОрдерНаТовары/Forms/ФормаДокумента/Module.bsl` + +**Процедура:** `р_ОбновитьИнформациюОбКупоне()` + +**Логика работы:** + +**Файл:** `CRM3devLocal.Рана/src/Documents/РасходныйОрдерНаТовары/Forms/ФормаДокумента/Module.bsl` (строки 114-127) + +```bsl +Процедура р_ОбновитьИнформациюОбКупоне() + Структура = Новый Структура(); + р_ПеременаяРаспоряжение = Объект.ТоварыПоРаспоряжениям[0].Распоряжение; + Для каждого Строка Из Объект.ТоварыПоРаспоряжениям Цикл + Если не Строка.Распоряжение = р_ПеременаяРаспоряжение Тогда + ОбщегоНазначения.СообщитьПользователю("Запрещенно в распоряжение добавлять больше одного заказа"); + Возврат; + КонецЕсли; + Если не ТипЗнч(Строка.Распоряжение) = Тип("ДокументСсылка.ЗаказКлиента") Тогда + Возврат; + КонецЕсли; + КонецЦикла; + р_КупонИзЗаказаКлиента = р_ПеременаяРаспоряжение.Купон; +КонецПроцедуры +``` + +**Описание логики:** +1. Процедура проверяет, что в документе "РасходныйОрдерНаТовары" указано только одно распоряжение (заказ клиента) +2. Проверяет, что распоряжение является документом "ЗаказКлиента" +3. Если условия выполнены, копирует значение реквизита `Купон` из заказа клиента в реквизит формы `р_КупонИзЗаказаКлиента` + +**Вызов процедуры:** +- При создании документа на сервере: `р_ПриСозданииНаСервереПосле()` (строка 93) +- При обновлении данных о доставке: `р_р_ОбновитьДанныеОДоставкиПосле()` (строка 100) +- При изменении распоряжения в табличной части: `р_ТоварыПоРаспоряжениямРаспоряжениеПриИзмененииПосле()` (строка 131) + +**Назначение:** +Обеспечивает автоматическое копирование информации о купоне из заказа клиента в расходный ордер на товары, что позволяет видеть, какой купон применяется к заказу при работе с документом отгрузки. + +--- + +## 4. Использование в обработке КредитНотаЗаПериод + +### 4.1. Фильтрация документов по купону + +**Расположение:** `CRM3devLocal/src/DataProcessors/КредитНотаЗаПериод/Forms/Форма/Module.bsl` + +**Использование реквизита "Купон":** + +В обработке "КредитНотаЗаПериод" реквизит "Купон" используется для фильтрации документов реализации при формировании кредит-нот за период. + +**Логика работы:** + +1. **Первый запрос (строки 40-56):** + - Выбирает документы реализации, у которых купон **пустой** (`Купон = ЗНАЧЕНИЕ(Справочник.Купоны.ПустаяСсылка)`) + - Документы должны быть связаны с заказами по кредит-ноте + - Результат помещается в таблицу `КредитНоты` + +2. **Второй запрос (строки 59-82):** + - Выбирает документы реализации, у которых купон **пустой** (`Купон = ЗНАЧЕНИЕ(Справочник.Купоны.ПустаяСсылка)`) + - Документы должны быть связаны с указанным партнером + - Документы должны содержать указанную номенклатуру + - Документы **не должны** быть связаны с заказами по кредит-ноте + - Результат помещается в таблицу `НеКредитНоты` + +**Назначение:** +Обработка формирует кредит-ноты за период, **исключая** документы реализации, у которых указан купон. Это означает, что документы реализации с купонами не должны включаться в кредит-ноты, так как купоны используются для других целей (например, для предоставления скидок). + +**Вывод:** +Реквизит "Купон" в документе "РеализацияТоваровУслуг" используется для **исключения** документов из процесса формирования кредит-нот. Документы с указанным купоном не участвуют в формировании кредит-нот за период. + +--- + +## 5. Использование в обработке импорта заказов клиентов + +### 5.1. Процедура сопоставления купона + +**Расположение:** `CRM3devLocal.Рана/src/DataProcessors/р_ИмпортЗаказовКлиентов/ManagerModule.bsl` + +**Процедура:** `СопоставитьКупон()` + +**Файл:** `CRM3devLocal.Рана/src/DataProcessors/р_ИмпортЗаказовКлиентов/ManagerModule.bsl` (строки 401-419) + +```bsl +Процедура СопоставитьКупон(ИсходноеЗначение, Приемник, Ячейка, ДанныеСтроки) Экспорт + + Если ПустаяСтрока(ИсходноеЗначение) Тогда + Приемник = Справочники.Купоны.ПустаяСсылка(); + Иначе + Приемник = Справочники.Купоны.НайтиПоНаименованию(ИсходноеЗначение); + Если Не ЗначениеЗаполнено(Приемник) Тогда + Приемник = Неопределено; + Возврат; + КонецЕсли; + КонецЕсли; + + Ячейка.СодержитЗначение = Истина; + МассивТипаПартнера = Новый Массив; + МассивТипаПартнера.Добавить(Тип("СправочникСсылка.Купоны")); + ОписаниеТипа = Новый ОписаниеТипов(МассивТипаПартнера); + Ячейка.ТипЗначения = ОписаниеТипа; + Ячейка.Значение = Приемник; + +КонецПроцедуры +``` + +**Логика работы:** +1. Если исходное значение пустое, устанавливает пустую ссылку на справочник "Купоны" +2. Если исходное значение заполнено, ищет элемент справочника "Купоны" по наименованию +3. Если элемент не найден, устанавливает `Неопределено` и завершает выполнение +4. Если элемент найден, устанавливает тип значения ячейки и значение для импорта + +**Назначение:** +Процедура используется при импорте заказов клиентов из внешних источников (например, из Excel) для сопоставления текстового значения купона с элементом справочника "Купоны". + +--- + +### 5.2. Использование в шаблоне импорта + +**Расположение:** `CRM3devLocal.Рана/src/DataProcessors/р_ИмпортЗаказовКлиентов/Templates/СтолбцыЗаказовКлиентов/Template.mxlx` + +**Информация о столбце:** +- **Название столбца:** "Купон" +- **Типы значений:** Null, Купоны +- **Процедура сопоставления:** `СопоставитьКупон` + +**Назначение:** +Столбец в шаблоне импорта позволяет указывать купон для заказа клиента при импорте данных из внешних файлов. + +--- + +## 6. Права доступа + +### 6.1. Роли доступа к справочнику Купоны + +**Роли в основной конфигурации CRM3devLocal:** + +1. **rh_ДобавлениеРедактированиеКупонов** + - **Расположение:** `CRM3devLocal/src/Roles/rh_ДобавлениеРедактированиеКупонов/` + - **Синоним:** "Добавление и редактирование купонов" + - **Права:** Доступ к справочнику `Catalog.Купоны` (чтение, добавление, изменение) + - **UUID:** `92d7bed5-6fda-420f-8761-dd74bef24577` + +2. **rh_ЧтениеКупонов** + - **Расположение:** `CRM3devLocal/src/Roles/rh_ЧтениеКупонов/` + - **Синоним:** "Чтение купонов" + - **Права:** Доступ к справочнику `Catalog.Купоны` (только чтение) + - **UUID:** `b75850b1-2ce5-4337-8bf9-c974f6f8a1a5` + +**Роли в расширении CRM3devLocal.Рана:** + +3. **НастройкаНСИ** + - **Расположение:** `CRM3devLocal.Рана/src/Roles/НастройкаНСИ/Rights.rights` + - **Права:** Доступ к справочнику `Catalog.Купоны` + +4. **ДобавлениеИзменениеОбщейБазовойНСИ** + - **Расположение:** `CRM3devLocal.Рана/src/Roles/ДобавлениеИзменениеОбщейБазовойНСИ/Rights.rights` + - **Права:** Доступ к справочнику `Catalog.Купоны` + +5. **ЧтениеБазовойНСИ** + - **Расположение:** `CRM3devLocal.Рана/src/Roles/ЧтениеБазовойНСИ/Rights.rights` + - **Права:** Доступ к справочнику `Catalog.Купоны` + +6. **ЧтениеНормативноСправочнойИнформации** + - **Расположение:** `CRM3devLocal.Рана/src/Roles/ЧтениеНормативноСправочнойИнформации/Rights.rights` + - **Права:** Доступ к справочнику `Catalog.Купоны` + +**Назначение:** +Роли обеспечивают разграничение доступа к справочнику "Купоны" в зависимости от функций пользователя в системе. + +--- + +## 7. Подсистемы + +### 7.1. Включение в подсистему rh_Продажи (основная конфигурация) + +**Расположение:** `CRM3devLocal/src/Subsystems/rh_Rhana/Subsystems/rh_Продажи/rh_Продажи.mdo` + +**Информация:** +- Справочник `Catalog.Купоны` включен в подсистему `rh_Продажи` +- Подсистема `rh_Продажи` входит в подсистему `rh_Rhana` +- В подсистему также включены роли: + - `Role.rh_ДобавлениеРедактированиеКупонов` + - `Role.rh_ЧтениеКупонов` + +**Назначение:** +Включение справочника в подсистему "Продажи" указывает на то, что купоны являются частью функционала продаж и используются в процессах продаж. + +### 7.2. Включение в подсистему rh_НСИ (расширение) + +**Расположение:** `CRM3devLocal.Рана/src/Subsystems/rh_Rhana/Subsystems/rh_НСИ/rh_НСИ.mdo` + +**Информация:** +- Справочник `Catalog.Купоны` включен в подсистему `rh_НСИ` +- Подсистема `rh_НСИ` входит в подсистему `rh_Rhana` + +**Назначение:** +Включение справочника в подсистему "Нормативно-справочная информация" (НСИ) указывает на то, что купоны являются частью справочной информации системы. + +--- + +## 8. Схема использования реквизита Купон + +### 8.1. Бизнес-процесс + +1. **Создание купона** + - Пользователь с соответствующими правами создает элемент в справочнике "Купоны" + - Купон может быть иерархическим (до 2 уровней) + +2. **Применение купона в заказе клиента** + - При создании или редактировании документа "ЗаказКлиента" пользователь может указать купон + - Реквизит `Купон` заполняется ссылкой на элемент справочника "Купоны" + - Информация о купоне отображается в форме документа + +3. **Импорт заказов с купонами** + - При импорте заказов клиентов из внешних файлов процедура `СопоставитьКупон()` находит соответствующий купон по наименованию + - Если купон не найден, значение остается пустым или неопределенным + +4. **Использование в расходном ордере** + - При создании документа "РасходныйОрдерНаТовары" на основании заказа клиента + - Процедура `р_ОбновитьИнформациюОбКупоне()` автоматически копирует купон из заказа клиента + - Информация о купоне отображается в форме расходного ордера + +--- + +### 8.2. Связи между объектами + +``` +Справочник "Купоны" + ↓ +Документ "ЗаказКлиента" (реквизит "Купон") + ↓ + ├─→ Документ "РеализацияТоваровУслуг" (реквизит "Купон") + │ └─→ Используется в обработке "КредитНотаЗаПериод" для исключения из кредит-нот + │ + └─→ Документ "РасходныйОрдерНаТовары" (реквизит формы "р_КупонИзЗаказаКлиента") +``` + +**Описание связей:** +- Справочник "Купоны" является источником данных для реквизита "Купон" в документе "ЗаказКлиента" +- Реквизит "Купон" в документе "ЗаказКлиента" может быть скопирован в документ "РеализацияТоваровУслуг" при создании реализации на основании заказа +- Реквизит "Купон" в документе "РеализацияТоваровУслуг" используется в обработке "КредитНотаЗаПериод" для исключения документов с купонами из кредит-нот +- Реквизит "Купон" в документе "ЗаказКлиента" является источником данных для реквизита формы "р_КупонИзЗаказаКлиента" в документе "РасходныйОрдерНаТовары" +- Связь между заказом клиента и расходным ордером осуществляется через табличную часть "ТоварыПоРаспоряжениям" + +--- + +## 9. Особенности реализации + +### 9.1. Расширение реквизита + +Реквизит "Купон" определен в основной конфигурации `CRM3devLocal` и расширяется в расширении `CRM3devLocal.Рана`. Это означает: +- Реквизит доступен в обеих конфигурациях +- Расширение не изменяет структуру реквизита, а только подтверждает его использование +- Форма документа в расширении содержит элемент для работы с реквизитом + +### 9.2. Автоматическое копирование + +В документе "РасходныйОрдерНаТовары" реализована автоматическая логика копирования купона из заказа клиента: +- Копирование происходит при создании документа +- Копирование происходит при изменении распоряжения +- Копирование происходит при обновлении данных о доставке +- Логика проверяет, что в документе указан только один заказ клиента + +### 9.3. Импорт данных + +### 9.4. Использование в обработке КредитНотаЗаПериод + +**Особенность:** +Реквизит "Купон" в документе "РеализацияТоваровУслуг" используется для **исключения** документов из процесса формирования кредит-нот. Документы реализации с указанным купоном не включаются в кредит-ноты за период, что позволяет разделить учет обычных продаж и продаж с купонами. + +**Логика:** +- Если в документе реализации указан купон, документ не участвует в формировании кредит-нот +- Это означает, что купоны используются для других целей (например, для предоставления скидок), а не для кредит-нот + +При импорте заказов клиентов реализована процедура сопоставления купонов: +- Поиск купона осуществляется по наименованию +- Если купон не найден, значение остается пустым +- Процедура экспортируется для использования в шаблонах импорта + +--- + +## 10. Выводы + +### 10.1. Основные выводы + +1. **Справочник "Купоны"** определен в основной конфигурации `CRM3devLocal` и используется в расширении `CRM3devLocal.Рана` + +2. **Реквизит "Купон"** в документе "ЗаказКлиента": + - Определен в основной конфигурации + - Расширяется в расширении + - Имеет элемент формы для работы пользователя + - Используется для указания купона, применяемого к заказу + +3. **Использование в документе "РеализацияТоваровУслуг"**: + - Реквизит "Купон" определен в основной конфигурации + - Используется в обработке "КредитНотаЗаПериод" для исключения документов с купонами из кредит-нот + - Документы реализации с указанным купоном не участвуют в формировании кредит-нот за период + - ⚠️ Реквизит **не используется** в печатных формах документа + +4. **Использование в документе "РасходныйОрдерНаТовары"**: + - Реализована автоматическая логика копирования купона из заказа клиента + - Информация о купоне отображается в форме документа + - Логика проверяет корректность данных перед копированием + +5. **Использование в обработке "КредитНотаЗаПериод"**: + - Реквизит "Купон" используется для фильтрации документов реализации + - Документы с указанным купоном исключаются из процесса формирования кредит-нот + - Это позволяет разделить учет обычных продаж и продаж с купонами + +6. **Импорт заказов клиентов**: + - Реализована процедура сопоставления купонов при импорте + - Процедура ищет купон по наименованию + - Обрабатывает случаи отсутствия купона + +7. **Права доступа**: + - Настроены роли для работы со справочником "Купоны" в основной конфигурации и расширении + - Роли разграничивают права на чтение и редактирование + - Роли включены в подсистему "rh_Продажи" + +8. **Подсистемы**: + - Справочник "Купоны" включен в подсистему "rh_Продажи" в основной конфигурации + - Справочник "Купоны" включен в подсистему "rh_НСИ" в расширении + - Это указывает на его принадлежность к функционалу продаж и нормативно-справочной информации + +### 10.2. Рекомендации + +1. **Документирование бизнес-логики купонов:** + - Рекомендуется документировать правила применения купонов + - Указать, влияет ли купон на расчет скидок или другие расчеты + +2. **Проверка использования в расчетах:** + - Необходимо проверить, используется ли реквизит "Купон" в расчетах скидок или других расчетах + - Если используется, необходимо документировать логику расчетов + +3. **Валидация данных:** + - Рекомендуется добавить проверку корректности купона при заполнении заказа + - Проверить актуальность купона (срок действия, статус и т.д.) + +4. **Печатные формы:** + - ⚠️ Рекомендуется проверить необходимость вывода информации о купоне в печатные формы документов + - В текущей конфигурации реквизит "Купон" не используется в печатных формах + - При необходимости добавить информацию о купоне в макеты печати + +5. **Отчетность:** + - Рекомендуется проверить наличие отчетов, использующих информацию о купонах + - При необходимости создать отчеты для анализа использования купонов + +6. **Логика копирования купона:** + - Рекомендуется проверить, копируется ли реквизит "Купон" из заказа клиента в реализацию при создании реализации на основании заказа + - Если копирование не реализовано, рассмотреть необходимость добавления такой логики + +--- + +## 11. Приложения + +### 11.1. Список файлов, связанных с реквизитом Купон + +**Основная конфигурация CRM3devLocal:** +- `CRM3devLocal/src/Catalogs/Купоны/Купоны.mdo` - Справочник "Купоны" +- `CRM3devLocal/src/Documents/ЗаказКлиента/ЗаказКлиента.mdo` - Реквизит "Купон" в документе +- `CRM3devLocal/src/Documents/РеализацияТоваровУслуг/РеализацияТоваровУслуг.mdo` - Реквизит "Купон" в документе +- `CRM3devLocal/src/DataProcessors/КредитНотаЗаПериод/Forms/Форма/Module.bsl` - Использование купона в запросах +- `CRM3devLocal/src/Roles/rh_ДобавлениеРедактированиеКупонов/` - Роль доступа +- `CRM3devLocal/src/Roles/rh_ЧтениеКупонов/` - Роль доступа +- `CRM3devLocal/src/Subsystems/rh_Rhana/Subsystems/rh_Продажи/rh_Продажи.mdo` - Подсистема + +**Расширение CRM3devLocal.Рана:** +- `CRM3devLocal.Рана/src/Catalogs/Купоны/Купоны.mdo` - Расширение справочника +- `CRM3devLocal.Рана/src/Documents/ЗаказКлиента/ЗаказКлиента.mdo` - Расширение реквизита +- `CRM3devLocal.Рана/src/Documents/ЗаказКлиента/Forms/ФормаДокумента/Form.form` - Элемент формы +- `CRM3devLocal.Рана/src/Documents/РасходныйОрдерНаТовары/Forms/ФормаДокумента/Form.form` - Реквизит формы +- `CRM3devLocal.Рана/src/Documents/РасходныйОрдерНаТовары/Forms/ФормаДокумента/Module.bsl` - Логика обновления +- `CRM3devLocal.Рана/src/DataProcessors/р_ИмпортЗаказовКлиентов/ManagerModule.bsl` - Процедура сопоставления +- `CRM3devLocal.Рана/src/DataProcessors/р_ИмпортЗаказовКлиентов/Templates/СтолбцыЗаказовКлиентов/Template.mxlx` - Шаблон импорта +- `CRM3devLocal.Рана/src/Subsystems/rh_Rhana/Subsystems/rh_НСИ/rh_НСИ.mdo` - Подсистема +- `CRM3devLocal.Рана/src/Roles/НастройкаНСИ/Rights.rights` - Права доступа +- `CRM3devLocal.Рана/src/Roles/ДобавлениеИзменениеОбщейБазовойНСИ/Rights.rights` - Права доступа +- `CRM3devLocal.Рана/src/Roles/ЧтениеБазовойНСИ/Rights.rights` - Права доступа +- `CRM3devLocal.Рана/src/Roles/ЧтениеНормативноСправочнойИнформации/Rights.rights` - Права доступа +- `CRM3devLocal.Рана/src/Subsystems/rh_Rhana/Subsystems/rh_НСИ/rh_НСИ.mdo` - Подсистема + +--- + +### 11.2. Сводная таблица использования реквизита Купон + +| Объект | Реквизит/Элемент | Тип | Использование | Печатные формы | +|--------|------------------|-----|----------------|----------------| +| Справочник "Купоны" | - | Справочник | Источник данных | - | +| Документ "ЗаказКлиента" | Купон | CatalogRef.Купоны | Указание купона в заказе | ❌ Не используется | +| Документ "РеализацияТоваровУслуг" | Купон | CatalogRef.Купоны | Исключение из кредит-нот | ❌ Не используется | +| Документ "РасходныйОрдерНаТовары" | р_КупонИзЗаказаКлиента | CatalogRef.Купоны | Отображение купона из заказа | ❌ Не используется | +| Обработка "КредитНотаЗаПериод" | - | - | Фильтрация по пустому купону | - | +| Обработка "р_ИмпортЗаказовКлиентов" | - | - | Сопоставление купона при импорте | - | + +**Условные обозначения:** +- ✅ Используется +- ❌ Не используется +- - Не применимо + +--- + +**Конец документа** + diff --git a/docs__Анализ_применения_реквизита_Купон.md b/docs__Анализ_применения_реквизита_Купон.md new file mode 100644 index 0000000..eb7b441 --- /dev/null +++ b/docs__Анализ_применения_реквизита_Купон.md @@ -0,0 +1,745 @@ +--- +title: Анализ применения реквизита Купон в исходной конфигурации включая расширение +version: 2.0 +date_modified: 2026-01-07 +author: Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) +date_created: 2025-12-27 +show_metadata_block: true +show_index_link: true +show_toc: true +--- + +# Анализ применения реквизита Купон в исходной конфигурации включая расширение + +## Версия анализа +Версия 2.0 от 07.01.2026 + +## Автор +Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) + +## Цель анализа +Определить, где и для чего применяется реквизит "Купон" в основной исходной конфигурации `CRM3devLocal` и расширении `CRM3devLocal.Рана`. + +--- + +## 1. Справочник Купоны + +### 1.1. Основная конфигурация CRM3devLocal + +**Расположение:** `CRM3devLocal/src/Catalogs/Купоны/Купоны.mdo` + +**Характеристики справочника:** +- **Имя:** `Купоны` +- **Синоним:** "Купоны" +- **Иерархический:** Да (2 уровня) +- **Папки сверху:** Да +- **Длина кода:** 9 символов +- **Длина наименования:** 99 символов +- **Тип кода:** Строка +- **Автонумерация:** Включена +- **Проверка уникальности:** Включена +- **Ввод по строке:** По коду и наименованию +- **Создание при вводе:** Разрешено +- **Полнотекстовый поиск:** Используется +- **Режим блокировки данных:** Управляемый + +**Назначение:** +Справочник предназначен для хранения информации о купонах, используемых в системе. Купоны могут применяться в заказах клиентов для предоставления скидок или специальных предложений. + +--- + +### 1.2. Расширение CRM3devLocal.Рана + +**Расположение:** `CRM3devLocal.Рана/src/Catalogs/Купоны/Купоны.mdo` + +**Особенности:** +- Справочник наследуется из основной конфигурации (расширяется) +- Объект принадлежит основной конфигурации (`objectBelonging: Adopted`) +- Расширение проверено (`extendedConfigurationObject: Checked`) + +--- + +## 2. Реквизит Купон в документах + +### 2.1. Документ ЗаказКлиента + +#### 2.1.1. Основная конфигурация CRM3devLocal + +**Расположение:** `CRM3devLocal/src/Documents/ЗаказКлиента/ЗаказКлиента.mdo` + +**Характеристики реквизита:** +- **Имя:** `Купон` +- **Синоним:** "Купон" +- **Тип:** `CatalogRef.Купоны` (СправочникСсылка.Купоны) +- **UUID:** `0cff627d-b65a-4305-a44a-8aaf52751002` +- **Полнотекстовый поиск:** Используется +- **История данных:** Используется + +**Назначение:** +Реквизит предназначен для указания купона, применяемого к заказу клиента. Позволяет связать заказ с конкретным купоном из справочника. + +--- + +#### 2.1.2. Расширение CRM3devLocal.Рана + +**Расположение:** `CRM3devLocal.Рана/src/Documents/ЗаказКлиента/ЗаказКлиента.mdo` + +**Особенности расширения:** +- Реквизит наследуется из основной конфигурации +- Объект принадлежит основной конфигурации (`objectBelonging: Adopted`) +- Расширение проверено (`extendedConfigurationObject: Checked`) +- Тип реквизита подтвержден (`typeExtension: Checked`) + +**Использование в форме документа:** + +**Расположение:** `CRM3devLocal.Рана/src/Documents/ЗаказКлиента/Forms/ФормаДокумента/Form.form` + +**Элемент формы:** +- **Имя элемента:** `Купон` +- **Тип:** Поле ввода (`InputField`) +- **Видимость:** Да +- **Доступность:** Да +- **Отображение в заголовке:** Да +- **Отображение в подвале:** Да +- **Режим редактирования:** Ввод +- **Путь к данным:** `Объект.Купон` +- **Расширенная подсказка:** `КупонРасширеннаяПодсказка` +- **Контекстное меню:** `КупонКонтекстноеМеню` + +**Назначение:** +Элемент формы позволяет пользователю выбирать и указывать купон для заказа клиента непосредственно в форме документа. + +--- + +### 2.2. Документ РеализацияТоваровУслуг + +#### 2.2.1. Основная конфигурация CRM3devLocal + +**Расположение:** `CRM3devLocal/src/Documents/РеализацияТоваровУслуг/РеализацияТоваровУслуг.mdo` + +**Характеристики реквизита:** +- **Имя:** `Купон` +- **Синоним:** "Купон" +- **Тип:** `CatalogRef.Купоны` (СправочникСсылка.Купоны) +- **UUID:** `1ce768af-c451-41a1-932f-723cc784a8ea` +- **Полнотекстовый поиск:** Используется +- **История данных:** Используется + +**Назначение:** +Реквизит предназначен для указания купона, применяемого к документу реализации товаров и услуг. Позволяет связать реализацию с конкретным купоном из справочника. + +**Особенности:** +- Реквизит определен в основной конфигурации +- Используется в обработке "КредитНотаЗаПериод" для фильтрации документов (см. раздел 4.1) +- Купон может быть скопирован из заказа клиента при создании реализации на основании заказа + +**Использование в запросах:** +В обработке "КредитНотаЗаПериод" используется условие проверки пустого купона: + +**Файл:** `CRM3devLocal/src/DataProcessors/КредитНотаЗаПериод/Forms/Форма/Module.bsl` (строка 47) + +```bsl + | И СчетФактураВыданный.ДокументОснование.Купон = ЗНАЧЕНИЕ(Справочник.Купоны.ПустаяСсылка) +``` + +**Файл:** `CRM3devLocal/src/DataProcessors/КредитНотаЗаПериод/Forms/Форма/Module.bsl` (строка 67) + +```bsl + | И СчетФактураВыданный.ДокументОснование.Купон = ЗНАЧЕНИЕ(Справочник.Купоны.ПустаяСсылка) +``` + +**Назначение проверки:** +Обработка "КредитНотаЗаПериод" выбирает документы реализации, у которых купон **пустой** (равен пустой ссылке). Это означает, что документы реализации с указанным купоном **не включаются** в кредит-ноты за период. + +**Печатные формы:** +⚠️ **Примечание:** Проверка макетов печати документа "РеализацияТоваровУслуг" показала, что реквизит "Купон" **не используется** в печатных формах. Информация о купоне не выводится на печатные формы документа. + +--- + +## 3. Использование реквизита Купон в документе РасходныйОрдерНаТовары + +### 3.1. Реквизит формы р_КупонИзЗаказаКлиента + +**Расположение:** `CRM3devLocal.Рана/src/Documents/РасходныйОрдерНаТовары/Forms/ФормаДокумента/Form.form` + +**Характеристики:** +- **Имя:** `р_КупонИзЗаказаКлиента` +- **Заголовок:** "Купон использующийся в заказе клиента" +- **Тип:** `CatalogRef.Купоны` (СправочникСсылка.Купоны) +- **Видимость:** Да +- **Доступность:** Да +- **Путь к данным:** `р_КупонИзЗаказаКлиента` +- **Расширенная подсказка:** `р_КупонИзЗаказаКлиентаРасширеннаяПодсказка` +- **Контекстное меню:** `р_КупонИзЗаказаКлиентаКонтекстноеМеню` + +**Назначение:** +Реквизит формы предназначен для отображения купона, который используется в связанном заказе клиента. Позволяет видеть информацию о купоне при работе с расходным ордером на товары. + +--- + +### 3.2. Логика обновления информации о купоне + +**Расположение:** `CRM3devLocal.Рана/src/Documents/РасходныйОрдерНаТовары/Forms/ФормаДокумента/Module.bsl` + +**Процедура:** `р_ОбновитьИнформациюОбКупоне()` + +**Логика работы:** + +**Файл:** `CRM3devLocal.Рана/src/Documents/РасходныйОрдерНаТовары/Forms/ФормаДокумента/Module.bsl` (строки 114-127) + +```bsl +Процедура р_ОбновитьИнформациюОбКупоне() + Структура = Новый Структура(); + р_ПеременаяРаспоряжение = Объект.ТоварыПоРаспоряжениям[0].Распоряжение; + Для каждого Строка Из Объект.ТоварыПоРаспоряжениям Цикл + Если не Строка.Распоряжение = р_ПеременаяРаспоряжение Тогда + ОбщегоНазначения.СообщитьПользователю("Запрещенно в распоряжение добавлять больше одного заказа"); + Возврат; + КонецЕсли; + Если не ТипЗнч(Строка.Распоряжение) = Тип("ДокументСсылка.ЗаказКлиента") Тогда + Возврат; + КонецЕсли; + КонецЦикла; + р_КупонИзЗаказаКлиента = р_ПеременаяРаспоряжение.Купон; +КонецПроцедуры +``` + +**Описание логики:** +1. Процедура проверяет, что в документе "РасходныйОрдерНаТовары" указано только одно распоряжение (заказ клиента) +2. Проверяет, что распоряжение является документом "ЗаказКлиента" +3. Если условия выполнены, копирует значение реквизита `Купон` из заказа клиента в реквизит формы `р_КупонИзЗаказаКлиента` + +**Вызов процедуры:** +- При создании документа на сервере: `р_ПриСозданииНаСервереПосле()` (строка 93) +- При обновлении данных о доставке: `р_р_ОбновитьДанныеОДоставкиПосле()` (строка 100) +- При изменении распоряжения в табличной части: `р_ТоварыПоРаспоряжениямРаспоряжениеПриИзмененииПосле()` (строка 131) + +**Назначение:** +Обеспечивает автоматическое копирование информации о купоне из заказа клиента в расходный ордер на товары, что позволяет видеть, какой купон применяется к заказу при работе с документом отгрузки. + +--- + +## 4. Использование в обработке КредитНотаЗаПериод + +### 4.1. Фильтрация документов по купону + +**Расположение:** `CRM3devLocal/src/DataProcessors/КредитНотаЗаПериод/Forms/Форма/Module.bsl` + +**Использование реквизита "Купон":** + +В обработке "КредитНотаЗаПериод" реквизит "Купон" используется для фильтрации документов реализации при формировании кредит-нот за период. + +**Логика работы:** + +1. **Первый запрос (строки 40-56):** + - Выбирает документы реализации, у которых купон **пустой** (`Купон = ЗНАЧЕНИЕ(Справочник.Купоны.ПустаяСсылка)`) + - Документы должны быть связаны с заказами по кредит-ноте + - Результат помещается в таблицу `КредитНоты` + +2. **Второй запрос (строки 59-82):** + - Выбирает документы реализации, у которых купон **пустой** (`Купон = ЗНАЧЕНИЕ(Справочник.Купоны.ПустаяСсылка)`) + - Документы должны быть связаны с указанным партнером + - Документы должны содержать указанную номенклатуру + - Документы **не должны** быть связаны с заказами по кредит-ноте + - Результат помещается в таблицу `НеКредитНоты` + +**Назначение:** +Обработка формирует кредит-ноты за период, **исключая** документы реализации, у которых указан купон. Это означает, что документы реализации с купонами не должны включаться в кредит-ноты, так как купоны используются для других целей (например, для предоставления скидок). + +**Вывод:** +Реквизит "Купон" в документе "РеализацияТоваровУслуг" используется для **исключения** документов из процесса формирования кредит-нот. Документы с указанным купоном не участвуют в формировании кредит-нот за период. + +--- + +## 5. Использование в обработке импорта заказов клиентов + +### 5.1. Процедура сопоставления купона + +**Расположение:** `CRM3devLocal.Рана/src/DataProcessors/р_ИмпортЗаказовКлиентов/ManagerModule.bsl` + +**Процедура:** `СопоставитьКупон()` + +**Файл:** `CRM3devLocal.Рана/src/DataProcessors/р_ИмпортЗаказовКлиентов/ManagerModule.bsl` (строки 401-419) + +```bsl +Процедура СопоставитьКупон(ИсходноеЗначение, Приемник, Ячейка, ДанныеСтроки) Экспорт + + Если ПустаяСтрока(ИсходноеЗначение) Тогда + Приемник = Справочники.Купоны.ПустаяСсылка(); + Иначе + Приемник = Справочники.Купоны.НайтиПоНаименованию(ИсходноеЗначение); + Если Не ЗначениеЗаполнено(Приемник) Тогда + Приемник = Неопределено; + Возврат; + КонецЕсли; + КонецЕсли; + + Ячейка.СодержитЗначение = Истина; + МассивТипаПартнера = Новый Массив; + МассивТипаПартнера.Добавить(Тип("СправочникСсылка.Купоны")); + ОписаниеТипа = Новый ОписаниеТипов(МассивТипаПартнера); + Ячейка.ТипЗначения = ОписаниеТипа; + Ячейка.Значение = Приемник; + +КонецПроцедуры +``` + +**Логика работы:** +1. Если исходное значение пустое, устанавливает пустую ссылку на справочник "Купоны" +2. Если исходное значение заполнено, ищет элемент справочника "Купоны" по наименованию +3. Если элемент не найден, устанавливает `Неопределено` и завершает выполнение +4. Если элемент найден, устанавливает тип значения ячейки и значение для импорта + +**Назначение:** +Процедура используется при импорте заказов клиентов из внешних источников (например, из Excel) для сопоставления текстового значения купона с элементом справочника "Купоны". + +--- + +### 5.2. Использование в шаблоне импорта + +**Расположение:** `CRM3devLocal.Рана/src/DataProcessors/р_ИмпортЗаказовКлиентов/Templates/СтолбцыЗаказовКлиентов/Template.mxlx` + +**Информация о столбце:** +- **Название столбца:** "Купон" +- **Типы значений:** Null, Купоны +- **Процедура сопоставления:** `СопоставитьКупон` + +**Назначение:** +Столбец в шаблоне импорта позволяет указывать купон для заказа клиента при импорте данных из внешних файлов. + +--- + +## 6. Права доступа + +### 6.1. Роли доступа к справочнику Купоны + +**Роли в основной конфигурации CRM3devLocal:** + +1. **rh_ДобавлениеРедактированиеКупонов** + - **Расположение:** `CRM3devLocal/src/Roles/rh_ДобавлениеРедактированиеКупонов/` + - **Синоним:** "Добавление и редактирование купонов" + - **Права:** Доступ к справочнику `Catalog.Купоны` (чтение, добавление, изменение) + - **UUID:** `92d7bed5-6fda-420f-8761-dd74bef24577` + +2. **rh_ЧтениеКупонов** + - **Расположение:** `CRM3devLocal/src/Roles/rh_ЧтениеКупонов/` + - **Синоним:** "Чтение купонов" + - **Права:** Доступ к справочнику `Catalog.Купоны` (только чтение) + - **UUID:** `b75850b1-2ce5-4337-8bf9-c974f6f8a1a5` + +**Роли в расширении CRM3devLocal.Рана:** + +3. **НастройкаНСИ** + - **Расположение:** `CRM3devLocal.Рана/src/Roles/НастройкаНСИ/Rights.rights` + - **Права:** Доступ к справочнику `Catalog.Купоны` + +4. **ДобавлениеИзменениеОбщейБазовойНСИ** + - **Расположение:** `CRM3devLocal.Рана/src/Roles/ДобавлениеИзменениеОбщейБазовойНСИ/Rights.rights` + - **Права:** Доступ к справочнику `Catalog.Купоны` + +5. **ЧтениеБазовойНСИ** + - **Расположение:** `CRM3devLocal.Рана/src/Roles/ЧтениеБазовойНСИ/Rights.rights` + - **Права:** Доступ к справочнику `Catalog.Купоны` + +6. **ЧтениеНормативноСправочнойИнформации** + - **Расположение:** `CRM3devLocal.Рана/src/Roles/ЧтениеНормативноСправочнойИнформации/Rights.rights` + - **Права:** Доступ к справочнику `Catalog.Купоны` + +**Назначение:** +Роли обеспечивают разграничение доступа к справочнику "Купоны" в зависимости от функций пользователя в системе. + +--- + +## 7. Подсистемы + +### 7.1. Включение в подсистему rh_Продажи (основная конфигурация) + +**Расположение:** `CRM3devLocal/src/Subsystems/rh_Rhana/Subsystems/rh_Продажи/rh_Продажи.mdo` + +**Информация:** +- Справочник `Catalog.Купоны` включен в подсистему `rh_Продажи` +- Подсистема `rh_Продажи` входит в подсистему `rh_Rhana` +- В подсистему также включены роли: + - `Role.rh_ДобавлениеРедактированиеКупонов` + - `Role.rh_ЧтениеКупонов` + +**Назначение:** +Включение справочника в подсистему "Продажи" указывает на то, что купоны являются частью функционала продаж и используются в процессах продаж. + +### 7.2. Включение в подсистему rh_НСИ (расширение) + +**Расположение:** `CRM3devLocal.Рана/src/Subsystems/rh_Rhana/Subsystems/rh_НСИ/rh_НСИ.mdo` + +**Информация:** +- Справочник `Catalog.Купоны` включен в подсистему `rh_НСИ` +- Подсистема `rh_НСИ` входит в подсистему `rh_Rhana` + +**Назначение:** +Включение справочника в подсистему "Нормативно-справочная информация" (НСИ) указывает на то, что купоны являются частью справочной информации системы. + +--- + +## 8. Схема использования реквизита Купон + +### 8.1. Бизнес-процесс + +1. **Создание купона** + - Пользователь с соответствующими правами создает элемент в справочнике "Купоны" + - Купон может быть иерархическим (до 2 уровней) + +2. **Применение купона в заказе клиента** + - При создании или редактировании документа "ЗаказКлиента" пользователь может указать купон + - Реквизит `Купон` заполняется ссылкой на элемент справочника "Купоны" + - Информация о купоне отображается в форме документа + +3. **Импорт заказов с купонами** + - При импорте заказов клиентов из внешних файлов процедура `СопоставитьКупон()` находит соответствующий купон по наименованию + - Если купон не найден, значение остается пустым или неопределенным + +4. **Использование в расходном ордере** + - При создании документа "РасходныйОрдерНаТовары" на основании заказа клиента + - Процедура `р_ОбновитьИнформациюОбКупоне()` автоматически копирует купон из заказа клиента + - Информация о купоне отображается в форме расходного ордера + +--- + +### 8.2. Связи между объектами + +``` +Справочник "Купоны" + ↓ +Документ "ЗаказКлиента" (реквизит "Купон") + ↓ + ├─→ Документ "РеализацияТоваровУслуг" (реквизит "Купон") + │ └─→ Используется в обработке "КредитНотаЗаПериод" для исключения из кредит-нот + │ + └─→ Документ "РасходныйОрдерНаТовары" (реквизит формы "р_КупонИзЗаказаКлиента") +``` + +**Описание связей:** +- Справочник "Купоны" является источником данных для реквизита "Купон" в документе "ЗаказКлиента" +- Реквизит "Купон" в документе "ЗаказКлиента" может быть скопирован в документ "РеализацияТоваровУслуг" при создании реализации на основании заказа +- Реквизит "Купон" в документе "РеализацияТоваровУслуг" используется в обработке "КредитНотаЗаПериод" для исключения документов с купонами из кредит-нот +- Реквизит "Купон" в документе "ЗаказКлиента" является источником данных для реквизита формы "р_КупонИзЗаказаКлиента" в документе "РасходныйОрдерНаТовары" +- Связь между заказом клиента и расходным ордером осуществляется через табличную часть "ТоварыПоРаспоряжениям" + +--- + +## 9. Особенности реализации + +### 9.1. Расширение реквизита + +Реквизит "Купон" определен в основной конфигурации `CRM3devLocal` и расширяется в расширении `CRM3devLocal.Рана`. Это означает: +- Реквизит доступен в обеих конфигурациях +- Расширение не изменяет структуру реквизита, а только подтверждает его использование +- Форма документа в расширении содержит элемент для работы с реквизитом + +### 9.2. Автоматическое копирование + +В документе "РасходныйОрдерНаТовары" реализована автоматическая логика копирования купона из заказа клиента: +- Копирование происходит при создании документа +- Копирование происходит при изменении распоряжения +- Копирование происходит при обновлении данных о доставке +- Логика проверяет, что в документе указан только один заказ клиента + +### 9.3. Импорт данных + +### 9.4. Использование в обработке КредитНотаЗаПериод + +**Особенность:** +Реквизит "Купон" в документе "РеализацияТоваровУслуг" используется для **исключения** документов из процесса формирования кредит-нот. Документы реализации с указанным купоном не включаются в кредит-ноты за период, что позволяет разделить учет обычных продаж и продаж с купонами. + +**Логика:** +- Если в документе реализации указан купон, документ не участвует в формировании кредит-нот +- Это означает, что купоны используются для других целей (например, для предоставления скидок), а не для кредит-нот + +При импорте заказов клиентов реализована процедура сопоставления купонов: +- Поиск купона осуществляется по наименованию +- Если купон не найден, значение остается пустым +- Процедура экспортируется для использования в шаблонах импорта + +--- + +## 10. Выводы + +### 10.1. Основные выводы + +1. **Справочник "Купоны"** определен в основной конфигурации `CRM3devLocal` и используется в расширении `CRM3devLocal.Рана` + +2. **Реквизит "Купон"** в документе "ЗаказКлиента": + - Определен в основной конфигурации + - Расширяется в расширении + - Имеет элемент формы для работы пользователя + - Используется для указания купона, применяемого к заказу + +3. **Использование в документе "РеализацияТоваровУслуг"**: + - Реквизит "Купон" определен в основной конфигурации + - Используется в обработке "КредитНотаЗаПериод" для исключения документов с купонами из кредит-нот + - Документы реализации с указанным купоном не участвуют в формировании кредит-нот за период + - ⚠️ Реквизит **не используется** в печатных формах документа + +4. **Использование в документе "РасходныйОрдерНаТовары"**: + - Реализована автоматическая логика копирования купона из заказа клиента + - Информация о купоне отображается в форме документа + - Логика проверяет корректность данных перед копированием + +5. **Использование в обработке "КредитНотаЗаПериод"**: + - Реквизит "Купон" используется для фильтрации документов реализации + - Документы с указанным купоном исключаются из процесса формирования кредит-нот + - Это позволяет разделить учет обычных продаж и продаж с купонами + +6. **Импорт заказов клиентов**: + - Реализована процедура сопоставления купонов при импорте + - Процедура ищет купон по наименованию + - Обрабатывает случаи отсутствия купона + +7. **Права доступа**: + - Настроены роли для работы со справочником "Купоны" в основной конфигурации и расширении + - Роли разграничивают права на чтение и редактирование + - Роли включены в подсистему "rh_Продажи" + +8. **Подсистемы**: + - Справочник "Купоны" включен в подсистему "rh_Продажи" в основной конфигурации + - Справочник "Купоны" включен в подсистему "rh_НСИ" в расширении + - Это указывает на его принадлежность к функционалу продаж и нормативно-справочной информации + +### 10.2. Рекомендации + +1. **Документирование бизнес-логики купонов:** + - Рекомендуется документировать правила применения купонов + - Указать, влияет ли купон на расчет скидок или другие расчеты + +2. **Проверка использования в расчетах:** + - Необходимо проверить, используется ли реквизит "Купон" в расчетах скидок или других расчетах + - Если используется, необходимо документировать логику расчетов + +3. **Валидация данных:** + - Рекомендуется добавить проверку корректности купона при заполнении заказа + - Проверить актуальность купона (срок действия, статус и т.д.) + +4. **Печатные формы:** + - ⚠️ Рекомендуется проверить необходимость вывода информации о купоне в печатные формы документов + - В текущей конфигурации реквизит "Купон" не используется в печатных формах + - При необходимости добавить информацию о купоне в макеты печати + +5. **Отчетность:** + - Рекомендуется проверить наличие отчетов, использующих информацию о купонах + - При необходимости создать отчеты для анализа использования купонов + +6. **Логика копирования купона:** + - Рекомендуется проверить, копируется ли реквизит "Купон" из заказа клиента в реализацию при создании реализации на основании заказа + - Если копирование не реализовано, рассмотреть необходимость добавления такой логики + +--- + +## 11. Выводы и рекомендации по переносу в новую базу (CRM326) + +### 11.1. Анализ текущего состояния в новой базе + +**Что уже реализовано:** +- ✅ Информационное отображение купона в документе "РасходныйОрдерНаТовары" через дополнительное свойство "РК_Купон" +- ✅ Логика копирования купона из заказа клиента в реализацию через `УправлениеСвойствами` +- ✅ Механизм дополнительных реквизитов БСП настроен и работает + +**Что отсутствует:** +- ❌ Справочник "Купоны" (не требуется для базовой функциональности) +- ❌ Фильтрация документов реализации по купону в обработке "КредитНотаЗаПериод" (требуется реализовать) +- ❌ Обработка импорта заказов с купонами (не требуется на текущий момент) + +### 11.2. Приоритетный подход: использование типового механизма БСП + +**Принципы реализации:** +1. Использовать типовой механизм дополнительных реквизитов БСП (план видов характеристик "ДополнительныеРеквизитыИСведения") +2. Минимум доработок конфигурации +3. Минимум новых объектов в расширении +4. Использовать существующие допустимые типы дополнительных свойств + +### 11.3. Рекомендации по реализации + +#### 11.3.1. Использование дополнительного свойства "РК_Купон" + +**Тип значения:** `Строка` (уже входит в допустимые типы плана видов характеристик) + +**Обоснование:** +- Для информационного отображения достаточно строкового значения +- Для фильтрации по наличию/отсутствию купона достаточно проверки на пустоту строки +- Не требуется создавать справочник "Купоны" и добавлять его в допустимые типы +- Минимум доработок конфигурации + +**Настройка в базе данных:** +1. Создать дополнительное свойство "РК_Купон" в плане видов характеристик "ДополнительныеРеквизитыИСведения" +2. Тип значения: `Строка` +3. Применить к объектам: `Документ.ЗаказКлиента`, `Документ.РеализацияТоваровУслуг` +4. Настроить видимость и доступность для соответствующих ролей + +#### 11.3.2. Реализация фильтрации в кредит-нотах + +**Вариант 1: Фильтрация через табличную часть "ДополнительныеРеквизиты"** + +```bsl +// Пример запроса для исключения документов с купонами +ВЫБРАТЬ + РеализацияТоваровУслуг.Ссылка +ИЗ + Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг + ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг.ДополнительныеРеквизиты КАК ДопРекв + ПО РеализацияТоваровУслуг.Ссылка = ДопРекв.Ссылка + И ДопРекв.Свойство.Имя = "РК_Купон" + И ДопРекв.Значение <> "" +ГДЕ + ДопРекв.Ссылка = ЗНАЧЕНИЕ(Документ.РеализацияТоваровУслуг.ПустаяСсылка) + // Или использовать НЕ СУЩЕСТВУЕТ для проверки отсутствия записи +``` + +**Вариант 2: Фильтрация через программную проверку** + +```bsl +// После получения выборки документов +Для Каждого СтрокаРеализации Из ВыборкаРеализаций Цикл + ЗначениеКупона = УправлениеСвойствами.ЗначениеСвойства( + СтрокаРеализации.Ссылка, + "РК_Купон" + ); + Если ПустаяСтрока(ЗначениеКупона) Тогда + // Документ без купона - включаем в кредит-ноту + ТаблицаРезультатов.Добавить(); + КонецЕсли; +КонецЦикла; +``` + +#### 11.3.3. Информационное отображение (уже реализовано) + +**Текущая реализация:** +- В документе "РасходныйОрдерНаТовары" используется поле формы `РК_ИнформацияОКупоне` +- Значение получается через `УправлениеСвойствами.ЗначениеСвойства()` +- Логика копирования из заказа в реализацию реализована в `ObjectModule.bsl` + +**Дополнительно (если требуется):** +- Добавить элемент формы для отображения купона в документе "ЗаказКлиента" +- Добавить элемент формы для отображения купона в документе "РеализацияТоваровУслуг" + +### 11.4. Шаги реализации + +#### Шаг 1: Настройка дополнительного свойства в базе данных + +1. Открыть конфигуратор новой базы +2. Перейти в план видов характеристик "ДополнительныеРеквизитыИСведения" +3. Создать новый элемент с именем "РК_Купон" +4. Настроить параметры: + - **Имя:** `РК_Купон` + - **Тип значения:** `Строка` + - **Заголовок:** "Купон" + - **Применяется к:** `Документ.ЗаказКлиента`, `Документ.РеализацияТоваровУслуг` + - **Видимость:** Настроить для соответствующих ролей + - **Доступность:** Настроить для соответствующих ролей + +#### Шаг 2: Проверка существующей логики + +1. Проверить работу копирования купона из заказа в реализацию +2. Проверить отображение купона в документе "РасходныйОрдерНаТовары" +3. При необходимости доработать формы документов для отображения купона + +#### Шаг 3: Реализация фильтрации в обработке "КредитНотаЗаПериод" + +1. Адаптировать запросы в обработке для фильтрации по дополнительному свойству +2. Использовать табличную часть "ДополнительныеРеквизиты" или программную проверку +3. Протестировать корректность исключения документов с купонами + +**Важно:** Обработка "КредитНотаЗаПериод" обязательна к переносу, так как используется для формирования кредит-нот за период с исключением документов реализации, у которых указан купон. + +#### Шаг 4: Тестирование + +1. Проверить создание и заполнение купона в документе "ЗаказКлиента" +2. Проверить копирование купона в документ "РеализацияТоваровУслуг" +3. Проверить отображение купона в документе "РасходныйОрдерНаТовары" +4. Проверить фильтрацию в обработке "КредитНотаЗаПериод" - убедиться, что документы с купонами исключаются из кредит-нот + +### 11.5. Что НЕ требуется переносить + +1. **Справочник "Купоны"** - не требуется, так как используется строковое значение +2. **Реквизиты "Купон" в документах** - заменены на дополнительное свойство +3. **Обработка импорта заказов** - не требуется на текущий момент +4. **Роли доступа к справочнику** - не требуются, так как справочник не создается + +### 11.6. Преимущества выбранного подхода + +1. **Минимум доработок:** Используется существующий механизм БСП +2. **Гибкость:** Легко изменить тип значения или добавить дополнительные свойства +3. **Стандартность:** Соответствует типовым подходам БСП +4. **Простота поддержки:** Не требует создания новых объектов метаданных +5. **Расширяемость:** При необходимости можно добавить справочник позже + +### 11.7. Оценка трудозатрат + +| Этап | Описание | Время | +|------|----------|-------| +| Настройка дополнительного свойства | Создание и настройка в БД | 0.5-1 час | +| Проверка существующей логики | Тестирование копирования и отображения | 1-2 часа | +| Доработка форм (если требуется) | Добавление элементов для отображения купона | 2-3 часа | +| Реализация фильтрации | Адаптация запросов в обработке | 2-4 часа | +| Тестирование | Полное тестирование функциональности | 2-3 часа | +| **ИТОГО** | | **7.5-13 часов** | + +### 11.8. Риски и ограничения + +1. **Ограничение:** Купон хранится как строка, нет валидации существования купона + - **Решение:** При необходимости можно добавить справочник позже + +2. **Ограничение:** Нет иерархической структуры купонов + - **Решение:** Если потребуется, можно создать справочник и изменить тип свойства + +3. **Ограничение:** Фильтрация в запросах может быть менее эффективной, чем по реквизиту + - **Решение:** Использовать индексы на табличной части "ДополнительныеРеквизиты" + +--- + +## 12. Приложения + +### 12.1. Список файлов, связанных с реквизитом Купон + +**Основная конфигурация CRM3devLocal:** +- `CRM3devLocal/src/Catalogs/Купоны/Купоны.mdo` - Справочник "Купоны" +- `CRM3devLocal/src/Documents/ЗаказКлиента/ЗаказКлиента.mdo` - Реквизит "Купон" в документе +- `CRM3devLocal/src/Documents/РеализацияТоваровУслуг/РеализацияТоваровУслуг.mdo` - Реквизит "Купон" в документе +- `CRM3devLocal/src/DataProcessors/КредитНотаЗаПериод/Forms/Форма/Module.bsl` - Использование купона в запросах +- `CRM3devLocal/src/Roles/rh_ДобавлениеРедактированиеКупонов/` - Роль доступа +- `CRM3devLocal/src/Roles/rh_ЧтениеКупонов/` - Роль доступа +- `CRM3devLocal/src/Subsystems/rh_Rhana/Subsystems/rh_Продажи/rh_Продажи.mdo` - Подсистема + +**Расширение CRM3devLocal.Рана:** +- `CRM3devLocal.Рана/src/Catalogs/Купоны/Купоны.mdo` - Расширение справочника +- `CRM3devLocal.Рана/src/Documents/ЗаказКлиента/ЗаказКлиента.mdo` - Расширение реквизита +- `CRM3devLocal.Рана/src/Documents/ЗаказКлиента/Forms/ФормаДокумента/Form.form` - Элемент формы +- `CRM3devLocal.Рана/src/Documents/РасходныйОрдерНаТовары/Forms/ФормаДокумента/Form.form` - Реквизит формы +- `CRM3devLocal.Рана/src/Documents/РасходныйОрдерНаТовары/Forms/ФормаДокумента/Module.bsl` - Логика обновления +- `CRM3devLocal.Рана/src/DataProcessors/р_ИмпортЗаказовКлиентов/ManagerModule.bsl` - Процедура сопоставления +- `CRM3devLocal.Рана/src/DataProcessors/р_ИмпортЗаказовКлиентов/Templates/СтолбцыЗаказовКлиентов/Template.mxlx` - Шаблон импорта +- `CRM3devLocal.Рана/src/Subsystems/rh_Rhana/Subsystems/rh_НСИ/rh_НСИ.mdo` - Подсистема +- `CRM3devLocal.Рана/src/Roles/НастройкаНСИ/Rights.rights` - Права доступа +- `CRM3devLocal.Рана/src/Roles/ДобавлениеИзменениеОбщейБазовойНСИ/Rights.rights` - Права доступа +- `CRM3devLocal.Рана/src/Roles/ЧтениеБазовойНСИ/Rights.rights` - Права доступа +- `CRM3devLocal.Рана/src/Roles/ЧтениеНормативноСправочнойИнформации/Rights.rights` - Права доступа +- `CRM3devLocal.Рана/src/Subsystems/rh_Rhana/Subsystems/rh_НСИ/rh_НСИ.mdo` - Подсистема + +--- + +### 12.2. Сводная таблица использования реквизита Купон + +| Объект | Реквизит/Элемент | Тип | Использование | Печатные формы | +|--------|------------------|-----|----------------|----------------| +| Справочник "Купоны" | - | Справочник | Источник данных | - | +| Документ "ЗаказКлиента" | Купон | CatalogRef.Купоны | Указание купона в заказе | ❌ Не используется | +| Документ "РеализацияТоваровУслуг" | Купон | CatalogRef.Купоны | Исключение из кредит-нот | ❌ Не используется | +| Документ "РасходныйОрдерНаТовары" | р_КупонИзЗаказаКлиента | CatalogRef.Купоны | Отображение купона из заказа | ❌ Не используется | +| Обработка "КредитНотаЗаПериод" | - | - | Фильтрация по пустому купону | - | +| Обработка "р_ИмпортЗаказовКлиентов" | - | - | Сопоставление купона при импорте | - | + +**Условные обозначения:** +- ✅ Используется +- ❌ Не используется +- - Не применимо + +--- + +**Конец документа** + diff --git a/docs__Анализ_различий_crm3-26-test_vs_crm3-dev.md b/docs__Анализ_различий_crm3-26-test_vs_crm3-dev.md new file mode 100644 index 0000000..a57cd1e --- /dev/null +++ b/docs__Анализ_различий_crm3-26-test_vs_crm3-dev.md @@ -0,0 +1,619 @@ +# Анализ различий: crm3-26-test и crm3-dev (конфигурации и расширения) + +**Дата:** 2026-05-13 +**Корень проекта:** `D:\SynologyDrive\projects_syn\crm3-26` + +Сформировано скриптом `scripts/compare_crm_test_dev_configs.py` по **файлам выгрузки** (не по данным информационной базы). Настройки ИБ уровня «1С:Предприятие» в этом отчёте **не** снимаются — для них нужны снимки из режима предприятия или внешние обработки по плану миграции. + +## 1. Свойства из Configuration.xml + +### crm3-26-test (основная) + +- **Name:** УправлениеТорговлей_CRM_2 +- **Synonym:** 1С:Управление торговлей и взаимоотношениями с клиентами (CRM), редакция 3.1 +- **Version:** 3.1.35.11 +- **Vendor:** ООО "1С-Рарус Специализированные Решения" +- **ConfigurationExtensionCompatibilityMode:** Version8_3_27 +- **CompatibilityMode:** Version8_3_27 +- **InterfaceCompatibilityMode:** TaxiEnableVersion8_2 +- **DefaultRunMode:** ManagedApplication +- **ScriptVariant:** Russian +- **ChildObjects (количество по типу тега в Configuration.xml):** + - CommonModule: 3118 + - CommonPicture: 2633 + - Role: 1150 + - Constant: 1147 + - Enum: 1057 + - InformationRegister: 967 + - FunctionalOption: 644 + - Catalog: 625 + - DefinedType: 473 + - EventSubscription: 440 + - DataProcessor: 436 + - StyleItem: 421 + - XDTOPackage: 407 + - CommonCommand: 382 + - Report: 380 + - CommonForm: 363 + - Document: 298 + - ScheduledJob: 262 + - CommonTemplate: 246 + - SessionParameter: 115 + - AccumulationRegister: 105 + - CommandGroup: 64 + - Subsystem: 41 + - ExchangePlan: 26 + - WebService: 21 + - ChartOfCharacteristicTypes: 18 + - HTTPService: 14 + - DocumentJournal: 12 + - FunctionalOptionsParameter: 10 + - BusinessProcess: 8 + - CommonAttribute: 7 + - FilterCriterion: 7 + - DocumentNumerator: 3 + - SettingsStorage: 3 + - WSReference: 2 + - ExternalDataSource: 1 + - IntegrationService: 1 + - Language: 1 + - Task: 1 + +### crm3-26-test.rhana + +- **Name:** crm326RHANA +- **Synonym:** Расширение РАНА для CRM3-26 +- **Version:** 1.3.0.35 +- **ConfigurationExtensionPurpose:** Customization +- **NamePrefix:** РК_ +- **ConfigurationExtensionCompatibilityMode:** Version8_3_27 +- **CompatibilityMode:** Version8_3_27 +- **InterfaceCompatibilityMode:** TaxiEnableVersion8_2 +- **DefaultRunMode:** ManagedApplication +- **ScriptVariant:** Russian +- **ChildObjects (количество по типу тега в Configuration.xml):** + - CommonPicture: 10 + - Enum: 7 + - CommonModule: 4 + - Role: 4 + - Document: 3 + - DataProcessor: 2 + - Subsystem: 2 + - Catalog: 1 + - ChartOfCharacteristicTypes: 1 + - CommonForm: 1 + - Constant: 1 + - DefinedType: 1 + - FunctionalOption: 1 + - Language: 1 + - StyleItem: 1 + +### crm3-dev (основная) + +- **Name:** УправлениеТорговлей_CRM_2 +- **Synonym:** Управление торговлей и взаимоотношениями с клиентами, редакция 3.0 +- **Version:** 3.0.22.28 +- **Vendor:** ООО "1С-Рарус Специализированные Решения" +- **ConfigurationExtensionCompatibilityMode:** Version8_3_27 +- **CompatibilityMode:** Version8_3_16 +- **InterfaceCompatibilityMode:** TaxiEnableVersion8_2 +- **DefaultRunMode:** ManagedApplication +- **ScriptVariant:** Russian +- **ChildObjects (количество по типу тега в Configuration.xml):** + - CommonPicture: 2103 + - CommonModule: 2084 + - Constant: 967 + - Role: 893 + - Enum: 820 + - InformationRegister: 690 + - FunctionalOption: 551 + - Catalog: 515 + - DataProcessor: 410 + - Report: 392 + - CommonCommand: 388 + - EventSubscription: 386 + - CommonForm: 376 + - XDTOPackage: 297 + - DefinedType: 296 + - StyleItem: 263 + - Document: 245 + - CommonTemplate: 198 + - ScheduledJob: 164 + - AccumulationRegister: 111 + - SessionParameter: 98 + - CommandGroup: 67 + - Subsystem: 41 + - ExchangePlan: 23 + - WebService: 21 + - ChartOfCharacteristicTypes: 18 + - DocumentJournal: 17 + - HTTPService: 17 + - FunctionalOptionsParameter: 10 + - BusinessProcess: 7 + - FilterCriterion: 7 + - CommonAttribute: 6 + - Sequence: 5 + - SettingsStorage: 4 + - WSReference: 4 + - DocumentNumerator: 3 + - Language: 3 + - Style: 2 + - ExternalDataSource: 1 + - Interface: 1 + - … всего типов: 41 + +### crm3-dev.rhana + +- **Name:** Рана +- **Synonym:** Рана CRM3 +- **Version:** 3.0.22.26/1.0.1.322 +- **Vendor:** remark.pro +- **ConfigurationExtensionPurpose:** Customization +- **NamePrefix:** р_ +- **ConfigurationExtensionCompatibilityMode:** Version8_3_14 +- **InterfaceCompatibilityMode:** TaxiEnableVersion8_2 +- **DefaultRunMode:** ManagedApplication +- **ScriptVariant:** Russian +- **ChildObjects (количество по типу тега в Configuration.xml):** + - Catalog: 79 + - Document: 72 + - Role: 47 + - Enum: 45 + - CommonModule: 38 + - Report: 33 + - CommonPicture: 30 + - StyleItem: 19 + - InformationRegister: 16 + - DefinedType: 15 + - AccumulationRegister: 12 + - DataProcessor: 10 + - Subsystem: 9 + - ChartOfCharacteristicTypes: 4 + - CommonForm: 4 + - Constant: 3 + - DocumentJournal: 2 + - BusinessProcess: 1 + - Language: 1 + +## 2. Сводка различий (основные конфигурации) + +| Параметр | crm3-26-test | crm3-dev | +|----------|--------------|----------| +| Версия типовой | 3.1.35.11 | 3.0.22.28 | +| Синоним | 1С:Управление торговлей и взаимоотношениями с клиентами (CRM), редакция 3.1 | Управление торговлей и взаимоотношениями с клиентами, редакция 3.0 | +| Режим совместимости расширений (платформа) | Version8_3_27 | Version8_3_27 | + +**Вывод:** тестовая ветка на **редакции 3.1** (версия конфигурации из XML), рабочая исходная — **редакция 3.0**. Это разные линейки типовой; перенос доработок и сопоставление объектов выполняется с учётом миграции 3.0 -> 3.1, а не как «одинаковая база». + +## 3. Сводка различий (расширения) + +| Параметр | crm3-26-test.rhana | crm3-dev.rhana | +|----------|-------------------|----------------| +| Имя | crm326RHANA | Рана | +| Версия | 1.3.0.35 | 3.0.22.26/1.0.1.322 | +| Префикс | РК_ | р_ | +| Режим совместимости расширения | Version8_3_27 | Version8_3_14 | +| CompatibilityMode (доп.) | Version8_3_27 | — | + +**Вывод:** расширение тестовой ветки (`crm326RHANA`, префикс **РК_**) ориентировано на платформу **8.3.27**; исходное расширение «Рана» (`р_`) заявляет **ConfigurationExtensionCompatibilityMode Version8_3_14** — при сборке/подключении сверять требования EDT и фактическую версию платформы ИБ. + +## 4. Количество объектов по папкам верхнего уровня (EDT `src/`) + +*Примечание:* число **подпапок** в `src/<Тип>/` (ниже) — фактическая выгрузка EDT. Счётчики по тегам в разделе 1 для `` — это **индекс ссылок** в `Configuration.xml`; для отдельных типов (например, перечисления) они могут **существенно различаться** с числом папок — для полного состава ориентироваться на XML или конфигуратор. + +| Тип метаданных | crm3-26-test (основная) | crm3-26-test.rhana | crm3-dev (основная) | crm3-dev.rhana | +|---|---|---|---|---| +| AccumulationRegisters | 103 | 0 | 109 | 0 | +| BusinessProcesses | 8 | 0 | 7 | 0 | +| Catalogs | 616 | 1 | 491 | 8 | +| ChartsOfCharacteristicTypes | 18 | 0 | 18 | 0 | +| CommandGroups | 0 | 0 | 0 | 0 | +| CommonAttributes | 0 | 0 | 0 | 0 | +| CommonCommands | 382 | 0 | 388 | 0 | +| CommonForms | 363 | 1 | 376 | 4 | +| CommonModules | 3118 | 3 | 2081 | 35 | +| CommonPictures | 2632 | 0 | 2102 | 5 | +| CommonTemplates | 246 | 0 | 198 | 0 | +| Constants | 254 | 0 | 133 | 0 | +| DataProcessors | 436 | 2 | 410 | 8 | +| DefinedTypes | 0 | 0 | 0 | 0 | +| DocumentJournals | 11 | 0 | 16 | 0 | +| DocumentNumerators | 0 | 0 | 0 | 0 | +| Documents | 298 | 2 | 229 | 21 | +| Enums | 162 | 0 | 99 | 2 | +| EventSubscriptions | 0 | 0 | 0 | 0 | +| ExchangePlans | 26 | 0 | 23 | 0 | +| ExternalDataSources | 1 | 0 | 1 | 0 | +| FilterCriteria | 1 | 0 | 2 | 0 | +| FunctionalOptions | 0 | 0 | 0 | 0 | +| FunctionalOptionsParameters | 0 | 0 | 0 | 0 | +| HTTPServices | 14 | 0 | 17 | 0 | +| InformationRegisters | 829 | 0 | 554 | 2 | +| IntegrationServices | 1 | 0 | 0 | 0 | +| Interfaces | 0 | 0 | 1 | 0 | +| Languages | 0 | 0 | 0 | 0 | +| Reports | 380 | 0 | 392 | 10 | +| Roles | 1150 | 4 | 893 | 31 | +| ScheduledJobs | 240 | 0 | 139 | 0 | +| Sequences | 0 | 0 | 0 | 0 | +| SessionParameters | 0 | 0 | 0 | 0 | +| SettingsStorages | 3 | 0 | 4 | 0 | +| StyleItems | 0 | 0 | 0 | 0 | +| Styles | 0 | 0 | 2 | 0 | +| Subsystems | 28 | 1 | 27 | 8 | +| Tasks | 1 | 0 | 1 | 0 | +| WSReferences | 2 | 0 | 4 | 0 | +| WebServices | 21 | 0 | 21 | 0 | +| XDTOPackages | 407 | 0 | 297 | 0 | + +## 5. Дифф имён: Документы и ОбщиеМодули + +### Документы (`Documents/`) + +- **Только в crm3-26-test:** 94 + - `CRM_ДоходыИРасходыПоПроекту` + - `CRM_ОтсутствиеСотрудника` + - `АктИнвентаризацииСАТУРН` + - `АктОбУничтоженииПерсональныхДанных` + - `АктПремииКлиенту` + - `АктПремииПоставщика` + - `АктПриемкиВходящийЕИС` + - `АктПримененияСАТУРН` + - `Бронирование` + - `ВводОстатковВзаиморасчетов` + - `ВводОстатковДенежныхСредств` + - `ВводОстатковНДСПредъявленного` + - `ВводОстатковОПродажахЗаПрошлыеПериоды` + - `ВводОстатковПоФинансовымИнструментам` + - `ВводОстатковПрочиеРасходы` + - `ВводОстатковПрочихАктивовПассивов` + - `ВводОстатковРасчетовПоЭквайрингу` + - `ВводОстатковСПодотчетниками` + - `ВводОстатковТМЦВЭксплуатации` + - `ВводОстатковТоваров` + - `ВнесениеСведенийОСобранномУрожаеЗЕРНО` + - `ВнутреннееПотребление` + - `ВыкупПринятыхНаХранениеТоваров` + - `ВыкупТоваровХранителем` + - `ЗапросОстатковПартийЗЕРНО` + - `ЗапросОстатковПартийСАТУРН` + - `ЗаявкаНаКомандировку` + - `ИмпортПродукцииСАТУРН` + - `КорректировкаГрафикаВзаиморасчетов` + - `КорректировкаЗадолженности` + - `КорректировкаПлановыхПотребностей` + - `КорректировкаРасчетовСПодотчетнымиЛицами` + - `НакладнаяСАТУРН` + - `НачислениеРеверсивногоНДС` + - `НачислениеРетроБонусовКлиента` + - `НачислениеРетроБонусовПоставщика` + - `ОприходованиеИзлишковОтгруженныхТоваров` + - `ОтгрузкаТоваровКлиенту` + - `ОтгрузкаТоваровСХранения` + - `ОтчетИСМП` + - `ОтчетКомитентуОЗакупках` + - `ОтчетОПроизводствеЕГАИС` + - `ОтчетОРозничныхВозвратах` + - `ОтчетОСписанииТоваровСХранения` + - `ОтчетОбИмпортеЕГАИС` + - `ОформлениеСДИЗЗЕРНО` + - `ПередачаТоваровХранителю` + - `ПеремещениеМеждуМОДИСМП` + - `ПересортицаТоваровУХранителя` + - `ПланВнутреннихПотреблений` + - `ПланПримененияСАТУРН` + - `ПлатежнаяСсылкаСБП` + - `ПогашениеСДИЗЗЕРНО` + - `ПодключениеКегаКОборудованиюРозливаИСМП` + - `ПодтверждениеЗачисленияЗарплаты` + - `ПодтверждениеНулевойСтавкиНДС` + - `ПорчаТоваровУХранителя` + - `ПоступлениеТоваровОтКлиента` + - `ПоступлениеТоваровОтХранителя` + - `ПоступлениеУслугВПодразделение` + - `ПриемкаТоваровНаХранение` + - `ПроизводственнаяОперацияСАТУРН` + - `РазрешениеНаОтгрузкуИСМП` + - `РаспознанныйДокумент` + - `РасчетПроцентныхРасходовДисконтирования` + - `РегистраторЗапасыИПотребности` + - `РегистраторРасчетаСебестоимости` + - `СверкаВзаиморасчетов2_4` + - `СверкаВзаиморасчетов2_5_11` + - `СверкаВзаиморасчетовСБПc2b` + - `СообщениеЭДО` + - `СписаниеОтгруженныхТоваров` + - `СписаниеПартийЗЕРНО` + - `СписаниеРасхожденийПоступлениеПриобретение` + - `СписаниеРетроБонусовКлиента` + - `СписаниеРетроБонусовПоставщика` + - `Сторно` + - `ТранспортныйКонтейнерЭДО` + - `УведомлениеОПланируемомИмпортеЕГАИС` + - `УдалитьРегистраторГрафикаДвиженияТоваров` + - … и ещё 14 +- **Только в crm3-dev:** 25 + - `CRM_ПланированиеПоОтделам` + - `rh_ОтражениеФактаПродаж` + - `rh_ПланированиеПродаж` + - `rh_ТоварыНаСкладахСебестоимость` + - `rh_УдалитьКассоваяСмена` + - `АктОРасхожденияхПриПоступленииТоваров` + - `АктПриемкиТоваров` + - `ВнутреннееПотреблениеТоваров` + - `ВыпискаПоРасчетномуСчету` + - `ПакетЭД` + - `РегистраторГрафикаДвиженияТоваров` + - `СверкаВзаиморасчетов` + - `СписаниеЗадолженности` + - `УдалитьCRM_Сделка` + - `УдалитьCRM_Событие` + - `УдалитьОрдерНаОтражениеРезультатовПересчетовТоваров` + - `УдалитьПодтверждениеНулевойСтавкиНДС` + - `УдалитьРаспоряжениеНаИнвентаризациюТоваров` + - `УдалитьРаспределениеРасходовНаСебестоимостьТоваров` + - `УстановкаСкидокНаценок` + - `ЭлектронныйДокументВходящий` + - `ЭлектронныйДокументИсходящий` + - `смсСообщение` + - `удалитьCRM_Мероприятие` + - `удалитьCRM_Планирование` +- **В обеих:** 204 + +### Общие модули (`CommonModules/`) + +- **Только в crm3-26-test:** 1301 + - `CRM_БазоваяСервер` + - `CRM_ВоронкиПродажПовтИсп` + - `CRM_ИнтересыВызовСервера` + - `CRM_ЛентаСобытийКлиентСервер` + - `CRM_ЛицензированиеКлиент` + - `CRM_Модуль_ОбработкаТабличнойЧастиСервер` + - `CRM_Модуль_РаботаСКонтрагентамиВызовСервера` + - `CRM_НачалоРаботыСПрограммойВызовСервера` + - `CRM_ОбменB2BПортал` + - `CRM_ОбменСВнешнимиКалендарями` + - `CRM_ОбменСВнешнимиКалендарямиВызовСервера` + - `CRM_ОповещенияКлиент` + - `CRM_ОчисткаИсторииРеквизитовОбъектов` + - `CRM_ПланированиеПродаж` + - `CRM_ПодготовкаФормДляМобильногоКлиента` + - `CRM_ПрисоединенныеФайлыКлиент` + - `CRM_ПроверкаПравописанияКлиент` + - `CRM_ПроверкаПравописанияСервер` + - `CRM_РаботаСHTMLКлиент` + - `CRM_РаботаСICalendar` + - `CRM_РаботаСВиджетамиКлиент` + - `CRM_РаботаСВиджетамиКлиентСервер` + - `CRM_РаботаСВиджетамиСервер` + - `CRM_РаботаСВнешнимиБиблиотекамиВызовСервера` + - `CRM_РаботаСПочтовымиСообщениямиСлужебный` + - `CRM_РаботаСРечьюКлиент` + - `CRM_РаботаСРечьюСервер` + - `CRM_РаботаСФайлами` + - `CRM_РаботаСЯзыковымиМоделямиВызовСервера` + - `CRM_РаботаСЯзыковымиМоделямиКлиент` + - `CRM_РаботаСЯзыковымиМоделямиСервер` + - `CRM_СинхронизацияDAV` + - `CRM_СоисполнителиДиалоговКлиент` + - `CRM_СоисполнителиДиалоговСервер` + - `CRM_СпискиВыбораКлиентСервер` + - `CRM_СтраницаПриветствие` + - `CRM_СтраницаПриветствиеКлиент` + - `CRM_СтраницаПриветствияГлобальный` + - `CRM_ТехподдержкаИнтеграцияСервер` + - `CRM_УТ_ПолучениеОбновленийПрограммы` + - `CRM_УдалениеПомеченныхОбъектов` + - `CRM_УправлениеКонтактнойИнформациейВызовСервера` + - `CRM_ЦентрМониторингаВызовСервера` + - `CRM_ЦентрМониторингаГлобальный` + - `CRM_ЦентрМониторингаКлиент` + - `CRM_ЦентрМониторингаКлиентСервер` + - `CRM_ШаблоныЭлементовФорм` + - `CRM_ШаблоныЭлементовФормКлиент` + - `CRMЛокализация` + - `HttpBridgeКлиент` + - `АвтоматическоеПолучениеЭДО` + - `АвтоматическоеПолучениеЭДОВызовСервера` + - `АвтоматическоеПолучениеЭДОИнтеграцияОблака` + - `АвтоматическоеПолучениеЭДОКлиент` + - `АвтоматическоеПолучениеЭДОКлиентСервер` + - `АвтоматическоеПолучениеЭДОПовтИсп` + - `АктПремииКлиентуЛокализация` + - `АктПремииПоставщикаЛокализация` + - `АнализСхемКонфигурации` + - `АннулированиеПодарочныхСертификатовЛокализация` + - `АудитСостоянияСистемыЛокализация` + - `АудитСостоянияСистемыПовтИсп` + - `БанковскиеСчетаКонтрагентовЛокализация` + - `БанковскиеСчетаОрганизацийЛокализация` + - `БизнесСетьВМоделиСервиса` + - `БизнесСетьСлужебный` + - `БлокировкаРаботыСВнешнимиРесурсамиЛокализация` + - `БронированиеЛокализация` + - `ВводОстатковВызовСервера` + - `ВводОстатковСервер` + - `ВводОстатковСерверПовтИсп` + - `ВводОстатковТМЦВЭксплуатацииЛокализация` + - `ВзаиморасчетыВызовСервера` + - `ВзаиморасчетыКлиент` + - `ВидыНалоговВзносовЛокализация` + - `ВидыПриложенийПереопределяемый` + - `ВидыПриложенийСервер` + - `ВидыПриложенийСлужебный` + - `ВизуализацияЭДО` + - `ВизуализацияЭДОВызовСервера` + - … и ещё 1221 +- **Только в crm3-dev:** 264 + - `CRM_GoogleИнтеграция` + - `CRM_GoogleИнтеграцияРегл` + - `CRM_СобытияКлиент` + - `CRM_СобытияСервер` + - `CRM_УправлениеЭлектроннойПочтойIMAP` + - `mmMobileMonitor` + - `mmMobileMonitorПривилегированный` + - `mmОбратныйПротокол` + - `rh_ОбновлениеИнформационнойБазыRhana` + - `rh_ОбновлениеИнформационнойБазыВызовСервера` + - `rh_ОбщийМодульКлиентСервер` + - `rh_ОчередьЗаданийСлужебный` + - `rh_ПолнотекстовыйПоискКлиент` + - `rh_ПользователиСлужебныйВМоделиСервисаПовтИсп` + - `rh_СообщенияВМоделиСервисаПовтИсп` + - `rh_ТоварыНаСкладахСебестоимость` + - `rh_УправлениеКонтактнойИнформациейПереопределяемый` + - `rh_УправлениеПечатью` + - `rh_УправлениеПечатьюКлиент` + - `rh_ШаблоныСообщенийКлиентСервер` + - `rh_ШаблоныСообщенийСервер` + - `tega_ОбщийМодульСервер` + - `АвтономнаяРаботаСлужебныйВызовСервера` + - `АдресныйКлассификаторВызовСервера` + - `АдресныйКлассификаторКлиентСервер` + - `АдресныйКлассификаторСлужебныйВМоделиСервиса` + - `АнализЖурналаРегистрацииКлиент` + - `АнализЖурналаРегистрацииСлужебный` + - `БухгалтерскиеОтчетыВызовСервераПовтИсп` + - `ВариантыОтчетовВызовСервераПовтИсп` + - `ВариантыОтчетовКлиентПереопределяемый` + - `ВитриныКлиент` + - `ВнутреннееПотреблениеТоваровКлиентЛокализация` + - `ВнутреннееПотреблениеТоваровЛокализация` + - `ВызовОнлайнПоддержки` + - `ВызовОнлайнПоддержкиВызовСервера` + - `ВызовОнлайнПоддержкиКлиент` + - `ВызовОнлайнПоддержкиПереопределяемый` + - `ГенерацияШтрихкодаВызовСервера` + - `ГенерацияШтрихкодаКлиентСервер` + - `Диадок_ФоновыеЗадания` + - `ДлительныеОперацииГлобальный` + - `ДлительныеОперацииКлиентПовтИсп` + - `ДополнительныеОтчетыИОбработкиВБезопасномРежиме` + - `ДополнительныеОтчетыИОбработкиВБезопасномРежимеВызовСервера` + - `ДополнительныеОтчетыИОбработкиВБезопасномРежимеИнтерфейс` + - `ДополнительныеОтчетыИОбработкиВБезопасномРежимеПовтИсп` + - `ДополнительныеОтчетыИОбработкиРегламентныеЗадания` + - `ДополнительныеОтчетыИОбработкиСобытия` + - `ЖурналДокументовВнутреннегоТовародвиженияЛокализация` + - `ЗаказНаВнутреннееПотреблениеКлиентЛокализация` + - `ЗакупкиКлиентСервер` + - `ЗаполнениеСвойствПоСтатистикеПереопределяемый` + - `ЗаполнениеСвойствПоСтатистикеПовтИсп` + - `ЗаполнениеСвойствПоСтатистикеСервер` + - `ИнтеграцияЕГАИСВебКлиент` + - `ИнтеграцияЕГАИСГлобальный` + - `ИнтеграцияЕГАИССлужебныйКлиент` + - `ИнтеграцияИСМПГлобальный` + - `ИнтеграцияС1СДокументооборотВызовСервераПереопределяемый` + - `ИнтеграцияС1СДокументооборотКлиентПереопределяемый` + - `ИнтеграцияС1СДокументооборотПереопределяемый` + - `ИнтеграцияСЯндексКассой` + - `ИнтеграцияСЯндексКассойКлиент` + - `ИнтеграцияСЯндексКассойКлиентПереопределяемый` + - `ИнтеграцияСЯндексКассойПереопределяемый` + - `ИнтеграцияСЯндексКассойСлужебный` + - `ИнтеграцияСЯндексКассойСлужебныйВызовСервера` + - `ИнтеграцияСЯндексКассойСлужебныйКлиент` + - `ИнтерфейсИСМПВызовСервера` + - `ИнтерфейсИСМПКлиент` + - `ИнтерфейсИСМПКлиентСервер` + - `ИнтерфейсМОТПКлиентСервер` + - `КассовыеСменыВызовСервераПереопределяемый` + - `КомандыРаботыСБизнесПроцессамиКлиент` + - `КонтактнаяИнформацияXML` + - `КонтактнаяИнформацияКлиентСервер` + - `КонтактнаяИнформацияКлиентСерверПовтИсп` + - `КонтрольДинамическогоОбновленияКонфигурацииВызовСервера` + - `КонтрольДинамическогоОбновленияКонфигурацииГлобальный` + - … и ещё 184 +- **В обеих:** 1817 + +## 6. Дифф имён: расширения (верхний уровень) + +### Документы в расширениях + +- **Только в crm3-26-test.rhana:** 0 +- **Только в crm3-dev.rhana:** 19 + - `ВводОстатков` + - `ВозвратТоваровОтКлиента` + - `ЗаданиеНаПеревозку` + - `ЗаказКлиента` + - `ЗаказНаПеремещение` + - `ОприходованиеИзлишковТоваров` + - `ОрдерНаОтражениеИзлишковТоваров` + - `ОрдерНаОтражениеНедостачТоваров` + - `ОтчетКомиссионера` + - `ОтчетКомиссионераОСписании` + - `ОтчетОРозничныхПродажах` + - `ПеремещениеТоваров` + - `ПересчетТоваров` + - `ПриобретениеТоваровУслуг` + - `ПриходныйОрдерНаТовары` + - `СписаниеНедостачТоваров` + - `СчетФактураВыданный` + - `СчетФактураВыданныйАванс` + - `р_ВерсииСебестоимости` +- **В обоих:** 2 + +### Общие модули в расширениях + +- **Только в crm3-26-test.rhana:** 3 + - `ОбщегоНазначенияКлиентСервер` + - `РК_ОбщегоНазначенияВызовСервера` + - `РК_ОбщегоНазначенияКлиентСервер` +- **Только в crm3-dev.rhana:** 35 + - `rh_ТоварыНаСкладахСебестоимость` + - `ВводОстатковЛокализация` + - `ВозвратТоваровОтКлиентаЛокализация` + - `ДенежныеСредстваСервер` + - `ДоставкаТоваров` + - `ЗакупкиСервер` + - `ЗапасыСервер` + - `ИнтеграцияСЯндексКассойУТ` + - `МенеджерОбменаЧерезУниверсальныйФормат` + - `МенеджерОфлайнОборудования` + - `НаборыСервер` + - `ОбменДаннымиУТ` + - `ОбщегоНазначения` + - `ОприходованиеИзлишковТоваровЛокализация` + - `ОтчетКомиссионераЛокализация` + - `ОтчетКомиссионераОСписанииЛокализация` + - `ПеремещениеТоваровЛокализация` + - `ПодключаемоеОборудованиеOfflineВызовСервера` + - `ПрефиксацияОбъектовКлиентСервер` + - `ПрефиксацияОбъектовСобытия` + - `ПриобретениеТоваровУслугЛокализация` + - `ПроведениеСерверУТ` + - `ПродажиСервер` + - `РеализацияТоваровУслугЛокализация` + - `СкладыСервер` + - `СписаниеНедостачТоваровЛокализация` + - `ТорговыеПредложенияСлужебный` + - `УправлениеПечатьюMSWordКлиент` + - `УправлениеПечатьюВызовСервера` + - `УправлениеПечатьюКлиентСервер` + - `УправлениеПечатьюПереопределяемый` + - `УчетНДСПереопределяемый` + - `УчетНДСУП` + - `УчетНДСУПКлиентСервер` + - `УчетНДСУПСлужебный` +- **В обоих:** 0 + +### Справочники в расширениях + +- **Только в crm3-26-test.rhana:** 0 +- **Только в crm3-dev.rhana:** 7 + - `ВидыЗапасов` + - `ВидыКонтактнойИнформации` + - `Номенклатура` + - `НоменклатураКонтрагентов` + - `Партнеры` + - `СертификатыНоменклатуры` + - `Склады` +- **В обоих:** 1 + +## 7. Рекомендуемые следующие шаги для «первоначальной настройки» тестовой ИБ + +1. В конфигураторе/EDT для **crm3-26-test** зафиксировать состав подключаемых расширений (`crm3-26-test.rhana` + при необходимости `crm3-dev.upd5b` и др.) и версию платформы **не ниже** требований 3.1. +2. Снять **парные снимки настроек ИБ** для рабочей `crm3-dev` и тестовой `crm3-26-test` (уровень предприятия) по чек-листу плана миграции — этот файл только про **метаданные файлов**. +3. По диффу документов/модулей (разд. 5–6) запланировать перенос недостающих доработок в `crm3-26-test.rhana` или подтвердить замену типовыми объектами 3.1. diff --git a/docs__Анализ_рисков_неуникальности_CRM_ЖурналДокументов.md b/docs__Анализ_рисков_неуникальности_CRM_ЖурналДокументов.md new file mode 100644 index 0000000..c163d7e --- /dev/null +++ b/docs__Анализ_рисков_неуникальности_CRM_ЖурналДокументов.md @@ -0,0 +1,216 @@ +--- +title: Анализ рисков нарушения уникальности регистра CRM_ЖурналДокументов +author: Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) +version: 1.0 +date_created: 2025-12-10 +date_modified: 2025-12-10 +show_metadata_block: true +show_index_link: true +--- + +# Анализ рисков нарушения уникальности регистра CRM_ЖурналДокументов + +## Сравнение конфигураций + +### Структура регистра в CRM3devLocal + +**Измерения:** +1. **ГлавнаяЗапись** - `Boolean` +2. **Клиент** - `CatalogRef.Партнеры` (только один тип) +3. **Объект** - `Characteristic.CRM_ОбъектыЖурналаДокументов` +4. **CRM_Интерес** - `DocumentRef.CRM_Интерес` + +### Структура регистра в CRM326_TEST (новая конфигурация) + +**Измерения:** +1. **ГлавнаяЗапись** - `Boolean` +2. **Клиент** - `CatalogRef.Партнеры` **ИЛИ** `CatalogRef.CRM_ПотенциальныеКлиенты` (два типа) +3. **Объект** - `Characteristic.CRM_ОбъектыЖурналаДокументов` +4. **CRM_Интерес** - `DocumentRef.CRM_Интерес` + +## Ключевое различие + +В **CRM3devLocal** измерение "Клиент" может содержать только ссылки на справочник `Партнеры`. + +В **CRM326_TEST** измерение "Клиент" может содержать ссылки на два справочника: +- `Партнеры` +- `CRM_ПотенциальныеКлиенты` + +## Риски нарушения уникальности при реструктуризации + +### 1. Обнуление ссылок на удаляемые объекты + +При реструктуризации регистра система автоматически обнуляет (приводит к `NULL`) ссылки на объекты, которые: +- Удаляются из конфигурации +- Больше не поддерживаются в типе измерения + +### 2. Ссылки, которые станут NULL + +#### 2.1. Измерение "Клиент" + +**Риск:** Если справочник `CRM_ПотенциальныеКлиенты` удаляется из конфигурации, все ссылки на него в измерении "Клиент" будут обнулены. + +**Пример проблемы:** +``` +До реструктуризации: +Запись 1: ГлавнаяЗапись=true, Клиент=Партнеры.Клиент1, Объект=X, CRM_Интерес=Y +Запись 2: ГлавнаяЗапись=true, Клиент=CRM_ПотенциальныеКлиенты.Клиент2, Объект=X, CRM_Интерес=Y + +После реструктуризации (если CRM_ПотенциальныеКлиенты удаляется): +Запись 1: ГлавнаяЗапись=true, Клиент=Партнеры.Клиент1, Объект=X, CRM_Интерес=Y +Запись 2: ГлавнаяЗапись=true, Клиент=NULL, Объект=X, CRM_Интерес=Y + +Если есть еще одна запись с NULL клиентом: +Запись 3: ГлавнаяЗапись=true, Клиент=NULL, Объект=X, CRM_Интерес=Y + +ТОГДА Запись 2 и Запись 3 станут ДУБЛИКАТАМИ! +``` + +#### 2.2. Измерение "Объект" (характеристика) + +**Риск:** Характеристика `CRM_ОбъектыЖурналаДокументов` может содержать ссылки на различные типы объектов (справочники и документы). Если какой-то из этих типов удаляется, ссылки на него обнуляются. + +**Удаляемые типы объектов, которые могут быть в характеристике:** +- `СправочникСсылка.CRM_ПотенциальныеКлиенты` +- `СправочникСсылка.CRM_ИсточникиКонтакта` +- `СправочникСсылка.CRM_КатегорииВрача` +- `СправочникСсылка.CRM_НаучныеСтепени` +- `СправочникСсылка.CRM_ОбластьИнтересов` +- `СправочникСсылка.CRM_Обращения` +- `СправочникСсылка.CRM_Специализация` +- `СправочникСсылка.CRM_Специальность` +- `СправочникСсылка.Отделы` +- `ДокументСсылка.УдалитьCRM_Сделка` +- `ДокументСсылка.УдалитьCRM_Событие` +- `ДокументСсылка.удалитьCRM_Мероприятие` +- `ДокументСсылка.удалитьCRM_Планирование` +- `ДокументСсылка.CRM_ПланированиеПоОтделам` + +**Пример проблемы:** +``` +До реструктуризации: +Запись 1: ГлавнаяЗапись=true, Клиент=K1, Объект=CRM_ПотенциальныеКлиенты.Клиент2, CRM_Интерес=Y +Запись 2: ГлавнаяЗапись=true, Клиент=K1, Объект=CRM_ПотенциальныеКлиенты.Клиент3, CRM_Интерес=Y + +После реструктуризации (если CRM_ПотенциальныеКлиенты удаляется): +Запись 1: ГлавнаяЗапись=true, Клиент=K1, Объект=NULL, CRM_Интерес=Y +Запись 2: ГлавнаяЗапись=true, Клиент=K1, Объект=NULL, CRM_Интерес=Y + +ТОГДА Запись 1 и Запись 2 станут ДУБЛИКАТАМИ! +``` + +#### 2.3. Измерение "CRM_Интерес" + +**Риск:** Если документы определенных типов удаляются, ссылки на них обнуляются. + +**Удаляемые типы документов:** +- `Документ.УдалитьCRM_Сделка` +- `Документ.УдалитьCRM_Событие` +- `Документ.удалитьCRM_Мероприятие` +- `Документ.удалитьCRM_Планирование` +- `Документ.CRM_ПланированиеПоОтделам` + +**Пример проблемы:** +``` +До реструктуризации: +Запись 1: ГлавнаяЗапись=true, Клиент=K1, Объект=X, CRM_Интерес=УдалитьCRM_Сделка.Документ1 +Запись 2: ГлавнаяЗапись=true, Клиент=K1, Объект=X, CRM_Интерес=УдалитьCRM_Сделка.Документ2 + +После реструктуризации (если УдалитьCRM_Сделка удаляется): +Запись 1: ГлавнаяЗапись=true, Клиент=K1, Объект=X, CRM_Интерес=NULL +Запись 2: ГлавнаяЗапись=true, Клиент=K1, Объект=X, CRM_Интерес=NULL + +ТОГДА Запись 1 и Запись 2 станут ДУБЛИКАТАМИ! +``` + +## Комбинированные риски + +Наиболее опасны ситуации, когда обнуляются несколько измерений одновременно: + +### Пример комбинированного риска: + +``` +До реструктуризации: +Запись 1: ГлавнаяЗапись=true, Клиент=Партнеры.K1, Объект=CRM_ПотенциальныеКлиенты.K2, CRM_Интерес=УдалитьCRM_Сделка.D1 +Запись 2: ГлавнаяЗапись=true, Клиент=CRM_ПотенциальныеКлиенты.K3, Объект=CRM_ПотенциальныеКлиенты.K4, CRM_Интерес=УдалитьCRM_Сделка.D2 + +После реструктуризации: +Запись 1: ГлавнаяЗапись=true, Клиент=Партнеры.K1, Объект=NULL, CRM_Интерес=NULL +Запись 2: ГлавнаяЗапись=true, Клиент=NULL, Объект=NULL, CRM_Интерес=NULL + +Если есть еще записи с такими же значениями после обнуления - появятся дубликаты! +``` + +## Сценарии нарушения уникальности + +### Сценарий 1: Обнуление только "Клиент" +- **Условие:** Есть записи с `Клиент=CRM_ПотенциальныеКлиенты.*` и записи с `Клиент=NULL` +- **Результат:** После обнуления записи с `CRM_ПотенциальныеКлиенты` станут иметь `Клиент=NULL`, что может совпасть с уже существующими записями + +### Сценарий 2: Обнуление только "Объект" +- **Условие:** Есть несколько записей с разными значениями `Объект`, которые ссылаются на удаляемые типы +- **Результат:** После обнуления все эти записи будут иметь `Объект=NULL`, что может создать дубликаты + +### Сценарий 3: Обнуление только "CRM_Интерес" +- **Условие:** Есть несколько записей с разными значениями `CRM_Интерес`, которые ссылаются на удаляемые документы +- **Результат:** После обнуления все эти записи будут иметь `CRM_Интерес=NULL`, что может создать дубликаты + +### Сценарий 4: Комбинированное обнуление +- **Условие:** Обнуляются несколько измерений одновременно +- **Результат:** Максимальный риск появления дубликатов + +## Рекомендации по устранению + +1. **Перед реструктуризацией:** + - Выполнить скрипт `check_duplicates_crm_journal.bsl` для выявления потенциальных дубликатов + - Проанализировать результаты и определить записи, которые нужно удалить или скорректировать + +2. **Удаление записей с проблемными ссылками:** + - Удалить все записи, где `Клиент` ссылается на `CRM_ПотенциальныеКлиенты` (если этот справочник удаляется) + - Удалить все записи, где `Объект` ссылается на удаляемые типы объектов + - Удалить все записи, где `CRM_Интерес` ссылается на удаляемые документы + +3. **Альтернативный подход:** + - Очистить регистр полностью + - Перезаполнить его заново, исключив объекты, которые будут удалены + +## Проверка после реструктуризации + +После выполнения реструктуризации необходимо проверить: + +```sql +ВЫБРАТЬ + CRM_ЖурналДокументов.ГлавнаяЗапись, + CRM_ЖурналДокументов.Клиент, + CRM_ЖурналДокументов.Объект, + CRM_ЖурналДокументов.CRM_Интерес, + КОЛИЧЕСТВО(*) КАК КоличествоЗаписей +ИЗ + РегистрСведений.CRM_ЖурналДокументов КАК CRM_ЖурналДокументов + +СГРУППИРОВАТЬ ПО + CRM_ЖурналДокументов.ГлавнаяЗапись, + CRM_ЖурналДокументов.Клиент, + CRM_ЖурналДокументов.Объект, + CRM_ЖурналДокументов.CRM_Интерес + +ИМЕЮЩИЕ + КОЛИЧЕСТВО(*) > 1 +``` + +Если этот запрос возвращает результаты - есть дубликаты, которые нужно устранить. + +## Выводы + +1. **Основной риск:** При реструктуризации регистра ссылки на удаляемые объекты обнуляются, что может привести к появлению дубликатов по комбинации оставшихся измерений. + +2. **Критичные измерения для проверки:** + - **Клиент** - может содержать ссылки на `CRM_ПотенциальныеКлиенты`, который удаляется + - **Объект** - характеристика может содержать ссылки на множество удаляемых типов + - **CRM_Интерес** - может содержать ссылки на удаляемые документы + +3. **Необходимые действия:** + - Выполнить проверку перед реструктуризацией + - Удалить или скорректировать проблемные записи + - Проверить уникальность после реструктуризации + diff --git a/docs__Быстрое_решение.md b/docs__Быстрое_решение.md index 44deacc..5f9c8d6 100644 --- a/docs__Быстрое_решение.md +++ b/docs__Быстрое_решение.md @@ -10,7 +10,7 @@ show_index_link: true # Быстрое решение проблемы обновления -> 📚 **См. также:** [Оглавление документов](INDEX.md) | [Анализ ошибок обновления](Анализ_ошибок_обновления.md) | [Инструкция по исправлению](Инструкция_по_исправлению.md) | [Глубинный анализ регистров](Глубинный_анализ_регистров.md) +> 📚 **См. также:** [Оглавление документов](docs__INDEX.md) | [Анализ ошибок обновления](docs__Анализ_ошибок_обновления.md) | [Инструкция по исправлению](docs__Инструкция_по_исправлению.md) | [Глубинный анализ регистров](docs__Глубинный_анализ_регистров.md) ## Суть проблемы diff --git a/docs__Выводы_сравнения_конфигураций.md b/docs__Выводы_сравнения_конфигураций.md new file mode 100644 index 0000000..f49d695 --- /dev/null +++ b/docs__Выводы_сравнения_конфигураций.md @@ -0,0 +1,165 @@ +--- +title: Выводы сравнения конфигураций CRM3devLocal и CRM326_TEST +author: Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) +version: 1.0 +date_created: 2025-12-10 +date_modified: 2025-12-10 +show_metadata_block: true +show_index_link: true +--- + +# Выводы сравнения конфигураций CRM3devLocal и CRM326_TEST + +## Результаты анализа регистра CRM_ЖурналДокументов + +### Ключевое различие в структуре + +**Измерение "Клиент":** +- **CRM3devLocal:** Только `CatalogRef.Партнеры` +- **CRM326_TEST:** `CatalogRef.Партнеры` **ИЛИ** `CatalogRef.CRM_ПотенциальныеКлиенты` + +### Ссылки, которые станут NULL после реструктуризации + +#### 1. Измерение "Клиент" +- ✅ **Все ссылки на `CRM_ПотенциальныеКлиенты`** будут обнулены +- ✅ **Причина:** В новой конфигурации это измерение поддерживает только `Партнеры` + +#### 2. Измерение "Объект" (характеристика) +- ✅ **Ссылки на следующие удаляемые типы будут обнулены:** + - `СправочникСсылка.CRM_ПотенциальныеКлиенты` + - `СправочникСсылка.CRM_ИсточникиКонтакта` + - `СправочникСсылка.CRM_КатегорииВрача` + - `СправочникСсылка.CRM_НаучныеСтепени` + - `СправочникСсылка.CRM_ОбластьИнтересов` + - `СправочникСсылка.CRM_Обращения` + - `СправочникСсылка.CRM_Специализация` + - `СправочникСсылка.CRM_Специальность` + - `СправочникСсылка.Отделы` + - `ДокументСсылка.УдалитьCRM_Сделка` + - `ДокументСсылка.УдалитьCRM_Событие` + - `ДокументСсылка.удалитьCRM_Мероприятие` + - `ДокументСсылка.удалитьCRM_Планирование` + - `ДокументСсылка.CRM_ПланированиеПоОтделам` + +#### 3. Измерение "CRM_Интерес" +- ✅ **Ссылки на следующие удаляемые документы будут обнулены:** + - `Документ.УдалитьCRM_Сделка` + - `Документ.УдалитьCRM_Событие` + - `Документ.удалитьCRM_Мероприятие` + - `Документ.удалитьCRM_Планирование` + - `Документ.CRM_ПланированиеПоОтделам` + +## Риски нарушения уникальности + +### Критический риск #1: Обнуление измерения "Клиент" + +**Сценарий нарушения уникальности:** +``` +ДО реструктуризации: +Запись 1: ГлавнаяЗапись=true, Клиент=Партнеры.K1, Объект=X, CRM_Интерес=Y +Запись 2: ГлавнаяЗапись=true, Клиент=CRM_ПотенциальныеКлиенты.K2, Объект=X, CRM_Интерес=Y +Запись 3: ГлавнаяЗапись=true, Клиент=NULL, Объект=X, CRM_Интерес=Y + +ПОСЛЕ реструктуризации: +Запись 1: ГлавнаяЗапись=true, Клиент=Партнеры.K1, Объект=X, CRM_Интерес=Y +Запись 2: ГлавнаяЗапись=true, Клиент=NULL, Объект=X, CRM_Интерес=Y ← ОБНУЛЕНО +Запись 3: ГлавнаяЗапись=true, Клиент=NULL, Объект=X, CRM_Интерес=Y + +РЕЗУЛЬТАТ: Запись 2 и Запись 3 стали ДУБЛИКАТАМИ! +``` + +### Критический риск #2: Обнуление измерения "Объект" + +**Сценарий нарушения уникальности:** +``` +ДО реструктуризации: +Запись 1: ГлавнаяЗапись=true, Клиент=K1, Объект=CRM_ПотенциальныеКлиенты.K2, CRM_Интерес=Y +Запись 2: ГлавнаяЗапись=true, Клиент=K1, Объект=CRM_ПотенциальныеКлиенты.K3, CRM_Интерес=Y + +ПОСЛЕ реструктуризации: +Запись 1: ГлавнаяЗапись=true, Клиент=K1, Объект=NULL, CRM_Интерес=Y ← ОБНУЛЕНО +Запись 2: ГлавнаяЗапись=true, Клиент=K1, Объект=NULL, CRM_Интерес=Y ← ОБНУЛЕНО + +РЕЗУЛЬТАТ: Запись 1 и Запись 2 стали ДУБЛИКАТАМИ! +``` + +### Критический риск #3: Обнуление измерения "CRM_Интерес" + +**Сценарий нарушения уникальности:** +``` +ДО реструктуризации: +Запись 1: ГлавнаяЗапись=true, Клиент=K1, Объект=X, CRM_Интерес=УдалитьCRM_Сделка.D1 +Запись 2: ГлавнаяЗапись=true, Клиент=K1, Объект=X, CRM_Интерес=УдалитьCRM_Сделка.D2 + +ПОСЛЕ реструктуризации: +Запись 1: ГлавнаяЗапись=true, Клиент=K1, Объект=X, CRM_Интерес=NULL ← ОБНУЛЕНО +Запись 2: ГлавнаяЗапись=true, Клиент=K1, Объект=X, CRM_Интерес=NULL ← ОБНУЛЕНО + +РЕЗУЛЬТАТ: Запись 1 и Запись 2 стали ДУБЛИКАТАМИ! +``` + +### Максимальный риск: Комбинированное обнуление + +**Сценарий нарушения уникальности:** +``` +ДО реструктуризации: +Запись 1: ГлавнаяЗапись=true, Клиент=Партнеры.K1, Объект=CRM_ПотенциальныеКлиенты.K2, CRM_Интерес=УдалитьCRM_Сделка.D1 +Запись 2: ГлавнаяЗапись=true, Клиент=CRM_ПотенциальныеКлиенты.K3, Объект=CRM_ПотенциальныеКлиенты.K4, CRM_Интерес=УдалитьCRM_Сделка.D2 + +ПОСЛЕ реструктуризации: +Запись 1: ГлавнаяЗапись=true, Клиент=Партнеры.K1, Объект=NULL, CRM_Интерес=NULL +Запись 2: ГлавнаяЗапись=true, Клиент=NULL, Объект=NULL, CRM_Интерес=NULL + +Если есть еще записи с такими же значениями после обнуления - появятся дубликаты! +``` + +## Рекомендации + +### Перед реструктуризацией: + +1. ✅ **Выполнить проверку** скриптом `check_duplicates_crm_journal.bsl` +2. ✅ **Проанализировать результаты** и определить проблемные записи +3. ✅ **Удалить или скорректировать** записи с ссылками на удаляемые объекты: + - Записи с `Клиент=CRM_ПотенциальныеКлиенты.*` + - Записи с `Объект`, ссылающимся на удаляемые типы + - Записи с `CRM_Интерес`, ссылающимся на удаляемые документы + +### После реструктуризации: + +1. ✅ **Проверить уникальность** регистра запросом: +```sql +ВЫБРАТЬ + CRM_ЖурналДокументов.ГлавнаяЗапись, + CRM_ЖурналДокументов.Клиент, + CRM_ЖурналДокументов.Объект, + CRM_ЖурналДокументов.CRM_Интерес, + КОЛИЧЕСТВО(*) КАК КоличествоЗаписей +ИЗ + РегистрСведений.CRM_ЖурналДокументов КАК CRM_ЖурналДокументов +СГРУППИРОВАТЬ ПО + CRM_ЖурналДокументов.ГлавнаяЗапись, + CRM_ЖурналДокументов.Клиент, + CRM_ЖурналДокументов.Объект, + CRM_ЖурналДокументов.CRM_Интерес +ИМЕЮЩИЕ + КОЛИЧЕСТВО(*) > 1 +``` + +2. ✅ **Устранить найденные дубликаты**, если они есть + +## Итоговые выводы + +1. ✅ **Основная причина проблемы:** При реструктуризации регистра ссылки на удаляемые объекты автоматически обнуляются, что может привести к появлению дубликатов по комбинации оставшихся измерений. + +2. ✅ **Критичные измерения:** + - **Клиент** - обнуление ссылок на `CRM_ПотенциальныеКлиенты` + - **Объект** - обнуление ссылок на множество удаляемых типов + - **CRM_Интерес** - обнуление ссылок на удаляемые документы + +3. ✅ **Необходимые действия:** + - Выполнить проверку перед реструктуризацией + - Удалить проблемные записи + - Проверить уникальность после реструктуризации + +4. ✅ **Скрипт проверки готов:** `check_duplicates_crm_journal.bsl` учитывает все выявленные риски + diff --git a/docs__Глубинный_анализ_регистров.md b/docs__Глубинный_анализ_регистров.md index 34dfc9a..f66da7e 100644 --- a/docs__Глубинный_анализ_регистров.md +++ b/docs__Глубинный_анализ_регистров.md @@ -10,7 +10,7 @@ show_index_link: true # Глубинный анализ регистров на нарушение уникальности данных -> 📚 **См. также:** [Оглавление документов](INDEX.md) | [Анализ ошибок обновления](Анализ_ошибок_обновления.md) | [ФИНАЛЬНЫЙ ОТЧЕТ](ФИНАЛЬНЫЙ_ОТЧЕТ_Анализ_регистров.md) | [Итоговый отчет](Итоговый_отчет_анализа_регистров.md) +> 📚 **См. также:** [Оглавление документов](docs__INDEX.md) | [Анализ ошибок обновления](docs__Анализ_ошибок_обновления.md) | [ФИНАЛЬНЫЙ ОТЧЕТ](docs__ФИНАЛЬНЫЙ_ОТЧЕТ_Анализ_регистров.md) | [Итоговый отчет](docs__Итоговый_отчет_анализа_регистров.md) ## Цель анализа diff --git a/docs__Дорожная_карта_миграции_CRM3_v0.1.md b/docs__Дорожная_карта_миграции_CRM3_v0.1.md new file mode 100644 index 0000000..12ced6f --- /dev/null +++ b/docs__Дорожная_карта_миграции_CRM3_v0.1.md @@ -0,0 +1,307 @@ +# Дорожная карта модернизации CRM3 + +Версия **0.1** (предварительная). Дата выгрузки в каталог проекта `docs/`: 2026-05-12. + +Источник снимка: рабочий план Cursor — `c:\Users\kma\.cursor\plans\миграция_crm3_roadmap_c76af973.plan.md`. Этот markdown **не обновляется автоматически** при правках плана в IDE; для новой ревизии повторите выгрузку или отредактируйте файл вручную. + +**Дополнение к версии 0.1 (2026-05-12):** в целевой конфигурации `crm3-26-promo` реализация **НДС 22%** входит в **типовой контур в полном объёме**; **перенос логики НДС 22 из старой системы / расширения в `crm3-26-promo.rhana` не требуется**. В объёме миграции остаются проверки обмена с Бухгалтерией КОРП и сквозных сценариев (см. разд. 2.2, 8, 13). + +Ссылки на документы и код ниже даны как в исходном плане (абсолютные пути к репозиторию `crm3-26` на диске разработки). + +--- + +**Нумерация для ссылок:** верхний уровень — целые разделы `1`…`13` (`1`–`2` — контекст и источники; `3`…`10` — этапы внедрения, в заголовке также «Этап 1»…«Этап 8»; `11` — операционный план; `12` — привязка комплекта печати к этапам плана; `13` — риски). Вложенность обозначается как **`4.2.1`**: раздел `4`, подраздел `2`, при необходимости далее пункты списка нумеруются вручную в тексте ссылок («п. 1», «п. 2») внутри подраздела. + +## 1. Контекст и зафиксированные решения +- Исходная система: `@crm3-dev` + расширения `@crm3-dev.docs`, `@crm3-dev.rhana`, `@crm3-dev.upd5b`. +- Целевая система: `@crm3-26-promo` + расширение `@crm3-26-promo.rhana`. +- Сопоставление с эталоном: `@crm302228-etalon` для выделения нетиповых доработок. +- Принято: + - Себестоимость: **переходный учёт себестоимости** — в целевой базе на ограниченный период используется **перенесённый из старой системы** доработанный механизм учёта себестоимости, затем выполняется **переход на типовой** механизм новой конфигурации по согласованным критериям. + - **Передача данных, первая волна:** НСИ + `ЗаказКлиента` + `РеализацияТоваровУслуг` (без ЭДО и УПД в первой волне); ведётся с **матрицей объектов по разделам учёта** (см. разд. 7), а не только настройкой универсального формата. + - В объем миграции входят **доработка по кредит-ноте** и **доработка по купонам** — перенос логики и связанных объектов в `crm3-26-promo.rhana`, приемка по согласованным сценариям. + - В объем миграции входят **печать комплекта документов** и **доработки складского учета**, зафиксированные в аналитике по складу и печати — перенос в `crm3-26-promo.rhana` с приемкой по печатным и складским сценариям. + - **Качество учёта в исходной базе:** допускается, что **складской и финансовый учёт** части остатков **по номенклатурам** накопил **ошибки**, либо **менялся порядок учёта** при уже существующих остатках; перенос «как есть» без **предварительной санации и согласованных правил** (что исправляем до среза, что переносим с актом расхождений, что выводим из оборота) — риск для целевой системы. Это явно учитывается в **разд. 6** (остатки) и в матрице проверок. + - **Целевая политика учёта:** в `crm3-26-promo` предполагается **полное включение посерийного учёта для всех номенклатур** — заложить **сверку и дозаполнение** серийных данных при переносе остатков и НСИ, сценарии, где в источнике серия не велась или велась выборочно. + - **Маркировка в целевой системе:** планируется ведение учёта **маркированного товара** (косметика, БАДы, лекарственные препараты) — заложить в объём **готовность НСИ и документооборота** под маркировку (виды продукции, **коды маркировки** и штрихкоды по регламенту конфигурации, сценарии приёмки и отгрузки), согласование с передачей первой волны и с УПД/ЭДО во второй волне при необходимости. + - **НДС 22%:** в `crm3-26-promo` поддержка ставки и связанных механизмов **реализована типовой конфигурацией в полном объёме** — **не переносить** как отдельную доработку в `crm3-26-promo.rhana`; учитывать только **регрессию** документооборота и обмена (в т.ч. с Бухгалтерией КОРП), если контур остаётся в эксплуатации. + - **Настройки информационной базы (уровень «1С:Предприятие»):** фиксируются **парным образом** для **исходной** рабочей базы (`crm3-dev` + согласованный состав расширений) и **целевой** (`crm3-26-promo` + `crm3-26-promo.rhana`) по **одному и тому же чек-листу разделов настроек** (снимок на дату, с указанием **версий конфигурации и расширений** в шапке каждого снимка). Целевая ИБ **выравнивается** с рабочей там, где это требуется для эксплуатации; где политика **намеренно** отличается (новая типовая, маркировка, полный посерийный учёт и т.д.) — строка в протоколе. Утверждаются **сравнительный анализ** и **протокол различий** — основа для **преобразования** входящих остатков и документов переходного периода. Для съёма и сличения используются **внешние обработки** (отдельные сборки под исходную и целевую конфигурацию; **окно различий** — в обработке целевой), плюс отдельный контур по **эффективным настройкам учёта номенклатуры** для номенклатур с **остатками и оборотами за период** (см. разд. 4). + +## 2. Источники анализа + +### 2.1. Ядро (документы) +- [d:/SynologyDrive/projects_syn/crm3-26/docs/ТЗ_3_Внедрение_формы_УПД_в_текущую_рабочую_базу_2026-05-05.md](d:/SynologyDrive/projects_syn/crm3-26/docs/ТЗ_3_Внедрение_формы_УПД_в_текущую_рабочую_базу_2026-05-05.md) +- [d:/SynologyDrive/projects_syn/crm3-26/docs/Сводка_переноса_и_настройки_актуальной_формы_УПД.md](d:/SynologyDrive/projects_syn/crm3-26/docs/Сводка_переноса_и_настройки_актуальной_формы_УПД.md) +- [d:/SynologyDrive/projects_syn/crm3-26/docs/Анализ_доработок_синхронизации_ЗаказКлиента.md](d:/SynologyDrive/projects_syn/crm3-26/docs/Анализ_доработок_синхронизации_ЗаказКлиента.md) +- [d:/SynologyDrive/projects_syn/crm3-26/docs/Анализ_доработок_синхронизации_РеализацияТоваровУслуг.md](d:/SynologyDrive/projects_syn/crm3-26/docs/Анализ_доработок_синхронизации_РеализацияТоваровУслуг.md) +- [d:/SynologyDrive/projects_syn/crm3-26/docs/Анализ_доработок_складского_учета_и_печати_документов.md](d:/SynologyDrive/projects_syn/crm3-26/docs/Анализ_доработок_складского_учета_и_печати_документов.md) +- [d:/SynologyDrive/projects_syn/crm3-26/docs/Выводы_сравнения_конфигураций.md](d:/SynologyDrive/projects_syn/crm3-26/docs/Выводы_сравнения_конфигураций.md) +- [d:/SynologyDrive/projects_syn/crm3-26/docs/Анализ_применения_КредитНота (v1.1).md](d:/SynologyDrive/projects_syn/crm3-26/docs/Анализ_применения_КредитНота%20(v1.1).md) +- [d:/SynologyDrive/projects_syn/crm3-26/docs/Анализ_применения_реквизита_Купон.md](d:/SynologyDrive/projects_syn/crm3-26/docs/Анализ_применения_реквизита_Купон.md) + +### 2.2. Дополнительные источники из docs (данные, CRM, роли, обновление, интеграции) + +Имеет смысл явно заложить в объём миграции и в матрицу проверок (см. разд. 3, 6–8 и разд. 13): + +- **Регистр `CRM_ЖурналДокументов` и смена модели CRM:** [Выводы сравнения конфигураций](d:/SynologyDrive/projects_syn/crm3-26/docs/Выводы_сравнения_конфигураций.md), [Анализ механизма перезаполнения CRM_ЖурналДокументов](d:/SynologyDrive/projects_syn/crm3-26/docs/Анализ_механизма_перезаполнения_CRM_ЖурналДокументов.md), [Анализ рисков неуникальности](d:/SynologyDrive/projects_syn/crm3-26/docs/Анализ_рисков_неуникальности_CRM_ЖурналДокументов.md), [Проблема неуникальности](d:/SynologyDrive/projects_syn/crm3-26/docs/Проблема_неуникальности_регистра_CRM_ЖурналДокументов.md), [Сводка рисков неуникальности](d:/SynologyDrive/projects_syn/crm3-26/docs/Сводка_рисков_неуникальности.md) — обнуление измерений при реструктуризации, риск **дубликатов** и нарушения уникальности; при необходимости сценарий **перезаполнения** журнала после миграции метаданных. +- **Роли и доступы в целевой системе:** [Роли для включения в новой системе](d:/SynologyDrive/projects_syn/crm3-26/docs/Роли_для_включения_в_новой_системе.md), [ФИНАЛЬНЫЙ СПИСОК РОЛЕЙ ДЛЯ ВКЛЮЧЕНИЯ](d:/SynologyDrive/projects_syn/crm3-26/docs/ФИНАЛЬНЫЙ_СПИСОК_РОЛЕЙ_ДЛЯ_ВКЛЮЧЕНИЯ.md), [Сверка ролей профиля](d:/SynologyDrive/projects_syn/crm3-26/docs/Сверка_ролей_профиля.md), [Сверка ролей с учетом переименований](d:/SynologyDrive/projects_syn/crm3-26/docs/Сверка_ролей_с_учетом_переименований.md), [Инструкция добавления ролей в профиль](d:/SynologyDrive/projects_syn/crm3-26/docs/Инструкция_добавления_ролей_в_профиль.md) — иначе «тихие» отказы при передаче данных, печати и закрытии месяца. +- **Накатывание типовой конфигурации и ошибки обновления:** [Анализ ошибок обновления](d:/SynologyDrive/projects_syn/crm3-26/docs/Анализ_ошибок_обновления.md), [Список объектов для удаления из подсистем](d:/SynologyDrive/projects_syn/crm3-26/docs/Список_объектов_для_удаления_из_подсистем.md), [Инструкция по исправлению](d:/SynologyDrive/projects_syn/crm3-26/docs/Инструкция_по_исправлению.md) — итеративный путь применения обновлений; связь с составом подсистем и ссылками на удаляемые объекты. +- **НДС 22 и обмен с Бухгалтерией КОРП:** [Анализ обмена НДС 22 с Бухгалтерией КОРП](d:/SynologyDrive/projects_syn/crm3-26/docs/Анализ_обмена_НДС_22_с_Бухгалтерией_КОРП.md), [Реализация переноса НДС 22](d:/SynologyDrive/projects_syn/crm3-26/docs/Реализация_переноса_НДС_22.md) (актуально для **исходной** конфигурации и обмена), [Проверка ставки НДС 22](d:/SynologyDrive/projects_syn/crm3-26/docs/Проверка_ставки_НДС_22.md), [Анализ обработчиков обновления НДС 22](d:/SynologyDrive/projects_syn/crm3-26/docs/Анализ_обработчиков_обновления_НДС_22.md) — в целевой `crm3-26-promo` **перенос правил НДС 22 в расширение не планируется** (типовая реализация в полном объёме); при сохранении обмена с БК — **регрессия** согласованных сценариев и документация по разрывам на стороне БК/транспорта, если контур остаётся в эксплуатации. +- **Серии и ввод остатков (связь с полным посерийным учётом в целевой):** [Анализ привязок серий номенклатур к видам номенклатур](d:/SynologyDrive/projects_syn/crm3-26/docs/Анализ_привязок_серий_номенклатур_к_видам_номенклатур.md) — логика отбора серий при вводе остатков и риски «лишних» серий без привязки к остаткам. +- **Отчётность по регистрам (углубление матрицы):** [Итоговый отчет анализа регистров](d:/SynologyDrive/projects_syn/crm3-26/docs/Итоговый_отчет_анализа_регистров.md), [ФИНАЛЬНЫЙ ОТЧЕТ Анализ регистров](d:/SynologyDrive/projects_syn/crm3-26/docs/ФИНАЛЬНЫЙ_ОТЧЕТ_Анализ_регистров.md) — в дополнение к [Глубинный анализ регистров](d:/SynologyDrive/projects_syn/crm3-26/docs/Глубинный_анализ_регистров.md). +- **Кредит-нота (обработки):** [Анализ переноса обработки КредитНотаЗаПериод](d:/SynologyDrive/projects_syn/crm3-26/docs/Анализ_переноса_обработки_КредитНотаЗаПериод.md) — при необходимости отдельно от документа «Кредит-нота». +- **Навигация по всем отчётам:** [INDEX / оглавление](d:/SynologyDrive/projects_syn/crm3-26/docs/INDEX.md). + + +## 3. Этап 1 внедрения: сводка границ проекта и заморозка объёма (1 неделя) + + + +> **Комментарий к разд. 3:** эта неделя — **не разработка и не перенос кода** в 1С, а **согласование рамок миграции**. **«Сводка границ»** означает: зафиксировать, что **входит** в первый промышленный запуск и что **сознательно откладывается** во вторую волну или после запуска; от каких документов и решений исходим; какие **критерии готовности** на уровне проекта. **«Заморозка объёма»** означает: после утверждения перечня работ новые требования «обязательно сейчас» **не подмешиваются** без пересмотра сроков и рисков (или только как вторая волна с явной пометкой); фиксируются **ответственные по направлениям**. Зачем: чтобы не разъезжался объём до этапов переноса, остатков и **передачи данных**. + +### 3.1. Работы по границам и перечню доработок +- Зафиксировать единый объем миграции: что входит в промышленный запуск, что переносится во **вторую и последующие волны**. +- Утвердить перечень критичных переносимых доработок в `crm3-26-promo.rhana`: + - **контур УПД (`upd5b`)** — не «слепой» перенос: оформить как отдельный пакет в `crm3-26-promo.rhana` **только после сверки** с **текущей реализацией в целевой конфигурации** `crm3-26-promo` (типовые макеты и модули УПД, счет-фактура, обработка общих форм печати и т.п.). Сравнить с исходниками `crm3-dev.upd5b` и документацией ([ТЗ_3](d:/SynologyDrive/projects_syn/crm3-26/docs/ТЗ_3_Внедрение_формы_УПД_в_текущую_рабочую_базу_2026-05-05.md), [сводка УПД](d:/SynologyDrive/projects_syn/crm3-26/docs/Сводка_переноса_и_настройки_актуальной_формы_УПД.md)); зафиксировать разрыв «уже есть в целевой / нужно перенести / заменить типовым»; избежать дублирования и конфликтов имён и логики при слиянии в одно расширение; + - **передача данных и обмен из `rhana`** — исходная рабочая конфигурация **сильно кастомная**: опираться **только** на типовые правила плана **«Синхронизация данных через универсальный формат»** недостаточно. Заложить: **(1)** доработанный модуль **«Менеджер обмена через универсальный формат»** и сценарии плана обмена как возможный **транспорт или базу**, **(2)** обязательную **матрицу по разделам учёта** — перечни **справочников, документов, регистров накопления и регистров сведений**, которые затрагивают передаваемые объекты и **проведение** в целевой базе (для финальной проверки полноты переноса, отсутствия «дыр» в движениях и согласованности с кастомным контуром, в т.ч. себестоимостью). Матрицу согласовать с аналитикой по регистрам (см. [Глубинный анализ регистров](d:/SynologyDrive/projects_syn/crm3-26/docs/Глубинный_анализ_регистров.md) при необходимости). Прочие интеграции в `rhana` (внешние системы и т.д.) — только если явно включены в объём **разд. 3**; + - критичные печатные и операционные доработки продаж и отгрузки; + - **кредит-нота** — перенос доработанного функционала и согласование с обменом и продажами; + - **купоны** — перенос доработки по реквизиту и связанной логике (заказы, реализации, отчеты по необходимости); + - **печать комплекта документов и складской учет** — перенос по [аналитике по складу и печати](d:/SynologyDrive/projects_syn/crm3-26/docs/Анализ_доработок_складского_учета_и_печати_документов.md) (обработки, команды печати, связь с логистикой). + +### 3.2. Документация из docs и ответственные + +- Учесть по **документации в docs** (вне перечня кода расширения): **(а)** миграцию данных и **уникальность** регистра сведений **`CRM_ЖурналДокументов`** при смене типов измерений и обнулении ссылок — см. **разд. 2.2**; **(б)** **роли и профили** в `crm3-26-promo` ([Роли для включения…](d:/SynologyDrive/projects_syn/crm3-26/docs/Роли_для_включения_в_новой_системе.md) и смежные); **(в)** **итерации обновления** типовой базы и чистку подсистем ([Анализ ошибок обновления](d:/SynologyDrive/projects_syn/crm3-26/docs/Анализ_ошибок_обновления.md), [Список объектов для удаления из подсистем](d:/SynologyDrive/projects_syn/crm3-26/docs/Список_объектов_для_удаления_из_подсистем.md)); **(г)** при сохранении обмена с **Бухгалтерией КОРП** — контур **НДС 22**: в целевой конфигурации опора на **типовую** реализацию; **перенос правил НДС 22 в `crm3-26-promo.rhana` не требуется** — регрессия и согласование с БК по [анализу обмена НДС 22 с Бухгалтерией КОРП](d:/SynologyDrive/projects_syn/crm3-26/docs/Анализ_обмена_НДС_22_с_Бухгалтерией_КОРП.md); **(д)** **серии при вводе остатков** и виды номенклатуры — [Анализ привязок серий…](d:/SynologyDrive/projects_syn/crm3-26/docs/Анализ_привязок_серий_номенклатур_к_видам_номенклатур.md) в связке с **разд. 6** и полным посерийным учётом. +- Сформировать реестр ответственных по направлениям: данные, обмен, себестоимость, печать, тестирование, переход в промышленную эксплуатацию. + +### 3.2.1. Кто исполнитель по пунктам плана (только роли; без конкретных людей) + +**Решение на текущий момент:** **имена и ФИО в текст дорожной карты не вносятся**; достаточно **ролей и потоков** и таблицы соответствия ниже. Реестр (**разд. 3.2**) может существовать как перечень направлений и ролей **без привязки к лицам**, пока заказчик не потребует явное закрепление — тогда ФИО оформляются **вне** этого файла плана (отдельный реестр, приказ, матрица RACI и т.п.). + +**Идея:** для каждого **разд. `3`…`10`** при появлении исполнительской дисциплины задаётся **один владелец потока** — ответственный за срок, артефакты и эскалации; **соисполнители** перечисляются рядом. В переписке и задачах удобно ссылаться: «исполнитель по **разд. 7** — владелец потока *обмен*». + +**Мэппинг разделов плана на потоки реестра** (конкретные люди, если понадобятся, назначаются **в реестре вне плана**, не обязательно в этом документе): + +| Раздел плана | Поток(и) из реестра **3.2** (типовой исполнитель по смыслу) | +|--------------|-------------------------------------------------------------| +| **3** | Руководитель проекта + заказчик (рамки, freeze); при необходимости секретариат протокола | +| **4** | Администратор ИБ / методолог учёта (съём, протокол) + разработчик 1С (внешние обработки съёма и сравнения) | +| **5** | Разработчик 1С (перенос кода) + владелец учёта (критерии отключения переходного контура) | +| **6** | Методолог склад/ГФУ + владелец качества данных в источнике + разработчик/интегратор (механизм загрузки) | +| **7** | Владелец обмена + разработчик 1С (доработки транспорта) + **владельцы предметных областей** по строкам матрицы учёта | +| **8** | Тестирование (QA) + владельцы направлений (UAT-подпись) | +| **9** | Руководитель проекта + администратор ИБ + владелец эксплуатации (cutover) | +| **10** | Линия поддержки + координатор второй волны (по решениям **разд. 3**) | + +**Разд. `11`–`13`:** владелец **артефактов и спецификаций** (**разд. 11**) — как правило руководитель проекта совместно с техническим лидом 1С; содержание **разд. 12** согласуют владельцы **склада и продаж**; реестр рисков (**разд. 13**) ведёт руководитель проекта с привлечением владельцев потоков по строкам риска. + +### 3.3. Проверка: ответственный на складе для печати с учётом номенклатуры + +- В старой системе доработка **есть**: подбор материально ответственного лица (МОЛ) с учетом **номенклатуры из документа** и табличной части **«МОЛ»** справочника **«Склады»** (в т.ч. строка с пустой номенклатурой как запасной вариант). +- Реализация в расширении: функции `р_ПолучитьОтветственногоПоСкладу`, `р_ПолучитьОтветственногоПоСкладу_адаптация` в модуле [ПродажиСервер (расширение)](d:/SynologyDrive/projects_syn/crm3-26/crm3-dev.rhana/src/CommonModules/ПродажиСервер/Ext/Module.bsl); вызов при печати и в документе — [РеализацияТоваровУслуг, менеджер](d:/SynologyDrive/projects_syn/crm3-26/crm3-dev.rhana/src/Documents/РеализацияТоваровУслуг/Ext/ManagerModule.bsl), [РеализацияТоваровУслуг, объект и форма](d:/SynologyDrive/projects_syn/crm3-26/crm3-dev.rhana/src/Documents/РеализацияТоваровУслуг/Ext/ObjectModule.bsl). +- Метаданные табличной части «МОЛ» с реквизитом «Номенклатура»: [Склады в основной конфигурации](d:/SynologyDrive/projects_syn/crm3-26/crm3-dev/src/Catalogs/Склады.xml) (и доработки расширения в [Склады в rhana](d:/SynologyDrive/projects_syn/crm3-26/crm3-dev.rhana/src/Catalogs/Склады.xml)). +- В целевой конфигурации типовая функция [ПродажиСервер.ПолучитьОтветственногоПоСкладу](d:/SynologyDrive/projects_syn/crm3-26/crm3-26-promo/src/CommonModules/ПродажиСервер/Ext/Module.bsl) принимает **только склад** и опирается на типовой подбор ответственного по складу — **без разбора по строкам товара и без табличной части «МОЛ» с номенклатурой** в выгрузке справочника «Склады» целевой версии. +- **Вывод для плана:** заложить отдельный шаг сравнения (типовой реквизит «Ответственный» на складе и прочие типовые настройки против текущей логики по МОЛ и номенклатуре). Если типового поведения недостаточно — перенос минимального расширения (подбор для печати и заполнения реквизитов отгрузки) в `crm3-26-promo.rhana`; если достаточно — отказ от доработки с миграцией данных в типовую модель и регрессией печатных форм. + +## 4. Этап 2 внедрения: настройка целевой ИБ под рабочую и протокол различий на уровне «1С:Предприятие» (1–2 недели, частично параллельно **разд. 5**) + +### 4.1. Цель и постановка + +**Зачем:** понимание **как вносить и преобразовывать данные** (входящие остатки, документы переходного периода) из старой рабочей базы в новую, готовящуюся к **опытной и промышленной** эксплуатации, невозможно свести только к сравнению **конфигураций** в EDT/конфигураторе. Нужна сопоставимость и прозрачность на уровне **настроек информационной базы** в режиме **«1С:Предприятие»** — и при этом учёт того, что **исходная** и **целевая** системы могут отличаться **версией типовой платформы и расширений**: один и тот же раздел настроек в обеих ИБ должен быть **явно снят и сопоставлен**, а не предположен «по умолчанию как в новой версии». + +**Обе ИБ в одном контуре работ:** для **исходной** (рабочая `crm3-dev` + фактически подключённые расширения) и для **целевой** (`crm3-26-promo` + целевое расширение) выполняется **одинаковая процедура съёма** значений по согласованному перечню областей: функциональность, параметры **организаций** и **подразделений**, **учётные политики** (в т.ч. по организациям/складам по правилам конфигурации), ключевые **константы** и **регистры сведений** настроек, режимы учёта товаров (**партионный/посерийный**, складские политики), **НДС**, нумерация и префиксы, валюты, параметры взаиморасчётов и иные параметры, влияющие на **проведение** и интерпретацию переносимых данных. + +### 4.2. Протокол различий и связь с остатками и первой волной + +- Согласовать **единый чек-лист разделов настроек** и способ фиксации значений в **каждой** ИБ (отчёты конфигурации, выгрузки регистров сведений, ручной чек-лист по формам — в рамках регламента проекта). Результат — **два снимка на одну дату (или согласованную пару дат)**: «Исходная ИБ» и «Целевая ИБ»; в шапке каждого снимка — **имя базы**, **версия конфигурации**, **список и версии расширений**, ответственный за съём. +- По исходной ИБ зафиксировать **эталон рабочей эксплуатации** (продуктив или согласованная копия на дату); по целевой — состояние **до** и **после** выравнивания (чтобы в протоколе было видно, что меняли в целевой намеренно). +- Выполнить **настройку целевой** базы до **эквивалентности по смыслу** с рабочей там, где это требуется; где целенаправленно **меняют** политику под новую версию типовой или целевые требования (маркировка, полный посерийный учёт и т.д.) — явно как **намеренное отличие** с обоснованием в протоколе. +- Подготовить **сравнительный анализ** «значение в **исходной** ИБ ↔ значение в **целевой** ИБ» и утвердить **протокол различий** (живой документ с версиями при обновлениях типовой или смене политики). Минимальные поля строки: *область / объект настройки*, *значение в исходной ИБ*, *значение в целевой ИБ (до/после выравнивания)*, *решение* (выровнять целевую / оставить различие / отложить), *влияние на входящие остатки и на передачу/проведение документов переходного периода*, *правило преобразования данных при загрузке* (если нужно), *ответственный*, *срок*. При расхождении из-за **разных версий** типовой — отдельная колонка или вложенная заметка «ограничение версии / обходной путь». +- Связать протокол с **разд. 6** (остатки) и **разд. 7** (первая волна): правила выгрузки/загрузки и преобразований ссылаются на строки протокола; при конфликте с **матрицей по регистрам** — явное разрешение в протоколе или в журнале изменений проекта. +- Перед опытной и перед промышленной эксплуатацией — **контрольная сверка** критичных пунктов протокола **в обеих** ИБ или подтверждение, что исходная не менялась по согласованным пунктам, а целевая соответствует утверждённому снимку (дрейф настроек после обновлений или ручных правок). + +### 4.3. Чек-лист разделов настроек (одинаково для исходной и целевой ИБ) + +Ниже — ориентир перечня; конкретные пункты уточняются под редакцию УТ/CRM в **обеих** версиях конфигурации и дополняются при приёмке: + +- функциональность (включённые опции), раздельные сценарии если в целевой версии пункт переименован или разнесён по формам; +- организации, подразделения, контактная/юридическая обвязка при необходимости для проведения; +- учётная политика по организациям (и иные политики по правилам типовой: склад, финансы); +- параметры НДС и сопутствующие сведения (в т.ч. НДС 22 при наличии в контуре); +- валюты, курсы (если настройка влияет на перенос); +- префиксы, нумераторы, дата запрета изменения данных (если используется); +- складской учёт: ордерность, FEFO/серии, ордерные склады — согласованно с политикой полного посерийного учёта в целевой; +- взаиморасчёты, порядок закрытия месяца (если на уровне настроек ИБ задаётся поведение, влияющее на перенос); +- параметры интеграций на уровне ИБ (если есть), влияющие на обмен и проведение. + +### 4.4. Внешние обработки: снимок настроек ИБ и сравнение + +- Разработать **две внешние обработки** под **разные конфигурации** (исходная рабочая цепочка `crm3-dev*` и целевая `crm3-26-promo*`): в каждой соответствующей ИБ обработка выполняет **выгрузку текущего состояния** согласованного перечня настроек уровня **«1С:Предприятие»** в **единый согласованный формат файла** (версия схемы выгрузки, дата/время съёма, версия конфигурации и расширений в метаданных файла). +- В **обработке, собираемой под целевую** конфигурацию: импорт файла снимка **исходной** ИБ, получение снимка **текущей целевой** ИБ, **наглядное отображение различий** (таблица, фильтры, группировки), вывод в **протокол различий**; при необходимости — пометки полей, доступных только в одной из версий типовой. +- Зафиксировать **хранение** файлов снимков (каталог проекта, регламент доступа) и **кто имеет право** запуска в продуктивных/копийных базах. + +### 4.5. Эффективные настройки учёта номенклатуры по остаткам и оборотам за период + +- Помимо общего снимка ИБ: отдельная выгрузка **настроек учёта номенклатуры**, **фактически применяемых** к номенклатурам, по которым на **согласованную дату** есть **остатки** и/или за **согласованный период** есть **обороты** (алгоритм отбора номенклатур и вычисления «эффективной» настройки с учётом иерархии видов/общих правил конфигурации — описать в спецификации обработки; учесть доработки исходной и целевой). +- **Обработка исходной** конфигурации: выгрузка в **тот же контейнер формата**, что и для целевой, чтобы поля сопоставлялись автоматически. +- **Обработка целевой** конфигурации: **сравнительный анализ** по номенклатурам из пересечения множеств (или по полному списку с пометкой «только в источнике/только в целевой»); результаты **встраиваются** в проектирование **выгрузки и загрузки остатков** по номенклатуре, в сценарии **переходного периода** и в **выгрузку документов** из исходной в целевую (связь с **разд. 6** и **7** и с правилами преобразования в протоколе). + +## 5. Этап 3 внедрения: переходный учёт себестоимости — перенос минимального контура из старой системы (2–3 недели) +- Выделить минимальный переносимый контур `rh_ТоварыНаСкладахСебестоимость` и связанные вызовы. +- Не расширять объём **переходного учёта себестоимости**: переносим только то, что нужно для непрерывности работы. +- Заложить критерии **завершения** переходного учёта себестоимости и перехода на типовой механизм: + - согласованный период параллельной сверки; + - контрольные точки отключения доработанного механизма. +- **Ключевые исходные файлы в коде** (от них отталкиваемся при переносе и проверках): + - [d:/SynologyDrive/projects_syn/crm3-26/crm3-dev/src/CommonModules/rh_ТоварыНаСкладахСебестоимость/Ext/Module.bsl](d:/SynologyDrive/projects_syn/crm3-26/crm3-dev/src/CommonModules/rh_ТоварыНаСкладахСебестоимость/Ext/Module.bsl) + - [d:/SynologyDrive/projects_syn/crm3-26/crm3-dev/src/AccumulationRegisters/rh_ТоварыНаСкладахСебестоимость.xml](d:/SynologyDrive/projects_syn/crm3-26/crm3-dev/src/AccumulationRegisters/rh_ТоварыНаСкладахСебестоимость.xml) + +## 6. Этап 4 внедрения: формирование и перенос остатков на управляемую дату (1–2 недели) +- Опираться на актуальный **протокол различий настроек ИБ** (**разд. 4**) и на **сравнение эффективных настроек учёта номенклатуры** из внешних обработок: согласованные режимы и расхождения по номенклатуре — вход в правила **ввода остатков** и **преобразования** при загрузке. +- Отдельный механизм установки **даты среза** с возможностью **быстро сменить дату** без переписывания алгоритмов. +- Выгрузка из `crm3-dev` и загрузка в `crm3-26-promo` через документы ввода остатков (или согласованный альтернативный способ по разделам учета). +- Обязательные разделы остатков: + - складские остатки; + - остатки товаров организаций; + - финансовые остатки; + - бронирование товаров и доступные остатки; + - себестоимость по доработанному функционалу (пока действует **переходный учёт себестоимости**); + - прочие остатки после дополнительного анализа регистров накопления. +- Контрольные сверки до и после загрузки по каждому разделу учета и общий акт расхождений. +- **Учёт расхождения с источником:** в `crm3-dev` возможны **искажённые** складские/финансовые остатки по отдельным номенклатурам, **историческая смена порядка учёта** при неизменных физических остатках и иные **несоответствия** целевой модели; до и после ввода остатков — отдельный перечень **номенклатур/партий/серий** под усиленную проверку, протокол решений (исправление в источнике, корректирующие документы, перенос с оговоркой). +- **Посерийный учёт в целевой:** при полном посерийном режиме для всех номенклатур — проверить, что ввод остатков и последующая **реализация** не блокируются пустыми сериями; при необходимости — этап **нормализации серий** в источнике или согласованные правила заполнения при переносе. +- **Разд. 6** — **обязательное условие** перед включением постоянной **передачи данных** (первой волны). + +## 7. Этап 5 внедрения: передача данных, первая волна (2–3 недели) +- Учитывать **протокол различий настроек ИБ** (**разд. 4**) и **расхождения эффективных настроек номенклатуры** при правилах сопоставления и преобразования реквизитов при передаче (в т.ч. НДС, склад, серии, организация, вид номенклатуры), чтобы проведение в целевой базе соответствовало **заявленной** эксплуатационной модели. +- Односторонний поток `crm3-dev -> crm3-26-promo` по объёму первой волны: + - НСИ; + - `ЗаказКлиента`; + - `РеализацияТоваровУслуг`. +- **Важно:** из-за сильной кастомизации исходной конфигурации **нельзя ограничиться** надеждой на «универсальные правила обмена как есть». Нужны **явные перечни метаданных по разделам учёта** (справочники, документы, регистры накопления и сведений), вовлечённые в передачу и **проведение** этих объектов в целевой базе; по ним выполняется финальная проверка полноты данных и движений (в т.ч. после тестового проведения). В матрицу включить объекты и сценарии **посерийного учёта** и **маркировки** (косметика, БАДы, ЛП) в объёме, принятом для целевой системы. +- Техническая реализация: на выбор или в комбинации — план обмена через универсальный формат **с существенными доработками** в `crm3-26-promo.rhana` / переносом логики из `crm3-dev.rhana` (**«Менеджер обмена через универсальный формат»**), либо дополнительные регламентные или обменные обработки, если универсальный контур не покрывает кастом; решение фиксируется в спецификации первой волны. +- Обязательные правила передачи: + - повторная выгрузка одних и тех же данных **не создает дублей** (по уникальному идентификатору объекта и ключевым свойствам); + - повторная доставка без дублирования записей; + - журнал ошибок и повторные попытки при сбоях. +- **Ключевые исходные файлы в коде** для настройки обмена (ориентир; итоговая схема — по матрице объектов): + - [d:/SynologyDrive/projects_syn/crm3-26/crm3-dev/src/ExchangePlans/СинхронизацияДанныхЧерезУниверсальныйФормат.xml](d:/SynologyDrive/projects_syn/crm3-26/crm3-dev/src/ExchangePlans/СинхронизацияДанныхЧерезУниверсальныйФормат.xml) + - [d:/SynologyDrive/projects_syn/crm3-26/crm3-26-promo/src/ExchangePlans/СинхронизацияДанныхЧерезУниверсальныйФормат.xml](d:/SynologyDrive/projects_syn/crm3-26/crm3-26-promo/src/ExchangePlans/СинхронизацияДанныхЧерезУниверсальныйФормат.xml) + - [d:/SynologyDrive/projects_syn/crm3-26/crm3-dev.rhana/src/CommonModules/МенеджерОбменаЧерезУниверсальныйФормат/Ext/Module.bsl](d:/SynologyDrive/projects_syn/crm3-26/crm3-dev.rhana/src/CommonModules/МенеджерОбменаЧерезУниверсальныйФормат/Ext/Module.bsl) + +## 8. Этап 6 внедрения: интеграционное тестирование и приёмка пользователями (2 недели) +- Сквозные сценарии: + - создание и изменение НСИ в старой базе; + - движение `ЗаказКлиента` и `РеализацияТоваровУслуг` в новой; + - сверка ключевых реквизитов и сумм; + - **посерийный учёт:** отгрузка и возвраты с обязательным заполнением серий там, где в целевой конфигурации это требуется для всех номенклатур; + - **маркировка:** приёмка и отгрузка маркированной продукции (косметика, БАДы, ЛП) по согласованному перечню номенклатуры и регламенту целевой конфигурации; + - оформление и проведение по **кредит-ноте**, сверка с типовыми и доработанными связями; + - сценарии с **купоном** в заказе и отгрузке (и иные согласованные точки применения); + - **печать комплекта документов** и складские сценарии из перенесенной доработки; + - печать отгрузки с проверкой **подписи материально ответственного** при разных складах и наборах номенклатуры (в т.ч. после решения по типовому или расширенному подбору МОЛ). + - **роли и профили (не под полными правами администратора):** те же сценарии первой волны и печати выполняются под **целевым производственным профилем** пользователя; нет скрытых отказов в доступе к обмену, проведению, печати и закрытию периода; сверка с чек-листом [Роли для включения в новой системе](d:/SynologyDrive/projects_syn/crm3-26/docs/Роли_для_включения_в_новой_системе.md) и согласованным финальным списком ролей профиля. + - **регистр сведений `CRM_ЖурналДокументов`:** после загрузки/обмена и проведения документов первой волны — **уникальность** записей (нет дублей по ключу уникальности), согласованность с отображением в CRM-интерфейсах и отчётах; при смене метаданных или обнаружении неуникальности — сценарий **перезаполнения** по [аналитике перезаполнения](d:/SynologyDrive/projects_syn/crm3-26/docs/Анализ_механизма_перезаполнения_CRM_ЖурналДокументов.md) и повторная приёмка выборкой документов. + - при сохранении обмена с **Бухгалтерией КОРП** — регрессия **НДС 22** на **типовой** реализации в `crm3-26-promo` (ставки, проведение, загрузка в БК) по согласованному мини-пакету из [анализа обмена НДС 22](d:/SynologyDrive/projects_syn/crm3-26/docs/Анализ_обмена_НДС_22_с_Бухгалтерией_КОРП.md); отдельный перенос логики НДС 22 в расширение целевой системы **не входит в объём**. + - **настройки ИБ по протоколу разд. 4:** на копии для приёмки **целевая** ИБ по ключевым пунктам совпадает с утверждённым снимком целевой или отклонения перечислены в протоколе; при необходимости для сценария — **исходная** копия согласована с эталонным снимком исходной ИБ (чтобы сравнение «как в бою» было воспроизводимо); **внешние обработки** съёма дают повторяемый снимок, сравнение в обработке целевой — без расхождения с ручным протоколом. +- Отдельный блок сверки себестоимости: старый доработанный контур и сравнение с целевым типовым контуром (контрольные отчеты). +- Критерий готовности: прохождение **согласованного пакета тестов** без **блокирующих и критических** ошибок. + +## 9. Этап 7 внедрения: готовность к переходу и промышленный запуск (1 неделя + окно перехода) +- Единая **пошаговая инструкция перехода**: + - шаги по времени; + - ответственные; + - условия продолжения и остановки работ; + - условия **отката** к прежнему варианту; + - **контрольный проход по протоколу различий настроек ИБ** (**разд. 4**): по **целевой** ИБ критичные пункты совпадают с утверждённым снимком перед срезом; по **исходной** — нет неучтённого дрейфа по пунктам, влияющим на выгрузку остатков и первой волны (либо дрейф внесён в протокол); отклонения согласованы с владельцами учёта. +- Финальный прогон переноса остатков на актуальную дату среза по механизму **разд. 6**. +- После среза — режим постоянной **односторонней передачи данных** **первой волны** (по утверждённой матрице объектов и механизму **разд. 7**). + +## 10. Этап 8 внедрения: стабилизация после запуска и вторая волна (2–4 недели) +- Усиленная поддержка и ежедневный контроль **передачи данных**. +- Подготовка **второй волны**: + - сценарии ЭДО и УПД при **передаче данных**; + - план **завершения** переходного учёта себестоимости и **перехода на типовой** механизм по утверждённым критериям и датам; + - расширение **передачи данных** или отчетности по кредит-нотам и купонам сверх минимума первой волны. + +## 11. Детализированный план действий (операционный) +- Сформировать **единый реестр** доработок с классификацией: сейчас обязательно / вторая волна / заменить типовым. +- Для каждой переносимой доработки зафиксировать: + - источник (`crm3-dev*`); + - целевой объект (`crm3-26-promo.rhana`); + - тип переноса (`&ИзменениеИКонтроль`, новый объект, адаптация); + - сценарий приемки. +- **Протокол различий настроек ИБ** (артефакт **разд. 4**): шаблон таблицы; **парные снимки** исходной и целевой ИБ по одному чек-листу (в т.ч. через **внешние обработки** съёма); перечень обязательных разделов (см. **разд. 4.3**); колонка при необходимости для **ограничений версии** типовой между исходной и целевой; правила ведения версий; связь со спецификациями **остатков** и **первой волны передачи данных**; владелец артефакта и периодичность пересмотра при обновлении типовой или смене учётной политики. +- **Внешние обработки съёма и сравнения** (**разд. 4.4**): спецификация формата файла снимка; состав полей общих настроек ИБ; **обработка целевой** — сценарии загрузки двух снимков и UI различий; регламент выпуска **двух сборок** (исходная/целевая конфигурация). +- **Внешние обработки эффективных настроек номенклатуры** (**разд. 4.5** в связке с **разд. 6–7**): параметры периода оборотов и даты остатков; алгоритм отбора номенклатур; правило вычисления эффективной настройки; формат выгрузки; сравнение **только в обработке целевой** конфигурации; связь выхода с **маппингом** при загрузке остатков и при передаче документов переходного периода. +- Спецификация **передачи данных, первая волна**: + - **матрица по разделам учёта** — для каждого раздела (продажи, склад, взаиморасчёты, **посерийный учёт**, **маркировка**, себестоимость на период **переходного учёта себестоимости** и т.д.): перечень **справочников**, **документов**, **регистров накопления** и **регистров сведений**, которые должны быть согласованы между выгрузкой из `crm3-dev` и проведением в `crm3-26-promo` (включая кастомные `р_` / `rh_` при наличии); назначение каждого объекта в контроле (обязательный к передаче / вычисляется при проведении / исключён); + - сценарии **финальной проверки**: передача объекта → загрузка в целевую → **проведение** (где применимо) → сверка движений по всем строкам матрицы для этого типа документа; + - выбранный **технический механизм** (универсальный формат с доработками, дополнение обработками и т.д.) и правила сопоставления записей; + - порядок выгрузки и загрузки; + - обработка конфликтов и ошибок; + - опора на аналитику регистров: [Глубинный анализ регистров](d:/SynologyDrive/projects_syn/crm3-26/docs/Глубинный_анализ_регистров.md) — при расширении матрицы и проверке рисков по движениям. +- Спецификация **переходного учёта себестоимости**: + - границы переноса; + - список зависимостей документов и регистров; + - механизм сверки со стандартным контуром. +- Спецификация механизма остатков: + - настройка даты среза и сценарий быстрой смены даты; + - правила выгрузки из старой базы и загрузки в новую; + - **опора на файлы сравнения** из внешних обработок (общие настройки ИБ и эффективные настройки номенклатуры по остаткам/оборотам за период); + - сопоставление разделов учета и целевых документов ввода остатков; + - протокол сверки по остаткам и регистрам накопления; + - **санация и границы ответственности:** перечень известных проблемных номенклатур/остатков в источнике, правила исправления до среза vs перенос с актом; учёт **смены порядка учёта** в истории; + - **посерийный учёт:** согласование остатков и НСИ с требованием **серий для всех** номенклатур в целевой базе; + - **маркировка:** требования к НСИ и документам для косметики, БАДов и ЛП в целевой системе на дату среза и при последующей передаче данных; + - **серии и виды номенклатуры при вводе остатков:** согласовать с [анализом привязок серий](d:/SynologyDrive/projects_syn/crm3-26/docs/Анализ_привязок_серий_номенклатур_к_видам_номенклатур.md) (отбор серий, риск указания серий без остатков). +- Спецификация по **УПД (upd5b)**: таблица соответствия объектов `crm3-dev.upd5b` ↔ `crm3-26-promo` (типовая часть) ↔ итог в `crm3-26-promo.rhana`; решение по каждому фрагменту (оставить типовое, перенести, адаптировать); сценарии печати и ЭДО после слияния. +- Спецификация по **кредит-ноте**: объекты метаданных, проведение, печать, участие в обмене и в **передаче данных** (если требуется). +- Спецификация по **купонам**: реквизиты, заполнение, контроль при проведении, отчеты и ограничения при **передаче** НСИ и документов. +- Спецификация по **печати комплекта документов и складскому учету**: перечень обработок и команд, зависимости от документов и регистров, сценарии приемки (см. [аналитику по складу и печати](d:/SynologyDrive/projects_syn/crm3-26/docs/Анализ_доработок_складского_учета_и_печати_документов.md)). +- Заключение по **МОЛ и номенклатуре**: протокол сравнения с типовым подбором ответственного в `crm3-26-promo` и выбранный вариант (типовой / расширение), план переноса строк «Склады.МОЛ» при необходимости. +- Опытная эксплуатация на **копии продуктивных данных** до промышленного окна перехода. + +## 12. Привязка к этапам плана: комплект печати и склад + +Опора на [Анализ доработок складского учета и печати документов](d:/SynologyDrive/projects_syn/crm3-26/docs/Анализ_доработок_складского_учета_и_печати_документов.md) (версия 4.0): **раздел 3 анализа** — кастомный перенос; **раздел 1 анализа** — сверка с эталоном; **раздел 4 анализа** (форма приёмки) — перенос кастома не требуется, в целевой базе только **проверка наличия типового** поведения. Ниже — **этапы внедрения по нумерации плана** (**разд. 3–10**), не путать с нумерацией разделов самого анализа. + +- **Разд. 3 плана** (сводка границ) — зафиксировать в объёме миграции перечень из **раздела 3 анализа**: **3.1** печать расходного ордера по основанию и включение формы ордера в комплект для реализации и перемещения; **3.2** обработка **«УправлениеОтгрузкой»** — блок **«Комплект печатных документов»** и команда **«Для печати комплекта документов»** (`ОтразитьРеализации`); **3.3** форма **«Настройка печати комплекта»** — блок **«Дополнительная обработка»** (пользовательский код перед печатью). Отдельно зафиксировать: по **разделу 4 анализа** перенос не планируется, только контрольный чек-лист. +- **Разд. 5 плана** (**переходный учёт себестоимости**) — прямой привязки к комплекту печати нет; косвенно — если тестовые отгрузки используются для сверки складских остатков. +- **Разд. 6 плана** (остатки на дату) — без обязательной привязки к печати; при необходимости — тестовая отгрузка после загрузки остатков для проверки согласованности данных и печати ордера. +- **Разд. 7 плана** (первая волна **передачи данных**) — включить в **матрицу объектов** только те сущности, которые **хранят настройки или данные** комплекта (если такие есть вне кода); сам перенос логики печати — в расширении `crm3-26-promo.rhana`, а не через обмен. +- **Разд. 8 плана** (приёмка) — обязательные сценарии по анализу: печать комплекта из **«УправлениеОтгрузкой»**; формирование комплекта с **расходным ордером по основанию** для **«Реализация товаров и услуг»** и **«Перемещение товаров»**; расширенная печать ордера (`р_ПечатьРасходногоОрдераНаТовары` и связанные `р_СформироватьПечатнуюФормуОрдераПоОснованию`, `р_ПолучитьОрдерыНаПечать`); сценарий с **дополнительной обработкой** в настройке комплекта (если используется в промышленной эксплуатации). +- **Разд. 9 плана** (переход) — в пошаговую инструкцию включить проверку доступности команд печати комплекта и права на выполнение кода дополнительной обработки (если перенесён). +- **Разд. 10 плана** (стабилизация) — при отложенных пунктах **3.2 и 3.3 раздела 3 анализа** (статус «требуется проверка» в анализе) — закрытие во второй волне после уточнения в целевой конфигурации. + +### 12.1. Ключевые исходные файлы в коде (перенос по разделу 3 анализа, `crm3-dev.rhana`) + +- [d:/SynologyDrive/projects_syn/crm3-26/crm3-dev.rhana/src/Documents/РасходныйОрдерНаТовары/Ext/ManagerModule.bsl](d:/SynologyDrive/projects_syn/crm3-26/crm3-dev.rhana/src/Documents/РасходныйОрдерНаТовары/Ext/ManagerModule.bsl) — `р_СформироватьПечатнуюФормуОрдераПоОснованию`, `р_ПолучитьОрдерыНаПечать`, переопределение печати ордера. +- [d:/SynologyDrive/projects_syn/crm3-26/crm3-dev.rhana/src/CommonModules/РеализацияТоваровУслугЛокализация/Ext/Module.bsl](d:/SynologyDrive/projects_syn/crm3-26/crm3-dev.rhana/src/CommonModules/РеализацияТоваровУслугЛокализация/Ext/Module.bsl) — комплект печатных форм и расходный ордер. +- [d:/SynologyDrive/projects_syn/crm3-26/crm3-dev.rhana/src/CommonModules/ПеремещениеТоваровЛокализация/Ext/Module.bsl](d:/SynologyDrive/projects_syn/crm3-26/crm3-dev.rhana/src/CommonModules/ПеремещениеТоваровЛокализация/Ext/Module.bsl) — то же для перемещения. +- [d:/SynologyDrive/projects_syn/crm3-26/crm3-dev.rhana/src/DataProcessors/УправлениеОтгрузкой/Forms/Форма/Ext/Form/Module.bsl](d:/SynologyDrive/projects_syn/crm3-26/crm3-dev.rhana/src/DataProcessors/УправлениеОтгрузкой/Forms/Форма/Ext/Form/Module.bsl) — комплект печатных документов в отгрузке. +- [d:/SynologyDrive/projects_syn/crm3-26/crm3-dev.rhana/src/InformationRegisters/НастройкиПечатиОбъектов/Forms/НастройкаПечатиКомплекта/Ext/Form/Module.bsl](d:/SynologyDrive/projects_syn/crm3-26/crm3-dev.rhana/src/InformationRegisters/НастройкиПечатиОбъектов/Forms/НастройкаПечатиКомплекта/Ext/Form/Module.bsl) — дополнительная обработка при печати комплекта. + +## 13. Ключевые риски и меры предупреждения +- Конфликты расширения с новой типовой версией → ранняя сборка конфигурации и **быстрая проверка на регрессию** после каждого блока переноса. +- Дубли и расхождения при передаче данных → правило повторной выгрузки без дублей, журнал сообщений, **ежедневная сверка**; обязательная проверка по **матрице регистров** после проведения ключевых документов. +- Ожидание, что **типовой универсальный обмен** закроет кастомную исходную базу **без матрицы объектов** → завышенный риск неполных движений и скрытых расхождений; матрица по разделам учёта — обязательный артефакт приёмки. +- **Расхождение настроек ИБ** между исходной и целевой без утверждённого **протокола различий** или при **несимметричном** съёме (заполнен чек-лист только для одной ИБ) → ошибочное проведение остатков и документов переходного периода, «тихие» сдвиги НДС/партий/серий; **парные** снимки (в т.ч. через внешние обработки), протокол и повторная сверка перед опытной и промышленной эксплуатацией. +- **Расхождение эффективных настроек учёта номенклатуры** между исходной и целевой без прогона обработок сравнения и без учёта в правилах загрузки остатков/документов → проведение с ошибочными признаками учёта, сериями, маркировкой; обязательный артефакт перед **разд. 6–7**. +- Затягивание **переходного учёта себестоимости** в постоянное решение → заранее утвержденные критерии завершения переходного периода и целевые даты перехода на типовой механизм. +- Неполный контур перехода → единая пошаговая инструкция и обязательная **репетиция пробного прогона** перед запуском. +- **Исторические ошибки и смена порядка учёта** в `crm3-dev` при переносе остатков без ремедиации → искажённые остатки и движения в `crm3-26-promo`; заранее перечень проблемных позиций, акты и правила исправления. +- **Разрыв посерийного учёта:** в источнике серии велись не для всех позиций, в целевой — **обязательны для всех** → блокировки проведения, расхождения с фактом; нормализация серий и НСИ до/на срезе. +- **Маркировка (косметика, БАДы, ЛП):** неготовность НСИ, кодов маркировки и сценариев **интеграций маркировки**, предусмотренных целевой конфигурацией → остановка отгрузок или регламентные нарушения; отдельный контур готовности и приёмки. +- **Регистр `CRM_ЖурналДокументов`:** реструктуризация измерений и обнуление ссылок на удаляемые типы → **неуникальность** и порча CRM-журнала; заранее сценарий проверки и при необходимости **перезаполнение** по [аналитике перезаполнения](d:/SynologyDrive/projects_syn/crm3-26/docs/Анализ_механизма_перезаполнения_CRM_ЖурналДокументов.md). +- **Роли не включены в целевой профиль** → отказ в доступе к обмену, печати, документам при том что функционал перенесён; чек-лист по [ролям для включения](d:/SynologyDrive/projects_syn/crm3-26/docs/Роли_для_включения_в_новой_системе.md). +- **Обмен с Бухгалтерией КОРП и НДС 22:** риск пустых или неверных ставок при **несогласованности форматов/правил обмена** между системами (в т.ч. если на стороне БК или транспорта ещё не поддержаны коды НДС 22); обязательная регрессия по [анализу обмена НДС 22](d:/SynologyDrive/projects_syn/crm3-26/docs/Анализ_обмена_НДС_22_с_Бухгалтерией_КОРП.md). В `crm3-26-promo` учёт НДС 22% обеспечивается **типовой конфигурацией** — не смешивать с задачами переноса кастома в `crm3-26-promo.rhana`. +- **Пользовательский код в «Дополнительной обработке» комплекта печати** → аудит сценариев, ограничение прав, тестирование на копии; при переносе — миграция сохранённых текстов обработки и контроль безопасности выполнения. diff --git a/docs__Инструкция_добавления_ролей_в_профиль.md b/docs__Инструкция_добавления_ролей_в_профиль.md new file mode 100644 index 0000000..3b3221b --- /dev/null +++ b/docs__Инструкция_добавления_ролей_в_профиль.md @@ -0,0 +1,174 @@ +--- +title: Инструкция по добавлению ролей в профиль группы доступа +author: Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) +version: 1.0 +date_created: 2025-12-11 +date_modified: 2025-12-11 +show_metadata_block: true +show_index_link: true +--- + +# Инструкция по добавлению ролей в профиль группы доступа + +## Описание + +Созданы программные модули на языке 1С для автоматического добавления ролей в табличную часть "Разрешенные действия (Роли)" элемента справочника "ПрофилиГруппДоступа". + +## Файлы с кодом + +1. **`scripts/AddRolesToAccessProfile.bsl`** - основная процедура для добавления ролей из массива +2. **`scripts/AddRolesToAccessProfileFromFile.bsl`** - процедура для добавления ролей из текстового файла + +## Использование + +### Вариант 1: Добавление ролей из массива + +```bsl +// Получаем ссылку на элемент профиля +ЭлементПрофиля = Справочники.ПрофилиГруппДоступа.НайтиПоНаименованию("Кладовщик (без заказов поставщиков)"); + +// Формируем список ролей для добавления +СписокРолей = Новый Массив; +СписокРолей.Добавить("Базовые права (CRM)"); +СписокРолей.Добавить("Ввод документа ""Отчет по работам"" (CRM)"); +СписокРолей.Добавить("Добавление изменение актов о расхождениях после отгрузки по возврату"); +// ... и так далее + +// Вызываем процедуру +ДобавитьРолиВПрофильГруппыДоступа(ЭлементПрофиля, СписокРолей); +``` + +### Вариант 2: Добавление ролей из файла + +```bsl +// Получаем ссылку на элемент профиля +ЭлементПрофиля = Справочники.ПрофилиГруппДоступа.НайтиПоНаименованию("Кладовщик (без заказов поставщиков)"); + +// Указываем путь к файлу со списком ролей +// Файл должен содержать по одной роли на строку +// Поддерживается формат с нумерацией (например, " 1. Название роли") +ПутьКФайлу = "C:\Temp\roles_list.txt"; + +// Вызываем процедуру +ДобавитьРолиВПрофильГруппыДоступаИзФайла(ЭлементПрофиля, ПутьКФайлу); +``` + +### Вариант 3: Использование с файлом результатов сравнения + +Для использования с файлом `docs/roles_kladovshik_comparison.txt` можно: + +1. Скопировать раздел "ОБЩИЙ СПИСОК РОЛЕЙ ДЛЯ ДОБАВЛЕНИЯ" в отдельный текстовый файл +2. Использовать этот файл с процедурой `ДобавитьРолиВПрофильГруппыДоступаИзФайла` + +Или создать процедуру, которая автоматически извлекает список из файла результатов: + +```bsl +// Процедура для извлечения списка ролей из файла результатов сравнения +Процедура ДобавитьРолиИзФайлаСравнения(ЭлементПрофиля, ПутьКФайлуСравнения) Экспорт + + // Читаем файл + ТекстФайла = ""; + ЧтениеТекста = Новый ЧтениеТекста(ПутьКФайлуСравнения, КодировкаТекста.UTF8); + Пока НЕ ЧтениеТекста.КонецПотока() Цикл + ТекстФайла = ТекстФайла + ЧтениеТекста.ПрочитатьСтроку() + Символы.ПС; + КонецЦикла; + ЧтениеТекста.Закрыть(); + + // Ищем раздел "ОБЩИЙ СПИСОК РОЛЕЙ ДЛЯ ДОБАВЛЕНИЯ" + ПозицияНачала = СтрНайти(ТекстФайла, "ОБЩИЙ СПИСОК РОЛЕЙ ДЛЯ ДОБАВЛЕНИЯ"); + Если ПозицияНачала = 0 Тогда + ВызватьИсключение "В файле не найден раздел 'ОБЩИЙ СПИСОК РОЛЕЙ ДЛЯ ДОБАВЛЕНИЯ'"; + КонецЕсли; + + // Ищем конец раздела (следующий раздел или конец файла) + ПозицияКонца = СтрНайти(ТекстФайла, "СГРУППИРОВАННЫЙ СПИСОК", ПозицияНачала); + Если ПозицияКонца = 0 Тогда + ПозицияКонца = СтрДлина(ТекстФайла); + КонецЕсли; + + // Извлекаем нужный фрагмент + ФрагментТекста = Сред(ТекстФайла, ПозицияНачала, ПозицияКонца - ПозицияНачала); + + // Разбиваем на строки и извлекаем роли + СписокРолей = Новый Массив; + Строки = СтрРазделить(ФрагментТекста, Символы.ПС); + + Для Каждого Строка Из Строки Цикл + Строка = СокрЛП(Строка); + Если ПустаяСтрока(Строка) Или СтрНачинаетсяС(Строка, "=") Или СтрНачинаетсяС(Строка, "-") Тогда + Продолжить; + КонецЕсли; + + // Убираем нумерацию + ПозицияТочки = СтрНайти(Строка, "."); + Если ПозицияТочки > 0 И ПозицияТочки <= 4 Тогда + ЧастьДоТочки = Лев(Строка, ПозицияТочки - 1); + ЧастьДоТочки = СокрЛП(ЧастьДоТочки); + Попытка + Число(ЧастьДоТочки); + Строка = Сред(Строка, ПозицияТочки + 1); + Исключение + КонецПопытки; + КонецЕсли; + + Строка = СокрЛП(Строка); + Если НЕ ПустаяСтрока(Строка) Тогда + СписокРолей.Добавить(Строка); + КонецЕсли; + КонецЦикла; + + // Вызываем основную процедуру + ДобавитьРолиВПрофильГруппыДоступа(ЭлементПрофиля, СписокРолей); + +КонецПроцедуры +``` + +## Важные замечания + +1. **Проверка существования ролей**: Процедура ищет роли по точному совпадению наименования в справочнике "Роли". Если роль не найдена, она будет добавлена в список не найденных ролей. + +2. **Проверка дубликатов**: Процедура проверяет, не добавлена ли уже роль в табличную часть. Если роль уже есть, она не будет добавлена повторно. + +3. **Обработка ошибок**: При ошибках записи будет выброшено исключение с описанием ошибки. + +4. **Результат выполнения**: После выполнения процедура выводит сообщение с информацией: + - Количество добавленных ролей + - Количество ролей, которые уже были добавлены + - Количество не найденных ролей и их список + +## Требования к метаданным + +Убедитесь, что в конфигурации существуют: +- Справочник `ПрофилиГруппДоступа` (или другое имя, в зависимости от конфигурации) +- Табличная часть `РазрешенныеДействияРоли` (или другое имя) с реквизитом `Роль` типа `СправочникСсылка.Роли` +- Справочник `Роли` с реквизитом `Наименование` + +Если имена объектов метаданных отличаются, необходимо скорректировать код соответственно. + +## Пример полного использования + +```bsl +// 1. Получаем ссылку на профиль +ЭлементПрофиля = Справочники.ПрофилиГруппДоступа.НайтиПоНаименованию("Кладовщик (без заказов поставщиков)"); + +Если ЭлементПрофиля.Пустая() Тогда + Сообщить("Профиль не найден!"); + Возврат; +КонецЕсли; + +// 2. Формируем список ролей (можно из файла или вручную) +СписокРолей = Новый Массив; +СписокРолей.Добавить("Базовые права (CRM)"); +СписокРолей.Добавить("Ввод документа ""Отчет по работам"" (CRM)"); +// ... остальные роли + +// 3. Добавляем роли +Попытка + ДобавитьРолиВПрофильГруппыДоступа(ЭлементПрофиля, СписокРолей); + Сообщить("Роли успешно добавлены!"); +Исключение + Сообщить("Ошибка: " + ОписаниеОшибки()); +КонецПопытки; +``` + + diff --git a/docs__Инструкция_по_запуску_md_convert.md b/docs__Инструкция_по_запуску_md_convert.md new file mode 100644 index 0000000..4adb8b2 --- /dev/null +++ b/docs__Инструкция_по_запуску_md_convert.md @@ -0,0 +1,205 @@ +--- +title: Инструкция по запуску скрипта md_convert.py +author: Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) +version: 1.0 +date_created: 2026-01-06 +date_modified: 2026-01-06 +show_metadata_block: true +show_index_link: true +--- + +# Инструкция по запуску скрипта md_convert.py + +## Расположение скрипта +- **Путь:** `md_converter/md_convert.py` +- **Виртуальная среда:** `md_converter/venv/` +- **Версия:** 0.0.1 + +## Активация виртуальной среды + +Перед запуском скрипта необходимо активировать виртуальную среду: + +### Windows PowerShell: +```powershell +cd md_converter +.\venv\Scripts\Activate.ps1 +``` + +### Windows CMD: +```cmd +cd md_converter +venv\Scripts\activate.bat +``` + +### Linux/Mac: +```bash +cd md_converter +source venv/bin/activate +``` + +## Базовый запуск скрипта + +### 1. Запуск с конфигурацией по умолчанию +```bash +cd md_converter +venv\Scripts\python.exe md_convert.py +``` + +### 2. Запуск с указанием файла конфигурации +```bash +# Первый параметр (без флага) +venv\Scripts\python.exe md_convert.py config/config.yml + +# Или с флагом +venv\Scripts\python.exe md_convert.py -c config/config.yml +``` + +## Режимы работы + +### Конвертация только в HTML +```bash +venv\Scripts\python.exe md_convert.py --mode html +``` + +### Конвертация только в PDF +```bash +venv\Scripts\python.exe md_convert.py --mode pdf +``` + +### Конвертация в оба формата +```bash +venv\Scripts\python.exe md_convert.py --mode both +``` + +## Указание конкретных файлов + +### Один файл (рекомендуется использовать абсолютный путь для файлов с кириллицей) +```bash +# Абсолютный путь (рекомендуется для Windows) +venv\Scripts\python.exe md_convert.py --mode html --file D:/edt_workspace/docs/Оценка_правок_для_переноса_НДС_22_(v1.4).md + +# Относительный путь +venv\Scripts\python.exe md_convert.py --mode html --file ../docs/document.md +``` + +### Несколько файлов +```bash +venv\Scripts\python.exe md_convert.py --mode html --files file1.md file2.md file3.md +``` + +## Переопределение параметров конфигурации + +### Указание входной и выходной директории +```bash +venv\Scripts\python.exe md_convert.py \ + --mode html \ + -i D:/edt_workspace/docs/ \ + -oh D:/edt_workspace/html_md_converter/ +``` + +### Указание выходной директории для PDF +```bash +venv\Scripts\python.exe md_convert.py \ + --mode pdf \ + -i D:/edt_workspace/docs/ \ + -op D:/edt_workspace/pdf/ +``` + +## Дополнительные параметры + +### Режим отладки +```bash +venv\Scripts\python.exe md_convert.py --mode html --debug +``` + +### Указание кодировки +```bash +venv\Scripts\python.exe md_convert.py --mode html --encoding windows-1251 +``` + +### Версия скрипта +```bash +venv\Scripts\python.exe md_convert.py --version +``` + +### Справка +```bash +venv\Scripts\python.exe md_convert.py --help +``` + +## Примеры использования + +### Пример 1: Конвертация одного файла в HTML +```bash +cd md_converter +venv\Scripts\python.exe md_convert.py --mode html --file D:/edt_workspace/docs/Оценка_правок_для_переноса_НДС_22_(v1.4).md +``` + +### Пример 2: Конвертация всех файлов из директории в HTML и PDF +```bash +cd md_converter +venv\Scripts\python.exe md_convert.py --mode both -i D:/edt_workspace/docs/ +``` + +### Пример 3: Конвертация с кастомной конфигурацией +```bash +cd md_converter +venv\Scripts\python.exe md_convert.py config/custom_config.yml --mode html +``` + +## Важные замечания + +### Работа с кириллическими именами файлов в Windows + +В Windows cmd.exe может искажать кириллические символы в аргументах из-за кодировки консоли (CP866). Рекомендации: + +1. **Использовать абсолютные пути с прямыми слешами:** + ```bash + --file D:/edt_workspace/docs/Оценка_правок_для_переноса_НДС_22_(v1.4).md + ``` + +2. **Использовать PowerShell вместо cmd.exe** (лучше работает с UTF-8) + +3. **Скрипт автоматически пытается найти файл по части имени**, если точное совпадение не найдено из-за проблем с кодировкой + +### Генерация PDF + +Для генерации PDF требуется установка GTK+ библиотек на Windows. См. инструкцию в `md_converter/INSTALL_GTK_WINDOWS.md`. + +Если GTK+ не установлен, скрипт выдаст ошибку при попытке генерации PDF, но продолжит работу для HTML. + +## Структура параметров командной строки + +### Позиционные аргументы: +- `config_file` - Путь к файлу конфигурации (может быть указан первым параметром без флага) + +### Основные параметры: +- `-c, --config` - Путь к файлу конфигурации +- `-f, --file` - Путь к конкретному MD файлу для конвертации +- `-F, --files` - Пути к нескольким MD файлам для конвертации +- `-i, --input-dir` - Папка с MD файлами +- `-oh, --output-html-dir` - Папка вывода HTML файлов +- `-op, --output-pdf-dir` - Папка вывода PDF файлов +- `-m, --mode` - Режим работы (html, pdf, both) +- `-e, --encoding` - Кодировка входных файлов +- `-d, --debug` - Режим отладки +- `-v, --version` - Версия скрипта +- `-h, --help` - Справка + +### Дополнительные параметры: +- `--html.template_file` - Путь к HTML шаблону +- `--pdf.page_size` - Размер страницы PDF + +## Приоритет параметров + +1. Параметры командной строки (наивысший приоритет) +2. Файл конфигурации (если не заблокирован параметром `lock_override`) +3. Значения по умолчанию (низший приоритет) + +## Обработка ошибок + +- Если указан файл, который не найден, скрипт попытается найти его по части имени +- Если режим `pdf` и GTK+ не установлен, скрипт выдаст ошибку +- Если режим `both` и GTK+ не установлен, скрипт создаст HTML и выдаст предупреждение о PDF +- При ошибках обработки файлов скрипт продолжит работу с другими файлами (если `error_handling: continue`) + diff --git a/docs__Инструкция_по_исправлению.md b/docs__Инструкция_по_исправлению.md index 674ba1f..ec294fa 100644 --- a/docs__Инструкция_по_исправлению.md +++ b/docs__Инструкция_по_исправлению.md @@ -10,7 +10,7 @@ show_index_link: true # Инструкция по исправлению ошибок обновления конфигурации 1С -> 📚 **См. также:** [Оглавление документов](INDEX.md) | [Анализ ошибок обновления](Анализ_ошибок_обновления.md) | [Быстрое решение](Быстрое_решение.md) | [Глубинный анализ регистров](Глубинный_анализ_регистров.md) +> 📚 **См. также:** [Оглавление документов](docs__INDEX.md) | [Анализ ошибок обновления](docs__Анализ_ошибок_обновления.md) | [Быстрое решение](docs__Быстрое_решение.md) | [Глубинный анализ регистров](docs__Глубинный_анализ_регистров.md) ## Шаг 1: Анализ проблемы diff --git a/docs__Итоговый_отчет_анализа_регистров.md b/docs__Итоговый_отчет_анализа_регистров.md new file mode 100644 index 0000000..c3d964a --- /dev/null +++ b/docs__Итоговый_отчет_анализа_регистров.md @@ -0,0 +1,371 @@ +--- +title: "Итоговый отчет: Глубинный анализ регистров на нарушение уникальности" +author: Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) +version: 1.0 +date_created: 2025-12-09 +date_modified: 2025-12-09 +show_metadata_block: true +show_index_link: true +--- + +# Итоговый отчет: Глубинный анализ регистров на нарушение уникальности + +> 📚 **См. также:** [Оглавление документов](docs__INDEX.md) | [ФИНАЛЬНЫЙ ОТЧЕТ](docs__ФИНАЛЬНЫЙ_ОТЧЕТ_Анализ_регистров.md) | [Глубинный анализ регистров](docs__Глубинный_анализ_регистров.md) | [Анализ ошибок обновления](docs__Анализ_ошибок_обновления.md) + +## Резюме + +Проведен полный анализ всех регистров сведений и регистров накопления в конфигурации `CRM3devLocal` на предмет возможного нарушения уникальности данных после обновления до конфигурации `CRM326/CRM326_TEST`. + +## Методология анализа + +1. **Автоматический анализ:** Сканирование всех файлов метаданных регистров (801 регистр) +2. **Проверка удаляемых объектов:** Анализ измерений на ссылки к удаляемым объектам +3. **Выявление рисков:** Определение регистров с потенциальными проблемами уникальности + +## Результаты анализа + +### Статистика +- **Всего проанализировано регистров:** 801 +- **Регистров сведений:** ~400 +- **Регистров накопления:** ~400 +- **Найдено проблемных регистров:** 3 + +--- + +## КРИТИЧЕСКИЕ ПРОБЛЕМЫ + +### 1. РегистрНакопления.ТМЦВЭксплуатации + +**Статус:** ⚠️ КРИТИЧНО - Весь регистр удаляется + +**Описание проблемы:** +- Регистр полностью удаляется из конфигурации при обновлении +- Все данные регистра будут потеряны без возможности восстановления +- Регистр используется для учета товарно-материальных ценностей в эксплуатации + +**Структура регистра:** +- **Тип:** Регистр накопления (Обороты) +- **Измерения:** + - Организация (CatalogRef.Организации) + - Подразделение (CatalogRef.СтруктураПредприятия) + - ФизическоеЛицо (CatalogRef.ФизическиеЛица) + - Номенклатура (CatalogRef.Номенклатура) + - Характеристика (CatalogRef.ХарактеристикиНоменклатуры) + - Партия (CatalogRef.ПартииТМЦВЭксплуатации) +- **Ресурсы:** + - Количество (Number, 15.3) + +**Риск нарушения уникальности:** НЕТ (регистр полностью удаляется, данные теряются) + +**Действия:** +1. ✅ Экспортировать все данные из регистра перед обновлением +2. ✅ Определить необходимость данных после обновления +3. ✅ Если данные критичны - создать скрипт миграции в альтернативный регистр +4. ✅ Если данные не нужны - можно удалить перед обновлением + +--- + +### 2. РегистрСведений.УдалитьРеестрДокументов + +**Статус:** ⚠️ КРИТИЧНО - Весь регистр удаляется + +**Описание проблемы:** +- Регистр полностью удаляется из конфигурации при обновлении +- Все данные регистра будут потеряны +- Регистр помечен как "(не используется)" в метаданных + +**Структура регистра:** +- **Тип:** Регистр сведений (периодический) +- **Измерения:** + - ТипСсылки (CatalogRef.ИдентификаторыОбъектовМетаданных) + - Организация (CatalogRef.Организации) + - ХозяйственнаяОперация (EnumRef.ХозяйственныеОперации) + - Партнер (CatalogRef.Партнеры) + - Контрагент (CatalogRef.Контрагенты) + - НаправлениеДеятельности (CatalogRef.НаправленияДеятельности) + - Подразделение (CatalogRef.СтруктураПредприятия) + - МестоХранения (множество типов) + - ДатаДокументаИБ (Date) + - Ссылка (множество типов документов) + - РазделительЗаписи (String) +- **Ресурсы:** + - НомерДокументаИБ (String, 30) + - Статус (EnumRef - множество типов) + - Ответственный (CatalogRef.Пользователи) + - ДополнительнаяЗапись (Boolean) + - Дополнительно (String, 100) + - Комментарий (String, 100) + - Проведен (Boolean) + - ПометкаУдаления (Boolean) + - ДатаПервичногоДокумента (Date) + - И другие... + +**Риск нарушения уникальности:** НЕТ (регистр полностью удаляется) + +**Действия:** +1. ✅ Экспортировать данные (если они есть и нужны) +2. ✅ Убедиться, что регистр действительно не используется +3. ✅ Можно безопасно удалить перед обновлением + +--- + +### 3. РегистрСведений.РеестрДокументов + +**Статус:** ⚠️ КРИТИЧНО - Весь регистр удаляется + +**Описание:** +- Возможно, это альтернативное имя для `УдалитьРеестрДокументов` +- Требуется дополнительная проверка + +**Действия:** +1. ✅ Уточнить, является ли это дубликатом `УдалитьРеестрДокументов` +2. ✅ Экспортировать данные перед обновлением + +--- + +## ВЫСОКИЙ РИСК + +### РегистрНакопления.МатериалыИРаботыВПроизводстве + +**Статус:** ⚠️ ВЫСОКИЙ РИСК - Удаляется измерение + +**Описание проблемы:** +- Из регистра удаляется измерение `УдалитьАналитикаУчетаНоменклатуры` +- Измерение помечено как "(не используется)" в метаданных +- Тип измерения: `CatalogRef.КлючиАналитикиУчетаНоменклатуры` + +**Структура регистра:** +- **Тип:** Регистр накопления (Остатки) +- **Измерения:** + 1. Организация + 2. Номенклатура + 3. Характеристика + 4. Подразделение + 5. Серия + 6. Назначение + 7. **УдалитьАналитикаУчетаНоменклатуры** ⚠️ (УДАЛЯЕТСЯ) +- **Ресурсы:** + - Количество (Number, 15.3) + +**Почему это критично:** + +После удаления измерения `УдалитьАналитикаУчетаНоменклатуры` все записи с одинаковыми значениями остальных измерений, но разными значениями удаляемого измерения, станут неразличимыми. Это приведет к нарушению уникальности ключа регистра. + +**Пример проблемы:** + +``` +ДО удаления измерения: +┌─────────────┬──────────────┬─────────────────────────────────────┬──────────┐ +│ Организация │ Номенклатура │ УдалитьАналитикаУчетаНоменклатуры │ Количество│ +├─────────────┼──────────────┼─────────────────────────────────────┼──────────┤ +│ ООО "А" │ Товар1 │ Ключ1 │ 10 │ +│ ООО "А" │ Товар1 │ Ключ2 │ 20 │ +└─────────────┴──────────────┴─────────────────────────────────────┴──────────┘ + +ПОСЛЕ удаления измерения: +┌─────────────┬──────────────┬──────────┐ +│ Организация │ Номенклатура │ Количество│ +├─────────────┼──────────────┼──────────┤ +│ ООО "А" │ Товар1 │ 10 │ ← ДУБЛИКАТ! +│ ООО "А" │ Товар1 │ 20 │ ← ДУБЛИКАТ! +└─────────────┴──────────────┴──────────┘ +→ НАРУШЕНИЕ УНИКАЛЬНОСТИ! +``` + +**Рекомендации:** + +#### Шаг 1: Проверка на дубликаты + +**ОБЯЗАТЕЛЬНО** выполнить проверку перед обновлением: + +```bsl +// Использовать скрипт check_duplicates_materials.bsl +// Или выполнить запрос вручную +``` + +**Запрос для проверки:** +```sql +ВЫБРАТЬ + МатериалыИРаботыВПроизводстве.Организация, + МатериалыИРаботыВПроизводстве.Номенклатура, + МатериалыИРаботыВПроизводстве.Характеристика, + МатериалыИРаботыВПроизводстве.Подразделение, + МатериалыИРаботыВПроизводстве.Серия, + МатериалыИРаботыВПроизводстве.Назначение, + КОЛИЧЕСТВО(РАЗЛИЧНЫЕ МатериалыИРаботыВПроизводстве.УдалитьАналитикаУчетаНоменклатуры) КАК КоличествоРазличныхЗначений +ИЗ + РегистрНакопления.МатериалыИРаботыВПроизводстве КАК МатериалыИРаботыВПроизводстве +СГРУППИРОВАТЬ ПО + МатериалыИРаботыВПроизводстве.Организация, + МатериалыИРаботыВПроизводстве.Номенклатура, + МатериалыИРаботыВПроизводстве.Характеристика, + МатериалыИРаботыВПроизводстве.Подразделение, + МатериалыИРаботыВПроизводстве.Серия, + МатериалыИРаботыВПроизводстве.Назначение +ИМЕЮЩИЕ + КОЛИЧЕСТВО(РАЗЛИЧНЫЕ МатериалыИРаботыВПроизводстве.УдалитьАналитикаУчетаНоменклатуры) > 1 + И МатериалыИРаботыВПроизводстве.УдалитьАналитикаУчетаНоменклатуры НЕ РАВНО ЗНАЧЕНИЕ(Справочник.КлючиАналитикиУчетаНоменклатуры.ПустаяСсылка) +``` + +#### Шаг 2: Варианты решения + +**Вариант А: Очистка данных (если измерение не используется)** + +Если измерение действительно не используется и все значения пустые или одинаковые: + +1. Удалить все записи, где `УдалитьАналитикаУчетаНоменклатуры` заполнено +2. Применить обновление +3. Проверить целостность данных + +**Вариант Б: Объединение записей (если есть дубликаты)** + +Если найдены дубликаты: + +1. Найти все группы записей с одинаковыми значениями измерений (кроме удаляемого) +2. Объединить ресурсы (суммировать Количество) этих записей +3. Удалить дубликаты +4. Оставить одну запись с суммированным значением +5. Применить обновление + +**Вариант В: Замена на альтернативное измерение** + +Если измерение используется, но должно быть заменено: + +1. Определить альтернативное измерение или атрибут +2. Создать скрипт миграции данных +3. Перенести значения в альтернативное место +4. Применить обновление + +#### Шаг 3: После обновления + +1. Проверить целостность данных регистра +2. Убедиться, что нет ошибок уникальности +3. Провести функциональное тестирование + +--- + +## План действий перед обновлением + +### Этап 1: Подготовка (КРИТИЧНО) ⚠️ + +- [ ] **Создать полную резервную копию базы данных** +- [ ] **Экспортировать данные из проблемных регистров:** + - [ ] РегистрНакопления.ТМЦВЭксплуатации + - [ ] РегистрСведений.УдалитьРеестрДокументов + - [ ] РегистрСведений.РеестрДокументов +- [ ] **Выполнить проверку на дубликаты для регистра МатериалыИРаботыВПроизводстве:** + - [ ] Запустить скрипт `check_duplicates_materials.bsl` + - [ ] Проанализировать результаты + - [ ] Определить стратегию обработки + +### Этап 2: Обработка данных + +#### Для регистра МатериалыИРаботыВПроизводстве: + +- [ ] Если дубликаты НЕ найдены: + - [ ] Можно безопасно применять обновление + - [ ] Измерение будет удалено без последствий + +- [ ] Если дубликаты найдены: + - [ ] Выбрать вариант решения (А, Б или В) + - [ ] Выполнить обработку данных + - [ ] Повторно проверить на дубликаты + - [ ] Убедиться, что дубликатов больше нет + +#### Для удаляемых регистров: + +- [ ] Определить, нужны ли данные после обновления +- [ ] Если нужны: + - [ ] Создать скрипт миграции данных + - [ ] Протестировать миграцию на копии базы +- [ ] Если не нужны: + - [ ] Можно удалить данные перед обновлением + +### Этап 3: Применение обновления + +- [ ] Применить обновление конфигурации из `CRM326/CRM326_TEST` +- [ ] Проверить отсутствие ошибок при обновлении +- [ ] Проверить целостность данных + +### Этап 4: Верификация + +- [ ] Проверить работу регистра МатериалыИРаботыВПроизводстве +- [ ] Убедиться, что данные корректны +- [ ] Проверить отсутствие ошибок уникальности +- [ ] Провести функциональное тестирование +- [ ] Если данные были мигрированы - проверить их корректность + +--- + +## Инструменты и скрипты + +### Созданные инструменты: + +1. **deep_register_analysis.py** - автоматический анализ всех регистров + - Находит регистры с удаляемыми измерениями + - Проверяет ссылки на удаляемые объекты + - Генерирует детальный отчет + +2. **check_duplicates_materials.bsl** - проверка дубликатов в регистре МатериалыИРаботыВПроизводстве + - Находит группы записей с дубликатами + - Выводит детальную информацию + - Помогает определить стратегию обработки + +3. **analyze_registers.py** - базовый анализ регистров + +4. **find_references.py** - поиск ссылок на удаляемые объекты + +### Отчеты: + +- `deep_register_analysis_report.txt` - детальный отчет анализа +- `register_analysis_report.txt` - базовый отчет +- `references_report.txt` - отчет о ссылках + +--- + +## Выводы + +### Критические проблемы: + +1. **3 регистра полностью удаляются:** + - РегистрНакопления.ТМЦВЭксплуатации + - РегистрСведений.УдалитьРеестрДокументов + - РегистрСведений.РеестрДокументов + +2. **1 регистр имеет удаляемое измерение:** + - РегистрНакопления.МатериалыИРаботыВПроизводстве + - Измерение: УдалитьАналитикаУчетаНоменклатуры + +### Главный риск: + +**РегистрНакопления.МатериалыИРаботыВПроизводстве** может потерять уникальность данных после удаления измерения `УдалитьАналитикаУчетаНоменклатуры`. + +### Обязательные действия: + +1. ✅ **ОБЯЗАТЕЛЬНО** выполнить проверку на дубликаты перед обновлением +2. ✅ **ОБЯЗАТЕЛЬНО** обработать найденные дубликаты +3. ✅ **ОБЯЗАТЕЛЬНО** создать резервную копию базы данных +4. ✅ **ОБЯЗАТЕЛЬНО** экспортировать данные из удаляемых регистров + +### Рекомендации: + +- Не применять обновление без предварительной проверки на дубликаты +- Использовать созданные скрипты для автоматизации проверки +- Документировать все действия по обработке данных +- Тестировать на копии базы данных перед применением к рабочей базе + +--- + +## Контакты и поддержка + +При возникновении вопросов или проблем: +1. Обратиться к администратору базы данных +2. Проконсультироваться с разработчиками конфигурации +3. Использовать форумы и сообщества 1С + +--- + +**Дата анализа:** 2024 +**Версия конфигурации:** CRM3devLocal → CRM326/CRM326_TEST +**Статус:** Требуется обработка данных перед обновлением + diff --git a/docs__Отчет_о_конвертации.md b/docs__Отчет_о_конвертации.md new file mode 100644 index 0000000..e85f38b --- /dev/null +++ b/docs__Отчет_о_конвертации.md @@ -0,0 +1,97 @@ +--- +title: Отчет о конвертации Markdown в HTML +author: Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) +version: 1.0 +date_created: 2025-12-09 +date_modified: 2025-12-09 +show_metadata_block: true +show_index_link: true +--- + +# Отчет о конвертации Markdown в HTML + +## Статус: ✅ Успешно завершено + +### Результаты конвертации + +- **Всего конвертировано файлов:** 11 +- **Ошибок:** 0 +- **Предупреждений:** 0 +- **Битых ссылок:** 0 + +### Созданные файлы + +#### HTML файлы (в папке `html/`) + +1. **INDEX.html** - Оглавление всех документов +2. **Анализ_ошибок_обновления.html** - Анализ ошибок обновления +3. **Быстрое_решение.html** - Быстрое решение проблемы +4. **Глубинный_анализ_регистров.html** - Глубинный анализ регистров +5. **Инструкция_по_исправлению.html** - Инструкция по исправлению +6. **Итоговый_отчет_анализа_регистров.html** - Итоговый отчет +7. **ФИНАЛЬНЫЙ_ОТЧЕТ_Анализ_регистров.html** - Финальный отчет +8. **README_md_to_html.html** - Инструкция по использованию скрипта +9. **analysis_report.html** - Отчет анализа +10. **analysis_report_detailed.html** - Детальный отчет анализа +11. **Партнеры_АналитическийОтчет.html** - Аналитический отчет по партнерам + +### Реализованные возможности + +#### ✅ Перекрестные ссылки между документами + +Все ссылки на другие `.md` файлы автоматически конвертируются в ссылки на соответствующие `.html` файлы. + +**Пример:** +```markdown +[Глубинный анализ регистров](docs__Глубинный_анализ_регистров.md) +``` +Конвертируется в: +```html +Глубинный анализ регистров +``` + +#### ✅ Навигационные ссылки + +В каждом HTML файле автоматически добавляется блок навигации со ссылками на все остальные документы. + +#### ✅ Индексный файл + +Создан файл `INDEX.md` (и `INDEX.html`) с оглавлением всех документов, сгруппированных по категориям: +- Анализ и отчеты +- Инструкции +- Другое + +#### ✅ Добавлены перекрестные ссылки в документах + +В начало каждого основного документа добавлены блоки со ссылками на связанные документы: +- Оглавление документов +- Связанные отчеты и анализы +- Инструкции и решения + +### Проверка корректности + +Все HTML файлы проверены на: +- ✅ Корректность структуры HTML +- ✅ Наличие всех необходимых тегов +- ✅ Работоспособность перекрестных ссылок +- ✅ Корректность кодировки (UTF-8) +- ✅ Наличие стилей и оформления +- ✅ Отсутствие битых ссылок + +### Использование + +1. Откройте файл `html/INDEX.html` в браузере для навигации по всем документам +2. Используйте навигационные ссылки в каждом документе для перехода между страницами +3. Все перекрестные ссылки между документами работают корректно + +### Инструменты + +- **md_to_html.py** - Скрипт конвертации с поддержкой перекрестных ссылок +- **check_html_files.py** - Скрипт проверки корректности HTML файлов +- **INDEX.md** - Автоматически генерируемый индексный файл + +--- + +**Дата конвертации:** 2024 +**Статус:** ✅ Все файлы успешно конвертированы и проверены + diff --git a/docs__Оценка_правок_для_переноса_НДС_22.md b/docs__Оценка_правок_для_переноса_НДС_22.md new file mode 100644 index 0000000..9544897 --- /dev/null +++ b/docs__Оценка_правок_для_переноса_НДС_22.md @@ -0,0 +1,1849 @@ +--- +title: Оценка правок для переноса функционала ставки НДС 22% +version: 1.5 +date_modified: 2026-01-06 +date_created: 2026-01-04 +author: Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) +description: Определение необходимых изменений в старой конфигурации для переноса функционала применения ставки НДС 22% из новой конфигурации и восстановления работы УПД (в том числе с НДС 22%) +show_metadata_block: true +show_index_link: true +show_toc: true +--- + +# Общая информация по документу + +## Дата анализа +04.01.2026 + +## Версия документа +1.5 от 06.01.2026 + +## Автор анализа +Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) + +## Цель +- Определить необходимые изменения в старой конфигурации `CRM3devLocal` (включая расширение `CRM3devLocal.Рана`) для переноса функционала применения ставки НДС 22% из новой конфигурации `CRM326_TEST`. +- Устранения проблемы печати (макета) универсального передаточного документа (УПД) с выводом ставки НДС (в том числе - ставки НДС 22%). + +## Выполненные работы +- [Реализация переноса в старую базу ставки НДС 22% и исправления формы УПД](docs__Реализация_переноса_НДС_22.md) + +# Оценка правок для переноса функционала ставки НДС 22% + +## Выбранный подход + +**Вариант 2: Работа только с перечислением (минимизация изменений)** + +**Принятое решение:** Адаптировать код для работы только с перечислением `СтавкиНДС`, минимизируя необходимость добавления новых объектов в старую конфигурацию. + +**Обоснование:** +- В старой конфигурации используется только перечисление `СтавкиНДС`, справочник `СтавкиНДС` отсутствует +- В новой конфигурации используется справочник `СтавкиНДС` для хранения детальной информации о ставках +- Для минимизации изменений адаптируем код для работы напрямую с перечислением + +**Исключено из необходимых изменений:** +- ❌ Создание справочника `СтавкиНДС` +- ❌ Процедура `ЗаполнитьСправочникСтавкиНДС` +- ❌ Обработчики обновления информационной базы для создания элементов справочника +- ❌ Функция `СтавкаНДСПоПеречислению` (преобразование перечисления в элемент справочника) +- ❌ Процедура `УстановитьСтавкуНДСПоУмолчанию` (если функция `СтавкаНДСПоУмолчанию` модифицируется напрямую) + +**Результат:** Снижение трудозатрат с 11.5-16 часов до 9-12.5 часов. + +--- + +## Результаты анализа + +### 1. Проверка наличия функционала в старой конфигурации + +**Результат:** В старой конфигурации `CRM3devLocal` и расширении `CRM3devLocal.Рана` **НЕ НАЙДЕНО** упоминаний `СтавкаНДС22`, `НДС22` или `НДС22_122`. + +**Вывод:** Функционал применения ставки НДС 22% полностью отсутствует в старой конфигурации и требует полного переноса. + +--- + +## Анализ функционала в новой конфигурации + +### 1. Перечисление "СтавкиНДС" + +В новой конфигурации `CRM326_TEST` в перечислении `СтавкиНДС` присутствуют следующие значения: +- `НДС22` - основная ставка НДС 22% +- `НДС22_122` - расчетная ставка НДС 22/122 (для выделения НДС из суммы "в том числе") + +**Расположение:** `CRM326_TEST/src/Enums/СтавкиНДС/Ext/ManagerModule.bsl` + +**Использование:** +- В функции `СтавкиПоОперациямОтражаемымВКнигеПродаж` (строки 23-24) +- В обработчике `ОбработкаПолученияДанныхВыбора` (строки 56, 65) + +### 2. Общий модуль "УчетНДСЛокализация" + +**Файл:** `CRM326_TEST/src/CommonModules/УчетНДСЛокализация/Ext/Module.bsl` + +#### 2.1. Создание элементов справочника СтавкиНДС + +**Область:** `#Область СтавкаНДС22` (строки 812-849) + +**Функционал:** +- Создание или получение элемента справочника `СтавкиНДС` с перечислением `НДС22` +- Установка свойств: + - `Наименование = "22%"` + - `Ставка = 22` + - `Страна = Справочники.СтраныМира.Россия` + - `Основная = Истина` + - `НачалоПериода = Дата(2026, 01, 01)` + - `ПеречислениеСтавкаНДС = Перечисления.СтавкиНДС.НДС22` +- Добавление типов налогообложения: + - `ПродажаОблагаетсяНДС` + - `ПроизводствоСДЦ` + - `ЛьготноеНалогообложениеНДСНаУСН` + +#### 2.2. Создание элемента для ставки 22/122 + +**Область:** `#Область СтавкаНДС22_122` (строки 851-891) + +**Функционал:** +- Создание или получение элемента справочника `СтавкиНДС` с перечислением `НДС22_122` +- Установка свойств: + - `Наименование = "22/122"` + - `Ставка = 22` + - `Страна = Справочники.СтраныМира.Россия` + - `НачалоПериода = Дата(2026, 01, 01)` + - `РасчетнаяСтавка = Истина` + - `ПеречислениеСтавкаНДС = Перечисления.СтавкиНДС.НДС22_122` + - `СоответствующаяБазоваяСтавка = СтавкаНДС22.Ссылка` +- Добавление типов налогообложения: + - `ПродажаОблагаетсяНДС` + - `ОблагаетсяНДСУПокупателя` + - `ОблагаетсяНДССМежценовойРазницы` + +#### 2.3. Определение ставки НДС по умолчанию + +**Место:** Процедура `ДополнитьСтавкуНДСПоУмолчанию` (строки 1540-1568) + +**Логика:** +```bsl +Если Дата >= '20260101' Тогда + РасчетнаяСтавкаНДС = Перечисления.СтавкиНДС.НДС22_122; + НеРасчетнаяСтавкаНДС = Перечисления.СтавкиНДС.НДС22; +Иначе + РасчетнаяСтавкаНДС = Перечисления.СтавкиНДС.НДС20_120; + НеРасчетнаяСтавкаНДС = Перечисления.СтавкиНДС.НДС20; +КонецЕсли; +``` + +**Критическая дата:** 01.01.2026 - с этой даты начинает действовать ставка НДС 22% + +### 3. Документ "ОперацияПоЯндексКассе" + +**Файл:** `CRM326_TEST/src/Documents/ОперацияПоЯндексКассе/Forms/ФормаДокумента/Ext/Form/Module.bsl` + +**Использование:** +- Строка 946: `СтавкаНДС22 = УчетНДСЛокализация.СтавкаНДСПоПеречислению(Перечисления.СтавкиНДС.НДС22);` +- Строки 950-951: Проверка наличия ставки НДС22 в расшифровке платежа + +### 4. Общий модуль "ТорговыеПредложенияСлужебный" + +**Файл:** `CRM326_TEST/src/CommonModules/ТорговыеПредложенияСлужебный/Ext/Module.bsl` + +**Функции:** +- `ДействуетСтавкаНДС22(ДатаПроверки)` (строка 11198) - проверяет, действует ли ставка НДС 22% на указанную дату +- Логика: `ДатаПроверки >= Дата(2026, 1, 1)` + +### 5. Общий модуль "МенеджерОфлайнОборудования" + +**Файл:** `CRM326_TEST/src/CommonModules/МенеджерОфлайнОборудования/Ext/Module.bsl` + +**Функция:** +- `СтавкаНДС22()` (строка 588) - возвращает строку "22" + +--- + +## Необходимые изменения в старой конфигурации + +### 1. Перечисление "СтавкиНДС" + +#### 1.1. Добавление значений в перечисление + +**Файл:** `CRM3devLocal/src/Enums/СтавкиНДС/СтавкиНДС.mdo` + +**Необходимые изменения:** +1. Добавить значение перечисления `НДС22`: + - Наименование: "22%" + - Комментарий: "Ставка НДС 22%" + +2. Добавить значение перечисления `НДС22_122`: + - Наименование: "22/122" + - Комментарий: "Расчетная ставка НДС 22/122" + +**Приоритет:** Критический +**Сложность:** Низкая + +#### 1.2. Расширение перечисления в расширении + +**Файл:** `CRM3devLocal.Рана/src/Enums/СтавкиНДС/СтавкиНДС.mdo` + +**Необходимые изменения:** +- Добавить элементы перечисления `НДС22` и `НДС22_122` в расширение (если требуется) + +**Приоритет:** Высокий +**Сложность:** Низкая + +### 2. Общий модуль "УчетНДСЛокализация" + +#### 2.1. Проверка наличия модуля + +**Результат проверки:** В старой конфигурации `CRM3devLocal` модуль `УчетНДСЛокализация` **НАЙДЕН**. + +**Расположение:** `CRM3devLocal/src/CommonModules/УчетНДСЛокализация/Module.bsl` + +**Вывод:** Модуль существует, но в нем отсутствует функционал для работы со ставкой НДС 22%. + +#### 2.2. Анализ существующего функционала + +**Найденные процедуры в старой конфигурации:** +- `ДополнитьНастройкиУчета` - дополняет настройки учета НДС +- `ДополнитьПараметрыУчетаОрганизации` - дополняет параметры учета по организации +- Множество других процедур для локализации учета НДС + +**Отсутствующий функционал:** +1. **Процедура `ЗаполнитьСправочникСтавкиНДС`** - отсутствует полностью + + **Статус:** ❌ **НЕ НУЖНА** при работе по варианту 2 (только перечисление) + + **Примечание:** + - В новой конфигурации эта процедура создает элементы справочника `СтавкиНДС` + - В старой конфигурации справочник отсутствует, используется только перечисление + - При работе по варианту 2 процедура исключается из необходимых изменений + +2. **Процедура `УстановитьСтавкуНДСПоУмолчанию`** - отсутствует полностью + - Определяет ставку НДС по умолчанию с учетом даты + - Содержит логику для даты `>= '20260101'` с использованием НДС22 и НДС22_122 + - В новой конфигурации: строки 1524-1568 + - **Адаптация для варианта 2:** Процедура должна работать с перечислением `СтавкиНДС`, а не со справочником + +3. **Функция `СтавкаНДСПоПеречислению`** - отсутствует + - **Статус:** ❌ **НЕ НУЖНА** при работе по варианту 2 + - В новой конфигурации преобразует перечисление `СтавкиНДС` в элемент справочника `СтавкиНДС` + - При работе только с перечислением функция не требуется - используется перечисление напрямую + +#### 2.3. Необходимые изменения + +**Необходимые изменения:** + +1. **Проверить наличие справочника `СтавкиНДС` в старой конфигурации:** + - **Текущий статус:** Справочник `СтавкиНДС` **ОТСУТСТВУЕТ** в старой конфигурации `CRM3devLocal` + - В старой конфигурации используется только перечисление `СтавкиНДС` (844 упоминания в коде) + - В новой конфигурации справочник `СтавкиНДС` существует и активно используется + - **Использование справочника в новой конфигурации:** + - Хранение дополнительной информации о ставках (наименование, период действия, типы налогообложения, страна и т.д.) + - Функция `СтавкаНДСПоПеречислению` преобразует перечисление в элемент справочника + - Процедура `УстановитьСтавкуНДСПоУмолчанию` возвращает элемент справочника (не перечисление) + - **Принятое решение:** **Вариант 2** - Адаптировать код для работы только с перечислением, минимизируя необходимость добавления новых объектов в старую конфигурацию. + - **Обоснование:** В старой конфигурации используется только перечисление `СтавкиНДС`, справочник отсутствует. Для минимизации изменений адаптируем код для работы с перечислением. + +2. **Процедура `УстановитьСтавкуНДСПоУмолчанию` - НЕ НУЖНА:** + - **В новой конфигурации:** Процедура вызывается из расширения функции `СтавкаНДСПоУмолчанию` модуля `УчетНДСУП` (строка 358) для работы со справочником + - **В старой конфигурации:** Функция `СтавкаНДСПоУмолчанию` возвращает перечисление напрямую, процедура `УстановитьСтавкуНДСПоУмолчанию` отсутствует и не нужна + - **Решение:** Модифицировать функцию `СтавкаНДСПоУмолчанию` напрямую в модуле `УчетНДСУП` (добавить проверку даты >= '20260101') + - Это минимизирует изменения и не требует создания новых процедур + +3. **Исключить из необходимых изменений (при работе по варианту 2):** + - ❌ Процедуру `ЗаполнитьСправочникСтавкиНДС` - не нужна, так как справочник не создается + - ❌ Обработчик обновления информационной базы для создания элементов справочника - не нужен + - ❌ Процедуру `СоздатьЭлементыСтавкиНДС` - не нужна + - ❌ Функцию `СтавкаНДСПоПеречислению` - не нужна, так как работаем напрямую с перечислением + - ❌ Процедуру `УстановитьСтавкуНДСПоУмолчанию` - не нужна, так как функция `СтавкаНДСПоУмолчанию` модифицируется напрямую + + +**Приоритет:** Критический +**Сложность:** Низкая-Средняя (упрощено за счет исключения работы со справочником) + +**Примечание:** +- В старой конфигурации используется модуль `УчетНДСРФ` и связанные модули (`УчетНДСРФВызовСервера`, `УчетНДСРФКлиентСерверПовтИсп`) для работы со ставками НДС. +- **При работе по варианту 2 (только перечисление):** Функции `СтавкаНДСПоЗначениюПеречисления` и `НайтиСтавкуНДС` **НЕ НУЖНЫ**, так как они работают со справочником, а мы работаем напрямую с перечислением. +- Процедура `УстановитьСтавкуНДСПоУмолчанию` **НЕ НУЖНА** - функция `СтавкаНДСПоУмолчанию` модифицируется напрямую для работы с перечислением. + +### 3. Общий модуль "УчетНДСУП" + +#### 3.1. Модификация функции СтавкаНДСПоУмолчанию + +**Файл:** `CRM3devLocal/src/CommonModules/УчетНДСУП/Module.bsl` + +**Текущая реализация (строки 163-173):** +```bsl +Функция СтавкаНДСПоУмолчанию(Дата = Неопределено, РасчетнаяСтавка = Ложь, НалогообложениеНДС = Неопределено) Экспорт + + ДатаПолучения = ?(ЗначениеЗаполнено(Дата), Дата, ТекущаяДатаСеанса()); + + Если ДатаПолучения >= '20190101' Тогда + Возврат ?(РасчетнаяСтавка, Перечисления.СтавкиНДС.НДС20_120, Перечисления.СтавкиНДС.НДС20); + Иначе + Возврат ?(РасчетнаяСтавка, Перечисления.СтавкиНДС.НДС18_118, Перечисления.СтавкиНДС.НДС18); + КонецЕсли; + +КонецФункции +``` + +**Необходимые изменения:** +Добавить проверку даты для ставки НДС 22%: + +```bsl +Функция СтавкаНДСПоУмолчанию(Дата = Неопределено, РасчетнаяСтавка = Ложь, НалогообложениеНДС = Неопределено) Экспорт + + ДатаПолучения = ?(ЗначениеЗаполнено(Дата), Дата, ТекущаяДатаСеанса()); + + Если ДатаПолучения >= '20260101' Тогда + Возврат ?(РасчетнаяСтавка, Перечисления.СтавкиНДС.НДС22_122, Перечисления.СтавкиНДС.НДС22); + ИначеЕсли ДатаПолучения >= '20190101' Тогда + Возврат ?(РасчетнаяСтавка, Перечисления.СтавкиНДС.НДС20_120, Перечисления.СтавкиНДС.НДС20); + Иначе + Возврат ?(РасчетнаяСтавка, Перечисления.СтавкиНДС.НДС18_118, Перечисления.СтавкиНДС.НДС18); + КонецЕсли; + +КонецФункции +``` + +**Приоритет:** Критический +**Сложность:** Низкая + +#### 3.2. Модификация функции СкорректироватьСтавкуНДС + +**Файл:** `CRM3devLocal/src/CommonModules/УчетНДСУП/Module.bsl` + +**Текущая реализация (строки 184-192):** +```bsl +Функция СкорректироватьСтавкуНДС(СтавкаНДС, Дата) Экспорт + + Если СтавкаНДС = Перечисления.СтавкиНДС.НДС18 Или СтавкаНДС = Перечисления.СтавкиНДС.НДС18_118 + Или СтавкаНДС = Перечисления.СтавкиНДС.НДС20 Или СтавкаНДС = Перечисления.СтавкиНДС.НДС20_120 Тогда + СтавкаНДСПоУмолчанию = УчетНДСУП.СтавкаНДСПоУмолчанию(Дата, СтавкаНДС = Перечисления.СтавкиНДС.НДС18_118 + Или СтавкаНДС = Перечисления.СтавкиНДС.НДС20_120); + Если СтавкаНДС <> СтавкаНДСПоУмолчанию Тогда + СтавкаНДС = СтавкаНДСПоУмолчанию; + Возврат Истина; +``` + +**Необходимые изменения:** +Добавить проверку ставок НДС22 и НДС22_122: + +```bsl +Функция СкорректироватьСтавкуНДС(СтавкаНДС, Дата) Экспорт + + Если СтавкаНДС = Перечисления.СтавкиНДС.НДС18 Или СтавкаНДС = Перечисления.СтавкиНДС.НДС18_118 + Или СтавкаНДС = Перечисления.СтавкиНДС.НДС20 Или СтавкаНДС = Перечисления.СтавкиНДС.НДС20_120 + Или СтавкаНДС = Перечисления.СтавкиНДС.НДС22 Или СтавкаНДС = Перечисления.СтавкиНДС.НДС22_122 Тогда + СтавкаНДСПоУмолчанию = УчетНДСУП.СтавкаНДСПоУмолчанию(Дата, СтавкаНДС = Перечисления.СтавкиНДС.НДС18_118 + Или СтавкаНДС = Перечисления.СтавкиНДС.НДС20_120 + Или СтавкаНДС = Перечисления.СтавкиНДС.НДС22_122); + Если СтавкаНДС <> СтавкаНДСПоУмолчанию Тогда + СтавкаНДС = СтавкаНДСПоУмолчанию; + Возврат Истина; +``` + +**Приоритет:** Высокий +**Сложность:** Низкая + +### 3.5. Другие модули и документы, требующие изменений + +**Важно:** В связи с добавлением новой ставки НДС 22% в старой конфигурации **требуются доработки** в следующих модулях и документах, где есть жестко закодированные проверки на конкретные ставки НДС (18%, 20%, 10%). + +#### 3.5.1. Общий модуль "ДенежныеСредстваСервер" + +**Файл:** `CRM3devLocal/src/CommonModules/ДенежныеСредстваСервер/Module.bsl` + +**Текущая реализация (строки 7193-7199):** +```bsl +Если Платеж.СтавкаНДС = Перечисления.СтавкиНДС.НДС20 Тогда + Платеж.СуммаНДС = Платеж.Сумма * 20 / 120; +ИначеЕсли Платеж.СтавкаНДС = Перечисления.СтавкиНДС.НДС18 Тогда + Платеж.СуммаНДС = Платеж.Сумма * 18 / 118; +ИначеЕсли Платеж.СтавкаНДС = Перечисления.СтавкиНДС.НДС10 Тогда + Платеж.СуммаНДС = Платеж.Сумма * 10 / 110; +КонецЕсли; +``` + +**Необходимые изменения:** +Добавить обработку ставки НДС 22%: +```bsl +Если Платеж.СтавкаНДС = Перечисления.СтавкиНДС.НДС22 Тогда + Платеж.СуммаНДС = Платеж.Сумма * 22 / 122; +ИначеЕсли Платеж.СтавкаНДС = Перечисления.СтавкиНДС.НДС20 Тогда + Платеж.СуммаНДС = Платеж.Сумма * 20 / 120; +ИначеЕсли Платеж.СтавкаНДС = Перечисления.СтавкиНДС.НДС18 Тогда + Платеж.СуммаНДС = Платеж.Сумма * 18 / 118; +ИначеЕсли Платеж.СтавкаНДС = Перечисления.СтавкиНДС.НДС10 Тогда + Платеж.СуммаНДС = Платеж.Сумма * 10 / 110; +КонецЕсли; +``` + +**Приоритет:** Критический +**Сложность:** Низкая + +#### 3.5.2. Общий модуль "МенеджерОбменаЧерезУниверсальныйФормат" + +**Файл:** `CRM3devLocal/src/CommonModules/МенеджерОбменаЧерезУниверсальныйФормат/Module.bsl` + +**Текущая реализация (строки 53346-53370):** +- Преобразование ставки НДС в строковое представление для обмена данными через универсальный формат (XDTO) +- Проверки на НДС18, НДС20, НДС18_118, НДС20_120, НДС10, НДС10_110 + +**Важно: Пояснение о строковых представлениях НДС** + +В модуле используется **процедура `ОпределитьСтавкуНДС_Отправка`**, которая преобразует ставку НДС в строковое представление для обмена данными через универсальный формат (XDTO). Существует два режима работы: + +1. **Режим совместимости со старыми форматами (`НДСПоСтавкам2и4 = Истина`):** + - Используется для совместимости со старыми версиями форматов обмена данными + - **НДС2** = ставка 10% (старая кодировка) + - **НДС4** = ставка 18% или 20% (старая кодировка, объединяет обе ставки) + - **НДС2_102** = расчетная ставка 10/110 + - **НДС4_104** = расчетная ставка 18/118 или 20/120 + +2. **Современный режим (`НДСПоСтавкам2и4 = Ложь`):** + - Использует точные обозначения: "НДС10", "НДС18", "НДС20", "НДС10_110", "НДС18_118", "НДС20_120" + +**Расположение в старой конфигурации:** + +В старой конфигурации используется **процедура `ОпределитьСтавкуНДС_Отправка`** (строки 53337-53376) вместо функции `СтавкаНДСВСтрокуXDTO`. Эта процедура выполняет аналогичную функцию - преобразует ставку НДС в строковое представление для обмена данными. + +**Расположение:** `CRM3devLocal/src/CommonModules/МенеджерОбменаЧерезУниверсальныйФормат/Module.bsl` + +**Обратное преобразование** (из строки в перечисление) находится в строках 53250-53269 того же модуля. + +**Необходимые изменения:** + +В старой конфигурации необходимо модифицировать процедуру `ОпределитьСтавкуНДС_Отправка` (строки 53337-53376) для добавления обработки НДС22 и НДС22_122: + +**Для режима совместимости (`НДСПоСтавкам2и4 = Истина`):** +```bsl +Если Строка.СтавкаНДС = Перечисления.СтавкиНДС.НДС18 + ИЛИ Строка.СтавкаНДС = Перечисления.СтавкиНДС.НДС20 + ИЛИ Строка.СтавкаНДС = Перечисления.СтавкиНДС.НДС22 Тогда + Строка.СтавкаНДССтрокой = "НДС4"; // Для совместимости со старыми форматами +ИначеЕсли Строка.СтавкаНДС = Перечисления.СтавкиНДС.НДС18_118 + ИЛИ Строка.СтавкаНДС = Перечисления.СтавкиНДС.НДС20_120 + ИЛИ Строка.СтавкаНДС = Перечисления.СтавкиНДС.НДС22_122 Тогда + Строка.СтавкаНДССтрокой = "НДС4_104"; // Для совместимости со старыми форматами +``` + +**Для современного режима (`НДСПоСтавкам2и4 = Ложь`):** +```bsl +ИначеЕсли Строка.СтавкаНДС = Перечисления.СтавкиНДС.НДС18 Тогда + Строка.СтавкаНДССтрокой = "НДС18"; +ИначеЕсли Строка.СтавкаНДС = Перечисления.СтавкиНДС.НДС20 Тогда + Строка.СтавкаНДССтрокой = "НДС20"; +ИначеЕсли Строка.СтавкаНДС = Перечисления.СтавкиНДС.НДС22 Тогда + Строка.СтавкаНДССтрокой = "НДС22"; // Добавить для НДС 22% +ИначеЕсли Строка.СтавкаНДС = Перечисления.СтавкиНДС.НДС18_118 Тогда + Строка.СтавкаНДССтрокой = "НДС18_118"; +ИначеЕсли Строка.СтавкаНДС = Перечисления.СтавкиНДС.НДС20_120 Тогда + Строка.СтавкаНДССтрокой = "НДС20_120"; +ИначеЕсли Строка.СтавкаНДС = Перечисления.СтавкиНДС.НДС22_122 Тогда + Строка.СтавкаНДССтрокой = "НДС22_122"; // Добавить для НДС 22% +``` + +**Также необходимо обновить обратное преобразование** (обработка входящих данных, строки 53250-53269): +```bsl +ИначеЕсли ЗначениеСтавкиНДС = "НДС4" Тогда + Если ПолученныеДанные.Дата >= Дата("20260101") Тогда + СтруктураДанныхСтроки.СтавкаНДС = Перечисления.СтавкиНДС.НДС22; + ИначеЕсли ПолученныеДанные.Дата >= Дата("20190101") Тогда + СтруктураДанныхСтроки.СтавкаНДС = Перечисления.СтавкиНДС.НДС20; + Иначе + СтруктураДанныхСтроки.СтавкаНДС = Перечисления.СтавкиНДС.НДС18; + КонецЕсли; +ИначеЕсли ЗначениеСтавкиНДС = "НДС4_102" Тогда + Если ПолученныеДанные.Дата >= Дата("20260101") Тогда + СтруктураДанныхСтроки.СтавкаНДС = Перечисления.СтавкиНДС.НДС22_122; + ИначеЕсли ПолученныеДанные.Дата >= Дата("20190101") Тогда + СтруктураДанныхСтроки.СтавкаНДС = Перечисления.СтавкиНДС.НДС20_120; + Иначе + СтруктураДанныхСтроки.СтавкаНДС = Перечисления.СтавкиНДС.НДС18_118; + КонецЕсли; +``` + +Также необходимо добавить обработку для прямых значений "НДС22" и "НДС22_122" (если они используются в современных форматах): +```bsl +ИначеЕсли ЗначениеСтавкиНДС = "НДС22" Тогда + СтруктураДанныхСтроки.СтавкаНДС = Перечисления.СтавкиНДС.НДС22; +ИначеЕсли ЗначениеСтавкиНДС = "НДС22_122" Тогда + СтруктураДанныхСтроки.СтавкаНДС = Перечисления.СтавкиНДС.НДС22_122; +``` + +**Приоритет:** Высокий +**Сложность:** Средняя + +**Примечание:** В старой конфигурации используется прямое перечисление (без справочника), поэтому код работает напрямую с перечислением `Перечисления.СтавкиНДС`, что упрощает реализацию по сравнению с новой конфигурацией. + +#### 3.5.3. Общий модуль "ИнтеграцияСЯндексКассойУТ" + +**Файл:** `CRM3devLocal/src/CommonModules/ИнтеграцияСЯндексКассойУТ/Module.bsl` + +**Текущая реализация (строки 832-837):** +```bsl +ИначеЕсли СтавкаНДС = Перечисления.СтавкиНДС.НДС18 ИЛИ СтавкаНДС = Перечисления.СтавкиНДС.НДС20 Тогда + СтавкаНДСЧислом = 4; +ИначеЕсли СтавкаНДС = Перечисления.СтавкиНДС.НДС18_118 ИЛИ СтавкаНДС = Перечисления.СтавкиНДС.НДС20_120 Тогда + СтавкаНДСЧислом = 6; +``` + +**Необходимые изменения:** +Добавить обработку НДС22 и НДС22_122 (в новой конфигурации используется та же логика): +```bsl +ИначеЕсли СтавкаНДС = Перечисления.СтавкиНДС.НДС18 + ИЛИ СтавкаНДС = Перечисления.СтавкиНДС.НДС20 + ИЛИ СтавкаНДС = Перечисления.СтавкиНДС.НДС22 Тогда + СтавкаНДСЧислом = 4; +ИначеЕсли СтавкаНДС = Перечисления.СтавкиНДС.НДС18_118 + ИЛИ СтавкаНДС = Перечисления.СтавкиНДС.НДС20_120 + ИЛИ СтавкаНДС = Перечисления.СтавкиНДС.НДС22_122 Тогда + СтавкаНДСЧислом = 6; +``` + +**Приоритет:** Высокий +**Сложность:** Низкая + +#### 3.5.4. Общий модуль "ПодключаемоеОборудованиеOfflineВызовСервера" + +**Файл:** `CRM3devLocal/src/CommonModules/ПодключаемоеОборудованиеOfflineВызовСервера/Module.bsl` + +**Текущая реализация (строки 2406-2412):** +```bsl +ИначеЕсли СтавкаНДС = Перечисления.СтавкиНДС.НДС18 Тогда + Возврат МенеджерОфлайнОборудования.ПолучитьСтавкуНДС18(); +ИначеЕсли СтавкаНДС = Перечисления.СтавкиНДС.НДС20 Тогда + Возврат МенеджерОфлайнОборудования.ПолучитьСтавкуНДС20(); +``` + +**Необходимые изменения:** +Добавить обработку НДС22. **Требуется также** добавить функцию `ПолучитьСтавкуНДС22()` в модуль `МенеджерОфлайнОборудования` (если модуль используется): +```bsl +ИначеЕсли СтавкаНДС = Перечисления.СтавкиНДС.НДС22 Тогда + Возврат МенеджерОфлайнОборудования.ПолучитьСтавкуНДС22(); +``` + +**Приоритет:** Средний (если модуль используется) +**Сложность:** Низкая + +#### 3.5.5. Общий модуль "УчетНДСПереопределяемый" + +**Файл:** `CRM3devLocal/src/CommonModules/УчетНДСПереопределяемый/Module.bsl` + +**Текущая реализация (строки 405-419):** +```bsl +Функция ПолучитьСтавкуНДС(СтавкаНДС, ПрименяютсяСтавки4и2 = Ложь) Экспорт + + Если СтавкаНДС = Перечисления.СтавкиНДС.НДС20 ИЛИ СтавкаНДС = Перечисления.СтавкиНДС.НДС20_120 Тогда + Возврат 20; + ИначеЕсли СтавкаНДС = Перечисления.СтавкиНДС.НДС10 ИЛИ СтавкаНДС = Перечисления.СтавкиНДС.НДС10_110 Тогда + Ставка = ?(ПрименяютсяСтавки4и2, 2, 10); + Возврат Ставка; + ИначеЕсли СтавкаНДС = Перечисления.СтавкиНДС.НДС18 ИЛИ СтавкаНДС = Перечисления.СтавкиНДС.НДС18_118 Тогда + Ставка = ?(ПрименяютсяСтавки4и2, 4, 18); + Возврат Ставка; + КонецЕсли; + + Возврат 0; + +КонецФункции +``` + +**Необходимые изменения:** +Добавить обработку НДС22 и НДС22_122 в начало функции (перед проверкой НДС20): +```bsl +Функция ПолучитьСтавкуНДС(СтавкаНДС, ПрименяютсяСтавки4и2 = Ложь) Экспорт + + Если СтавкаНДС = Перечисления.СтавкиНДС.НДС22 ИЛИ СтавкаНДС = Перечисления.СтавкиНДС.НДС22_122 Тогда + Возврат 22; + ИначеЕсли СтавкаНДС = Перечисления.СтавкиНДС.НДС20 ИЛИ СтавкаНДС = Перечисления.СтавкиНДС.НДС20_120 Тогда + Возврат 20; + ИначеЕсли СтавкаНДС = Перечисления.СтавкиНДС.НДС10 ИЛИ СтавкаНДС = Перечисления.СтавкиНДС.НДС10_110 Тогда + Ставка = ?(ПрименяютсяСтавки4и2, 2, 10); + Возврат Ставка; + ИначеЕсли СтавкаНДС = Перечисления.СтавкиНДС.НДС18 ИЛИ СтавкаНДС = Перечисления.СтавкиНДС.НДС18_118 Тогда + Ставка = ?(ПрименяютсяСтавки4и2, 4, 18); + Возврат Ставка; + КонецЕсли; + + Возврат 0; + +КонецФункции +``` + +**Использование:** +- Функция используется через `УчетНДСВызовСервераПовтИсп.ПолучитьСтавкуНДС` (которая вызывает эту функцию) +- Используется в документах для получения числового значения ставки НДС при расчете суммы НДС + +**Приоритет:** Критический +**Сложность:** Низкая + +#### 3.5.5.1. Общий модуль "УчетНДСУПКлиентСервер" + +**Файл:** `CRM3devLocal/src/CommonModules/УчетНДСУПКлиентСервер/Module.bsl` + +**Текущая реализация (строки 43-58):** +```bsl +Функция ПолучитьСтавкуНДС(СтавкаНДС) Экспорт + + Если СтавкаНДС = ПредопределенноеЗначение("Перечисление.СтавкиНДС.НДС10") + Или СтавкаНДС = ПредопределенноеЗначение("Перечисление.СтавкиНДС.НДС10_110") Тогда + Возврат 10; + ИначеЕсли СтавкаНДС = ПредопределенноеЗначение("Перечисление.СтавкиНДС.НДС18") + Или СтавкаНДС = ПредопределенноеЗначение("Перечисление.СтавкиНДС.НДС18_118") Тогда + Возврат 18; + ИначеЕсли СтавкаНДС = ПредопределенноеЗначение("Перечисление.СтавкиНДС.НДС20") + Или СтавкаНДС = ПредопределенноеЗначение("Перечисление.СтавкиНДС.НДС20_120") Тогда + Возврат 20; + Иначе + Возврат 0; + КонецЕсли; + +КонецФункции +``` + +**Необходимые изменения:** +Добавить обработку НДС22 и НДС22_122 в начало функции (перед проверкой НДС20): +```bsl +Функция ПолучитьСтавкуНДС(СтавкаНДС) Экспорт + + Если СтавкаНДС = ПредопределенноеЗначение("Перечисление.СтавкиНДС.НДС22") + Или СтавкаНДС = ПредопределенноеЗначение("Перечисление.СтавкиНДС.НДС22_122") Тогда + Возврат 22; + ИначеЕсли СтавкаНДС = ПредопределенноеЗначение("Перечисление.СтавкиНДС.НДС20") + Или СтавкаНДС = ПредопределенноеЗначение("Перечисление.СтавкиНДС.НДС20_120") Тогда + Возврат 20; + ИначеЕсли СтавкаНДС = ПредопределенноеЗначение("Перечисление.СтавкиНДС.НДС18") + Или СтавкаНДС = ПредопределенноеЗначение("Перечисление.СтавкиНДС.НДС18_118") Тогда + Возврат 18; + ИначеЕсли СтавкаНДС = ПредопределенноеЗначение("Перечисление.СтавкиНДС.НДС10") + Или СтавкаНДС = ПредопределенноеЗначение("Перечисление.СтавкиНДС.НДС10_110") Тогда + Возврат 10; + Иначе + Возврат 0; + КонецЕсли; + +КонецФункции +``` + +**Использование:** +- Функция используется в модуле `ЦенообразованиеКлиентСервер.ПолучитьСтавкуНДСЧислом` (которая вызывает эту функцию) +- Используется в документах: `ЗаявлениеОВвозеТоваров`, `ВводОстатков`, `СчетФактураПолученныйНалоговыйАгент`, `СводнаяСправкаНДС` и других +- Используется для расчета процента НДС при отображении в формах документов + +**Приоритет:** Критический +**Сложность:** Низкая + +#### 3.5.6. Общий модуль "УчетНДСУПСлужебный" + +**Файл:** `CRM3devLocal/src/CommonModules/УчетНДСУПСлужебный/Module.bsl` + +**Текущая реализация:** +1. **Функция `СоответствующаяРасчетнаяСтавкаНДС` (строки 482-489):** + ```bsl + Если СтавкаНДС = Перечисления.СтавкиНДС.НДС20 Тогда + РасчетнаяСтавка = Перечисления.СтавкиНДС.НДС20_120; + ИначеЕсли СтавкаНДС = Перечисления.СтавкиНДС.НДС18 Тогда + РасчетнаяСтавка = Перечисления.СтавкиНДС.НДС18_118; + ИначеЕсли СтавкаНДС = Перечисления.СтавкиНДС.НДС10 Тогда + РасчетнаяСтавка = Перечисления.СтавкиНДС.НДС10_110; + ``` + +2. **Проверки в функциях валидации:** + - **Функция `СообщитьОбОшибкахКорректностьУказанияСтавкиНДСПродажи` (строки 997-993):** + - Проверки на НДС18 и НДС20 в режиме налогообложения "Продажа облагается НДС" (строки 1003-1004) + - Проверки на НДС18_118 и НДС20_120 (строки 1009-1010) + - **Функция `СообщитьОбОшибкахКорректностьУказанияСтавкиНДСЗакупки` (строки 1159-1179):** + - Проверки на НДС18 и НДС20 в режиме налогообложения "Закупка облагается НДС" (строки 1165-1166) + - Проверки на НДС18_118 и НДС20_120 (строки 1170-1171) + +**Необходимые изменения:** +1. Добавить обработку НДС22 в функцию `СоответствующаяРасчетнаяСтавкаНДС`: + ```bsl + Если СтавкаНДС = Перечисления.СтавкиНДС.НДС22 Тогда + РасчетнаяСтавка = Перечисления.СтавкиНДС.НДС22_122; + ИначеЕсли СтавкаНДС = Перечисления.СтавкиНДС.НДС20 Тогда + РасчетнаяСтавка = Перечисления.СтавкиНДС.НДС20_120; + ... + ``` + +2. Добавить проверки на НДС22 и НДС22_122 в функциях валидации (с учетом даты >= '20260101'): + + **В функции `СообщитьОбОшибкахКорректностьУказанияСтавкиНДСПродажи` (строки 1003-1010):** + ```bsl + ДатаДокумента = ОписаниеДокументаПродажи.ДокументПродажи.Дата; + Если Выборка.СтавкаНДС = Перечисления.СтавкиНДС.НДС18 Или + Выборка.СтавкаНДС = Перечисления.СтавкиНДС.НДС20 + Или (ДатаДокумента >= Дата(2026, 1, 1) И Выборка.СтавкаНДС = Перечисления.СтавкиНДС.НДС22) Тогда + // Ошибка: необходимо установить ставку 18%, 20% или 22% (в зависимости от даты) + ИначеЕсли Выборка.СтавкаНДС = Перечисления.СтавкиНДС.НДС18_118 Или + Выборка.СтавкаНДС = Перечисления.СтавкиНДС.НДС20_120 + Или (ДатаДокумента >= Дата(2026, 1, 1) И Выборка.СтавкаНДС = Перечисления.СтавкиНДС.НДС22_122) Тогда + // Ошибка: необходимо установить ставку 18/118, 20/120 или 22/122 (в зависимости от даты) + ``` + + **В функции `СообщитьОбОшибкахКорректностьУказанияСтавкиНДСЗакупки` (строки 1165-1171):** + ```bsl + ДатаДокумента = ОписаниеДокументаЗакупки.ДокументЗакупки.Дата; + Если Выборка.СтавкаНДС = Перечисления.СтавкиНДС.НДС18 Или + Выборка.СтавкаНДС = Перечисления.СтавкиНДС.НДС20 + Или (ДатаДокумента >= Дата(2026, 1, 1) И Выборка.СтавкаНДС = Перечисления.СтавкиНДС.НДС22) Тогда + // Ошибка: необходимо установить ставку 18%, 20% или 22% (в зависимости от даты) + ИначеЕсли Выборка.СтавкаНДС = Перечисления.СтавкиНДС.НДС18_118 Или + Выборка.СтавкаНДС = Перечисления.СтавкиНДС.НДС20_120 + Или (ДатаДокумента >= Дата(2026, 1, 1) И Выборка.СтавкаНДС = Перечисления.СтавкиНДС.НДС22_122) Тогда + // Ошибка: необходимо установить ставку 18/118, 20/120 или 22/122 (в зависимости от даты) + ``` + +**Приоритет:** Высокий +**Сложность:** Средняя + +#### 3.5.7. Обработка "р_ИмпортЗаказовКлиентов" + +**Файл:** `CRM3devLocal.Рана/src/DataProcessors/р_ИмпортЗаказовКлиентов/Forms/ФормаИмпортаСпецификаций/Module.bsl` + +**Текущая реализация (строки 225-230):** +```bsl +Если НоваяСтрокаТоваров.СтавкаНДС = Перечисления.СтавкиНДС.НДС10 Тогда + ЗначениеСтавкиНДС = 0.1; +ИначеЕсли НоваяСтрокаТоваров.СтавкаНДС = Перечисления.СтавкиНДС.НДС18 Тогда + ЗначениеСтавкиНДС = 0.18; +ИначеЕсли НоваяСтрокаТоваров.СтавкаНДС = Перечисления.СтавкиНДС.НДС20 Тогда + ЗначениеСтавкиНДС = 0.2; +``` + +**Необходимые изменения:** +Добавить обработку НДС22: +```bsl +ИначеЕсли НоваяСтрокаТоваров.СтавкаНДС = Перечисления.СтавкиНДС.НДС22 Тогда + ЗначениеСтавкиНДС = 0.22; +``` + +**Приоритет:** Средний (если обработка используется) +**Сложность:** Низкая + +#### 3.5.8. Формы документов + +**Анализ:** В формах документов ставка НДС обычно выбирается из перечисления через стандартный механизм выбора. После добавления значений `НДС22` и `НДС22_122` в перечисление они автоматически станут доступны для выбора в формах. + +**Требуемые изменения:** +- ❌ **Изменения в формах документов НЕ ТРЕБУЮТСЯ** - выбор ставки НДС работает через перечисление автоматически +- ⚠️ **Рекомендация:** Проверить корректность отображения ставки НДС 22% в формах после добавления значений в перечисление + +**Приоритет:** Низкий (только проверка) +**Сложность:** Низкая + +### 4. Модуль менеджера перечисления "СтавкиНДС" + +#### 4.1. Модификация функции СтавкиПоОперациямОтражаемымВКнигеПродаж + +**Файл:** `CRM3devLocal/src/Enums/СтавкиНДС/ManagerModule.bsl` + +**Текущая реализация (строки 36-43):** +В функции `СтавкиПоОперациямОтражаемымВКнигеПродаж` отсутствуют ставки НДС22 и НДС22_122. + +**Необходимые изменения:** +Добавить НДС22 и НДС22_122 в массив ставок: +```bsl +Если Параметры.ПлательщикНДС Тогда + МассивСтавок.Добавить(Перечисления.СтавкиНДС.НДС0); + МассивСтавок.Добавить(Перечисления.СтавкиНДС.НДС10); + МассивСтавок.Добавить(Перечисления.СтавкиНДС.НДС10_110); + МассивСтавок.Добавить(Перечисления.СтавкиНДС.НДС18); + МассивСтавок.Добавить(Перечисления.СтавкиНДС.НДС18_118); + МассивСтавок.Добавить(Перечисления.СтавкиНДС.НДС20); + МассивСтавок.Добавить(Перечисления.СтавкиНДС.НДС20_120); + МассивСтавок.Добавить(Перечисления.СтавкиНДС.НДС22); // Добавить для НДС 22% + МассивСтавок.Добавить(Перечисления.СтавкиНДС.НДС22_122); // Добавить для НДС 22/122 + ... +КонецЕсли; +``` + +**Приоритет:** Средний +**Сложность:** Низкая + +#### 4.2. Модификация обработчика ОбработкаПолученияДанныхВыбора + +**Файл:** `CRM3devLocal/src/Enums/СтавкиНДС/ManagerModule.bsl` + +**Текущая реализация (строки 58-88):** +Обработчик `ОбработкаПолученияДанныхВыбора` уже существует, но в нем отсутствует обработка НДС22 и НДС22_122. + +**Необходимые изменения:** + +1. **Добавить НДС22_122 в список исключаемых дробных ставок (строка 65):** +```bsl +Если Параметры.Свойство("ИсключатьДробныеСтавки") И Параметры.ИсключатьДробныеСтавки Тогда + МассивИсключаемыхЗначений.Добавить(Перечисления.СтавкиНДС.НДС10_110); + МассивИсключаемыхЗначений.Добавить(Перечисления.СтавкиНДС.НДС18_118); + МассивИсключаемыхЗначений.Добавить(Перечисления.СтавкиНДС.НДС20_120); + МассивИсключаемыхЗначений.Добавить(Перечисления.СтавкиНДС.НДС22_122); // Добавить для НДС 22/122 +КонецЕсли; +``` + +2. **Добавить НДС22 в список исключаемых недробных ставок (строка 73):** +```bsl +Если Параметры.Свойство("ТолькоДробныеСтавки") И Параметры.ТолькоДробныеСтавки Тогда + МассивИсключаемыхЗначений.Добавить(Перечисления.СтавкиНДС.БезНДС); + МассивИсключаемыхЗначений.Добавить(Перечисления.СтавкиНДС.НДС0); + МассивИсключаемыхЗначений.Добавить(Перечисления.СтавкиНДС.НДС10); + МассивИсключаемыхЗначений.Добавить(Перечисления.СтавкиНДС.НДС18); + МассивИсключаемыхЗначений.Добавить(Перечисления.СтавкиНДС.НДС20); + МассивИсключаемыхЗначений.Добавить(Перечисления.СтавкиНДС.НДС22); // Добавить для НДС 22% +КонецЕсли; +``` + +**Приоритет:** Средний +**Сложность:** Низкая + +### 5. Дополнительные модули (опционально) + +#### 5.1. Общий модуль "ТорговыеПредложенияСлужебный" + +**Файл:** `CRM3devLocal/src/CommonModules/ТорговыеПредложенияСлужебный/Module.bsl` + +**Необходимые изменения:** +Добавить функцию `ДействуетСтавкаНДС22(ДатаПроверки)` (если модуль используется). + +**Полный код функции для вставки:** +```bsl +// Действует ставка НДС 22%. +// +// Параметры: +// ДатаПроверки - Дата - Дата проверки +// +// Возвращаемое значение: +// Булево - Истина, если ставки 22% и 22/122 начали действовать +Функция ДействуетСтавкаНДС22(ДатаПроверки) Экспорт + + ДатаВводаСтавкиНДС22 = Дата(2026, 1, 1); + Возврат ДатаПроверки >= ДатаВводаСтавкиНДС22; + +КонецФункции +``` + +**Примечание:** +- Функция должна быть размещена в области `#Область СлужебныйПрограммныйИнтерфейс` или в области `#Область СлужебныеПроцедурыИФункции` модуля +- Функция экспортируемая (`Экспорт`), поэтому может быть вызвана из других модулей +- Функция используется для определения, действует ли ставка НДС 22% на указанную дату (с 01.01.2026) + +**Приоритет:** Низкий +**Сложность:** Низкая + +#### 3.5.3. Общий модуль "ОфлайнОборудование1СЭвоторВызовСервера" (опционально) + +**Файл:** `CRM3devLocal/src/CommonModules/ОфлайнОборудование1СЭвоторВызовСервера/Module.bsl` + +**Текущая реализация (строки 250-277):** +Модуль обрабатывает данные от офлайн-оборудования Эвотор и преобразует строковые коды налогов (VAT_18, VAT_18_118, VAT_10, VAT_10_110) в значения перечисления СтавкиНДС. В модуле есть жестко закодированный расчет суммы НДС для проверки корректности данных (строка 255): +```bsl +СуммаНДС20 = Окр(Транзакция.resultSum*(20/(120)), 2); +``` + +**Необходимые изменения (если оборудование начнет передавать VAT_22):** +1. Добавить обработку кодов `VAT_22` и `VAT_22_122` в блок преобразования налогов (после строки 277): +```bsl +ИначеЕсли Транзакция.tax = "VAT_22" Тогда + Товар.СтавкаНДС = "22" +ИначеЕсли Транзакция.tax = "VAT_22_122" Тогда + Товар.СтавкаНДС = "22/122" +``` + +2. Добавить проверку суммы НДС для ставки 22% (если требуется валидация данных от оборудования): +```bsl +ИспользоватьСтавкуНДС22 = Истина; +Если Документ.closeDate < Дата(2026,1,1,0,0,0) Тогда + ИспользоватьСтавкуНДС22 = Ложь; +ИначеЕсли Документ.closeDate >= Дата(2026,1,1,0,0,0) И Документ.type = "PAYBACK" И ЗначениеЗаполнено(ЧекККМ.УникальныйИдентификаторСвязанногоДокументаККМ) И + -Транзакция.resultSum > 1 Тогда + СуммаНДС22 = Окр(Транзакция.resultSum*(22/(122)), 2); + Если Транзакция.resultTaxSum <> СуммаНДС22 Тогда + ИспользоватьСтавкуНДС22 = Ложь; + КонецЕсли; +КонецЕсли; +``` + +**Примечание:** +- Изменения требуются только в том случае, если офлайн-оборудование Эвотор начнет передавать коды `VAT_22` и `VAT_22_122` +- Необходимо уточнить у производителя оборудования, поддерживает ли оно новую ставку НДС 22% + +**Приоритет:** Низкий (опционально, зависит от поддержки оборудования) +**Сложность:** Низкая + +--- + +## Анализ проблемы с пересчетом суммы НДС в документах с табличной частью + +### Описание проблемы + +Во **всех документах с табличной частью, содержащей ставку НДС**, при изменении ставки НДС на 22% **не пересчитывается сумма НДС**. + +**Затронутые документы:** +- `ЗаказКлиента` - табличная часть "Товары" +- `ЗаказПоставщику` - табличная часть "Товары" +- `АктВыполненныхРабот` - табличная часть "Услуги" +- `ВозвратТоваровОтКлиента` - табличная часть "Товары" +- `ВозвратТоваровПоставщику` - табличная часть "Товары" +- `ВозвратТоваровМеждуОрганизациями` - табличная часть "Товары" +- `КорректировкаРеализации` - табличная часть "Товары" +- `КорректировкаПриобретения` - табличная часть "Товары" +- `КоммерческоеПредложениеКлиенту` - табличная часть "Товары" +- `ЗаявкаНаВозвратТоваровОтКлиента` - табличные части "ВозвращаемыеТовары", "ЗаменяющиеТовары" +- `ВводОстатков` - различные табличные части (СобственныеТовары, ПолученныеНаКомиссию, ПереданныеНаКомиссию и др.) +- `АктОРасхожденияхПослеОтгрузки` - табличная часть "Товары" +- `АктОРасхожденияхПослеПриемки` - табличная часть "Товары" +- `ВыкупВозвратнойТарыКлиентом` - табличная часть "Товары" +- `ВыкупВозвратнойТарыУПоставщика` - табличная часть "Товары" +- `ВыводИзОборотаИСМП` - табличная часть "Товары" +- `ЗаданиеТорговомуПредставителю` - табличная часть "Товары" +- `ЗаявкаНаРасходованиеДенежныхСредств` - табличная часть "РасшифровкаПлатежа" +- `ЗаписьКнигиПродаж` - табличная часть "Ценности" +- `ЗаписьКнигиПокупок` - табличная часть "Ценности" +- `ЗаявлениеОВвозеТоваров` - табличная часть "Товары" +- `АвансовыйОтчет` - табличная часть "ПрочиеРасходы" +- И другие документы с табличными частями, содержащими реквизит "СтавкаНДС" + +**Причина проблемы:** + +Механизм пересчета суммы НДС использует функции получения числового значения ставки НДС, которые не обрабатывают ставку НДС 22%: +1. **`УчетНДСПереопределяемый.ПолучитьСтавкуНДС`** - возвращает 0 для НДС22 и НДС22_122 +2. **`УчетНДСУПКлиентСервер.ПолучитьСтавкуНДС`** - возвращает 0 для НДС22 и НДС22_122 + +При установке ставки НДС22 эти функции возвращают 0, что приводит к тому, что сумма НДС не пересчитывается или пересчитывается некорректно. + +**Расположение проблемы:** +- Модули расчета ставки НДС: + - `CRM3devLocal/src/CommonModules/УчетНДСПереопределяемый/Module.bsl` - функция `ПолучитьСтавкуНДС` (строки 405-419) + - `CRM3devLocal/src/CommonModules/УчетНДСУПКлиентСервер/Module.bsl` - функция `ПолучитьСтавкуНДС` (строки 43-58) +- Все документы с обработчиками изменения ставки НДС используют эти функции через механизм `ОбработкаТабличнойЧастиКлиентСервер.ПараметрыПересчетаСуммыНДСВСтрокеТЧ` + +### Решение проблемы + +**Необходимо модифицировать две функции:** + +1. **Функция `ПолучитьСтавкуНДС` в модуле `УчетНДСПереопределяемый`** (раздел 3.5.5 документа) +2. **Функция `ПолучитьСтавкуНДС` в модуле `УчетНДСУПКлиентСервер`** (раздел 3.5.5.1 документа) + +Обе функции должны обрабатывать НДС22 и НДС22_122, возвращая значение 22. + +**Важно:** Эта проблема **критична**, так как влияет на корректность расчета суммы НДС при работе со ставкой 22% во **всех документах** с табличной частью, содержащей ставку НДС. После исправления обеих функций пересчет суммы НДС будет работать корректно во всех затронутых документах. + +**Приоритет:** Критический +**Сложность:** Низкая + +**Связь с другими разделами:** +- Раздел 3.5.5 - Общий модуль "УчетНДСПереопределяемый" (содержит необходимые изменения) +- Раздел 3.5.5.1 - Общий модуль "УчетНДСУПКлиентСервер" (содержит необходимые изменения) + +--- + +# Анализ проблемы с формой УПД + +## Описание проблемы + +В форме УПД (Универсальный передаточный документ) **не заполняется ставка НДС** не только для ставки 22% (которая будет действовать с 01.01.2026), но и для текущей ставки 20%, которая уже присутствует в документе `РеализацияТоваровУслуг`. + +**Важно:** Эта проблема **не связана** с функционалом НДС 22% и является **отдельной ошибкой** в коде печати УПД, которая влияет на все ставки НДС (20%, 10%, 18% и т.д.). Проблема должна быть устранена независимо от переноса функционала НДС 22%. + +## Результаты анализа + +### 1. УПД как печатная форма + +**Вывод:** УПД - это не отдельный документ, а **печатная форма**, которая формируется из документов (например, `РеализацияТоваровУслуг`, `АктВыполненныхРабот`). + +**Расположение обработки печати:** +- **Основная конфигурация:** `CRM3devLocal/src/DataProcessors/ПечатьОбщихФорм/ManagerModule.bsl` + - Процедура `ЗаполнитьТабличныйДокументУПД` (строка 2533) +- **Расширение (рабочая версия):** `CRM3devLocal.Рана/src/DataProcessors/ПечатьОбщихФорм/Ext/ManagerModule.bsl` + - Процедура `р_ЗаполнитьТабличныйДокументУПД` (строка 1223) - переопределяет процедуру из основной конфигурации + - **Важно:** Исправление необходимо вносить в расширение, так как оно переопределяет процедуру из основной конфигурации + +### 2. Источник данных для УПД + +Ставка НДС в УПД берется из **табличной части документа** (например, `РеализацияТоваровУслуг.Товары.СтавкаНДС`). + +### 3. Причина проблемы + +**Найдена ошибка в коде:** В процедуре `ЗаполнитьТабличныйДокументУПД` (в расширении - `р_ЗаполнитьТабличныйДокументУПД`, строки 1583-1596) параметр `СтавкаНДС` заполняется **только для некоторых случаев**, а для основных ставок НДС (20%, 10%, 18% и т.д.) **не заполняется вообще**. + +**Текущий код в расширении (строки 1583-1596):** +```bsl +СтруктураПараметров = Новый Структура; +Если ОперацияОблагаетсяНДСУПокупателя Тогда + СтруктураПараметров.Вставить("СтавкаНДС", НСтр("ru='НДС исчисляется налоговым агентом'", Метаданные.Языки.Русский.КодЯзыка)); + СтруктураПараметров.Вставить("СуммаСНДС", "--"); + ТолькоСтавкаБезНДС = Ложь; +ИначеЕсли СтрокаТовары.СтавкаНДС = Перечисления.СтавкиНДС.БезНДС Тогда + СтруктураПараметров.Вставить("СтавкаНДС", НСтр("ru='без НДС'", Метаданные.Языки.Русский.КодЯзыка)); + СтруктураПараметров.Вставить("СуммаНДС", НСтр("ru='без НДС'", Метаданные.Языки.Русский.КодЯзыка)); +ИначеЕсли СтрокаТовары.СтавкаНДС = Перечисления.СтавкиНДС.НДС0 Тогда + СтруктураПараметров.Вставить("СуммаНДС", 0); + ТолькоСтавкаБезНДС = Ложь; +Иначе + ТолькоСтавкаБезНДС = Ложь; +КонецЕсли; +``` + +**Проблема:** В блоке `Иначе` (для всех остальных ставок НДС, включая НДС20, НДС10, НДС18, НДС22 и т.д.) параметр `СтавкаНДС` **не заполняется**, поэтому в печатной форме он остается пустым. + +### 4. Решение проблемы + +**Необходимо добавить заполнение параметра `СтавкаНДС` для всех остальных ставок НДС.** + +**Исправленный код:** +```bsl +СтруктураПараметров = Новый Структура; +Если ОперацияОблагаетсяНДСУПокупателя Тогда + СтруктураПараметров.Вставить("СтавкаНДС", НСтр("ru='НДС исчисляется налоговым агентом'", Метаданные.Языки.Русский.КодЯзыка)); + СтруктураПараметров.Вставить("СуммаСНДС", "--"); + ТолькоСтавкаБезНДС = Ложь; +ИначеЕсли СтрокаТовары.СтавкаНДС = Перечисления.СтавкиНДС.БезНДС Тогда + СтруктураПараметров.Вставить("СтавкаНДС", НСтр("ru='без НДС'", Метаданные.Языки.Русский.КодЯзыка)); + СтруктураПараметров.Вставить("СуммаНДС", НСтр("ru='без НДС'", Метаданные.Языки.Русский.КодЯзыка)); +ИначеЕсли СтрокаТовары.СтавкаНДС = Перечисления.СтавкиНДС.НДС0 Тогда + СтруктураПараметров.Вставить("СтавкаНДС", НСтр("ru='0%'", Метаданные.Языки.Русский.КодЯзыка)); + СтруктураПараметров.Вставить("СуммаНДС", 0); + ТолькоСтавкаБезНДС = Ложь; +Иначе + // Заполняем ставку НДС для всех остальных случаев (НДС20, НДС10, НДС18, НДС22 и т.д.) + Если ЗначениеЗаполнено(СтрокаТовары.СтавкаНДС) Тогда + СтруктураПараметров.Вставить("СтавкаНДС", СтрокаТовары.СтавкаНДС); + КонецЕсли; + ТолькоСтавкаБезНДС = Ложь; +КонецЕсли; +``` + +**Альтернативный вариант (с использованием функции получения представления):** +Если требуется текстовое представление ставки НДС (например, "20%", "10%"), можно использовать: +```bsl +Иначе + // Заполняем ставку НДС для всех остальных случаев + Если ЗначениеЗаполнено(СтрокаТовары.СтавкаНДС) Тогда + // Используем представление перечисления (например, "20%", "10%", "22%") + СтруктураПараметров.Вставить("СтавкаНДС", Строка(СтрокаТовары.СтавкаНДС)); + КонецЕсли; + ТолькоСтавкаБезНДС = Ложь; +КонецЕсли; +``` + +### 5. Аналогичная проблема в других местах + +**Проверка:** Та же проблема может присутствовать в других процедурах печати: +- `ЗаполнитьТабличныйДокументУКД` (строка 2926) - для универсального корректировочного документа +- Процедуры печати счетов-фактур (строки 1755-1779, 3115-3133) + +**Рекомендация:** Проверить и исправить все места, где заполняется параметр `СтавкаНДС` для печатных форм. + +## Рекомендации по устранению проблемы + +### 1. Исправление процедуры ЗаполнитьТабличныйДокументУПД + +**Важно:** Исправление необходимо вносить в **расширение** `CRM3devLocal.Рана`, так как оно переопределяет процедуру из основной конфигурации с помощью директивы `&ИзменениеИКонтроль("ЗаполнитьТабличныйДокументУПД")`. + +**Файл:** `CRM3devLocal.Рана/src/DataProcessors/ПечатьОбщихФорм/Ext/ManagerModule.bsl` + +**Действия:** +1. Найти процедуру `р_ЗаполнитьТабличныйДокументУПД` (строка 1223) +2. Найти существующий блок вставки (строки 1547-1636) - большой фрагмент кода, который уже находится в директивах `#Вставка` / `#КонецВставки` +3. Внутри этого блока найти код со структурой параметров (строки 1583-1596) +4. Добавить исправления непосредственно в существующий блок вставки (без создания новых директив) +5. Протестировать печать УПД для документов с различными ставками НДС (20%, 10%, 0%, без НДС) + +**Примечание:** Изменения в основной конфигурации `CRM3devLocal` не будут применены, так как расширение переопределяет эту процедуру. + +**Вариант исправления кода:** + +**Важно:** Код со структурой параметров (строки 1583-1596) уже находится внутри существующего блока вставки (строки 1547-1636). Исправления нужно добавлять **непосредственно в этот блок**, без создания дополнительных директив `#Вставка` / `#КонецВставки`. + +Необходимо исправить два места: +1. Блок `ИначеЕсли` для ставки НДС 0% (строка 1591-1593) - добавить заполнение `СтавкаНДС` +2. Блок `Иначе` для всех остальных ставок НДС (строки 1594-1595) - добавить заполнение `СтавкаНДС` + +**Исправление 1: Добавление ставки НДС для НДС 0%** + +В строке 1591, перед строкой `СтруктураПараметров.Вставить("СуммаНДС", 0);` добавить: + +```bsl + ИначеЕсли СтрокаТовары.СтавкаНДС = Перечисления.СтавкиНДС.НДС0 Тогда + // {{ [+] (фрагмент ДОБАВЛЕН), Исправление заполнения ставки НДС для НДС 0% + СтруктураПараметров.Вставить("СтавкаНДС", НСтр("ru='0%'", Метаданные.Языки.Русский.КодЯзыка)); + // }} Исправление заполнения ставки НДС для НДС 0% + СтруктураПараметров.Вставить("СуммаНДС", 0); + ТолькоСтавкаБезНДС = Ложь; +``` + +**Исправление 2: Добавление ставки НДС для всех остальных ставок (НДС20, НДС10, НДС18, НДС22 и т.д.)** + +В строке 1594, перед строкой `ТолькоСтавкаБезНДС = Ложь;` добавить: + +```bsl + Иначе + // {{ [+] (фрагмент ДОБАВЛЕН), Исправление заполнения ставки НДС для всех остальных ставок + // Заполняем ставку НДС для всех остальных случаев (НДС20, НДС10, НДС18, НДС22 и т.д.) + Если ЗначениеЗаполнено(СтрокаТовары.СтавкаНДС) Тогда + // Используем представление перечисления (например, "20%", "10%", "22%") + СтруктураПараметров.Вставить("СтавкаНДС", Строка(СтрокаТовары.СтавкаНДС)); + КонецЕсли; + // }} Исправление заполнения ставки НДС для всех остальных ставок + ТолькоСтавкаБезНДС = Ложь; +``` + +**Альтернативный вариант (если требуется использовать значение перечисления напрямую):** + +Если макет печатной формы ожидает значение перечисления, а не строковое представление, можно использовать: + +```bsl + Иначе + // {{ [+] (фрагмент ДОБАВЛЕН), Исправление заполнения ставки НДС для всех остальных ставок + // Заполняем ставку НДС для всех остальных случаев (НДС20, НДС10, НДС18, НДС22 и т.д.) + Если ЗначениеЗаполнено(СтрокаТовары.СтавкаНДС) Тогда + СтруктураПараметров.Вставить("СтавкаНДС", СтрокаТовары.СтавкаНДС); + КонецЕсли; + // }} Исправление заполнения ставки НДС для всех остальных ставок + ТолькоСтавкаБезНДС = Ложь; +``` + +**Важно:** +- Исправления добавляются **внутри существующего блока вставки** (строки 1547-1636), без создания новых директив `#Вставка` / `#КонецВставки` +- Комментарии добавляются в стиле существующих комментариев в блоке + +### 2. Проверка и исправление других процедур печати + +**Действия:** +1. Проверить процедуру `ЗаполнитьТабличныйДокументУКД` (строка 2926) +2. Проверить процедуры печати счетов-фактур +3. Исправить аналогичные проблемы, если они обнаружены + +### 3. Тестирование + +**Действия:** +1. Создать документ `РеализацияТоваровУслуг` с различными ставками НДС: + - Ставка НДС 20% + - Ставка НДС 10% + - Ставка НДС 0% + - Без НДС +2. Сформировать печатную форму УПД для каждого случая +3. Проверить, что ставка НДС корректно отображается во всех случаях +4. После добавления функционала НДС 22% протестировать также ставку 22% + +## Оценка трудозатрат на устранение проблемы + +| Действие | Сложность | Оценка времени | +|----------|-----------|----------------| +| Исправление процедуры ЗаполнитьТабличныйДокументУПД | Низкая | 0.5 часа | +| Проверка и исправление других процедур печати | Низкая | 0.5-1 час | +| Тестирование заполнения ставки НДС в УПД | Средняя | 1-2 часа | +| **ИТОГО** | | **2-3.5 часа** | + +--- + +## Анализ возможности переноса макета УПД 2026 + +### Описание + +В новой конфигурации `CRM326_TEST` используется макет `ПФ_MXL_УниверсальныйПередаточныйДокумент2026` (из общих макетов `ОбщийМакет.ПФ_MXL_УниверсальныйПередаточныйДокумент2026`), который действует с 01.01.2026 и является самым последним макетом УПД. В старой конфигурации этот макет отсутствует. + +### Расположение макета в новой конфигурации + +**Макет:** `ПФ_MXL_УниверсальныйПередаточныйДокумент2026` +**Тип:** Общий макет (CommonTemplate) +**Расположение:** `CRM326_TEST/src/CommonTemplates/ПФ_MXL_УниверсальныйПередаточныйДокумент2026/` +**Наименование:** "Универсальный передаточный документ (в редакции постановления № 1096)" + +### Логика использования в новой конфигурации + +**Процедура:** `ЗаполнитьТабличныйДокументУПД` (строка 4043) +**Модуль:** Модуль менеджера обработки "ПечатьОбщихФорм" +**Файл:** `CRM326_TEST/src/DataProcessors/ПечатьОбщихФорм/Ext/ManagerModule.bsl` + +**Условия использования (строки 4140-4152):** +```bsl +Если ДействуетПостановление2026(ДанныеПечати.Дата, ДанныеПечати.ДатаИсправления) Тогда + ИспользоватьПечатныеФормыСФ2_5 = ПолучитьФункциональнуюОпцию("ИспользоватьПечатныеФормыСФ2_5"); + Если ИспользоватьПечатныеФормыСФ2_5 Тогда + ОпцииПечати.ИспользоватьПечатныеФормыСФ2_5 = ИспользоватьПечатныеФормыСФ2_5; + Если ЗначениеЗаполнено(ДанныеПечати.ЕстьПрослеживаемыеТовары) И ДанныеПечати.ЕстьПрослеживаемыеТовары Или ЕстьПрослеживаемыеТоварыВТабличнойЧасти Тогда + Макет = МакетУПД_2026Прослеж_2_5; + Иначе + Макет = МакетУПД_2026_2_5; + КонецЕсли; + Иначе + Макет = МакетУПД_1096; + КонецЕсли; + ЕстьПостановление2026 = Истина; +``` + +**Функция проверки даты (строка 6689):** +```bsl +Функция ДействуетПостановление2026(ДатаДокумента, ДатаИсправления) + Возврат ДатаДокумента >= '20260101'; +КонецФункции +``` + +**Варианты макета:** +- `ПФ_MXL_УниверсальныйПередаточныйДокумент2026` - основной макет (если функциональная опция выключена) +- `ПФ_MXL_УниверсальныйПередаточныйДокумент2026_2_5` - версия 2.5 (если функциональная опция включена) +- `ПФ_MXL_УниверсальныйПередаточныйДокумент2026Прослеж_2_5` - версия 2.5 для прослеживаемых товаров + +**Статус макетов в старой конфигурации:** +- ❌ `ПФ_MXL_УниверсальныйПередаточныйДокумент2026` - **ОТСУТСТВУЕТ** +- ❌ `ПФ_MXL_УниверсальныйПередаточныйДокумент2026_2_5` - **ОТСУТСТВУЕТ** +- ❌ `ПФ_MXL_УниверсальныйПередаточныйДокумент2026Прослеж_2_5` - **ОТСУТСТВУЕТ** + +### Анализ возможности переноса + +#### 1. Наличие макета в старой конфигурации + +**Статус:** ❌ **ОТСУТСТВУЕТ** + +**Проверка:** +- В старой конфигурации `CRM3devLocal` макет `ПФ_MXL_УниверсальныйПередаточныйДокумент2026` отсутствует +- В старой конфигурации отсутствует папка `CommonTemplates` с макетами УПД (макеты находятся в `DataProcessors/ПечатьОбщихФорм/Templates/`) +- Самый последний макет в старой конфигурации - `ПФ_MXL_УниверсальныйПередаточныйДокумент1096_ru` (действует с 01.10.2024) + +#### 2. Зависимости макета + +**Требуемые компоненты для переноса:** + +1. **Функция `ДействуетПостановление2026`** - ❌ **ОТСУТСТВУЕТ** в старой конфигурации + - Необходимо добавить функцию в модуль `ПечатьОбщихФорм` + - Функция простая: `Возврат ДатаДокумента >= '20260101';` + +2. **Функциональная опция `ИспользоватьПечатныеФормыСФ2_5`** - ❌ **ОТСУТСТВУЕТ** в старой конфигурации + - **Проверка выполнена:** В старой конфигурации `CRM3devLocal` функциональная опция отсутствует + - В новой конфигурации `CRM326_TEST` опция присутствует (`src/FunctionalOptions/ИспользоватьПечатныеФормыСФ2_5.xml`) + - **Рекомендация:** Использовать упрощенную логику без версии 2.5 (не переносить функциональную опцию) + +3. **Логика работы с прослеживаемыми товарами** - ❌ **НЕ РЕКОМЕНДУЕТСЯ К ПЕРЕНОСУ** + - В новой конфигурации используется проверка свойств `Прослеживаемость` и `ПрослеживаемыеКомплектующие` + - В старой конфигурации логика работы с прослеживаемыми товарами в процедуре УПД **отсутствует** + - **Рекомендация:** Избегать переноса функционала по отслеживаемому товару, если возможно + - **Обоснование:** Упрощение логики переноса, отсутствие необходимости в дополнительных проверках + +4. **Общие макеты (CommonTemplates)** - ⚠️ **ТРЕБУЕТ ПРОВЕРКИ** + - В новой конфигурации макет находится в `CommonTemplates` + - В старой конфигурации макеты УПД находятся в `DataProcessors/ПечатьОбщихФорм/Templates/` + - Можно перенести макет в существующую структуру старой конфигурации + +#### 3. Оценка сложности переноса + +**Вариант 1: Полный перенос макета и логики (НЕ рекомендуется)** + +**Действия:** +1. Скопировать макет `ПФ_MXL_УниверсальныйПередаточныйДокумент2026` из новой конфигурации +2. Разместить макет в `CRM3devLocal/src/DataProcessors/ПечатьОбщихФорм/Templates/` (в соответствии со структурой старой конфигурации) +3. Добавить функцию `ДействуетПостановление2026` в модуль `ПечатьОбщихФорм` (в расширении) +4. Модифицировать процедуру `р_ЗаполнитьТабличныйДокументУПД` в расширении для использования нового макета +5. Добавить функциональную опцию `ИспользоватьПечатныеФормыСФ2_5` (требует изменений в конфигурации) +6. Добавить логику определения прослеживаемых товаров (НЕ рекомендуется) +7. Скопировать макеты `ПФ_MXL_УниверсальныйПередаточныйДокумент2026_2_5` и `ПФ_MXL_УниверсальныйПередаточныйДокумент2026Прослеж_2_5` + +**Сложность:** Высокая +**Оценка времени:** 5-8 часов + +**Примечание:** Этот вариант НЕ рекомендуется, так как требует добавления функциональной опции и логики прослеживаемых товаров, что усложняет перенос. + +**Преимущества:** +- Полная поддержка нового формата УПД с 01.01.2026 +- Соответствие требованиям законодательства +- Поддержка всех функций нового макета + +**Недостатки:** +- Требуется проверка совместимости макета с существующим кодом +- Возможны различия в структуре параметров макета +- Требуется тестирование на реальных данных + +**Вариант 2: Использование существующего макета 1096 (упрощенный)** + +**Действия:** +1. Использовать существующий макет `ПФ_MXL_УниверсальныйПередаточныйДокумент1096_ru` для дат >= 01.01.2026 +2. Убедиться, что макет 1096 поддерживает ставку НДС 22% +3. Добавить функцию `ДействуетПостановление2026` и логику выбора макета 1096 для дат >= 01.01.2026 + +**Сложность:** Низкая +**Оценка времени:** 0.5-1 час + +**Различия между макетом 1096 и макетом 2026:** + +**Основные различия (кроме прослеживаемых товаров):** + +1. **Графа 14 в УКД (Универсальный корректировочный документ):** + - В макете 2026 добавлена новая графа 14 для отображения изменений стоимости прослеживаемых товаров + - В макете 1096 эта графа отсутствует + - **Примечание:** Если прослеживаемые товары не используются, это различие не критично + +2. **Строка 5 "К платежно-расчетному документу №_ от_":** + - В макете 2026 изменен порядок заполнения этой строки согласно Постановлению Правительства РФ от 16.08.2024 № 1096 + - Теперь при оплате работ, услуг или покупке товаров у иностранных лиц на территории РФ необходимо указывать дату и номер платежного документа (для налоговых агентов по п. 2 ст. 161 НК РФ) + - Больше не требуется указывать дату и номер платежного поручения, по которому НДС был перечислен в бюджет + - **Примечание:** Текст строки в обоих макетах одинаковый, различается только логика заполнения + +3. **Структура таблиц:** + - Макет 2026 содержит дополнительную таблицу с 24 колонками (для прослеживаемых товаров) + - Макет 1096 содержит таблицу с 13 колонками + - **Примечание:** Если прослеживаемые товары не используются, это различие не критично + +**Поддержка ставки НДС 22%:** +- Макет 1096 **поддерживает** отображение ставки НДС 22%, так как ставка НДС отображается в графе 7 (колонка 7) как текстовое/числовое значение +- Макет 1096 не имеет ограничений на значения ставки НДС и может отображать любое значение, включая 22% +- **Вывод:** Макет 1096 можно использовать для документов с датой >= 01.01.2026, если не требуется поддержка прослеживаемых товаров и изменений в порядке заполнения строки 5 + +**Вариант 3: Перенос только основного макета 2026 (без версий 2.5)** + +**Действия:** +1. Скопировать только основной макет `ПФ_MXL_УниверсальныйПередаточныйДокумент2026` (без версий 2.5) +2. Разместить макет в `CRM3devLocal/src/DataProcessors/ПечатьОбщихФорм/Templates/` +3. Добавить функцию `ДействуетПостановление2026` +4. Модифицировать процедуру для использования макета 2026 (без проверки функциональной опции и прослеживаемых товаров) + +**Сложность:** Средняя +**Оценка времени:** 2-3 часа + +**Преимущества:** +- Минимальные изменения в логике +- Не требует функциональной опции +- Не требует логики прослеживаемых товаров + +**Недостатки:** +- Отсутствует поддержка версий 2.5 +- Отсутствует поддержка прослеживаемых товаров + +**Вариант 2 - Преимущества:** +- Минимальные изменения +- Быстрая реализация +- Использование существующего макета +- Макет 1096 поддерживает отображение ставки НДС 22% + +**Вариант 2 - Недостатки:** +- Отсутствует графа 14 в УКД для прослеживаемых товаров (если требуется) +- Возможно несоответствие требованиям постановления 2026 года по порядку заполнения строки 5 (если организация является налоговым агентом по п. 2 ст. 161 НК РФ) +- Может потребоваться обновление макета в будущем + +**Когда использовать Вариант 2:** +- Если организация не использует прослеживаемые товары +- Если организация не является налоговым агентом по п. 2 ст. 161 НК РФ (не покупает товары/услуги у иностранных лиц на территории РФ) +- Если требуется быстрое решение без переноса макета + +#### 4. Возможность переноса всей логики заполнения макетов УПД 2026 + +**Анализ возможности переноса:** + +**✅ Можно перенести:** +1. **Функция `ДействуетПостановление2026`** - простая функция, легко переносится +2. **Основной макет `ПФ_MXL_УниверсальныйПередаточныйДокумент2026`** - можно скопировать и адаптировать +3. **Базовая логика выбора макета** - можно перенести упрощенную версию без версий 2.5 + +**⚠️ Требует проверки/адаптации:** +1. **Функциональная опция `ИспользоватьПечатныеФормыСФ2_5`** - ❌ **ОТСУТСТВУЕТ** в старой конфигурации + - **Решение:** Использовать упрощенную логику без проверки опции (НЕ переносить функциональную опцию) +2. **Макеты версий 2.5** - требуют наличия функциональной опции + - **Решение:** НЕ переносить макеты версий 2.5, так как функциональная опция отсутствует + +**❌ НЕ рекомендуется переносить:** +1. **Макеты версий 2.5** (`ПФ_MXL_УниверсальныйПередаточныйДокумент2026_2_5`, `ПФ_MXL_УниверсальныйПередаточныйДокумент2026Прослеж_2_5`) + - Требуют функциональную опцию, которая отсутствует в старой конфигурации +2. **Логика определения прослеживаемых товаров** - избегать переноса, если возможно + - Упрощает логику переноса + - Отсутствует необходимость в дополнительных проверках + - Функционал прослеживаемости может не использоваться в старой конфигурации + +**Вывод:** Всю логику заполнения макетов УПД 2026 **можно перенести**, но рекомендуется использовать **упрощенный вариант** (Вариант 3) без версий 2.5 и прослеживаемых товаров. Функциональная опция отсутствует в старой конфигурации, поэтому перенос логики прослеживаемых товаров и макетов версий 2.5 **не рекомендуется**. + +#### 5. Рекомендации + +**Рекомендуемый подход:** **Вариант 2 (Использование существующего макета 1096)** ✅ **ВЫБРАН К РЕАЛИЗАЦИИ** + +**Обоснование:** +- Макет 1096 уже существует в расширении и используется для дат >= 01.10.2024 +- Макет 1096 поддерживает отображение ставки НДС 22% (ставка отображается как текстовое значение без ограничений) +- Минимальные изменения в коде (только добавление функции проверки даты и уточнение логики) +- Быстрая реализация без переноса макетов +- Не требует добавления функциональной опции и логики прослеживаемых товаров +- Подходит для организаций, которые не используют прослеживаемые товары и не являются налоговыми агентами по п. 2 ст. 161 НК РФ + +**Альтернативные подходы:** +- **Вариант 3** - если в будущем потребуется полное соответствие требованиям постановления 2026 года (графа 14 в УКД, изменения в строке 5) +- **Вариант 1** - НЕ рекомендуется, так как требует добавления функциональной опции и логики прослеживаемых товаров + +#### 6. Детальный план реализации Варианта 2 (Использование макета 1096) + +**Статус:** ✅ **ВЫБРАН К РЕАЛИЗАЦИИ** + +**В расширении `CRM3devLocal.Рана`:** + +**Шаг 1: Добавить функцию `ДействуетПостановление2026`** + +**Место:** Модуль `CRM3devLocal.Рана/src/DataProcessors/ПечатьОбщихФорм/Ext/ManagerModule.bsl` + +**Расположение:** В конце модуля, после всех процедур и функций (после строки 1679, перед `#КонецЕсли`) + +**Действие:** Добавить функцию для проверки, действует ли постановление 2026 года (дата >= 01.01.2026) + +**Код:** +```bsl +// {{ [+] (фрагмент ДОБАВЛЕН), Добавление функции проверки постановления 2026 +// 05.01.2026 - КМА +Функция ДействуетПостановление2026(ДатаДокумента, ДатаИсправления) + + Возврат ДатаДокумента >= '20260101'; + +КонецФункции +// }} Добавление функции проверки постановления 2026 +``` + +**Примечание:** +- Функция аналогична существующим функциям `ДействуетПостановление534`, `ДействуетПостановление981`, которые определены в основной конфигурации (в области `#Область Печать_УПД`) +- В расширении эти функции используются, но не определены +- В расширении нет областей модуля (`#Область`), поэтому новая функция добавляется в конце модуля, после всех процедур и функций, но перед закрывающим `#КонецЕсли` +- **Важно:** Директивы `#Вставка` / `#КонецВставки` НЕ применяются для новых функций/процедур в расширяемом модуле, только для изменений внутри существующих процедур/функций + +--- + +**Шаг 2: Добавить переменную `ЕстьПостановление2026`** + +**Место:** Процедура `р_ЗаполнитьТабличныйДокументУПД`, после строки 1257 (после объявления других переменных `ЕстьПостановление*`) + +**Действие:** Добавить переменную для отслеживания использования постановления 2026 + +**Код:** +```bsl +#Вставка +// {{ [+] (фрагмент ДОБАВЛЕН), Добавление переменной для постановления 2026 +// 05.01.2026 - КМА +ЕстьПостановление2026 = Ложь; +// }} Добавление переменной для постановления 2026 +#КонецВставки +``` + +--- + +**Шаг 3: Обновить логику выбора макета для дат >= 01.01.2026** + +**Место:** Процедура `р_ЗаполнитьТабличныйДокументУПД`, строка 1301-1304 (существующий блок выбора макета 1096) + +**Текущий код (строки 1301-1304):** +```bsl +Если ?(ЗначениеЗаполнено(ДанныеПечати.ДатаИсправления), ДанныеПечати.ДатаИсправления, ДанныеПечати.Дата) >= '20241001' Тогда + Макет = МакетУПД_1096; + ЕстьПостановление1096 = Истина; +КонецЕсли; +``` + +**Действие:** Заменить текущую проверку на использование функции `ДействуетПостановление2026` для дат >= 01.01.2026, сохранив логику для дат >= 01.10.2024 + +**Новый код:** +```bsl +#Вставка + // {{ [+] (фрагмент ДОБАВЛЕН), Анисимов Артур Маратович #38867 16.10.24 + // {{ [+] (фрагмент ИЗМЕНЕН), Обновление логики выбора макета 1096 для постановлений 1096 и 2026 + // 05.01.2026 - КМА + // Для дат >= 01.01.2026 используем макет 1096 (поддержка НДС 22%) + Если ДействуетПостановление2026(ДанныеПечати.Дата, ДанныеПечати.ДатаИсправления) Тогда + Макет = МакетУПД_1096; + ЕстьПостановление2026 = Истина; + ЕстьПостановление1096 = Истина; // Сохраняем для совместимости + // Для дат >= 01.10.2024 и < 01.01.2026 используем макет 1096 (постановление 1096) + ИначеЕсли ?(ЗначениеЗаполнено(ДанныеПечати.ДатаИсправления), ДанныеПечати.ДатаИсправления, ДанныеПечати.Дата) >= '20241001' Тогда + Макет = МакетУПД_1096; + ЕстьПостановление1096 = Истина; + КонецЕсли; + // }} Обновление логики выбора макета 1096 для постановлений 1096 и 2026 + // }} Анисимов Артур Маратович # +#КонецВставки +``` + +**Примечание:** Поскольку исходный фрагмент уже находится внутри директив `#Вставка ... #КонецВставки`, директивы `#Удаление ... #КонецУдаления` не требуются. Достаточно изменить содержимое внутри существующих директив `#Вставка ... #КонецВставки`. + +**Примечание:** +- Макет `МакетУПД_1096` уже загружен в строке 1234-1236, дополнительных действий не требуется +- Макет 1096 поддерживает отображение ставки НДС 22% (проверено) +- Логика сохраняет обратную совместимость с существующим кодом + +--- + +**Шаг 4: Добавить проверку в структуру `ДействующиеПостановления` (опционально, для единообразия)** + +**Место:** Процедура `р_ЗаполнитьТабличныйДокументУПД`, строка 709-717 (блок заполнения структуры `ДействующиеПостановления`) + +**Действие:** Добавить проверку постановления 2026 в структуру для единообразия с другими постановлениями + +**Код:** +```bsl +#Вставка +// {{ [+] (фрагмент ДОБАВЛЕН), Добавление проверки постановления 2026 в структуру +// 05.01.2026 - КМА +ДействующиеПостановления.Вставить("Постановление2026", ДействуетПостановление2026(ДанныеПечати.Дата, ДанныеПечати.ДатаИсправления)); +// }} Добавление проверки постановления 2026 в структуру +#КонецВставки +``` + +**Примечание:** Этот шаг опционален, но рекомендуется для единообразия кода и возможной будущей обработки постановления 2026. + +--- + +**Шаг 5: Проверка поддержки ставки НДС 22% в макете 1096** + +**Действие:** Убедиться, что макет 1096 корректно отображает ставку НДС 22% + +**Проверка:** +- ✅ Макет 1096 уже используется в расширении для дат >= 01.10.2024 +- ✅ Ставка НДС отображается в графе 7 (колонка 7) как текстовое/числовое значение +- ✅ Макет не имеет ограничений на значения ставки НДС +- ✅ Исправление заполнения ставки НДС в процедуре `р_ЗаполнитьТабличныйДокументУПД` уже внесено (см. раздел "13. Обработка "ПечатьОбщихФорм"") + +**Вывод:** Макет 1096 **поддерживает** отображение ставки НДС 22%, дополнительных изменений в макет не требуется. + +--- + +**Итоговый список изменений:** + +1. ✅ Добавить функцию `ДействуетПостановление2026` (Шаг 1) +2. ✅ Добавить переменную `ЕстьПостановление2026` (Шаг 2) +3. ✅ Обновить логику выбора макета для дат >= 01.01.2026 (Шаг 3) +4. ⚠️ Добавить проверку в структуру `ДействующиеПостановления` (Шаг 4, опционально) +5. ✅ Проверка поддержки НДС 22% выполнена (Шаг 5) + +**Оценка трудозатрат:** 0.5-1 час + +**Файлы для изменения:** +- `CRM3devLocal.Рана/src/DataProcessors/ПечатьОбщихФорм/Ext/ManagerModule.bsl` + +**Тестирование:** +1. Проверить формирование УПД для документа с датой >= 01.01.2026 +2. Проверить отображение ставки НДС 22% в графе 7 +3. Проверить отображение других ставок НДС (0%, 10%, 20%) +4. Проверить обратную совместимость с датами < 01.01.2026 + +--- + +#### 7. Проблема с отображением ставки НДС в УПД (столбец 7 показывает "--") + +**Статус:** ⚠️ **ОБНАРУЖЕНА ПРОБЛЕМА ПРИ ТЕСТИРОВАНИИ** + +**Описание проблемы:** +После внесения изменений по реализации Варианта 2 (использование макета 1096) и исправления заполнения ставки НДС в процедуре `р_ЗаполнитьТабличныйДокументУПД`, при тестировании на реальной базе данных обнаружено, что в печатной форме УПД в столбце 7 (налоговая ставка) все равно отображается "--" для всех строк, включая строки с различными ставками НДС (20%, 0%, Без НДС и т.д.). При этом сумма НДС (графа 8) рассчитывается корректно. + +**Анализ проблемы:** + +1. **Порядок выполнения кода:** + - В текущей реализации процедура `ПроставитьПрочеркиВПустыеПоляСтроки` вызывается **ДО** заполнения параметров (строка 1596) + - Параметры заполняются **ПОСЛЕ** вызова этой процедуры (строка 1628) + - **Подтверждено при тестировании:** На строке 1596 при выполнении `ПроставитьПрочеркиВПустыеПоляСтроки` в `ОбластьСтрока.Параметры.СтавкаНДС` значение `Неопределено`, хотя в документе ставка НДС установлена (например, 20%) + - Процедура `ПроставитьПрочеркиВПустыеПоляСтроки` устанавливает "--" в пустые поля макета, включая поле `СтавкаНДС` + - После заполнения параметров значение "--" не перезаписывается, так как процедура уже установила его в макет + +2. **Потеря значения СтавкаНДС при свертке таблицы значений:** + - **Критическая проблема:** На строке 1432 `СтавкаНДС` указана в `КолонкиСуммы` вместо `КолонкиГруппы` + - При свертке таблицы значений (`ТоварыТабЗначений.Свернуть()`) колонки из `КолонкиСуммы` суммируются + - `СтавкаНДС` - это перечисление, а не число, поэтому при суммировании значение теряется и становится `Неопределено` + - **Подтверждено при тестировании:** На строке 1618 `СтрокаТовары.СтавкаНДС` содержит `Неопределено`, хотя в документе ставка НДС установлена (например, 20%) + - **Сравнение с другими печатными формами:** + - В строке 1009 (счет-фактура) `СтавкаНДС` указана в `КолонкиГруппы` - **правильно** + - В строке 118 (ТОРГ-12) `СтавкаНДС` указана в `КолонкиГруппы` - **правильно** + - В строке 1432 (УПД) `СтавкаНДС` указана в `КолонкиСуммы` - **НЕПРАВИЛЬНО** + +3. **Заполнение параметра СтавкаНДС:** + - Для ставок НДС 0% и "Без НДС" параметр заполняется явно через `НСтр()` + - Для остальных ставок (НДС20, НДС10, НДС18, НДС22) используется код (строки 1618-1621): + ```bsl + Если ЗначениеЗаполнено(СтрокаТовары.СтавкаНДС) Тогда + СтруктураПараметров.Вставить("СтавкаНДС", СтрокаТовары.СтавкаНДС); + КонецЕсли; + ``` + - Код заполнения параметра корректен, но не выполняется, так как `СтрокаТовары.СтавкаНДС` = `Неопределено` из-за проблемы при свертке + +**Предложения по исправлению:** + +**КРИТИЧЕСКОЕ ИСПРАВЛЕНИЕ 1: Переместить `СтавкаНДС` из `КолонкиСуммы` в `КолонкиГруппы` при свертке таблицы значений** + +**Место:** Процедура `р_ЗаполнитьТабличныйДокументУПД`, строки 1428-1436 + +**Текущий код (строка 1432):** +```bsl +КолонкиСуммы = "Количество, КоличествоПоРНПТ, Цена, СуммаБезНДС, СуммаНДС, СуммаСНДС, СтавкаНДС, КоличествоДо, ..."; +``` + +**Исправленный код:** + +**Примечание:** Код находится внутри существующего блока `#Вставка ... #КонецВставки` (строки 1419-1438), поэтому новые директивы не требуются. + +**Изменение: Переместить `СтавкаНДС` из `КолонкиСуммы` в `КолонкиГруппы`** + +**Текущий код (строки 1428-1434):** +```bsl +КолонкиГруппы = "Ссылка, НомерСтроки, НомерСтрокиИсходногоСФ, Номенклатура, НоменклатураНаименование, НоменклатураКод, КодТНВЭД, ЕдиницаИзмерения, " + + "ЕдиницаИзмеренияНаименование, ЕдиницаИзмеренияКод, Упаковка, ЕдиницаИзмеренияТНВЭД, ЕдиницаИзмеренияТНВЭДНаименование, ЕдиницаИзмеренияТНВЭДКод, " + + "Характеристика, ХарактеристикаНаименование, НомерГТД, СтранаПроисхождения, СтранаПроисхожденияКод, НомерСтрокиНаборы, ВариантПредставленияНабораВПечатныхФормах, " + + "ВариантРасчетаЦеныНабора, НоменклатураНабора, ХарактеристикаНабора, ЭтоКомплектующие, ЭтоНабор, ПолныйНабор, ЭтоВозвратнаяТара"; +КолонкиСуммы = "Количество, КоличествоПоРНПТ, Цена, СуммаБезНДС, СуммаНДС, СуммаСНДС, СтавкаНДС, КоличествоДо, ..."; +``` + +**Исправленный код:** +```bsl +// {{ [+] (фрагмент ИЗМЕНЕН), Исправление свертки таблицы значений - перемещение СтавкаНДС в КолонкиГруппы +// 05.01.2026 - КМА +// Проблема: СтавкаНДС указана в КолонкиСуммы, из-за чего при свертке значение теряется (становится Неопределено) +// Решение: Переместить СтавкаНДС в КолонкиГруппы, как это сделано в других печатных формах (счет-фактура, ТОРГ-12) +КолонкиГруппы = "Ссылка, НомерСтроки, НомерСтрокиИсходногоСФ, Номенклатура, НоменклатураНаименование, НоменклатураКод, КодТНВЭД, ЕдиницаИзмерения, " + + "ЕдиницаИзмеренияНаименование, ЕдиницаИзмеренияКод, Упаковка, ЕдиницаИзмеренияТНВЭД, ЕдиницаИзмеренияТНВЭДНаименование, ЕдиницаИзмеренияТНВЭДКод, " + + "Характеристика, ХарактеристикаНаименование, НомерГТД, СтранаПроисхождения, СтранаПроисхожденияКод, НомерСтрокиНаборы, ВариантПредставленияНабораВПечатныхФормах, " + + "ВариантРасчетаЦеныНабора, НоменклатураНабора, ХарактеристикаНабора, ЭтоКомплектующие, ЭтоНабор, ПолныйНабор, ЭтоВозвратнаяТара, СтавкаНДС"; +КолонкиСуммы = "Количество, КоличествоПоРНПТ, Цена, СуммаБезНДС, СуммаНДС, СуммаСНДС, КоличествоДо, КоличествоПоРНПТДо, ЦенаДо, СуммаБезНДСДо, " + + "РазницаБезНДСУвеличение, РазницаБезНДСУменьшение, СуммаНДСДо, РазницаНДСУвеличение, " + + "РазницаНДСУменьшение, СуммаСНДСДо, РазницаСНДСУвеличение, РазницаСНДСУменьшение"; +// }} Исправление свертки таблицы значений - перемещение СтавкаНДС в КолонкиГруппы +``` + +**Обоснование:** При свертке таблицы значений колонки из `КолонкиГруппы` используются для группировки (должны быть одинаковыми в группе), а колонки из `КолонкиСуммы` суммируются. `СтавкаНДС` - это перечисление, а не число, поэтому его нельзя суммировать. При суммировании перечисления значение теряется и становится `Неопределено`. Это исправление устраняет корневую причину проблемы. + +--- + +**Вариант 1: Переместить вызов `ПроставитьПрочеркиВПустыеПоляСтроки` после заполнения параметров (рекомендуемый)** + +**Место:** Процедура `р_ЗаполнитьТабличныйДокументУПД`, строки 1593-1628 + +**Текущий код:** +```bsl +Если НаборыСервер.ВыводитьТолькоЗаголовок(СтрокаТовары, ИспользоватьНаборы) Тогда + ЗаполнитьРеквизитыСтрокиТовара(СтрокаТовары, ОбластьСтрока, Неопределено, , ВыводитьКодыТНВЭД); +Иначе + НомерСтроки = НомерСтроки + 1; + ЗаполнитьРеквизитыСтрокиТовара(СтрокаТовары, ОбластьСтрока, НомерСтроки, , ВыводитьКодыТНВЭД); + ПроставитьПрочеркиВПустыеПоляСтроки(ОбластьСтрока); // ← Вызывается ДО заполнения параметров +КонецЕсли; + +СтруктураПараметров = Новый Структура; +// ... заполнение СтруктураПараметров ... +ОбластьСтрока.Параметры.Заполнить(СтруктураПараметров); +``` + +**Исправленный код:** + +**Примечание:** Код, который нужно изменить, находится внутри существующего блока `#Вставка ... #КонецВставки` (строки 1563-1664), поэтому новые директивы `#Удаление` и `#Вставка` не требуются. Нужно изменить код непосредственно внутри существующего блока. + +**Изменение 1: Убрать вызов `ПроставитьПрочеркиВПустыеПоляСтроки` из блока `Иначе` (строка 1596)** + +**Текущий код (строка 1596):** +```bsl +ПроставитьПрочеркиВПустыеПоляСтроки(ОбластьСтрока); +``` + +**Исправленный код:** +```bsl +// {{ [+] (фрагмент ИЗМЕНЕН), Перемещение вызова ПроставитьПрочеркиВПустыеПоляСтроки после заполнения параметров +// 05.01.2026 - КМА +// ПроставитьПрочеркиВПустыеПоляСтроки вызывается ПОСЛЕ заполнения параметров (строка удалена) +// }} Перемещение вызова ПроставитьПрочеркиВПустыеПоляСтроки после заполнения параметров +``` + +**Изменение 2: Добавить вызов `ПроставитьПрочеркиВПустыеПоляСтроки` после заполнения параметров** + +**Место:** После строки `ОбластьСтрока.Параметры.Заполнить(СтруктураПараметров);` (строка 1628), внутри существующего блока `#Вставка` + +**Код для добавления:** +```bsl +// {{ [+] (фрагмент ДОБАВЛЕН), Вызов ПроставитьПрочеркиВПустыеПоляСтроки после заполнения параметров +// 05.01.2026 - КМА +// Вызываем ПроставитьПрочеркиВПустыеПоляСтроки ПОСЛЕ заполнения параметров, чтобы параметр СтавкаНДС не был перезаписан "--" +Если Не НаборыСервер.ВыводитьТолькоЗаголовок(СтрокаТовары, ИспользоватьНаборы) Тогда + ПроставитьПрочеркиВПустыеПоляСтроки(ОбластьСтрока); +КонецЕсли; +// }} Вызов ПроставитьПрочеркиВПустыеПоляСтроки после заполнения параметров +``` + +**Обоснование:** Параметры заполняются до вызова `ПроставитьПрочеркиВПустыеПоляСтроки`, поэтому параметр `СтавкаНДС` уже будет заполнен и не будет заменен на "--". + +**Важно:** Оба исправления (КРИТИЧЕСКОЕ ИСПРАВЛЕНИЕ 1 и Вариант 1) должны быть применены вместе. Без первого исправления `СтрокаТовары.СтавкаНДС` будет `Неопределено`, и параметр не будет заполнен. Без второго исправления параметр будет перезаписан "--" процедурой `ПроставитьПрочеркиВПустыеПоляСтроки`. + +--- + +**Вариант 2: Использовать явное преобразование перечисления в строку** + +**Место:** Процедура `р_ЗаполнитьТабличныйДокументУПД`, строка 1619 + +**Текущий код:** +```bsl +Если ЗначениеЗаполнено(СтрокаТовары.СтавкаНДС) Тогда + СтруктураПараметров.Вставить("СтавкаНДС", СтрокаТовары.СтавкаНДС); +КонецЕсли; +``` + +**Исправленный код:** +```bsl +#Вставка +// {{ [+] (фрагмент ИЗМЕНЕН), Исправление преобразования перечисления в строку для ставки НДС +// 05.01.2026 - КМА +Если ЗначениеЗаполнено(СтрокаТовары.СтавкаНДС) Тогда + // Используем Формат() для получения представления перечисления + СтруктураПараметров.Вставить("СтавкаНДС", Формат(СтрокаТовары.СтавкаНДС, "ДЛФ=Д")); +КонецЕсли; +// }} Исправление преобразования перечисления в строку для ставки НДС +#КонецВставки +``` + +**Альтернативный вариант (если Формат не работает):** +```bsl +Если ЗначениеЗаполнено(СтрокаТовары.СтавкаНДС) Тогда + // Получаем представление перечисления через Строка() + ПредставлениеСтавки = Строка(СтрокаТовары.СтавкаНДС); + СтруктураПараметров.Вставить("СтавкаНДС", ПредставлениеСтавки); +КонецЕсли; +``` + +**Обоснование:** Явное преобразование перечисления в строковое представление гарантирует корректное отображение ставки НДС. + +--- + +**Рекомендуемый подход:** Использовать **Вариант 1** (перемещение вызова `ПроставитьПрочеркиВПустыеПоляСтроки`), так как это решает корневую причину проблемы. Если проблема сохранится, дополнительно применить **Вариант 2**. + +**Оценка трудозатрат:** 0.5-1 час + +**Приоритет:** Высокий (критично для корректного отображения УПД) + +--- + +## Порядок выполнения работ + +### Этап 1: Подготовка (Приоритет: Критический) + +1. Добавить значения в перечисление `СтавкиНДС`: + - `НДС22` - основная ставка НДС 22% + - `НДС22_122` - расчетная ставка НДС 22/122 +2. Выполнить обновление конфигурации базы данных +3. Создать элементы справочника `СтавкиНДС` с перечислениями `НДС22` и `НДС22_122` (вручную или через код обновления) + +### Этап 2: Модификация модулей учета НДС (Приоритет: Критический) + +1. Модифицировать функцию `СтавкаНДСПоУмолчанию` в модуле `УчетНДСУП`: + - Добавить проверку даты >= '20260101' + - Вернуть ставку НДС22 или НДС22_122 для дат >= 01.01.2026 +2. Модифицировать функцию `СкорректироватьСтавкуНДС` в модуле `УчетНДСУП`: + - Добавить проверку ставок НДС22 и НДС22_122 +3. Создать или модифицировать модуль `УчетНДСЛокализация`: + - Добавить функционал создания элементов справочника СтавкаНДС22 и СтавкаНДС22_122 + - Добавить логику определения ставки НДС по умолчанию с учетом даты >= 01.01.2026 + +### Этап 3: Модуль менеджера перечисления (Приоритет: Средний) + +1. Добавить обработчик `ОбработкаПолученияДанныхВыбора` в модуль менеджера перечисления `СтавкиНДС` +2. Добавить логику исключения дробных и недробных ставок + +### Этап 4: Тестирование (Приоритет: Критический) + +1. Проверить заполнение ставки НДС в документах с датой >= 01.01.2026 +2. Проверить отображение ставки НДС в печатных формах (включая УПД) +3. Проверить выбор ставки НДС вручную в формах документов +4. Проверить корректность расчетов НДС для ставки 22% +5. Провести регрессионное тестирование для дат < 01.01.2026 + +### Этап 5: Реализация поддержки УПД для дат >= 01.01.2026 (Вариант 2) (Приоритет: Высокий) + +**Статус:** ✅ **ВЫБРАН К РЕАЛИЗАЦИИ** + +1. **Добавить функцию `ДействуетПостановление2026`** в модуль `ПечатьОбщихФорм/Ext/ManagerModule.bsl` +2. **Добавить переменную `ЕстьПостановление2026`** в процедуру `р_ЗаполнитьТабличныйДокументУПД` +3. **Обновить логику выбора макета** для дат >= 01.01.2026 (использовать макет 1096) +4. **Добавить проверку в структуру `ДействующиеПостановления`** (опционально) +5. **Проверить формирование УПД** для документа с датой >= 01.01.2026 +6. **Проверить отображение ставки НДС 22%** в графе 7 УПД +7. **Проверить отображение других ставок НДС** (0%, 10%, 20%) в УПД +8. **Проверить обратную совместимость** с датами < 01.01.2026 + +**Примечание:** Исправление заполнения ставки НДС в процедуре `р_ЗаполнитьТабличныйДокументУПД` уже внесено ранее (см. раздел "13. Обработка "ПечатьОбщихФорм""). + +--- + +## Оценка трудозатрат + +| Компонент | Сложность | Оценка времени | +|-----------|-----------|----------------| +| Добавление значений в перечисление СтавкиНДС | Низкая | 0.5 часа | +| Модификация функции СтавкаНДСПоУмолчанию | Низкая | 1 час | +| Модификация функции СкорректироватьСтавкуНДС | Низкая | 0.5 часа | +| Модификация модуля ДенежныеСредстваСервер | Низкая | 0.5 часа | +| Модификация модуля МенеджерОбменаЧерезУниверсальныйФормат | Средняя | 1-1.5 часа | +| Модификация модуля ИнтеграцияСЯндексКассойУТ | Низкая | 0.5 часа | +| Модификация модуля ПодключаемоеОборудованиеOfflineВызовСервера | Низкая | 0.5 часа | +| Модификация модуля УчетНДСПереопределяемый | Низкая | 0.5 часа | +| Модификация модуля УчетНДСУПСлужебный | Средняя | 1-1.5 часа | +| Модификация обработки р_ИмпортЗаказовКлиентов | Низкая | 0.5 часа | +| Устранение проблемы с УПД (исправление процедуры ЗаполнитьТабличныйДокументУПД) | Низкая | 2-3.5 часа | +| Перенос макета УПД 2026 (опционально) | Средняя-Высокая | 3-5 часов | +| Тестирование | Средняя | 4-5 часов | +| **ИТОГО (без переноса макета)** | | **12.5-16.5 часов** | +| **ИТОГО (с переносом макета)** | | **15.5-21.5 часов** | + +**Примечание:** Трудозатраты обновлены с учетом необходимых изменений в других модулях: +- ❌ Исключено: Создание/модификация процедуры `ЗаполнитьСправочникСтавкиНДС` (3-5 часов) +- ❌ Исключено: Добавление обработчиков обновления информационной базы (1 час) +- ✅ Добавлено: Модификация 7 дополнительных модулей для поддержки НДС 22% (4.5-5.5 часов) + +--- + +## Риски и рекомендации + +### Риски: + +1. **Отсутствие справочника СтавкиНДС:** В старой конфигурации используется только перечисление `СтавкиНДС`, справочник отсутствует. При работе по варианту 2 (только перечисление) этот риск исключен. + +2. **Зависимости от других модулей:** Функционал определения ставки НДС может зависеть от других модулей, которые могут отсутствовать в старой конфигурации. + +3. **Проблемы с обновлением базы данных:** При добавлении значений в перечисление необходимо выполнить обновление конфигурации базы данных, что может потребовать остановки работы пользователей. + +4. **Проблемы с макетами УПД:** Макеты печатных форм могут не содержать полей для отображения ставки НДС или могут быть некорректно связаны с данными. **Текущая проблема:** Процедура `ЗаполнитьТабличныйДокументУПД` не заполняет ставку НДС для всех ставок (кроме БезНДС, НДС0 и НДС исчисляется налоговым агентом). + +5. **Регрессионные проблемы:** Изменения могут повлиять на работу с существующими ставками НДС (0%, 10%, 20%). + +6. **Различия в типах данных:** В новой конфигурации используется справочник `СтавкиНДС`, в старой - перечисление. При работе по варианту 2 необходимо убедиться, что все места использования ставки НДС работают с перечислением, а не со справочником. + +### Рекомендации: + +1. Перед внесением изменений создать резервную копию конфигурации и базы данных +2. Вносить изменения поэтапно, с тестированием после каждого этапа +3. Документировать все внесенные изменения +4. Провести регрессионное тестирование существующего функционала +5. Убедиться в корректности работы со ставками НДС 0%, 10%, 20% после добавления 22% +6. **Для проблемы с УПД:** + - Сначала проверить заполнение ставки НДС в документе + - Затем проверить макеты УПД + - При необходимости добавить поля для отображения ставки НДС в макеты +7. **Для даты ввода ставки 22%:** + - Убедиться, что дата 01.01.2026 корректна для вашей организации + - При необходимости скорректировать дату в коде + +--- + +## Заключение + +Для переноса функционала применения ставки НДС 22% из новой конфигурации в старую необходимо: + +### Основные изменения: + +1. **Добавить значения в перечисление `СтавкиНДС`:** + - `НДС22` - основная ставка НДС 22% + - `НДС22_122` - расчетная ставка НДС 22/122 + +2. **Модифицировать модуль `УчетНДСУП`:** + - Функция `СтавкаНДСПоУмолчанию` - добавить проверку даты >= 01.01.2026 + - Функция `СкорректироватьСтавкуНДС` - добавить проверку ставок НДС22 и НДС22_122 + +3. **Модифицировать другие модули для поддержки НДС 22%:** + - `ДенежныеСредстваСервер` - расчет суммы НДС для ставки 22% + - `МенеджерОбменаЧерезУниверсальныйФормат` - преобразование ставки в строку + - `ИнтеграцияСЯндексКассойУТ` - маппинг ставки для Яндекс.Кассы + - `ПодключаемоеОборудованиеOfflineВызовСервера` - получение ставки для офлайн-оборудования + - `УчетНДСПереопределяемый` - получение числового значения ставки + - `УчетНДСУПСлужебный` - получение соответствующей расчетной ставки и валидация + - `р_ИмпортЗаказовКлиентов` - расчет значения ставки НДС + +4. **Добавить обработчик в модуль менеджера перечисления `СтавкиНДС`** (опционально) + +5. **Устранить проблему с формой УПД:** + - Исправить процедуру `ЗаполнитьТабличныйДокументУПД` для заполнения ставки НДС во всех случаях + +### Общая оценка трудозатрат: **12.5-16.5 часов работы разработчика** + +**Примечание:** Оценка обновлена с учетом необходимых изменений в других модулях и документах для полной поддержки ставки НДС 22%. + +**Примечание:** Точная оценка может варьироваться в зависимости от наличия модуля `УчетНДСЛокализация` в старой конфигурации. Проблема с УПД оказалась проще, чем предполагалось изначально - требуется только исправление одной процедуры заполнения параметров. + + diff --git a/docs__Оценка_правок_для_переноса_НДС_22_(v1.1).md b/docs__Оценка_правок_для_переноса_НДС_22_(v1.1).md new file mode 100644 index 0000000..3302509 --- /dev/null +++ b/docs__Оценка_правок_для_переноса_НДС_22_(v1.1).md @@ -0,0 +1,692 @@ +--- +title: Оценка правок для переноса функционала ставки НДС 22% +version: 1.1 +date_modified: 2025-12-15 +date_created: 2025-12-15 +author: Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) +show_metadata_block: true +show_index_link: true +description: Оценка переноса функционала по ставке НДС 22% из новой актуальной типовой конфигурации CRM3 в старую текущую рабочу. +status: документ устарел +--- + +# Оценка правок для переноса функционала ставки НДС 22% + +## Дата анализа +15.12.2025 + +## Версия документа +1.1 от 15.12.2025 + +## Цель +Определить необходимые изменения в исходной конфигурации `CRM3devLocal` для переноса функционала применения ставки НДС 22% из целевой конфигурации `CRM326/CRM326_TEST`. + +--- + +## Результаты анализа + +### 1. Проверка наличия функционала в исходной конфигурации + +**Результат:** В исходной конфигурации `CRM3devLocal` **НЕ НАЙДЕНО** упоминаний `СтавкаНДС22`. + +**Вывод:** Функционал применения ставки НДС 22% отсутствует в исходной конфигурации и требует полного переноса. + +--- + +## Необходимые изменения + +### 1. Справочник "СтавкиНДС" + +#### 1.1. Проверка наличия элемента справочника +- **Действие:** Проверить наличие элемента справочника `СтавкиНДС` с кодом/именем `СтавкаНДС22` +- **Приоритет:** Критический +- **Описание:** + - Если элемент отсутствует, необходимо создать элемент справочника `СтавкиНДС` с кодом `СтавкаНДС22` + - Установить значение ставки: 22% (или 0.22 в зависимости от формата хранения) + - Настроить даты действия ставки (если применимо) + +--- + +### 2. Общий модуль "УчетНДС" + +#### 2.1. Файл: `src/CommonModules/УчетНДС/Module.bsl` + +**Необходимые изменения:** + +1. **Добавление поиска элемента справочника СтавкаНДС22** + - **Место:** Около строки 2068 (по аналогии с целевой конфигурацией) + - **Код:** + ```bsl + Справочники.СтавкиНДС.НайтиПервый("СтавкаНДС22", Истина); + ``` + +2. **Добавление работы с набором записей СтавкаНДС22** + - **Место:** Около строки 2069, 2072 + - **Код:** + ```bsl + Справочники.СтавкиНДС.СтавкаНДС22.СоздатьНаборЗаписей(); + ``` + +3. **Использование значений ставки НДС 22%** + - **Место:** Около строки 2365, 2393 + - **Код:** + ```bsl + Справочники.СтавкиНДС.СтавкаНДС22.ЗначениеПроцент + Справочники.СтавкиНДС.СтавкаНДС22.ЗначениеПропорция + ``` + +4. **Установка параметров для ставки НДС 22%** + - **Место:** Около строки 2455, 2457 + - **Код:** + ```bsl + Параметры.Установить("СтавкаНДС22ЗначениеПроцент", + Справочники.СтавкиНДС.СтавкаНДС22.ЗначениеПроцент); + Параметры.Установить("СтавкаНДС22ЗначениеПропорция", + Справочники.СтавкиНДС.СтавкаНДС22.ЗначениеПропорция); + ``` + +**Приоритет:** Высокий +**Сложность:** Средняя + +--- + +### 3. Общий модуль "РасчетыСКлиентами" + +#### 3.1. Файл: `src/CommonModules/РасчетыСКлиентами/Module.bsl` + +**Необходимые изменения:** + +Добавить проверки условий с использованием `&СтавкаНДС22` в следующих местах (по аналогии с целевой конфигурацией): + +1. **Строка ~2138:** Проверка ставки НДС в расчетах +2. **Строка ~2184:** Проверка ставки НДС в расчетах +3. **Строка ~2218:** Проверка ставки НДС в расчетах +4. **Строка ~2245:** Проверка ставки НДС в расчетах +5. **Строка ~2271:** Проверка ставки НДС в расчетах +6. **Строка ~2335:** Проверка ставки НДС в расчетах +7. **Строка ~2361:** Проверка ставки НДС в расчетах +8. **Строка ~2611:** Проверка ставки НДС в расчетах +9. **Строка ~2887:** Проверка ставки НДС в расчетах +10. **Строка ~2982:** Проверка ставки НДС в расчетах +11. **Строка ~3030:** Проверка ставки НДС в расчетах +12. **Строка ~3078:** Проверка ставки НДС в расчетах +13. **Строка ~3276:** Проверка ставки НДС в расчетах + +**Пример кода:** +```bsl +Если СтавкаНДС = (&СтавкаНДС22) Тогда + // Обработка для ставки НДС 22% +КонецЕсли; +``` + +**Приоритет:** Высокий +**Сложность:** Высокая (требуется анализ логики каждого места) + +--- + +### 4. Общий модуль "РасчетыСПоставщиками" + +#### 4.1. Файл: `src/CommonModules/РасчетыСПоставщиками/Module.bsl` + +**Необходимые изменения:** + +Добавить использование `СтавкаНДС22` в расчетах: + +1. **Строка ~1584:** Использование в расчетах НДС +2. **Строка ~1608:** Использование в расчетах НДС +3. **Строка ~1624:** Использование в расчетах НДС +4. **Строка ~1632:** Использование в расчетах НДС +5. **Строка ~1640:** Использование в расчетах НДС +6. **Строка ~1648:** Использование в расчетах НДС +7. **Строка ~1786:** Установка значения ставки НДС 22% + +**Пример кода:** +```bsl +Если СтавкаНДС22.ЗначениеПроцент <> 0 Тогда + Результат = СтавкаНДС22.ЗначениеПроцент / СтавкаНДС22.ЗначениеПропорция +КонецЕсли; +``` + +**Приоритет:** Высокий +**Сложность:** Средняя + +--- + +### 5. Регистр накопления "СводныеДвижения" + +#### 5.1. Файл: `src/AccumulationRegisters/СводныеДвижения/ManagerModule.bsl` + +**Необходимые изменения:** + +1. **Строка ~105:** Добавить проверку ставки НДС 22% в условиях отбора + - **Код:** + ```bsl + Если СтавкаНДС = (&СтавкаНДС22) Тогда + // Обработка движений со ставкой НДС 22% + КонецЕсли; + ``` + +2. **Строка ~212, 222:** Добавить аналогичные проверки в других местах модуля + +**Приоритет:** Средний +**Сложность:** Средняя + +--- + +## Анализ ставки НДС 22/122 (выделение НДС из суммы "в том числе") + +### Описание ставки 22/122 + +Ставка НДС 22/122 используется для выделения НДС из суммы, в которой НДС уже включен (сумма "в том числе НДС"). Коэффициент 22/122 ≈ 0.180327 (18.0327%) применяется для расчета суммы НДС из общей суммы. + +**Формула:** НДС = Сумма × (22 / 122) + +### Результаты проверки наличия функционала + +**Результат:** В целевой конфигурации `CRM326_TEST` **прямых упоминаний** ставки "22/122" или "22\122" в коде **не обнаружено**. + +**Вывод:** Ставка 22/122 может быть реализована: +1. Через элемент справочника `СтавкиНДС` с кодом/именем, содержащим "22/122" или "22\122" +2. Через расчет коэффициента 22/122 в модулях расчетов +3. Через использование свойств `ЗначениеПроцент` и `ЗначениеПропорция` элемента `СтавкаНДС22` с соответствующими значениями + +### Необходимые изменения для ставки 22/122 + +#### 1. Справочник "СтавкиНДС" + +##### 1.1. Проверка и создание элемента для ставки 22/122 +- **Действие:** Проверить наличие элемента справочника `СтавкиНДС` с кодом/именем, соответствующим ставке 22/122 +- **Варианты кодов/имен:** + - `СтавкаНДС22_122` + - `СтавкаНДС22/122` + - `СтавкаНДС22\122` + - `СтавкаНДС22ВТомЧисле` +- **Приоритет:** Критический +- **Описание:** + - Если элемент отсутствует, необходимо создать элемент справочника `СтавкиНДС` + - Установить значение `ЗначениеПроцент` = 22 (или 0.22 в зависимости от формата) + - Установить значение `ЗначениеПропорция` = 122 (для расчета коэффициента 22/122) + - Настроить даты действия ставки (если применимо) + +#### 2. Общий модуль "УчетНДС" + +##### 2.1. Файл: `src/CommonModules/УчетНДС/Module.bsl` + +**Необходимые изменения:** + +1. **Добавление поиска элемента справочника для ставки 22/122** + - **Место:** Рядом с поиском `СтавкаНДС22` + - **Код:** + ```bsl + СтавкаНДС22_122 = Справочники.СтавкиНДС.НайтиПервый("СтавкаНДС22_122", Истина); + // или другой вариант кода в зависимости от реализации + ``` + +2. **Добавление работы с набором записей для ставки 22/122** + - **Код:** + ```bsl + Справочники.СтавкиНДС.СтавкаНДС22_122.СоздатьНаборЗаписей(); + ``` + +3. **Использование значений ставки НДС 22/122** + - **Код:** + ```bsl + Справочники.СтавкиНДС.СтавкаНДС22_122.ЗначениеПроцент // = 22 + Справочники.СтавкиНДС.СтавкаНДС22_122.ЗначениеПропорция // = 122 + ``` + +4. **Расчет коэффициента для выделения НДС из суммы** + - **Код:** + ```bsl + КоэффициентНДС = СтавкаНДС22_122.ЗначениеПроцент / СтавкаНДС22_122.ЗначениеПропорция; + // КоэффициентНДС = 22 / 122 ≈ 0.180327 + СуммаНДС = СуммаСНДС * КоэффициентНДС; + ``` + +**Приоритет:** Высокий +**Сложность:** Средняя + +#### 3. Общий модуль "РасчетыСКлиентами" + +##### 3.1. Файл: `src/CommonModules/РасчетыСКлиентами/Module.bsl` + +**Необходимые изменения:** + +Добавить проверки условий и расчеты для ставки НДС 22/122 в местах, где происходит расчет НДС из суммы "в том числе": + +1. **Проверка ставки НДС 22/122 в условиях** + - **Пример кода:** + ```bsl + Если СтавкаНДС = (&СтавкаНДС22_122) Тогда + // Расчет НДС из суммы "в том числе" + СуммаНДС = СуммаСНДС * (СтавкаНДС22_122.ЗначениеПроцент / СтавкаНДС22_122.ЗначениеПропорция); + КонецЕсли; + ``` + +2. **Добавление обработки ставки 22/122 во всех местах, где обрабатываются ставки НДС** + - Аналогично обработке ставки 22%, но с учетом коэффициента 22/122 + +**Приоритет:** Высокий +**Сложность:** Высокая (требуется анализ логики каждого места) + +#### 4. Общий модуль "РасчетыСПоставщиками" + +##### 4.1. Файл: `src/CommonModules/РасчетыСПоставщиками/Module.bsl` + +**Необходимые изменения:** + +Добавить использование ставки НДС 22/122 в расчетах: + +1. **Расчет НДС из суммы "в том числе"** + - **Пример кода:** + ```bsl + Если СтавкаНДС22_122.ЗначениеПроцент <> 0 Тогда + Коэффициент = СтавкаНДС22_122.ЗначениеПроцент / СтавкаНДС22_122.ЗначениеПропорция; + Результат = СуммаСНДС * Коэффициент; + КонецЕсли; + ``` + +2. **Установка значений для ставки НДС 22/122** + - **Код:** + ```bsl + Параметры.Установить("СтавкаНДС22_122ЗначениеПроцент", + Справочники.СтавкиНДС.СтавкаНДС22_122.ЗначениеПроцент); + Параметры.Установить("СтавкаНДС22_122ЗначениеПропорция", + Справочники.СтавкиНДС.СтавкаНДС22_122.ЗначениеПропорция); + ``` + +**Приоритет:** Высокий +**Сложность:** Средняя + +#### 5. Регистр накопления "СводныеДвижения" + +##### 5.1. Файл: `src/AccumulationRegisters/СводныеДвижения/ManagerModule.bsl` + +**Необходимые изменения:** + +1. **Добавить проверку ставки НДС 22/122 в условиях отбора** + - **Код:** + ```bsl + Если СтавкаНДС = (&СтавкаНДС22_122) Тогда + // Обработка движений со ставкой НДС 22/122 + // Расчет НДС из суммы "в том числе" + КонецЕсли; + ``` + +**Приоритет:** Средний +**Сложность:** Средняя + +### Дополнительные проверки для ставки 22/122 + +1. **Проверить наличие перечислений** для ставок НДС "в том числе" +2. **Проверить константы**, связанные с коэффициентами выделения НДС +3. **Проверить формы документов** на наличие полей для выбора ставки "в том числе НДС" +4. **Проверить отчеты** на корректное отображение ставки 22/122 +5. **Проверить валидацию** при выборе ставки 22/122 + +### Оценка трудозатрат для ставки 22/122 + +| Модуль | Сложность | Оценка времени | +|--------|-----------|----------------| +| Справочник СтавкиНДС (элемент 22/122) | Низкая | 0.5 часа | +| Модуль УчетНДС | Средняя | 2-3 часа | +| Модуль РасчетыСКлиентами | Высокая | 3-5 часов | +| Модуль РасчетыСПоставщиками | Средняя | 2-3 часа | +| Регистр СводныеДвижения | Средняя | 1-2 часа | +| Тестирование | Средняя | 2-3 часа | +| **ИТОГО** | | **11-17 часов** | + +### Рекомендации по реализации ставки 22/122 + +1. **Создать элемент справочника** с кодом `СтавкаНДС22_122` или аналогичным +2. **Установить значения:** + - `ЗначениеПроцент` = 22 + - `ЗначениеПропорция` = 122 +3. **Добавить проверки** во всех местах, где происходит расчет НДС из суммы "в том числе" +4. **Убедиться в корректности** расчетов коэффициента 22/122 ≈ 0.180327 +5. **Протестировать** все сценарии использования ставки 22/122 + +--- + +## Порядок выполнения работ + +### Этап 1: Подготовка (Приоритет: Критический) +1. Проверить наличие справочника `СтавкиНДС` в исходной конфигурации +2. Создать элемент справочника `СтавкаНДС22` (если отсутствует) + - Установить значение ставки: 22% (или 0.22 в зависимости от формата) +3. Создать элемент справочника для ставки 22/122 (например, `СтавкаНДС22_122`) + - Установить `ЗначениеПроцент` = 22 + - Установить `ЗначениеПропорция` = 122 +4. Настроить даты действия ставок (если применимо) + +### Этап 2: Модули учета НДС (Приоритет: Высокий) +1. Внести изменения в модуль `УчетНДС` +2. Добавить функции работы со ставкой НДС 22% +3. Добавить функции работы со ставкой НДС 22/122 +4. Добавить расчет коэффициента 22/122 для выделения НДС из суммы "в том числе" +5. Протестировать функционал + +### Этап 3: Модули расчетов (Приоритет: Высокий) +1. Внести изменения в модуль `РасчетыСКлиентами` + - Добавить проверки условий для ставки НДС 22% + - Добавить проверки условий для ставки НДС 22/122 + - Добавить расчеты НДС из суммы "в том числе" для ставки 22/122 +2. Внести изменения в модуль `РасчетыСПоставщиками` + - Добавить использование ставки НДС 22% в расчетах + - Добавить использование ставки НДС 22/122 в расчетах + - Добавить расчеты коэффициента 22/122 +3. Протестировать расчеты для обеих ставок + +### Этап 4: Регистры накопления (Приоритет: Средний) +1. Внести изменения в регистр `СводныеДвижения` +2. Добавить обработку движений со ставкой НДС 22% +3. Добавить обработку движений со ставкой НДС 22/122 +4. Протестировать регистр + +### Этап 5: Доработка форм (Приоритет: Высокий) +1. Проверить и доработать формы документов для поддержки ставок 22% и 22/122 +2. Проверить и доработать формы справочников +3. Проверить и доработать формы отчетов +4. Проверить и доработать формы обработок +5. Протестировать работу форм + +### Этап 6: Тестирование (Приоритет: Критический) +1. Провести полное тестирование функционала для ставки 22% +2. Провести полное тестирование функционала для ставки 22/122 +3. Проверить корректность расчетов НДС для обеих ставок +4. Проверить корректность выделения НДС из суммы "в том числе" (22/122) +5. Проверить работу отчетности +6. Провести регрессионное тестирование существующих ставок НДС + +--- + +## Оценка трудозатрат + +### Ставка НДС 22% + +| Модуль | Сложность | Оценка времени | +|--------|-----------|----------------| +| Справочник СтавкиНДС (элемент 22%) | Низкая | 0.5 часа | +| Модуль УчетНДС | Средняя | 2-3 часа | +| Модуль РасчетыСКлиентами | Высокая | 4-6 часов | +| Модуль РасчетыСПоставщиками | Средняя | 2-3 часа | +| Регистр СводныеДвижения | Средняя | 1-2 часа | +| Доработка форм | Средняя | 8-13 часов | +| Тестирование | Средняя | 3-4 часа | +| **ИТОГО для ставки 22%** | | **21-32 часа** | + +### Ставка НДС 22/122 + +| Модуль | Сложность | Оценка времени | +|--------|-----------|----------------| +| Справочник СтавкиНДС (элемент 22/122) | Низкая | 0.5 часа | +| Модуль УчетНДС | Средняя | 2-3 часа | +| Модуль РасчетыСКлиентами | Высокая | 3-5 часов | +| Модуль РасчетыСПоставщиками | Средняя | 2-3 часа | +| Регистр СводныеДвижения | Средняя | 1-2 часа | +| Доработка форм | Средняя | 6-10 часов | +| Тестирование | Средняя | 2-3 часа | +| **ИТОГО для ставки 22/122** | | **17-27 часов** | + +### Общая оценка (обе ставки) + +**При последовательной реализации:** 38-59 часов +**При параллельной реализации:** 35-50 часов (за счет переиспользования кода) + +--- + +## Риски и рекомендации + +### Риски: +1. **Несовместимость логики:** Логика расчетов в исходной и целевой конфигурациях может отличаться +2. **Зависимости:** Изменения могут затронуть другие модули, использующие расчеты НДС +3. **Тестирование:** Требуется тщательное тестирование всех сценариев использования ставок НДС 22% и 22/122 +4. **Ошибки в расчетах коэффициента:** Неправильный расчет коэффициента 22/122 может привести к ошибкам в сумме НДС +5. **Путаница между ставками:** Ставка 22% и ставка 22/122 имеют разные назначения и могут быть перепутаны + +### Рекомендации: +1. Перед внесением изменений создать резервную копию конфигурации +2. Вносить изменения поэтапно, с тестированием после каждого этапа +3. Документировать все внесенные изменения +4. Провести регрессионное тестирование существующего функционала +5. Убедиться в корректности работы со ставками НДС 0%, 10%, 18%, 20% после добавления 22% и 22/122 +6. **Для ставки 22/122:** + - Убедиться в корректности расчета коэффициента 22/122 ≈ 0.180327 + - Проверить все места, где происходит выделение НДС из суммы "в том числе" + - Убедиться, что ставка 22/122 используется только для сумм "в том числе НДС" + - Проверить валидацию при выборе ставки 22/122 +7. **Разделение логики:** + - Четко разделить логику работы со ставкой 22% (начисление НДС) и ставкой 22/122 (выделение НДС) + - Использовать понятные имена переменных и функций для каждой ставки + +--- + +## Дополнительные проверки + +1. Проверить наличие перечислений, связанных со ставками НДС +2. Проверить наличие констант, связанных со ставками НДС +3. Проверить наличие регламентных заданий, использующих ставки НДС +4. Проверить наличие отчетов, использующих ставки НДС +5. Проверить наличие обработок, использующих ставки НДС + +--- + +## Проверка наличия обработки "Помощник замены ставки НДС на 22%" + +### Результаты проверки + +**Результат:** В целевой конфигурации `CRM326/CRM326_TEST` **НЕ НАЙДЕНА** обработка с названием "Помощник замены ставки НДС на 22%" или аналогичным. + +**Проверенные места:** +1. Основная конфигурация `CRM326_TEST/src/DataProcessors/` - обработка не найдена +2. Расширение `CRM326_TEST.crm326RHANA/src/DataProcessors/` - обработка не найдена +3. Поиск по содержимому файлов обработок - упоминаний не найдено + +**Вывод:** Обработка для массовой замены ставки НДС на 22% отсутствует в целевой конфигурации. + +### Рекомендации + +Если требуется функционал массовой замены ставки НДС на 22%, необходимо: + +1. **Создать новую обработку** "Помощник замены ставки НДС на 22%" в исходной конфигурации +2. **Функционал обработки должен включать:** + - Выбор документов для замены (по датам, организациям, контрагентам и т.д.) + - Выбор старой ставки НДС (например, 20% или 18%) + - Замена на новую ставку НДС 22% + - Пересчет сумм НДС и итоговых сумм + - Возможность предварительного просмотра изменений + - Логирование выполненных замен + - Откат изменений (если требуется) + +3. **Оценка трудозатрат на создание обработки:** + - Разработка обработки: **8-12 часов** + - Тестирование: **3-4 часа** + - **ИТОГО: 11-16 часов** + +**Примечание:** Обработка может быть полезна при переходе на новую ставку НДС 22% для массового обновления исторических данных или документов в разработке. + +--- + +## Анализ форм, требующих доработки + +### Результаты анализа + +В результате анализа конфигураций установлено, что **прямых упоминаний `СтавкаНДС22` в модулях форм не обнаружено**. Однако это не означает, что формы не требуют доработки. Ставки НДС используются в формах через: + +1. **Элементы выбора ставки НДС** (поля выбора, комбобоксы) +2. **Обработчики событий**, работающие со ставками НДС +3. **Логику заполнения полей** на основе выбранной ставки НДС +4. **Валидацию данных** при выборе ставки НДС + +### Категории форм, требующих проверки и возможной доработки + +#### 1. Формы документов, работающих с НДС + +**Описание:** Документы, которые имеют поля для выбора ставки НДС или расчета сумм НДС. + +**Потенциально затронутые документы:** +- Документы реализации (накладные, счета-фактуры) +- Документы поступления (накладные поставщика, счета-фактуры полученные) +- Документы перемещения товаров +- Документы корректировки реализации/приобретения +- Документы возврата товаров +- Документы авансовых отчетов + +**Необходимые доработки:** +1. Проверить элементы управления выбора ставки НДС - должны включать ставку 22% +2. Проверить обработчики событий изменения ставки НДС +3. Проверить логику расчета сумм НДС для ставки 22% +4. Проверить валидацию при выборе ставки НДС 22% + +**Приоритет:** Высокий +**Сложность:** Средняя + +#### 2. Формы справочников, связанных с НДС + +**Описание:** Формы справочников, которые могут содержать информацию о ставках НДС или работать со ставками НДС. + +**Потенциально затронутые справочники:** +- Справочник "СтавкиНДС" (если существует) +- Справочник "Номенклатура" (если содержит поле ставки НДС) +- Справочник "ВидыНоменклатуры" (если содержит поле ставки НДС) +- Справочник "Контрагенты" (если содержит настройки НДС) + +**Необходимые доработки:** +1. Если справочник "СтавкиНДС" существует - проверить форму списка и форму элемента +2. Убедиться, что в форме можно создать/редактировать элемент с кодом "СтавкаНДС22" +3. Проверить валидацию значений ставки НДС +4. Проверить отображение ставки 22% в списках выбора + +**Приоритет:** Высокий +**Сложность:** Низкая-Средняя + +#### 3. Формы отчетов, связанных с НДС + +**Описание:** Отчеты, которые выводят информацию о НДС или используют ставки НДС в расчетах. + +**Потенциально затронутые отчеты:** +- Отчеты по НДС (книга покупок, книга продаж) +- Отчеты по расчетам с контрагентами +- Отчеты по реализации/приобретению +- Налоговые отчеты + +**Необходимые доработки:** +1. Проверить схемы компоновки данных - должны учитывать ставку 22% +2. Проверить настройки отбора по ставкам НДС +3. Проверить группировки и итоги по ставкам НДС +4. Убедиться, что ставка 22% отображается в отчетах + +**Приоритет:** Средний +**Сложность:** Средняя + +#### 4. Формы обработок, связанных с НДС + +**Описание:** Обработки, которые работают со ставками НДС (импорт, экспорт, расчеты). + +**Потенциально затронутые обработки:** +- Обработки импорта/экспорта данных по НДС +- Обработки расчета НДС +- Обработки корректировки НДС + +**Необходимые доработки:** +1. Проверить логику обработки ставки НДС 22% при импорте +2. Проверить валидацию данных при работе со ставкой 22% +3. Убедиться, что обработки корректно работают со ставкой 22% + +**Приоритет:** Средний +**Сложность:** Средняя + +### Рекомендации по доработке форм + +#### Общие рекомендации: + +1. **Проверка элементов выбора ставки НДС:** + - Убедиться, что все поля выбора ставки НДС включают ставку 22% + - Проверить, что ставка 22% отображается с правильным названием и значением + +2. **Проверка обработчиков событий:** + - Проверить обработчики изменения ставки НДС + - Убедиться, что при выборе ставки 22% корректно пересчитываются суммы НДС + +3. **Проверка валидации:** + - Добавить валидацию для ставки НДС 22% (если требуется) + - Проверить ограничения по датам действия ставки (если применимо) + +4. **Проверка отображения:** + - Убедиться, что ставка 22% корректно отображается во всех формах + - Проверить форматирование значений ставки НДС + +#### Конкретные действия: + +1. **Для форм документов:** + - Найти все формы документов, имеющие поле "СтавкаНДС" + - Проверить модули этих форм на наличие логики работы со ставками + - Добавить обработку ставки 22% в соответствующие обработчики + +2. **Для форм справочников:** + - Проверить форму справочника "СтавкиНДС" (если существует) + - Убедиться, что можно создать элемент с кодом "СтавкаНДС22" + - Проверить валидацию значений + +3. **Для форм отчетов:** + - Проверить схемы компоновки данных отчетов по НДС + - Убедиться, что ставка 22% учитывается в отборах и группировках + +### Оценка трудозатрат на доработку форм + +| Категория форм | Количество форм (примерно) | Сложность | Оценка времени | +|----------------|---------------------------|-----------|----------------| +| Формы документов | 10-20 | Средняя | 4-6 часов | +| Формы справочников | 2-5 | Низкая | 1-2 часа | +| Формы отчетов | 3-5 | Средняя | 2-3 часа | +| Формы обработок | 2-3 | Средняя | 1-2 часа | +| **ИТОГО** | **17-33** | | **8-13 часов** | + +**Примечание:** Точное количество форм, требующих доработки, может быть определено только после детального анализа каждой формы в исходной конфигурации. + +--- + +## Заключение + +Для переноса функционала применения ставок НДС 22% и 22/122 из целевой конфигурации в исходную необходимо: + +### Ставка НДС 22% + +1. **Создать элемент справочника** `СтавкаНДС22` (если отсутствует) +2. **Модифицировать 4 модуля:** + - Общий модуль `УчетНДС` + - Общий модуль `РасчетыСКлиентами` + - Общий модуль `РасчетыСПоставщиками` + - Модуль менеджера регистра `СводныеДвижения` +3. **Добавить проверки условий** для ставки НДС 22% в расчетах +4. **Доработать формы** (17-33 формы): + - Формы документов, работающих с НДС (10-20 форм) + - Формы справочников, связанных с НДС (2-5 форм) + - Формы отчетов по НДС (3-5 форм) + - Формы обработок, связанных с НДС (2-3 формы) + +### Ставка НДС 22/122 (выделение НДС из суммы "в том числе") + +1. **Создать элемент справочника** для ставки 22/122 (например, `СтавкаНДС22_122`) +2. **Установить значения:** + - `ЗначениеПроцент` = 22 + - `ЗначениеПропорция` = 122 +3. **Модифицировать те же 4 модуля** для поддержки ставки 22/122: + - Общий модуль `УчетНДС` + - Общий модуль `РасчетыСКлиентами` + - Общий модуль `РасчетыСПоставщиками` + - Модуль менеджера регистра `СводныеДвижения` +4. **Добавить расчеты коэффициента** 22/122 для выделения НДС из суммы "в том числе" +5. **Доработать формы** для поддержки ставки 22/122 + +### Общая оценка трудозатрат + +| Компонент | Ставка 22% | Ставка 22/122 | Итого | +|-----------|------------|---------------|-------| +| **Модули и логика** | 13-19 часов | 11-17 часов | **24-36 часов** | +| **Доработка форм** | 8-13 часов | 6-10 часов | **14-23 часов** | +| **Тестирование** | 3-4 часа | 2-3 часа | **5-7 часов** | +| **ИТОГО** | **24-36 часов** | **19-30 часов** | **43-66 часов** | + +**Примечание:** При параллельной реализации обеих ставок общее время может быть сокращено за счет переиспользования кода и одновременного тестирования. Ориентировочная оценка при параллельной работе: **35-50 часов работы разработчика**. + diff --git a/docs__Перечень_констант_crm3-26-test.md b/docs__Перечень_констант_crm3-26-test.md new file mode 100644 index 0000000..de07e58 --- /dev/null +++ b/docs__Перечень_констант_crm3-26-test.md @@ -0,0 +1,1310 @@ +# Перечень констант: crm3-26-test + расширение crm3-26-test.rhana + +**Дата формирования:** 2026-05-13 +**Источник:** метаданные выгрузки EDT (`Configuration.xml` не используется; каждая константа — отдельный XML в `src/Constants/`). + +**Важно:** здесь только **описание из метаданных** (имя, синоним, тип, комментарий и т.п.). **Текущие значения** констант хранятся в **данных информационной базы** и в этот перечень не входят. + +**Функциональные опции** и **панель администрирования УТ** — см. пояснения в профиле `crm3-dev`; для этого профиля панель берётся из дерева `crm3-26-test`. + +В репозитории рядом могут быть другие деревья (например `crm3-26-promo.rhana`); в этот перечень входят **только** `crm3-26-test` и `crm3-26-test.rhana`, если у них есть папка `src/Constants/`. + +--- + +## crm3-26-test (основная конфигурация) + +**Каталог:** `crm3-26-test\src\Constants` +**Количество констант:** 1147 +**Индекс ФО:** `crm3-26-test\src\FunctionalOptions` +**Индекс панели УТ:** `crm3-26-test\src\DataProcessors\ПанельАдминистрированияУТ` + +### C + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 1 | `CRM_iCRMИспользоватьОграниченияВыгрузки` | Использовать ограничения для первой выгрузки | xs:boolean | — | нет | — | — | +| 2 | `CRM_iCRMРегистрироватьДокументыСозданныеВТечение` | Регистрировать документы созданные в течение (мес) | xs:decimal | — | нет | — | — | +| 3 | `CRM_iCRMРегистрироватьКлиентовИспользованныхВТечение` | Регистрировать клиентов используемых в течение (мес) | xs:decimal | — | нет | — | — | +| 4 | `CRM_iCRMРегистрироватьКлиентовСозданныхВТечение` | Регистрировать клиентов созданных в течение (мес) | xs:decimal | — | нет | — | — | +| 5 | `CRM_iCRMРегистрироватьНоменклатуруИспользованнуюВТечение` | Регистрировать номенклатуру используемую в течение (мес) | xs:decimal | — | нет | — | — | +| 6 | `CRM_iCRMРегистрироватьНоменклатуруСИзмененнымиЦенамиВТечение` | Регистрировать номенклатуру, у которой менялись цены в течение (мес) | xs:decimal | — | нет | — | — | +| 7 | `CRM_АвтоматическиУтверждатьЕдинственныйВариантКоммерческогоПредложения` | Автоматически утверждать единственный вариант коммерческого предложения | xs:boolean | — | нет | При проведение коммерческого предложения будет утвержден единственный вариант | — | +| 8 | `CRM_АвторРассылокПоПраздникам` | Автор рассылок по праздникам | cfg:CatalogRef.Пользователи | — | нет | — | — | +| 9 | `CRM_АдресWebДоступа` | Адрес web-доступа | xs:string | — | нет | — | — | +| 10 | `CRM_АдресПубликацииiCRM` | Адрес публикации iCRM | xs:string | — | нет | — | — | +| 11 | `CRM_АдресСервисаОбратнойСвязи` | Адрес HTTP-сервиса обратной связи | xs:string | — | нет | — | — | +| 12 | `CRM_БазоваяВерсия` | Базовая версия (CRM) | xs:boolean | CRM_БазоваяВерсия | нет | — | — | +| 13 | `CRM_ВерсияНачалаРаботыСПрограммой` | Версия начала работы с программой | xs:string | — | нет | — | — | +| 14 | `CRM_ВерсияСтраницыПриветствия` | CRM версия страницы приветствия | xs:decimal | — | нет | — | — | +| 15 | `CRM_ВестиИсториюРеквизитовКлиентов` | Вести историю реквизитов клиентов | xs:boolean | CRM_ВестиИсториюРеквизитовКлиентов | нет | — | — | +| 16 | `CRM_ВидВзаимодействияПоУмолчанию` | Вид взаимодействия по умолчанию | cfg:CatalogRef.CRM_ВидыВзаимодействий | — | нет | — | — | +| 17 | `CRM_ВыполнятьПоискДублейПриЗаписиКонтакта` | Выполнять поиск дублей при записи контакта | xs:boolean | — | нет | — | — | +| 18 | `CRM_ВыполнятьПоискДублейПриЗаписиПартнера` | Выполнять поиск дублей при записи клиента | xs:boolean | — | нет | — | — | +| 19 | `CRM_ГлубинаПересчетаПоказателей` | Глубина пересчета показателей (мес.) | xs:decimal | — | нет | — | — | +| 20 | `CRM_ДанныеРегистрации` | Данные регистрации (CRM) | v8:ValueStorage | — | нет | — | — | +| 21 | `CRM_ДатаАктуальностиЦелевыхПоказателей` | Дата актуальности целевых показателей | xs:dateTime | — | нет | — | — | +| 22 | `CRM_ДатаНачалаРаботыСПрограммой` | Дата начала работы с программой | xs:dateTime | — | нет | — | — | +| 23 | `CRM_ДатаПоследнейУспешнойСинхронизации` | Дата последней успешной синхронизации (iCRM) | xs:dateTime | — | нет | — | — | +| 24 | `CRM_ДелатьРассылкиПоПраздникам` | Делать рассылки по праздникам | xs:boolean | CRM_ДелатьРассылкиПоПраздникам | нет | — | — | +| 25 | `CRM_ДемонстрационныйРежим` | Демонстрационный режим (служебная) | xs:boolean | — | нет | — | — | +| 26 | `CRM_ДобавлятьРуководителямДоступПодчиненных` | Добавлять руководителям доступ подчиненных | xs:boolean | CRM_ДобавлятьРуководителямДоступПодчиненных | нет | — | — | +| 27 | `CRM_ДокументыДоходовИРасходовПроектов` | Документы доходов и расходов проектов (CRM) | v8:ValueStorage | — | нет | — | — | +| 28 | `CRM_ЗаполнятьПервичныйИнтерес` | Заполнять актуальный источник привлечения | xs:boolean | — | нет | — | — | +| 29 | `CRM_ЗапретитьВводНовогоКлиентаПриНайденныхСовпадениях` | Запретить ввод нового клиента при найденных совпадениях | xs:boolean | — | нет | — | — | +| 30 | `CRM_ЗапретитьВводНовогоКонтактаПриНайденныхСовпадениях` | Запретить ввод нового контакта при найденных совпадениях | xs:boolean | — | нет | — | — | +| 31 | `CRM_ЗапретитьПечатьСчетаИзИнтереса` | Запретить печать счета из интереса | xs:boolean | — | нет | — | — | +| 32 | `CRM_ИдентификацияПриложенияGoogle` | Идентификация клиента Google | xs:string | — | нет | — | — | +| 33 | `CRM_ИскатьДублиТолькоПоПолномуСовпадению` | Искать дубли только по полному совпадению | xs:boolean | — | нет | — | — | +| 34 | `CRM_ИспользоватьБазуЗнаний` | Использовать базу знаний | xs:boolean | CRM_ИспользоватьБазуЗнаний | нет | — | — | +| 35 | `CRM_ИспользоватьБизнесПроцессы` | Использовать бизнес-процессы (CRM) | xs:boolean | CRM_ИспользоватьБизнесПроцессы | нет | — | — | +| 36 | `CRM_ИспользоватьВариантыОтветов` | Использовать варианты ответов | xs:boolean | — | нет | — | — | +| 37 | `CRM_ИспользоватьВидыДеятельностиУПартнеров` | Указывать в карточке клиента более одной отрасли | xs:boolean | CRM_ИспользоватьВидыДеятельностиУПартнеров | нет | — | — | +| 38 | `CRM_ИспользоватьДолжностныеПозиции` | Использовать должностные позиции для доступа к подразделениям | xs:boolean | CRM_ИспользоватьДолжностныеПозиции | нет | — | — | +| 39 | `CRM_ИспользоватьДоступныхПользователей` | Использовать доступных пользователей | xs:boolean | — | нет | — | — | +| 40 | `CRM_ИспользоватьЗаявки` | Использовать заявки | xs:boolean | CRM_ИспользоватьЗаявки | нет | — | — | +| 41 | `CRM_ИспользоватьИнтеграцииСИнтернетМагазинами` | Использовать интеграции с интернет-магазинами | xs:boolean | CRM_ИспользоватьИнтеграцииСИнтернетМагазинами | нет | — | — | +| 42 | `CRM_ИспользоватьИнтеграциюСМессенджерами` | Использовать интеграцию с мессенджерами и социальными сетями | xs:boolean | CRM_ИспользоватьИнтеграциюСМессенджерами | нет | — | — | +| 43 | `CRM_ИспользоватьКарточкуКлиента` | Использовать карточку клиента | xs:boolean | — | нет | — | — | +| 44 | `CRM_ИспользоватьКатегорииВзаимодействий` | Использовать категории для взаимодействий | xs:boolean | — | нет | — | — | +| 45 | `CRM_ИспользоватьКлассификаторы` | Использовать классификаторы | xs:boolean | CRM_ИспользоватьКлассификаторы | нет | — | — | +| 46 | `CRM_ИспользоватьКомандуПанельСофтФон` | Использовать команду панель СофтФон | xs:boolean | CRM_ИспользоватьКомандуПанельСофтФон | нет | — | — | +| 47 | `CRM_ИспользоватьМаркетинговыеМероприятия` | Использовать маркетинговые мероприятия (CRM) | xs:boolean | CRM_ИспользоватьМаркетинговыеМероприятия | нет | — | — | +| 48 | `CRM_ИспользоватьМоделиМашинногоОбучения` | Использовать модели машинного обучения | xs:boolean | CRM_ИспользоватьМоделиМашинногоОбучения | нет | — | — | +| 49 | `CRM_ИспользоватьМониторПоказателей` | Использовать монитор показателей | xs:boolean | CRM_ИспользоватьМониторПоказателей | нет | — | — | +| 50 | `CRM_ИспользоватьНапоминания` | Использовать напоминания (CRM) | xs:boolean | CRM_ИспользоватьНапоминанияПользователя | нет | — | — | +| 51 | `CRM_ИспользоватьОбменB2BПортал` | Использовать обмен с B2B порталом | xs:boolean | CRM_ИспользоватьОбменB2BПортал | нет | — | — | +| 52 | `CRM_ИспользоватьОбменСMSExchange` | Использовать обмен с сервером MS Exchange | xs:boolean | CRM_ИспользоватьОбменСMSExchange | нет | — | — | +| 53 | `CRM_ИспользоватьОбменСOutlook` | Использовать обмен с MS Outlook | xs:boolean | CRM_ИспользоватьОбменСOutlook | нет | — | — | +| 54 | `CRM_ИспользоватьОповещенияМессенджер` | Использовать оповещения через мессенджер | xs:boolean | CRM_ИспользоватьОповещенияМессенджер | нет | — | — | +| 55 | `CRM_ИспользоватьОповещенияСМС` | Использовать SMS-оповещения | xs:boolean | CRM_ИспользоватьОповещенияСМС | нет | — | — | +| 56 | `CRM_ИспользоватьОповещенияЭлектроннаяПочта` | Использовать оповещения по электронной почте | xs:boolean | CRM_ИспользоватьОповещенияЭлектроннаяПочта | нет | — | — | +| 57 | `CRM_ИспользоватьПланированиеВстреч` | Использовать планирование встреч | xs:boolean | CRM_ИспользоватьПланированиеВстреч | нет | — | — | +| 58 | `CRM_ИспользоватьПланированиеПродаж` | Использовать планирование продаж (бета-версия) | xs:boolean | CRM_ИспользоватьПланированиеПродаж | нет | — | — | +| 59 | `CRM_ИспользоватьПоддержку` | Использовать поддержку | xs:boolean | CRM_ИспользоватьПоддержку | нет | — | — | +| 60 | `CRM_ИспользоватьПодсистемуУправленияПроектами` | Использовать подсистему управления проектами (CRM) | xs:boolean | CRM_ИспользоватьПодсистемуУправленияПроектами | нет | — | — | +| 61 | `CRM_ИспользоватьПоказатели` | Использовать показатели | xs:boolean | CRM_ИспользоватьПоказатели | нет | — | — | +| 62 | `CRM_ИспользоватьПотенциальныхКлиентов` | Использовать потенциальных клиентов | xs:boolean | CRM_ИспользоватьПотенциальныхКлиентов | нет | — | — | +| 63 | `CRM_ИспользоватьПотокиДоставкиЭлектроннойПочты` | Использовать потоки доставки электронной почты | xs:boolean | CRM_ИспользоватьПотокиДоставкиЭлектроннойПочты | нет | — | — | +| 64 | `CRM_ИспользоватьРассылкиЭлектронныхПисем` | Использовать рассылки электронных писем | xs:boolean | CRM_ИспользоватьРассылкиЭлектронныхПисем | нет | — | — | +| 65 | `CRM_ИспользоватьРегламентноеЗаданиеОтправкиРассылокЭлектронныхПисем` | Выполнять рассылки эл. писем равномерно в пакетном режиме | xs:boolean | CRM_ИспользоватьРегламентноеЗаданиеОтправкиРассылокЭлектронныхПисем | нет | — | — | +| 66 | `CRM_ИспользоватьСервисРаспознаванияЛиц` | Использовать сервис распознавания лиц (CRM) | xs:boolean | CRM_ИспользоватьСервисРаспознаванияЛиц | нет | — | — | +| 67 | `CRM_ИспользоватьСервисыЯзыковыхМоделей` | Использовать сервисы языковых моделей | xs:boolean | CRM_ИспользоватьСервисыЯзыковыхМоделей | нет | — | — | +| 68 | `CRM_ИспользоватьСтатусыОтветовБазыЗнаний` | Использовать статусы ответов базы знаний | xs:boolean | — | нет | — | — | +| 69 | `CRM_ИспользоватьТеги` | Использовать теги | xs:boolean | CRM_ИспользоватьТеги | нет | Использовать теги | — | +| 70 | `CRM_ИспользоватьТегиДляВзаимодействий` | Использовать теги для взаимодействий | xs:boolean | — | нет | — | — | +| 71 | `CRM_ИспользоватьТелемаркетинг` | Использовать телемаркетинг | xs:boolean | CRM_ИспользоватьТелемаркетинг | нет | — | — | +| 72 | `CRM_ИспользоватьТипыУслуг` | Использовать типы услуг | xs:boolean | CRM_ИспользоватьТипыУслуг | нет | — | — | +| 73 | `CRM_ИспользоватьТриггеры` | Использовать триггеры (CRM) | xs:boolean | CRM_ИспользоватьТриггеры | нет | — | — | +| 74 | `CRM_ИспользоватьУчетРабочегоВремени` | Использовать учет рабочего времени | xs:boolean | CRM_ИспользоватьУчетРабочегоВремени | нет | — | — | +| 75 | `CRM_ИспользуетсяОбменСiCRM` | Используется обмен с iCRM | xs:boolean | CRM_ИспользуетсяОбменСiCRM | нет | — | — | +| 76 | `CRM_КлючAPIКарт` | Ключ для доступа к API Яндекс.Карт | xs:string | — | нет | — | — | +| 77 | `CRM_КоличествоПисемЭлектроннойРассылкиВОтправляемомПакете` | Количество писем в пакете | xs:decimal | — | нет | — | — | +| 78 | `CRM_КонецОбеда` | Окончание обеденного перерыва | xs:dateTime | — | нет | Окончание обеденного перерыва | — | +| 79 | `CRM_КонецРабочегоДня` | Окончание рабочего дня | xs:dateTime | — | нет | Окончание рабочего дня | — | +| 80 | `CRM_КонтрольныеСуммыТриггеров` | Контрольные суммы триггеров (CRM) | v8:ValueStorage | — | нет | — | — | +| 81 | `CRM_ЛоготипРабочегоСтола` | Логотип рабочего стола | v8:ValueStorage | — | нет | — | — | +| 82 | `CRM_МаксимальныйПериодБезСинхронизацииiCRM` | Максимальный период без синхронизации (дней) | xs:decimal | — | нет | — | — | +| 83 | `CRM_НастройкаСоставаРеквизитовМастераРегистрации` | Настройка состава реквизитов мастера регистрации | v8:ValueStorage | — | нет | — | — | +| 84 | `CRM_НастройкиБазыЗнаний` | Настройки базы знаний | v8:ValueStorage | — | нет | — | — | +| 85 | `CRM_НастройкиСозданияКлиентовПриЗвонке` | Настройки создания клиентов при звонке | v8:ValueStorage | — | нет | — | — | +| 86 | `CRM_НачалоОбеда` | Начало обеденного перерыва | xs:dateTime | — | нет | Начало обеденного перерыва | — | +| 87 | `CRM_НачалоРабочегоДня` | Начало рабочего дня | xs:dateTime | — | нет | Начало рабочего дня | — | +| 88 | `CRM_НеБазоваяВерсия` | Не базовая версия (CRM) | xs:boolean | CRM_НеБазоваяВерсия | нет | — | — | +| 89 | `CRM_НеЗаменятьРольПриОбработкеОбращений` | Не заменять роль при обработке обращений (CRM) | xs:boolean | — | нет | — | — | +| 90 | `CRM_НеИспользоватьПотокиДоставкиЭлектроннойПочты` | Не использовать потоки доставки электронной почты | xs:boolean | CRM_НеИспользоватьПотокиДоставкиЭлектроннойПочты | нет | — | — | +| 91 | `CRM_НеСвязыватьСАктивнымИнтересомДокументыПриКопировании` | CRM не связывать с активным интересом документы при копировании | xs:boolean | — | нет | — | — | +| 92 | `CRM_НеСохранятьТекстыПисемРассылок` | Не сохранять тексты писем рассылок | xs:boolean | CRM_НеСохранятьТекстыПисемРассылок | нет | — | — | +| 93 | `CRM_НомерТелефонаОповещений` | Номер телефона для отправки оповещений по SMS | xs:string | — | нет | — | — | +| 94 | `CRM_ОбновлятьФото` | Обновлять фотографию при видео фиксации | xs:boolean | — | нет | — | — | +| 95 | `CRM_ОбязательноУказыватьПричинуПотериЗвонков` | Обязательно указывать причину потери звонков | xs:boolean | — | нет | — | — | +| 96 | `CRM_ОсновнойВариантПоставки` | Основной вариант поставки | cfg:EnumRef.CRM_ВариантыПоставки | — | нет | — | — | +| 97 | `CRM_ОсновнойВидEmailКлиента` | Основной вид e-mail клиента | cfg:CatalogRef.ВидыКонтактнойИнформации | — | нет | — | — | +| 98 | `CRM_ОсновнойВидEmailКонтакта` | Основной вид e-mail контакта | cfg:CatalogRef.ВидыКонтактнойИнформации | — | нет | — | — | +| 99 | `CRM_ОсновнойВидТелефонаКлиента` | Основной вид телефона клиента | cfg:CatalogRef.ВидыКонтактнойИнформации | — | нет | — | — | +| 100 | `CRM_ОсновнойВидТелефонаКонтакта` | Основной вид телефона контакта | cfg:CatalogRef.ВидыКонтактнойИнформации | — | нет | — | — | +| 101 | `CRM_ОтображатьВАРМИсходящиеПисьмаИЗвонки` | Отображать в АРМ исходящие письма и звонки | xs:boolean | — | нет | Отображать в АРМ исходящие письма и звонки | — | +| 102 | `CRM_ОтображатьВКарточкеКлиентаЧисленность` | Отображать в форме Клиента численность сотрудников и рабочих мест | xs:boolean | CRM_ОтображатьВКарточкеКлиентаЧисленность | нет | — | — | +| 103 | `CRM_ОчищатьВложенияЭлектронныхПисем` | Очищать вложения электронных писем | xs:boolean | CRM_ОчищатьВложенияЭлектронныхПисем | нет | — | — | +| 104 | `CRM_ОчищатьИсториюРеквизитовОбъектов` | Очищать историю реквизитов объектов | xs:boolean | CRM_ОчищатьИсториюРеквизитовОбъектов | нет | — | — | +| 105 | `CRM_ОчищатьТолькоВложенияВходящихПисем` | Очищать только вложения входящих писем | xs:boolean | — | нет | — | — | +| 106 | `CRM_ПарольПользователяСинхронизацииiCRM` | Пароль пользователя синхронизации iCRM | xs:string | — | нет | — | — | +| 107 | `CRM_ПериодОтключенияСинхронизацииiCRM` | Период отключения синхронизации с iCRM (мин.) | xs:decimal | — | нет | — | — | +| 108 | `CRM_ПериодОчисткиВложенийЭлектронныхПисем` | Период очистки вложений электронных писем | xs:decimal | — | нет | — | — | +| 109 | `CRM_ПериодПроверкиНовыхНапоминаний` | Период проверки и вывода новых напоминаний | xs:decimal | — | нет | — | — | +| 110 | `CRM_ПериодХраненияИсторииРеквизитовОбъектов` | Период хранения истории реквизитов объектов | xs:decimal | — | нет | — | — | +| 111 | `CRM_ПланироватьПродажи` | Планирование воронки продаж | xs:boolean | CRM_ПланироватьПродажи | нет | — | — | +| 112 | `CRM_ПлатныйТарифДоступен` | Платный тариф доступен | xs:boolean | CRM_ПлатныйТарифДоступен | нет | — | — | +| 113 | `CRM_ПользовательСинхронизацииiCRM` | Пользователь синхронизации iCRM | xs:string | — | нет | — | — | +| 114 | `CRM_ПриПроведениеКоммерческогоПредложенияПредлагатьУтверждениеВарианта` | При проведение коммерческого предложения предлагать утверждение варианта | xs:boolean | — | нет | При включенной настройке, будет задан вопрос об утверждение его варианта (если нет утвержденных вариантов) | — | +| 115 | `CRM_ПубличныеПочтовыеДомены` | Список публичных почтовых доменов (CRM) | v8:ValueStorage | — | нет | — | — | +| 116 | `CRM_ПутьКВнешнейОбработкеЗащиты` | Путь к внешней обработке защиты CRM (служебная) | xs:string | — | нет | Служебная константа | — | +| 117 | `CRM_РазрешатьСозданиеИнтересовПоОдномуТипуУслуги` | Разрешать создание нескольких интересов по одному типу услуги | xs:boolean | — | нет | — | — | +| 118 | `CRM_РассчитыватьВажностьИСрочностьЗадачАвтоматически` | Рассчитывать важность и срочность задач автоматически | xs:boolean | CRM_РассчитыватьВажностьИСрочностьЗадачАвтоматически | нет | — | — | +| 119 | `CRM_РассчитыватьПотенциалКлиентов` | Рассчитывать потенциал клиентов | xs:boolean | CRM_РассчитыватьПотенциалКлиентов | нет | — | — | +| 120 | `CRM_РегистрироватьВИнтересахВзаимосвязиКлиентов` | Указывать в интересе клиента связанных партнеров | xs:boolean | CRM_РегистрироватьВИнтересахВзаимосвязиКлиентов | нет | — | — | +| 121 | `CRM_РегистрироватьДополнительнуюИнформацию` | Регистрировать дополнительную информацию | xs:boolean | CRM_РегистрироватьДополнительнуюИнформацию | нет | Включает возможность ведения дополнительной информации в справочниках Клиенты, Контакты, Пользователи | — | +| 122 | `CRM_РеквизитыПоискаДублейПартнеров` | Реквизиты поиска дублей клиентам | v8:ValueStorage | — | нет | — | — | +| 123 | `CRM_РеквизитыРасчетаПотенциалаКлиента` | Реквизиты расчета потенциала клиента | v8:ValueStorage | — | нет | — | — | +| 124 | `CRM_СвязыватьРанееПолученныеEmailиЗвонкиСКлиентами` | Связывать ранее полученные email и телефонные звонки с клиентами и их контактами | xs:boolean | CRM_СвязыватьРанееПолученныеEmailиЗвонкиСКлиентами | нет | — | — | +| 125 | `CRM_СервисРассылокОповещенийПоУмолчанию` | Сервис рассылок оповещений по умолчанию | cfg:CatalogRef.CRM_СервисыРассылок | — | нет | — | — | +| 126 | `CRM_СервисРассылокПоУмолчанию` | Сервис рассылок по умолчанию | cfg:CatalogRef.CRM_СервисыРассылок | — | нет | — | — | +| 127 | `CRM_СквознаяАналитика` | Использовать Сквозную аналитику | xs:boolean | CRM_ИспользоватьСквознуюАналитику | нет | — | — | +| 128 | `CRM_СквознаяАналитикаАдресПубликацииСервисов` | Адрес публикации сервисов сквозной аналитики | xs:string | — | нет | — | — | +| 129 | `CRM_СлужебныйПользовательРобот` | Служебный пользователь-робот (CRM) | cfg:CatalogRef.Пользователи | — | нет | — | — | +| 130 | `CRM_СогласовыватьИзмененияБазыЗнанийЧерезБП` | Согласовать изменения базы знаний через БП | xs:boolean | — | нет | — | — | +| 131 | `CRM_СпособОтображенияНапоминаний` | Способ отображения напоминаний | cfg:EnumRef.CRM_ВариантыОтображенияНапоминаний | — | нет | — | — | +| 132 | `CRM_СрокАктуальностиЗапросаНаОценку` | Срок актуальности запроса на оценку | xs:decimal | — | нет | — | — | +| 133 | `CRM_СрокАктуальностиНапоминанийПоУмолчанию` | Срок актуальности оповещений по умолчанию | xs:decimal | — | нет | — | — | +| 134 | `CRM_СрокЖизниЗвонков` | Время жизни звонков как лидов | xs:decimal | — | нет | Время жизни звонков как лидов (дней) | — | +| 135 | `CRM_СрокОбработкиЗвонков` | CRM срок обработки звонков | v8:ValueStorage | — | нет | — | — | +| 136 | `CRM_СтраницаПриветствия` | CRM страница приветствия | v8:ValueStorage | — | нет | — | — | +| 137 | `CRM_ТехподдержкаURL` | CRM техподдержка URL | xs:string | — | нет | — | — | +| 138 | `CRM_ТехподдержкаЛогин` | CRM техподдержка логин | xs:string | — | нет | — | — | +| 139 | `CRM_ТехподдержкаПароль` | CRM техподдержка пароль | xs:string | — | нет | — | — | +| 140 | `CRM_УказыватьВКарточкеКонтактногоЛицаБолееОднойРоли` | Указывать в карточке контактного лица более одной роли | xs:boolean | CRM_УказыватьВКарточкеКонтактногоЛицаБолееОднойРоли | нет | — | — | +| 141 | `CRM_УтверждатьОтветСразу` | Утверждать ответ сразу | xs:boolean | — | нет | — | — | +| 142 | `CRM_УчетнаяЗаписьМессенджераОповещений` | Учетная запись мессенджера для отправки оповещений по электронной почте | cfg:CatalogRef.CRM_УчетныеЗаписиМессенджеров | — | нет | — | — | +| 143 | `CRM_УчетнаяЗаписьОповещений` | Учетная запись для отправки оповещений по электронной почте | cfg:CatalogRef.УчетныеЗаписиЭлектроннойПочты | — | нет | — | — | +| 144 | `CRM_УчетнаяЗаписьРассылкиПоздравлений` | Учетная запись для рассылки поздравлений с праздниками | cfg:CatalogRef.УчетныеЗаписиЭлектроннойПочты | — | нет | — | — | +| 145 | `CRM_ХранилищеПравилОбменаСiCRM` | Хранилище правил обмена с приложением iCRM | v8:ValueStorage | — | нет | — | — | +| 146 | `CRM_ЦветСобытияВКалендареПоУмолчанию` | Цвет события в календаре по умолчанию | xs:decimal | — | нет | — | — | +| 147 | `CRM_ЧислоГруппУровнейДоступа` | Число групп уровней доступа (CRM) | xs:decimal | — | нет | — | — | +| 148 | `CRM_ШрифтПисьмаПоУмолчанию` | Шрифт письма по умолчанию (CRM) | xs:string | — | нет | — | — | +| 149 | `CRM_ЭтоДемоБаза` | Это демо база | xs:boolean | CRM_ЭтоДемоБаза | нет | — | — | + +### S + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 150 | `SMS4B_ДатаПолученияСообщений` | Дата получения SMS | xs:dateTime | — | нет | Дата получения последнего sms-сообщения с сервера SMS4B | — | +| 151 | `SMS4B_ИспользоватьПериодЗапретаОтправки` | Не отправлять SMS | xs:boolean | — | нет | Не отправлять SMS | — | +| 152 | `SMS4B_ИспользоватьПолучениеСообщений` | Включить получение сообщений | xs:boolean | — | нет | — | — | +| 153 | `SMS4B_МиллисекундаПолученияСообщений` | Миллисекунда получения сообщений | xs:decimal | — | нет | Миллисекунда даты получения сообщений | — | +| 154 | `SMS4B_НастройкиСервиса` | Настройки сервиса SMS4B | v8:ValueStorage | — | нет | — | — | +| 155 | `SMS4B_ПолучатьТолькоПолныеСообщения` | Получать только полные сообщения | xs:boolean | — | нет | Получать только полные сообщения | — | +| 156 | `SMS4B_ПроксиПароль` | Пароль прокси-сервера | xs:string | — | нет | Пароль прокси-сервера | — | +| 157 | `SMS4B_ПроксиПользователь` | Пользователь прокси-сервера | xs:string | — | нет | Пользователь прокси-сервера | — | +| 158 | `SMS4B_ПроксиПорт` | Порт прокси-сервера | xs:string | — | нет | Порт прокси-сервера | — | +| 159 | `SMS4B_ПроксиСервер` | Прокси-сервер | xs:string | — | нет | Прокси-сервер | — | + +### А + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 160 | `АвтоматическиНастраиватьРазрешенияВПрофиляхБезопасности` | Автоматически настраивать разрешения в профилях безопасности | xs:boolean | — | нет | — | — | +| 161 | `АвтоматическиСоздаватьПартнеровПриОтправкеЭлектронногоЧекаПокупателю` | Автоматически создавать партнеров при отправке электронного чека покупателю | xs:boolean | АвтоматическиСоздаватьПартнеровПриОтправкеЭлектронногоЧекаПокупателю | да: Продажи, ФЗ54 | — | — | +| 162 | `АвтоПостановкаКлиентовНаМониторингСПАРК` | Автоматическая постановка клиентов на мониторинг 1СПАРК | xs:boolean | — | да: Продажи | Автоматическая постановка клиентов, имеющих действующие договоры, на мониторинг 1СПАРК | — | +| 163 | `АвтоПостановкаКлиентовНаМониторингСПАРКНастройка` | Автоматическая постановка клиентов на мониторинг 1СПАРК настройка | v8:ValueStorage | — | нет | — | — | +| 164 | `АвтоПостановкаПоставщиковНаМониторингСПАРК` | Автоматическая постановка поставщиков на мониторинг 1СПАРК | xs:boolean | — | да: Закупки | Автоматическая постановка поставщиков, имеющих действующие договоры, на мониторинг 1СПАРК | — | +| 165 | `АвтоПостановкаПоставщиковНаМониторингСПАРКНастройка` | Автоматическая постановка поставщиков на мониторинг 1СПАРК настройка | v8:ValueStorage | — | нет | — | — | +| 166 | `АвторОповещенийПользователей` | Автор оповещений пользователей | cfg:CatalogRef.Пользователи | — | нет | — | — | +| 167 | `АдресаСерверовМетокВремени` | Адреса серверов меток времени | xs:string | — | нет | — | — | +| 168 | `АдресВебСервиса1СДокументооборот` | Адрес веб-сервиса 1C:Документооборот | xs:string | — | нет | — | — | +| 169 | `АдресГрузополучателяБратьИзАдресаДоставки` | Адрес грузополучателя брать из адреса доставки | xs:boolean | — | да: Продажи | — | — | +| 170 | `АдресДляВосстановленияПароляУчетнойЗаписи` | Адрес для восстановления пароля учетной записи | xs:string | — | нет | — | — | +| 171 | `АдресДляУведомленийЭДО` | Адрес для уведомлений ЭДО | xs:string | — | нет | — | — | +| 172 | `АдресКриптосервиса` | Адрес криптосервиса | xs:string | — | нет | — | — | +| 173 | `АдресПровайдераАутентификации` | Адрес провайдера аутентификации | xs:string | — | нет | — | — | +| 174 | `АдресПрограммногоИнтерфейсаСлужбыПоддержки` | Адрес программного интерфейса службы поддержки | xs:string | — | нет | — | — | +| 175 | `АдресПубликацииИнформационнойБазыВИнтернете` | Адрес публикации информационной базы в интернете | xs:string | — | да: CRMИМаркетинг | — | — | +| 176 | `АдресПубликацииИнформационнойБазыВЛокальнойСети` | Адрес публикации информационной базы в локальной сети | xs:string | — | да: БюджетированиеИПланирование | — | — | +| 177 | `АдресРеестраМЧД` | Адрес реестра МЧД | xs:string | — | нет | — | — | +| 178 | `АдресСервиса1СФреш` | Адрес сервиса 1С:Фреш | xs:string | — | нет | — | — | +| 179 | `АдресСервисаМЧДРР` | Адрес сервиса МЧДРР | xs:string | — | нет | — | — | +| 180 | `АдресСервисаНовостей` | Адрес сервиса новостей | xs:string | — | нет | — | — | +| 181 | `АдресСервисаПодключенияЭлектроннойПодписиВМоделиСервиса` | Адрес сервиса подключения электронной подписи в модели сервиса | xs:string | — | нет | — | — | +| 182 | `АдресСервисаЦентраИдей` | Адрес сервиса центра идей | xs:string | — | нет | — | — | +| 183 | `АдресУправленияКонференцией` | Адрес управления конференцией | xs:string | — | нет | — | — | +| 184 | `АдресЦКК` | Адрес ЦКК | xs:string | — | нет | — | — | +| 185 | `АКАМ_ИспользоватьМодульТоргов` | Использовать АКАМ:Модуль торгов | xs:boolean | — | нет | — | — | +| 186 | `АккредитованныеУдостоверяющиеЦентры` | Аккредитованные удостоверяющие центры | v8:ValueStorage | — | нет | — | — | +| 187 | `АктуализироватьВзаиморасчетыПриПроведенииДокументов` | Актуализировать взаиморасчеты при проведении документов | xs:boolean | — | да: Казначейство | — | — | +| 188 | `АктуализироватьВзаиморасчетыПриФормированииОтчетов` | Актуализировать взаиморасчеты при формировании отчетов | xs:boolean | — | да: Казначейство | — | — | +| 189 | `АктуализироватьДанныеПриФормированииОтчетов` | Актуализировать данные при формировании отчетов | xs:boolean | — | да: ФинансовыйРезультатИКонтроллинг | — | — | +| 190 | `АутентификацияТокеномДоступаВнутреннихВызововПрограммногоИнтерфейса` | Аутентификация токеном доступа внутренних вызовов программного интерфейса | xs:boolean | — | нет | — | — | + +### Б + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 191 | `БазоваяВалютаПоУмолчанию` | Базовая валюта по умолчанию | cfg:CatalogRef.Валюты | — | да: Предприятие | — | — | +| 192 | `БазоваяВерсия` | Базовая версия | xs:boolean | БазоваяВерсия | да: Интерфейс | — | — | +| 193 | `БлокировкаОтправкиБыстрыхСообщений` | Блокировка отправки быстрых сообщений | xs:dateTime | — | нет | — | — | +| 194 | `БлокировкаФоновогоРаспределенияРасчетов` | Блокировка фонового распределения расчетов | xs:boolean | — | нет | — | — | + +### В + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 195 | `ВалютаРегламентированногоУчета` | Валюта регламентированного учета | cfg:CatalogRef.Валюты | — | да: Предприятие | — | — | +| 196 | `ВалютаУправленческогоУчета` | Валюта управленческого учета | cfg:CatalogRef.Валюты | — | да: Предприятие | — | — | +| 197 | `ВалютыУпрИРеглУчетаСовпадают` | Валюты упр. и регл. учета совпадают | xs:boolean | ВалютыУпрИРеглУчетаСовпадают | нет | — | — | +| 198 | `ВариантОбновленияВнешнихКомпонент` | Вариант обновления внешних компонент | xs:decimal | — | да: НастройкиРМКИОборудования | — | — | +| 199 | `ВариантОбновленияКлассификаторов` | Вариант обновления классификаторов | xs:decimal | — | нет | — | — | +| 200 | `ВариантОбновленияРегламентированныхОтчетов` | Вариант обновления регламентированных отчетов | xs:decimal | — | нет | — | — | +| 201 | `ВариантОбособленияТоваровВоВнутреннемПотреблении` | Вариант обособления товаров во внутреннем потреблении | cfg:EnumRef.ВариантыОбособленияТоваровВоВнутреннемПотреблении | — | да: СкладИДоставка | — | — | +| 202 | `ВариантОбособленияТоваровВПеремещении` | Вариант обособления товаров в перемещении | cfg:EnumRef.ВариантыОбособленияТоваровВПеремещении | — | да: СкладИДоставка | — | — | +| 203 | `ВариантОбособленияТоваровВПродажах` | Вариант обособления товаров в продажах | cfg:EnumRef.ВариантыОбособленияТоваровВПродажах | — | да: Продажи | — | — | +| 204 | `ВариантОбособленияТоваровВСборке` | Вариант обособления товаров в сборке | cfg:EnumRef.ВариантыОбособленияТоваровВСборке | — | да: СкладИДоставка | — | — | +| 205 | `ВариантПриемкиТоваров` | Вариант приемки товаров | cfg:EnumRef.ВариантыПриемкиТоваров | — | нет | — | — | +| 206 | `ВариантПроверкиСтатусовСертификатовНоменклатурыРосаккредитации` | Вариант проверки статусов сертификатов номенклатуры Росаккредитации | cfg:EnumRef.ВариантыПроверкиСтатусовСертификатовНоменклатурыРосаккредитации | — | да: НастройкиСертификатовНоменклатуры | — | — | +| 207 | `ВариантУпорядочиванияПотребностейПоЗаказамДляОбеспечения` | Вариант упорядочивания потребностей по заказам для обеспечения | cfg:EnumRef.ВариантыУпорядочиванияПотребностейПоЗаказамДляОбеспечения | — | да: СкладИДоставка | — | — | +| 208 | `ВариантУчетаСезонныхКолебаний` | Вариант учета сезонных колебаний | cfg:EnumRef.УчетСезонныхКолебаний | — | нет | — | — | +| 209 | `ВедетсяРаботаЧерезТорговыхПредставителей` | Ведется работа через торговых представителей | xs:boolean | ВедетсяРаботаЧерезТорговыхПредставителей | да: Продажи | — | — | +| 210 | `ВедетсяУчетПостоянныхИВременныхРазницОбщая` | Ведется учет постоянных и временных разниц общая | xs:boolean | ВедетсяУчетПостоянныхИВременныхРазницОбщая | нет | — | — | +| 211 | `ВерсииСхемОбменаГИСМ` | Версии схем обмена ГИСМ | xs:string | — | нет | — | — | +| 212 | `ВерсияДанныхСмартвей` | Версия данных смартвей | xs:decimal | — | нет | — | — | +| 213 | `ВерсияДатЗапретаИзменения` | Версия дат запрета изменения | v8:UUID | — | нет | — | — | +| 214 | `ВерсияКлассификатораБанков` | Версия классификатора банков | v8:ValueStorage | — | нет | — | — | +| 215 | `ВерсияСхемЭлектронногоАктированияЕИС` | Версия схем электронного актирования ЕИС | xs:string | — | нет | — | — | +| 216 | `ВестиОтдельнуюНумерациюСчетовФактурНаАвансы` | Вести отдельную нумерацию счетов-фактур, выданных на авансы | xs:boolean | ВестиОтдельнуюНумерациюСчетовФактурНаАвансы | да: УчетНДСИмпортЭкспорт, УчетНДСИмпортЭкспортРФ | — | — | +| 217 | `ВестиСведенияДляДекларацийАлкоВРознице` | Вести сведения для деклараций по алкогольной и спиртосодержащей продукции в рознице | xs:boolean | — | нет | — | — | +| 218 | `ВестиСведенияДляДекларацийПоАлкогольнойПродукции` | Вести сведения для деклараций по алкогольной продукции | xs:boolean | ВестиСведенияДляДекларацийАлкоВРознице; ВестиСведенияДляДекларацийПоАлкогольнойПродукции; ВестиСведенияДляДекларацийПоАлкогольнойПродукцииРМК | да: НастройкиНоменклатуры, НастройкиСертификатовНоменклатуры, Продажи | — | — | +| 219 | `ВестиУправленческийУчетОрганизаций` | Вести управленческий учет организаций | xs:boolean | ВестиУправленческийУчетОрганизаций | да: ДопНастройкиУчетаСебестоимости | — | — | +| 220 | `ВестиУчетЗернаИПродуктовПереработкиЗЕРНО` | Вести учет зерна и продуктов переработки (ФГИС "Зерно") | xs:boolean | ВестиУчетЗернаИПродуктовПереработкиЗЕРНО | да: НастройкиНоменклатуры, НастройкиСертификатовНоменклатуры | — | — | +| 221 | `ВестиУчетМаркировкиПродукцииВГИСМ` | Вести учет маркировки продукции в ГИСМ | xs:boolean | ВестиУчетМаркировкиПродукцииВГИСМ | да: НастройкиНоменклатуры, НастройкиСертификатовНоменклатуры | — | — | +| 222 | `ВестиУчетМаркируемойПродукцииИСМП` | Вести учет маркируемой продукции ИС МП | xs:boolean | ВестиУчетМаркируемойПродукцииИСМП; ВестиУчетМаркируемойПродукцииИСМПРМК | да: НастройкиНоменклатуры, НастройкиСертификатовНоменклатуры | — | — | +| 223 | `ВестиУчетПестицидовАгрохимикатовТукосмесейСАТУРН` | Вести учет пестицидов, агрохимикатов, тукосмесей САТУРН | xs:boolean | ВестиУчетПестицидовАгрохимикатовТукосмесейСАТУРН | да: НастройкиНоменклатуры | — | — | +| 224 | `ВестиУчетПодконтрольныхТоваровВЕТИС` | Вести учет подконтрольных товаров ВетИС | xs:boolean | ВестиУчетПодконтрольныхТоваровВЕТИС | да: НастройкиНоменклатуры, НастройкиСертификатовНоменклатуры | — | — | +| 225 | `ВидимостьДатыНачалаПечатиЕдиногоАвансовогоОтчета` | Видимость даты начала печати единого авансового отчета | xs:boolean | — | нет | — | — | +| 226 | `ВидКартыСерверЛояльности` | Вид карты сервер лояльности | — | — | да: CRMИМаркетинг | — | — | +| 227 | `ВидМаксимальноДопустимыхЦенЗакупки` | Вид максимально допустимых цен закупки | cfg:CatalogRef.ВидыЦен | — | нет | — | — | +| 228 | `ВидМаксимальноДопустимыхЦенПродажи` | Вид максимально допустимых цен продажи | cfg:CatalogRef.ВидыЦен | — | нет | — | — | +| 229 | `ВидМинимальноДопустимыхЦенПродажи` | Вид минимально допустимых цен продажи | cfg:CatalogRef.ВидыЦен | — | нет | — | — | +| 230 | `ВидЦеныСтоимостиПрослеживаемыхТоваров` | Вид цены стоимости прослеживаемых товаров | cfg:CatalogRef.ВидыЦен | — | да: УчетНДСИмпортЭкспортРФ | — | — | +| 231 | `ВнешнийАдресУправляющегоПриложения` | Внешний адрес управляющего приложения | xs:string | — | нет | — | — | +| 232 | `ВнутреннийАдресМенеджераСервиса` | Внутренний адрес менеджера сервиса | xs:string | — | нет | — | — | +| 233 | `ВыбиратьВариантВыводаСкидокПриПечатиДокументовПродажи` | Выбирать вариант вывода скидок при печати документов продажи | xs:boolean | ВыбиратьВариантВыводаСкидокПриПечатиДокументовПродажи | нет | — | — | +| 234 | `ВыбиратьВерсиюКомиссионныхПродаж` | Выбирать версию комиссионных продаж | xs:boolean | ВыбиратьВерсиюКомиссионныхПродаж | да: Продажи | — | — | +| 235 | `ВыводитьQRКодНаПечатныхФормахДокументов` | Выводить QR-код на печатных формах документов | xs:boolean | ВыводитьQRКодНаПечатныхФормахДокументов | нет | — | — | +| 236 | `ВыводитьБазовыеЕдиницыИзмерения` | Выводить базовые единицы измерения в печатных формах | xs:boolean | — | да: Продажи | — | — | +| 237 | `ВыводитьДопКолонкиНДС` | Выводить дополнительные колонки НДС | xs:boolean | — | да: Продажи | Признак вывода дополнительных колонок с НДС в печатные формы | — | +| 238 | `ВыводитьНаименованияИсходящихДокументовВАктахСверкиИСчетахФактурах` | Выводить наименования исходящих документов в актах сверки и счетах-фактурах | xs:boolean | ВыводитьНаименованияИсходящихДокументовВАктахСверкиИСчетахФактурах | да: Продажи | — | — | +| 239 | `ВыводитьПолныеНаименованияРетроБонусовКлиентов` | Выводить полные наименования ретро-бонусов клиентов | xs:boolean | ВыводитьПолныеНаименованияРетроБонусовКлиентов | да: CRMИМаркетинг | — | — | +| 240 | `ВыводитьПолныеНаименованияРетроБонусовПоставщиков` | Выводить полные наименования ретро-бонусов поставщиков | xs:boolean | ВыводитьПолныеНаименованияРетроБонусовПоставщиков | да: Закупки | — | — | +| 241 | `ВыводитьСерииВПечатныхФормах` | Выводить серии в печатных формах | xs:boolean | — | да: НастройкиНоменклатуры | — | — | +| 242 | `ВыгружатьВнутренниеШтрихкодыШтучныхТоваров` | Выгружать внутренние штрихкоды штучных товаров | xs:boolean | — | да: НастройкиНоменклатуры | — | — | +| 243 | `ВыполненаПервоначальнаяРегистрацияЗаданийНеоперативногоДопроведенияДокументов` | Выполнена первоначальная регистрация заданий неоперативного допроведения документов | xs:boolean | — | нет | — | — | +| 244 | `ВыполнитьРезервноеКопированиеОбластиДанных` | Выполнить резервное копирование области данных | xs:boolean | — | нет | — | — | +| 245 | `ВыполнятьЗамерыПроизводительности` | Выполнять замеры производительности | xs:boolean | ВыполнятьЗамерыПроизводительности | нет | — | — | + +### Г + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 246 | `ГеографическаяСхемаДляОтчетов` | Географическая схема для отчетов | v8:ValueStorage | — | нет | — | — | +| 247 | `ГлавныйУзел` | Главный узел | — | — | нет | — | — | +| 248 | `ГруппаДоступаНоменклатурыИзСервиса` | Группа доступа номенклатуры из сервиса | cfg:CatalogRef.ГруппыДоступаНоменклатуры | — | да: НастройкиНоменклатуры | — | — | +| 249 | `ГруппаДоступаПартнераПриАвтоматическомСоздании` | Группа доступа партнера при автоматическом создании | cfg:CatalogRef.ГруппыДоступаПартнеров | — | да: Продажи | — | — | + +### Д + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 250 | `ДанныеДляИзмененияМультиязычныхРеквизитов` | Данные для изменения мультиязычных реквизитов | v8:ValueStorage | — | нет | — | — | +| 251 | `ДанныеДляОтложенногоОбновления` | Данные для отложенного обновления | v8:ValueStorage | — | нет | — | — | +| 252 | `ДатаАвтоматическогоПолученияЭДО` | Дата автоматического получения ЭДО | xs:dateTime | — | нет | — | — | +| 253 | `ДатаВключенияОбособленногоУчетаСебестоимостиПоНазначениям` | Дата включения обособленного учета себестоимости по назначениям | xs:dateTime | — | да: ФинансовыйРезультатИКонтроллинг | — | — | +| 254 | `ДатаЗагрузкиОписанияФорматовДляПреобразования` | Дата загрузки описания форматов для преобразования | xs:dateTime | — | нет | — | — | +| 255 | `ДатаЗапретаИспользованияПродукцииТретьегоУровняВЕТИС` | Дата запрета использования продукции третьего уровня | xs:dateTime | — | нет | — | — | +| 256 | `ДатаНачалаВеденияУправленческогоУчетаОрганизаций` | Дата начала ведения управленческого учета организаций | xs:dateTime | — | да: ДопНастройкиУчетаСебестоимости | — | — | +| 257 | `ДатаНачалаИсключенияСведенийДУЛПредставителяИзМЧД` | Дата начала исключения из МЧД сведений документа, удостоверяющего личность физического лица представителя | xs:dateTime | — | нет | — | — | +| 258 | `ДатаНачалаПечатиЕдиногоАвансовогоОтчета` | Дата начала печати единого авансового отчета | xs:dateTime | — | да: Казначейство | — | — | +| 259 | `ДатаНачалаПримененияПриказа107н` | Дата начала применения приказа Минфина России от 12.11.2013 №107н | xs:dateTime | — | нет | — | — | +| 260 | `ДатаНачалаПримененияПриказа126н` | Дата начала применения приказа Минфина России от 30.10.2014 №126н | xs:dateTime | — | нет | — | — | +| 261 | `ДатаНачалаПримененияПриказа164` | Дата начала применения приказа 164 | xs:dateTime | — | нет | — | — | +| 262 | `ДатаНачалаПримененияСводныхСправок` | Дата начала применения сводных справок | xs:dateTime | — | да: УчетНДСИмпортЭкспортРФ | — | — | +| 263 | `ДатаНачалаРаботыМеханизмаБонусныхБаллов_2_5` | Дата начала работы механизма бонусных баллов (2.5) | xs:dateTime | — | нет | — | — | +| 264 | `ДатаНачалаРегистрацииЗакупокПоЕГАИС` | Дата начала оформления закупок по ЕГАИС | xs:dateTime | — | да: Продажи | — | — | +| 265 | `ДатаНачалаРегистрацииРозничныхПродажВЕГАИС` | Дата начала регистрации розничных продаж в ЕГАИС | xs:dateTime | — | да: Продажи | — | — | +| 266 | `ДатаНачалаРегистрацииРозничныхПродажВЕГАИСВСельскойМестности` | Дата начала регистрации розничных продаж в ЕГАИС в сельской местности | xs:dateTime | — | да: Продажи | — | — | +| 267 | `ДатаНачалаУчетаНДСПоНаправлениямДеятельности` | Дата начала учета НДС по направлениям деятельности | xs:dateTime | — | нет | — | — | +| 268 | `ДатаНачалаУчетаПрослеживаемыхИмпортныхТоваров` | Дата начала учета прослеживаемых импортных товаров | xs:dateTime | — | да: УчетНДСИмпортЭкспортРФ | — | — | +| 269 | `ДатаНачалаУчетаСебестоимости` | Дата начала учета себестоимости | xs:dateTime | — | да: ДопНастройкиУчетаСебестоимости, ФинансовыйРезультатИКонтроллинг | — | — | +| 270 | `ДатаОбновленияНаВерсиюСПрочтенностью` | Дата обновления на версию с прочтенностью | xs:dateTime | — | нет | — | — | +| 271 | `ДатаОбновленияПовторноИспользуемыхЗначенийМРО` | Дата обновления повторно используемых значений МРО | xs:dateTime | АктуальнаяДатаОбновленияПовторноИспользуемыхЗначенийМРО | нет | Актуальная дата обновления повторно-используемых значений механизма регистрации объектов в ИБ | — | +| 272 | `ДатаОбновленияСобытийСПАРКРиски` | Дата обновления событий 1СПАРК Риски | xs:dateTime | — | нет | — | — | +| 273 | `ДатаПереходаНаПартионныйУчетВерсии22` | Дата перехода на партионный учет версии 2.2 | xs:dateTime | — | да: ДопНастройкиУчетаСебестоимости | — | — | +| 274 | `ДатаПереходаНаЦенообразование25` | Дата перехода на ценообразование25 | xs:dateTime | — | нет | — | — | +| 275 | `ДатаПолученияДанныхСервисаСверкиРасчетов` | Дата получения данных сервиса сверки расчетов | xs:dateTime | — | нет | — | — | +| 276 | `ДатаПоследнегоОбновленияКлассификатораОшибок` | Дата последнего обновления классификатора ошибок | xs:dateTime | — | нет | — | — | +| 277 | `ДатаПоследнегоСтартаКлиентскогоСеанса` | Дата последнего старта клиентского сеанса | xs:dateTime | — | нет | — | — | +| 278 | `ДатаПоследнейВыгрузкиЗамеровПроизводительностиUTC` | Дата последней выгрузки замеров производительности в UTC | xs:dateTime | — | нет | — | — | +| 279 | `ДатаСинхронизацииОКПД2` | Дата синхронизации ОКПД2 | xs:dateTime | — | нет | — | — | +| 280 | `ДатаСинхронизацииТНВЭД` | Дата синхронизации ТНВЭД | xs:dateTime | — | нет | — | — | +| 281 | `ДатаУведомленияОНовыхЗадачах` | Дата уведомления о новых задачах | xs:dateTime | — | нет | Служебная, не редактируется пользователем | — | +| 282 | `ДетализироватьЗаданияТорговымПредставителямПоНоменклатуре` | Детализировать задания торговым представителям по номенклатуре | xs:boolean | ДетализироватьЗаданияТорговымПредставителямПоНоменклатуре | да: Продажи | — | — | +| 283 | `ДетализироватьОбновлениеИБВЖурналеРегистрации` | Детализировать обновление ИБ в журнале регистрации | xs:boolean | — | нет | — | — | +| 284 | `ДлительностьОперацииПлатежныхСистем` | Длительность операции платежных систем | xs:decimal | — | нет | — | — | +| 285 | `ДобавлятьМеткиВремениАвтоматически` | Добавлять метки времени автоматически | xs:boolean | — | нет | — | — | +| 286 | `ДополнительнаяКолонкаПечатныхФормДокументов` | Дополнительная колонка печатных форм документов | cfg:EnumRef.ДополнительнаяКолонкаПечатныхФормДокументов | — | да: Продажи | — | — | +| 287 | `ДополнительныйЯзык1` | Дополнительный язык1 | xs:string | — | нет | — | — | +| 288 | `ДополнительныйЯзык2` | Дополнительный язык2 | xs:string | — | нет | — | — | +| 289 | `ДопустимоеОтклонениеОтгрузкиПриемкиМерныхТоваров` | Допустимое отклонение отгрузки и приемки мерных товаров | xs:decimal | — | да: НастройкиНоменклатуры, НастройкиСертификатовНоменклатуры | — | — | +| 290 | `ДопустимоеОтклонениеПриОкругленииКоличества` | Допустимое отклонение при автоматическом округлении | xs:decimal | — | да: НастройкиНоменклатуры | — | — | +| 291 | `ДоставлятьСерверныеОповещенияБезСистемыВзаимодействия` | Доставлять серверные оповещения без системы взаимодействия | xs:boolean | — | нет | — | — | +| 292 | `ДоступностьЛичногоКабинетаСервиса` | Доступность личного кабинета сервиса | xs:boolean | — | нет | — | — | + +### Е + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 293 | `ЕдиницаИзмеренияВеса` | Единица измерения веса | cfg:CatalogRef.УпаковкиЕдиницыИзмерения | — | да: НастройкиНоменклатуры | — | — | +| 294 | `ЕдиницаИзмеренияДлины` | Единица измерения длины | cfg:CatalogRef.УпаковкиЕдиницыИзмерения | — | да: НастройкиНоменклатуры | — | — | +| 295 | `ЕдиницаИзмеренияКилограммИС` | Единица измерения килограмм ИС | — | — | нет | — | — | +| 296 | `ЕдиницаИзмеренияКоличестваШтук` | Единица измерения количества штук | cfg:CatalogRef.УпаковкиЕдиницыИзмерения | — | да: НастройкиНоменклатуры | — | — | +| 297 | `ЕдиницаИзмеренияЛитрИС` | Единица измерения литр ИС | — | — | нет | — | — | +| 298 | `ЕдиницаИзмеренияОбъема` | Единица измерения объема | cfg:CatalogRef.УпаковкиЕдиницыИзмерения | — | да: НастройкиНоменклатуры | — | — | +| 299 | `ЕдиницаИзмеренияПлощади` | Единица измерения площади | cfg:CatalogRef.УпаковкиЕдиницыИзмерения | — | да: НастройкиНоменклатуры | — | — | +| 300 | `ЕдиницаИзмеренияРазливнойПродукции` | Единица измерения разливной продукции | cfg:CatalogRef.УпаковкиЕдиницыИзмерения | — | да: НастройкиНоменклатуры | — | — | + +### З + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 301 | `ЗавершатьСеансыБезПредупрежденияПоУмолчаниюВМоделиСервиса` | Завершать сеансы без предупреждения по умолчанию | xs:boolean | — | нет | — | — | +| 302 | `ЗаголовокСистемы` | Заголовок приложения | xs:string | — | да: НачальноеЗаполнение | — | — | +| 303 | `ЗагружатьИУстанавливатьИсправленияАвтоматически` | Загружать и устанавливать исправления (патчи) автоматически | xs:boolean | — | нет | — | — | +| 304 | `ЗагрузитьРасширенияИзменяющиеСтруктуруДанных` | Загрузить расширения изменяющие структуру данных | xs:boolean | — | нет | — | — | +| 305 | `ЗагрузитьСообщениеОбменаДанными` | Загрузить сообщение обмена данными | xs:boolean | — | нет | — | — | +| 306 | `ЗаполненыДвиженияАктивовПассивов` | Заполнены движения активов пассивов | xs:boolean | — | да: ФинансовыйРезультатИКонтроллинг | — | — | +| 307 | `ЗапрашиватьДанныеСервисаИСМП` | Запрашивать данные сервиса ГИС МТ | xs:boolean | ЗапрашиватьДанныеСервисаИСМП | нет | — | — | +| 308 | `ЗапретитьОтображениеНебезопасногоСодержимогоВПисьмах` | Запретить отображение небезопасного содержимого в письмах | xs:boolean | — | нет | — | — | +| 309 | `ЗапретитьОформлениеОперацийСИмпортнымиТоварамиБезНомеровГТД` | Запретить операции с товарами без номеров ГТД | xs:boolean | ЗапретитьОформлениеОперацийСИмпортнымиТоварамиБезНомеровГТД | да: УчетНДСИмпортЭкспортРФ | — | — | +| 310 | `ЗапретитьПоступлениеТоваровБезНомеровГТД` | Запретить поступления товаров без номеров ГТД | xs:boolean | ЗапретитьПоступлениеТоваровБезНомеровГТД | да: УчетНДСИмпортЭкспортРФ | — | — | +| 311 | `ЗапретитьФормированиеОтветногоТитулаБезДокументовУчета` | Запретить формирование ответного титула без документов учета | xs:boolean | ЗапретитьФормированиеОтветногоТитулаБезДокументовУчета | нет | — | — | +| 312 | `ЗапретитьФормированиеФормализованныхЭДИзФайлов` | Запретить формирование формализованных ЭД из файлов | xs:boolean | ЗапретитьФормированиеФормализованныхЭДИзФайлов | нет | — | — | +| 313 | `ЗапрещатьЗагрузкуФайловПоРасширению` | Запрещать загрузку файлов по расширению | xs:boolean | — | нет | — | — | +| 314 | `ЗарегистрированыИзмененияДанных` | Зарегистрированы изменения данных | xs:boolean | ЗарегистрированыИзмененияДанных | нет | Кумулятивный признак изменения данных для обмена в модели сервиса | — | + +### И + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 315 | `ИдентификаторИнформационнойБазы` | Идентификатор информационной базы | xs:string | — | нет | — | — | +| 316 | `ИдентификаторКорневойПапкиФайлов1СДокументооборот` | Идентификатор корневой папки файлов 1С:Документооборота | xs:string | — | нет | — | — | +| 317 | `ИдентификаторОбсужденияФискализации` | Идентификатор обсуждения фискализации | xs:string | — | нет | — | — | +| 318 | `ИзвлекатьТекстыФайловНаСервере` | Извлекать тексты файлов на сервере | xs:boolean | — | нет | — | — | +| 319 | `ИзменятьЗаданияЗаднимЧислом` | Изменять задания задним числом | xs:boolean | ИзменятьЗаданияЗаднимЧислом | нет | — | — | +| 320 | `ИмяВидаПриложенияАвтономногоРабочегоМеста` | Имя вида приложения автономного рабочего места | xs:string | — | нет | — | — | +| 321 | `ИмяПользователяУчетнойСистемы` | Имя пользователя учетной системы | xs:string | — | нет | — | — | +| 322 | `ИнтеграцияС1СДокументооборотИмяПользователяДляОбмена` | Имя пользователя для обмена с 1С:Документооборотом | xs:string | — | нет | — | — | +| 323 | `ИнтеграцияС1СДокументооборотПарольДляОбмена` | Пароль пользователя для обмена с 1С:Документооборотом | xs:string | — | нет | — | — | +| 324 | `ИнтервалЗапросаИзмененныхДанныхВЕТИС` | Интервал запроса измененных данных ВетИС | xs:decimal | — | нет | — | — | +| 325 | `ИнтерфейсВерсии82` | Интерфейс версии82 | xs:boolean | — | нет | — | — | +| 326 | `ИнформацияОПроцедуреЗагрузки` | Информация о процедуре загрузки | v8:ValueStorage | — | нет | — | — | +| 327 | `ИспользованиеЗаданийТорговымПредставителям` | Использование заданий торговым представителям | cfg:EnumRef.ИспользованиеЗаданийТорговымПредставителям | — | да: Продажи | — | — | +| 328 | `ИспользованиеКаталогаДополнительныхОтчетовИОбработокВМоделиСервиса` | Использование каталога дополнительных отчетов и обработок в модели сервиса | xs:boolean | — | нет | — | — | +| 329 | `ИспользованиеКаталогаРасширенийВМоделиСервиса` | Использование каталога расширений в модели сервиса | xs:boolean | — | нет | — | — | +| 330 | `ИспользованиеКлассификаторовНоменклатуры` | Использование классификаторов номенклатуры | xs:boolean | ИспользованиеКлассификаторовНоменклатуры | да: НастройкиНоменклатуры, НастройкиСертификатовНоменклатуры | — | — | +| 331 | `ИспользованиеСоглашенийСКлиентами` | Использование соглашений с клиентами | cfg:EnumRef.ИспользованиеСоглашенийСКлиентами | — | да: Продажи | — | — | +| 332 | `ИспользованиеСтарыхКлассификаторовОКПиОКВЭД` | Использование старых классификаторов (ОКП и ОКВЭД) | xs:boolean | ИспользованиеСтарыхКлассификаторовОКПиОКВЭД | да: НастройкиНоменклатуры, НастройкиСертификатовНоменклатуры | — | — | +| 333 | `ИспользованиеЭтаповОплатыВЗакупках` | Использование этапов оплаты в закупках | cfg:EnumRef.ИспользованиеЭтаповОплаты | — | да: Закупки, УчетНДСИмпортЭкспорт, УчетНДСИмпортЭкспортРФ | — | — | +| 334 | `ИспользованиеЭтаповОплатыВПродажах` | Использование этапов оплаты в продажах | cfg:EnumRef.ИспользованиеЭтаповОплаты | — | да: Продажи | — | — | +| 335 | `ИспользоватьABCXYZКлассификациюНоменклатурыПоВаловойПрибыли` | Использовать ABC/XYZ классификацию номенклатуры по валовой прибыли | xs:boolean | ИспользоватьABCXYZКлассификациюНоменклатурыПоВаловойПрибыли | нет | — | — | +| 336 | `ИспользоватьABCXYZКлассификациюНоменклатурыПоВыручке` | Использовать ABC/XYZ классификацию номенклатуры по выручке | xs:boolean | ИспользоватьABCXYZКлассификациюНоменклатурыПоВыручке | нет | — | — | +| 337 | `ИспользоватьABCXYZКлассификациюНоменклатурыПоКоличествуПродаж` | Использовать ABC/XYZ классификацию номенклатуры по количеству продаж | xs:boolean | ИспользоватьABCXYZКлассификациюНоменклатурыПоКоличествуПродаж | нет | — | — | +| 338 | `ИспользоватьABCXYZКлассификациюПартнеровПоВаловойПрибыли` | Использовать ABC/XYZ классификацию партнеров по валовой прибыли | xs:boolean | ИспользоватьABCXYZКлассификациюПартнеровПоВаловойПрибыли | нет | — | — | +| 339 | `ИспользоватьABCXYZКлассификациюПартнеровПоВыручке` | Использовать ABC/XYZ классификацию партнеров по выручке | xs:boolean | ИспользоватьABCXYZКлассификациюПартнеровПоВыручке | нет | — | — | +| 340 | `ИспользоватьABCXYZКлассификациюПартнеровПоКоличествуПродаж` | Использовать ABC/XYZ классификацию партнеров по количеству продаж | xs:boolean | ИспользоватьABCXYZКлассификациюПартнеровПоКоличествуПродаж | нет | — | — | +| 341 | `ИспользоватьАвтоматическиеСкидкиВПродажах` | Использовать автоматические скидки в продажах | xs:boolean | CRM_Модуль_ИспользоватьАвтоматическиеСкидкиВПродажах; ИспользоватьАвтоматическиеСкидкиВПродажах | да: CRMИМаркетинг, Продажи | — | — | +| 342 | `ИспользоватьАвтоматическоеЗакрытиеСтрокЗаказовМерныхТоваров` | Использовать автоматическое закрытие строк заказов мерных товаров | xs:boolean | ИспользоватьАвтоматическоеЗакрытиеСтрокЗаказовМерныхТоваров | да: НастройкиНоменклатуры, НастройкиСертификатовНоменклатуры | — | — | +| 343 | `ИспользоватьАвтоматическоеПолучениеИзСервисаЭДО` | Использовать автоматическое получение из сервиса ЭДО | xs:boolean | — | нет | — | — | +| 344 | `ИспользоватьАвтоматическоеПолучениеИзСервисаЭДОПоТокенам` | Использовать автоматическое получение из сервиса ЭДО по токенам | xs:boolean | — | нет | — | — | +| 345 | `ИспользоватьАвтоматическоеУдалениеНеиспользованныхКодовМаркировкиИСМП` | Использовать автоматическое удаление неиспользованных кодов маркировки ИС МП | xs:boolean | — | нет | — | — | +| 346 | `ИспользоватьАвтоматическуюЗагрузкуСведенийОбОтклоненияхИСМП` | Использовать автоматическую загрузку сведений об отклонениях ИС МП | xs:boolean | — | нет | — | — | +| 347 | `ИспользоватьАвтоматическуюОтправкуПолучениеДанныхВЕТИС` | Использовать автоматическую отправку и получение данных ВетИС | xs:boolean | ИспользоватьАвтоматическуюОтправкуПолучениеДанныхВЕТИС | нет | — | — | +| 348 | `ИспользоватьАвтоматическуюОтправкуПолучениеДанныхГИСМ` | Использовать автоматическую отправку и получение данных ГИСМ | xs:boolean | ИспользоватьАвтоматическуюОтправкуПолучениеДанныхГИСМ | нет | — | — | +| 349 | `ИспользоватьАвтоматическуюОтправкуПолучениеДанныхЕГАИС` | Использовать автоматическую отправку получение данных ЕГАИС | xs:boolean | ИспользоватьАвтоматическуюОтправкуПолучениеДанныхЕГАИС | нет | — | — | +| 350 | `ИспользоватьАвтоматическуюОтправкуПолучениеДанныхИСМП` | Использовать автоматическую отправку и получение данных МОТП | xs:boolean | ИспользоватьАвтоматическуюОтправкуПолучениеДанныхИСМП | нет | — | — | +| 351 | `ИспользоватьАвтоматическуюСверткуРегистраСоответствиеНоменклатурыВЕТИС` | Использовать автоматическую свертку регистра соответствие номенклатуры ВетИС | xs:boolean | — | нет | — | — | +| 352 | `ИспользоватьАвтоматическуюСверткуРегистраСоответствиеНоменклатурыЕГАИС` | Использовать автоматическую свертку регистра соответствие номенклатуры ЕГАИС | xs:boolean | — | нет | — | — | +| 353 | `ИспользоватьАвтономнуюРаботуВМоделиСервиса` | Использовать автономную работу в модели сервиса | xs:boolean | ИспользоватьАвтономнуюРаботуВМоделиСервиса | нет | — | — | +| 354 | `ИспользоватьАктыВыполненныхРаботПоНесколькимЗаказам` | Использовать акты выполненных работ по нескольким заказам | xs:boolean | ИспользоватьАктыВыполненныхРаботПоНесколькимЗаказам | да: Продажи | — | — | +| 355 | `ИспользоватьАктыНаПередачуПрав` | Использовать акты на передачу прав | xs:boolean | ИспользоватьАктыНаПередачуПрав | да: Продажи | — | — | +| 356 | `ИспользоватьАктыРасхожденийПослеОтгрузки` | Использовать акты расхождений после реализаций клиентам | xs:boolean | ИспользоватьАктыРасхожденийПослеОтгрузки | да: Продажи | — | — | +| 357 | `ИспользоватьАктыРасхожденийПослеПеремещения` | Использовать акты расхождений после перемещения | xs:boolean | ИспользоватьАктыРасхожденийПослеПеремещения | да: СкладИДоставка | — | — | +| 358 | `ИспользоватьАктыРасхожденийПослеПриемки` | Использовать акты расхождений после поступлений товаров от поставщика | xs:boolean | ИспользоватьАктыРасхожденийПослеПриемки | да: Закупки, УчетНДСИмпортЭкспорт, УчетНДСИмпортЭкспортРФ | — | — | +| 359 | `ИспользоватьАльтернативныйСерверДляЗагрузкиКурсовВалют` | Использовать альтернативный сервер для загрузки курсов валют | xs:boolean | — | нет | — | — | +| 360 | `ИспользоватьАналогиМатериалов` | Использовать аналоги материалов | xs:boolean | ИспользоватьАналогиМатериалов | нет | — | — | +| 361 | `ИспользоватьАнкетирование` | Использовать анкетирование | xs:boolean | CRM_ИспользоватьАнкетирование; ИспользоватьАнкетирование | да: CRMИМаркетинг | — | — | +| 362 | `ИспользоватьАссортимент` | Использовать ассортимент | xs:boolean | ИспользоватьАссортимент | да: CRMИМаркетинг | — | — | +| 363 | `ИспользоватьАутентификациюОСВВебСервисе1СДокументооборота` | Использовать аутентификацию ОС в веб-сервисе 1С:Документооборота | xs:boolean | — | нет | — | — | +| 364 | `ИспользоватьБизнесПроцессыИЗадачи` | Использовать бизнес-процессы и задачи | xs:boolean | ИспользоватьБизнесПроцессыИЗадачи | да: CRMИМаркетинг, Продажи | — | — | +| 365 | `ИспользоватьБизнесРегионы` | Использовать бизнес-регионы | xs:boolean | ИспользоватьБизнесРегионы | да: CRMИМаркетинг | — | — | +| 366 | `ИспользоватьБонусныеПрограммыЛояльности` | Использовать бонусные программы лояльности | xs:boolean | ИспользоватьБонусныеПрограммыЛояльности | да: CRMИМаркетинг | — | — | +| 367 | `ИспользоватьБюджетирование` | Использовать бюджетирование | xs:boolean | ИспользоватьБюджетирование | да: БюджетированиеИПланирование | — | — | +| 368 | `ИспользоватьВалютныеПлатежи` | Использовать валютные платежи | xs:boolean | ИспользоватьВалютныеПлатежи | да: Закупки, Казначейство, Предприятие, УчетНДСИмпортЭкспорт, УчетНДСИмпортЭкспортРФ | — | — | +| 369 | `ИспользоватьВвозТоваровИзТаможенногоСоюза` | Ввоз товаров из Таможенного союза | xs:boolean | ИспользоватьВвозТоваровИзТаможенногоСоюза | да: УчетНДСИмпортЭкспортРФ | — | — | +| 370 | `ИспользоватьВвозТоваровИзТаможенногоСоюзаНеотфактурованныеПоставки` | Использовать ввоз товаров из таможенного союза (неотфактурованной поставки) | xs:boolean | ИспользоватьВвозТоваровИзТаможенногоСоюзаНеотфактурованныеПоставки | да: Закупки, УчетНДСИмпортЭкспорт, УчетНДСИмпортЭкспортРФ | — | — | +| 371 | `ИспользоватьВвозТоваровИзТаможенногоСоюзаТоварыВПути` | Использовать ввоз товаров из таможенного союза (товары в пути) | xs:boolean | ИспользоватьВвозТоваровИзТаможенногоСоюзаТоварыВПути | нет | — | — | +| 372 | `ИспользоватьВерсионированиеОбъектов` | Использовать версионирование объектов | xs:boolean | ИспользоватьВерсионированиеОбъектов | да: CRMИМаркетинг, Закупки, Продажи, СкладИДоставка, УчетНДСИмпортЭкспорт, УчетНДСИмпортЭкспортРФ | Хранение значения функциональной опции | — | +| 373 | `ИспользоватьВидыСвязейМеждуФизическимиЛицами` | Использовать виды связей между физическими лицами | xs:boolean | ИспользоватьВидыСвязейМеждуФизическимиЛицами | нет | — | — | +| 374 | `ИспользоватьВидыСвязейПартнеров` | Использовать виды связей партнеров | xs:boolean | ИспользоватьВидыСвязейПартнеров | да: CRMИМаркетинг | — | — | +| 375 | `ИспользоватьВнеоборотныеАктивы2_2` | Использовать внеоборотные активы (версия 2.2) | xs:boolean | ИспользоватьВнеоборотныеАктивы2_2 | да: Предприятие | — | — | +| 376 | `ИспользоватьВнеоборотныеАктивы2_4` | Использовать внеоборотные активы (версия 2.4) | xs:boolean | ИспользоватьВнеоборотныеАктивы2_4 | да: Предприятие | — | — | +| 377 | `ИспользоватьВнешнихПользователей` | Использовать внешних пользователей | xs:boolean | ИспользоватьВнешнихПользователей | да: CRMИМаркетинг, Продажи | — | — | +| 378 | `ИспользоватьВнутреннееПотребление` | Использовать внутреннее потребление | xs:boolean | ИспользоватьВнутреннееПотребление | да: СкладИДоставка | — | — | +| 379 | `ИспользоватьВнутреннееПотреблениеПоНесколькимЗаказам` | Использовать внутреннее потребление по нескольким заказам | xs:boolean | ИспользоватьВнутреннееПотреблениеПоНесколькимЗаказам | да: СкладИДоставка | — | — | +| 380 | `ИспользоватьВнутреннееСогласованиеЗаказовКлиентов` | Использовать внутреннее согласование заказов клиентов | xs:boolean | ИспользоватьВнутреннееСогласованиеЗаказовКлиентов | нет | — | — | +| 381 | `ИспользоватьВнутреннееСогласованиеЗаявокНаВозвратТоваровОтКлиентов` | Использовать внутреннее согласование заявок на возврат товаров от клиентов | xs:boolean | ИспользоватьВнутреннееСогласованиеЗаявокНаВозвратТоваровОтКлиентов | нет | — | — | +| 382 | `ИспользоватьВнутреннееСогласованиеКоммерческихПредложений` | Использовать внутреннее согласование коммерческих предложений | xs:boolean | ИспользоватьВнутреннееСогласованиеКоммерческихПредложений | нет | — | — | +| 383 | `ИспользоватьВнутреннееСогласованиеСоглашенийСКлиентами` | Использовать внутреннее согласование соглашений с клиентами | xs:boolean | ИспользоватьВнутреннееСогласованиеСоглашенийСКлиентами | нет | — | — | +| 384 | `ИспользоватьВнутренниеДокументыЭДО` | Использовать внутренние документы ЭДО | xs:boolean | ИспользоватьВнутренниеДокументыЭДО | нет | — | — | +| 385 | `ИспользоватьВыгрузкуВСводноеПриложение` | Использовать выгрузку в сводное приложение | xs:boolean | ИспользоватьВыгрузкуВСводноеПриложение | нет | — | — | +| 386 | `ИспользоватьВыплатыСамозанятым` | Использовать выплаты самозанятым | xs:boolean | ИспользоватьВыплатыСамозанятым | да: Казначейство | — | — | +| 387 | `ИспользоватьГрафикиОплаты` | Использовать графики оплаты | xs:boolean | ИспользоватьГрафикиОплаты | нет | — | — | +| 388 | `ИспользоватьГруппыАналитическогоУчетаНоменклатуры` | Группы аналитического учета номенклатуры | xs:boolean | ИспользоватьГруппыАналитическогоУчетаНоменклатуры | да: ФинансовыйРезультатИКонтроллинг | — | — | +| 389 | `ИспользоватьГруппыВнешнихПользователей` | Использовать группы внешних пользователей | xs:boolean | ИспользоватьГруппыВнешнихПользователей | нет | — | — | +| 390 | `ИспользоватьГруппыДоступаНоменклатуры` | Использовать группы доступа номенклатуры | xs:boolean | ИспользоватьГруппыДоступаНоменклатуры | нет | — | — | +| 391 | `ИспользоватьГруппыДоступаПартнеров` | Использовать группы доступа партнеров | xs:boolean | ИспользоватьГруппыДоступаПартнеров | нет | — | — | +| 392 | `ИспользоватьГруппыПользователей` | Использовать группы пользователей | xs:boolean | ИспользоватьГруппыПользователей | нет | — | — | +| 393 | `ИспользоватьГруппыФинансовогоУчета` | Использовать группы настроек финансового учета | xs:boolean | ИспользоватьГруппыФинансовогоУчета | да: ФинансовыйРезультатИКонтроллинг | — | — | +| 394 | `ИспользоватьДатуИВремяВСрокахЗадач` | Использовать дату и время в сроках задач | xs:boolean | ИспользоватьДатуИВремяВСрокахЗадач | нет | — | — | +| 395 | `ИспользоватьДатуНачалаЗадач` | Использовать дату начала задач | xs:boolean | ИспользоватьДатуНачалаЗадач | нет | — | — | +| 396 | `ИспользоватьДатыЗапретаЗагрузки` | Использовать даты запрета загрузки | xs:boolean | ИспользоватьДатыЗапретаЗагрузки | нет | — | — | +| 397 | `ИспользоватьДатыЗапретаИзменения` | Использовать даты запрета изменения | xs:boolean | ИспользоватьДатыЗапретаИзменения | нет | — | — | +| 398 | `ИспользоватьДемонстрационныеСценарии` | Использовать демонстрационные сценарии | xs:boolean | ИспользоватьДемонстрационныеСценарии | да: ОписанияПроцессов | — | — | +| 399 | `ИспользоватьДифференциальноеРезервноеКопирование` | Использовать дифференциальное резервное копирование | xs:boolean | — | нет | — | — | +| 400 | `ИспользоватьДоверенностиНаПолучениеТМЦ` | Использовать доверенности на получение ТМЦ | xs:boolean | ИспользоватьДоверенностиНаПолучениеТМЦ | да: Казначейство | — | — | +| 401 | `ИспользоватьДоговорыКредитовИДепозитов` | Использовать договоры кредитов и депозитов | xs:boolean | ИспользоватьДоговорыКредитовИДепозитов | да: Казначейство | — | — | +| 402 | `ИспользоватьДоговорыМеждуОрганизациями` | Использовать договоры между организациями | xs:boolean | ИспользоватьДоговорыМеждуОрганизациями | да: ФинансовыйРезультатИКонтроллинг | — | — | +| 403 | `ИспользоватьДоговорыСКлиентами` | Использовать договоры с клиентами | xs:boolean | ИспользоватьДоговорыСКлиентами | да: Продажи | — | — | +| 404 | `ИспользоватьДоговорыСПоставщиками` | Использовать договоры с поставщиками | xs:boolean | ИспользоватьДоговорыСПоставщиками | да: Закупки | — | — | +| 405 | `ИспользоватьДополнительныеОтчетыИОбработки` | Использовать дополнительные отчеты и обработки | xs:boolean | ИспользоватьДополнительныеОтчетыИОбработки | нет | — | — | +| 406 | `ИспользоватьДополнительныеРеквизитыИСведения` | Использовать дополнительные реквизиты и сведения | xs:boolean | ИспользоватьДополнительныеРеквизитыИСведения | нет | — | — | +| 407 | `ИспользоватьДополнительныйЯзык1` | Использовать дополнительный язык1 | xs:boolean | ИспользоватьДополнительныйЯзык1 | нет | — | — | +| 408 | `ИспользоватьДополнительныйЯзык2` | Использовать дополнительный язык2 | xs:boolean | ИспользоватьДополнительныйЯзык2 | нет | — | — | +| 409 | `ИспользоватьДопустимоеОтклонениеОтгрузкиПриемкиМерныхТоваров` | Использовать допустимое отклонение отгрузки приемки мерных товаров | xs:boolean | ИспользоватьДопустимоеОтклонениеОтгрузкиПриемкиМерныхТоваров | нет | — | — | +| 410 | `ИспользоватьЕдиницыИзмеренияДляОтчетов` | Использовать единицы измерения для отчетов | xs:boolean | ИспользоватьЕдиницыИзмеренияДляОтчетов | да: НастройкиНоменклатуры | — | — | +| 411 | `ИспользоватьЕжедневныеОтчеты1СДокументооборота` | Использовать ежедневные отчеты 1С:Документооборота | xs:boolean | ИспользоватьЕжедневныеОтчеты1СДокументооборота | нет | — | — | +| 412 | `ИспользоватьЖурналПлатежей` | Использовать журнал платежей | xs:boolean | ИспользоватьЖурналПлатежей | да: Казначейство | — | — | +| 413 | `ИспользоватьЗагрузкуКурсовВалютЕЦБ` | Использовать загрузку курсов валют ЕЦБ | xs:boolean | ИспользоватьЗагрузкуКурсовВалютЕЦБ | да: Предприятие | — | — | +| 414 | `ИспользоватьЗаданияДляУправленияТорговымиПредставителями` | Использовать задания для управления торговыми представителями | xs:boolean | ИспользоватьЗаданияДляУправленияТорговымиПредставителями | нет | — | — | +| 415 | `ИспользоватьЗаданияНаПеревозкуДляУчетаДоставкиПеревозчиками` | Использовать задания на перевозку для учета доставки перевозчиками | xs:boolean | ИспользоватьЗаданияНаПеревозкуДляУчетаДоставкиПеревозчиками | да: СкладИДоставка | — | — | +| 416 | `ИспользоватьЗаданияТорговымПредставителямДляПланирования` | Использовать задания торговым представителям для планирования | xs:boolean | ИспользоватьЗаданияТорговымПредставителямДляПланирования | нет | — | — | +| 417 | `ИспользоватьЗаказыКлиентов` | Использовать заказы клиентов | xs:boolean | ИспользоватьЗаказыКлиентов | да: Продажи | — | — | +| 418 | `ИспользоватьЗаказыНаВнутреннееПотребление` | Использовать заказы на внутреннее потребление | xs:boolean | ИспользоватьЗаказыНаВнутреннееПотребление | да: Закупки, СкладИДоставка, УчетНДСИмпортЭкспорт, УчетНДСИмпортЭкспортРФ | — | — | +| 419 | `ИспользоватьЗаказыНаПеремещение` | Использовать заказы на перемещение | xs:boolean | ИспользоватьЗаказыНаПеремещение | да: СкладИДоставка | — | — | +| 420 | `ИспользоватьЗаказыНаСборку` | Использовать заказы на сборку/разборку | xs:boolean | ИспользоватьЗаказыНаСборку | да: Закупки, СкладИДоставка, УчетНДСИмпортЭкспорт, УчетНДСИмпортЭкспортРФ | — | — | +| 421 | `ИспользоватьЗаказыПоставщикам` | Использовать заказы поставщикам | xs:boolean | ИспользоватьЗаказыПоставщикам | да: Закупки, Казначейство, СкладИДоставка, УчетНДСИмпортЭкспорт, УчетНДСИмпортЭкспортРФ | — | — | +| 422 | `ИспользоватьЗаказыПоставщикамИЗаявкиНаРасходованиеДС` | Использовать заказы поставщикам и заявки на расходование ДС | xs:boolean | ИспользоватьЗаказыПоставщикамИЗаявкиНаРасходованиеДС | да: Закупки, Казначейство, УчетНДСИмпортЭкспорт, УчетНДСИмпортЭкспортРФ | — | — | +| 423 | `ИспользоватьЗаказыХотяБыОдногоВида` | Использовать заказы хотя бы одного вида | xs:boolean | ИспользоватьЗаказыХотяБыОдногоВида | нет | — | — | +| 424 | `ИспользоватьЗаметки` | Использовать заметки | xs:boolean | ИспользоватьЗаметки | нет | — | — | +| 425 | `ИспользоватьЗаполнениеРаздела7ДекларацииПоНДС` | Использовать заполнение раздела 7 декларации по НДС | xs:boolean | ИспользоватьЗаполнениеРаздела7ДекларацииПоНДС | нет | — | — | +| 426 | `ИспользоватьЗапретОтгрузки` | Использовать запрет отгрузки | xs:boolean | ИспользоватьЗапретОтгрузки | да: Продажи | — | — | +| 427 | `ИспользоватьЗапросыКоммерческихПредложенийОтКлиента` | Использовать запросы коммерческих предложений от клиента | xs:boolean | ИспользоватьЗапросыКоммерческихПредложенийОтКлиента | да: Продажи | — | — | +| 428 | `ИспользоватьЗапросыКоммерческихПредложенийПоставщиков` | Использовать запросы коммерческих предложений поставщиков | xs:boolean | ИспользоватьЗапросыКоммерческихПредложенийПоставщиков | да: Закупки | — | — | +| 429 | `ИспользоватьЗаявкиНаВозвратТоваровОтКлиентов` | Использовать заявки на возврат товаров от клиентов | xs:boolean | ИспользоватьЗаявкиНаВозвратТоваровОтКлиентов | да: Продажи | — | — | +| 430 | `ИспользоватьЗаявкиНаКомандировку` | Использовать заявки на командировку | xs:boolean | ИспользоватьЗаявкиНаКомандировку | да: Казначейство | — | — | +| 431 | `ИспользоватьЗаявкиНаРасходованиеДенежныхСредств` | Использовать заявки на расходование денежных средств | xs:boolean | ИспользоватьЗаявкиНаРасходованиеДенежныхСредств | да: Закупки, Казначейство, УчетНДСИмпортЭкспорт, УчетНДСИмпортЭкспортРФ | — | — | +| 432 | `ИспользоватьИмпортныеЗакупки` | Использовать импортные закупки | xs:boolean | ИспользоватьИмпортныеЗакупки | да: НастройкиНоменклатуры, НастройкиСертификатовНоменклатуры, УчетНДСИмпортЭкспорт, УчетНДСИмпортЭкспортРФ | — | — | +| 433 | `ИспользоватьИмпортныеЗакупкиТоваровВПути` | Использовать импортные закупки товаров в пути | xs:boolean | ИспользоватьИмпортныеЗакупкиТоваровВПути | да: Закупки, УчетНДСИмпортЭкспорт, УчетНДСИмпортЭкспортРФ | — | — | +| 434 | `ИспользоватьИмпортныеТовары` | Использовать импортные товары | xs:boolean | ИспользоватьИмпортныеТовары | да: УчетНДСИмпортЭкспортРФ | — | — | +| 435 | `ИспользоватьИндивидуальныеСоглашенияСКлиентами` | Использовать индивидуальные соглашения с клиентами | xs:boolean | ИспользоватьИндивидуальныеСоглашенияСКлиентами | нет | — | — | +| 436 | `ИспользоватьИнтеграционнуюШину` | Использовать интеграционную шину | xs:boolean | ИспользоватьИнтеграционнуюШину | нет | — | — | +| 437 | `ИспользоватьИнтеграциюОблачногоЭДО` | Использовать интеграцию облачного ЭДО | xs:boolean | ИспользоватьИнтеграциюОблачногоЭДО | нет | — | — | +| 438 | `ИспользоватьИнтеграциюС1САналитикой` | Использовать интеграцию с 1С:Аналитикой | xs:boolean | ИспользоватьИнтеграциюС1САналитика | нет | — | — | +| 439 | `ИспользоватьИнтеграциюС1СДокументооборот` | Использовать интеграцию с 1С:Документооборотом редакции 2 | xs:boolean | ИспользоватьИнтеграциюС1СДокументооборот | нет | — | — | +| 440 | `ИспользоватьИнтеграциюС1СДокументооборот3` | Использовать интеграцию с 1С:Документооборотом редакции 3 | xs:boolean | ИспользоватьИнтеграциюС1СДокументооборот3 | нет | — | — | +| 441 | `ИспользоватьИнтеграциюСLamoda` | Использовать интеграцию с Lamoda | xs:boolean | ИспользоватьИнтеграциюСLamoda | нет | — | — | +| 442 | `ИспользоватьИнтеграциюСOzon` | Использовать интеграцию с Ozon | xs:boolean | ИспользоватьИнтеграциюСOzon | нет | — | — | +| 443 | `ИспользоватьИнтеграциюСWildberries` | Использовать интеграцию с Wildberries | xs:boolean | ИспользоватьИнтеграциюСWildberries | нет | — | — | +| 444 | `ИспользоватьИнтеграциюСоСмартвей` | Использовать интеграцию со смартвей | xs:boolean | ИспользоватьИнтеграциюСоСмартвей | да: Казначейство, НастроитьИнтеграциюСмартвей | — | — | +| 445 | `ИспользоватьИнтеграциюССистемойВзаимодействия` | Использовать интеграцию с системой взаимодействия | xs:boolean | — | нет | — | — | +| 446 | `ИспользоватьИнтеграциюСЭТПБидзаарДляПокупателей` | Использовать интеграцию с Бидзаар для покупателей | xs:boolean | ИспользоватьИнтеграциюСЭТПБидзаарДляПокупателей | нет | — | — | +| 447 | `ИспользоватьИнтеграциюСЭТПБидзаарДляПоставщиков` | Использовать интеграцию с Бидзаар для поставщиков | xs:boolean | ИспользоватьИнтеграциюСЭТПБидзаарДляПоставщиков | нет | — | — | +| 448 | `ИспользоватьИнтеграциюСЯндексМаркет` | Использовать интеграцию с Яндекс Маркет | xs:boolean | ИспользоватьИнтеграциюСЯндексМаркет | нет | — | — | +| 449 | `ИспользоватьИнформативныеЦеныНоменклатуры` | Использовать информативные цены номенклатуры | xs:boolean | ИспользоватьИнформативныеЦеныНоменклатуры | да: НастройкиНоменклатуры, НастройкиСертификатовНоменклатуры | — | — | +| 450 | `ИспользоватьИнциденты` | Использовать инциденты | xs:boolean | ИспользоватьИнциденты | нет | — | — | +| 451 | `ИспользоватьИсправлениеДокументов` | Использовать исправление документов | xs:boolean | ИспользоватьИсправлениеДокументов | да: ФинансовыйРезультатИКонтроллинг | — | — | +| 452 | `ИспользоватьКартыЛояльности` | Использовать карты лояльности | xs:boolean | ИспользоватьКартыЛояльности | да: CRMИМаркетинг | — | — | +| 453 | `ИспользоватьКачествоТоваров` | Использовать качество товаров | xs:boolean | ИспользоватьКачествоТоваров | да: НастройкиНоменклатуры, НастройкиСертификатовНоменклатуры | — | — | +| 454 | `ИспользоватьКомандуЗаметки` | Использовать команду заметки | xs:boolean | ИспользоватьКомандуЗаметки | нет | — | — | +| 455 | `ИспользоватьКомандуНапоминаний` | Использовать команду напоминаний | xs:boolean | ИспользоватьКомандуНапоминаний | нет | — | — | +| 456 | `ИспользоватьКомиссиюПриЗакупках` | Использовать комиссию при закупках | xs:boolean | ИспользоватьКомиссиюПриЗакупках | да: Продажи | — | — | +| 457 | `ИспользоватьКомиссиюПриЗакупкахБазовая` | Использовать комиссию при закупках базовая | xs:boolean | ИспользоватьКомиссиюПриЗакупкахБазовая | нет | — | — | +| 458 | `ИспользоватьКомиссиюПриЗакупкахНеБазовая` | Использовать комиссию при закупках не базовая | xs:boolean | ИспользоватьКомиссиюПриЗакупкахНеБазовая | нет | — | — | +| 459 | `ИспользоватьКомиссиюПриПродажах` | Использовать комиссию при продажах | xs:boolean | ИспользоватьКомиссиюПриПродажах | да: Продажи | — | — | +| 460 | `ИспользоватьКомиссиюПриПродажахБазовая` | Использовать комиссию при продажах базовая | xs:boolean | ИспользоватьКомиссиюПриПродажахБазовая | нет | — | — | +| 461 | `ИспользоватьКомиссиюПриПродажахНеБазовая` | Использовать комиссию при продажах не базовая | xs:boolean | ИспользоватьКомиссиюПриПродажахНеБазовая | нет | — | — | +| 462 | `ИспользоватьКоммерческиеПредложенияКлиентам` | Использовать коммерческие предложения клиентам | xs:boolean | ИспользоватьКоммерческиеПредложенияКлиентам | да: Продажи | — | — | +| 463 | `ИспользоватьКоммерческиеПредложенияПоставщиков` | Использовать коммерческие предложения поставщиков | xs:boolean | ИспользоватьКоммерческиеПредложенияПоставщиков | да: Закупки | — | — | +| 464 | `ИспользоватьКонкурентнуюРазведку` | Использовать конкурентную разведку | xs:boolean | ИспользоватьКонкурентнуюРазведку | да: CRMИМаркетинг | — | — | +| 465 | `ИспользоватьКоннект` | Использовать 1С-Коннект | xs:boolean | ИнтеграцияСКоннект | нет | — | — | +| 466 | `ИспользоватьКонтрольОтраженияВУчетеЭДО` | Использовать контроль отражения в учете ЭДО | xs:boolean | ИспользоватьКонтрольОтраженияВУчетеЭДО | нет | — | — | +| 467 | `ИспользоватьКонтрольТарификации` | Использовать контроль тарификации | xs:boolean | ИспользоватьКонтрольТарификации | нет | — | — | +| 468 | `ИспользоватьКорневыеСертификатыНСПК` | Использовать корневые сертификаты НСПК | xs:boolean | ИспользоватьКорневыеСертификатыНСПК | да: Продажи | — | — | +| 469 | `ИспользоватьКорректировкиПриобретений` | Использовать корректировки приобретений | xs:boolean | ИспользоватьКорректировкиПриобретений | да: Закупки | — | — | +| 470 | `ИспользоватьКорректировкиРеализаций` | Использовать корректировки реализаций | xs:boolean | ИспользоватьКорректировкиРеализаций | да: Продажи | — | — | +| 471 | `ИспользоватьЛимитыРасходаДенежныхСредств` | Использовать лимиты расхода денежных средств | xs:boolean | ИспользоватьЛимитыРасходаДенежныхСредств | да: Казначейство | — | — | +| 472 | `ИспользоватьЛимитыРасходаДенежныхСредствПоОрганизациям` | Использовать лимиты расхода денежных средств по организациям | xs:boolean | ИспользоватьЛимитыРасходаДенежныхСредствПоОрганизациям | да: Казначейство | — | — | +| 473 | `ИспользоватьЛимитыРасходаДенежныхСредствПоПодразделениям` | Использовать лимиты расхода денежных средств по подразделениям | xs:boolean | ИспользоватьЛимитыРасходаДенежныхСредствПоПодразделениям | да: Казначейство | — | — | +| 474 | `ИспользоватьМаркетинговыеМероприятия` | Использовать маркетинговые мероприятия | xs:boolean | ИспользоватьМаркетинговыеМероприятия | да: CRMИМаркетинг | — | — | +| 475 | `ИспользоватьМеждународныеПечатныеФормы` | Использовать международные печатные формы | xs:boolean | — | да: Продажи | — | — | +| 476 | `ИспользоватьМеханизмИзмененияНастроекСписковДокументов` | Использовать механизм изменения настроек списков документов | xs:boolean | — | нет | — | — | +| 477 | `ИспользоватьМногооборотнуюТару` | Использовать многооборотную тару | xs:boolean | ИспользоватьМногооборотнуюТару | да: НастройкиНоменклатуры | — | — | +| 478 | `ИспользоватьМногострановойУчет` | Использовать многострановой учет | xs:boolean | ИспользоватьМногострановойУчет | да: Предприятие | — | — | +| 479 | `ИспользоватьМобильноеПриложение1СЗаказыКлиентов` | Использовать мобильное приложение "1С:Заказы" | xs:boolean | ИспользоватьМобильноеПриложение1СЗаказы | нет | — | — | +| 480 | `ИспользоватьМониторингЦелевыхПоказателей` | Использовать мониторинг целевых показателей | xs:boolean | ИспользоватьМониторингЦелевыхПоказателей | да: ФинансовыйРезультатИКонтроллинг | — | — | +| 481 | `ИспользоватьНаборы` | Использовать наборы | xs:boolean | ИспользоватьНаборы | да: НастройкиНоменклатуры, НастройкиСертификатовНоменклатуры | — | — | +| 482 | `ИспользоватьНазначенияБезЗаказа` | Использовать назначения без заказа | xs:boolean | ИспользоватьНазначенияБезЗаказа | нет | — | — | +| 483 | `ИспользоватьНаложенныеПлатежиСервис1СКурьер` | Использовать наложенные платежи (1С:Курьер) | xs:boolean | ИспользоватьНаложенныеПлатежиСервис1СКурьер | нет | — | — | +| 484 | `ИспользоватьНаложенныеПлатежиСервис1ССДЭК` | Использовать наложенные платежи (1С:СДЭК) | xs:boolean | ИспользоватьНаложенныеПлатежиСервис1ССДЭК | нет | — | — | +| 485 | `ИспользоватьНапоминанияПользователя` | Использовать напоминания | xs:boolean | ИспользоватьНапоминанияПользователя | нет | — | — | +| 486 | `ИспользоватьНачислениеЗарплаты` | Использовать начисление зарплаты | xs:boolean | ИспользоватьНачислениеЗарплатыУТ | да: Предприятие | — | — | +| 487 | `ИспользоватьНеотфактурованныеПоставки` | Неотфактурованные поставки | xs:boolean | ИспользоватьНеотфактурованныеПоставки | да: Закупки, ФинансовыйРезультатИКонтроллинг | — | — | +| 488 | `ИспользоватьНесколькоВалют` | Использовать несколько валют | xs:boolean | ИспользоватьНесколькоВалют | да: Казначейство, Предприятие | — | — | +| 489 | `ИспользоватьНесколькоВидовНоменклатуры` | Использовать несколько видов номенклатуры | xs:boolean | ИспользоватьНесколькоВидовНоменклатуры | да: НастройкиНоменклатуры, НастройкиСертификатовНоменклатуры | — | — | +| 490 | `ИспользоватьНесколькоВидовЦен` | Использовать несколько видов цен | xs:boolean | ИспользоватьНесколькоВидовЦен | да: CRMИМаркетинг, Продажи | — | — | +| 491 | `ИспользоватьНесколькоКасс` | Использовать несколько касс | xs:boolean | ИспользоватьНесколькоКасс | да: Казначейство | — | — | +| 492 | `ИспользоватьНесколькоКассККМ` | Использовать несколько касс ККМ | xs:boolean | ИспользоватьНесколькоКассККМ | да: Продажи | — | — | +| 493 | `ИспользоватьНесколькоКлассификацийЗадолженности` | Использовать несколько классификаций задолженности | xs:boolean | — | да: Казначейство, Предприятие | — | — | +| 494 | `ИспользоватьНесколькоОрганизаций` | Использовать несколько организаций | xs:boolean | ИспользоватьНесколькоОрганизаций; ИспользоватьНесколькоОрганизацийБЭД; ИспользоватьНесколькоОрганизацийБухгалтерскийУчет | да: Казначейство, Предприятие, ФинансовыйРезультатИКонтроллинг | — | — | +| 495 | `ИспользоватьНесколькоПроизводственныхКалендарей` | Использовать несколько производственных календарей | xs:boolean | ИспользоватьНесколькоПроизводственныхКалендарей | нет | — | — | +| 496 | `ИспользоватьНесколькоРасчетныхСчетов` | Использовать несколько расчетных счетов | xs:boolean | ИспользоватьНесколькоРасчетныхСчетов | да: Казначейство | — | — | +| 497 | `ИспользоватьНесколькоРасчетныхСчетовКасс` | Использовать несколько расчетных счетов или касс | xs:boolean | ИспользоватьНесколькоРасчетныхСчетовКасс | нет | — | — | +| 498 | `ИспользоватьНесколькоСкладов` | Использовать несколько складов | xs:boolean | ИспользоватьНесколькоСкладов | да: Закупки, Продажи, СкладИДоставка, УчетНДСИмпортЭкспорт, УчетНДСИмпортЭкспортРФ | — | — | +| 499 | `ИспользоватьНоменклатуруПартнеров` | Использовать номенклатуру партнеров | xs:boolean | ИспользоватьНоменклатуруПартнеров | да: НастройкиНоменклатуры | — | — | +| 500 | `ИспользоватьНоменклатуруПродаваемуюСовместно` | Использовать номенклатуру, продаваемую совместно | xs:boolean | ИспользоватьНоменклатуруПродаваемуюСовместно | да: НастройкиНоменклатуры, НастройкиСертификатовНоменклатуры | — | — | +| 501 | `ИспользоватьОбезличенныеСертификаты` | Использовать обезличенные сертификаты | xs:boolean | — | нет | — | — | +| 502 | `ИспользоватьОбменEDI` | Использовать обмен через 1С:EDI | xs:boolean | ИспользоватьОбменEDI | нет | Признак использования обмена электронными документами через 1С:EDI в информационной базе | — | +| 503 | `ИспользоватьОбменБизнесСеть` | Использовать обмен электронными документами через 1С:Бизнес-сеть | xs:boolean | ИспользоватьОбменБизнесСеть | нет | Признак использования обмена электронными документами через 1С:Бизнес-сеть в информационной базе | — | +| 504 | `ИспользоватьОбменСБанками` | Использовать обмен с банками | xs:boolean | ИспользоватьОбменСБанками | нет | Использовать прямой обмен с банками | — | +| 505 | `ИспользоватьОбменСПодключаемымОборудованиемOffline` | Использовать обмен с подключаемым оборудованием offline | xs:boolean | ИспользоватьОбменСПодключаемымОборудованиемOffline | да: НастройкиРМКИОборудования | Хранение значения функциональной опции | — | +| 506 | `ИспользоватьОбменССайтом` | Использовать обмен с сайтом | xs:boolean | ИспользоватьОбменССайтом | нет | Флаг для одноименной функциональной опции | — | +| 507 | `ИспользоватьОбменЭД` | Использовать обмен электронными документами | xs:boolean | ИспользоватьОбменЭД | да: НастройкиНоменклатуры, НастройкиСертификатовНоменклатуры | — | — | +| 508 | `ИспользоватьОбменЭДМеждуОрганизациями` | Использовать обмен электронными документами между организациями | xs:boolean | ИспользоватьОбменЭДМеждуОрганизациями | нет | Использовать обмен электронными документами между организациями | — | +| 509 | `ИспользоватьОбобщенныйУчетНекачественныхТоваров` | Использовать обобщенный учет некачественных товаров | xs:boolean | ИспользоватьОбобщенныйУчетНекачественныхТоваров | да: НастройкиНоменклатуры | — | — | +| 510 | `ИспользоватьОбособленноеОбеспечениеЗаказов` | Использовать обособленное обеспечение заказов | xs:boolean | ИспользоватьОбособленноеОбеспечениеЗаказов | да: СкладИДоставка, ФинансовыйРезультатИКонтроллинг | — | — | +| 511 | `ИспользоватьОбособленныеПодразделенияВыделенныеНаБаланс` | Использовать обособленные подразделения, выделенные на отдельный баланс | xs:boolean | ИспользоватьОбособленныеПодразделенияВыделенныеНаБаланс | да: Предприятие | — | — | +| 512 | `ИспользоватьОбработкуОбъектов1СДокументооборота` | Использовать обработку объектов 1С:Документооборота | xs:boolean | ИспользоватьОбработкуОбъектов1СДокументооборота | нет | — | — | +| 513 | `ИспользоватьОбщиеНастройкиВходаПользователейСервиса` | Использовать общие настройки входа пользователей сервиса | xs:boolean | ИспользоватьОбщиеНастройкиВходаПользователейСервиса | нет | — | — | +| 514 | `ИспользоватьОграниченияРучныхСкидокВПродажахПоПользователям` | Использовать ограничения ручных скидок в продажах по пользователям | xs:boolean | ИспользоватьОграниченияРучныхСкидокВПродажахПоПользователям | да: CRMИМаркетинг | — | — | +| 515 | `ИспользоватьОграниченияРучныхСкидокВПродажахПоСоглашениям` | Использовать ограничения ручных скидок в продажах по соглашениям | xs:boolean | ИспользоватьОграниченияРучныхСкидокВПродажахПоСоглашениям | да: CRMИМаркетинг | — | — | +| 516 | `ИспользоватьОзнакомлениеСЭлектроннымиДокументами` | Использовать ознакомление с электронными документами | xs:boolean | — | нет | — | — | +| 517 | `ИспользоватьОказаниеАгентскихУслугПриЗакупке` | Использовать оказание агентских услуг при закупке | xs:boolean | ИспользоватьОказаниеАгентскихУслугПриЗакупке | да: Продажи | — | — | +| 518 | `ИспользоватьОнлайнОплаты` | Использовать интеграцию с ЮKassa | xs:boolean | ИспользоватьОнлайнОплаты | нет | — | — | +| 519 | `ИспользоватьОперацииСводнойКорректировкиЗадолженностиПоПриобретению` | Использовать операции сводной корректировки задолженности по приобретению | xs:boolean | ИспользоватьОперацииСводнойКорректировкиЗадолженностиПоПриобретению | нет | — | — | +| 520 | `ИспользоватьОперацииСводнойКорректировкиЗадолженностиПоРеализации` | Использовать операции сводной корректировки задолженности по реализации | xs:boolean | ИспользоватьОперацииСводнойКорректировкиЗадолженностиПоРеализации | нет | — | — | +| 521 | `ИспользоватьОплатуПлатежнымиКартами` | Использовать оплату платежными картами | xs:boolean | ИспользоватьОплатуПлатежнымиКартами | да: Казначейство, Продажи | — | — | +| 522 | `ИспользоватьОплатуСервиса` | Использовать оплату сервиса | xs:boolean | ИспользоватьОплатуСервиса | нет | — | — | +| 523 | `ИспользоватьОповещенияПользователейОСобытиях` | Использовать оповещения пользователей о событиях системы | xs:boolean | ИспользоватьОповещенияПользователейОСобытиях | нет | — | — | +| 524 | `ИспользоватьОптимизированнуюЗаписьСозданияАвтономногоРабочегоМеста` | Использовать оптимизированную запись создания автономного рабочего места | xs:boolean | ИспользоватьОптимизированнуюЗаписьСозданияАвтономногоРабочегоМеста | нет | — | — | +| 525 | `ИспользоватьОрдерныеСклады` | Использовать ордерные склады | xs:boolean | ИспользоватьОрдерныеСклады | да: СкладИДоставка | — | — | +| 526 | `ИспользоватьОтветственноеХранение` | Использовать ответственное хранение | xs:boolean | ИспользоватьОтветственноеХранение | нет | — | — | +| 527 | `ИспользоватьОтветственноеХранениеВПроцессеЗакупки` | Использовать ответственное хранение в процессе закупки | xs:boolean | ИспользоватьОтветственноеХранениеВПроцессеЗакупки | да: Закупки | — | — | +| 528 | `ИспользоватьОтветственноеХранениеСобственнымиОрганизациями` | Использовать ответственное хранение собственными организациями | xs:boolean | ИспользоватьОтветственноеХранениеСобственнымиОрганизациями | нет | — | — | +| 529 | `ИспользоватьОтгрузкуБезПереходаПраваСобственности` | Использовать отгрузку без перехода права собственности | xs:boolean | ИспользоватьОтгрузкуБезПереходаПраваСобственности | да: Продажи | — | — | +| 530 | `ИспользоватьОтгрузкуБезПереходаПраваСобственности2_0` | Использовать отгрузку без перехода права собственности (версия 2.0) | xs:boolean | ИспользоватьОтгрузкуБезПереходаПраваСобственности2_0 | нет | — | — | +| 531 | `ИспользоватьОтгрузкуБезПереходаПраваСобственности2_5` | Использовать отгрузку без перехода права собственности (версия 2.5) | xs:boolean | ИспользоватьОтгрузкуБезПереходаПраваСобственности2_5 | нет | — | — | +| 532 | `ИспользоватьОтложеннуюОтправкуЭлектронныхДокументов` | Использовать отложенную отправку электронных документов | xs:boolean | — | нет | Отправлять подготовленные к отправке электронные документы нажатием кнопки "Отправить и получить электронные документы" | — | +| 533 | `ИспользоватьОтправкуSMSВШаблонахСообщений` | Использовать отправку SMS в шаблонах сообщений | xs:boolean | ИспользоватьОтправкуSMSВШаблонахСообщений | нет | — | — | +| 534 | `ИспользоватьОтчетВедомостьРасчетовМеждуОрганизациями` | Использовать отчет ведомость расчетов между организациями | xs:boolean | ИспользоватьОтчетВедомостьРасчетовМеждуОрганизациями | нет | — | — | +| 535 | `ИспользоватьОтчетДвиженияЗаказов` | Использовать отчет движения заказов | xs:boolean | ИспользоватьОтчетДвиженияЗаказов | нет | — | — | +| 536 | `ИспользоватьОтчетРасчетыМеждуОрганизациями` | Использовать отчет расчеты между организациями | xs:boolean | ИспользоватьОтчетРасчетыМеждуОрганизациями | нет | — | — | +| 537 | `ИспользоватьОценкуПроизводительностиСинхронизацииДанных` | Использовать оценку производительности синхронизации данных | xs:boolean | — | нет | — | — | +| 538 | `ИспользоватьПараллельнуюВыгрузкуЗагрузкуДанных` | Использовать параллельную выгрузку/загрузку данных | xs:boolean | ИспользоватьПараллельнуюВыгрузкуЗагрузкуДанных | нет | — | — | +| 539 | `ИспользоватьПартионныйУчет` | Использовать партионный учет | xs:boolean | ИспользоватьПартионныйУчет | да: ДопНастройкиУчетаСебестоимости, Закупки, УчетНДСИмпортЭкспорт, УчетНДСИмпортЭкспортРФ, ФинансовыйРезультатИКонтроллинг | — | — | +| 540 | `ИспользоватьПартнеровИКонтрагентов` | Использовать партнеров и контрагентов | xs:boolean | ИспользоватьПартнеровИКонтрагентов | да: CRMИМаркетинг, Закупки | — | — | +| 541 | `ИспользоватьПартнеровКакКонтрагентов` | Использовать партнеров как контрагентов | xs:boolean | ИспользоватьПартнеровКакКонтрагентов | нет | — | — | +| 542 | `ИспользоватьПервичныйСпрос` | Фиксировать первичный спрос | xs:boolean | ИспользоватьПервичныйСпрос | да: CRMИМаркетинг | — | — | +| 543 | `ИспользоватьПередачиТоваровМеждуОрганизациями` | Использовать передачи товаров между организациями | xs:boolean | ИспользоватьПередачиТоваровМеждуОрганизациями | да: ФинансовыйРезультатИКонтроллинг | — | — | +| 544 | `ИспользоватьПередачуНаОтветственноеХранениеСПравомПродажи` | Использовать передачу на ответственное хранение с правом продажи | xs:boolean | ИспользоватьПередачуНаОтветственноеХранениеСПравомПродажи | да: Продажи | — | — | +| 545 | `ИспользоватьПеремещениеПоНесколькимЗаказам` | Использовать перемещение по нескольким заказам | xs:boolean | ИспользоватьПеремещениеПоНесколькимЗаказам | да: СкладИДоставка | — | — | +| 546 | `ИспользоватьПеремещениеТоваров` | Использовать перемещение товаров | xs:boolean | ИспользоватьПеремещениеТоваров | да: СкладИДоставка | — | — | +| 547 | `ИспользоватьПеренаправлениеЗадач` | Использовать перенаправление задач | xs:boolean | ИспользоватьПеренаправлениеЗадач | нет | — | — | +| 548 | `ИспользоватьПеречислениеДенежныхСредствСпискуСотрудников` | Использовать перечисление денежных средств списку сотрудников | xs:boolean | ИспользоватьПеречислениеДенежныхСредствСпискуСотрудников | нет | — | — | +| 549 | `ИспользоватьПечатныеФормыСФ2_5` | Использовать печатные формы СФ, УПД, УКД 2.5 | xs:boolean | ИспользоватьПечатныеФормыСФ2_5 | да: УчетНДСИмпортЭкспортРФ | — | — | +| 550 | `ИспользоватьПланированиеВнутреннихПотреблений` | Использовать планирование внутренних потреблений | xs:boolean | ИспользоватьПланированиеВнутреннихПотреблений | да: БюджетированиеИПланирование | — | — | +| 551 | `ИспользоватьПланированиеЗакупок` | Использовать планирование закупок | xs:boolean | ИспользоватьПланированиеЗакупок | да: БюджетированиеИПланирование | — | — | +| 552 | `ИспользоватьПланированиеОстатков` | Использовать планирование остатков | xs:boolean | ИспользоватьПланированиеОстатков | да: БюджетированиеИПланирование | — | — | +| 553 | `ИспользоватьПланированиеПродаж` | Использовать планирование продаж | xs:boolean | ИспользоватьПланированиеПродаж | да: БюджетированиеИПланирование | — | — | +| 554 | `ИспользоватьПланированиеПродажПоКатегориям` | Использовать планирование продаж по категориям | xs:boolean | ИспользоватьПланированиеПродажПоКатегориям | да: БюджетированиеИПланирование | — | — | +| 555 | `ИспользоватьПланированиеСборкиРазборки` | Использовать планирование сборки (разборки) | xs:boolean | ИспользоватьПланированиеСборкиРазборки | да: БюджетированиеИПланирование | — | — | +| 556 | `ИспользоватьПодакцизныеТовары` | Использовать подакцизные товары | xs:boolean | ИспользоватьПодакцизныеТовары | да: НастройкиНоменклатуры, УчетНДСИмпортЭкспортРФ | — | — | +| 557 | `ИспользоватьПодарочныеСертификаты` | Использовать подарочные сертификаты | xs:boolean | ИспользоватьПодарочныеСертификаты | да: Продажи | — | — | +| 558 | `ИспользоватьПодключаемоеОборудование` | Использовать подключаемое оборудование | xs:boolean | ИспользоватьПодключаемоеОборудование | да: НастройкиРМКИОборудования | — | — | +| 559 | `ИспользоватьПодключаемоеОборудованиеИОплатуПлатежнымиКартами` | Использовать подключаемое оборудование и оплату платежными картами | xs:boolean | ИспользоватьПодключаемоеОборудованиеИОплатуПлатежнымиКартами | нет | — | — | +| 560 | `ИспользоватьПодразделения` | Использовать подразделения | xs:boolean | CRM_Модуль_ИспользоватьПодразделения; ИспользоватьПодразделения; ИспользоватьПодразделенияВОбменах | да: Казначейство, Предприятие, ФинансовыйРезультатИКонтроллинг | — | — | +| 561 | `ИспользоватьПодчиненныеБизнесПроцессы` | Использовать подчиненные бизнес-процессы | xs:boolean | ИспользоватьПодчиненныеБизнесПроцессы | нет | — | — | +| 562 | `ИспользоватьПолнотекстовыйПоиск` | Использовать полнотекстовый поиск | xs:boolean | ИспользоватьПолнотекстовыйПоиск | да: НастройкиНоменклатуры, НастройкиСертификатовНоменклатуры | — | — | +| 563 | `ИспользоватьПолнотекстовыйПоискПриПодбореТоваров` | Использовать полнотекстовый поиск при подборе товаров | xs:boolean | ИспользоватьПолнотекстовыйПоискПриПодбореТоваров | да: НастройкиНоменклатуры, НастройкиСертификатовНоменклатуры | — | — | +| 564 | `ИспользоватьПорчуТоваровУХранителей` | Использовать порчу товаров у хранителей | xs:boolean | ИспользоватьПорчуТоваровУХранителей | нет | — | — | +| 565 | `ИспользоватьПоставляемыеДанныеОрганизацийБизнесСеть` | Использовать поставляемые данные организаций 1С:Бизнес-сеть | xs:boolean | — | нет | — | — | +| 566 | `ИспользоватьПострочнуюОтгрузкуВЗаказеКлиента` | Использовать построчную отгрузку в заказе клиента | xs:boolean | ИспользоватьПострочнуюОтгрузкуВЗаказеКлиента | да: Продажи | — | — | +| 567 | `ИспользоватьПоступлениеПоНесколькимЗаказам` | Использовать поступление по нескольким заказам | xs:boolean | ИспользоватьПоступлениеПоНесколькимЗаказам | да: Закупки | — | — | +| 568 | `ИспользоватьПочтовыйКлиент` | Использовать почтовый клиент | xs:boolean | ИспользоватьПочтовыйКлиент | нет | — | — | +| 569 | `ИспользоватьПризнакРассмотрено` | Использовать признак "Рассмотрено" | xs:boolean | ИспользоватьПризнакРассмотрено | нет | — | — | +| 570 | `ИспользоватьПрисоединенныеФайлы1СДокументооборота` | Использовать присоединенные файлы 1С:Документооборота | xs:boolean | ИспользоватьПрисоединенныеФайлы1СДокументооборота | нет | — | — | +| 571 | `ИспользоватьПричиныОтменыЗаказовКлиентов` | Использовать причины отмены заказов клиентов | xs:boolean | ИспользоватьПричиныОтменыЗаказовКлиентов | да: Продажи | — | — | +| 572 | `ИспользоватьПричиныОтменыЗаказовПоставщикам` | Использовать причины отмены заказов поставщикам | xs:boolean | ИспользоватьПричиныОтменыЗаказовПоставщикам | да: Закупки | — | — | +| 573 | `ИспользоватьПроверкуКонтрагентов` | Использовать сервис проверки данных по контрагенту | xs:decimal | — | нет | 0 - проверку никогда не включали; 1 - проверка включена; 2 - проверку отключили | — | +| 574 | `ИспользоватьПроверкуСтатусовДокументовВГИСМТ` | Использовать автоматическую отправку и получение данных МОТП | xs:boolean | ИспользоватьПроверкуСтатусовДокументовВГИСМТ | нет | — | — | +| 575 | `ИспользоватьПродажиНаЭкспорт` | Использовать продажи на экспорт | xs:boolean | ИспользоватьПродажиНаЭкспорт | да: УчетНДСИмпортЭкспорт | — | — | +| 576 | `ИспользоватьПродажиНаЭкспортНесырьевыхТоваров` | Использовать продажи на экспорт несырьевых товаров | xs:boolean | ИспользоватьПродажиНаЭкспортНесырьевыхТоваров | да: НастройкиНоменклатуры, НастройкиСертификатовНоменклатуры, Продажи, УчетНДСИмпортЭкспортРФ | — | — | +| 577 | `ИспользоватьПродажиНаЭкспортСырьевыхТоваровУслуг` | Использовать продажи на экспорт сырьевых товаров, услуг | xs:boolean | ИспользоватьПродажиНаЭкспортСырьевыхТоваровУслуг | да: НастройкиНоменклатуры, НастройкиСертификатовНоменклатуры, Продажи, УчетНДСИмпортЭкспортРФ | — | — | +| 578 | `ИспользоватьПродажуАгентскихУслуг` | Использовать продажу агентских услуг | xs:boolean | ИспользоватьПродажуАгентскихУслуг | да: Продажи | — | — | +| 579 | `ИспользоватьПроекты` | Использовать проекты | xs:boolean | CRM_Модуль_ИспользоватьПроекты; ИспользоватьПроекты | да: CRMИМаркетинг | — | — | +| 580 | `ИспользоватьПроизводство` | Использовать производство | xs:boolean | ИспользоватьПроизводство | да: CRMИМаркетинг, БюджетированиеИПланирование, Закупки, Казначейство, НастройкиНоменклатуры, НастройкиСертификатовНоменклатуры, Предприятие, Продажи (+ещё 3) | — | — | +| 581 | `ИспользоватьПроизводствоНаСтороне` | Использовать производство на стороне (2.4) | xs:boolean | ИспользоватьПроизводствоНаСтороне | да: Закупки, НастройкиНоменклатуры, НастройкиСертификатовНоменклатуры, Предприятие, СкладИДоставка | — | — | +| 582 | `ИспользоватьПросмотрPDFДокументовЭДО` | Использовать просмотр PDF документов ЭДО | xs:boolean | — | нет | — | — | +| 583 | `ИспользоватьПрофилиБезопасностиДляДОО` | Использовать профили безопасности для дополнительных отчетов и обработок | xs:boolean | — | нет | АПК:58 в имени используется сокращение | — | +| 584 | `ИспользоватьПрофилиБезопасностиДляРасширений` | Использовать профили безопасности для расширений | xs:boolean | — | нет | — | — | +| 585 | `ИспользоватьПроцессыИЗадачи1СДокументооборота` | Использовать процессы и задачи 1С:Документооборота | xs:boolean | ИспользоватьПроцессыИЗадачи1СДокументооборота | нет | — | — | +| 586 | `ИспользоватьПрочееОприходованиеТоваров` | Использовать прочее оприходование товаров | xs:boolean | ИспользоватьПрочееОприходованиеТоваров | да: СкладИДоставка | — | — | +| 587 | `ИспользоватьПрочиеВзаимодействия` | Использовать прочие взаимодействия | xs:boolean | CRM_ИспользоватьПрочиеВзаимодействия; ИспользоватьПрочиеВзаимодействия | нет | — | — | +| 588 | `ИспользоватьПрочтениеДокументовЭДО` | Использовать прочтение документов ЭДО | xs:boolean | ИспользоватьПрочтениеДокументовЭДО | нет | — | — | +| 589 | `ИспользоватьПрямойОбменЭлектроннымиДокументами` | Использовать прямой обмен электронными документами | xs:boolean | ИспользоватьПрямойОбменЭлектроннымиДокументами | нет | — | — | +| 590 | `ИспользоватьРазделениеДокументовПоОтветственнымЭДО` | Использовать разделение документов по ответственным ЭДО | xs:boolean | ИспользоватьРазделениеДокументовПоОтветственнымЭДО | нет | Использовать "Ответственных" за документы в ЭДО | — | +| 591 | `ИспользоватьРазделениеПоОбластямДанных` | Использовать разделение по областям данных | xs:boolean | CRM_РаботаВМоделиСервиса; ПользователиВМоделиСервиса; РаботаВМоделиСервиса; РаботаВМоделиСервисаБТС; СтандартныеПодсистемыВМоделиСервиса; ТехнологияСервисаВМоделиСервиса; ТехнологияСервисаВМоделиСервисаУТКАУП | да: Интерфейс | — | — | +| 592 | `ИспользоватьРазделыТаможеннойДекларацииИмпорт` | Использовать разделы таможенной декларации импорт | xs:boolean | ИспользоватьРазделыТаможеннойДекларацииИмпорт | да: УчетНДСИмпортЭкспорт | — | — | +| 593 | `ИспользоватьРаспознаваниеДокументов` | Использовать распознавание документов | xs:boolean | ИспользоватьРаспознаваниеДокументов | нет | — | — | +| 594 | `ИспользоватьРасширенноеОбеспечениеПотребностей` | Использовать расширенное обеспечение потребностей | xs:boolean | ИспользоватьРасширенноеОбеспечениеПотребностей | да: Закупки, Продажи, СкладИДоставка, УчетНДСИмпортЭкспорт, УчетНДСИмпортЭкспортРФ | — | — | +| 595 | `ИспользоватьРасширенныеВозможностиЗаказаКлиента` | Использовать расширенные возможности заказа клиента | xs:boolean | ИспользоватьРасширенныеВозможностиЗаказаКлиента | да: Продажи | — | — | +| 596 | `ИспользоватьРеализациюПоНесколькимЗаказам` | Использовать реализацию по нескольким заказам | xs:boolean | ИспользоватьРеализациюПоНесколькимЗаказам | да: Продажи | — | — | +| 597 | `ИспользоватьРеверсивноеОбложениеНДС` | Использовать реверсивное обложение НДС | xs:boolean | ИспользоватьРеверсивноеОбложениеНДС | да: УчетНДСИмпортЭкспорт | — | — | +| 598 | `ИспользоватьРеглУчет` | Использовать регламентированный учет | xs:boolean | ИспользоватьРеглУчет | да: НастройкиНоменклатуры, НастройкиСертификатовНоменклатуры, ФинансовыйРезультатИКонтроллинг | — | — | +| 599 | `ИспользоватьРеестрДоверенностейФНСЭДО` | Использовать реестр доверенностей ФНС ЭДО | xs:boolean | — | нет | — | — | +| 600 | `ИспользоватьРейтингиПродажНоменклатуры` | Использовать рейтинги продаж номенклатуры | xs:boolean | ИспользоватьРейтингиПродажНоменклатуры | да: CRMИМаркетинг | — | — | +| 601 | `ИспользоватьРетроБонусыКлиентов` | Использовать ретро-бонусы клиентов | xs:boolean | ИспользоватьРетроБонусыКлиентов | да: CRMИМаркетинг | — | — | +| 602 | `ИспользоватьРетроБонусыПоставщиков` | Использовать ретро-бонусы поставщиков | xs:boolean | ИспользоватьРетроБонусыПоставщиков | да: Закупки | — | — | +| 603 | `ИспользоватьРозничныеПродажи` | Использовать розничные продажи | xs:boolean | ИспользоватьРозничныеПродажи | да: НастройкиРМКИОборудования, Продажи | — | — | +| 604 | `ИспользоватьРолиКонтактныхЛицПартнеров` | Использовать роли контактных лиц партнеров | xs:boolean | ИспользоватьРолиКонтактныхЛицПартнеров | да: CRMИМаркетинг | — | — | +| 605 | `ИспользоватьРолиПартнеровИКонтактныхЛицВСделкахИПроектах` | Использовать роли партнеров и контактных лиц в сделках и проектах | xs:boolean | ИспользоватьРолиПартнеровИКонтактныхЛицВСделкахИПроектах | да: CRMИМаркетинг | — | — | +| 606 | `ИспользоватьРучныеСкидкиВЗакупках` | Использовать ручные скидки в закупках | xs:boolean | ИспользоватьРучныеСкидкиВЗакупках | да: CRMИМаркетинг | — | — | +| 607 | `ИспользоватьРучныеСкидкиВПродажах` | Использовать ручные скидки в продажах | xs:boolean | CRM_Модуль_ИспользоватьРучныеСкидкиВПродажах; ИспользоватьРучныеСкидкиВПродажах | да: CRMИМаркетинг, Продажи | — | — | +| 608 | `ИспользоватьСбалансированностьПлановУТ` | Использовать сбалансированность планов УТ | xs:boolean | ИспользоватьСбалансированностьПлановУТ | нет | — | — | +| 609 | `ИспользоватьСборкуРазборку` | Использовать сборку разборку | xs:boolean | ИспользоватьСборкуРазборку | да: CRMИМаркетинг, БюджетированиеИПланирование, СкладИДоставка | — | — | +| 610 | `ИспользоватьСверткуРегистраСоответствиеНоменклатурыСАТУРН` | Использовать свертку регистра "Соответствие номенклатуры ФГИС "Сатурн"" | xs:boolean | — | нет | — | — | +| 611 | `ИспользоватьСвязанныеДокументы1СДокументооборота` | Использовать связанные документы 1С:Документооборота | xs:boolean | ИспользоватьСвязанныеДокументы1СДокументооборота | нет | — | — | +| 612 | `ИспользоватьСделкиСКлиентами` | Использовать сделки с клиентами | xs:boolean | ИспользоватьСделкиСКлиентами | да: CRMИМаркетинг, Продажи, ФинансовыйРезультатИКонтроллинг | — | — | +| 613 | `ИспользоватьСегментыНоменклатуры` | Использовать сегменты номенклатуры | xs:boolean | ИспользоватьСегментыНоменклатуры | да: CRMИМаркетинг, НастройкиНоменклатуры, НастройкиСертификатовНоменклатуры | — | — | +| 614 | `ИспользоватьСегментыПартнеров` | Использовать сегменты партнеров | xs:boolean | CRM_ИспользоватьСегментацию; ИспользоватьСегментыПартнеров | да: CRMИМаркетинг | — | — | +| 615 | `ИспользоватьСезонныеКоэффициенты` | Использовать сезонные коэффициенты | xs:boolean | ИспользоватьСезонныеКоэффициенты | да: БюджетированиеИПланирование | — | — | +| 616 | `ИспользоватьСерверЛояльностиПолучательДанных` | Использовать сервер лояльности получатель данных | xs:boolean | ИспользоватьСерверЛояльностиПолучательДанных | нет | — | — | +| 617 | `ИспользоватьСерверЛояльностиПоставщикДанных` | Использовать сервер лояльности поставщик данных | xs:boolean | ИспользоватьСерверЛояльностиПоставщикДанных | да: CRMИМаркетинг | — | — | +| 618 | `ИспользоватьСервис1СДоставка` | Использовать сервис 1С:Доставка | xs:boolean | ИспользоватьСервис1СДоставка | да: СкладИДоставка | — | — | +| 619 | `ИспользоватьСервис1СКурьер` | Использовать сервис 1С:Курьер | xs:boolean | ИспользоватьСервис1СКурьер | да: СкладИДоставка | — | — | +| 620 | `ИспользоватьСервис1СКурьерика` | Использовать сервис 1С-Курьерика | xs:boolean | ИспользоватьСервис1СКурьерика | нет | — | — | +| 621 | `ИспользоватьСервис1ССДЭК` | Использовать сервис 1С:СДЭК | xs:boolean | ИспользоватьСервис1ССДЭК | да: СкладИДоставка | — | — | +| 622 | `ИспользоватьСервис1СШтамп` | Использовать сервис 1С:Штамп | cfg:EnumRef.ВариантыИспользованияСервиса1СШтамп | ИспользоватьСервис1СШтамп | нет | — | — | +| 623 | `ИспользоватьСервисBankFeeds` | Использовать сервис BankFeeds | xs:boolean | ИспользоватьОбменBankFeeds | нет | — | — | +| 624 | `ИспользоватьСервисDSS` | Использовать сервис DSS | xs:boolean | ИспользоватьСервисDSS | нет | — | — | +| 625 | `ИспользоватьСервисМобильнойПодписи` | Использовать сервис мобильной подписи | xs:boolean | ИспользоватьСервисМобильнойПодписи | нет | — | — | +| 626 | `ИспользоватьСервисПереводаТекста` | Использовать сервис перевода текста | xs:boolean | ИспользоватьСервисПереводаТекста | нет | — | — | +| 627 | `ИспользоватьСервисРаботаСНоменклатурой` | Использовать сервис 1С:Номенклатура | xs:boolean | ИспользоватьСервисРаботаСНоменклатурой | нет | — | — | +| 628 | `ИспользоватьСервисСклоненияMorpher` | Использовать сервис склонения Морфер | xs:boolean | — | нет | — | — | +| 629 | `ИспользоватьСервисСПАРКРиски` | Использовать сервис 1СПАРК Риски | xs:boolean | ИспользоватьСервисСПАРКРиски | нет | — | — | +| 630 | `ИспользоватьСерииНоменклатуры` | Использовать серии номенклатуры | xs:boolean | ИспользоватьСерииНоменклатуры | да: НастройкиНоменклатуры, НастройкиСертификатовНоменклатуры | — | — | +| 631 | `ИспользоватьСерииНоменклатурыДляЦенообразования` | Использовать серии номенклатуры для ценообразования | xs:boolean | ИспользоватьСерииНоменклатурыДляЦенообразования | нет | — | — | +| 632 | `ИспользоватьСертификатыНоменклатуры` | Использовать сертификаты номенклатуры | xs:boolean | ИспользоватьСертификатыНоменклатуры | да: НастройкиНоменклатуры, НастройкиСертификатовНоменклатуры | — | — | +| 633 | `ИспользоватьСертификатыОблачногоСервисаВЭДО` | Использовать сертификаты облачного сервиса в ЭДО | xs:boolean | — | нет | — | — | +| 634 | `ИспользоватьСинхронизациюДанных` | Использовать синхронизацию данных | xs:boolean | ИспользоватьСинхронизациюДанных | нет | — | — | +| 635 | `ИспользоватьСинхронизациюДанныхВЛокальномРежиме` | Использовать синхронизацию данных в локальном режиме | xs:boolean | ИспользоватьСинхронизациюДанныхВЛокальномРежиме | нет | — | — | +| 636 | `ИспользоватьСинхронизациюДанныхВМоделиСервиса` | Использовать синхронизацию данных в модели сервиса | xs:boolean | ИспользоватьСинхронизациюДанныхВМоделиСервиса | нет | — | — | +| 637 | `ИспользоватьСинхронизациюДанныхВМоделиСервисаСЛокальнойПрограммой` | Использовать синхронизацию данных в модели сервиса с локальной программой | xs:boolean | ИспользоватьСинхронизациюДанныхВМоделиСервисаСЛокальнойПрограммой | нет | — | — | +| 638 | `ИспользоватьСинхронизациюДанныхВМоделиСервисаСПриложениемВИнтернете` | Использовать синхронизацию данных в модели сервиса с приложением в Интернете | xs:boolean | ИспользоватьСинхронизациюДанныхВМоделиСервисаСПриложениемВИнтернете | нет | — | — | +| 639 | `ИспользоватьСкладыВТабличнойЧастиДокументовЗакупки` | Использовать склады в табличной части документов закупки | xs:boolean | ИспользоватьСкладыВТабличнойЧастиДокументовЗакупки | да: Закупки | — | — | +| 640 | `ИспользоватьСкладыВТабличнойЧастиДокументовПродажи` | Использовать склады в табличной части документов продажи | xs:boolean | ИспользоватьСкладыВТабличнойЧастиДокументовПродажи | да: Продажи | — | — | +| 641 | `ИспользоватьСкрытиеПерсональныхДанныхСубъектов` | Использовать скрытие персональных данных субъектов | xs:boolean | ИспользоватьСкрытиеПерсональныхДанныхСубъектов | нет | — | — | +| 642 | `ИспользоватьСловарьСопоставленияНоменклатурыБЭД` | Использовать словарь сопоставления номенклатуры БЭД | xs:boolean | ИспользоватьСловарьСопоставленияНоменклатурыБЭД | нет | — | — | +| 643 | `ИспользоватьСогласованиеЗаказовКлиентов` | Использовать согласование заказов клиентов | xs:boolean | ИспользоватьСогласованиеЗаказовКлиентов | да: Продажи | — | — | +| 644 | `ИспользоватьСогласованиеЗаказовНаВнутреннееПотребление` | Использовать согласование заказов на внутреннее потребление | xs:boolean | ИспользоватьСогласованиеЗаказовНаВнутреннееПотребление | да: СкладИДоставка | — | — | +| 645 | `ИспользоватьСогласованиеЗаказовПоставщикам` | Использовать согласование заказов поставщикам | xs:boolean | ИспользоватьСогласованиеЗаказовПоставщикам | да: Закупки | — | — | +| 646 | `ИспользоватьСогласованиеЗаявокНаВозвратТоваровОтКлиентов` | Использовать согласование заявок на возврат товаров от клиентов | xs:boolean | ИспользоватьСогласованиеЗаявокНаВозвратТоваровОтКлиентов | да: Продажи | — | — | +| 647 | `ИспользоватьСогласованиеСоглашенийСКлиентами` | Использовать согласование соглашений с клиентами | xs:boolean | ИспользоватьСогласованиеСоглашенийСКлиентами | да: Продажи | — | — | +| 648 | `ИспользоватьСогласованиеСписанийРетроБонусовКлиентов` | Использовать согласование списаний ретро-бонусов клиентов | xs:boolean | ИспользоватьСогласованиеСписанийРетроБонусовКлиентов | да: CRMИМаркетинг | — | — | +| 649 | `ИспользоватьСогласованиеСписанийРетроБонусовПоставщиков` | Использовать согласование списаний ретро-бонусов поставщиков | xs:boolean | ИспользоватьСогласованиеСписанийРетроБонусовПоставщиков | да: Закупки | — | — | +| 650 | `ИспользоватьСогласованиеЦенНоменклатуры` | Использовать согласование цен номенклатуры | xs:boolean | ИспользоватьСогласованиеЦенНоменклатуры | да: CRMИМаркетинг | — | — | +| 651 | `ИспользоватьСогласованиеЧерез1СДокументооборот` | Использовать согласование через 1С:Документооборот | xs:boolean | — | нет | — | — | +| 652 | `ИспользоватьСоглашенияСКлиентами` | Использовать соглашения с клиентами | xs:boolean | CRM_Модуль_ИспользоватьСоглашенияСКлиентами; ИспользоватьСоглашенияСКлиентами | да: Продажи | — | — | +| 653 | `ИспользоватьСоглашенияСПоставщиками` | Использовать соглашения с поставщиками | xs:boolean | ИспользоватьСоглашенияСПоставщиками | да: Закупки | — | — | +| 654 | `ИспользоватьСтандартныйПоискПриПодбореТоваров` | Использовать стандартный поиск при подборе товаров | xs:boolean | — | да: НастройкиНоменклатуры, НастройкиСертификатовНоменклатуры | — | — | +| 655 | `ИспользоватьСтатусыАвансовыхОтчетов` | Использовать статусы авансовых отчетов | xs:boolean | ИспользоватьСтатусыАвансовыхОтчетов | да: Казначейство | — | — | +| 656 | `ИспользоватьСтатусыВнутреннихПотреблений` | Использовать статусы внутренних потреблений | xs:boolean | ИспользоватьСтатусыВнутреннихПотреблений | нет | — | — | +| 657 | `ИспользоватьСтатусыЗаказовНаВнутреннееПотребление` | Использовать статусы заказов на внутреннее потребление | xs:boolean | ИспользоватьСтатусыЗаказовНаВнутреннееПотребление | да: СкладИДоставка | — | — | +| 658 | `ИспользоватьСтатусыЗаказовНаПеремещение` | Использовать статусы заказов на перемещение | xs:boolean | ИспользоватьСтатусыЗаказовНаПеремещение | да: СкладИДоставка | — | — | +| 659 | `ИспользоватьСтатусыЗаказовНаСборку` | Использовать статусы заказов на сборку | xs:boolean | ИспользоватьСтатусыЗаказовНаСборку | да: СкладИДоставка | — | — | +| 660 | `ИспользоватьСтатусыЗаказовПоставщикам` | Использовать статусы заказов поставщикам | xs:boolean | ИспользоватьСтатусыЗаказовПоставщикам | да: Закупки | — | — | +| 661 | `ИспользоватьСтатусыПеремещенийТоваров` | Использовать статусы перемещений товаров | xs:boolean | ИспользоватьСтатусыПеремещенийТоваров | да: СкладИДоставка | — | — | +| 662 | `ИспользоватьСтатусыРеализацийТоваровУслуг` | Использовать статусы реализаций товаров услуг | xs:boolean | ИспользоватьСтатусыРеализацийТоваровУслуг | да: Продажи | — | — | +| 663 | `ИспользоватьСтатусыСборокТоваров` | Использовать статусы сборок товаров | xs:boolean | ИспользоватьСтатусыСборокТоваров | да: СкладИДоставка | — | — | +| 664 | `ИспользоватьСчетаНаОплатуКлиентам` | Использовать счета на оплату клиентам | xs:boolean | ИспользоватьСчетаНаОплатуКлиентам | да: Продажи | — | — | +| 665 | `ИспользоватьТиповыеИИндивидуальныеСоглашенияСКлиентами` | Использовать типовые и индивидуальные соглашения с клиентами | xs:boolean | ИспользоватьТиповыеИИндивидуальныеСоглашенияСКлиентами | нет | — | — | +| 666 | `ИспользоватьТиповыеСоглашенияСКлиентами` | Использовать типовые соглашения с клиентами | xs:boolean | ИспользоватьТиповыеСоглашенияСКлиентами | нет | — | — | +| 667 | `ИспользоватьТоварныеКатегории` | Использовать товарные категории | xs:boolean | ИспользоватьТоварныеКатегории | да: CRMИМаркетинг, БюджетированиеИПланирование | — | — | +| 668 | `ИспользоватьТоварыВПутиОтПоставщиков` | Товары в пути | xs:boolean | ИспользоватьТоварыВПутиОтПоставщиков | да: Закупки, УчетНДСИмпортЭкспорт, УчетНДСИмпортЭкспортРФ | — | — | +| 669 | `ИспользоватьТокенФорматаUUIDИСМП` | Использовать токен формата UUID | xs:boolean | — | нет | Для обмена с ГИС МТ использовать токен формата UUID, вместо JWT | — | +| 670 | `ИспользоватьТТН` | Использовать товарно-транспортные накладные | xs:boolean | ИспользоватьТТН | да: Продажи | — | — | +| 671 | `ИспользоватьУведомленияОКонтролируемыхСделках` | Использовать уведомления о контролируемых сделках | xs:boolean | ИспользоватьУведомленияОКонтролируемыхСделках | да: НастройкиНоменклатуры, НастройкиСертификатовНоменклатуры | — | — | +| 672 | `ИспользоватьУдалениеПомеченныхОбъектов` | Использовать удаление помеченных объектов | xs:boolean | ИспользоватьУдалениеПомеченныхОбъектов | нет | — | — | +| 673 | `ИспользоватьУпаковкиНоменклатуры` | Использовать упаковки номенклатуры | xs:boolean | ИспользоватьУпаковкиНоменклатуры | да: НастройкиНоменклатуры, НастройкиСертификатовНоменклатуры | — | — | +| 674 | `ИспользоватьУпаковкиНоменклатурыДляЦенообразования` | Использовать упаковки номенклатуры для ценообразования | xs:boolean | ИспользоватьУпаковкиНоменклатурыДляЦенообразования | нет | — | — | +| 675 | `ИспользоватьУпаковочныеЛисты` | Использовать упаковочные листы | xs:boolean | ИспользоватьУпаковочныеЛисты | да: СкладИДоставка | — | — | +| 676 | `ИспользоватьУправлениеДоставкой` | Использовать управление доставкой | xs:boolean | ИспользоватьУправлениеДоставкой | да: СкладИДоставка | — | — | +| 677 | `ИспользоватьУправлениеДоступом` | Использовать управление доступом | xs:boolean | ИспользоватьУправлениеДоступом | нет | — | — | +| 678 | `ИспользоватьУправлениеКоллекциями` | Использовать управление коллекциями | xs:boolean | ИспользоватьУправлениеКоллекциями | да: CRMИМаркетинг | — | — | +| 679 | `ИспользоватьУправлениеПеремещениемОбособленныхТоваров` | Использовать управление перемещением обособленных товаров | xs:boolean | ИспользоватьУправлениеПеремещениемОбособленныхТоваров | нет | — | — | +| 680 | `ИспользоватьУправлениеПроизводством` | Использовать управление производством | xs:boolean | ИспользоватьУправлениеПроизводством | да: Продажи | — | — | +| 681 | `ИспользоватьУправлениеПроизводством2_2` | Использовать управление производством 2.2 | xs:boolean | ИспользоватьУправлениеПроизводством2_2 | да: Закупки, Продажи, УчетНДСИмпортЭкспорт, УчетНДСИмпортЭкспортРФ, ФинансовыйРезультатИКонтроллинг | — | — | +| 682 | `ИспользоватьУправлениеСделками` | Использовать управление сделками | xs:boolean | ИспользоватьУправлениеСделками | да: CRMИМаркетинг, Продажи | — | — | +| 683 | `ИспользоватьУправленческуюОрганизацию` | Использовать раздельные операции закупки и продажи для упр. и регл. учета | xs:boolean | ИспользоватьУправленческуюОрганизацию | да: Предприятие | — | — | +| 684 | `ИспользоватьУпрощеннуюСхемуОплатыВЗакупках` | Использовать упрощенную схему оплаты в закупках | xs:boolean | ИспользоватьУпрощеннуюСхемуОплатыВЗакупках | нет | — | — | +| 685 | `ИспользоватьУпрощеннуюСхемуОплатыВПродажах` | Использовать упрощенную схему оплаты в продажах | xs:boolean | ИспользоватьУпрощеннуюСхемуОплатыВПродажах | нет | — | — | +| 686 | `ИспользоватьУчетДрагоценныхМатериалов` | Использовать учет драгоценных металлов и камней | xs:boolean | ИспользоватьУчетДрагоценныхМатериалов | да: НастройкиНоменклатуры | — | — | +| 687 | `ИспользоватьУчетНДС` | Использовать учет НДС | xs:boolean | ИспользоватьУчетНДС | да: Продажи, УчетНДСИмпортЭкспорт | — | — | +| 688 | `ИспользоватьУчетОригиналовПервичныхДокументов` | Использовать учет оригиналов первичных документов | xs:boolean | ИспользоватьУчетОригиналовПервичныхДокументов | нет | — | — | +| 689 | `ИспользоватьУчетПоНДД` | Учет по НДД | xs:boolean | УчетПоНДД | нет | — | — | +| 690 | `ИспользоватьУчетПоОбъектамВозникновенияЗатрат` | Использовать учет по объектам возникновения затрат | xs:boolean | ИспользоватьУчетПоОбъектамВозникновенияЗатрат | да: ФинансовыйРезультатИКонтроллинг | — | — | +| 691 | `ИспользоватьУчетПрослеживаемыхИмпортныхТоваров` | Использовать учет прослеживаемых импортных товаров | xs:boolean | ИспользоватьУчетПрослеживаемыхИмпортныхТоваров | да: УчетНДСИмпортЭкспортРФ | — | — | +| 692 | `ИспользоватьУчетПрочихАктивовПассивов` | Использовать учет прочих активов пассивов | xs:boolean | ИспользоватьУчетПрочихАктивовПассивов | да: ФинансовыйРезультатИКонтроллинг | — | — | +| 693 | `ИспользоватьУчетПрочихДоходовРасходов` | Использовать учет прочих доходов и расходов | xs:boolean | ИспользоватьУчетПрочихДоходовРасходов | да: ФинансовыйРезультатИКонтроллинг | — | — | +| 694 | `ИспользоватьУчетПрочихДоходовРасходовРегл` | Использовать учет прочих доходов и расходов в регл. учете | xs:boolean | ИспользоватьУчетПрочихДоходовРасходовРегл | да: ФинансовыйРезультатИКонтроллинг | — | — | +| 695 | `ИспользоватьУчетСебестоимости` | Использовать учет себестоимости | xs:boolean | ИспользоватьУчетСебестоимости | да: ДопНастройкиУчетаСебестоимости, ФинансовыйРезультатИКонтроллинг | — | — | +| 696 | `ИспользоватьФайловоеХранилище1СДокументооборота` | Использовать файловое хранилище 1С:Документооборота | xs:boolean | ИспользоватьФайловоеХранилище1СДокументооборота | нет | — | — | +| 697 | `ИспользоватьФасовкуВесовогоТовара` | Использовать фасовку весового товара | xs:boolean | — | да: НастройкиНоменклатуры | — | — | +| 698 | `ИспользоватьФоновуюПроверкуДокументовГИСМТ` | Использовать фоновую проверку документов ГИС МТ | xs:boolean | ИспользоватьФоновуюПроверкуДокументовГИСМТ | нет | — | — | +| 699 | `ИспользоватьФорматыМагазинов` | Использовать форматы магазинов | xs:boolean | ИспользоватьФорматыМагазинов | да: CRMИМаркетинг | — | — | +| 700 | `ИспользоватьХарактеристикиНоменклатуры` | Использовать характеристики номенклатуры | xs:boolean | ИспользоватьХарактеристикиНоменклатуры | да: НастройкиНоменклатуры, НастройкиСертификатовНоменклатуры | — | — | +| 701 | `ИспользоватьХарактеристикиНоменклатурыДляЦенообразования` | Использовать характеристики номенклатуры для ценообразования | xs:boolean | ИспользоватьХарактеристикиНоменклатурыДляЦенообразования | нет | — | — | +| 702 | `ИспользоватьЦеновыеГруппы` | Использовать ценовые группы | xs:boolean | ИспользоватьЦеновыеГруппы | да: CRMИМаркетинг | — | — | +| 703 | `ИспользоватьЧастичнуюДоставкуСервис1СКурьерика` | Использовать частичную доставку (1С-Курьерика) | xs:boolean | ИспользоватьЧастичнуюДоставкуСервис1СКурьерика | нет | — | — | +| 704 | `ИспользоватьЧерновикиЭлектронныхДокументов` | Использовать черновики электронных документов | xs:boolean | ИспользоватьЧерновикиЭлектронныхДокументов | нет | — | — | +| 705 | `ИспользоватьШаблоныСообщений` | Использовать шаблоны сообщений | xs:boolean | ИспользоватьШаблоныСообщений | нет | — | — | +| 706 | `ИспользоватьШифрование` | Использовать шифрование | xs:boolean | CRM_ИспользоватьШифрование; ИспользоватьШифрование | нет | — | — | +| 707 | `ИспользоватьШтрихкодированиеПечатныхФормОбъектов` | Использовать штрихкодирование печатных форм объектов | xs:boolean | ИспользоватьШтрихкодированиеПечатныхФормОбъектов | да: Продажи | — | — | +| 708 | `ИспользоватьЭлектронноеАктированиеВЕИС` | Использовать обмен с ЕИС для целей электронного актирования | xs:boolean | ИспользоватьЭлектронноеАктированиеВЕИС | да: НастройкиНоменклатуры, НастройкиСертификатовНоменклатуры | — | — | +| 709 | `ИспользоватьЭлектронноеАктированиеЗаказчикаВЕИС` | Использовать электронное актирование заказчика ВЕИС | xs:boolean | ИспользоватьЭлектронноеАктированиеЗаказчикаВЕИС | нет | — | — | +| 710 | `ИспользоватьЭлектроннуюПодписьВМоделиСервиса` | Использовать электронную подпись в модели сервиса | xs:boolean | ИспользоватьЭлектроннуюПодписьВМоделиСервиса | нет | — | — | +| 711 | `ИспользоватьЭлектроннуюПочту1СДокументооборота` | Использовать электронную почту 1С:Документооборота | xs:boolean | ИспользоватьЭлектроннуюПочту1СДокументооборота | нет | — | — | +| 712 | `ИспользоватьЭлектроннуюПочтуВШаблонахСообщений` | Использовать электронную почту в шаблонах сообщений | xs:boolean | ИспользоватьЭлектроннуюПочтуВШаблонахСообщений | нет | — | — | +| 713 | `ИспользоватьЭлектронныеПодписи` | Использовать электронные подписи | xs:boolean | CRM_ИспользоватьЭлектронныеПодписи; ИспользоватьЭлектронныеПодписи; ИспользоватьЭлектронныеПодписиЭД | нет | — | — | +| 714 | `ИспользуетсяКомиссионнаяПродажа20` | Используется комиссионная продажа 2.0 | xs:boolean | ИспользуетсяКомиссионнаяПродажа20 | нет | — | — | +| 715 | `ИспользуетсяКомиссионнаяПродажаУПКА20` | Комиссионная продажа 2.0 УП КА | xs:boolean | ИспользуетсяКомиссионнаяПродажаУПКА20 | нет | — | — | +| 716 | `ИспользуетсяКомиссионнаяПродажаУТ11` | Комиссионная продажа 2.0 УТ | xs:boolean | ИспользуетсяКомиссионнаяПродажаУТ11 | нет | — | — | +| 717 | `ИспользуетсяМиграцияПриложений` | Используется миграция приложений | xs:boolean | ИспользуетсяМиграцияПриложений | нет | — | — | +| 718 | `ИспользуетсяОбменСБухгалтериейПредприятия` | Используется обмен с бухгалтерией предприятия | xs:boolean | ИспользуетсяОбменСБухгалтериейПредприятия | нет | — | — | +| 719 | `ИспользуетсяПротоколRDPвБПО` | Используется протокол RDP в БПО | xs:boolean | — | да: НастройкиРМКИОборудования | — | — | +| 720 | `ИспользуетсяСборкаРазборкаИСерииНоменклатуры` | Используется сборка разборка и серии номенклатуры | xs:boolean | ИспользуетсяСборкаРазборкаИСерииНоменклатуры | нет | — | — | +| 721 | `ИспользуетсяСервисСверкиРасчетов` | Используется сервис сверки расчетов | xs:boolean | ИспользуетсяСервисСверкиРасчетов | нет | — | — | +| 722 | `ИспользуетсяУчетВЕдиницеИзмеренияТНВЭД` | Используется учет в единице измерения ТНВЭД | xs:boolean | ИспользуетсяУчетВЕдиницеИзмеренияТНВЭД | нет | — | — | +| 723 | `ИспользуетсяЦенообразование20` | Использовать ценообразование 2.0 | xs:boolean | ИспользуетсяЦенообразование20 | да: CRMИМаркетинг | — | — | +| 724 | `ИспользуетсяЦенообразование25` | Использовать ценообразование 2.5 | xs:boolean | ИспользуетсяЦенообразование25 | да: CRMИМаркетинг | — | — | +| 725 | `ИспользуютсяПрофилиБезопасности` | Используются профили безопасности | xs:boolean | ИспользуютсяПрофилиБезопасности | нет | — | — | +| 726 | `ИсточникДанныхАдресногоКлассификатора` | Источник данных адресного классификатора | xs:string | ИсточникДанныхАдресногоКлассификатора | нет | Пустая строка - загрузка в программу | — | + +### К + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 727 | `КаталогВременныхФайловДляLinux` | Каталог временных файлов для linux | xs:string | — | нет | — | — | +| 728 | `КаталогВременныхФайловДляWindows` | Каталог временных файлов для windows | xs:string | — | нет | — | — | +| 729 | `КаталогОбменаФайламиВМоделиСервиса` | Каталог обмена файлами в модели сервиса | xs:string | — | нет | — | — | +| 730 | `КаталогОбменаФайламиВМоделиСервисаLinux` | Каталог обмена файлами в модели сервиса Linux | xs:string | — | нет | — | — | +| 731 | `КаталогРасширенийКоличествоЭлементовВВыборке` | Максимальное количество элементов на странице каталога расширений | xs:decimal | — | нет | — | — | +| 732 | `КаталогРасширенийОтправлятьПревьюПриЗапросеСписка` | Отображать изображения в каталоге расширений | xs:boolean | — | нет | — | — | +| 733 | `КаталогСообщенийОбменаДаннымиДляLinux` | Каталог сообщений синхронизации для Linux | xs:string | — | нет | — | — | +| 734 | `КаталогСообщенийОбменаДаннымиДляWindows` | Каталог сообщений синхронизации для Windows | xs:string | — | нет | — | — | +| 735 | `КлассификаторОшибокКриптографии` | Классификатор ошибок криптографии | v8:ValueStorage | — | нет | — | — | +| 736 | `КлючДоступаКСервисуЭДО` | Ключ доступа к сервису ЭДО | xs:string | — | нет | — | — | +| 737 | `КлючОбластиДанных` | Ключ области данных | xs:string | — | нет | — | — | +| 738 | `КлючПодписиТокенаДоступа1СДокументооборот` | Ключ подписи токена доступа к веб-сервису 1С:Документооборот | xs:string | — | нет | — | — | +| 739 | `КлючСопоставленияПользователей1СДокументооборот` | Ключевой реквизит для сопоставления пользователей при авторизации в 1С:Документооборот | cfg:EnumRef.КлючиСопоставленияПользователей1СДокументооборот | — | нет | — | — | +| 740 | `КодНовогоУзлаПланаОбмена` | Код нового узла плана обмена | xs:decimal | — | нет | — | — | +| 741 | `КодПоследнегоУпаковочногоЛиста` | Код последнего упаковочного листа | xs:string | — | нет | — | — | +| 742 | `КоличествоДнейХраненияЗаархивированныхЧеков` | Количество дней хранения заархивированных чеков | xs:decimal | — | да: Продажи | — | — | +| 743 | `КоличествоДнейХраненияОтложенныхЧеков` | Количество дней хранения отложенных чеков | xs:decimal | — | да: Продажи | — | — | +| 744 | `КоличествоЗамеровВПакетеЭкспорта` | Количество замеров в пакете экспорта | xs:decimal | — | нет | — | — | +| 745 | `КоличествоМесяцевМинимальногоПериодаРассчитанныхИтогов` | Количество месяцев минимального периода рассчитанных итогов | xs:decimal | — | нет | — | — | +| 746 | `КоличествоМесяцевХраненияИсторииРассылкиОтчетов` | Количество месяцев хранения истории рассылки отчетов | xs:decimal | — | нет | — | — | +| 747 | `КоличествоПериодовABCКлассификацииНоменклатуры` | Количество периодов ABC классификации номенклатуры | xs:decimal | — | нет | — | — | +| 748 | `КоличествоПериодовABCКлассификацииПартнеров` | Количество периодов ABC классификации партнеров | xs:decimal | — | нет | — | — | +| 749 | `КоличествоПериодовXYZКлассификацииНоменклатуры` | Количество периодов XYZ классификации номенклатуры | xs:decimal | — | нет | — | — | +| 750 | `КоличествоПериодовXYZКлассификацииПартнеров` | Количество периодов XYZ классификации партнеров | xs:decimal | — | нет | — | — | +| 751 | `КоличествоПериодовДляАнализаНоменклатурыПродаваемойСовместно` | Количество периодов | xs:decimal | — | нет | — | — | +| 752 | `КоличествоПериодовРасчетаТоварныхОграничений` | Количество периодов расчета товарных ограничений | xs:decimal | — | нет | — | — | +| 753 | `КоличествоПотоковДлительныхОпераций` | Количество потоков длительных операций | xs:decimal | — | нет | — | — | +| 754 | `КоличествоПотоковНеоперативнойОчередиЗаданий` | Количество потоков неоперативной очереди заданий | xs:decimal | — | нет | — | — | +| 755 | `КоличествоПотоковОбновленияДоступа` | Количество потоков обновления доступа | xs:decimal | — | нет | — | — | +| 756 | `КоличествоПотоковОбновленияИнформационнойБазы` | Количество потоков обновления информационной базы | xs:decimal | — | нет | — | — | +| 757 | `КоличествоПотоковРаспределенияВзаиморасчетов` | Количество потоков распределения взаиморасчетов | xs:decimal | — | нет | — | — | +| 758 | `КоличествоЭлементовВТранзакцииЗагрузкиДанных` | Количество элементов в транзакции загрузки данных | xs:decimal | — | нет | — | — | +| 759 | `КомплекснаяАвтоматизация` | Комплексная автоматизация | xs:boolean | КомплекснаяАвтоматизация | да: ФинансовыйРезультатИКонтроллинг | — | — | +| 760 | `КонечнаяТочкаМенеджераСервиса` | Конечная точка менеджера сервиса | cfg:ExchangePlanRef.ОбменСообщениями | — | нет | — | — | +| 761 | `КонтекстРаботыИС` | Контекст работы ИС | v8:ValueStorage | — | нет | — | — | +| 762 | `КонтролироватьВыдачуПодОтчетВРазрезеЦелей` | Контролировать выдачу под отчет в разрезе целей | xs:boolean | КонтролироватьВыдачуПодОтчетВРазрезеЦелей | да: Казначейство | — | — | +| 763 | `КонтролироватьЗапасыТоваровПодлежащихРезервированиюПоМереПоступления` | Контролировать запасы товаров, подлежащих резервированию по мере поступления | xs:boolean | — | да: СкладИДоставка | — | — | +| 764 | `КонтролироватьОстаткиАвансов` | Контролировать остатки авансов | xs:boolean | — | да: Казначейство | — | — | +| 765 | `КонтролироватьОстаткиНомеровГТДПриЗакупкеУПоставщикаПоСхемеТоварыВПути` | Контролировать остатки номеров ГТД при закупке у поставщика по схеме "товары в пути" | xs:boolean | КонтролироватьОстаткиНомеровГТДПриЗакупкеУПоставщикаПоСхемеТоварыВПути | да: УчетНДСИмпортЭкспортРФ | — | — | +| 766 | `КонтролироватьОстаткиНомеровГТДПриИмпортеПоСхемеТоварыВПути` | Контролировать остатки номеров ГТД при импорте по схеме "товары в пути" | xs:boolean | КонтролироватьОстаткиНомеровГТДПриИмпортеПоСхемеТоварыВПути | да: УчетНДСИмпортЭкспортРФ | — | — | +| 767 | `КонтролироватьОстаткиТоваровОрганизаций` | Контролировать остатки товаров организаций | xs:boolean | КонтролироватьОстаткиТоваровОрганизаций | да: Предприятие, ФинансовыйРезультатИКонтроллинг | — | — | +| 768 | `КонтролироватьОстаткиТоваровОрганизацийКОформлениюПоПоступлениям` | Контролировать остатки товаров организаций к оформлению по поступлениям | xs:boolean | КонтролироватьОстаткиТоваровОрганизацийКОформлениюПоПоступлениям | да: Закупки, УчетНДСИмпортЭкспорт, УчетНДСИмпортЭкспортРФ | — | — | +| 769 | `КонтролироватьПревышениеЛимитовРасходаДенежныхСредств` | Контролировать превышение лимитов расхода денежных средств | xs:boolean | КонтролироватьПревышениеЛимитовРасходаДенежныхСредств | да: Казначейство | — | — | +| 770 | `КонтролироватьУникальностьНоменклатурыПоСочетаниюЗначенийРеквизитов` | Контролировать уникальность номенклатуры и характеристик по сочетанию значений реквизитов | xs:boolean | КонтролироватьУникальностьНоменклатурыПоСочетаниюЗначенийРеквизитов | да: НастройкиНоменклатуры | — | — | +| 771 | `КонтролироватьУникальностьРабочегоНаименованияНоменклатурыИХарактеристик` | Контролировать уникальность рабочего наименования номенклатуры и характеристик | xs:boolean | — | да: НастройкиНоменклатуры | — | — | +| 772 | `КонтрольПревышенияОбособленногоОбеспеченияУнаследован` | Контроль превышения обособленного обеспечения унаследован | xs:boolean | — | нет | — | — | +| 773 | `КопироватьОбластиДанныхИзЭталонной` | Копировать области данных из эталонной | xs:boolean | — | нет | — | — | + +### Л + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 774 | `ЛогироватьЗапускиЗаданийОчереди` | Логировать запуски заданий очереди | xs:boolean | ЛогироватьЗапускиЗаданийОчереди | нет | — | — | +| 775 | `ЛокализацияРФ` | Локализация РФ (служебная) | xs:boolean | ЛокализацияРФ | нет | — | — | + +### М + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 776 | `МаксимальнаяДлительностьВыполненияИсполняющегоФоновогоЗадания` | Максимальная длительность выполнения исполняющего фонового задания | xs:decimal | — | нет | — | — | +| 777 | `МаксимальноеКоличествоИсполняющихФоновыхЗаданий` | Максимальное количество исполняющих фоновых заданий | xs:decimal | — | нет | — | — | +| 778 | `МаксимальноеКоличествоЭлементовВДеревеОтборовНоменклатуры` | Максимальное количество элементов в дереве отборов номенклатуры | xs:decimal | — | да: НастройкиНоменклатуры | Максимальное количество значений свойств в дерево отборов списков номенклатуры и подбора номенклатуры. Если количество значений элементов больше заданного, то в указание значения отбора по этому свойству будет осуществляться через специальную форму. | — | +| 779 | `МаксимальныйРазмерПриложенияДляВыгрузкиБезРасширенияРаботыСФайлами` | Максимальный размер приложения для выгрузки без расширения работы с файлами (Мб) | xs:decimal | — | нет | — | — | +| 780 | `МаксимальныйРазмерФайла` | Максимальный размер файла | xs:decimal | — | нет | Максимальный размер файла для импорта с компьютера | — | +| 781 | `МаксимальныйРазмерФайлаДляПередачиВ1СДокументооборот` | Максимальный размер файла для передачи в 1С:Документооборот | xs:decimal | — | нет | Максимальный размер файла для передачи в 1С:Документооборот | — | +| 782 | `МаксимальныйРазмерФайлаОбластиДанных` | Максимальный размер файла области данных | xs:decimal | — | нет | Максимальный размер файла для импорта с компьютера | — | +| 783 | `МеждународныеРеквизитыБанковскихСчетов` | Международные реквизиты банковских счетов | xs:boolean | МеждународныеРеквизитыБанковскихСчетов | да: Казначейство | — | — | +| 784 | `МинимальнаяДостоверностьНоменклатурыПродаваемойСовместно` | Минимальная достоверность | xs:decimal | — | нет | — | — | +| 785 | `МинимальнаяЗначимостьНоменклатурыПродаваемойСовместно` | Минимальная значимость | xs:decimal | — | нет | — | — | +| 786 | `МинимальныйИнтервалРегламентныхЗаданийДОИОВМоделиСервиса` | Минимальный интервал регламентных заданий дополнительных отчетов и обработок в модели сервиса | xs:decimal | — | нет | — | — | +| 787 | `МинимальныйПроцентСлучаевНоменклатурыПродаваемойСовместно` | Минимальный процент случаев | xs:decimal | — | нет | — | — | + +### Н + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 788 | `НазначатьСкидкиПоКнопкеРасчетВЧекеККМ` | Назначать скидки по кнопке Расчет в чеке ККМ | xs:boolean | НазначатьСкидкиПоКнопкеРасчетВЧекеККМ | да: Продажи | — | — | +| 789 | `НаименованиеДляПечатиВидовНоменклатуры` | Наименование для печати видов номенклатуры | xs:string | — | да: Продажи | — | — | +| 790 | `НаименованиеКорневойПапкиФайлов1СДокументооборот` | Наименование корневой папки файлов 1С:Документооборота | xs:string | — | нет | — | — | +| 791 | `НастройкаПодчиненногоУзлаРИБЗавершена` | Настройка подчиненного узла РИБ Завершена | xs:boolean | — | нет | Отражает факт того, что в подчиненном узле РИБ настройка обмена была успешно завершена с использованием помощника настройки. | — | +| 792 | `НастройкаПроксиСервера` | Настройка прокси сервера | v8:ValueStorage | — | нет | Настройки прокси сервера для доступа к сети Интернет на стороне сервера 1С:Предприятие | — | +| 793 | `НастройкиВходаПользователей` | Настройки входа пользователей | v8:ValueStorage | — | нет | — | — | +| 794 | `НастройкиВыгрузкиНоменклатуры` | Настройки выгрузки номенклатуры | v8:ValueStorage | — | нет | — | — | +| 795 | `НастройкиЗакрытияМесяца` | Настройки закрытия месяца | v8:ValueStorage | — | нет | — | — | +| 796 | `НастройкиКолонтитулов` | Настройки колонтитулов | v8:ValueStorage | — | нет | — | — | +| 797 | `НастройкиНовостей` | Настройки новостей | v8:ValueStorage | — | нет | — | — | +| 798 | `НастройкиОбменаВЕТИС` | Настройки обмена ВетИС | v8:ValueStorage | — | нет | — | — | +| 799 | `НастройкиОбменаГосИС` | Настройки обмена ГосИС через ЭДО | v8:ValueStorage | — | нет | — | — | +| 800 | `НастройкиОбменаЗЕРНО` | Настройки обмена ФГИС "Зерно" | v8:ValueStorage | — | нет | — | — | +| 801 | `НастройкиОбменаНСПК` | Настройки обмена НСПК | v8:ValueStorage | — | нет | — | — | +| 802 | `НастройкиОбменаСАТУРН` | Настройки обмена ФГИС "Сатурн" | v8:ValueStorage | — | нет | — | — | +| 803 | `НастройкиОтборовНаВыгрузкуСервисаПрогнозирования` | Настройки отборов на выгрузку сервиса прогнозирования | v8:ValueStorage | — | нет | — | — | +| 804 | `НастройкиОтборовНаЗагрузкуСервисаПрогнозирования` | Настройки отборов на загрузку сервиса прогнозирования | v8:ValueStorage | — | нет | — | — | +| 805 | `НастройкиОтображенияКомандПлатежныхСистем` | Настройки отображения команд платежных систем | v8:ValueStorage | — | нет | — | — | +| 806 | `НастройкиПараллельнойВыгрузкиЗагрузкиДанных` | Настройки параллельной выгрузки/загрузки данных | v8:ValueStorage | — | нет | — | — | +| 807 | `НастройкиПодчиненногоУзлаРИБ` | Настройки подчиненного узла РИБ | xs:string | — | нет | Настройки для завершения создания обмена данными в подчиненном узле РИБ после его создания из начального образа | — | +| 808 | `НастройкиПолученияУведомленийПортала` | Настройки получения уведомлений портала | v8:ValueStorage | — | нет | — | — | +| 809 | `НастройкиПрефиксацииШтрихкодов` | Настройки префиксации штрихкодов | v8:ValueStorage | — | нет | — | — | +| 810 | `НастройкиРасчетаРазмераПриложений` | Настройки расчета размера приложений | v8:ValueStorage | — | нет | — | — | +| 811 | `НастройкиРегистрацииСобытийДоступаКДанным` | Настройки регистрации событий доступа к данным | v8:ValueStorage | — | нет | — | — | +| 812 | `НастройкиСервисаПрогнозирования` | Настройки сервиса прогнозирования | v8:ValueStorage | — | нет | — | — | +| 813 | `НастройкиСканированияКодовМаркировкиИСМП` | Настройки сканирования кодов маркировки ИС МП | v8:ValueStorage | — | нет | — | — | +| 814 | `НациональныеРеквизитыБанковскихСчетов` | Национальные реквизиты банковских счетов | xs:boolean | НациональныеРеквизитыБанковскихСчетов | нет | — | — | +| 815 | `НачалоИнтервалаВремениПриоритетаОбработкиДанных` | Начало интервала времени приоритета обработки данных | xs:dateTime | — | нет | — | — | +| 816 | `НачатПереходНаНовуюАрхитектуруВзаиморасчетов` | Начат переход на новую архитектуру взаиморасчетов | xs:boolean | — | нет | — | — | +| 817 | `НеБазоваяВерсия` | Не базовая версия | xs:boolean | НеБазоваяВерсия | нет | — | — | +| 818 | `НеВыбиратьВариантВыводаСкидокПриПечатиДокументовПродажи` | Не выбирать вариант вывода скидок при печати документов продажи | xs:boolean | НеВыбиратьВариантВыводаСкидокПриПечатиДокументовПродажи | нет | — | — | +| 819 | `НеВыгружатьИзображенияТорговыхПредложений` | Не выгружать изображения торговых предложений | xs:boolean | — | нет | Запрет выгрузки изображений торговых предложений в сервисе 1С:Бизнес-сеть | — | +| 820 | `НеДетализироватьЗаданияТорговымПредставителямПоНоменклатуре` | Не детализировать задания торговым представителям по номенклатуре | xs:boolean | НеДетализироватьЗаданияТорговымПредставителямПоНоменклатуре | нет | — | — | +| 821 | `НезависимоеИспользованиеДополнительныхОтчетовИОбработокВМоделиСервиса` | Независимое использование дополнительных отчетов и обработок в модели сервиса | xs:boolean | НезависимоеИспользованиеДополнительныхОтчетовИОбработокВМоделиСервиса | нет | — | — | +| 822 | `НезависимоеИспользованиеРасширенийВМоделиСервиса` | Независимое использование расширений в модели сервиса | xs:boolean | — | нет | — | — | +| 823 | `НеЗакрыватьЗаказыКлиентовБезПолнойОплаты` | Не закрывать заказы клиентов без полной оплаты | xs:boolean | НеЗакрыватьЗаказыКлиентовБезПолнойОплаты | да: Продажи | — | — | +| 824 | `НеЗакрыватьЗаказыКлиентовБезПолнойОтгрузки` | Не закрывать заказы клиентов без полной отгрузки | xs:boolean | НеЗакрыватьЗаказыКлиентовБезПолнойОтгрузки | да: Продажи | — | — | +| 825 | `НеЗакрыватьЗаказыНаВнутреннееПотреблениеБезПолнойОтгрузки` | Не закрывать заказы на внутреннее потребление без полной отгрузки | xs:boolean | НеЗакрыватьЗаказыНаВнутреннееПотреблениеБезПолнойОтгрузки | да: СкладИДоставка | — | — | +| 826 | `НеЗакрыватьЗаказыНаПеремещениеБезПолнойОтгрузки` | Не закрывать заказы на перемещение без полной отгрузки | xs:boolean | НеЗакрыватьЗаказыНаПеремещениеБезПолнойОтгрузки | да: СкладИДоставка | — | — | +| 827 | `НеЗакрыватьЗаказыНаСборкуБезПолнойОтгрузки` | Не закрывать заказы на сборку без полной отгрузки | xs:boolean | НеЗакрыватьЗаказыНаСборкуБезПолнойОтгрузки | да: СкладИДоставка | — | — | +| 828 | `НеЗакрыватьЗаказыПоставщикамБезПолногоПоступления` | Не закрывать заказы поставщикам без полного поступления | xs:boolean | НеЗакрыватьЗаказыПоставщикамБезПолногоПоступления | да: Закупки | — | — | +| 829 | `НеЗакрыватьЗаказыПоставщикамБезПолнойОплаты` | Не закрывать заказы поставщикам без полной оплаты | xs:boolean | НеЗакрыватьЗаказыПоставщикамБезПолнойОплаты | да: Закупки | — | — | +| 830 | `НеИспользоватьБизнесРегионы` | Не использовать бизнес-регионы | xs:boolean | НеИспользоватьБизнесРегионы | нет | — | — | +| 831 | `НеИспользоватьЖурналПлатежей` | Не использовать журнал платежей | xs:boolean | НеИспользоватьЖурналПлатежей | нет | — | — | +| 832 | `НеИспользоватьЗаявкиНаРасходованиеДенежныхСредств` | Не использовать заявки на расходование денежных средств | xs:boolean | НеИспользоватьЗаявкиНаРасходованиеДенежныхСредств | нет | — | — | +| 833 | `НеИспользоватьМногострановойУчет` | Не использовать многострановой учет | xs:boolean | НеИспользоватьМногострановойУчет | нет | — | — | +| 834 | `НеИспользоватьНазначенияБезЗаказа` | Не использовать назначения без заказа | xs:boolean | НеИспользоватьНазначенияБезЗаказа | нет | — | — | +| 835 | `НеИспользоватьНесколькоВалют` | Не использовать несколько валют | xs:boolean | НеИспользоватьНесколькоВалют | нет | — | — | +| 836 | `НеИспользоватьНесколькоКасс` | Не использовать несколько касс | xs:boolean | НеИспользоватьНесколькоКасс | нет | — | — | +| 837 | `НеИспользоватьНесколькоКассККМ` | Не использовать несколько касс ККМ | xs:boolean | НеИспользоватьНесколькоКассККМ | нет | — | — | +| 838 | `НеИспользоватьНесколькоОрганизаций` | Не использовать несколько организаций | xs:boolean | НеИспользоватьНесколькоОрганизаций; НеИспользоватьНесколькоОрганизацийБухгалтерскийУчет | нет | — | — | +| 839 | `НеИспользоватьНесколькоРасчетныхСчетов` | Не использовать несколько расчетных счетов | xs:boolean | НеИспользоватьНесколькоРасчетныхСчетов | нет | — | — | +| 840 | `НеИспользоватьНесколькоСкладов` | Не использовать несколько складов | xs:boolean | НеИспользоватьНесколькоСкладов | нет | — | — | +| 841 | `НеИспользоватьПроверкуЗаданийЗакрытияМесяцаВОтчетахРегл` | Не использовать проверку заданий закрытия месяца в отчетах регл | xs:boolean | НеИспользоватьПроверкуЗаданийЗакрытияМесяцаВОтчетахРегл | нет | — | — | +| 842 | `НеИспользоватьРазделениеПоОбластямДанных` | Не использовать разделение по областям данных | xs:boolean | CRM_РаботаВЛокальномРежиме; РаботаВЛокальномРежиме; РаботаВЛокальномРежимеМониторПортала1СИТС; СтандартныеПодсистемыВЛокальномРежиме; ТехнологияСервисаВЛокальномРежиме; ТехнологияСервисаВЛокальномРежимеУТКАУП | нет | — | — | +| 843 | `НеИспользоватьРазделениеПоОбластямДанныхИЭтоКА` | Не использовать разделение по областям данных и это КА | xs:boolean | ТехнологияСервисаВЛокальномРежимеИЭтоКА | нет | — | — | +| 844 | `НеИспользоватьРазделениеПоОбластямДанныхИЭтоУТ` | Не использовать разделение по областям данных и это УТ | xs:boolean | ТехнологияСервисаВЛокальномРежимеИЭтоУТ | нет | — | — | +| 845 | `НеИспользоватьРасширенноеОбеспечениеПотребностей` | Не использовать расширенное обеспечение потребностей | xs:boolean | НеИспользоватьРасширенноеОбеспечениеПотребностей | нет | — | — | +| 846 | `НеИспользоватьРозничныеПродажи` | Не использовать розничные продажи | xs:boolean | НеИспользоватьРозничныеПродажи | нет | — | — | +| 847 | `НеИспользоватьСчетаНаОплатуВыбиратьВариантВыводаСкидок` | Не использовать счета на оплату и выбирать вариант вывода скидок | xs:boolean | НеИспользоватьСчетаНаОплатуВыбиратьВариантВыводаСкидок | нет | — | — | +| 848 | `НеИспользоватьСчетаНаОплатуНеВыбиратьВариантВыводаСкидок` | Не использовать счета на оплату и не выбирать вариант вывода скидок | xs:boolean | НеИспользоватьСчетаНаОплатуНеВыбиратьВариантВыводаСкидок | нет | — | — | +| 849 | `НеИспользоватьЦеновыеГруппы` | Не использовать ценовые группы | xs:boolean | НеИспользоватьЦеновыеГруппы | нет | — | — | +| 850 | `НеНоваяАрхитектураВзаиморасчетов` | Не новая архитектура взаиморасчетов | xs:boolean | НеНоваяАрхитектураВзаиморасчетов | нет | — | — | +| 851 | `НеПечататьФискальныйЧекПриОтправкеЭлектронногоЧекаПокупателю` | Не печатать фискальный чек при отправке электронного чека покупателю | xs:boolean | НеПечататьФискальныйЧекПриОтправкеЭлектронногоЧекаПокупателю | да: Продажи, ФЗ54 | — | — | +| 852 | `НеСпрашиватьПроПереходНаОнлайнВзаиморасчеты` | Не спрашивать про переход на онлайн взаиморасчеты | xs:boolean | — | нет | — | — | +| 853 | `НеФормироватьФинансовыйРезультат` | Не формировать финансовый результат | xs:boolean | НеФормироватьФинансовыйРезультат | нет | — | — | +| 854 | `НоваяАрхитектураВзаиморасчетов` | Новая архитектура взаиморасчетов | xs:boolean | НоваяАрхитектураВзаиморасчетов | да: Казначейство, Продажи | — | — | +| 855 | `НомерЗаданияКЗакрытиюМесяца` | Номер задания к закрытию месяца | xs:decimal | — | нет | — | — | +| 856 | `НомерЗаданияКРаспределениюРасчетовСКлиентами` | Номер задания к распределению расчетов с клиентами | xs:decimal | — | нет | — | — | +| 857 | `НомерЗаданияКРаспределениюРасчетовСПоставщиками` | Номер задания к распределению расчетов с поставщиками | xs:decimal | — | нет | — | — | +| 858 | `НомерЗаданияКРасчетуСебестоимости` | Номер задания к расчету себестоимости | xs:decimal | — | нет | — | — | +| 859 | `НомерЗаданияКФормированиюДвиженийПоНДС` | Номер задания к формированию движений по НДС | xs:decimal | — | нет | — | — | +| 860 | `НормативныйВидЦен` | Нормативный вид цен | cfg:CatalogRef.ВидыЦен | — | да: Продажи | — | — | + +### О + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 861 | `ОбновлятьКонтактнуюИнформациюПартнеровПриОтправкеЭлектронныхЧеков` | Обновлять контактную информацию партнеров при отправке электронных чеков | xs:boolean | — | да: ФЗ54 | — | — | +| 862 | `ОбщиеФайлыОбменСБанками` | Общие файлы для обмена с сервисом 1С:ДиректБанк | v8:ValueStorage | — | нет | — | — | +| 863 | `ОграничиватьДоступНаУровнеЗаписей` | Ограничивать доступ на уровне записей | xs:boolean | ОграничиватьДоступНаУровнеЗаписей | да: CRMИМаркетинг, НастройкиНоменклатуры, НастройкиСертификатовНоменклатуры | — | — | +| 864 | `ОграничиватьДоступНаУровнеЗаписейУниверсально` | Ограничивать доступ на уровне записей универсально | xs:boolean | ОграничиватьДоступНаУровнеЗаписейУниверсально | нет | — | — | +| 865 | `ОкончаниеИнтервалаВремениПриоритетаОбработкиДанных` | Окончание интервала времени приоритета обработки данных | xs:dateTime | — | нет | — | — | +| 866 | `ОперацияПриЗакрытииКассовойСмены` | Операция при закрытии кассовой смены | cfg:EnumRef.ОперацииПриЗакрытииКассовойСмены | — | да: Продажи | — | — | +| 867 | `ОписанияПроцессовНаПоддержке` | Описания процессов на поддержке | xs:string | — | да: ОписанияПроцессов | — | — | +| 868 | `ОплатаЭлектроннымиСертификатамиФСС` | Оплата электронными сертификатами ФСС | xs:boolean | ОплатаЭлектроннымиСертификатамиФСС | да: Продажи | — | — | +| 869 | `ОпределятьПринадлежностьТовараИСтавкуНДСПриПодборе` | Определять принадлежность товара и ставку НДС при подборе | xs:boolean | ОпределятьПринадлежностьТовараИСтавкуНДСПриПодборе | да: Продажи | — | — | +| 870 | `ОптимизироватьЗапасыРаспределительногоЦентра` | Оптимизировать запасы распределительного центра | xs:boolean | ОптимизироватьЗапасыРаспределительногоЦентра | да: СкладИДоставка | — | — | +| 871 | `ОрганизацияНаКоторуюЗарегистрированаПрограмма` | Организация, на которую зарегистрирована программа | xs:string | — | нет | — | — | +| 872 | `ОсновнаяСтрана` | Основная страна | cfg:CatalogRef.СтраныМира | — | да: Предприятие | — | — | +| 873 | `ОсновнойКалендарьПредприятия` | Основной график работы предприятия | cfg:CatalogRef.Календари | — | да: Предприятие | Ссылка на график работы по умолчанию | — | +| 874 | `ОсновнойЯзык` | Основной язык | xs:string | — | нет | — | — | +| 875 | `ОтветственныйВДокументах` | Ответственный в документах | xs:boolean | ОтветственныйВДокументах | нет | — | — | +| 876 | `ОтключитьАвтоматическоеДовериеПолнымПолномочиям` | Отключить автоматическое доверие полным полномочиям | xs:boolean | — | нет | — | — | +| 877 | `ОтключитьЗаполнениеТекстовыхПолномочийПоУмолчанию` | Отключить заполнение текстовых полномочий по умолчанию | xs:boolean | — | нет | — | — | +| 878 | `ОтключитьОчередьПередачиЗаписейСкладскогоЖурналаВЕТИС` | Не использовать очередь передачи записей складского журнала ВетИС | xs:boolean | — | нет | — | — | +| 879 | `ОтключитьПодборМЧДПоКПППриПодписанииИПроверке` | Отключить подбор МЧД по КПП при подписании и проверке подписи | xs:boolean | — | нет | — | — | +| 880 | `ОтложенноеОбновлениеВГлавномУзлеЗавершеноУспешно` | Отложенное обновление в главном узле завершено успешно | xs:boolean | ОтложенноеОбновлениеВГлавномУзлеЗавершеноУспешно | нет | — | — | +| 881 | `ОтложенноеОбновлениеЗавершеноУспешно` | Отложенное обновление завершено успешно | xs:boolean | ОтложенноеОбновлениеЗавершеноУспешно | нет | — | — | +| 882 | `ОтображатьЛичныйКабинетСервисаВПанелиРазделов` | Отображать личный кабинет сервиса в панели разделов | xs:boolean | — | нет | — | — | +| 883 | `ОтображениеСкидокВПечатныхФормахДокументовПродажи` | Отображение скидок в печатных формах документов продажи | cfg:EnumRef.ВариантыВыводаСкидокВПечатныхФормах | — | да: Продажи | — | — | +| 884 | `ОтправкаЭлектронныхЧековПослеПробитияЧека` | Отправка электронных чеков после пробития чека | xs:boolean | — | да: Продажи, ФЗ54 | — | — | +| 885 | `ОтправленоЗаписей` | Отправлено записей | xs:decimal | — | нет | — | — | +| 886 | `ОтправлятьВходящиеДокументыНаУтверждение` | Отправлять входящие документы на утверждение | xs:boolean | — | нет | — | — | +| 887 | `ОтправлятьПисьмаВФорматеHTML` | Отправлять письма в формате HTML | xs:boolean | ОтправлятьПисьмаВФорматеHTML | нет | — | — | +| 888 | `ОтправлятьЭлектронныеЧекиПоEmailЧерезОФД` | Отправлять электронные чеки по E-mail через ОФД | xs:boolean | — | да: Продажи, ФЗ54 | — | — | +| 889 | `ОтправлятьЭлектронныеЧекиПоSMSЧерезОФД` | Отправлять электронные чеки по SMS через ОФД | xs:boolean | — | да: Продажи, ФЗ54 | — | — | +| 890 | `ОценкаПроизводительностиПериодЗаписи` | Оценка производительности период записи | xs:decimal | — | нет | — | — | + +### П + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 891 | `ПараметрыАдминистрированияИБ` | Параметры администрирования ИБ | v8:ValueStorage | — | нет | Параметры администрирования: "ИмяАдминистратораИБ", "ПарольАдминистратораИБ", "ИмяАдминистратораКластера", "ПарольАдминистратораКластера", "ПортКластераСерверов", "ПортАгентаСервера" | — | +| 892 | `ПараметрыАдресногоКлассификатора` | Параметры адресного классификатора | v8:ValueStorage | — | нет | — | — | +| 893 | `ПараметрыБлокировкиРаботыСВнешнимиРесурсами` | Параметры блокировки работы с внешними ресурсами | v8:ValueStorage | — | нет | — | — | +| 894 | `ПараметрыБлокировкиРаботыССервисамиИнтернетПоддержки` | Параметры блокировки работы с сервисами Интернет-поддержки | v8:ValueStorage | — | нет | — | — | +| 895 | `ПараметрыЗапускаИнтерактивнойПроцедурыЗагрузки` | Параметры запуска интерактивной процедуры загрузки | v8:ValueStorage | — | нет | — | — | +| 896 | `ПараметрыИтоговИАгрегатов` | Параметры итогов и агрегатов | v8:ValueStorage | — | нет | — | — | +| 897 | `ПараметрыОбработчиковОбновления` | Параметры обработчиков обновления | v8:ValueStorage | — | нет | — | — | +| 898 | `ПараметрыПоискаКонтрагентов` | Параметры поиска контрагентов | v8:ValueStorage | — | нет | — | — | +| 899 | `ПараметрыРезервногоКопирования` | Параметры резервного копирования | v8:ValueStorage | — | нет | — | — | +| 900 | `ПараметрыРезервногоКопированияВОблачныйАрхив20` | Параметры резервного копирования в облачный архив | v8:ValueStorage | — | нет | — | — | +| 901 | `ПараметрыСверткиИБ` | Параметры свертки ИБ | v8:ValueStorage | — | нет | — | — | +| 902 | `ПараметрыСеансаЗагрузкиРаспознанныхДокументов` | Параметры сеанса загрузки распознанных документов | v8:ValueStorage | — | нет | — | — | +| 903 | `ПараметрыХраненияФайловВИБ` | Параметры хранения файлов в ИБ | v8:ValueStorage | — | нет | Параметры: "РасширенияФайлов", "МаксимальныйРазмер" | — | +| 904 | `ПараметрыЦентраМониторинга` | Параметры центра мониторинга | v8:ValueStorage | — | нет | — | — | +| 905 | `ПартионныйУчетВерсии22` | Партионный учет версии 2.2 | xs:boolean | ПартионныйУчетВерсии22 | да: ДопНастройкиУчетаСебестоимости, Закупки, УчетНДСИмпортЭкспорт, УчетНДСИмпортЭкспортРФ, ФинансовыйРезультатИКонтроллинг | — | — | +| 906 | `ПервоеОбновлениеДоступаЗавершилось` | Первое обновление доступа завершилось | xs:boolean | — | нет | — | — | +| 907 | `ПеремещатьТоварыДругихОрганизаций` | Перемещать товары других организаций | xs:boolean | — | да: СкладИДоставка | — | — | +| 908 | `ПереоцениватьВалютныеСредстваПоДням` | Переоценивать валютные средства по дням | xs:boolean | — | да: Казначейство, Предприятие | — | — | +| 909 | `ПериодABCКлассификацииНоменклатуры` | Период ABC классификации номенклатуры | cfg:EnumRef.Периодичность | — | нет | — | — | +| 910 | `ПериодABCКлассификацииПартнеров` | Период ABC классификации партнеров | cfg:EnumRef.Периодичность | — | нет | — | — | +| 911 | `ПериодXYZКлассификацииНоменклатуры` | Период XYZ классификации номенклатуры | cfg:EnumRef.Периодичность | — | нет | — | — | +| 912 | `ПериодXYZКлассификацииПартнеров` | Период XYZ классификации партнеров | cfg:EnumRef.Периодичность | — | нет | — | — | +| 913 | `ПериодичностьВводаСезонныхКоэффициентов` | Периодичность ввода сезонных коэффициентов | cfg:EnumRef.Периодичность | — | да: БюджетированиеИПланирование | — | — | +| 914 | `ПериодичностьДляАнализаНоменклатурыПродаваемойСовместно` | Периодичность | cfg:EnumRef.Периодичность | — | нет | — | — | +| 915 | `ПериодРасчетаТоварныхОграничений` | Период расчета товарных ограничений | cfg:EnumRef.Периодичность | — | нет | — | — | +| 916 | `ПериодХраненияЗамеров` | Период хранения замеров | xs:decimal | — | нет | — | — | +| 917 | `ПериодХраненияИсторииЗапусковЗаданийОчереди` | Период хранения истории запусков заданий очереди (часов) | xs:decimal | — | нет | — | — | +| 918 | `ПериодыРезервовТоваровОрганизацийАктуальны` | Периоды резервов товаров организаций актуальны | xs:boolean | — | нет | — | — | +| 919 | `ПечататьБумажныйЧек` | Печатать бумажный чек | xs:boolean | ПечататьБумажныйЧек | да: Продажи | — | — | +| 920 | `ПечататьОтдельныйСлипЧекЭквайринговойОперации` | Печатать отдельный слип-чек эквайринговой операции | xs:boolean | ПечататьОтдельныйСлипЧекЭквайринговойОперации | да: Продажи | — | — | +| 921 | `ПисьмаОбменСБанками` | Письма обмен с банками | xs:boolean | ПисьмаОбменСБанками | нет | — | — | +| 922 | `ПовторитьЗагрузкуСообщенияОбменаДаннымиПередЗапуском` | Повторить загрузку сообщения обмена данными перед запуском | xs:boolean | — | нет | — | — | +| 923 | `ПоддержкаБанковскогоИКазначейскогоСопровожденияГосконтрактов` | Поддержка банковского и казначейского сопровождения госконтрактов | xs:boolean | ПоддержкаБанковскогоИКазначейскогоСопровожденияГосконтрактов | да: Закупки, Казначейство, ФЗ275 | — | — | +| 924 | `ПоддержкаПлатежейРФ` | Поддержка платежей РФ | xs:boolean | ПоддержкаПлатежейРФ | нет | — | — | +| 925 | `ПоддержкаРезервногоКопирования` | Поддержка резервного копирования | xs:boolean | ПоддержкаРезервногоКопирования | нет | — | — | +| 926 | `ПодпериодXYZКлассификацииНоменклатуры` | Подпериод XYZ классификации номенклатуры | cfg:EnumRef.Периодичность | — | нет | — | — | +| 927 | `ПодпериодXYZКлассификацииПартнеров` | Подпериод XYZ классификации партнеров | cfg:EnumRef.Периодичность | — | нет | — | — | +| 928 | `ПоказыватьКомандуУстановитьРасширениеМаг1с` | Показывать команду установить расширение Маг1С | xs:boolean | ПоказыватьКомандуУстановитьРасширениеМаг1с | нет | — | — | +| 929 | `ПоказыватьРекомендацииБизнесСеть` | Показывать рекомендации бизнес сеть | xs:boolean | ПоказыватьРекомендацииБизнесСеть | нет | — | — | +| 930 | `ПокупкаТоваровОблагаемыхНДСУПокупателя` | Покупка товаров, облагаемых НДС у покупателя | xs:boolean | ПокупкаТоваровОблагаемыхНДСУПокупателя | да: УчетНДСИмпортЭкспортРФ | — | — | +| 931 | `ПользовательСтандартногоИнтерфейсаOData` | Пользователь стандартного интерфейса OData | cfg:CatalogRef.Пользователи | — | нет | — | — | +| 932 | `ПорядокЗачетаОплатНакладных` | — | cfg:EnumRef.ПорядкиЗачетаОплатНакладных | — | да: Казначейство | — | — | +| 933 | `ПорядокОбрабатываемыхДанных` | Порядок обрабатываемых данных | cfg:EnumRef.ПорядокОбработчиковОбновления | — | нет | — | — | +| 934 | `ПорядокОформленияНакладныхРасходныхОрдеров` | Порядок оформления накладных и расходных ордеров | cfg:EnumRef.ПорядокОформленияНакладныхРасходныхОрдеров | — | да: СкладИДоставка | — | — | +| 935 | `ПоследнееОбновлениеДоступа` | Последнее обновление доступа | v8:ValueStorage | — | нет | — | — | +| 936 | `ПредельноеВремяОбновленияСпискаДокументов` | Предельное время обновления списка документов | xs:decimal | — | нет | — | — | +| 937 | `ПредельноеКоличествоЗаписейВРазделеДекларацииПоНДС` | Предельное количество записей в разделах 8-12 декларации по НДС (с 1 кв. 2015 года) | xs:decimal | — | нет | — | — | +| 938 | `ПредлагатьДополнитьДокументыМногооборотнойТарой` | Предлагать дополнить документы многооборотной тарой | xs:boolean | ПредлагатьДополнитьДокументыМногооборотнойТарой | да: НастройкиНоменклатуры | — | — | +| 939 | `ПредопределенныеШаблоныСообщенийОнлайнЗаказов` | Предопределенные шаблоны сообщений онлайн-заказов | v8:ValueStorage | — | нет | — | — | +| 940 | `ПредопределенныеШаблоныСообщенийОнлайнОплат` | Предопределенные шаблоны сообщений онлайн оплат | v8:ValueStorage | — | нет | — | — | +| 941 | `ПредопределенныеШаблоныСообщенийСБП` | Предопределенные шаблоны сообщений СБП | v8:ValueStorage | — | нет | — | — | +| 942 | `ПредставлениеВидаПриложенияАвтономногоРабочегоМеста` | Представление вида приложения автономного рабочего места | xs:string | — | нет | — | — | +| 943 | `ПредставлениеВходящихДокументов` | Представление входящих документов | cfg:EnumRef.СпособыПредставленияВходящихДокументов | — | да: Предприятие | — | — | +| 944 | `ПредставлениеОбластиДанных` | Представление области данных | xs:string | — | нет | — | — | +| 945 | `ПрефиксВесовогоШтрихкода` | Префикс весового штрихкода | xs:decimal | — | нет | — | — | +| 946 | `ПрефиксОбластиДанных` | Префикс области данных | xs:string | — | нет | — | — | +| 947 | `ПрефиксПоследнегоАвтономногоРабочегоМеста` | Префикс последнего автономного рабочего места | xs:string | — | нет | Хранит значение префикса для последнего автономного рабочего места, созданного в системе | — | +| 948 | `ПрефиксСервисаДляНовостей` | Префикс сервиса для новостей | xs:string | — | нет | — | — | +| 949 | `ПрефиксУзлаРаспределеннойИнформационнойБазы` | Префикс информационной базы | xs:string | ПрефиксИнформационнойБазы | нет | — | — | +| 950 | `ПрефиксШтрихкодовУзлаРИБ` | Префикс штрихкодов узла РИБ | xs:string | — | да: НастройкиНоменклатуры | — | — | +| 951 | `ПрефиксШтучногоШтрихкода` | Префикс штучного штрихкода | xs:decimal | — | нет | — | — | +| 952 | `ПриниматьПриглашенияЭДОАвтоматически` | Принимать приглашения к ЭДО автоматически | xs:boolean | — | нет | — | — | +| 953 | `ПринятоЗаписей` | Принято записей | xs:decimal | — | нет | — | — | +| 954 | `ПриоритетОбновленияВОбластяхДанных` | Приоритет обновления в областях данных | xs:string | — | нет | — | — | +| 955 | `ПровайдерSMS` | Провайдер SMS | cfg:EnumRef.ПровайдерыSMS | — | нет | — | — | +| 956 | `ПроверятьЗаполнениеНомеровГТДПриЗакупкеУПоставщикаПоСхемеТоварыВПути` | Проверять заполнение номеров ГТД при закупке у поставщика по схеме "товары в пути" | xs:boolean | ПроверятьЗаполнениеНомеровГТДПриЗакупкеУПоставщикаПоСхемеТоварыВПути | да: УчетНДСИмпортЭкспортРФ | — | — | +| 957 | `ПроверятьИспользованиеУдаляемыхОбъектов` | Проверять использование удаляемых объектов | xs:boolean | — | нет | — | — | +| 958 | `ПроверятьЭлектронныеПодписиНаСервере` | Проверять электронные подписи на сервере | xs:boolean | ПроверятьЭлектронныеПодписиНаСервере | нет | — | — | +| 959 | `ПродажаТоваровОблагаемыхНДСУПокупателя` | Продажа товаров, облагаемых НДС у покупателя | xs:boolean | ПродажаТоваровОблагаемыхНДСУПокупателя | да: Продажи, УчетНДСИмпортЭкспортРФ | — | — | +| 960 | `ПрофильБезопасностиИнформационнойБазы` | Профиль безопасности информационной базы | — | — | нет | — | — | +| 961 | `ПутьКТомуБезУчетаРегиональныхНастроек` | Путь к тому без учета региональных настроек | xs:boolean | — | нет | — | — | + +### Р + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 962 | `РазмерБлокаПередачиФайла` | Размер блока передачи файла | xs:decimal | — | нет | — | — | +| 963 | `РазрешатьПродажуАлкогольнойПродукцииБезСопоставленияЕГАИС` | Разрешать продажу алкогольной продукции без сопоставления ЕГАИС | xs:boolean | — | да: Продажи | — | — | +| 964 | `РазрешенаРаботаСНовостями` | Разрешена работа с новостями | xs:boolean | РазрешенаРаботаСНовостями | нет | — | — | +| 965 | `РазрешенаРаботаСНовостямиЧерезИнтернет` | Разрешена работа с новостями через интернет | xs:boolean | РазрешенаРаботаСНовостямиЧерезИнтернет | нет | — | — | +| 966 | `РазрешенныеНеаккредитованныеУЦ` | Разрешенные неаккредитованные УЦ | xs:string | — | нет | — | — | +| 967 | `РазрешитьВыполнениеДООРегламентнымиЗаданиямиВМоделиСервиса` | Разрешить выполнение дополнительных отчетов и обработок регламентными заданиями в модели сервиса | xs:boolean | — | нет | АПК:58 в имени используется сокращение | — | +| 968 | `РазрешитьДоступКИнтернетСервисам` | Разрешить доступ к Интернет-сервисам | xs:boolean | РазрешитьДоступКИнтернетСервисам | нет | — | — | +| 969 | `РазрешитьДоступКИнтернетСервисамЭлектроннойПодписи` | Разрешить доступ к Интернет-сервисам электронной подписи | xs:boolean | — | нет | — | — | +| 970 | `РазрешитьОбособлениеТоваровСверхПотребности` | Разрешить обособление товаров сверх потребности | xs:boolean | — | да: СкладИДоставка | — | — | +| 971 | `РаспределениеДопРасходовНаТоварыВПутиОтПоставщиков` | Распределение доп расходов на товары в пути от поставщиков | xs:boolean | — | да: ФинансовыйРезультатИКонтроллинг | — | — | +| 972 | `РаспределениеДопРасходовПоВыбывшимТоварам` | Распределение доп. расходов по выбывшим товарам | xs:boolean | — | да: ФинансовыйРезультатИКонтроллинг | — | — | +| 973 | `РаспределятьВзаиморасчетыФоновымЗаданием` | Распределять взаиморасчеты фоновым заданием | xs:boolean | — | нет | — | — | +| 974 | `РассчитыватьПредварительнуюСтоимостьРегламентнымЗаданием` | Рассчитывать предварительную стоимость регламентным заданием | xs:boolean | РассчитыватьПредварительнуюСтоимостьРегламентнымЗаданием | нет | — | — | +| 975 | `РасходныеОрдераФормируютсяМенеджером` | Расходные ордера формируются менеджером | xs:boolean | РасходныеОрдераФормируютсяМенеджером | нет | — | — | +| 976 | `РегистрационныйНомерПрограммы` | Регистрационный номер программы | xs:string | — | нет | — | — | +| 977 | `РегистрироватьИзмененияПравДоступа` | Регистрировать изменения прав доступа | xs:boolean | — | нет | — | — | +| 978 | `РегистрироватьПоказателиСерверныхОповещений` | Регистрировать показатели серверных оповещений | xs:boolean | — | нет | — | — | +| 979 | `РедактироватьАдресаДоставкиТолькоВДиалоге` | Редактировать адреса доставки только в диалоге | xs:boolean | РедактироватьАдресаДоставкиТолькоВДиалоге | да: СкладИДоставка | — | — | +| 980 | `РежимИспользованияИнформационнойБазы` | Режим использования информационной базы | cfg:EnumRef.РежимыИспользованияИнформационнойБазы | — | нет | — | — | +| 981 | `РежимОтладки` | Режим отладки | xs:boolean | — | нет | — | — | +| 982 | `РежимОчисткиФайлов` | Режим очистки файлов | cfg:EnumRef.РежимыОчисткиФайлов | — | нет | — | — | +| 983 | `РежимРаботыСТестовымКонтуромВЕТИС` | Режим работы с тестовым контуром ВетИС | xs:boolean | РежимРаботыСТестовымКонтуромВЕТИС | нет | — | — | +| 984 | `РежимРаботыСТестовымКонтуромЗЕРНО` | Режим работы с тестовым контуром ФГИС "Зерно" | xs:boolean | РежимРаботыСТестовымКонтуромЗЕРНО | нет | — | — | +| 985 | `РежимРаботыСТестовымКонтуромИСМП` | Режим работы с тестовым контуром ИС МП | xs:boolean | РежимРаботыСТестовымКонтуромИСМП | нет | — | — | +| 986 | `РежимРаботыСТестовымКонтуромСАТУРН` | Режим работы с тестовым контуром САТУРН | xs:boolean | РежимРаботыСТестовымКонтуромСАТУРН | нет | — | — | +| 987 | `РежимТестированияМЧД` | Режим тестирования МЧД | xs:boolean | — | нет | — | — | +| 988 | `РежимФормированияРасходныхОрдеров` | Режим формирования расходных ордеров | cfg:EnumRef.РежимыФормированияРасходныхОрдеров | — | да: СкладИДоставка | — | — | + +### С + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 989 | `СайтСоздан` | Сайт создан | xs:boolean | СайтСоздан | нет | — | — | +| 990 | `СведенияОБлокируемыхОбъектах` | Сведения о блокируемых объектах | v8:ValueStorage | — | нет | — | — | +| 991 | `СведенияОбОбновленииИБ` | Сведения об обновлении ИБ | v8:ValueStorage | — | нет | — | — | +| 992 | `СведенияОбОперацияхСЦелевымиСредствами` | Сведения об операциях с целевыми средствами | xs:boolean | СведенияОбОперацияхСЦелевымиСредствами | да: ФЗ275 | — | — | +| 993 | `СвойстваИсправленийПередОбновлениемИБ` | Свойства исправлений перед обновлением ИБ | v8:ValueStorage | — | нет | — | — | +| 994 | `СвойстваСПАРКРиски` | Свойства 1СПАРК Риски | v8:ValueStorage | — | нет | — | — | +| 995 | `СервисПереводаТекста` | Сервис перевода текста | cfg:EnumRef.СервисыПереводаТекста | — | нет | — | — | +| 996 | `СинхронизироватьДанныеСПриложениемВИнтернетеПриЗавершенииРаботыПрограммы` | Синхронизировать данные с приложением в Интернете при завершении работы программы | xs:boolean | — | нет | — | — | +| 997 | `СинхронизироватьДанныеСПриложениемВИнтернетеПриНачалеРаботыПрограммы` | Синхронизировать данные с приложением в Интернете при начале работы программы | xs:boolean | — | нет | — | — | +| 998 | `СинхронизироватьФайлы` | Синхронизировать файлы с облачными сервисами | xs:boolean | ИспользоватьСинхронизациюФайлов | нет | — | — | +| 999 | `СоздаватьКонтрагентовАвтоматическиБЭД` | Создавать контрагентов автоматически БЭД | xs:boolean | — | нет | — | — | +| 1000 | `СоздаватьПодкаталогиСИменамиВладельцев` | Создавать подкаталоги с именами владельцев | xs:boolean | — | нет | — | — | +| 1001 | `СоздаватьЭлектронныеПодписиНаСервере` | Создавать электронные подписи на сервере | xs:boolean | СоздаватьЭлектронныеПодписиНаСервере | нет | — | — | +| 1002 | `СообщениеБлокировкиПриОбновленииКонфигурации` | Сообщение блокировки при обновлении конфигурации | xs:string | — | нет | — | — | +| 1003 | `СообщениеОбменаДаннымиИзГлавногоУзла` | Сообщение обмена данными из главного узла | v8:ValueStorage | — | нет | — | — | +| 1004 | `СостояниеОтправкиСерверныхОповещений` | Состояние отправки серверных оповещений | v8:ValueStorage | — | нет | — | — | +| 1005 | `СписокЗапрещенныхРасширений` | Список запрещенных расширений | xs:string | — | нет | — | — | +| 1006 | `СписокЗапрещенныхРасширенийОбластиДанных` | Список запрещенных расширений области данных | xs:string | — | нет | — | — | +| 1007 | `СписокРасширенийТекстовыхФайлов` | Список расширений текстовых файлов | xs:string | — | нет | — | — | +| 1008 | `СписокРасширенийФайловOpenDocument` | Список расширений файлов OpenDocument | xs:string | — | нет | — | — | +| 1009 | `СписокРасширенийФайловOpenDocumentОбластиДанных` | Список расширений файлов OpenDocument | xs:string | — | нет | — | — | +| 1010 | `СпособХраненияФайлов` | Способ хранения файлов | xs:string | — | нет | Способы хранения: "ВИнформационнойБазе", "ВТомахНаДиске", "ВИнформационнойБазеИТомахНаДиске" | — | +| 1011 | `СрокВыставленияСчетаФактуры` | Срок выставления счета-фактуры согласно п.3 ст. 168 НК РФ | xs:decimal | — | нет | — | — | +| 1012 | `СрокХраненияИспользованныхКодовМаркировки` | Срок хранения использованных кодов маркировки в пуле, дней | xs:decimal | — | нет | Для полностью оформленных оснований и распечатанных кодов без основания | — | +| 1013 | `СрокХраненияОперацийОчередиЧеков` | Срок хранения операций очереди чеков | cfg:EnumRef.ПериодХраненияИсторииОпераций | — | да: НастройкиРМКИОборудования | — | — | +| 1014 | `СрокХраненияОперацийПроверкиКМ` | Срок хранения операций проверки КМ | cfg:EnumRef.ПериодХраненияИсторииОпераций | — | да: НастройкиРМКИОборудования | — | — | +| 1015 | `СрокХраненияОперацийСОборудованием` | Срок хранения операций с оборудованием | cfg:EnumRef.ПериодХраненияИсторииОпераций | — | да: НастройкиРМКИОборудования | — | — | +| 1016 | `СрокХраненияПлатежныхОпераций` | Срок хранения платежных операций | cfg:EnumRef.ПериодХраненияИсторииОпераций | — | да: НастройкиРМКИОборудования | — | — | +| 1017 | `СрокХраненияСообщенийВ1СДокументооборот` | Срок хранения сообщений в 1С:Документооборот | xs:decimal | — | нет | — | — | +| 1018 | `СрокХраненияТранспортногоКонтейнераЭДО` | Срок хранения транспортного контейнера ЭДО | xs:decimal | — | нет | Количество дней, по истечению которых, обработанный транспортный контейнер ЭДО будет помечен на удаление регламентным заданием | — | +| 1019 | `СрокХраненияФискальныхОпераций` | Срок хранения фискальных операций | cfg:EnumRef.ПериодХраненияИсторииОпераций | — | да: НастройкиРМКИОборудования | — | — | +| 1020 | `СтандартныеПодсистемыВАвтономномРежиме` | Стандартные подсистемы в автономном режиме | xs:boolean | СтандартныеПодсистемыВАвтономномРежиме | нет | — | — | +| 1021 | `СтатусОбновленияКонфигурации` | Статус обновления конфигурации | v8:ValueStorage | — | нет | — | — | +| 1022 | `СтоимостьТоваровПриОценкеРентабельностиПродажи` | Стоимость товаров при оценке рентабельности продажи | cfg:EnumRef.СтоимостьТоваровПриОценкеРентабельностиПродажи | — | да: Продажи | — | — | +| 1023 | `сфпCLONServerIP` | IP- адрес сервера CLON | xs:string | — | нет | IP- адрес сервера CLON | — | +| 1024 | `сфпCLONServerLogin` | Имя пользователя CLON | xs:string | — | нет | Имя пользователя для подключения к серверу CLON | — | +| 1025 | `сфпCLONServerPassword` | Пароль пользователя CLON | xs:string | — | нет | Пароль пользователя для подключения к серверу CLON | — | +| 1026 | `сфпCLONServerPort` | Порт сервера CLON | xs:decimal | — | нет | Порт сервера CLON | — | +| 1027 | `сфпCLONType` | Тип CLON | cfg:EnumRef.сфпCLONType | — | нет | Тип CLON | — | +| 1028 | `сфпВариантПодключенияСервераВзаимодействия` | Вариант подключения Сервера взаимодействия | xs:string | — | нет | — | — | +| 1029 | `сфпВнутренниеНомераИнформационнойБазы` | Внутренние телефонные номера Информационной базы | xs:string | — | нет | — | — | +| 1030 | `сфпДатаИсторииЗвонков` | Дата истории звонков | xs:dateTime | — | нет | Дата истории звонков СофтФон | — | +| 1031 | `сфпДатаРечевойАналитики` | Дата последнего звонка Речевой аналитики | xs:dateTime | — | нет | Дата последнего звонка, обработанного системой Речевой аналитики (Софтфон) | — | +| 1032 | `сфпДействиеПриОшибкеЗагрузкиИсторииЗвонков` | Действие при ошибке загрузки истории звонков | cfg:EnumRef.сфпДействияПриОшибкеЗагрузкиИсторииЗвонков | — | нет | — | — | +| 1033 | `сфпДополнительнаяИнформацияКонтактов` | Дополнительная информация контактов (СофтФон) | xs:string | — | нет | — | — | +| 1034 | `сфпЖурналЗвонковОбновлен` | Журнал звонков обновлен | xs:boolean | — | нет | — | — | +| 1035 | `сфпЗагружатьВнутренниеЗвонки` | Загружать внутренние звонки | xs:boolean | — | нет | Загружать внутренние звонки | — | +| 1036 | `сфпИдентификаторЖурналаЗвонковСистемыВзаимодействия` | Идентификатор журнала звонков системы взаимодействия | xs:string | — | нет | — | — | +| 1037 | `сфпИдентификаторИсторииЗвонков` | Идентификатор истории звонков | xs:decimal | — | нет | Идентификатор истории звонков | — | +| 1038 | `сфпИдентификаторМаршрутизации` | Идентификатор таблицы маршрутизации | xs:string | — | нет | Идентификатор таблицы маршрутизации | — | +| 1039 | `сфпИмяСервера` | Имя сервера СофтФон | xs:string | — | нет | Имя сервера СофтФон | — | +| 1040 | `сфпИспользоватьCLON` | Использовать систему записи телефонных переговоров CLON | xs:boolean | — | нет | Использовать систему записи телефонных переговоров CLON | — | +| 1041 | `сфпИспользоватьCoMagic` | Использовать коллтрекинг | xs:boolean | сфпИспользоватьCoMagic | нет | АПК:1032 не проверять на орфографию синоним | — | +| 1042 | `сфпИспользоватьSMS` | Использовать отправку СМС средствами сервера СофтФон | xs:boolean | — | нет | Использовать отправку СМС средствами сервера СофтФон | — | +| 1043 | `сфпИспользоватьВнутреннийНомерИзКИПользователя` | Использовать внутренний номер из контактной информации пользователя | xs:boolean | — | нет | Настройка нужна для "игнорирования" текущего внутреннего номера из персональных настроек при маршрутизации звонков | — | +| 1044 | `сфпИспользоватьЗаписьПереговоров` | Использовать запись переговоров | xs:boolean | сфпИспользоватьЗаписьПереговоров | нет | Использовать запись телефонных переговоров | — | +| 1045 | `сфпИспользоватьИсториюЗвонков` | Использовать историю звонков | xs:boolean | сфпИспользоватьИсториюЗвонков | нет | Использовать историю звонков | — | +| 1046 | `сфпИспользоватьМаршрутизацию` | Использовать маршрутизацию средствами сервера СофтФон | xs:boolean | сфпИспользоватьМаршрутизацию | нет | Использовать динамическую маршрутизацию входящих звонков средствами сервера СофтФон | — | +| 1047 | `сфпИспользоватьМобильнуюТелефонию` | Использовать мобильную телефонию | xs:boolean | сфпИспользоватьМобильнуюТелефонию | нет | — | — | +| 1048 | `сфпИспользоватьОблачнуюТелефонию` | Использовать облачную телефонию | xs:boolean | сфпИспользоватьОблачнуюТелефонию | нет | — | — | +| 1049 | `сфпИспользоватьОчисткуСообщенийЖурналаЗвонков` | Использовать очистку сообщений журнала звонков | xs:boolean | сфпИспользоватьРегламентноеЗаданиеОчисткаСообщенийЖурналаЗвонков | нет | — | — | +| 1050 | `сфпИспользоватьПрефиксыИсходящихВызов` | Использовать префиксы исходящих вызов | xs:boolean | — | нет | — | — | +| 1051 | `сфпИспользоватьРаспознавание1С` | Использовать распознавание 1С | xs:boolean | — | нет | — | — | +| 1052 | `сфпИспользоватьРегламентноеЗаданиеИсторииЗвонков` | Использовать регламентное задание истории звонков | xs:boolean | — | нет | Использовать регламентное задание для обновления истории звонков | — | +| 1053 | `сфпИспользоватьРегламентноеЗаданиеТелефонныхКниг` | Использовать регламентное задание телефонных книг | xs:boolean | — | нет | Использовать регламентное задание для обновления телефонных книг | — | +| 1054 | `сфпИспользоватьРечевуюАналитику` | Использовать речевую аналитику | xs:boolean | — | нет | — | — | +| 1055 | `сфпИспользоватьСофтФон` | Использовать СофтФон | xs:boolean | сфпИспользоватьСофтФон | нет | Использовать подсистему СофтФон | — | +| 1056 | `сфпИспользоватьСпрут7` | Использовать систему записи телефонных переговоров Спрут-7 | xs:boolean | — | нет | Использовать систему записи телефонных переговоров Спрут-7 | — | +| 1057 | `сфпИспользоватьТранскрибацию` | Использовать транскрибацию | xs:boolean | — | нет | Использовать транскрибацию звонков | — | +| 1058 | `сфпИспользуемаяАТС` | Используемая АТС | cfg:EnumRef.сфпДоступныеАТС | — | нет | — | — | +| 1059 | `сфпИспользуемаяАТСДополнительно` | Используемая АТС Дополнительно | xs:string | — | нет | Идентификатор АТС при универсальном подключении Itoolabs | — | +| 1060 | `сфпИспользуемаяВерсияСофтФон` | Используемая версия СофтФон | cfg:EnumRef.сфпВерсииСофтФон | — | нет | — | — | +| 1061 | `сфпКодГорода` | Код города (812) | xs:string | — | нет | Код города по умолчанию в настройках СофтФон | — | +| 1062 | `сфпКодСтраны` | Код страны (+7) | xs:string | — | нет | Код страны по умолчанию в настройках СофтФон | — | +| 1063 | `сфпКоличествоВзаимодействийДляМаршрутизации` | Количество входящих звонков клиента для маршрутизации | xs:decimal | — | нет | Количество взаимодействий с клиентом для автоматического перевода звонка | — | +| 1064 | `сфпЛогинCoMagic` | Логин CoMagic | xs:string | — | нет | — | — | +| 1065 | `сфпЛогинТранскрибация` | Логин транскрибация | xs:string | — | нет | — | — | +| 1066 | `сфпМаксимальнаяДлинаВнутреннихНомеров` | Максимальная длина внутренних номеров | xs:decimal | — | нет | Максимальная длина внутренних номеров в настройках СофтФон | — | +| 1067 | `сфпМинимальнаяДлинаВнутреннихНомеров` | Минимальная длина внутренних номеров | xs:decimal | — | нет | Минимальная длина внутренних номеров в настройках СофтФон | — | +| 1068 | `сфпНастройкиТелефонии` | Настройки телефонии | v8:ValueStorage | — | нет | — | — | +| 1069 | `сфпНастройкиТелефонии_ИсточникЛидов` | Источник лидов (Телефония) | xs:boolean | — | нет | АПК:1032 АПК:265 не проверять на орфографию синоним и имя | — | +| 1070 | `сфпНастройкиТелефонии_ПравилаОбработки` | Правила обработки | v8:ValueStorage | — | нет | — | — | +| 1071 | `сфпНастройкиТелефонии_ПрименитьПравилаОбработки` | Применить правила обработки (Телефония) | xs:boolean | — | нет | — | — | +| 1072 | `сфпНастройкиТелефонии_СценарииОбработки` | Правила обработки | v8:ValueStorage | — | нет | — | — | +| 1073 | `сфпНеЗагружатьЗвонкиДлительностьюМенее` | Не загружать звонки длительностью менее | xs:decimal | — | нет | Не загружать звонки длительностью менее (сек) | — | +| 1074 | `сфпОбщиеНастройкиТелефонии` | Общие настройки телефонии | xs:string | — | нет | — | — | +| 1075 | `сфпОграничениеНаПросмотрТелефонныхЗвонков` | Использовать ограничение на просмотр телефонных звонков других пользователей | xs:boolean | — | нет | При включенной настройке текущий пользователь может просматривать телефонные звонки других пользователей в соответствии с механизмом "Прослушиваемые пользователи" | — | +| 1076 | `сфпОграничитьТранскрибациюТелефонныхЗвонков` | Ограничить транскрибацию | xs:boolean | — | нет | Использовать транскрибацию звонков могут только определенные пользователи | — | +| 1077 | `сфпОператорКоллтрекинга` | Оператор коллтрекинга | cfg:EnumRef.CRM_CallTrakingСценарии | — | нет | АПК:1032 АПК:265 не проверять на орфографию синоним и имя | — | +| 1078 | `сфпОповещатьОПропущенныхЗвонках` | Оповещать о пропущенных звонках | xs:boolean | — | нет | Создавать напоминания о пропущенных звонках при загрузке истории звонков | — | +| 1079 | `сфпПарольCoMagic` | Пароль CoMagic | xs:string | — | нет | — | — | +| 1080 | `сфпПарольТранскрибация` | Пароль транскрибация | xs:string | — | нет | — | — | +| 1081 | `сфпПланНумерацииАвтоопределениеБизнесРегиона` | Определять Бизнес-регион автоматически | xs:boolean | — | нет | Определять Бизнес-регион автоматически | — | +| 1082 | `сфпПланНумерацииАдресДетализацииНомера` | Интернет адрес детализации номера | xs:string | — | нет | АПК:1033 АПК:87 АПК:1033 Интернет адрес детализации номера на сайте ФАС (Россвязь) | — | +| 1083 | `сфпПланНумерацииАдресРеестра` | Сетевой или интернет адрес реестра нумерации | xs:string | — | нет | Сетевой или интернет адрес реестра Российской системы и плана нумерации | — | +| 1084 | `сфпПланНумерацииФайлыРеестра` | Файлы реестра нумерации | xs:string | — | нет | Файлы реестра Российской системы и плана нумерации | — | +| 1085 | `сфпПользовательДляОповещений` | Пользователь для оповещений | cfg:CatalogRef.Пользователи | — | нет | Пользователь для оповещений о пропущенных звонках | — | +| 1086 | `сфпПорт` | Порт сервера СофтФон (13528) | xs:string | — | нет | Порт сервера СофтФон | — | +| 1087 | `сфпПоследниеЦифрыТелефонногоНомера` | Последние цифры телефонного номера | xs:decimal | — | нет | Количество цифр телефонного номера для идентификации абонента | — | +| 1088 | `сфпПрефиксВыходаВГород` | Префикс выхода в город (9) | xs:string | — | нет | Префикс выхода в город в настройках СофтФон | — | +| 1089 | `сфпПрефиксВыходаВМежгород` | Префикс выхода в межгород (8) | xs:string | — | нет | Префикс выхода в межгород в настройках СофтФон | — | +| 1090 | `сфпПрефиксВыходаНаМеждународную` | Префикс выхода на международную линию (10) | xs:string | — | нет | Префикс выхода на международную линию в настройках СофтФон | — | +| 1091 | `сфпСрокЖизниСообщенияЖурналаЗвонков` | Срок жизни сообщения журнала звонков | xs:decimal | — | нет | — | — | +| 1092 | `сфпСтрокаПодключенияИстории` | Строка подключения к истории звонков | xs:string | — | нет | Строка подключения к БД истории звонков | — | +| 1093 | `сфпТипПостобработки` | Тип постобработки | cfg:EnumRef.сфпТипыПостобработкиРаспознаванияРечи | — | нет | Тип постобработки транскрибации | — | + +### Т + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 1094 | `ТипПодписиКриптографииПоУмолчанию` | Тип подписи криптографии по умолчанию | cfg:EnumRef.ТипыПодписиКриптографии | — | нет | — | — | +| 1095 | `ТипПодписиМЧД` | Тип подписи МЧД | cfg:EnumRef.ТипыПодписиКриптографии | — | нет | — | — | +| 1096 | `ТипПодписиЭД` | Тип подписи ЭД | cfg:EnumRef.ТипыПодписиКриптографии | — | нет | — | — | +| 1097 | `ТипыИнцидентовЦККАктуальны` | Типы инцидентов ЦКК актуальны | xs:boolean | — | нет | — | — | +| 1098 | `ТолькоКомиссионныеПродажи25` | Только комиссионные продажи 2.5 | xs:boolean | ТолькоКомиссионныеПродажи25 | да: Продажи | — | — | + +### У + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 1099 | `УдалитьCRM_СостояниеЛидаСозданоПоЗвонку` | Состояние заявки, созданной по звонку | cfg:CatalogRef.CRM_СостоянияЛидов | — | нет | — | — | +| 1100 | `УдалитьБлокировкаВыполненияЗаданийНеоперативнойОчереди` | (не используется) Блокировка выполнения заданий неоперативной очереди | xs:boolean | — | нет | — | — | +| 1101 | `УдалитьВестиУчетТабачнойПродукцииМОТП` | (не используется) Вести учет табачной продукции МОТП | xs:boolean | УдалитьВестиУчетТабачнойПродукцииМОТП | нет | — | — | +| 1102 | `УдалитьДатаОбязательнойМаркировкиОбувиИСМП` | (не используется) Дата ввода обязательной маркировки обуви ИС МП | xs:dateTime | — | нет | — | — | +| 1103 | `УдалитьДатаОбязательнойМаркировкиТабачнойПродукцииМОТП` | (не используется) Дата ввода обязательной маркировки табачной продукции | xs:dateTime | — | нет | — | — | +| 1104 | `УдалитьЗачетОплатПоДатеПлатежа` | Удалить зачет оплат по дате платежа | xs:decimal | — | нет | — | — | +| 1105 | `УдалитьИспользоватьНесколькоОрганизацийБЭД` | (не используется) Использовать несколько организаций БЭД | xs:boolean | — | нет | Устарела | — | +| 1106 | `УдалитьКонтролироватьСтатусыКодовМаркировкиВРозницеИСМП` | Контролировать статусы кодов маркировки в ИС МП при розничных продажах | xs:boolean | УдалитьКонтролироватьСтатусыКодовМаркировкиВРозницеИСМП | нет | — | — | +| 1107 | `УдалитьКонтролироватьСтатусыКодовМаркировкиВРозницеМОТП` | (не используется) Контролировать статусы кодов маркировки при розничных продажах | xs:boolean | УдалитьКонтролироватьСтатусыКодовМаркировкиВРозницеМОТП | нет | — | — | +| 1108 | `УдалитьКонтролироватьСтатусыКодовМаркировкиМОТП` | (не используется) Контролировать статусы кодов маркировки МОТП | xs:boolean | УдалитьКонтролироватьСтатусыКодовМаркировкиМОТП | нет | — | — | +| 1109 | `УдалитьЛогинДоступаКСервисуMorpher` | (Не используется) удалить логин доступа к сервису morpher | xs:string | — | нет | — | — | +| 1110 | `УдалитьНастройкиВходаПользователей` | (не используется) Настройки входа пользователей | v8:ValueStorage | — | нет | — | — | +| 1111 | `УдалитьПечататьОтдельныйСлипЧекЕГАИС` | Печатать отдельный слип-чек ЕГАИС (удалить) | xs:boolean | УдалитьПечататьОтдельныйСлипЧекЕГАИС | нет | — | — | +| 1112 | `УдалитьРаспоряженияНаОтгрузкуКВыполнениюНеЗаполнен` | (не используется) распоряжения на отгрузку к выполнению не заполнен | xs:boolean | — | нет | — | — | +| 1113 | `УдалитьРаспределятьФактическиеРасчетыФоновымЗаданием` | (не используется) Распределять фактические расчеты фоновым заданием | xs:boolean | — | нет | — | — | +| 1114 | `УдалитьТипыЗаписейВзаиморасчетовЗаполнены` | Удалить типы записей взаиморасчетов заполнены | xs:boolean | — | нет | Используется для распределения и получения данных расчетов по текущим правилам, пока не выполнены обработчики обновления | — | +| 1115 | `УдалятьКвитанцииУТМДляАСИиУ` | Удалять квитанции УТМ для АСИиУ | xs:decimal | — | нет | — | — | +| 1116 | `УправлениеПредприятием` | Управление предприятием | xs:boolean | УправлениеПредприятием | да: Казначейство, Предприятие, ФинансовыйРезультатИКонтроллинг | — | — | +| 1117 | `УправлениеТорговлей` | Управление торговлей | xs:boolean | УправлениеТорговлей | нет | — | — | +| 1118 | `УсовершенствоватьПодписиАвтоматически` | Усовершенствовать подписи автоматически | xs:decimal | — | нет | — | — | +| 1119 | `УсовершенствоватьПодписиСДаты` | Усовершенствовать подписи с даты | xs:dateTime | — | нет | Если подпись создана позже указанной даты, она будет попадать в отчеты и обрабатываться регламентным заданием | — | +| 1120 | `УстанавливатьПриоритетОбработкиДанныхВУказанномИнтервалеВремени` | Устанавливать приоритет обработки данных в указанном интервале времени | xs:boolean | — | нет | — | — | +| 1121 | `УстановленаМонопольнаяБлокировка` | Установлена монопольная блокировка | xs:boolean | УстановленаМонопольнаяБлокировка | нет | — | — | +| 1122 | `УчетнаяЗаписьДляВосстановленияПароля` | Почта для восстановления пароля | v8:ValueStorage | — | нет | — | — | +| 1123 | `УчетТМЦВЭксплуатацииWE` | Учет ТМЦ в эксплуатации WE (служебная) | xs:boolean | УчетТМЦВЭксплуатацииWE | нет | — | — | +| 1124 | `УчетТМЦВЭксплуатацииУПКА` | Учет ТМЦ в эксплуатации УП и КА (служебная) | xs:boolean | УчетТМЦВЭксплуатацииУПКА | нет | — | — | +| 1125 | `УчитыватьПравилаВнутреннегоТовародвиженияПриABCКлассификацииНоменклатуры` | Учитывать правила внутреннего товародвижения при ABC-классификации номенклатуры | xs:boolean | — | нет | — | — | +| 1126 | `УчитыватьПравилаВнутреннегоТовародвиженияПриXYZКлассификацииНоменклатуры` | Учитывать правила внутреннего товародвижения при XYZ-классификации номенклатуры | xs:boolean | — | нет | — | — | +| 1127 | `УчитыватьСебестоимостьТоваровПоНазначениям` | Обособленный учет себестоимости по назначениям | xs:boolean | УчитыватьСебестоимостьТоваровПоНазначениям | да: ФинансовыйРезультатИКонтроллинг | — | — | + +### Ф + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 1128 | `ФайлВнешнихКомпонент` | Файл внешних компонент | xs:string | — | да: НастройкиРМКИОборудования | — | — | +| 1129 | `ФайлКлассификаторов` | Файл классификаторов | xs:string | — | нет | — | — | +| 1130 | `ФайлРегламентированныхОтчетов` | Файл регламентированных отчетов | xs:string | — | нет | — | — | +| 1131 | `ФиксироватьПервичныйИнтерес` | Фиксировать первичный интерес | xs:boolean | CRM_ФиксироватьПервичныйИнтерес; ФиксироватьПервичныйИнтерес | да: CRMИМаркетинг | — | — | +| 1132 | `ФиксироватьПретензии` | Фиксировать претензии | xs:boolean | ФиксироватьПретензии | да: CRMИМаркетинг | — | — | +| 1133 | `ФормироватьВидыЗапасовПоГруппамФинансовогоУчета` | Формировать виды запасов по группам финансового учета | xs:boolean | ФормироватьВидыЗапасовПоГруппамФинансовогоУчета | нет | — | — | +| 1134 | `ФормироватьВидыЗапасовПоПодразделениямМенеджерам` | Формировать виды запасов по подразделениям или менеджерам | xs:boolean | ФормироватьВидыЗапасовПоПодразделениямМенеджерам | да: ФинансовыйРезультатИКонтроллинг | — | — | +| 1135 | `ФормироватьВидыЗапасовПоПоставщикам` | Формировать виды запасов по поставщикам | xs:boolean | ФормироватьВидыЗапасовПоПоставщикам | нет | — | — | +| 1136 | `ФормироватьВидыЗапасовПоСделкам` | Формировать виды запасов по сделкам | xs:boolean | ФормироватьВидыЗапасовПоСделкам | да: ФинансовыйРезультатИКонтроллинг | — | — | +| 1137 | `ФормироватьОтчетностьПоНДС` | Формировать отчетность по НДС | xs:boolean | ФормироватьОтчетностьПоНДС | да: УчетНДСИмпортЭкспортРФ | — | — | +| 1138 | `ФормироватьУправленческийБаланс` | Использовать управленческий баланс | xs:boolean | ФормироватьУправленческийБаланс | да: ФинансовыйРезультатИКонтроллинг | — | — | +| 1139 | `ФормироватьФинансовыйРезультат` | Формировать финансовый результат | xs:boolean | ФормироватьФинансовыйРезультат | да: СкладИДоставка, ФинансовыйРезультатИКонтроллинг | — | — | + +### Х + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 1140 | `ХешРасхожденийСервисаСверкиРасчетов` | Хеш расхождений сервиса сверки расчетов | xs:string | — | нет | — | — | +| 1141 | `ХранитьИсториюРассылкиОтчетов` | Хранить историю рассылки отчетов | xs:boolean | ХранитьИсториюРассылкиОтчетов | нет | — | — | +| 1142 | `ХранитьУспешныеОперацииРазрешения` | Хранить успешные операции разрешения продажи | xs:boolean | — | да: НастройкиРМКИОборудования | — | — | +| 1143 | `ХранитьФайлыВТомахНаДиске` | Хранить файлы в томах на диске | xs:boolean | ХранитьФайлыВТомахНаДиске | нет | — | — | + +### Ч + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 1144 | `ЧасовойПоясОбластиДанных` | Часовой пояс области данных | xs:string | — | нет | — | — | + +### Ш + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 1145 | `ШаблонЭтикеткиДляДоставки` | Шаблон этикетки для доставки | cfg:CatalogRef.ШаблоныЭтикетокИЦенников | — | да: СкладИДоставка | — | — | +| 1146 | `ШаблонЭтикеткиУпаковочногоЛиста` | Шаблон этикетки упаковочного листа | cfg:CatalogRef.ШаблоныЭтикетокИЦенников | — | да: СкладИДоставка | — | — | + +### Э + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 1147 | `ЭтоАвтономноеРабочееМесто` | Это автономное рабочее место | xs:boolean | ИспользоватьАвтономнуюРаботуВЛокальномРежиме; РаботаВАвтономномРежиме; ТехнологияСервисаВАвтономномРежиме | нет | — | — | + +## crm3-26-test.rhana (расширение РАНА CRM3-26) + +**Каталог:** `crm3-26-test.rhana\src\Constants` +**Количество констант:** 1 +**Индекс ФО:** `crm3-26-test.rhana\src\FunctionalOptions` +**Индекс панели УТ:** `crm3-26-test\src\DataProcessors\ПанельАдминистрированияУТ` + +### Р + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 1 | `РК_РежимОтладкиРана` | Режим отладки рана | xs:boolean | РК_ФункциональнаяОпцияРежимаОтладки | нет | — | — | + +**Примечание по расширению:** у констант с `ObjectBelonging = Adopted` синоним в XML может отсутствовать — в таблице тогда «—»; смысл задаётся типовой конфигурацией и расширением. + +--- + +*Сгенерировано скриптом `scripts/list_constants_crm3_dev.py`* \ No newline at end of file diff --git a/docs__Перечень_констант_crm3-dev.md b/docs__Перечень_констант_crm3-dev.md new file mode 100644 index 0000000..00bf178 --- /dev/null +++ b/docs__Перечень_констант_crm3-dev.md @@ -0,0 +1,1159 @@ +# Перечень констант: историческая система crm3-dev + расширение crm3-dev.rhana + +**Дата формирования:** 2026-05-13 +**Источник:** метаданные выгрузки EDT (`Configuration.xml` не используется; каждая константа — отдельный XML в `src/Constants/`). + +**Важно:** здесь только **описание из метаданных** (имя, синоним, тип, комментарий и т.п.). **Текущие значения** констант хранятся в **данных информационной базы** и в этот перечень не входят. + +**Функциональные опции:** для каждой константы перечислены объекты метаданных `FunctionalOption`, у которых в свойстве **Размещение** указано `Constant.<имя>`. Если опции нет — «—». + +**Панель администрирования УТ:** поиск в формах обработки `Обработка.ПанельАдминистрированияУТ` (файлы `Forms/*/Ext/Form.xml` и `Forms/*/Ext/Form/Module.bsl` **основной** конфигурации) вхождений `НаборКонстант.<имя>`. Если вхождений нет — «нет». + +Расширения `crm3-dev.docs` и `crm3-dev.upd5b` в выгрузке **не содержат** собственной папки `Constants/` — их константы (если появятся) нужно добавить в скрипт при появлении выгрузки. + +--- + +## crm3-dev (основная конфигурация) + +**Каталог:** `crm3-dev\src\Constants` +**Количество констант:** 967 +**Индекс ФО:** `crm3-dev\src\FunctionalOptions` +**Индекс панели УТ:** `crm3-dev\src\DataProcessors\ПанельАдминистрированияУТ` + +### C + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 1 | `CRM_iCRMИспользоватьОграниченияВыгрузки` | Использовать ограничения для первой выгрузки | xs:boolean | — | нет | — | — | +| 2 | `CRM_iCRMРегистрироватьДокументыСозданныеВТечение` | Регистрировать документы созданные в течение (мес) | xs:decimal | — | нет | — | — | +| 3 | `CRM_iCRMРегистрироватьКлиентовИспользованныхВТечение` | Регистрировать клиентов используемых в течение (мес) | xs:decimal | — | нет | — | — | +| 4 | `CRM_iCRMРегистрироватьКлиентовСозданныхВТечение` | Регистрировать клиентов созданных в течение (мес) | xs:decimal | — | нет | — | — | +| 5 | `CRM_iCRMРегистрироватьНоменклатуруИспользованнуюВТечение` | Регистрировать номенклатуру используемую в течение (мес) | xs:decimal | — | нет | — | — | +| 6 | `CRM_iCRMРегистрироватьНоменклатуруСИзмененнымиЦенамиВТечение` | Регистрировать номенклатуру, у которой менялись цены в течение (мес) | xs:decimal | — | нет | — | — | +| 7 | `CRM_АвтоматическиУтверждатьЕдинственныйВариантКоммерческогоПредложения` | Автоматически утверждать единственный вариант коммерческого предложения | xs:boolean | — | нет | При проведение коммерческого предложения будет утвержден единственный вариант | — | +| 8 | `CRM_АдресWebДоступа` | Адрес web-доступа | xs:string | — | нет | — | — | +| 9 | `CRM_АдресПубликацииiCRM` | Адрес публикации iCRM | xs:string | — | нет | — | — | +| 10 | `CRM_АдресСервисаОбратнойСвязи` | Адрес HTTP-сервиса обратной связи | xs:string | — | нет | — | — | +| 11 | `CRM_ВерсияНачалаРаботыСПрограммой` | Версия начала работы с программой | xs:string | — | нет | — | — | +| 12 | `CRM_ВестиИсториюРеквизитовКлиентов` | Вести историю реквизитов клиентов | xs:boolean | CRM_ВестиИсториюРеквизитовКлиентов | нет | — | — | +| 13 | `CRM_ВидВзаимодействияПоУмолчанию` | Вид взаимодействия по умолчанию | cfg:CatalogRef.CRM_ВидыВзаимодействий | — | нет | — | — | +| 14 | `CRM_ВыполнятьПоискДублейПриЗаписиКонтакта` | Выполнять поиск дублей при записи контакта | xs:boolean | — | нет | — | — | +| 15 | `CRM_ВыполнятьПоискДублейПриЗаписиПартнера` | Выполнять поиск дублей при записи клиента | xs:boolean | — | нет | — | — | +| 16 | `CRM_ГлубинаПересчетаПоказателей` | Глубина пересчета показателей (мес.) | xs:decimal | — | нет | — | — | +| 17 | `CRM_ДанныеРегистрации` | Данные регистрации (CRM) | v8:ValueStorage | — | нет | — | — | +| 18 | `CRM_ДатаАктуальностиЦелевыхПоказателей` | Дата актуальности целевых показателей | xs:dateTime | — | нет | — | — | +| 19 | `CRM_ДатаНачалаРаботыСПрограммой` | Дата начала работы с программой | xs:dateTime | — | нет | — | — | +| 20 | `CRM_ДатаПоследнейУспешнойСинхронизации` | Дата последней успешной синхронизации (iCRM) | xs:dateTime | — | нет | — | — | +| 21 | `CRM_ДемонстрационныйРежим` | Демонстрационный режим (служебная) | xs:boolean | — | нет | — | — | +| 22 | `CRM_ДобавлятьРуководителямДоступПодчиненных` | Добавлять руководителям доступ подчиненных | xs:boolean | CRM_ДобавлятьРуководителямДоступПодчиненных | нет | — | — | +| 23 | `CRM_ЗаполнятьПервичныйИнтерес` | Заполнять актуальный источник привлечения | xs:boolean | — | нет | — | — | +| 24 | `CRM_ЗапретитьВводНовогоКлиентаПриНайденныхСовпадениях` | Запретить ввод нового клиента при найденных совпадениях | xs:boolean | — | нет | — | — | +| 25 | `CRM_ЗапретитьВводНовогоКонтактаПриНайденныхСовпадениях` | Запретить ввод нового контакта при найденных совпадениях | xs:boolean | — | нет | — | — | +| 26 | `CRM_ЗапрещатьРедактироватьСостоявшиесяСобытия` | Запрещать редактировать состоявшиеся события | xs:boolean | — | нет | — | — | +| 27 | `CRM_ИдентификацияПриложенияGoogle` | Идентификация клиента Google | xs:string | — | нет | — | — | +| 28 | `CRM_ИспользоватьБазуЗнаний` | Использовать базу знаний | xs:boolean | CRM_ИспользоватьБазуЗнаний | нет | — | — | +| 29 | `CRM_ИспользоватьБизнесПроцессы` | Использовать бизнес-процессы (CRM) | xs:boolean | CRM_ИспользоватьБизнесПроцессы | нет | — | — | +| 30 | `CRM_ИспользоватьВерсионированиеФайлов` | Использовать версионирование файлов | xs:boolean | CRM_ИспользоватьВерсионированиеФайлов | нет | — | — | +| 31 | `CRM_ИспользоватьВидыДеятельностиУПартнеров` | Указывать в карточке клиента более одной отрасли | xs:boolean | CRM_ИспользоватьВидыДеятельностиУПартнеров; rh_CRM_ИспользоватьВидыДеятельностиУПартнеров | нет | — | — | +| 32 | `CRM_ИспользоватьДолжностныеПозиции` | Использовать должностные позиции для доступа к подразделениям | xs:boolean | CRM_ИспользоватьДолжностныеПозиции | нет | — | — | +| 33 | `CRM_ИспользоватьДоступныхПользователей` | Использовать доступных пользователей | xs:boolean | — | нет | — | — | +| 34 | `CRM_ИспользоватьЗаявки` | Использовать заявки | xs:boolean | CRM_ИспользоватьЗаявки | нет | — | — | +| 35 | `CRM_ИспользоватьИнтеграцииСИнтернетМагазинами` | Использовать интеграции с интернет-магазинами | xs:boolean | CRM_ИспользоватьИнтеграцииСИнтернетМагазинами | нет | — | — | +| 36 | `CRM_ИспользоватьИнтеграциюQlikSense` | Использовать Qlik Sense | xs:boolean | — | нет | — | — | +| 37 | `CRM_ИспользоватьИнтеграциюСМессенджерами` | Использовать интеграцию с мессенджерами и социальными сетями | xs:boolean | CRM_ИспользоватьИнтеграциюСМессенджерами | нет | — | — | +| 38 | `CRM_ИспользоватьКарточкуКлиента` | Использовать карточку клиента | xs:boolean | — | нет | — | — | +| 39 | `CRM_ИспользоватьКатегорииВзаимодействий` | Использовать категории для взаимодействий | xs:boolean | — | нет | — | — | +| 40 | `CRM_ИспользоватьКлассификаторы` | Использовать классификаторы | xs:boolean | CRM_ИспользоватьКлассификаторы | нет | — | — | +| 41 | `CRM_ИспользоватьКомандуПанельСофтФон` | Использовать команду панель СофтФон | xs:boolean | CRM_ИспользоватьКомандуПанельСофтФон | нет | — | — | +| 42 | `CRM_ИспользоватьМаркетинговыеМероприятия` | Использовать маркетинговые мероприятия | xs:boolean | CRM_ИспользоватьМаркетинговыеМероприятия | нет | — | — | +| 43 | `CRM_ИспользоватьМоделиМашинногоОбучения` | Использовать модели машинного обучения | xs:boolean | CRM_ИспользоватьМоделиМашинногоОбучения | нет | — | — | +| 44 | `CRM_ИспользоватьМониторПоказателей` | Использовать монитор показателей | xs:boolean | CRM_ИспользоватьМониторПоказателей | нет | — | — | +| 45 | `CRM_ИспользоватьНапоминания` | Использовать напоминания (CRM) | xs:boolean | CRM_ИспользоватьНапоминанияПользователя | нет | — | — | +| 46 | `CRM_ИспользоватьОбменСMSExchange` | Использовать обмен с сервером MS Exchange | xs:boolean | CRM_ИспользоватьОбменСMSExchange | нет | — | — | +| 47 | `CRM_ИспользоватьОбменСOutlook` | Использовать обмен с MS Outlook | xs:boolean | CRM_ИспользоватьОбменСOutlook | нет | — | — | +| 48 | `CRM_ИспользоватьОповещенияСМС` | Использовать SMS оповещения | xs:boolean | CRM_ИспользоватьОповещенияСМС | нет | — | — | +| 49 | `CRM_ИспользоватьОповещенияЭлектроннаяПочта` | Использовать оповещения по электронной почте | xs:boolean | CRM_ИспользоватьОповещенияЭлектроннаяПочта | нет | — | — | +| 50 | `CRM_ИспользоватьПланированиеВстреч` | Использовать планирование встреч | xs:boolean | CRM_ИспользоватьПланированиеВстреч | нет | — | — | +| 51 | `CRM_ИспользоватьПоддержку` | Использовать поддержку | xs:boolean | CRM_ИспользоватьПоддержку | нет | — | — | +| 52 | `CRM_ИспользоватьПодсистемуУправленияПроектами` | Использовать подсистему управления проектами | xs:boolean | CRM_ИспользоватьПодсистемуУправленияПроектами | нет | — | — | +| 53 | `CRM_ИспользоватьПоказатели` | Использовать показатели | xs:boolean | CRM_ИспользоватьПоказатели | нет | — | — | +| 54 | `CRM_ИспользоватьРассылкиЭлектронныхПисем` | Использовать рассылки электронных писем | xs:boolean | CRM_ИспользоватьРассылкиЭлектронныхПисем | нет | — | — | +| 55 | `CRM_ИспользоватьРегламентноеЗаданиеОтправкиРассылокЭлектронныхПисем` | Выполнять рассылки эл. писем равномерно в пакетном режиме | xs:boolean | CRM_ИспользоватьРегламентноеЗаданиеОтправкиРассылокЭлектронныхПисем | нет | — | — | +| 56 | `CRM_ИспользоватьСервисРаспознаванияЛиц` | Использовать сервис распознавания лиц (CRM) | xs:boolean | CRM_ИспользоватьСервисРаспознаванияЛиц | нет | — | — | +| 57 | `CRM_ИспользоватьТеги` | Использовать теги | xs:boolean | CRM_ИспользоватьТеги | нет | Использовать теги | — | +| 58 | `CRM_ИспользоватьТегиДляВзаимодействий` | Использовать теги для взаимодействий | xs:boolean | — | нет | — | — | +| 59 | `CRM_ИспользоватьТелемаркетинг` | Использовать телемаркетинг | xs:boolean | CRM_ИспользоватьТелемаркетинг | нет | — | — | +| 60 | `CRM_ИспользоватьТиповойМеханизмСделокСКлиентами` | Использовать типовой механизм сделок с клиентами | xs:boolean | — | нет | — | — | +| 61 | `CRM_ИспользоватьТипыУслуг` | Использовать типы услуг | xs:boolean | CRM_ИспользоватьТипыУслуг | нет | — | — | +| 62 | `CRM_ИспользоватьУчетРабочегоВремени` | Использовать учет рабочего времени | xs:boolean | CRM_ИспользоватьУчетРабочегоВремени | нет | — | — | +| 63 | `CRM_ИспользуетсяОбменСiCRM` | Используется обмен с iCRM | xs:boolean | CRM_ИспользуетсяОбменСiCRM | нет | — | — | +| 64 | `CRM_КлючAPIКарт` | Ключ для доступа к API Яндекс.Карт | xs:string | — | нет | — | — | +| 65 | `CRM_КоличествоПисемЭлектроннойРассылкиВОтправляемомПакете` | Количество писем в пакете | xs:decimal | — | нет | — | — | +| 66 | `CRM_КонецОбеда` | Окончание обеденного перерыва | xs:dateTime | — | нет | Окончание обеденного перерыва | — | +| 67 | `CRM_КонецРабочегоДня` | Окончание рабочего дня | xs:dateTime | — | нет | Окончание рабочего дня | — | +| 68 | `CRM_ЛоготипРабочегоСтола` | Логотип рабочего стола | v8:ValueStorage | — | нет | — | — | +| 69 | `CRM_МаксимальныйПериодБезСинхронизацииiCRM` | Максимальный период без синхронизации (дней) | xs:decimal | — | нет | — | — | +| 70 | `CRM_НастройкаСоставаРеквизитовМастераРегистрации` | Настройка состава реквизитов мастера регистрации | v8:ValueStorage | — | нет | — | — | +| 71 | `CRM_НачалоОбеда` | Начало обеденного перерыва | xs:dateTime | — | нет | Начало обеденного перерыва | — | +| 72 | `CRM_НачалоРабочегоДня` | Начало рабочего дня | xs:dateTime | — | нет | Начало рабочего дня | — | +| 73 | `CRM_НеПервыйЗапускИБ` | Не первый запуск ИБ (CRM) | xs:boolean | — | нет | — | — | +| 74 | `CRM_НеСохранятьТекстыПисемРассылок` | Не сохранять тексты писем рассылок | xs:boolean | CRM_НеСохранятьТекстыПисемРассылок | нет | — | — | +| 75 | `CRM_НомерТелефонаОповещений` | Номер телефона для отправки оповещений по SMS | xs:string | — | нет | — | — | +| 76 | `CRM_ОбновлятьФото` | Обновлять фотографию при видео фиксации | xs:boolean | — | нет | — | — | +| 77 | `CRM_ОбязательноУказыватьПричинуПотериЗвонков` | Обязательно указывать причину потери звонков | xs:boolean | — | нет | — | — | +| 78 | `CRM_ОсновнойВариантПоставки` | Основной вариант поставки | cfg:EnumRef.CRM_ВариантыПоставки | — | нет | — | — | +| 79 | `CRM_ОсновнойВидEmailКлиента` | Основной вид e-mail клиента | cfg:CatalogRef.ВидыКонтактнойИнформации | — | нет | — | — | +| 80 | `CRM_ОсновнойВидEmailКонтакта` | Основной вид e-mail контакта | cfg:CatalogRef.ВидыКонтактнойИнформации | — | нет | — | — | +| 81 | `CRM_ОсновнойВидТелефонаКлиента` | Основной вид телефона клиента | cfg:CatalogRef.ВидыКонтактнойИнформации | — | нет | — | — | +| 82 | `CRM_ОсновнойВидТелефонаКонтакта` | Основной вид телефона контакта | cfg:CatalogRef.ВидыКонтактнойИнформации | — | нет | — | — | +| 83 | `CRM_ОтображатьВАРМИсходящиеПисьмаИЗвонки` | Отображать в АРМ исходящие письма и звонки | xs:boolean | — | нет | Отображать в АРМ исходящие письма и звонки | — | +| 84 | `CRM_ОтображатьВКарточкеКлиентаЧисленность` | Отображать в форме Клиента численность сотрудников и рабочих мест | xs:boolean | CRM_ОтображатьВКарточкеКлиентаЧисленность | нет | — | — | +| 85 | `CRM_ОчищатьВложенияЭлектронныхПисем` | Очищать вложения электронных писем | xs:boolean | CRM_ОчищатьВложенияЭлектронныхПисем | нет | — | — | +| 86 | `CRM_ОчищатьТолькоВложенияВходящихПисем` | Очищать только вложения входящих писем | xs:boolean | — | нет | — | — | +| 87 | `CRM_ПараметрыКонтроляЗаполненностиРеквизитовОбъектов` | Параметры контроля заполненности реквизитов объектов | v8:ValueStorage | — | нет | — | — | +| 88 | `CRM_ПарольПользователяСинхронизацииiCRM` | Пароль пользователя синхронизации iCRM | xs:string | — | нет | — | — | +| 89 | `CRM_ПериодВыводаНезавершенныхОповещений` | Период вывода незавершенных оповещений | cfg:EnumRef.Периодичность | — | нет | — | — | +| 90 | `CRM_ПериодОповещенияОПросроченныхСобытиях` | Период оповещения о просроченных событиях | cfg:EnumRef.Периодичность | — | нет | — | — | +| 91 | `CRM_ПериодОтключенияСинхронизацииiCRM` | Период отключения синхронизации с iCRM (мин.) | xs:decimal | — | нет | — | — | +| 92 | `CRM_ПериодОчисткиВложенийЭлектронныхПисем` | Период очистки вложений электронных писем | xs:decimal | — | нет | — | — | +| 93 | `CRM_ПериодПроверкиНовыхНапоминаний` | Период проверки новых напоминаний | xs:decimal | — | нет | — | — | +| 94 | `CRM_ПланироватьПродажи` | Планирование воронки продаж | xs:boolean | CRM_ПланироватьПродажи | нет | — | — | +| 95 | `CRM_ПлатныйТарифДоступен` | Платный тариф доступен | xs:boolean | CRM_ПлатныйТарифДоступен | нет | — | — | +| 96 | `CRM_ПользовательСинхронизацииiCRM` | Пользователь синхронизации iCRM | xs:string | — | нет | — | — | +| 97 | `CRM_ПривязыватьПотенциалКлиентаКНоменклатурнымГруппам` | Привязывать потенциал клиента к номенклатурным группам | xs:boolean | CRM_ПривязыватьПотенциалКлиентаКНоменклатурнымГруппам | нет | — | — | +| 98 | `CRM_ПриПроведениеКоммерческогоПредложенияПредлагатьУтверждениеВарианта` | При проведение коммерческого предложения предлагать утверждение варианта | xs:boolean | — | нет | При включенной настройке, будет задан вопрос об утверждение его варианта (если нет утвержденных вариантов) | — | +| 99 | `CRM_ПутьКВнешнейОбработкеЗащиты` | Путь к внешней обработке защиты CRM | xs:string | — | нет | Служебная константа | — | +| 100 | `CRM_ПутьКВнешнейОбработкеЗащитыМоб` | Путь к внешней обработке защиты (мобильный клиент) | xs:string | — | нет | Служебная константа | — | +| 101 | `CRM_РазрешатьСозданиеИнтересовПоОдномуТипуУслуги` | Разрешать создание интересов по одному типу услуги | xs:boolean | — | нет | — | — | +| 102 | `CRM_РассчитыватьПотенциалКлиентов` | Рассчитывать потенциал клиентов | xs:boolean | CRM_РассчитыватьПотенциалКлиентов | нет | — | — | +| 103 | `CRM_РегистрироватьВИнтересахВзаимосвязиКлиентов` | Указывать в интересе клиента связанных партнеров | xs:boolean | CRM_РегистрироватьВИнтересахВзаимосвязиКлиентов | нет | — | — | +| 104 | `CRM_РегистрироватьДополнительнуюИнформацию` | Регистрировать дополнительную информацию | xs:boolean | CRM_РегистрироватьДополнительнуюИнформацию | нет | Включает возможность ведения дополнительной информации в справочниках Клиенты, Контакты, Пользователи | — | +| 105 | `CRM_РеквизитыПоискаДублейПартнеров` | Реквизиты поиска дублей клиентам | v8:ValueStorage | — | нет | — | — | +| 106 | `CRM_РеквизитыРасчетаПотенциалаКлиента` | Реквизиты расчета потенциала клиента | v8:ValueStorage | — | нет | — | — | +| 107 | `CRM_СвязыватьРанееПолученныеEmailиЗвонкиСКлиентами` | Связывать ранее полученные email и телефонные звонки с клиентами и их контактами | xs:boolean | CRM_СвязыватьРанееПолученныеEmailиЗвонкиСКлиентами | нет | — | — | +| 108 | `CRM_СервисРассылокОповещенийПоУмолчанию` | Сервис рассылок оповещений по умолчанию | cfg:CatalogRef.CRM_СервисыРассылок | — | нет | — | — | +| 109 | `CRM_СервисРассылокПоУмолчанию` | Сервис рассылок по умолчанию | cfg:CatalogRef.CRM_СервисыРассылок | — | нет | — | — | +| 110 | `CRM_СинхронизироватьКалендарьСКалендаремGoogle` | Использовать синхронизацию с календарями Google | xs:boolean | CRM_СинхронизироватьКалендарьСКалендаремGoogle | нет | — | — | +| 111 | `CRM_СквознаяАналитика` | Использовать Сквозную аналитику | xs:boolean | CRM_ИспользоватьСквознуюАналитику | нет | — | — | +| 112 | `CRM_СквознаяАналитикаАдресПубликацииСервисов` | Адрес публикации сервисов сквозной аналитики | xs:string | — | нет | — | — | +| 113 | `CRM_СостояниеЛидаСозданоПоЗвонку` | Состояние заявки, созданной по звонку | cfg:CatalogRef.CRM_СостоянияЛидов | — | нет | — | — | +| 114 | `CRM_УказыватьВКарточкеКонтактногоЛицаБолееОднойРоли` | Указывать в карточке контактного лица более одной роли | xs:boolean | CRM_УказыватьВКарточкеКонтактногоЛицаБолееОднойРоли | нет | — | — | +| 115 | `CRM_УчетнаяЗаписьОповещений` | Учетная запись для отправки оповещений по электронной почте | cfg:CatalogRef.УчетныеЗаписиЭлектроннойПочты | — | нет | — | — | +| 116 | `CRM_УчетнаяЗаписьПолученияОповещенийGAPI` | Учетная запись получения оповещений GAPI | cfg:CatalogRef.УчетныеЗаписиЭлектроннойПочты | — | нет | — | — | +| 117 | `CRM_ХранилищеПравилОбменаСiCRM` | Хранилище правил обмена с приложением iCRM | v8:ValueStorage | — | нет | — | — | +| 118 | `CRM_ЦветСобытияВКалендареПоУмолчанию` | Цвет события в календаре по умолчанию | xs:decimal | — | нет | — | — | +| 119 | `CRM_ЧислоГруппУровнейДоступа` | Число групп уровней доступа (CRM) | xs:decimal | — | нет | — | — | + +### M + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 120 | `mmИспользоватьМобильныйМонитор` | ММ: Использовать мобильный монитор показателей | xs:boolean | — | нет | Использовать мобильный монитор показателей | — | + +### R + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 121 | `rh_ВнутреннийАдресМенеджераСервиса` | Rh внутренний адрес менеджера сервиса | xs:string | — | нет | — | — | +| 122 | `rh_КонечнаяТочкаМенеджераСервиса` | Rh конечная точка менеджера сервиса | cfg:ExchangePlanRef.ОбменСообщениями | — | нет | — | — | +| 123 | `rh_МеханизмСогласованияКарточекКлиентов` | Механизм согласования карточек клиентов | xs:boolean | rh_МеханизмСогласованияКарточекКлиентов | нет | — | — | +| 124 | `rh_СкладСебестоимости` | Склад себестоимости по-умолчанию | cfg:CatalogRef.Склады | — | нет | — | — | + +### S + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 125 | `SMS4B_ДатаПолученияСообщений` | Дата получения SMS | xs:dateTime | — | нет | Дата получения последнего sms-сообщения с сервера SMS4B | — | +| 126 | `SMS4B_ИспользоватьПериодЗапретаОтправки` | Не отправлять SMS | xs:boolean | — | нет | Не отправлять SMS | — | +| 127 | `SMS4B_ИспользоватьПолучениеСообщений` | Включить получение сообщений | xs:boolean | — | нет | — | — | +| 128 | `SMS4B_МиллисекундаПолученияСообщений` | Миллисекунда получения сообщений | xs:decimal | — | нет | Миллисекунда даты получения сообщений | — | +| 129 | `SMS4B_НастройкиСервиса` | Настройки сервиса SMS4B | v8:ValueStorage | — | нет | — | — | +| 130 | `SMS4B_ПолучатьТолькоПолныеСообщения` | Получать только полные сообщения | xs:boolean | — | нет | Получать только полные сообщения | — | +| 131 | `SMS4B_ПроксиПароль` | Пароль прокси-сервера | xs:string | — | нет | Пароль прокси-сервера | — | +| 132 | `SMS4B_ПроксиПользователь` | Пользователь прокси-сервера | xs:string | — | нет | Пользователь прокси-сервера | — | +| 133 | `SMS4B_ПроксиПорт` | Порт прокси-сервера | xs:string | — | нет | Порт прокси-сервера | — | +| 134 | `SMS4B_ПроксиСервер` | Прокси-сервер | xs:string | — | нет | Прокси-сервер | — | + +### T + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 135 | `tega_ОсновнаяНастройкаВыгрузки` | Tega основная настройка выгрузки | cfg:CatalogRef.tega_НастройкиВыгрузки | — | нет | — | — | +| 136 | `tega_ОсновнаяНастройкаВыгрузкиЦен` | Tega основная настройка выгрузки цен | cfg:CatalogRef.tega_НастройкиВыгрузки | — | нет | — | — | + +### А + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 137 | `АвтоматическиНастраиватьРазрешенияВПрофиляхБезопасности` | Автоматически настраивать разрешения в профилях безопасности | xs:boolean | — | нет | — | — | +| 138 | `АвтоматическиСоздаватьПартнеровПриОтправкеЭлектронногоЧекаПокупателю` | Автоматически создавать партнеров при отправке электронного чека покупателю | xs:boolean | АвтоматическиСоздаватьПартнеровПриОтправкеЭлектронногоЧекаПокупателю | да: Продажи, ФЗ54 | — | — | +| 139 | `АвтоПостановкаКлиентовНаМониторингСПАРК` | Автоматическая постановка клиентов на мониторинг 1СПАРК | xs:boolean | — | да: Продажи | Автоматическая постановка клиентов, имеющих действующие договоры, на мониторинг 1СПАРК | — | +| 140 | `АвтоПостановкаКлиентовНаМониторингСПАРКНастройка` | Автоматическая постановка клиентов на мониторинг 1СПАРК настройка | v8:ValueStorage | — | нет | — | — | +| 141 | `АвтоПостановкаПоставщиковНаМониторингСПАРК` | Автоматическая постановка поставщиков на мониторинг 1СПАРК | xs:boolean | — | да: Закупки | Автоматическая постановка поставщиков, имеющих действующие договоры, на мониторинг 1СПАРК | — | +| 142 | `АвтоПостановкаПоставщиковНаМониторингСПАРКНастройка` | Автоматическая постановка поставщиков на мониторинг 1СПАРК настройка | v8:ValueStorage | — | нет | — | — | +| 143 | `АдресатыПолученияОтчетаПоЖурналуРегистрации` | Адресаты получения отчета по журналу регистрации | xs:string | — | нет | — | — | +| 144 | `АдресВебСервиса1СДокументооборот` | Адрес веб сервиса 1C:Документооборот | xs:string | — | нет | — | — | +| 145 | `АдресДляВосстановленияПароляУчетнойЗаписи` | Адрес для восстановления пароля учетной записи | xs:string | — | нет | — | — | +| 146 | `АдресДляУведомленийЭДО` | Адрес для уведомлений ЭДО | xs:string | — | нет | — | — | +| 147 | `АдресКриптосервиса` | Адрес криптосервиса | xs:string | — | нет | — | — | +| 148 | `АдресПрограммногоИнтерфейсаСлужбыПоддержки` | Адрес программного интерфейса службы поддержки | xs:string | — | нет | — | — | +| 149 | `АдресПубликацииИнформационнойБазыВИнтернете` | Адрес публикации информационной базы в интернете | xs:string | — | да: CRMИМаркетинг | — | — | +| 150 | `АдресПубликацииИнформационнойБазыВЛокальнойСети` | Адрес публикации информационной базы в локальной сети | xs:string | — | да: БюджетированиеИПланирование | — | — | +| 151 | `АдресСервисаНовостей` | Адрес сервиса новостей | xs:string | — | нет | — | — | +| 152 | `АдресСервисаПодключенияЭлектроннойПодписиВМоделиСервиса` | Адрес сервиса подключения электронной подписи в модели сервиса | xs:string | — | нет | — | — | +| 153 | `АдресСервисаЦентраИдей` | Адрес сервиса центра идей | xs:string | — | нет | — | — | +| 154 | `АдресУправленияКонференцией` | Адрес управления конференцией | xs:string | — | нет | — | — | +| 155 | `АдресЦКК` | Адрес ЦКК | xs:string | — | нет | — | — | +| 156 | `АКАМ_ИспользоватьМодульТоргов` | Использовать АКАМ:Модуль торгов | xs:boolean | — | нет | — | — | +| 157 | `АктуализироватьВзаиморасчетыПриПроведенииДокументов` | Актуализировать взаиморасчеты при проведении документов | xs:boolean | — | да: Казначейство | — | — | +| 158 | `АктуализироватьВзаиморасчетыПриФормированииОтчетов` | Актуализировать взаиморасчеты при формировании отчетов | xs:boolean | — | да: Казначейство | — | — | +| 159 | `АктуализироватьДанныеПриФормированииОтчетов` | Актуализировать данные при формировании отчетов | xs:boolean | — | да: ФинансовыйРезультатИКонтроллинг | — | — | +| 160 | `АлгоритмПодписи` | Алгоритм подписи | xs:string | — | нет | — | — | +| 161 | `АлгоритмХеширования` | Алгоритм хеширования | xs:string | — | нет | — | — | +| 162 | `АлгоритмШифрования` | Алгоритм шифрования | xs:string | — | нет | — | — | + +### Б + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 163 | `БазоваяВерсия` | Базовая версия | xs:boolean | БазоваяВерсия | да: Интерфейс | — | — | +| 164 | `БлокировкаОтправкиБыстрыхСообщений` | Блокировка отправки быстрых сообщений | xs:dateTime | — | нет | — | — | +| 165 | `бфWSDLСсылка` | WSDL-ссылка для доступа к сервису 1С-Бухфон (служебная) | xs:string | — | нет | — | — | +| 166 | `бфИдентификаторПартнера` | Идентификатор партнера БухФон | xs:string | — | нет | — | — | +| 167 | `бфИспользоватьБухФон` | Использовать 1С-Бухфон | xs:boolean | бфИспользоватьБухФон | нет | — | — | +| 168 | `бфЛогин` | Логин в учетной системе 1С-Бухфон | xs:string | — | нет | — | — | +| 169 | `бфПароль` | Пароль в учетной системы 1С-Бухфон | xs:string | — | нет | — | — | +| 170 | `бфШаблонУведомленияДляПользователейБухфон` | Шаблон уведомления для пользователей бухфон | cfg:CatalogRef.CRM_ШаблоныРассылки | — | нет | — | — | +| 171 | `бфШаблонУведомленияДляСпециалистовБухфон` | Шаблон уведомления для специалистов бухфон | cfg:CatalogRef.CRM_ШаблоныРассылки | — | нет | — | — | + +### В + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 172 | `ВалютаДоллары` | Валюта доллары | cfg:CatalogRef.Валюты | — | нет | — | — | +| 173 | `ВалютаРегламентированногоУчета` | Валюта регламентированного учета | cfg:CatalogRef.Валюты | — | да: Предприятие | — | — | +| 174 | `ВалютаУправленческогоУчета` | Валюта управленческого учета | cfg:CatalogRef.Валюты | — | да: Предприятие | — | — | +| 175 | `ВалютыУпрИРеглУчетаСовпадают` | Валюты упр. и регл. учета совпадают | xs:boolean | ВалютыУпрИРеглУчетаСовпадают | нет | — | — | +| 176 | `ВариантОбновленияКлассификаторов` | Вариант обновления классификаторов | xs:decimal | — | нет | — | — | +| 177 | `ВариантОбособленияТоваровВоВнутреннемПотреблении` | Вариант обособления товаров во внутреннем потреблении | cfg:EnumRef.ВариантыОбособленияТоваровВоВнутреннемПотреблении | — | да: СкладИДоставка | — | — | +| 178 | `ВариантОбособленияТоваровВПеремещении` | Вариант обособления товаров в перемещении | cfg:EnumRef.ВариантыОбособленияТоваровВПеремещении | — | да: СкладИДоставка | — | — | +| 179 | `ВариантОбособленияТоваровВПродажах` | Вариант обособления товаров в продажах | cfg:EnumRef.ВариантыОбособленияТоваровВПродажах | — | да: Продажи | — | — | +| 180 | `ВариантОбособленияТоваровВСборке` | Вариант обособления товаров в сборке | cfg:EnumRef.ВариантыОбособленияТоваровВСборке | — | да: СкладИДоставка | — | — | +| 181 | `ВариантПриемкиТоваров` | Вариант приемки товаров | cfg:EnumRef.ВариантыПриемкиТоваров | — | нет | — | — | +| 182 | `ВариантУчетаСезонныхКолебаний` | Вариант учета сезонных колебаний | cfg:EnumRef.УчетСезонныхКолебаний | — | нет | — | — | +| 183 | `ВедетсяРаботаЧерезТорговыхПредставителей` | Ведется работа через торговых представителей | xs:boolean | ВедетсяРаботаЧерезТорговыхПредставителей | да: Продажи | — | — | +| 184 | `ВерсииСхемОбменаГИСМ` | Версии схем обмена ГИСМ | xs:string | — | нет | — | — | +| 185 | `ВерсияДатЗапретаИзменения` | Версия дат запрета изменения | v8:UUID | — | нет | — | — | +| 186 | `ВерсияКлассификатораБанков` | Версия классификатора банков | v8:ValueStorage | — | нет | — | — | +| 187 | `ВестиОтдельнуюНумерациюСчетовФактурНаАвансы` | Вести отдельную нумерацию счетов-фактур, выданных на авансы | xs:boolean | ВестиОтдельнуюНумерациюСчетовФактурНаАвансы | да: УчетНДСиВЭД | — | — | +| 188 | `ВестиСведенияДляДекларацийАлкоВРознице` | Вести сведения для деклараций по алкогольной и спиртосодержащей продукции в рознице | xs:boolean | ВестиСведенияДляДекларацийАлкоВРознице | да: НастройкиНоменклатуры, Продажи | — | — | +| 189 | `ВестиСведенияДляДекларацийПоАлкогольнойПродукции` | Вести сведения для деклараций по алкогольной продукции | xs:boolean | ВестиСведенияДляДекларацийПоАлкогольнойПродукции | да: Продажи | — | — | +| 190 | `ВестиУправленческийУчетОрганизаций` | Вести управленческий учет организаций | xs:boolean | ВестиУправленческийУчетОрганизаций | да: ФинансовыйРезультатИКонтроллинг | — | — | +| 191 | `ВестиУчетМаркировкиПродукцииВГИСМ` | Вести учет маркировки продукции в ГИСМ | xs:boolean | ВестиУчетМаркировкиПродукцииВГИСМ | да: НастройкиНоменклатуры | — | — | +| 192 | `ВестиУчетМаркируемойПродукцииИСМП` | Вести учет маркируемой продукции ИС МП | xs:boolean | ВестиУчетМаркируемойПродукцииИСМП | нет | — | — | +| 193 | `ВестиУчетПодконтрольныхТоваровВЕТИС` | Вести учет подконтрольных товаров ВетИС | xs:boolean | ВестиУчетПодконтрольныхТоваровВЕТИС | да: НастройкиНоменклатуры | — | — | +| 194 | `ВидимостьДатыНачалаПечатиЕдиногоАвансовогоОтчета` | Видимость даты начала печати единого авансового отчета | xs:boolean | — | нет | — | — | +| 195 | `ВидКонтроляТоваровОрганизаций` | Вид контроля товаров организаций | cfg:EnumRef.ВидыКонтроляТоваровОрганизаций | — | нет | — | — | +| 196 | `ВидМаксимальноДопустимыхЦенЗакупки` | Вид максимально допустимых цен закупки | cfg:CatalogRef.ВидыЦен | — | нет | — | — | +| 197 | `ВидМаксимальноДопустимыхЦенПродажи` | Вид максимально допустимых цен продажи | cfg:CatalogRef.ВидыЦен | — | нет | — | — | +| 198 | `ВидМинимальноДопустимыхЦенПродажи` | Вид минимально допустимых цен продажи | cfg:CatalogRef.ВидыЦен | — | нет | — | — | +| 199 | `ВнешнийАдресУправляющегоПриложения` | Внешний адрес управляющего приложения | xs:string | — | нет | — | — | +| 200 | `ВнутреннийАдресМенеджераСервиса` | Внутренний адрес менеджера сервиса | xs:string | — | нет | — | — | +| 201 | `ВыбиратьВариантВыводаСкидокПриПечатиДокументовПродажи` | Выбирать вариант вывода скидок при печати документов продажи | xs:boolean | ВыбиратьВариантВыводаСкидокПриПечатиДокументовПродажи | нет | — | — | +| 202 | `ВыводитьQRКодНаПечатныхФормахДокументов` | Выводить QR-код на печатных формах документов | xs:boolean | ВыводитьQRКодНаПечатныхФормахДокументов | нет | — | — | +| 203 | `ВыводитьБазовыеЕдиницыИзмерения` | Выводить базовые единицы измерения в печатных формах | xs:boolean | — | да: Продажи | — | — | +| 204 | `ВыводитьДопКолонкиНДС` | Выводить дополнительные колонки НДС | xs:boolean | — | да: Продажи | Признак вывода дополнительных колонок с НДС в печатные формы | — | +| 205 | `ВыгружатьВнутренниеШтрихкодыШтучныхТоваров` | Выгружать внутренние штрихкоды штучных товаров | xs:boolean | — | да: НастройкиНоменклатуры | — | — | +| 206 | `ВыполнитьРезервноеКопированиеОбластиДанных` | Выполнить резервное копирование области данных | xs:boolean | — | нет | — | — | +| 207 | `ВыполняетсяРаспределениеПлановыхРасчетов` | Выполняется распределение плановых расчетов | xs:boolean | — | нет | — | — | +| 208 | `ВыполнятьЗамерыПроизводительности` | Выполнять замеры производительности | xs:boolean | — | нет | — | — | + +### Г + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 209 | `ГеографическаяСхемаДляОтчетов` | Географическая схема для отчетов | v8:ValueStorage | — | нет | — | — | +| 210 | `ГлавныйУзел` | Главный узел | — | — | нет | — | — | +| 211 | `ГруппаДоступаНоменклатурыИзСервиса` | Группа доступа номенклатуры из сервиса | cfg:CatalogRef.ГруппыДоступаНоменклатуры | — | да: НастройкиНоменклатуры | — | — | +| 212 | `ГруппаЛаеннек` | Группа лаеннек | cfg:CatalogRef.Номенклатура | — | нет | — | — | + +### Д + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 213 | `ДанныеДляОтложенногоОбновления` | Данные для отложенного обновления | v8:ValueStorage | — | нет | — | — | +| 214 | `ДатаВключенияОбособленногоУчетаСебестоимостиПоНазначениям` | Дата включения обособленного учета себестоимости по назначениям | xs:dateTime | — | да: ФинансовыйРезультатИКонтроллинг | — | — | +| 215 | `ДатаЗагрузкиКлассификатораОшибокКриптографии` | Дата загрузки классификатора ошибок криптографии | xs:dateTime | — | нет | — | — | +| 216 | `ДатаЗагрузкиОписанияФорматовДляПреобразования` | Дата загрузки описания форматов для преобразования | xs:dateTime | — | нет | — | — | +| 217 | `ДатаЗапретаИспользованияПродукцииТретьегоУровняВЕТИС` | Дата запрета использования продукции третьего уровня | xs:dateTime | — | нет | — | — | +| 218 | `ДатаНачалаВеденияУправленческогоУчетаОрганизаций` | Дата начала ведения управленческого учета организаций | xs:dateTime | — | да: ФинансовыйРезультатИКонтроллинг | — | — | +| 219 | `ДатаНачалаПечатиЕдиногоАвансовогоОтчета` | Дата начала печати единого авансового отчета | xs:dateTime | — | да: Казначейство | — | — | +| 220 | `ДатаНачалаПримененияПостановления1137` | Дата начала применения постановления Правительства РФ №1137 | xs:dateTime | — | нет | — | — | +| 221 | `ДатаНачалаПримененияПриказа107н` | Дата начала применения приказа Минфина России от 12.11.2013 №107н | xs:dateTime | — | нет | — | — | +| 222 | `ДатаНачалаПримененияПриказа126н` | Дата начала применения приказа Минфина России от 30.10.2014 №126н | xs:dateTime | — | нет | — | — | +| 223 | `ДатаНачалаПримененияПриказа164` | Дата начала применения приказа 164 | xs:dateTime | — | да: Продажи | — | — | +| 224 | `ДатаНачалаПримененияСводныхСправок` | Дата начала применения сводных справок | xs:dateTime | — | да: УчетНДСиВЭД | — | — | +| 225 | `ДатаНачалаРегистрацииЗакупокПоЕГАИС` | Дата начала оформления закупок по ЕГАИС | xs:dateTime | — | да: Продажи | — | — | +| 226 | `ДатаНачалаРегистрацииРозничныхПродажВЕГАИС` | Дата начала регистрации розничных продаж в ЕГАИС | xs:dateTime | — | да: Продажи | — | — | +| 227 | `ДатаНачалаРегистрацииРозничныхПродажВЕГАИСВСельскойМестности` | Дата начала регистрации розничных продаж в ЕГАИС в сельской местности | xs:dateTime | — | да: Продажи | — | — | +| 228 | `ДатаНачалаУпрощенногоПартионногоУчета` | Дата начала упрощенного партионного учета | xs:dateTime | — | нет | — | — | +| 229 | `ДатаНачалаУчетаНДСПоНаправлениямДеятельности` | Дата начала учета НДС по направлениям деятельности | xs:dateTime | — | нет | — | — | +| 230 | `ДатаНачалаУчетаПрослеживаемыхИмпортныхТоваров` | Дата начала учета прослеживаемых импортных товаров | xs:dateTime | — | да: УчетНДСиВЭД | — | — | +| 231 | `ДатаНачалаУчетаСебестоимости` | Дата начала учета себестоимости | xs:dateTime | — | да: ФинансовыйРезультатИКонтроллинг | — | — | +| 232 | `ДатаОбновленияПовторноИспользуемыхЗначенийМРО` | Дата обновления повторно используемых значений МРО | xs:dateTime | АктуальнаяДатаОбновленияПовторноИспользуемыхЗначенийМРО | нет | Актуальная дата обновления повторно-используемых значений механизма регистрации объектов в ИБ | — | +| 233 | `ДатаОбновленияСобытийСПАРКРиски` | Дата обновления событий 1СПАРК Риски | xs:dateTime | — | нет | — | — | +| 234 | `ДатаПереходаНаПартионныйУчетВерсии22` | Дата перехода на партионный учет версии 2.2 | xs:dateTime | — | да: ФинансовыйРезультатИКонтроллинг | — | — | +| 235 | `ДатаПоследнегоОбновленияКлассификатораОшибок` | Дата последнего обновления классификатора ошибок | xs:dateTime | — | нет | — | — | +| 236 | `ДатаПоследнегоСтартаКлиентскогоСеанса` | Дата последнего старта клиентского сеанса | xs:dateTime | — | нет | — | — | +| 237 | `ДатаПоследнейВыгрузкиЗамеровПроизводительностиUTC` | Дата последней выгрузки замеров производительности в UTC | xs:dateTime | — | нет | — | — | +| 238 | `ДатаСинхронизацииОКПД2` | Дата синхронизации ОКПД2 | xs:dateTime | — | нет | — | — | +| 239 | `ДатаСинхронизацииТНВЭД` | Дата синхронизации ТНВЭД | xs:dateTime | — | нет | — | — | +| 240 | `ДатаУведомленияОНовыхЗадачах` | Дата уведомления о новых задачах | xs:dateTime | — | нет | Служебная, не редактируется пользователем | — | +| 241 | `ДетализироватьЗаданияТорговымПредставителямПоНоменклатуре` | Детализировать задания торговым представителям по номенклатуре | xs:boolean | ДетализироватьЗаданияТорговымПредставителямПоНоменклатуре | да: Продажи | — | — | +| 242 | `ДетализироватьОбновлениеИБВЖурналеРегистрации` | Детализировать обновление ИБ в журнале регистрации | xs:boolean | — | нет | — | — | +| 243 | `ДнейДоСкрытияПерсональныхДанныхСубъектов` | Дней до скрытия персональных данных субъектов | xs:decimal | — | нет | — | — | +| 244 | `ДобавлятьИндивидуальныеУпаковкиПриСозданииНоменклатуры` | Добавлять индивидуальные упаковки при создании номенклатуры | xs:boolean | — | нет | — | — | +| 245 | `ДобавлятьИндивидуальныеХарактеристикиПриСозданииНоменклатуры` | Добавлять индивидуальные характеристики при создании номенклатуры | xs:boolean | — | нет | — | — | +| 246 | `ДобавлятьСертификатыНоменклатурыПриСозданииНоменклатуры` | Добавлять сертификаты номенклатуры при создании номенклатуры | xs:boolean | — | нет | — | — | +| 247 | `ДополнительнаяКолонкаПечатныхФормДокументов` | Дополнительная колонка печатных форм документов | cfg:EnumRef.ДополнительнаяКолонкаПечатныхФормДокументов | — | да: Продажи | — | — | +| 248 | `ДополнительныйЯзык1` | Дополнительный язык1 | xs:string | — | нет | — | — | +| 249 | `ДополнительныйЯзык2` | Дополнительный язык2 | xs:string | — | нет | — | — | +| 250 | `ДопустимоеОтклонениеОтгрузкиПриемкиМерныхТоваров` | Допустимое отклонение отгрузки и приемки мерных товаров | xs:decimal | — | да: НастройкиНоменклатуры | — | — | +| 251 | `ДопустимоеОтклонениеПриОкругленииКоличества` | Допустимое отклонение при автоматическом округлении | xs:decimal | — | да: НастройкиНоменклатуры | — | — | + +### Е + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 252 | `ЕдиницаИзмеренияВеса` | Единица измерения веса | cfg:CatalogRef.УпаковкиЕдиницыИзмерения | — | да: НастройкиНоменклатуры | — | — | +| 253 | `ЕдиницаИзмеренияДлины` | Единица измерения длины | cfg:CatalogRef.УпаковкиЕдиницыИзмерения | — | да: НастройкиНоменклатуры | — | — | +| 254 | `ЕдиницаИзмеренияКоличестваШтук` | Единица измерения количества штук | cfg:CatalogRef.УпаковкиЕдиницыИзмерения | — | да: НастройкиНоменклатуры | — | — | +| 255 | `ЕдиницаИзмеренияОбъема` | Единица измерения объема | cfg:CatalogRef.УпаковкиЕдиницыИзмерения | — | да: НастройкиНоменклатуры | — | — | +| 256 | `ЕдиницаИзмеренияПлощади` | Единица измерения площади | cfg:CatalogRef.УпаковкиЕдиницыИзмерения | — | да: НастройкиНоменклатуры | — | — | +| 257 | `ЕдиницаИзмеренияРазливнойПродукции` | Единица измерения разливной продукции | cfg:CatalogRef.УпаковкиЕдиницыИзмерения | — | да: НастройкиНоменклатуры | — | — | + +### З + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 258 | `ЗаголовокСистемы` | Заголовок программы | xs:string | — | да: НачальноеЗаполнение | — | — | +| 259 | `ЗагружатьИУстанавливатьИсправленияАвтоматически` | Загружать и устанавливать исправления (патчи) автоматически | xs:boolean | — | нет | — | — | +| 260 | `ЗагрузитьРасширенияИзменяющиеСтруктуруДанных` | Загрузить расширения изменяющие структуру данных | xs:boolean | — | нет | — | — | +| 261 | `ЗагрузитьСообщениеОбменаДанными` | Загрузить сообщение обмена данными | xs:boolean | — | нет | — | — | +| 262 | `ЗаполненыДвиженияАктивовПассивов` | Заполнены движения активов пассивов | xs:boolean | — | да: ФинансовыйРезультатИКонтроллинг | — | — | +| 263 | `ЗапрашиватьДанныеСервисаИСМП` | Запрашивать данные сервиса ГИС МТ | xs:boolean | ЗапрашиватьДанныеСервисаИСМП | нет | — | — | +| 264 | `ЗапретитьОтображениеНебезопасногоСодержимогоВПисьмах` | Запретить отображение небезопасного содержимого в письмах | xs:boolean | — | нет | — | — | +| 265 | `ЗапретитьОформлениеОперацийСИмпортнымиТоварамиБезНомеровГТД` | Запретить операции с товарами без номеров ГТД | xs:boolean | ЗапретитьОформлениеОперацийСИмпортнымиТоварамиБезНомеровГТД | да: УчетНДСиВЭД | — | — | +| 266 | `ЗапретитьПоступлениеТоваровБезНомеровГТД` | Запретить поступления товаров без номеров ГТД | xs:boolean | ЗапретитьПоступлениеТоваровБезНомеровГТД | да: УчетНДСиВЭД | — | — | +| 267 | `ЗапрещатьЗагрузкуФайловПоРасширению` | Запрещать загрузку файлов по расширению | xs:boolean | — | нет | — | — | +| 268 | `ЗарегистрированыИзмененияДанных` | Зарегистрированы изменения данных | xs:boolean | ЗарегистрированыИзмененияДанных | нет | Кумулятивный признак изменения данных для обмена в модели сервиса | — | + +### И + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 269 | `ИдентификаторИнформационнойБазы` | Идентификатор информационной базы | xs:string | — | нет | — | — | +| 270 | `ИдентификаторКорневойПапкиФайлов1СДокументооборот` | Идентификатор корневой папки файлов 1С:Документооборота | xs:string | — | нет | — | — | +| 271 | `ИдентификаторОбсужденияФискализации` | Идентификатор обсуждения фискализации | xs:string | — | нет | — | — | +| 272 | `ИзвлекатьТекстыФайловНаСервере` | Извлекать тексты файлов на сервере | xs:boolean | — | нет | — | — | +| 273 | `ИзменятьЗаданияЗаднимЧислом` | Изменять задания задним числом | xs:boolean | ИзменятьЗаданияЗаднимЧислом | нет | — | — | +| 274 | `ИмяСлужебногоПользователяМенеджераСервиса` | Имя служебного пользователя менеджера сервиса | xs:string | — | нет | — | — | +| 275 | `ИнтеграцияС1СДокументооборотИмяПользователяДляОбмена` | Имя пользователя для обмена с 1С:Документооборотом | xs:string | — | нет | — | — | +| 276 | `ИнтеграцияС1СДокументооборотПарольДляОбмена` | Пароль пользователя для обмена с 1С:Документооборотом | xs:string | — | нет | — | — | +| 277 | `ИнтервалЗапросаИзмененныхДанныхВЕТИС` | Интервал запроса измененных данных ВетИС | xs:decimal | — | нет | — | — | +| 278 | `ИнтерфейсВерсии82` | Интерфейс версии82 | xs:boolean | — | нет | — | — | +| 279 | `ИнформацияОПроцедуреЗагрузки` | Информация о процедуре загрузки | v8:ValueStorage | — | нет | — | — | +| 280 | `ИспользованиеЗаданийТорговымПредставителям` | Использование заданий торговым представителям | cfg:EnumRef.ИспользованиеЗаданийТорговымПредставителям | — | да: Продажи | — | — | +| 281 | `ИспользованиеКаталогаДополнительныхОтчетовИОбработокВМоделиСервиса` | Использование каталога дополнительных отчетов и обработок в модели сервиса | xs:boolean | — | нет | — | — | +| 282 | `ИспользованиеКаталогаРасширенийВМоделиСервиса` | Использование каталога расширений в модели сервиса | xs:boolean | ИспользованиеКаталогаРасширенийВМоделиСервиса | нет | — | — | +| 283 | `ИспользованиеКлассификаторовНоменклатуры` | Использование классификаторов номенклатуры | xs:boolean | ИспользованиеКлассификаторовНоменклатуры | да: НастройкиНоменклатуры | — | — | +| 284 | `ИспользованиеСоглашенийСКлиентами` | Использование соглашений с клиентами | cfg:EnumRef.ИспользованиеСоглашенийСКлиентами | — | да: Продажи | — | — | +| 285 | `ИспользованиеСтарыхКлассификаторовОКПиОКВЭД` | Использование старых классификаторов (ОКП и ОКВЭД) | xs:boolean | ИспользованиеСтарыхКлассификаторовОКПиОКВЭД | да: НастройкиНоменклатуры | — | — | +| 286 | `ИспользованиеЭтаповОплатыВЗакупках` | Использование этапов оплаты в закупках | cfg:EnumRef.ИспользованиеЭтаповОплаты | — | да: Закупки, УчетНДСиВЭД | — | — | +| 287 | `ИспользованиеЭтаповОплатыВПродажах` | Использование этапов оплаты в продажах | cfg:EnumRef.ИспользованиеЭтаповОплаты | — | да: Продажи | — | — | +| 288 | `ИспользоватьABCXYZКлассификациюНоменклатурыПоВаловойПрибыли` | Использовать ABC/XYZ классификацию номенклатуры по валовой прибыли | xs:boolean | ИспользоватьABCXYZКлассификациюНоменклатурыПоВаловойПрибыли | нет | — | — | +| 289 | `ИспользоватьABCXYZКлассификациюНоменклатурыПоВыручке` | Использовать ABC/XYZ классификацию номенклатуры по выручке | xs:boolean | ИспользоватьABCXYZКлассификациюНоменклатурыПоВыручке | нет | — | — | +| 290 | `ИспользоватьABCXYZКлассификациюНоменклатурыПоКоличествуПродаж` | Использовать ABC/XYZ классификацию номенклатуры по количеству продаж | xs:boolean | ИспользоватьABCXYZКлассификациюНоменклатурыПоКоличествуПродаж | нет | — | — | +| 291 | `ИспользоватьABCXYZКлассификациюПартнеровПоВаловойПрибыли` | Использовать ABC/XYZ классификацию партнеров по валовой прибыли | xs:boolean | ИспользоватьABCXYZКлассификациюПартнеровПоВаловойПрибыли | нет | — | — | +| 292 | `ИспользоватьABCXYZКлассификациюПартнеровПоВыручке` | Использовать ABC/XYZ классификацию партнеров по выручке | xs:boolean | ИспользоватьABCXYZКлассификациюПартнеровПоВыручке | нет | — | — | +| 293 | `ИспользоватьABCXYZКлассификациюПартнеровПоКоличествуПродаж` | Использовать ABC/XYZ классификацию партнеров по количеству продаж | xs:boolean | ИспользоватьABCXYZКлассификациюПартнеровПоКоличествуПродаж | нет | — | — | +| 294 | `ИспользоватьАвтоматическиеСкидкиВПродажах` | Использовать автоматические скидки в продажах | xs:boolean | ИспользоватьАвтоматическиеСкидкиВПродажах | да: CRMИМаркетинг, Продажи | — | — | +| 295 | `ИспользоватьАвтоматическоеЗакрытиеСтрокЗаказовМерныхТоваров` | Использовать автоматическое закрытие строк заказов мерных товаров | xs:boolean | ИспользоватьАвтоматическоеЗакрытиеСтрокЗаказовМерныхТоваров | да: НастройкиНоменклатуры | — | — | +| 296 | `ИспользоватьАвтоматическуюОтправкуПолучениеДанныхВЕТИС` | Использовать автоматическую отправку и получение данных ВетИС | xs:boolean | ИспользоватьАвтоматическуюОтправкуПолучениеДанныхВЕТИС | нет | — | — | +| 297 | `ИспользоватьАвтоматическуюОтправкуПолучениеДанныхГИСМ` | Использовать автоматическую отправку и получение данных ГИСМ | xs:boolean | ИспользоватьАвтоматическуюОтправкуПолучениеДанныхГИСМ | нет | — | — | +| 298 | `ИспользоватьАвтоматическуюОтправкуПолучениеДанныхЕГАИС` | Использовать автоматическую отправку получение данных ЕГАИС | xs:boolean | ИспользоватьАвтоматическуюОтправкуПолучениеДанныхЕГАИС | нет | — | — | +| 299 | `ИспользоватьАвтоматическуюОтправкуПолучениеДанныхИСМП` | Использовать автоматическую отправку и получение данных МОТП | xs:boolean | ИспользоватьАвтоматическуюОтправкуПолучениеДанныхИСМП | нет | — | — | +| 300 | `ИспользоватьАвтоматическуюСверткуРегистраСоответствиеНоменклатурыВЕТИС` | Использовать автоматическую свертку регистра соответствие номенклатуры ВетИС | xs:boolean | — | нет | — | — | +| 301 | `ИспользоватьАвтоматическуюСверткуРегистраСоответствиеНоменклатурыЕГАИС` | Использовать автоматическую свертку регистра соответствие номенклатуры ЕГАИС | xs:boolean | — | нет | — | — | +| 302 | `ИспользоватьАвтономнуюРаботуВМоделиСервиса` | Использовать автономную работу в модели сервиса | xs:boolean | ИспользоватьАвтономнуюРаботуВМоделиСервиса | нет | — | — | +| 303 | `ИспользоватьАктыВыполненныхРаботПоНесколькимЗаказам` | Использовать акты выполненных работ по нескольким заказам | xs:boolean | ИспользоватьАктыВыполненныхРаботПоНесколькимЗаказам | да: Продажи | — | — | +| 304 | `ИспользоватьАктыНаПередачуПрав` | Использовать акты на передачу прав | xs:boolean | ИспользоватьАктыНаПередачуПрав | да: Продажи | — | — | +| 305 | `ИспользоватьАктыОРасхожденияхПриПоступленииТоваров` | Использовать акты о расхождениях при поступлении товаров | xs:boolean | ИспользоватьАктыОРасхожденияхПриПоступленииТоваров | нет | — | — | +| 306 | `ИспользоватьАктыПриемкиТоваров` | Использовать акты приемки товаров | xs:boolean | ИспользоватьАктыПриемкиТоваров | нет | — | — | +| 307 | `ИспользоватьАктыРасхожденийПослеОтгрузкиПоВозвратам` | Использовать акты расхождений после возвратов поставщикам | xs:boolean | ИспользоватьАктыРасхожденийПослеОтгрузкиПоВозвратам | да: Закупки | — | — | +| 308 | `ИспользоватьАктыРасхожденийПослеОтгрузкиПоОтгрузкамТоваровСХранения` | Использовать акты расхождений после отгрузки по отгрузкам товаров с хранения | xs:boolean | ИспользоватьАктыРасхожденийПослеОтгрузкиПоОтгрузкамТоваровСХранения | да: Закупки | — | — | +| 309 | `ИспользоватьАктыРасхожденийПослеОтгрузкиПоПередачамХранителю` | Использовать акты расхождений после отгрузки по передачам хранителю | xs:boolean | ИспользоватьАктыРасхожденийПослеОтгрузкиПоПередачамХранителю | да: Продажи | — | — | +| 310 | `ИспользоватьАктыРасхожденийПослеОтгрузкиПоРеализациям` | Использовать акты расхождений после реализаций клиентам | xs:boolean | ИспользоватьАктыРасхожденийПослеОтгрузкиПоРеализациям | да: Продажи | — | — | +| 311 | `ИспользоватьАктыРасхожденийПослеПеремещения` | Использовать акты расхождений после перемещения | xs:boolean | ИспользоватьАктыРасхожденийПослеПеремещения | да: СкладИДоставка | — | — | +| 312 | `ИспользоватьАктыРасхожденийПослеПриемкиПоВозвратам` | Использовать акты расхождений после возвратов от клиентов | xs:boolean | ИспользоватьАктыРасхожденийПослеПриемкиПоВозвратам | да: Продажи | — | — | +| 313 | `ИспользоватьАктыРасхожденийПослеПриемкиПоПоступлениямТоваровОтХранителя` | Использовать акты расхождений после поступлений товаров от хранителя | xs:boolean | ИспользоватьАктыРасхожденийПослеПриемкиПоПоступлениямТоваровОтХранителя | да: Продажи | — | — | +| 314 | `ИспользоватьАктыРасхожденийПослеПриемкиПоПриемкамТоваровНаХранение` | Использовать акты расхождений после приемки по приемкам товаров на хранение | xs:boolean | ИспользоватьАктыРасхожденийПослеПриемкиПоПриемкамТоваровНаХранение | да: Закупки | — | — | +| 315 | `ИспользоватьАктыРасхожденийПослеПриемкиПоПриобретениям` | Использовать акты расхождений после поступлений товаров от поставщика | xs:boolean | ИспользоватьАктыРасхожденийПослеПриемкиПоПриобретениям | да: Закупки, УчетНДСиВЭД | — | — | +| 316 | `ИспользоватьАльтернативныйСерверДляЗагрузкиКурсовВалют` | Использовать альтернативный сервер для загрузки курсов валют | xs:boolean | — | нет | — | — | +| 317 | `ИспользоватьАнкетирование` | Использовать анкетирование | xs:boolean | CRM_ИспользоватьАнкетирование; ИспользоватьАнкетирование | да: CRMИМаркетинг | — | — | +| 318 | `ИспользоватьАссортимент` | Использовать ассортимент | xs:boolean | ИспользоватьАссортимент | да: CRMИМаркетинг | — | — | +| 319 | `ИспользоватьБизнесПроцессыИЗадачи` | Использовать бизнес-процессы и задачи | xs:boolean | ИспользоватьБизнесПроцессыИЗадачи | да: CRMИМаркетинг, Продажи | — | — | +| 320 | `ИспользоватьБизнесРегионы` | Использовать бизнес-регионы | xs:boolean | ИспользоватьБизнесРегионы | да: CRMИМаркетинг | — | — | +| 321 | `ИспользоватьБонусныеПрограммыЛояльности` | Использовать бонусные программы лояльности | xs:boolean | ИспользоватьБонусныеПрограммыЛояльности | да: CRMИМаркетинг | — | — | +| 322 | `ИспользоватьБюджетирование` | Использовать бюджетирование | xs:boolean | ИспользоватьБюджетирование | да: БюджетированиеИПланирование | — | — | +| 323 | `ИспользоватьВалютныеПлатежи` | Использовать валютные платежи | xs:boolean | ИспользоватьВалютныеПлатежи | да: Закупки, Казначейство, Предприятие, УчетНДСиВЭД | — | — | +| 324 | `ИспользоватьВерсионированиеОбъектов` | Использовать версионирование объектов | xs:boolean | ИспользоватьВерсионированиеОбъектов | да: CRMИМаркетинг, Закупки, Продажи, УчетНДСиВЭД | Хранение значения функциональной опции | — | +| 325 | `ИспользоватьВидыСвязейМеждуФизическимиЛицами` | Использовать виды связей между физическими лицами | xs:boolean | ИспользоватьВидыСвязейМеждуФизическимиЛицами | нет | — | — | +| 326 | `ИспользоватьВидыСвязейПартнеров` | Использовать виды связей партнеров | xs:boolean | ИспользоватьВидыСвязейПартнеров | да: CRMИМаркетинг | — | — | +| 327 | `ИспользоватьВнеоборотныеАктивы2_2` | Использовать внеоборотные активы (версия 2.2) | xs:boolean | ИспользоватьВнеоборотныеАктивы2_2 | да: Предприятие | — | — | +| 328 | `ИспользоватьВнеоборотныеАктивы2_4` | Использовать внеоборотные активы (версия 2.4) | xs:boolean | ИспользоватьВнеоборотныеАктивы2_4 | да: Предприятие | — | — | +| 329 | `ИспользоватьВнешнихПользователей` | Использовать внешних пользователей | xs:boolean | ИспользоватьВнешнихПользователей | да: CRMИМаркетинг, Продажи | — | — | +| 330 | `ИспользоватьВнутреннееПотребление` | Использовать внутреннее потребление | xs:boolean | ИспользоватьВнутреннееПотребление | да: СкладИДоставка | — | — | +| 331 | `ИспользоватьВнутреннееПотреблениеПоНесколькимЗаказам` | Использовать внутреннее потребление по нескольким заказам | xs:boolean | ИспользоватьВнутреннееПотреблениеПоНесколькимЗаказам | да: СкладИДоставка | — | — | +| 332 | `ИспользоватьВнутреннееСогласованиеЗаказовКлиентов` | Использовать внутреннее согласование заказов клиентов | xs:boolean | ИспользоватьВнутреннееСогласованиеЗаказовКлиентов | нет | — | — | +| 333 | `ИспользоватьВнутреннееСогласованиеЗаявокНаВозвратТоваровОтКлиентов` | Использовать внутреннее согласование заявок на возврат товаров от клиентов | xs:boolean | ИспользоватьВнутреннееСогласованиеЗаявокНаВозвратТоваровОтКлиентов | нет | — | — | +| 334 | `ИспользоватьВнутреннееСогласованиеКоммерческихПредложений` | Использовать внутреннее согласование коммерческих предложений | xs:boolean | ИспользоватьВнутреннееСогласованиеКоммерческихПредложений | нет | — | — | +| 335 | `ИспользоватьВнутреннееСогласованиеСоглашенийСКлиентами` | Использовать внутреннее согласование соглашений с клиентами | xs:boolean | ИспользоватьВнутреннееСогласованиеСоглашенийСКлиентами | нет | — | — | +| 336 | `ИспользоватьВнутренниеДокументыЭДО` | Использовать внутренние документы ЭДО | xs:boolean | ИспользоватьВнутренниеДокументыЭДО | нет | — | — | +| 337 | `ИспользоватьВыгрузкуВСводноеПриложение` | Использовать выгрузку в сводное приложение | xs:boolean | — | нет | — | — | +| 338 | `ИспользоватьГрафикиОплаты` | Использовать графики оплаты | xs:boolean | ИспользоватьГрафикиОплаты | нет | — | — | +| 339 | `ИспользоватьГруппыАналитическогоУчетаНоменклатуры` | Группы аналитического учета номенклатуры | xs:boolean | ИспользоватьГруппыАналитическогоУчетаНоменклатуры | да: ФинансовыйРезультатИКонтроллинг | — | — | +| 340 | `ИспользоватьГруппыДоступаНоменклатуры` | Использовать группы доступа номенклатуры | xs:boolean | ИспользоватьГруппыДоступаНоменклатуры | нет | — | — | +| 341 | `ИспользоватьГруппыДоступаПартнеров` | Использовать группы доступа партнеров | xs:boolean | ИспользоватьГруппыДоступаПартнеров | нет | — | — | +| 342 | `ИспользоватьГруппыПользователей` | Использовать группы пользователей | xs:boolean | ИспользоватьГруппыПользователей | нет | — | — | +| 343 | `ИспользоватьГруппыФинансовогоУчета` | Использовать группы настроек финансового учета | xs:boolean | ИспользоватьГруппыФинансовогоУчета | да: ФинансовыйРезультатИКонтроллинг | — | — | +| 344 | `ИспользоватьДатуИВремяВСрокахЗадач` | Использовать дату и время в сроках задач | xs:boolean | ИспользоватьДатуИВремяВСрокахЗадач | нет | — | — | +| 345 | `ИспользоватьДатуНачалаЗадач` | Использовать дату начала задач | xs:boolean | ИспользоватьДатуНачалаЗадач | нет | — | — | +| 346 | `ИспользоватьДатыЗапретаЗагрузки` | Использовать даты запрета загрузки | xs:boolean | ИспользоватьДатыЗапретаЗагрузки | нет | — | — | +| 347 | `ИспользоватьДатыЗапретаИзменения` | Использовать даты запрета изменения | xs:boolean | ИспользоватьДатыЗапретаИзменения | нет | — | — | +| 348 | `ИспользоватьДифференциальноеРезервноеКопирование` | Использовать дифференциальное резервное копирование | xs:boolean | — | нет | — | — | +| 349 | `ИспользоватьДоверенностиНаПолучениеТМЦ` | Использовать доверенности на получение ТМЦ | xs:boolean | ИспользоватьДоверенностиНаПолучениеТМЦ | да: Казначейство | — | — | +| 350 | `ИспользоватьДоговорыКредитовИДепозитов` | Использовать договоры кредитов и депозитов | xs:boolean | ИспользоватьДоговорыКредитовИДепозитов | да: Казначейство | — | — | +| 351 | `ИспользоватьДоговорыМеждуОрганизациями` | Использовать договоры между организациями | xs:boolean | ИспользоватьДоговорыМеждуОрганизациями | да: ФинансовыйРезультатИКонтроллинг | — | — | +| 352 | `ИспользоватьДоговорыСКлиентами` | Использовать договоры с клиентами | xs:boolean | ИспользоватьДоговорыСКлиентами | да: Продажи | — | — | +| 353 | `ИспользоватьДоговорыСПоставщиками` | Использовать договоры с поставщиками | xs:boolean | ИспользоватьДоговорыСПоставщиками | да: Закупки | — | — | +| 354 | `ИспользоватьДополнительныеОтчетыИОбработки` | Использовать дополнительные отчеты и обработки | xs:boolean | ИспользоватьДополнительныеОтчетыИОбработки | нет | — | — | +| 355 | `ИспользоватьДополнительныеРеквизитыИСведения` | Использовать дополнительные реквизиты и сведения | xs:boolean | ИспользоватьДополнительныеРеквизитыИСведения | нет | — | — | +| 356 | `ИспользоватьДополнительныйЯзык1` | Использовать дополнительный язык1 | xs:boolean | ИспользоватьДополнительныйЯзык1 | нет | — | — | +| 357 | `ИспользоватьДополнительныйЯзык2` | Использовать дополнительный язык2 | xs:boolean | ИспользоватьДополнительныйЯзык2 | нет | — | — | +| 358 | `ИспользоватьДопустимоеОтклонениеОтгрузкиПриемкиМерныхТоваров` | Использовать допустимое отклонение отгрузки приемки мерных товаров | xs:boolean | ИспользоватьДопустимоеОтклонениеОтгрузкиПриемкиМерныхТоваров | нет | — | — | +| 359 | `ИспользоватьЕдиницыИзмеренияДляОтчетов` | Использовать единицы измерения для отчетов | xs:boolean | ИспользоватьЕдиницыИзмеренияДляОтчетов | да: НастройкиНоменклатуры | — | — | +| 360 | `ИспользоватьЕжедневныеОтчеты1СДокументооборота` | Использовать ежедневные отчеты 1С:Документооборота | xs:boolean | ИспользоватьЕжедневныеОтчеты1СДокументооборота | нет | — | — | +| 361 | `ИспользоватьЖурналПлатежей` | Использовать журнал платежей | xs:boolean | ИспользоватьЖурналПлатежей | да: Казначейство | — | — | +| 362 | `ИспользоватьЗаданияДляУправленияТорговымиПредставителями` | Использовать задания для управления торговыми представителями | xs:boolean | ИспользоватьЗаданияДляУправленияТорговымиПредставителями | нет | — | — | +| 363 | `ИспользоватьЗаданияНаПеревозкуДляУчетаДоставкиПеревозчиками` | Использовать задания на перевозку для учета доставки перевозчиками | xs:boolean | ИспользоватьЗаданияНаПеревозкуДляУчетаДоставкиПеревозчиками | да: СкладИДоставка | — | — | +| 364 | `ИспользоватьЗаданияТорговымПредставителямДляПланирования` | Использовать задания торговым представителям для планирования | xs:boolean | ИспользоватьЗаданияТорговымПредставителямДляПланирования | нет | — | — | +| 365 | `ИспользоватьЗаказыКлиентов` | Использовать заказы клиентов | xs:boolean | ИспользоватьЗаказыКлиентов | да: Продажи | — | — | +| 366 | `ИспользоватьЗаказыНаВнутреннееПотребление` | Использовать заказы на внутреннее потребление | xs:boolean | ИспользоватьЗаказыНаВнутреннееПотребление | да: Закупки, СкладИДоставка, УчетНДСиВЭД | — | — | +| 367 | `ИспользоватьЗаказыНаПеремещение` | Использовать заказы на перемещение | xs:boolean | ИспользоватьЗаказыНаПеремещение | да: СкладИДоставка | — | — | +| 368 | `ИспользоватьЗаказыНаСборку` | Использовать заказы на сборку/разборку | xs:boolean | ИспользоватьЗаказыНаСборку | да: Закупки, СкладИДоставка, УчетНДСиВЭД | — | — | +| 369 | `ИспользоватьЗаказыПоставщикам` | Использовать заказы поставщикам | xs:boolean | ИспользоватьЗаказыПоставщикам | да: Закупки, Казначейство, СкладИДоставка, УчетНДСиВЭД | — | — | +| 370 | `ИспользоватьЗаказыПоставщикамИЗаявкиНаРасходованиеДС` | Использовать заказы поставщикам и заявки на расходование ДС | xs:boolean | ИспользоватьЗаказыПоставщикамИЗаявкиНаРасходованиеДС | да: Закупки, Казначейство, УчетНДСиВЭД | — | — | +| 371 | `ИспользоватьЗаметки` | Использовать заметки | xs:boolean | ИспользоватьЗаметки | нет | — | — | +| 372 | `ИспользоватьЗаполнениеРаздела7ДекларацииПоНДС` | Использовать заполнение раздела 7 декларации по НДС | xs:boolean | ИспользоватьЗаполнениеРаздела7ДекларацииПоНДС | нет | — | — | +| 373 | `ИспользоватьЗапретОтгрузки` | Использовать запрет отгрузки | xs:boolean | ИспользоватьЗапретОтгрузки | да: Продажи | — | — | +| 374 | `ИспользоватьЗапросыКоммерческихПредложенийОтКлиента` | Использовать запросы коммерческих предложений от клиента | xs:boolean | ИспользоватьЗапросыКоммерческихПредложенийОтКлиента | да: Продажи | — | — | +| 375 | `ИспользоватьЗапросыКоммерческихПредложенийПоставщиков` | Использовать запросы коммерческих предложений поставщиков | xs:boolean | ИспользоватьЗапросыКоммерческихПредложенийПоставщиков | да: Закупки | — | — | +| 376 | `ИспользоватьЗаявкиНаВозвратТоваровОтКлиентов` | Использовать заявки на возврат товаров от клиентов | xs:boolean | ИспользоватьЗаявкиНаВозвратТоваровОтКлиентов | да: Продажи | — | — | +| 377 | `ИспользоватьЗаявкиНаРасходованиеДенежныхСредств` | Использовать заявки на расходование денежных средств | xs:boolean | ИспользоватьЗаявкиНаРасходованиеДенежныхСредств | да: Закупки, Казначейство, УчетНДСиВЭД | — | — | +| 378 | `ИспользоватьИмпортныеЗакупки` | Использовать импортные закупки | xs:boolean | ИспользоватьИмпортныеЗакупки | да: НастройкиНоменклатуры, УчетНДСиВЭД | — | — | +| 379 | `ИспользоватьИмпортныеЗакупкиНеотфактурованнойПоставки` | Использовать импортные закупки неотфактурованной поставки | xs:boolean | ИспользоватьИмпортныеЗакупкиНеотфактурованнойПоставки | да: Закупки, УчетНДСиВЭД | — | — | +| 380 | `ИспользоватьИмпортныеЗакупкиТоваровВПути` | Использовать импортные закупки товаров в пути | xs:boolean | ИспользоватьИмпортныеЗакупкиТоваровВПути | да: Закупки, УчетНДСиВЭД | — | — | +| 381 | `ИспользоватьИмпортныеТовары` | Использовать импортные товары | xs:boolean | ИспользоватьИмпортныеТовары | да: УчетНДСиВЭД | — | — | +| 382 | `ИспользоватьИндивидуальныеСоглашенияСКлиентами` | Использовать индивидуальные соглашения с клиентами | xs:boolean | ИспользоватьИндивидуальныеСоглашенияСКлиентами | нет | — | — | +| 383 | `ИспользоватьИнтеграциюС1СДокументооборот` | Использовать интеграцию с 1С:Документооборотом | xs:boolean | ИспользоватьИнтеграциюС1СДокументооборот | нет | — | — | +| 384 | `ИспользоватьИнтеграциюССистемойВзаимодействия` | Использовать интеграцию с системой взаимодействия | xs:boolean | — | нет | — | — | +| 385 | `ИспользоватьИнтеграциюСЯндексКассой` | Использовать интеграцию с ЮKassa | xs:boolean | ИспользоватьИнтеграциюСЯндексКассой | нет | — | — | +| 386 | `ИспользоватьКартыЛояльности` | Использовать карты лояльности | xs:boolean | ИспользоватьКартыЛояльности | да: CRMИМаркетинг | — | — | +| 387 | `ИспользоватьКачествоТоваров` | Использовать качество товаров | xs:boolean | ИспользоватьКачествоТоваров | да: НастройкиНоменклатуры | — | — | +| 388 | `ИспользоватьКомиссиюПриЗакупках` | Использовать комиссию при закупках | xs:boolean | ИспользоватьКомиссиюПриЗакупках | да: Закупки | — | — | +| 389 | `ИспользоватьКомиссиюПриЗакупкахБазовая` | Использовать комиссию при закупках базовая | xs:boolean | ИспользоватьКомиссиюПриЗакупкахБазовая | нет | — | — | +| 390 | `ИспользоватьКомиссиюПриЗакупкахНеБазовая` | Использовать комиссию при закупках не базовая | xs:boolean | ИспользоватьКомиссиюПриЗакупкахНеБазовая | нет | — | — | +| 391 | `ИспользоватьКомиссиюПриПродажах` | Использовать комиссию при продажах | xs:boolean | ИспользоватьКомиссиюПриПродажах | да: Продажи | — | — | +| 392 | `ИспользоватьКомиссиюПриПродажахБазовая` | Использовать комиссию при продажах базовая | xs:boolean | ИспользоватьКомиссиюПриПродажахБазовая | нет | — | — | +| 393 | `ИспользоватьКомиссиюПриПродажахНеБазовая` | Использовать комиссию при продажах не базовая | xs:boolean | ИспользоватьКомиссиюПриПродажахНеБазовая | нет | — | — | +| 394 | `ИспользоватьКоммерческиеПредложенияКлиентам` | Использовать коммерческие предложения клиентам | xs:boolean | ИспользоватьКоммерческиеПредложенияКлиентам | да: Продажи | — | — | +| 395 | `ИспользоватьКоммерческиеПредложенияПоставщиков` | Использовать коммерческие предложения поставщиков | xs:boolean | ИспользоватьКоммерческиеПредложенияПоставщиков | да: Закупки | — | — | +| 396 | `ИспользоватьКонкурентнуюРазведку` | Использовать конкурентную разведку | xs:boolean | ИспользоватьКонкурентнуюРазведку | да: CRMИМаркетинг | — | — | +| 397 | `ИспользоватьКоннект` | Использовать онлайн-поддержку | xs:boolean | ИнтеграцияСКоннект; ИспользоватьОнлайнПоддержку | нет | — | — | +| 398 | `ИспользоватьКонтрольТарификации` | Использовать контроль тарификации | xs:boolean | ИспользоватьКонтрольТарификации | нет | — | — | +| 399 | `ИспользоватьКорректировкиПриобретений` | Использовать корректировки приобретений | xs:boolean | ИспользоватьКорректировкиПриобретений | да: Закупки | — | — | +| 400 | `ИспользоватьКорректировкиРеализаций` | Использовать корректировки реализаций | xs:boolean | ИспользоватьКорректировкиРеализаций | да: Продажи | — | — | +| 401 | `ИспользоватьЛизинг` | Использовать лизинг | xs:boolean | ИспользоватьЛизинг | нет | — | — | +| 402 | `ИспользоватьЛимитыРасходаДенежныхСредств` | Использовать лимиты расхода денежных средств | xs:boolean | ИспользоватьЛимитыРасходаДенежныхСредств | да: Казначейство | — | — | +| 403 | `ИспользоватьЛимитыРасходаДенежныхСредствПоОрганизациям` | Использовать лимиты расхода денежных средств по организациям | xs:boolean | ИспользоватьЛимитыРасходаДенежныхСредствПоОрганизациям | да: Казначейство | — | — | +| 404 | `ИспользоватьЛимитыРасходаДенежныхСредствПоПодразделениям` | Использовать лимиты расхода денежных средств по подразделениям | xs:boolean | ИспользоватьЛимитыРасходаДенежныхСредствПоПодразделениям | да: Казначейство | — | — | +| 405 | `ИспользоватьМаркетинговыеМероприятия` | Использовать маркетинговые мероприятия | xs:boolean | ИспользоватьМаркетинговыеМероприятия | да: CRMИМаркетинг | — | — | +| 406 | `ИспользоватьМногооборотнуюТару` | Использовать многооборотную тару | xs:boolean | ИспользоватьМногооборотнуюТару | да: НастройкиНоменклатуры | — | — | +| 407 | `ИспользоватьМобильноеПриложение1СЗаказыКлиентов` | Использовать мобильное приложение "1С:Заказы" | xs:boolean | ИспользоватьМобильноеПриложение1СЗаказы | да: Продажи | — | — | +| 408 | `ИспользоватьМониторингЦелевыхПоказателей` | Использовать мониторинг целевых показателей | xs:boolean | ИспользоватьМониторингЦелевыхПоказателей | да: ФинансовыйРезультатИКонтроллинг | — | — | +| 409 | `ИспользоватьНаборы` | Использовать наборы | xs:boolean | ИспользоватьНаборы | да: НастройкиНоменклатуры | — | — | +| 410 | `ИспользоватьНаложенныеПлатежиСервисДоставки` | Использовать наложенные платежи | xs:boolean | ИспользоватьНаложенныеПлатежиСервисДоставки | нет | — | — | +| 411 | `ИспользоватьНапоминанияПользователя` | Использовать напоминания | xs:boolean | ИспользоватьНапоминанияПользователя | нет | — | — | +| 412 | `ИспользоватьНачислениеЗарплаты` | Использовать начисление зарплаты | xs:boolean | ИспользоватьНачислениеЗарплатыУТ | нет | — | — | +| 413 | `ИспользоватьНеотфактурованныеПоставки` | Неотфактурованные поставки | xs:boolean | ИспользоватьНеотфактурованныеПоставки | да: Закупки, ФинансовыйРезультатИКонтроллинг | — | — | +| 414 | `ИспользоватьНесколькоВалют` | Использовать несколько валют | xs:boolean | ИспользоватьНесколькоВалют | да: Казначейство, Предприятие | — | — | +| 415 | `ИспользоватьНесколькоВидовНоменклатуры` | Использовать несколько видов номенклатуры | xs:boolean | ИспользоватьНесколькоВидовНоменклатуры | да: НастройкиНоменклатуры | — | — | +| 416 | `ИспользоватьНесколькоВидовЦен` | Использовать несколько видов цен | xs:boolean | ИспользоватьНесколькоВидовЦен | да: CRMИМаркетинг, Продажи | — | — | +| 417 | `ИспользоватьНесколькоКасс` | Использовать несколько касс | xs:boolean | ИспользоватьНесколькоКасс | да: Казначейство | — | — | +| 418 | `ИспользоватьНесколькоКассККМ` | Использовать несколько касс ККМ | xs:boolean | ИспользоватьНесколькоКассККМ | да: Продажи | — | — | +| 419 | `ИспользоватьНесколькоКлассификацийЗадолженности` | Использовать несколько классификаций задолженности | xs:boolean | — | да: Предприятие | — | — | +| 420 | `ИспользоватьНесколькоОрганизаций` | Использовать несколько организаций | xs:boolean | ИспользоватьНесколькоОрганизаций; ИспользоватьНесколькоОрганизацийБЭД; ИспользоватьНесколькоОрганизацийБухгалтерскийУчет | да: Казначейство, Предприятие, ФинансовыйРезультатИКонтроллинг | — | — | +| 421 | `ИспользоватьНесколькоПроизводственныхКалендарей` | Использовать несколько производственных календарей | xs:boolean | ИспользоватьНесколькоПроизводственныхКалендарей | нет | — | — | +| 422 | `ИспользоватьНесколькоРасчетныхСчетов` | Использовать несколько расчетных счетов | xs:boolean | ИспользоватьНесколькоРасчетныхСчетов | да: Казначейство | — | — | +| 423 | `ИспользоватьНесколькоРасчетныхСчетовКасс` | Использовать несколько расчетных счетов или касс | xs:boolean | ИспользоватьНесколькоРасчетныхСчетовКасс | нет | — | — | +| 424 | `ИспользоватьНесколькоСкладов` | Использовать несколько складов | xs:boolean | ИспользоватьНесколькоСкладов | да: Закупки, Продажи, СкладИДоставка, УчетНДСиВЭД | — | — | +| 425 | `ИспользоватьНоменклатуруПартнеров` | Использовать номенклатуру партнеров | xs:boolean | ИспользоватьНоменклатуруПартнеров | да: НастройкиНоменклатуры | — | — | +| 426 | `ИспользоватьНоменклатуруПродаваемуюСовместно` | Использовать номенклатуру, продаваемую совместно | xs:boolean | ИспользоватьНоменклатуруПродаваемуюСовместно | да: НастройкиНоменклатуры | — | — | +| 427 | `ИспользоватьОбменEDI` | Использовать обмен через 1С:EDI | xs:boolean | ИспользоватьОбменEDI | нет | Признак использования обмена электронными документами через 1С:EDI в информационной базе | — | +| 428 | `ИспользоватьОбменБизнесСеть` | Использовать обмен электронными документами через 1С:Бизнес-сеть | xs:boolean | ИспользоватьОбменБизнесСеть | нет | Признак использования обмена электронными документами через 1С:Бизнес-сеть в информационной базе | — | +| 429 | `ИспользоватьОбменСБанками` | Использовать обмен с банками | xs:boolean | ИспользоватьОбменСБанками | нет | Использовать прямой обмен с банками | — | +| 430 | `ИспользоватьОбменСПодключаемымОборудованиемOffline` | Использовать обмен с подключаемым оборудованием offline | xs:boolean | ИспользоватьОбменСПодключаемымОборудованиемOffline | да: НастройкиРМКИОборудования | Хранение значения функциональной опции | — | +| 431 | `ИспользоватьОбменССайтом` | Использовать обмен с сайтом | xs:boolean | ИспользоватьОбменССайтом | нет | Флаг для одноименной функциональной опции | — | +| 432 | `ИспользоватьОбменЭД` | Использовать обмен электронными документами | xs:boolean | ИспользоватьОбменЭД | нет | — | — | +| 433 | `ИспользоватьОбменЭДМеждуОрганизациями` | Использовать обмен электронными документами между организациями | xs:boolean | ИспользоватьОбменЭДМеждуОрганизациями | нет | Использовать обмен электронными документами между организациями | — | +| 434 | `ИспользоватьОбобщенныйУчетНекачественныхТоваров` | Использовать обобщенный учет некачественных товаров | xs:boolean | ИспользоватьОбобщенныйУчетНекачественныхТоваров | да: НастройкиНоменклатуры | — | — | +| 435 | `ИспользоватьОбособленноеОбеспечениеЗаказов` | Использовать обособленное обеспечение заказов | xs:boolean | ИспользоватьОбособленноеОбеспечениеЗаказов | да: СкладИДоставка | — | — | +| 436 | `ИспользоватьОбособленныеПодразделенияВыделенныеНаБаланс` | Использовать обособленные подразделения, выделенные на отдельный баланс | xs:boolean | ИспользоватьОбособленныеПодразделенияВыделенныеНаБаланс | да: Предприятие | — | — | +| 437 | `ИспользоватьОбщиеДополнительныеЗначения` | Использовать общие дополнительные значения | xs:boolean | ИспользоватьОбщиеДополнительныеЗначения | нет | — | — | +| 438 | `ИспользоватьОбщиеДополнительныеРеквизитыИСведения` | Использовать общие дополнительные реквизиты и сведения | xs:boolean | ИспользоватьОбщиеДополнительныеРеквизитыИСведения | нет | — | — | +| 439 | `ИспользоватьОграниченияРучныхСкидокВПродажахПоПользователям` | Использовать ограничения ручных скидок в продажах по пользователям | xs:boolean | ИспользоватьОграниченияРучныхСкидокВПродажахПоПользователям | да: CRMИМаркетинг | — | — | +| 440 | `ИспользоватьОграниченияРучныхСкидокВПродажахПоСоглашениям` | Использовать ограничения ручных скидок в продажах по соглашениям | xs:boolean | ИспользоватьОграниченияРучныхСкидокВПродажахПоСоглашениям | да: CRMИМаркетинг | — | — | +| 441 | `ИспользоватьОзнакомлениеСЭлектроннымиДокументами` | Использовать ознакомление с электронными документами | xs:boolean | — | нет | — | — | +| 442 | `ИспользоватьОплатуПлатежнымиКартами` | Использовать оплату платежными картами | xs:boolean | ИспользоватьОплатуПлатежнымиКартами | да: Казначейство | — | — | +| 443 | `ИспользоватьОрдерныеСклады` | Использовать ордерные склады | xs:boolean | ИспользоватьОрдерныеСклады | да: СкладИДоставка | — | — | +| 444 | `ИспользоватьОтветственноеХранение` | Использовать ответственное хранение | xs:boolean | ИспользоватьОтветственноеХранение | нет | — | — | +| 445 | `ИспользоватьОтветственноеХранениеВПроцессеЗакупки` | Использовать ответственное хранение в процессе закупки | xs:boolean | ИспользоватьОтветственноеХранениеВПроцессеЗакупки | да: Закупки | — | — | +| 446 | `ИспользоватьОтгрузкуБезПереходаПраваСобственности` | Использовать отгрузку без перехода права собственности | xs:boolean | ИспользоватьОтгрузкуБезПереходаПраваСобственности | да: Продажи | — | — | +| 447 | `ИспользоватьОтложеннуюОтправкуЭлектронныхДокументов` | Использовать отложенную отправку электронных документов | xs:boolean | — | нет | Отправлять подготовленные к отправке электронные документы нажатием кнопки "Отправить и получить электронные документы" | — | +| 448 | `ИспользоватьОтправкуSMSВШаблонахСообщений` | Использовать отправку SMS в шаблонах сообщений | xs:boolean | ИспользоватьОтправкуSMSВШаблонахСообщений | нет | — | — | +| 449 | `ИспользоватьОтчетВедомостьРасчетовМеждуОрганизациями` | Использовать отчет ведомость расчетов между организациями | xs:boolean | ИспользоватьОтчетВедомостьРасчетовМеждуОрганизациями | нет | — | — | +| 450 | `ИспользоватьОтчетДвиженияЗаказов` | Использовать отчет движения заказов | xs:boolean | ИспользоватьОтчетДвиженияЗаказов | нет | — | — | +| 451 | `ИспользоватьОтчетРасчетыМеждуОрганизациями` | Использовать отчет расчеты между организациями | xs:boolean | ИспользоватьОтчетРасчетыМеждуОрганизациями | нет | — | — | +| 452 | `ИспользоватьПартионныйУчет` | Использовать партионный учет | xs:boolean | ИспользоватьПартионныйУчет | да: Закупки, УчетНДСиВЭД, ФинансовыйРезультатИКонтроллинг | — | — | +| 453 | `ИспользоватьПартнеровИКонтрагентов` | Использовать партнеров и контрагентов | xs:boolean | ИспользоватьПартнеровИКонтрагентов | да: CRMИМаркетинг | — | — | +| 454 | `ИспользоватьПартнеровКакКонтрагентов` | Использовать партнеров как контрагентов | xs:boolean | ИспользоватьПартнеровКакКонтрагентов | нет | — | — | +| 455 | `ИспользоватьПервичныйСпрос` | Фиксировать первичный спрос | xs:boolean | ИспользоватьПервичныйСпрос | да: CRMИМаркетинг | — | — | +| 456 | `ИспользоватьПередачиТоваровМеждуОрганизациями` | Использовать передачи товаров между организациями | xs:boolean | ИспользоватьПередачиТоваровМеждуОрганизациями | да: ФинансовыйРезультатИКонтроллинг | — | — | +| 457 | `ИспользоватьПередачуНаОтветственноеХранениеСПравомПродажи` | Использовать передачу на ответственное хранение с правом продажи | xs:boolean | ИспользоватьПередачуНаОтветственноеХранениеСПравомПродажи | да: Продажи | — | — | +| 458 | `ИспользоватьПеремещениеПоНесколькимЗаказам` | Использовать перемещение по нескольким заказам | xs:boolean | ИспользоватьПеремещениеПоНесколькимЗаказам | да: СкладИДоставка | — | — | +| 459 | `ИспользоватьПеремещениеТоваров` | Использовать перемещение товаров | xs:boolean | ИспользоватьПеремещениеТоваров | да: СкладИДоставка | — | — | +| 460 | `ИспользоватьПеренаправлениеЗадач` | Использовать перенаправление задач | xs:boolean | ИспользоватьПеренаправлениеЗадач | нет | — | — | +| 461 | `ИспользоватьПланированиеЗакупок` | Использовать планирование закупок | xs:boolean | ИспользоватьПланированиеЗакупок | да: БюджетированиеИПланирование | — | — | +| 462 | `ИспользоватьПланированиеОстатков` | Использовать планирование остатков | xs:boolean | ИспользоватьПланированиеОстатков | да: БюджетированиеИПланирование | — | — | +| 463 | `ИспользоватьПланированиеПродаж` | Использовать планирование продаж | xs:boolean | ИспользоватьПланированиеПродаж | да: БюджетированиеИПланирование | — | — | +| 464 | `ИспользоватьПланированиеПродажПоКатегориям` | Использовать планирование продаж по категориям | xs:boolean | ИспользоватьПланированиеПродажПоКатегориям | да: БюджетированиеИПланирование | — | — | +| 465 | `ИспользоватьПланированиеСборкиРазборки` | Использовать планирование сборки (разборки) | xs:boolean | ИспользоватьПланированиеСборкиРазборки | да: БюджетированиеИПланирование | — | — | +| 466 | `ИспользоватьПодарочныеСертификаты` | Использовать подарочные сертификаты | xs:boolean | ИспользоватьПодарочныеСертификаты | да: Продажи | — | — | +| 467 | `ИспользоватьПодключаемоеОборудование` | Использовать подключаемое оборудование | xs:boolean | ИспользоватьПодключаемоеОборудование | да: НастройкиРМКИОборудования | — | — | +| 468 | `ИспользоватьПодключаемоеОборудованиеИОплатуПлатежнымиКартами` | Использовать подключаемое оборудование и оплату платежными картами | xs:boolean | ИспользоватьПодключаемоеОборудованиеИОплатуПлатежнымиКартами | нет | — | — | +| 469 | `ИспользоватьПодразделения` | Использовать подразделения | xs:boolean | ИспользоватьПодразделения; ИспользоватьПодразделенияВОбменах | да: Казначейство, Предприятие, ФинансовыйРезультатИКонтроллинг | — | — | +| 470 | `ИспользоватьПодчиненныеБизнесПроцессы` | Использовать подчиненные бизнес-процессы | xs:boolean | ИспользоватьПодчиненныеБизнесПроцессы | нет | — | — | +| 471 | `ИспользоватьПолнотекстовыйПоиск` | Использовать полнотекстовый поиск | xs:boolean | ИспользоватьПолнотекстовыйПоиск | да: НастройкиНоменклатуры | — | — | +| 472 | `ИспользоватьПолнотекстовыйПоискПриПодбореТоваров` | Использовать полнотекстовый поиск при подборе товаров | xs:boolean | ИспользоватьПолнотекстовыйПоискПриПодбореТоваров | да: НастройкиНоменклатуры | — | — | +| 473 | `ИспользоватьПострочнуюОтгрузкуВЗаказеКлиента` | Использовать построчную отгрузку в заказе клиента | xs:boolean | ИспользоватьПострочнуюОтгрузкуВЗаказеКлиента | да: Продажи | — | — | +| 474 | `ИспользоватьПоступлениеПоНесколькимЗаказам` | Использовать поступление по нескольким заказам | xs:boolean | ИспользоватьПоступлениеПоНесколькимЗаказам | да: Закупки | — | — | +| 475 | `ИспользоватьПочтовыйКлиент` | Использовать почтовый клиент | xs:boolean | ИспользоватьПочтовыйКлиент | нет | — | — | +| 476 | `ИспользоватьПризнакРассмотрено` | Использовать признак "Рассмотрено" | xs:boolean | ИспользоватьПризнакРассмотрено | нет | — | — | +| 477 | `ИспользоватьПрисоединенныеФайлы1СДокументооборота` | Использовать присоединенные файлы 1С:Документооборота | xs:boolean | ИспользоватьПрисоединенныеФайлы1СДокументооборота | нет | — | — | +| 478 | `ИспользоватьПрисоединенныеФайлыИнтегрированнойСистемы` | Использовать присоединенные файлы интегрированной системы | xs:boolean | ИспользоватьПрисоединенныеФайлыИнтегрированнойСистемы | нет | — | — | +| 479 | `ИспользоватьПричиныОтменыЗаказовКлиентов` | Использовать причины отмены заказов клиентов | xs:boolean | ИспользоватьПричиныОтменыЗаказовКлиентов | да: Продажи | — | — | +| 480 | `ИспользоватьПричиныОтменыЗаказовПоставщикам` | Использовать причины отмены заказов поставщикам | xs:boolean | ИспользоватьПричиныОтменыЗаказовПоставщикам | да: Закупки | — | — | +| 481 | `ИспользоватьПроверкуКонтрагентов` | Использовать сервис проверки данных по контрагенту | xs:decimal | — | нет | 0 - проверку никогда не включали; 1 - проверка включена; 2 - проверку отключили | — | +| 482 | `ИспользоватьПродажиНаЭкспортНесырьевыхТоваров` | Использовать продажи на экспорт несырьевых товаров | xs:boolean | ИспользоватьПродажиНаЭкспортНесырьевыхТоваров | да: НастройкиНоменклатуры, Продажи, УчетНДСиВЭД | — | — | +| 483 | `ИспользоватьПродажиНаЭкспортСырьевыхТоваровУслуг` | Использовать продажи на экспорт сырьевых товаров, услуг | xs:boolean | ИспользоватьПродажиНаЭкспортСырьевыхТоваровУслуг | да: НастройкиНоменклатуры, Продажи, УчетНДСиВЭД | — | — | +| 484 | `ИспользоватьПродажуАгентскихУслуг` | Использовать продажу агентских услуг | xs:boolean | ИспользоватьПродажуАгентскихУслуг | да: Продажи | — | — | +| 485 | `ИспользоватьПроекты` | Использовать проекты | xs:boolean | ИспользоватьПроекты | да: CRMИМаркетинг | — | — | +| 486 | `ИспользоватьПроизводство` | Использовать производство | xs:boolean | ИспользоватьПроизводство | да: CRMИМаркетинг, БюджетированиеИПланирование, Закупки, Казначейство, НастройкиНоменклатуры, Предприятие, Продажи, СкладИДоставка (+ещё 1) | — | — | +| 487 | `ИспользоватьПроизводствоНаСтороне` | Использовать производство на стороне | xs:boolean | ИспользоватьПроизводствоНаСтороне | да: НастройкиНоменклатуры, Предприятие | — | — | +| 488 | `ИспользоватьПрофилиБезопасностиДляДОО` | Использовать профили безопасности для дополнительных отчетов и обработок | xs:boolean | — | нет | АПК:58 в имени используется сокращение | — | +| 489 | `ИспользоватьПрофилиБезопасностиДляРасширений` | Использовать профили безопасности для расширений | xs:boolean | — | нет | — | — | +| 490 | `ИспользоватьПроцессыИЗадачи1СДокументооборота` | Использовать процессы и задачи 1С:Документооборота | xs:boolean | ИспользоватьПроцессыИЗадачи1СДокументооборота | нет | — | — | +| 491 | `ИспользоватьПрочееОприходованиеТоваров` | Использовать прочее оприходование товаров | xs:boolean | ИспользоватьПрочееОприходованиеТоваров | да: СкладИДоставка | — | — | +| 492 | `ИспользоватьПрочиеВзаимодействия` | Использовать прочие взаимодействия | xs:boolean | CRM_ИспользоватьПрочиеВзаимодействия; ИспользоватьПрочиеВзаимодействия | нет | — | — | +| 493 | `ИспользоватьПрямойОбменЭлектроннымиДокументами` | Использовать прямой обмен электронными документами | xs:boolean | ИспользоватьПрямойОбменЭлектроннымиДокументами | нет | — | — | +| 494 | `ИспользоватьРазделениеПоОбластямДанных` | Использовать разделение по областям данных | xs:boolean | CRM_РаботаВМоделиСервиса; ПользователиВМоделиСервиса; РаботаВМоделиСервиса; РаботаВМоделиСервисаБТС; СтандартныеПодсистемыВМоделиСервиса; ТехнологияСервисаВМоделиСервиса; ТехнологияСервисаВМоделиСервисаУТКАУП | да: Интерфейс | — | — | +| 495 | `ИспользоватьРаздельныйУчетПоНалогообложению` | Использовать раздельный учет по налогообложению | xs:boolean | ИспользоватьРаздельныйУчетПоНалогообложению | нет | — | — | +| 496 | `ИспользоватьРасширенноеОбеспечениеПотребностей` | Использовать расширенное обеспечение потребностей | xs:boolean | ИспользоватьРасширенноеОбеспечениеПотребностей | да: Закупки, Продажи, СкладИДоставка, УчетНДСиВЭД | — | — | +| 497 | `ИспользоватьРасширеннуюФормуПодбораКоличестваИВариантовОбеспечения` | Использовать расширенную форму подбора количества и вариантов обеспечения | xs:boolean | ИспользоватьРасширеннуюФормуПодбораКоличестваИВариантовОбеспечения | да: НастройкиНоменклатуры | — | — | +| 498 | `ИспользоватьРасширенныеВозможностиЗаказаКлиента` | Использовать расширенные возможности заказа клиента | xs:boolean | ИспользоватьРасширенныеВозможностиЗаказаКлиента | да: Продажи | — | — | +| 499 | `ИспользоватьРеализациюПоНесколькимЗаказам` | Использовать реализацию по нескольким заказам | xs:boolean | ИспользоватьРеализациюПоНесколькимЗаказам | да: Продажи | — | — | +| 500 | `ИспользоватьРеглУчет` | Использовать регламентированный учет | xs:boolean | ИспользоватьРеглУчет | да: НастройкиНоменклатуры, ФинансовыйРезультатИКонтроллинг | — | — | +| 501 | `ИспользоватьРейтингиПродажНоменклатуры` | Использовать рейтинги продаж номенклатуры | xs:boolean | ИспользоватьРейтингиПродажНоменклатуры | да: CRMИМаркетинг | — | — | +| 502 | `ИспользоватьРозничныеПродажи` | Использовать розничные продажи | xs:boolean | ИспользоватьРозничныеПродажи | да: НастройкиРМКИОборудования, Продажи | — | — | +| 503 | `ИспользоватьРолиКонтактныхЛицПартнеров` | Использовать роли контактных лиц партнеров | xs:boolean | ИспользоватьРолиКонтактныхЛицПартнеров | да: CRMИМаркетинг | — | — | +| 504 | `ИспользоватьРолиПартнеровИКонтактныхЛицВСделкахИПроектах` | Использовать роли партнеров и контактных лиц в сделках и проектах | xs:boolean | ИспользоватьРолиПартнеровИКонтактныхЛицВСделкахИПроектах | да: CRMИМаркетинг | — | — | +| 505 | `ИспользоватьРучныеСкидкиВЗакупках` | Использовать ручные скидки в закупках | xs:boolean | ИспользоватьРучныеСкидкиВЗакупках | да: CRMИМаркетинг | — | — | +| 506 | `ИспользоватьРучныеСкидкиВПродажах` | Использовать ручные скидки в продажах | xs:boolean | ИспользоватьРучныеСкидкиВПродажах | да: CRMИМаркетинг, Продажи | — | — | +| 507 | `ИспользоватьСбалансированностьПлановУТ` | Использовать сбалансированность планов УТ | xs:boolean | ИспользоватьСбалансированностьПлановУТ | нет | — | — | +| 508 | `ИспользоватьСборкуРазборку` | Использовать сборку разборку | xs:boolean | ИспользоватьСборкуРазборку | да: CRMИМаркетинг, БюджетированиеИПланирование, СкладИДоставка | — | — | +| 509 | `ИспользоватьСвязанныеДокументы1СДокументооборота` | Использовать связанные документы 1С:Документооборота | xs:boolean | ИспользоватьСвязанныеДокументы1СДокументооборота | нет | — | — | +| 510 | `ИспользоватьСделкиСКлиентами` | Использовать сделки с клиентами | xs:boolean | ИспользоватьСделкиСКлиентами | да: CRMИМаркетинг, Продажи, ФинансовыйРезультатИКонтроллинг | — | — | +| 511 | `ИспользоватьСегментыНоменклатуры` | Использовать сегменты номенклатуры | xs:boolean | ИспользоватьСегментыНоменклатуры | да: CRMИМаркетинг, НастройкиНоменклатуры | — | — | +| 512 | `ИспользоватьСегментыПартнеров` | Использовать сегменты партнеров | xs:boolean | CRM_ИспользоватьСегментацию; ИспользоватьСегментыПартнеров | да: CRMИМаркетинг | — | — | +| 513 | `ИспользоватьСезонныеКоэффициенты` | Использовать сезонные коэффициенты | xs:boolean | ИспользоватьСезонныеКоэффициенты | да: БюджетированиеИПланирование | — | — | +| 514 | `ИспользоватьСервис1СДоставка` | Использовать сервис 1С:Доставка | xs:boolean | ИспользоватьСервис1СДоставка | нет | — | — | +| 515 | `ИспользоватьСервис1СКурьер` | Использовать сервис 1С:Курьер | xs:boolean | ИспользоватьСервис1СКурьер | нет | — | — | +| 516 | `ИспользоватьСервисDSS` | Использовать сервис DSS | xs:boolean | ИспользоватьСервисDSS | нет | — | — | +| 517 | `ИспользоватьСервисПереводаТекста` | Использовать сервис перевода текста | xs:boolean | ИспользоватьСервисПереводаТекста | нет | — | — | +| 518 | `ИспользоватьСервисРаботаСНоменклатурой` | Использовать сервис 1С:Номенклатура | xs:boolean | ИспользоватьСервисРаботаСНоменклатурой | нет | — | — | +| 519 | `ИспользоватьСервисСклоненияMorpher` | Использовать сервис склонения «Морфер» | xs:boolean | — | нет | — | — | +| 520 | `ИспользоватьСервисСПАРКРиски` | Использовать сервис 1СПАРК Риски | xs:boolean | ИспользоватьСервисСПАРКРиски | нет | — | — | +| 521 | `ИспользоватьСерииНоменклатуры` | Использовать серии номенклатуры | xs:boolean | ИспользоватьСерииНоменклатуры | да: НастройкиНоменклатуры | — | — | +| 522 | `ИспользоватьСертификатыНоменклатуры` | Использовать сертификаты номенклатуры | xs:boolean | ИспользоватьСертификатыНоменклатуры | да: НастройкиНоменклатуры | — | — | +| 523 | `ИспользоватьСертификатыОблачногоСервисаВЭДО` | Использовать сертификаты облачного сервиса в ЭДО | xs:boolean | — | нет | — | — | +| 524 | `ИспользоватьСинхронизациюДанных` | Использовать синхронизацию данных | xs:boolean | ИспользоватьСинхронизациюДанных | нет | — | — | +| 525 | `ИспользоватьСинхронизациюДанныхВЛокальномРежиме` | Использовать синхронизацию данных в локальном режиме | xs:boolean | ИспользоватьСинхронизациюДанныхВЛокальномРежиме | нет | — | — | +| 526 | `ИспользоватьСинхронизациюДанныхВМоделиСервиса` | Использовать синхронизацию данных в модели сервиса | xs:boolean | ИспользоватьСинхронизациюДанныхВМоделиСервиса | нет | — | — | +| 527 | `ИспользоватьСинхронизациюДанныхВМоделиСервисаСЛокальнойПрограммой` | Использовать синхронизацию данных в модели сервиса с локальной программой | xs:boolean | ИспользоватьСинхронизациюДанныхВМоделиСервисаСЛокальнойПрограммой | нет | — | — | +| 528 | `ИспользоватьСинхронизациюДанныхВМоделиСервисаСПриложениемВИнтернете` | Использовать синхронизацию данных в модели сервиса с приложением в Интернете | xs:boolean | ИспользоватьСинхронизациюДанныхВМоделиСервисаСПриложениемВИнтернете | нет | — | — | +| 529 | `ИспользоватьСкладыВТабличнойЧастиДокументовЗакупки` | Использовать склады в табличной части документов закупки | xs:boolean | ИспользоватьСкладыВТабличнойЧастиДокументовЗакупки | да: Закупки | — | — | +| 530 | `ИспользоватьСкладыВТабличнойЧастиДокументовПродажи` | Использовать склады в табличной части документов продажи | xs:boolean | ИспользоватьСкладыВТабличнойЧастиДокументовПродажи | да: Продажи | — | — | +| 531 | `ИспользоватьСкрытиеПерсональныхДанныхСубъектов` | Использовать скрытие персональных данных субъектов | xs:boolean | ИспользоватьСкрытиеПерсональныхДанныхСубъектов | нет | — | — | +| 532 | `ИспользоватьСогласованиеЗаказовКлиентов` | Использовать согласование заказов клиентов | xs:boolean | ИспользоватьСогласованиеЗаказовКлиентов | да: Продажи | — | — | +| 533 | `ИспользоватьСогласованиеЗаказовПоставщикам` | Использовать согласование заказов поставщикам | xs:boolean | ИспользоватьСогласованиеЗаказовПоставщикам | да: Закупки | — | — | +| 534 | `ИспользоватьСогласованиеЗаявокНаВозвратТоваровОтКлиентов` | Использовать согласование заявок на возврат товаров от клиентов | xs:boolean | ИспользоватьСогласованиеЗаявокНаВозвратТоваровОтКлиентов | да: Продажи | — | — | +| 535 | `ИспользоватьСогласованиеКоммерческихПредложений` | Использовать согласование коммерческих предложений | xs:boolean | ИспользоватьСогласованиеКоммерческихПредложений | нет | — | — | +| 536 | `ИспользоватьСогласованиеСоглашенийСКлиентами` | Использовать согласование соглашений с клиентами | xs:boolean | ИспользоватьСогласованиеСоглашенийСКлиентами | да: Продажи | — | — | +| 537 | `ИспользоватьСогласованиеЦенНоменклатуры` | Использовать согласование цен номенклатуры | xs:boolean | ИспользоватьСогласованиеЦенНоменклатуры | да: CRMИМаркетинг | — | — | +| 538 | `ИспользоватьСогласованиеЧерез1СДокументооборот` | Использовать согласование через 1С:Документооборот | xs:boolean | — | нет | — | — | +| 539 | `ИспользоватьСоглашенияСКлиентами` | Использовать соглашения с клиентами | xs:boolean | CRM_Модуль_ИспользоватьСоглашенияСКлиентами; ИспользоватьСоглашенияСКлиентами | да: Продажи | — | — | +| 540 | `ИспользоватьСоглашенияСПоставщиками` | Использовать соглашения с поставщиками | xs:boolean | ИспользоватьСоглашенияСПоставщиками | да: Закупки | — | — | +| 541 | `ИспользоватьСтандартныйПоискПриПодбореТоваров` | Использовать стандартный поиск при подборе товаров | xs:boolean | — | да: НастройкиНоменклатуры | — | — | +| 542 | `ИспользоватьСтатусыАвансовыхОтчетов` | Использовать статусы авансовых отчетов | xs:boolean | ИспользоватьСтатусыАвансовыхОтчетов | да: Казначейство | — | — | +| 543 | `ИспользоватьСтатусыВнутреннихПотребленийТоваров` | Использовать статусы внутренних потреблений товаров | xs:boolean | ИспользоватьСтатусыВнутреннихПотребленийТоваров | нет | — | — | +| 544 | `ИспользоватьСтатусыВозвратовТоваровПоставщикам` | Использовать статусы возвратов товаров поставщикам | xs:boolean | ИспользоватьСтатусыВозвратовТоваровПоставщикам | нет | — | — | +| 545 | `ИспользоватьСтатусыЗаказовНаВнутреннееПотребление` | Использовать статусы заказов на внутреннее потребление | xs:boolean | ИспользоватьСтатусыЗаказовНаВнутреннееПотребление | да: СкладИДоставка | — | — | +| 546 | `ИспользоватьСтатусыЗаказовНаПеремещение` | Использовать статусы заказов на перемещение | xs:boolean | ИспользоватьСтатусыЗаказовНаПеремещение | да: СкладИДоставка | — | — | +| 547 | `ИспользоватьСтатусыЗаказовНаСборку` | Использовать статусы заказов на сборку | xs:boolean | ИспользоватьСтатусыЗаказовНаСборку | да: СкладИДоставка | — | — | +| 548 | `ИспользоватьСтатусыЗаказовПоставщикам` | Использовать статусы заказов поставщикам | xs:boolean | ИспользоватьСтатусыЗаказовПоставщикам | да: Закупки | — | — | +| 549 | `ИспользоватьСтатусыПеремещенийТоваров` | Использовать статусы перемещений товаров | xs:boolean | ИспользоватьСтатусыПеремещенийТоваров | да: СкладИДоставка | — | — | +| 550 | `ИспользоватьСтатусыРеализацийТоваровУслуг` | Использовать статусы реализаций товаров услуг | xs:boolean | ИспользоватьСтатусыРеализацийТоваровУслуг | да: Продажи | — | — | +| 551 | `ИспользоватьСтатусыСборокТоваров` | Использовать статусы сборок товаров | xs:boolean | ИспользоватьСтатусыСборокТоваров | да: СкладИДоставка | — | — | +| 552 | `ИспользоватьСчетаНаОплатуКлиентам` | Использовать счета на оплату клиентам | xs:boolean | ИспользоватьСчетаНаОплатуКлиентам | да: Продажи | — | — | +| 553 | `ИспользоватьТиповыеИИндивидуальныеСоглашенияСКлиентами` | Использовать типовые и индивидуальные соглашения с клиентами | xs:boolean | ИспользоватьТиповыеИИндивидуальныеСоглашенияСКлиентами | нет | — | — | +| 554 | `ИспользоватьТиповыеСоглашенияСКлиентами` | Использовать типовые соглашения с клиентами | xs:boolean | ИспользоватьТиповыеСоглашенияСКлиентами | нет | — | — | +| 555 | `ИспользоватьТМЦВЭксплуатации` | Использовать ТМЦ в эксплуатации | xs:boolean | ИспользоватьТМЦВЭксплуатации | нет | — | — | +| 556 | `ИспользоватьТоварныеКатегории` | Использовать товарные категории | xs:boolean | ИспользоватьТоварныеКатегории | да: CRMИМаркетинг, БюджетированиеИПланирование | — | — | +| 557 | `ИспользоватьТоварыВПутиОтПоставщиков` | Товары в пути | xs:boolean | ИспользоватьТоварыВПутиОтПоставщиков | да: Закупки, УчетНДСиВЭД | — | — | +| 558 | `ИспользоватьТТН` | Использовать товарно-транспортные накладные | xs:boolean | ИспользоватьТТН | да: Продажи | — | — | +| 559 | `ИспользоватьУведомленияОКонтролируемыхСделках` | Использовать уведомления о контролируемых сделках | xs:boolean | ИспользоватьУведомленияОКонтролируемыхСделках | да: НастройкиНоменклатуры | — | — | +| 560 | `ИспользоватьУдалениеПомеченныхОбъектов` | Использовать удаление помеченных объектов | xs:boolean | ИспользоватьУдалениеПомеченныхОбъектов | нет | — | — | +| 561 | `ИспользоватьУпаковкиНоменклатуры` | Использовать упаковки номенклатуры | xs:boolean | ИспользоватьУпаковкиНоменклатуры | да: НастройкиНоменклатуры | — | — | +| 562 | `ИспользоватьУпаковочныеЛисты` | Использовать упаковочные листы | xs:boolean | ИспользоватьУпаковочныеЛисты | да: СкладИДоставка | — | — | +| 563 | `ИспользоватьУправлениеДоставкой` | Использовать управление доставкой | xs:boolean | ИспользоватьУправлениеДоставкой | да: СкладИДоставка | — | — | +| 564 | `ИспользоватьУправлениеДоступом` | Использовать управление доступом | xs:boolean | ИспользоватьУправлениеДоступом | нет | — | — | +| 565 | `ИспользоватьУправлениеКоллекциями` | Использовать управление коллекциями | xs:boolean | ИспользоватьУправлениеКоллекциями | да: CRMИМаркетинг | — | — | +| 566 | `ИспользоватьУправлениеПеремещениемОбособленныхТоваров` | Использовать управление перемещением обособленных товаров | xs:boolean | ИспользоватьУправлениеПеремещениемОбособленныхТоваров | нет | — | — | +| 567 | `ИспользоватьУправлениеПроизводством` | Использовать управление производством | xs:boolean | ИспользоватьУправлениеПроизводством | нет | — | — | +| 568 | `ИспользоватьУправлениеПроизводством2_2` | Использовать управление производством 2.2 | xs:boolean | ИспользоватьУправлениеПроизводством2_2 | да: Закупки, УчетНДСиВЭД | — | — | +| 569 | `ИспользоватьУправлениеСделками` | Использовать управление сделками | xs:boolean | ИспользоватьУправлениеСделками | да: CRMИМаркетинг, Продажи | — | — | +| 570 | `ИспользоватьУправленческуюОрганизацию` | Использовать раздельные операции закупки и продажи для упр. и регл. учета | xs:boolean | ИспользоватьУправленческуюОрганизацию | да: Предприятие | — | — | +| 571 | `ИспользоватьУпрощеннуюСхемуОплатыВЗакупках` | Использовать упрощенную схему оплаты в закупках | xs:boolean | ИспользоватьУпрощеннуюСхемуОплатыВЗакупках | нет | — | — | +| 572 | `ИспользоватьУпрощеннуюСхемуОплатыВПродажах` | Использовать упрощенную схему оплаты в продажах | xs:boolean | ИспользоватьУпрощеннуюСхемуОплатыВПродажах | нет | — | — | +| 573 | `ИспользоватьУчетДрагоценныхМатериалов` | Использовать учет драгоценных металлов и камней | xs:boolean | ИспользоватьУчетДрагоценныхМатериалов | да: НастройкиНоменклатуры | — | — | +| 574 | `ИспользоватьУчетНДС` | Использовать учет НДС | xs:boolean | ИспользоватьУчетНДС | нет | — | — | +| 575 | `ИспользоватьУчетПрослеживаемыхИмпортныхТоваров` | Использовать учет прослеживаемых импортных товаров | xs:boolean | ИспользоватьУчетПрослеживаемыхИмпортныхТоваров | да: УчетНДСиВЭД | — | — | +| 576 | `ИспользоватьУчетПрочихАктивовПассивов` | Использовать учет прочих активов пассивов | xs:boolean | ИспользоватьУчетПрочихАктивовПассивов | да: ФинансовыйРезультатИКонтроллинг | — | — | +| 577 | `ИспользоватьУчетПрочихДоходовРасходов` | Использовать учет прочих доходов и расходов | xs:boolean | ИспользоватьУчетПрочихДоходовРасходов | да: ФинансовыйРезультатИКонтроллинг | — | — | +| 578 | `ИспользоватьУчетПрочихДоходовРасходовРегл` | Использовать учет прочих доходов и расходов в регл. учете | xs:boolean | ИспользоватьУчетПрочихДоходовРасходовРегл | да: ФинансовыйРезультатИКонтроллинг | — | — | +| 579 | `ИспользоватьУчетСебестоимости` | Использовать учет себестоимости | xs:boolean | ИспользоватьУчетСебестоимости | да: ФинансовыйРезультатИКонтроллинг | — | — | +| 580 | `ИспользоватьФайловоеХранилище1СДокументооборота` | Использовать файловое хранилище 1С:Документооборота | xs:boolean | ИспользоватьФайловоеХранилище1СДокументооборота | нет | — | — | +| 581 | `ИспользоватьФасовкуВесовогоТовара` | Использовать фасовку весового товара | xs:boolean | — | да: НастройкиНоменклатуры | — | — | +| 582 | `ИспользоватьФорматыМагазинов` | Использовать форматы магазинов | xs:boolean | ИспользоватьФорматыМагазинов | да: CRMИМаркетинг | — | — | +| 583 | `ИспользоватьХарактеристикиНоменклатуры` | Использовать характеристики номенклатуры | xs:boolean | ИспользоватьХарактеристикиНоменклатуры | да: НастройкиНоменклатуры | — | — | +| 584 | `ИспользоватьЦеновыеГруппы` | Использовать ценовые группы | xs:boolean | ИспользоватьЦеновыеГруппы | да: CRMИМаркетинг | — | — | +| 585 | `ИспользоватьШаблоныСообщений` | Использовать шаблоны сообщений | xs:boolean | ИспользоватьШаблоныСообщений | нет | — | — | +| 586 | `ИспользоватьШифрование` | Использовать шифрование | xs:boolean | CRM_ИспользоватьШифрование; ИспользоватьШифрование | нет | — | — | +| 587 | `ИспользоватьШтрихкодированиеПечатныхФормОбъектов` | Использовать штрихкодирование печатных форм объектов | xs:boolean | ИспользоватьШтрихкодированиеПечатныхФормОбъектов | да: Продажи | — | — | +| 588 | `ИспользоватьЭлектроннуюПодписьВМоделиСервиса` | Использовать электронную подпись в модели сервиса | xs:boolean | ИспользоватьЭлектроннуюПодписьВМоделиСервиса | нет | — | — | +| 589 | `ИспользоватьЭлектроннуюПочту1СДокументооборота` | Использовать электронную почту 1С:Документооборота | xs:boolean | ИспользоватьЭлектроннуюПочту1СДокументооборота | нет | — | — | +| 590 | `ИспользоватьЭлектроннуюПочтуВШаблонахСообщений` | Использовать электронную почту в шаблонах сообщений | xs:boolean | ИспользоватьЭлектроннуюПочтуВШаблонахСообщений | нет | — | — | +| 591 | `ИспользоватьЭлектронныеПодписи` | Использовать электронные подписи | xs:boolean | CRM_ИспользоватьЭлектронныеПодписи; ИспользоватьЭПВПрисоединенныхФайлах; ИспользоватьЭлектронныеПодписи; ИспользоватьЭлектронныеПодписиЭД | нет | — | — | +| 592 | `ИспользуетсяМиграцияПриложений` | Используется миграция приложений | xs:boolean | ИспользуетсяМиграцияПриложений | нет | — | — | +| 593 | `ИспользуетсяОбменСБухгалтериейПредприятия` | Используется обмен с бухгалтерией предприятия | xs:boolean | ИспользуетсяОбменСБухгалтериейПредприятия | нет | — | — | +| 594 | `ИспользуетсяСборкаРазборкаИСерииНоменклатуры` | Используется сборка разборка и серии номенклатуры | xs:boolean | ИспользуетсяСборкаРазборкаИСерииНоменклатуры | нет | — | — | +| 595 | `ИспользуетсяУчетВЕдиницеИзмеренияТНВЭД` | Используется учет в единице измерения ТНВЭД | xs:boolean | ИспользуетсяУчетВЕдиницеИзмеренияТНВЭД | нет | — | — | +| 596 | `ИспользуютсяПрофилиБезопасности` | Используются профили безопасности | xs:boolean | ИспользуютсяПрофилиБезопасности | нет | — | — | +| 597 | `ИсточникДанныхАдресногоКлассификатора` | Источник данных адресного классификатора | xs:string | ИсточникДанныхАдресногоКлассификатора | нет | Пустая строка - загрузка в программу | — | + +### К + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 598 | `КаталогОбменаФайламиВМоделиСервиса` | Каталог обмена файлами в модели сервиса | xs:string | — | нет | — | — | +| 599 | `КаталогОбменаФайламиВМоделиСервисаLinux` | Каталог обмена файлами в модели сервиса Linux | xs:string | — | нет | — | — | +| 600 | `КаталогРасширенийКоличествоЭлементовВВыборке` | Максимальное количество элементов на странице каталога расширений | xs:decimal | — | нет | — | — | +| 601 | `КаталогРасширенийОтправлятьПревьюПриЗапросеСписка` | Отображать изображения в каталоге расширений | xs:boolean | — | нет | — | — | +| 602 | `КаталогСообщенийОбменаДаннымиДляLinux` | Каталог сообщений синхронизации для Linux | xs:string | — | нет | — | — | +| 603 | `КаталогСообщенийОбменаДаннымиДляWindows` | Каталог сообщений синхронизации для Windows | xs:string | — | нет | — | — | +| 604 | `КлассификаторОшибокКриптографии` | Классификатор ошибок криптографии | v8:ValueStorage | — | нет | — | — | +| 605 | `КлючОбластиДанных` | Ключ области данных | xs:string | — | нет | — | — | +| 606 | `КодДоступаКлючаЗащиты` | Код доступа ключа защиты | xs:string | — | нет | Код доступа ключа защиты | — | +| 607 | `КодПоследнегоУпаковочногоЛиста` | Код последнего упаковочного листа | xs:string | — | нет | — | — | +| 608 | `КоличествоДнейХраненияЗаархивированныхЧеков` | Количество дней хранения заархивированных чеков | xs:decimal | — | да: Продажи | — | — | +| 609 | `КоличествоДнейХраненияОтложенныхЧеков` | Количество дней хранения отложенных чеков | xs:decimal | — | да: Продажи | — | — | +| 610 | `КоличествоЗамеровВПакетеЭкспорта` | Количество замеров в пакете экспорта | xs:decimal | — | нет | — | — | +| 611 | `КоличествоПериодовABCКлассификацииНоменклатуры` | Количество периодов ABC классификации номенклатуры | xs:decimal | — | нет | — | — | +| 612 | `КоличествоПериодовABCКлассификацииПартнеров` | Количество периодов ABC классификации партнеров | xs:decimal | — | нет | — | — | +| 613 | `КоличествоПериодовXYZКлассификацииНоменклатуры` | Количество периодов XYZ классификации номенклатуры | xs:decimal | — | нет | — | — | +| 614 | `КоличествоПериодовXYZКлассификацииПартнеров` | Количество периодов XYZ классификации партнеров | xs:decimal | — | нет | — | — | +| 615 | `КоличествоПериодовДляАнализаНоменклатурыПродаваемойСовместно` | Количество периодов | xs:decimal | — | нет | — | — | +| 616 | `КоличествоПериодовРасчетаТоварныхОграничений` | Количество периодов расчета товарных ограничений | xs:decimal | — | нет | — | — | +| 617 | `КоличествоПотоковОбновленияДоступа` | Количество потоков обновления доступа | xs:decimal | — | нет | — | — | +| 618 | `КоличествоПотоковОбновленияИнформационнойБазы` | Количество потоков обновления информационной базы | xs:decimal | — | нет | — | — | +| 619 | `КоличествоПотоковРаспределенияВзаиморасчетов` | Количество потоков распределения взаиморасчетов | xs:decimal | — | нет | — | — | +| 620 | `КоличествоЭлементовВТранзакцииЗагрузкиДанных` | Количество элементов в транзакции загрузки данных | xs:decimal | — | нет | — | — | +| 621 | `КомплекснаяАвтоматизация` | Комплексная автоматизация | xs:boolean | КомплекснаяАвтоматизация | нет | — | — | +| 622 | `КонечнаяТочкаМенеджераСервиса` | Конечная точка менеджера сервиса | cfg:ExchangePlanRef.ОбменСообщениями | — | нет | — | — | +| 623 | `КонтекстАвторизации` | Контекст авторизации | cfg:EnumRef.УдалитьКонтекстыРаботыСЭД | — | нет | — | — | +| 624 | `КонтекстКриптографии` | Контекст криптографии | cfg:EnumRef.УдалитьКонтекстыРаботыСЭД | — | нет | — | — | +| 625 | `КонтекстРаботыИС` | Контекст работы ИС | v8:ValueStorage | — | нет | — | — | +| 626 | `КонтролироватьВыдачуПодОтчетВРазрезеЦелей` | Контролировать выдачу под отчет в разрезе целей | xs:boolean | КонтролироватьВыдачуПодОтчетВРазрезеЦелей | да: Казначейство | — | — | +| 627 | `КонтролироватьОстаткиНомеровГТДПриЗакупкеУПоставщикаПоСхемеТоварыВПути` | Контролировать остатки номеров ГТД при закупке у поставщика по схеме "товары в пути" | xs:boolean | — | нет | — | — | +| 628 | `КонтролироватьОстаткиНомеровГТДПриИмпортеПоСхемеТоварыВПути` | Контролировать остатки номеров ГТД при импорте по схеме "товары в пути" | xs:boolean | КонтролироватьОстаткиНомеровГТДПриИмпортеПоСхемеТоварыВПути | да: УчетНДСиВЭД | — | — | +| 629 | `КонтролироватьОстаткиТоваровОрганизаций` | Контролировать остатки товаров организаций | xs:boolean | КонтролироватьОстаткиТоваровОрганизаций | да: Предприятие, ФинансовыйРезультатИКонтроллинг | — | — | +| 630 | `КонтролироватьОстаткиТоваровОрганизацийКОформлениюПоПоступлениям` | Контролировать остатки товаров организаций к оформлению по поступлениям | xs:boolean | КонтролироватьОстаткиТоваровОрганизацийКОформлениюПоПоступлениям | да: Закупки, УчетНДСиВЭД | — | — | +| 631 | `КонтролироватьПревышениеЛимитовРасходаДенежныхСредств` | Контролировать превышение лимитов расхода денежных средств | xs:boolean | КонтролироватьПревышениеЛимитовРасходаДенежныхСредств | да: Казначейство | — | — | +| 632 | `КонтролироватьУникальностьНоменклатурыПоСочетаниюЗначенийРеквизитов` | Контролировать уникальность номенклатуры и характеристик по сочетанию значений реквизитов | xs:boolean | КонтролироватьУникальностьНоменклатурыПоСочетаниюЗначенийРеквизитов | да: НастройкиНоменклатуры | — | — | +| 633 | `КонтролироватьУникальностьРабочегоНаименованияНоменклатурыИХарактеристик` | Контролировать уникальность рабочего наименования номенклатуры и характеристик | xs:boolean | — | да: НастройкиНоменклатуры | — | — | +| 634 | `КопироватьОбластиДанныхИзЭталонной` | Копировать области данных из эталонной | xs:boolean | — | нет | — | — | +| 635 | `КоэффициентПересчетаВЕдиницыОбъема` | Коэффициент пересчета в единицы объема | xs:decimal | — | нет | — | — | +| 636 | `КоэффициентПересчетаВКубическиеМетры` | Коэффициент пересчета в кубические метры | xs:decimal | — | нет | — | — | +| 637 | `КоэффициентПересчетаВТонны` | Коэффициент пересчета в тонны | xs:decimal | — | нет | — | — | + +### Л + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 638 | `ликИспользоватьЛИК` | Использовать систему ЛИК:Бизнес | xs:boolean | ликИспользоватьЛИК | нет | — | — | +| 639 | `ликЛогин` | Ключ в системе ЛИК:Бизнес | xs:string | — | нет | — | — | +| 640 | `ликПароль` | Пароль в системе ЛИК:Бизнес | xs:string | — | нет | — | — | +| 641 | `ЛогинДляОтправкиSMS` | Логин для отправки SMS | xs:string | — | нет | — | — | +| 642 | `ЛогироватьЗапускиЗаданийОчереди` | Логировать запуски заданий очереди | xs:boolean | ЛогироватьЗапускиЗаданийОчереди | нет | — | — | + +### М + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 643 | `МаксимальнаяДлительностьВыполненияИсполняющегоФоновогоЗадания` | Максимальная длительность выполнения исполняющего фонового задания | xs:decimal | — | нет | — | — | +| 644 | `МаксимальноеКоличествоИсполняющихФоновыхЗаданий` | Максимальное количество исполняющих фоновых заданий | xs:decimal | — | нет | — | — | +| 645 | `МаксимальноеКоличествоЭлементовВДеревеОтборовНоменклатуры` | Максимальное количество элементов в дереве отборов номенклатуры | xs:decimal | — | да: НастройкиНоменклатуры | Максимальное количество значений свойств в дерево отборов списков номенклатуры и подбора номенклатуры. Если количество значений элементов больше заданного, то в указание значения отбора по этому свойству будет осуществляться через специальную форму. | — | +| 646 | `МаксимальныйРазмерФайла` | Максимальный размер файла | xs:decimal | — | нет | Максимальный размер файла для импорта с диска | — | +| 647 | `МаксимальныйРазмерФайлаДляПередачиВ1СДокументооборот` | Максимальный размер файла для передачи в 1С:Документооборот | xs:decimal | — | нет | Максимальный размер файла для передачи в 1С:Документооборот | — | +| 648 | `МаксимальныйРазмерФайлаОбластиДанных` | Максимальный размер файла области данных | xs:decimal | — | нет | Максимальный размер файла для импорта с диска | — | +| 649 | `МинимальнаяДостоверностьНоменклатурыПродаваемойСовместно` | Минимальная достоверность | xs:decimal | — | нет | — | — | +| 650 | `МинимальнаяЗначимостьНоменклатурыПродаваемойСовместно` | Минимальная значимость | xs:decimal | — | нет | — | — | +| 651 | `МинимальныйИнтервалРегламентныхЗаданийДОИОВМоделиСервиса` | Минимальный интервал регламентных заданий дополнительных отчетов и обработок в модели сервиса | xs:decimal | — | нет | — | — | +| 652 | `МинимальныйПроцентСлучаевНоменклатурыПродаваемойСовместно` | Минимальный процент случаев | xs:decimal | — | нет | — | — | + +### Н + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 653 | `НазначатьСкидкиПоКнопкеРасчетВЧекеККМ` | Назначать скидки по кнопке Расчет в чеке ККМ | xs:boolean | НазначатьСкидкиПоКнопкеРасчетВЧекеККМ | да: Продажи | — | — | +| 654 | `НаименованиеДляПечатиВидовНоменклатуры` | Наименование для печати видов номенклатуры | xs:string | — | да: Продажи | — | — | +| 655 | `НаименованиеКорневойПапкиФайлов1СДокументооборот` | Наименование корневой папки файлов 1С:Документооборота | xs:string | — | нет | — | — | +| 656 | `НастройкаПодчиненногоУзлаРИБЗавершена` | Настройка подчиненного узла РИБ Завершена | xs:boolean | — | нет | Отражает факт того, что в подчиненном узле РИБ настройка обмена была успешно завершена с использованием помощника настройки. | — | +| 657 | `НастройкаПроксиСервера` | Настройка прокси сервера | v8:ValueStorage | — | нет | Настройки прокси сервера для доступа к сети Интернет на стороне сервера 1С:Предприятие | — | +| 658 | `НастройкиВходаПользователей` | Настройки входа пользователей | v8:ValueStorage | — | нет | — | — | +| 659 | `НастройкиВыгрузкиНоменклатуры` | Настройки выгрузки номенклатуры | v8:ValueStorage | — | нет | — | — | +| 660 | `НастройкиВыполненияРегламентныхЗаданий` | Настройки выполнения регламентных заданий | v8:ValueStorage | — | нет | Только для файловой ИБ | — | +| 661 | `НастройкиЗакрытияМесяца` | Настройки закрытия месяца | v8:ValueStorage | — | нет | — | — | +| 662 | `НастройкиКолонтитулов` | Настройки колонтитулов | v8:ValueStorage | — | нет | — | — | +| 663 | `НастройкиНовостей` | Настройки новостей | v8:ValueStorage | — | нет | — | — | +| 664 | `НастройкиОбменаВЕТИС` | Настройки обмена ВетИС | v8:ValueStorage | — | нет | — | — | +| 665 | `НастройкиОбменаГосИС` | Настройки обмена ГосИС через ЭДО | v8:ValueStorage | — | нет | — | — | +| 666 | `НастройкиПодчиненногоУзлаРИБ` | Настройки подчиненного узла РИБ | xs:string | — | нет | Настройки для завершения создания обмена данными в подчиненном узле РИБ после его создания из начального образа | — | +| 667 | `НастройкиПрефиксацииШтрихкодов` | Настройки префиксации штрихкодов | v8:ValueStorage | — | нет | — | — | +| 668 | `НастройкиСканированияКодовМаркировкиИСМП` | Настройки сканирования кодов маркировки ИСМП | v8:ValueStorage | — | нет | — | — | +| 669 | `НачатПереходНаНовуюАрхитектуруВзаиморасчетов` | Начат переход на новую архитектуру взаиморасчетов | xs:boolean | — | нет | — | — | +| 670 | `НеБазоваяВерсия` | Не базовая версия | xs:boolean | НеБазоваяВерсия | нет | — | — | +| 671 | `НеВыбиратьВариантВыводаСкидокПриПечатиДокументовПродажи` | Не выбирать вариант вывода скидок при печати документов продажи | xs:boolean | НеВыбиратьВариантВыводаСкидокПриПечатиДокументовПродажи | нет | — | — | +| 672 | `НеВыгружатьИзображенияТорговыхПредложений` | Не выгружать изображения торговых предложений | xs:boolean | — | нет | Запрет выгрузки изображений торговых предложений в сервисе 1С:Бизнес-сеть | — | +| 673 | `НеДетализироватьЗаданияТорговымПредставителямПоНоменклатуре` | Не детализировать задания торговым представителям по номенклатуре | xs:boolean | НеДетализироватьЗаданияТорговымПредставителямПоНоменклатуре | нет | — | — | +| 674 | `НезависимоеИспользованиеДополнительныхОтчетовИОбработокВМоделиСервиса` | Независимое использование дополнительных отчетов и обработок в модели сервиса | xs:boolean | НезависимоеИспользованиеДополнительныхОтчетовИОбработокВМоделиСервиса | нет | — | — | +| 675 | `НезависимоеИспользованиеРасширенийВМоделиСервиса` | Независимое использование расширений в модели сервиса | xs:boolean | — | нет | — | — | +| 676 | `НеЗакрыватьЗаказыКлиентовБезПолнойОплаты` | Не закрывать заказы клиентов без полной оплаты | xs:boolean | НеЗакрыватьЗаказыКлиентовБезПолнойОплаты | да: Продажи | — | — | +| 677 | `НеЗакрыватьЗаказыКлиентовБезПолнойОтгрузки` | Не закрывать заказы клиентов без полной отгрузки | xs:boolean | НеЗакрыватьЗаказыКлиентовБезПолнойОтгрузки | да: Продажи | — | — | +| 678 | `НеЗакрыватьЗаказыНаВнутреннееПотреблениеБезПолнойОтгрузки` | Не закрывать заказы на внутреннее потребление без полной отгрузки | xs:boolean | НеЗакрыватьЗаказыНаВнутреннееПотреблениеБезПолнойОтгрузки | да: СкладИДоставка | — | — | +| 679 | `НеЗакрыватьЗаказыНаПеремещениеБезПолнойОтгрузки` | Не закрывать заказы на перемещение без полной отгрузки | xs:boolean | НеЗакрыватьЗаказыНаПеремещениеБезПолнойОтгрузки | да: СкладИДоставка | — | — | +| 680 | `НеЗакрыватьЗаказыНаСборкуБезПолнойОтгрузки` | Не закрывать заказы на сборку без полной отгрузки | xs:boolean | НеЗакрыватьЗаказыНаСборкуБезПолнойОтгрузки | да: СкладИДоставка | — | — | +| 681 | `НеЗакрыватьЗаказыПоставщикамБезПолногоПоступления` | Не закрывать заказы поставщикам без полного поступления | xs:boolean | НеЗакрыватьЗаказыПоставщикамБезПолногоПоступления | да: Закупки | — | — | +| 682 | `НеЗакрыватьЗаказыПоставщикамБезПолнойОплаты` | Не закрывать заказы поставщикам без полной оплаты | xs:boolean | НеЗакрыватьЗаказыПоставщикамБезПолнойОплаты | да: Закупки | — | — | +| 683 | `НеИспользоватьБизнесРегионы` | Не использовать бизнес-регионы | xs:boolean | НеИспользоватьБизнесРегионы | нет | — | — | +| 684 | `НеИспользоватьЖурналПлатежей` | Не использовать журнал платежей | xs:boolean | НеИспользоватьЖурналПлатежей | нет | — | — | +| 685 | `НеИспользоватьЗаявкиНаРасходованиеДенежныхСредств` | Не использовать заявки на расходование денежных средств | xs:boolean | НеИспользоватьЗаявкиНаРасходованиеДенежныхСредств | нет | — | — | +| 686 | `НеИспользоватьНесколькоВалют` | Не использовать несколько валют | xs:boolean | НеИспользоватьНесколькоВалют | нет | — | — | +| 687 | `НеИспользоватьНесколькоКасс` | Не использовать несколько касс | xs:boolean | НеИспользоватьНесколькоКасс | нет | — | — | +| 688 | `НеИспользоватьНесколькоКассККМ` | Не использовать несколько касс ККМ | xs:boolean | НеИспользоватьНесколькоКассККМ | нет | — | — | +| 689 | `НеИспользоватьНесколькоОрганизаций` | Не использовать несколько организаций | xs:boolean | НеИспользоватьНесколькоОрганизаций; НеИспользоватьНесколькоОрганизацийБухгалтерскийУчет | нет | — | — | +| 690 | `НеИспользоватьНесколькоРасчетныхСчетов` | Не использовать несколько расчетных счетов | xs:boolean | НеИспользоватьНесколькоРасчетныхСчетов | нет | — | — | +| 691 | `НеИспользоватьНесколькоСкладов` | Не использовать несколько складов | xs:boolean | НеИспользоватьНесколькоСкладов | нет | — | — | +| 692 | `НеИспользоватьПроверкуЗаданийЗакрытияМесяцаВОтчетахРегл` | Не использовать проверку заданий закрытия месяца в отчетах регл | xs:boolean | НеИспользоватьПроверкуЗаданийЗакрытияМесяцаВОтчетахРегл | нет | — | — | +| 693 | `НеИспользоватьРазделениеПоОбластямДанных` | Не использовать разделение по областям данных | xs:boolean | CRM_РаботаВЛокальномРежиме; РаботаВЛокальномРежиме; РаботаВЛокальномРежимеМониторПортала1СИТС; СтандартныеПодсистемыВЛокальномРежиме; ТехнологияСервисаВЛокальномРежиме; ТехнологияСервисаВЛокальномРежимеУТКАУП | нет | — | — | +| 694 | `НеИспользоватьРазделениеПоОбластямДанныхИЭтоКА` | Не использовать разделение по областям данных и это КА | xs:boolean | ТехнологияСервисаВЛокальномРежимеИЭтоКА | нет | — | — | +| 695 | `НеИспользоватьРазделениеПоОбластямДанныхИЭтоУТ` | Не использовать разделение по областям данных и это УТ | xs:boolean | ТехнологияСервисаВЛокальномРежимеИЭтоУТ | нет | — | — | +| 696 | `НеИспользоватьРасширенноеОбеспечениеПотребностей` | Не использовать расширенное обеспечение потребностей | xs:boolean | НеИспользоватьРасширенноеОбеспечениеПотребностей | нет | — | — | +| 697 | `НеИспользоватьРозничныеПродажи` | Не использовать розничные продажи | xs:boolean | НеИспользоватьРозничныеПродажи | нет | — | — | +| 698 | `НеИспользоватьСчетаНаОплатуВыбиратьВариантВыводаСкидок` | Не использовать счета на оплату и выбирать вариант вывода скидок | xs:boolean | НеИспользоватьСчетаНаОплатуВыбиратьВариантВыводаСкидок | нет | — | — | +| 699 | `НеИспользоватьСчетаНаОплатуНеВыбиратьВариантВыводаСкидок` | Не использовать счета на оплату и не выбирать вариант вывода скидок | xs:boolean | НеИспользоватьСчетаНаОплатуНеВыбиратьВариантВыводаСкидок | нет | — | — | +| 700 | `НеИспользоватьЦеновыеГруппы` | Не использовать ценовые группы | xs:boolean | НеИспользоватьЦеновыеГруппы | нет | — | — | +| 701 | `НеНоваяАрхитектураВзаиморасчетов` | Не новая архитектура взаиморасчетов | xs:boolean | НеНоваяАрхитектураВзаиморасчетов | нет | — | — | +| 702 | `НеПечататьФискальныйЧекПриОтправкеЭлектронногоЧекаПокупателю` | Не печатать фискальный чек при отправке электронного чека покупателю | xs:boolean | НеПечататьФискальныйЧекПриОтправкеЭлектронногоЧекаПокупателю | да: Продажи, ФЗ54 | — | — | +| 703 | `НеПоказыватьРекомендацииБизнесСеть` | Не показывать рекомендации бизнес сеть | xs:boolean | НеПоказыватьРекомендацииБизнесСеть | нет | — | — | +| 704 | `НеФормироватьФинансовыйРезультат` | Не формировать финансовый результат | xs:boolean | НеФормироватьФинансовыйРезультат | нет | — | — | +| 705 | `НоваяАрхитектураВзаиморасчетов` | Новая архитектура взаиморасчетов | xs:boolean | НоваяАрхитектураВзаиморасчетов | да: Казначейство | — | — | +| 706 | `НомерЗаданияКЗакрытиюМесяца` | Номер задания к закрытию месяца | xs:decimal | — | нет | — | — | +| 707 | `НомерЗаданияКРаспределениюРасчетовСКлиентами` | Номер задания к распределению расчетов с клиентами | xs:decimal | — | нет | — | — | +| 708 | `НомерЗаданияКРаспределениюРасчетовСПоставщиками` | Номер задания к распределению расчетов с поставщиками | xs:decimal | — | нет | — | — | +| 709 | `НомерЗаданияКРасчетуСебестоимости` | Номер задания к расчету себестоимости | xs:decimal | — | нет | — | — | +| 710 | `НомерЗаданияКФормированиюДвиженийПоНДС` | Номер задания к формированию движений по НДС | xs:decimal | — | нет | — | — | +| 711 | `НормативныйВидЦен` | Нормативный вид цен | cfg:CatalogRef.ВидыЦен | — | да: Продажи | — | — | + +### О + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 712 | `ОбновлятьКонтактнуюИнформациюПартнеровПриОтправкеЭлектронныхЧеков` | Обновлять контактную информацию партнеров при отправке электронных чеков | xs:boolean | — | да: ФЗ54 | — | — | +| 713 | `ОбщиеФайлыОбменСБанками` | Общие файлы для обмена с сервисом 1С:ДиректБанк | v8:ValueStorage | — | нет | — | — | +| 714 | `ОграничиватьДоступНаУровнеЗаписей` | Ограничивать доступ на уровне записей | xs:boolean | ОграничиватьДоступНаУровнеЗаписей | да: CRMИМаркетинг, НастройкиНоменклатуры | — | — | +| 715 | `ОграничиватьДоступНаУровнеЗаписейУниверсально` | Ограничивать доступ на уровне записей универсально | xs:boolean | ОграничиватьДоступНаУровнеЗаписейУниверсально | нет | — | — | +| 716 | `ОперацияПриЗакрытииКассовойСмены` | Операция при закрытии кассовой смены | cfg:EnumRef.ОперацииПриЗакрытииКассовойСмены | — | да: Продажи | — | — | +| 717 | `ОптимизироватьЗапасыРаспределительногоЦентра` | Оптимизировать запасы распределительного центра | xs:boolean | — | да: СкладИДоставка | — | — | +| 718 | `ОрганизацияНаКоторуюЗарегистрированаПрограмма` | Организация, на которую зарегистрирована программа | xs:string | — | нет | — | — | +| 719 | `ОсновнойВариантКлассификацииЗадолженности` | Основной вариант классификации задолженности | cfg:CatalogRef.ВариантыКлассификацииЗадолженности | — | нет | — | — | +| 720 | `ОсновнойКалендарьПредприятия` | Основной график работы предприятия | cfg:CatalogRef.Календари | — | да: Предприятие | Ссылка на график работы по умолчанию | — | +| 721 | `ОсновнойСпособОбеспеченияПотребностей` | Основной способ обеспечения потребностей | cfg:CatalogRef.СпособыОбеспеченияПотребностей | — | нет | — | — | +| 722 | `ОсновнойЯзык` | Основной язык | xs:string | — | нет | — | — | +| 723 | `ОтветственныйВДокументах` | Ответственный в документах | xs:boolean | ОтветственныйВДокументах | нет | — | — | +| 724 | `ОтключитьОчередьПередачиЗаписейСкладскогоЖурналаВЕТИС` | Не использовать очередь передачи записей складского журнала ВетИС | xs:boolean | — | нет | — | — | +| 725 | `ОтложенноеОбновлениеВГлавномУзлеЗавершеноУспешно` | Отложенное обновление в главном узле завершено успешно | xs:boolean | ОтложенноеОбновлениеВГлавномУзлеЗавершеноУспешно | нет | — | — | +| 726 | `ОтложенноеОбновлениеЗавершеноУспешно` | Отложенное обновление завершено успешно | xs:boolean | ОтложенноеОбновлениеЗавершеноУспешно | нет | — | — | +| 727 | `ОтображатьВнеоборотныеАктивы2_2` | Отображать команды для ведения учета внеоборотных активов версии 2.2 | xs:boolean | ОтображатьВнеоборотныеАктивы2_2 | нет | — | — | +| 728 | `ОтображениеСкидокВПечатныхФормахДокументовПродажи` | Отображение скидок в печатных формах документов продажи | cfg:EnumRef.ВариантыВыводаСкидокВПечатныхФормах | — | да: Продажи | — | — | +| 729 | `ОтправкаЭлектронныхЧековПослеПробитияЧека` | Отправка электронных чеков после пробития чека | xs:boolean | — | да: Продажи, ФЗ54 | — | — | +| 730 | `ОтправлятьВходящиеДокументыНаУтверждение` | Отправлять входящие документы на утверждение | xs:boolean | — | нет | — | — | +| 731 | `ОтправлятьПисьмаВФорматеHTML` | Отправлять письма в формате HTML | xs:boolean | ОтправлятьПисьмаВФорматеHTML | нет | — | — | +| 732 | `ОтправлятьЭлектронныеЧекиПоEmailЧерезОФД` | Отправлять электронные чеки по E-mail через ОФД | xs:boolean | — | да: Продажи, ФЗ54 | — | — | +| 733 | `ОтправлятьЭлектронныеЧекиПоSMSЧерезОФД` | Отправлять электронные чеки по SMS через ОФД | xs:boolean | — | да: Продажи, ФЗ54 | — | — | +| 734 | `ОценкаПроизводительностиПериодЗаписи` | Оценка производительности период записи | xs:decimal | — | нет | — | — | + +### П + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 735 | `ПараметрыАдминистрированияИБ` | Параметры администрирования ИБ | v8:ValueStorage | — | нет | Параметры администрирования: "ИмяАдминистратораИБ", "ПарольАдминистратораИБ", "ИмяАдминистратораКластера", "ПарольАдминистратораКластера", "ПортКластераСерверов", "ПортАгентаСервера" | — | +| 736 | `ПараметрыАдресногоКлассификатора` | Параметры адресного классификатора | v8:ValueStorage | — | нет | — | — | +| 737 | `ПараметрыБлокировкиРаботыСВнешнимиРесурсами` | Параметры блокировки работы с внешними ресурсами | v8:ValueStorage | — | нет | — | — | +| 738 | `ПараметрыВариантовОтчетов` | Параметры вариантов отчетов | v8:ValueStorage | — | нет | Таблица: ИмяФункциональнойОпции, Отчет, ПредопределенныйВариант | — | +| 739 | `ПараметрыДополнительныхРеквизитовИСведений` | Параметры дополнительных реквизитов и сведений | v8:ValueStorage | — | нет | — | — | +| 740 | `ПараметрыЗапускаИнтерактивнойПроцедурыЗагрузки` | Параметры запуска интерактивной процедуры загрузки | v8:ValueStorage | — | нет | — | — | +| 741 | `ПараметрыИтоговИАгрегатов` | Параметры итогов и агрегатов | v8:ValueStorage | — | нет | — | — | +| 742 | `ПараметрыОбработчиковОбновления` | Параметры обработчиков обновления | v8:ValueStorage | — | нет | — | — | +| 743 | `ПараметрыОграниченияДоступа` | Параметры ограничения доступа | v8:ValueStorage | — | нет | — | — | +| 744 | `ПараметрыРаботыПользователей` | Параметры работы пользователей | v8:ValueStorage | — | нет | — | — | +| 745 | `ПараметрыРезервногоКопирования` | Параметры резервного копирования | v8:ValueStorage | — | нет | — | — | +| 746 | `ПараметрыСверткиИБ` | Параметры свертки ИБ | v8:ValueStorage | — | нет | — | — | +| 747 | `ПараметрыСлужебныхСобытий` | Параметры служебных событий | v8:ValueStorage | — | нет | — | — | +| 748 | `ПараметрыХраненияФайловВИБ` | Параметры хранения файлов в ИБ | v8:ValueStorage | — | нет | Параметры: "РасширенияФайлов", "МаксимальныйРазмер" | — | +| 749 | `ПараметрыЦентраМониторинга` | Параметры центра мониторинга | v8:ValueStorage | — | нет | — | — | +| 750 | `ПарольДляДоговоров` | Пароль для договоров | xs:string | — | нет | — | — | +| 751 | `ПарольДляОтправкиSMS` | Пароль для отправки SMS | xs:string | — | нет | — | — | +| 752 | `ПарольСлужебногоПользователяМенеджераСервиса` | Пароль служебного пользователя менеджера сервиса | xs:string | — | нет | — | — | +| 753 | `ПартионныйУчетВерсии22` | Партионный учет версии 2.2 | xs:boolean | ПартионныйУчетВерсии22 | да: Закупки, УчетНДСиВЭД, ФинансовыйРезультатИКонтроллинг | — | — | +| 754 | `ПервоеОбновлениеДоступаЗавершилось` | Первое обновление доступа завершилось | xs:boolean | — | нет | — | — | +| 755 | `ПеремещатьТоварыДругихОрганизаций` | Перемещать товары других организаций | xs:boolean | — | да: СкладИДоставка | — | — | +| 756 | `ПереоцениватьВалютныеСредстваПоДням` | Переоценивать валютные средства по дням | xs:boolean | — | да: Казначейство, Предприятие | — | — | +| 757 | `ПериодABCКлассификацииНоменклатуры` | Период ABC классификации номенклатуры | cfg:EnumRef.Периодичность | — | нет | — | — | +| 758 | `ПериодABCКлассификацииПартнеров` | Период ABC классификации партнеров | cfg:EnumRef.Периодичность | — | нет | — | — | +| 759 | `ПериодXYZКлассификацииНоменклатуры` | Период XYZ классификации номенклатуры | cfg:EnumRef.Периодичность | — | нет | — | — | +| 760 | `ПериодXYZКлассификацииПартнеров` | Период XYZ классификации партнеров | cfg:EnumRef.Периодичность | — | нет | — | — | +| 761 | `ПериодичностьВводаСезонныхКоэффициентов` | Периодичность ввода сезонных коэффициентов | cfg:EnumRef.Периодичность | — | да: БюджетированиеИПланирование | — | — | +| 762 | `ПериодичностьДляАнализаНоменклатурыПродаваемойСовместно` | Периодичность | cfg:EnumRef.Периодичность | — | нет | — | — | +| 763 | `ПериодРасчетаТоварныхОграничений` | Период расчета товарных ограничений | cfg:EnumRef.Периодичность | — | нет | — | — | +| 764 | `ПериодХраненияЗамеров` | Период хранения замеров | xs:decimal | — | нет | — | — | +| 765 | `ПериодХраненияИсторииЗапусковЗаданийОчереди` | Период хранения истории запусков заданий очереди (часов) | xs:decimal | — | нет | — | — | +| 766 | `ПериодыРезервовТоваровОрганизацийАктуальны` | Периоды резервов товаров организаций актуальны | xs:boolean | — | нет | — | — | +| 767 | `ПисьмаОбменСБанками` | Письма обмен с банками | xs:boolean | ПисьмаОбменСБанками | нет | — | — | +| 768 | `ПовторитьЗагрузкуСообщенияОбменаДаннымиПередЗапуском` | Повторить загрузку сообщения обмена данными перед запуском | xs:boolean | — | нет | — | — | +| 769 | `ПоддержкаПлатежейВСоответствииС275ФЗ` | Поддержка платежей в соответствии с 275-ФЗ | xs:boolean | ПоддержкаПлатежейВСоответствииС275ФЗ | да: Закупки, Казначейство, ФЗ275 | — | — | +| 770 | `ПоддержкаРезервногоКопирования` | Поддержка резервного копирования | xs:boolean | ПоддержкаРезервногоКопирования | нет | — | — | +| 771 | `ПодключениеКСервисуИППССервера` | Устанавливать подключение с сервера 1С:Предприятия | xs:boolean | — | нет | — | — | +| 772 | `ПодпериодXYZКлассификацииНоменклатуры` | Подпериод XYZ классификации номенклатуры | cfg:EnumRef.Периодичность | — | нет | — | — | +| 773 | `ПодпериодXYZКлассификацииПартнеров` | Подпериод XYZ классификации партнеров | cfg:EnumRef.Периодичность | — | нет | — | — | +| 774 | `ПодставлятьЗначенияПоУмолчаниюВместоПустых` | Подставлять значения по умолчанию вместо пустых | xs:boolean | — | да: CRMИМаркетинг, БюджетированиеИПланирование, Закупки, Интерфейс, Казначейство, НастройкиНоменклатуры, НастройкиРМКИОборудования, НачальноеЗаполнение (+ещё 7) | — | — | +| 775 | `ПоказыватьКомандуУстановитьРасширениеМаг1с` | Показывать команду установить расширение Маг1С | xs:boolean | ПоказыватьКомандуУстановитьРасширениеМаг1с | нет | — | — | +| 776 | `ПоказыватьПодсказкиПокупателейБизнесСеть` | Показывать подсказки покупателей 1С:Бизнес-сеть | xs:boolean | — | нет | Признак включения отображений подсказок покупателей в сервисе 1С:Бизнес-сеть | — | +| 777 | `ПоказыватьПодсказкиПоставщиковБизнесСеть` | Показывать подсказки поставщиков 1С:Бизнес-сеть | xs:boolean | — | нет | Признак включения отображений подсказок поставщиков в сервисе 1С:Бизнес-сеть | — | +| 778 | `ПокупкаТоваровОблагаемыхНДСУПокупателя` | Покупка товаров, облагаемых НДС у покупателя | xs:boolean | ПокупкаТоваровОблагаемыхНДСУПокупателя | да: УчетНДСиВЭД | — | — | +| 779 | `ПорядокЗачетаДокументовПоДатеОперации` | Порядок зачета документов по дате операции | xs:decimal | — | да: Казначейство | — | — | +| 780 | `ПорядокОформленияНакладныхРасходныхОрдеров` | Порядок оформления накладных и расходных ордеров | cfg:EnumRef.ПорядокОформленияНакладныхРасходныхОрдеров | — | да: СкладИДоставка | — | — | +| 781 | `ПоследнееОбновлениеДоступа` | Последнее обновление доступа | v8:ValueStorage | — | нет | — | — | +| 782 | `ПредельноеКоличествоЗаписейВРазделеДекларацииПоНДС` | Предельное количество записей в разделах 8-12 декларации по НДС (с 1 кв. 2015 года) | xs:decimal | — | нет | — | — | +| 783 | `ПредлагатьДополнитьДокументыМногооборотнойТарой` | Предлагать дополнить документы многооборотной тарой | xs:boolean | ПредлагатьДополнитьДокументыМногооборотнойТарой | да: НастройкиНоменклатуры | — | — | +| 784 | `ПредопределенныеШаблоныСообщений` | Предопределенные шаблоны сообщений | v8:ValueStorage | — | нет | — | — | +| 785 | `ПредставлениеОбластиДанных` | Представление области данных | xs:string | — | нет | — | — | +| 786 | `ПрефиксВесовогоШтрихкода` | Префикс весового штрихкода | xs:decimal | — | нет | — | — | +| 787 | `ПрефиксОбластиДанных` | Префикс области данных | xs:string | — | нет | — | — | +| 788 | `ПрефиксПоследнегоАвтономногоРабочегоМеста` | Префикс последнего автономного рабочего места | xs:string | — | нет | Хранит значение префикса для последнего автономного рабочего места, созданного в системе | — | +| 789 | `ПрефиксСервисаДляНовостей` | Префикс сервиса для новостей | xs:string | — | нет | — | — | +| 790 | `ПрефиксУзлаРаспределеннойИнформационнойБазы` | Префикс информационной базы | xs:string | ПрефиксИнформационнойБазы | нет | — | — | +| 791 | `ПрефиксШтрихкодовУзлаРИБ` | Префикс штрихкодов узла РИБ | xs:string | — | да: НастройкиНоменклатуры | — | — | +| 792 | `ПрефиксШтучногоШтрихкода` | Префикс штучного штрихкода | xs:decimal | — | нет | — | — | +| 793 | `ПриоритетОбновленияВОбластяхДанных` | Приоритет обновления в областях данных | xs:string | — | нет | — | — | +| 794 | `ПровайдерSMS` | Провайдер SMS | cfg:EnumRef.ПровайдерыSMS | — | нет | — | — | +| 795 | `ПровайдерЭП` | Провайдер ЭП | xs:string | — | нет | — | — | +| 796 | `ПроверятьЗаполнениеНомеровГТДПриЗакупкеУПоставщикаПоСхемеТоварыВПути` | Проверять заполнение номеров ГТД при закупке у поставщика по схеме "товары в пути" | xs:boolean | КонтролироватьОстаткиНомеровГТДПриЗакупкеУПоставщикаПоСхемеТоварыВПути; ПроверятьЗаполнениеНомеровГТДПриЗакупкеУПоставщикаПоСхемеТоварыВПути | да: УчетНДСиВЭД | — | — | +| 797 | `ПроверятьИспользованиеУдаляемыхОбъектов` | Проверять использование удаляемых объектов | xs:boolean | — | нет | — | — | +| 798 | `ПроверятьЭлектронныеПодписиНаСервере` | Проверять электронные подписи на сервере | xs:boolean | ПроверятьЭлектронныеПодписиНаСервере | нет | — | — | +| 799 | `ПродажаТоваровОблагаемыхНДСУПокупателя` | Продажа товаров, облагаемых НДС у покупателя | xs:boolean | ПродажаТоваровОблагаемыхНДСУПокупателя | да: Продажи, УчетНДСиВЭД | — | — | +| 800 | `ПрофильБезопасностиИнформационнойБазы` | Профиль безопасности информационной базы | — | — | нет | — | — | +| 801 | `ПутьКТомуБезУчетаРегиональныхНастроек` | Путь к тому без учета региональных настроек | xs:boolean | — | нет | — | — | + +### Р + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 802 | `Ра_БлокировкаЗаказаКлиента` | Блокировка заказа клиента | xs:boolean | — | нет | — | — | +| 803 | `РазделыОписанияИзмененийСистемы` | Разделы описания изменений системы | v8:ValueStorage | — | нет | — | — | +| 804 | `РазмерБлокаПередачиФайла` | Размер блока передачи файла | xs:decimal | — | нет | — | — | +| 805 | `РазрешатьПродажуАлкогольнойПродукцииБезСопоставленияЕГАИС` | Разрешать продажу алкогольной продукции без сопоставления ЕГАИС | xs:boolean | — | да: Продажи | — | — | +| 806 | `РазрешенаРаботаСНовостями` | Разрешена работа с новостями | xs:boolean | РазрешенаРаботаСНовостями | нет | — | — | +| 807 | `РазрешенаРаботаСНовостямиЧерезИнтернет` | Разрешена работа с новостями через интернет | xs:boolean | РазрешенаРаботаСНовостямиЧерезИнтернет | нет | — | — | +| 808 | `РазрешитьВыборВерсииФФДПриПечатиЧеков` | Разрешить печать чеков по версии ФФД 1.0.5 для оборудования с ФФД 1.0 | xs:boolean | — | да: Продажи, ФЗ54 | — | — | +| 809 | `РазрешитьВыполнениеДООРегламентнымиЗаданиямиВМоделиСервиса` | Разрешить выполнение дополнительных отчетов и обработок регламентными заданиями в модели сервиса | xs:boolean | — | нет | АПК:58 в имени используется сокращение | — | +| 810 | `РазрешитьОбособлениеТоваровСверхПотребности` | Разрешить обособление товаров сверх потребности | xs:boolean | РазрешитьОбособлениеТоваровСверхПотребности | да: СкладИДоставка | — | — | +| 811 | `РаспределениеДопРасходовПоВыбывшимТоварам` | Распределение доп. расходов по выбывшим товарам | xs:boolean | — | да: ФинансовыйРезультатИКонтроллинг | — | — | +| 812 | `РаспределятьПлановыеРасчетыФоновымЗаданием` | Распределять плановые расчеты фоновым заданием | xs:boolean | — | да: Казначейство | — | — | +| 813 | `РаспределятьФактическиеРасчетыФоновымЗаданием` | Распределять фактические расчеты фоновым заданием | xs:boolean | — | нет | — | — | +| 814 | `РассчитыватьПредварительнуюСтоимостьРегламентнымЗаданием` | Рассчитывать предварительную стоимость регламентным заданием | xs:boolean | РассчитыватьПредварительнуюСтоимостьРегламентнымЗаданием | да: ФинансовыйРезультатИКонтроллинг | — | — | +| 815 | `РасходныеОрдераФормируютсяМенеджером` | Расходные ордера формируются менеджером | xs:boolean | РасходныеОрдераФормируютсяМенеджером | нет | — | — | +| 816 | `РегистрационныйНомерПрограммы` | Регистрационный номер программы | xs:string | — | нет | — | — | +| 817 | `РегистрироватьШтрихкодПриСозданииНоменклатуры` | Регистрировать штрихкод при создании номенклатуры | xs:boolean | РегистрироватьШтрихкодПриСозданииНоменклатуры | нет | — | — | +| 818 | `РедактироватьАдресаДоставкиТолькоВДиалоге` | Редактировать адреса доставки только в диалоге | xs:boolean | РедактироватьАдресаДоставкиТолькоВДиалоге | да: СкладИДоставка | — | — | +| 819 | `РежимИспользованияИнформационнойБазы` | Режим использования информационной базы | cfg:EnumRef.РежимыИспользованияИнформационнойБазы | — | нет | — | — | +| 820 | `РежимОтладки` | Режим отладки | xs:boolean | — | нет | — | — | +| 821 | `РежимОчисткиФайлов` | Режим очистки файлов | cfg:EnumRef.РежимыОчисткиФайлов | — | нет | — | — | +| 822 | `РежимРаботыСТестовымКонтуромВЕТИС` | Режим работы с тестовым контуром ВетИС | xs:boolean | РежимРаботыСТестовымКонтуромВЕТИС | нет | — | — | +| 823 | `РежимРаботыСТестовымКонтуромИСМП` | Режим работы с тестовым контуром ИС МП | xs:boolean | РежимРаботыСТестовымКонтуромИСМП | нет | — | — | +| 824 | `РежимФормированияРасходныхОрдеров` | Режим формирования расходных ордеров | cfg:EnumRef.РежимыФормированияРасходныхОрдеров | — | да: СкладИДоставка | — | — | + +### С + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 825 | `СайтСоздан` | Сайт создан | xs:boolean | СайтСоздан | нет | — | — | +| 826 | `СведенияОБлокируемыхОбъектах` | Сведения о блокируемых объектах | v8:ValueStorage | — | нет | — | — | +| 827 | `СведенияОбОбновленииИБ` | Сведения об обновлении ИБ | v8:ValueStorage | — | нет | — | — | +| 828 | `СвойстваСПАРКРиски` | Свойства 1СПАРК Риски | v8:ValueStorage | — | нет | — | — | +| 829 | `СерверЛицензирования` | Сервер лицензирования | xs:string | — | нет | Адрес сервера лицензирования | — | +| 830 | `СервисПереводаТекста` | Сервис перевода текста | cfg:EnumRef.СервисыПереводаТекста | — | нет | — | — | +| 831 | `СинхронизироватьДанныеСПриложениемВИнтернетеПриЗавершенииРаботыПрограммы` | Синхронизировать данные с приложением в Интернете при завершении работы программы | xs:boolean | — | нет | — | — | +| 832 | `СинхронизироватьДанныеСПриложениемВИнтернетеПриНачалеРаботыПрограммы` | Синхронизировать данные с приложением в Интернете при начале работы программы | xs:boolean | — | нет | — | — | +| 833 | `СинхронизироватьФайлы` | Синхронизировать файлы с облачными сервисами | xs:boolean | ИспользоватьСинхронизациюФайлов | нет | — | — | +| 834 | `смсИмяПользователя` | Имя пользователя SMS4B | xs:string | — | нет | Имя пользователя для подключения к серверу работы с сообщениями | — | +| 835 | `смсИспользоватьСМС` | Использовать SMS | xs:boolean | — | нет | Дает возможность использовать модуль для отправки SMS | — | +| 836 | `смсПарольПользователя` | Пароль пользователя SMS4B | xs:string | — | нет | Пароль пользователя для подключения к серверу работы с сообщениями | — | +| 837 | `СоздаватьКонтрагентовАвтоматическиБЭД` | Создавать контрагентов автоматически БЭД | xs:boolean | — | нет | — | — | +| 838 | `СоздаватьПодкаталогиСИменамиВладельцев` | Создавать подкаталоги с именами владельцев | xs:boolean | — | нет | — | — | +| 839 | `СоздаватьЭлектронныеПодписиНаСервере` | Создавать электронные подписи на сервере | xs:boolean | СоздаватьЭлектронныеПодписиНаСервере | нет | — | — | +| 840 | `СообщениеБлокировкиПриОбновленииКонфигурации` | Сообщение блокировки при обновлении конфигурации | xs:string | — | нет | — | — | +| 841 | `СообщениеОбменаДаннымиИзГлавногоУзла` | Сообщение обмена данными из главного узла | v8:ValueStorage | — | нет | — | — | +| 842 | `СписокЗапрещенныхРасширений` | Список запрещенных расширений | xs:string | — | нет | — | — | +| 843 | `СписокЗапрещенныхРасширенийОбластиДанных` | Список запрещенных расширений области данных | xs:string | — | нет | — | — | +| 844 | `СписокРасширенийТекстовыхФайлов` | Список расширений текстовых файлов | xs:string | — | нет | — | — | +| 845 | `СписокРасширенийФайловOpenDocument` | Список расширений файлов OpenDocument | xs:string | — | нет | — | — | +| 846 | `СписокРасширенийФайловOpenDocumentОбластиДанных` | Список расширений файлов OpenDocument | xs:string | — | нет | — | — | +| 847 | `СпособХраненияФайлов` | Способ хранения файлов | xs:string | — | нет | Способы хранения: "ВИнформационнойБазе", "ВТомахНаДиске", "ВИнформационнойБазеИТомахНаДиске" | — | +| 848 | `СрокВыставленияСчетаФактуры` | Срок выставления счета-фактуры согласно п.3 ст. 168 НК РФ | xs:decimal | — | нет | — | — | +| 849 | `СрокХраненияИспользованныхКодовМаркировки` | Срок хранения использованных кодов маркировки в пуле, дней | xs:decimal | — | нет | Для полностью оформленных оснований и распечатанных кодов без основания | — | +| 850 | `СрокХраненияПакетаЭД` | Срок хранения пакета ЭД | xs:decimal | — | нет | Количество дней, по истечению которых, обработанный пакет эд будет помечен на удаление регламентным заданием | — | +| 851 | `СтатусОбновленияКонфигурации` | Статус обновления конфигурации | v8:ValueStorage | — | нет | — | — | +| 852 | `СтатусыОбъектовПомощникаЗаполненияНастроекИСправочников` | Статусы объектов помощника заполнения настроек и справочников | v8:ValueStorage | — | нет | — | — | +| 853 | `СтоимостьТоваровПриОценкеРентабельностиПродажи` | Стоимость товаров при оценке рентабельности продажи | cfg:EnumRef.СтоимостьТоваровПриОценкеРентабельностиПродажи | — | да: Продажи | — | — | +| 854 | `сфпCLONServerIP` | IP- адрес сервера CLON | xs:string | — | нет | IP- адрес сервера CLON | — | +| 855 | `сфпCLONServerLogin` | Имя пользователя CLON | xs:string | — | нет | Имя пользователя для подключения к серверу CLON | — | +| 856 | `сфпCLONServerPassword` | Пароль пользователя CLON | xs:string | — | нет | Пароль пользователя для подключения к серверу CLON | — | +| 857 | `сфпCLONServerPort` | Порт сервера CLON | xs:decimal | — | нет | Порт сервера CLON | — | +| 858 | `сфпCLONType` | Тип CLON | cfg:EnumRef.сфпCLONType | — | нет | Тип CLON | — | +| 859 | `сфпВариантПодключенияСервераВзаимодействия` | Вариант подключения Сервера взаимодействия | xs:string | — | нет | — | — | +| 860 | `сфпВнутренниеНомераИнформационнойБазы` | Внутренние телефонные номера Информационной базы | xs:string | — | нет | — | — | +| 861 | `сфпДатаИсторииЗвонков` | Дата истории звонков | xs:dateTime | — | нет | Дата истории звонков СофтФон | — | +| 862 | `сфпДатаРечевойАналитики` | Дата последнего звонка Речевой аналитики | xs:dateTime | — | нет | Дата последнего звонка, обработанного системой Речевой аналитики (Софтфон) | — | +| 863 | `сфпДействиеПриОшибкеЗагрузкиИсторииЗвонков` | Действие при ошибке загрузки истории звонков | cfg:EnumRef.сфпДействияПриОшибкеЗагрузкиИсторииЗвонков | — | нет | — | — | +| 864 | `сфпДополнительнаяИнформацияКонтактов` | Дополнительная информация контактов (СофтФон) | xs:string | — | нет | — | — | +| 865 | `сфпЖурналЗвонковОбновлен` | Журнал звонков обновлен | xs:boolean | — | нет | — | — | +| 866 | `сфпЗагружатьВнутренниеЗвонки` | Загружать внутренние звонки | xs:boolean | — | нет | Загружать внутренние звонки | — | +| 867 | `сфпЗапретитьИзменениеДлительностиЗвонка` | Запретить изменение длительности телефонного разговора | xs:boolean | — | нет | Запретить изменение длительности телефонного разговора | — | +| 868 | `сфпИдентификаторЖурналаЗвонковСистемыВзаимодействия` | Идентификатор журнала звонков системы взаимодействия | xs:string | — | нет | — | — | +| 869 | `сфпИдентификаторМаршрутизации` | Идентификатор таблицы маршрутизации | xs:string | — | нет | Идентификатор таблицы маршрутизации | — | +| 870 | `сфпИмяСервера` | Имя сервера СофтФон | xs:string | — | нет | Имя сервера СофтФон | — | +| 871 | `сфпИспользоватьCLON` | Использовать систему записи телефонных переговоров CLON | xs:boolean | — | нет | Использовать систему записи телефонных переговоров CLON | — | +| 872 | `сфпИспользоватьCoMagic` | Использовать коллтрекинг | xs:boolean | сфпИспользоватьCoMagic | нет | АПК:1032 не проверять на орфографию синоним | — | +| 873 | `сфпИспользоватьSMS` | Использовать отправку СМС средствами сервера СофтФон | xs:boolean | — | нет | Использовать отправку СМС средствами сервера СофтФон | — | +| 874 | `сфпИспользоватьВнутреннийНомерИзКИПользователя` | Использовать внутренний номер из контактной информации пользователя | xs:boolean | — | нет | Настройка нужна для "игнорирования" текущего внутреннего номера из персональных настроек при маршрутизации звонков | — | +| 875 | `сфпИспользоватьЗаписьПереговоров` | Использовать запись переговоров | xs:boolean | сфпИспользоватьЗаписьПереговоров | нет | Использовать запись телефонных переговоров | — | +| 876 | `сфпИспользоватьИсториюЗвонков` | Использовать историю звонков | xs:boolean | сфпИспользоватьИсториюЗвонков | нет | Использовать историю звонков | — | +| 877 | `сфпИспользоватьМаршрутизацию` | Использовать маршрутизацию средствами сервера СофтФон | xs:boolean | сфпИспользоватьМаршрутизацию | нет | Использовать динамическую маршрутизацию входящих звонков средствами сервера СофтФон | — | +| 878 | `сфпИспользоватьМобильнуюТелефонию` | Использовать мобильную телефонию | xs:boolean | сфпИспользоватьМобильнуюТелефонию | нет | — | — | +| 879 | `сфпИспользоватьОблачнуюТелефонию` | Использовать облачную телефонию | xs:boolean | сфпИспользоватьОблачнуюТелефонию | нет | — | — | +| 880 | `сфпИспользоватьОчисткуСообщенийЖурналаЗвонков` | Использовать очистку сообщений журнала звонков | xs:boolean | сфпИспользоватьРегламентноеЗаданиеОчисткаСообщенийЖурналаЗвонков | нет | — | — | +| 881 | `сфпИспользоватьРегламентноеЗаданиеИсторииЗвонков` | Использовать регламентное задание истории звонков | xs:boolean | — | нет | Использовать регламентное задание для обновления истории звонков | — | +| 882 | `сфпИспользоватьРегламентноеЗаданиеТелефонныхКниг` | Использовать регламентное задание телефонных книг | xs:boolean | — | нет | Использовать регламентное задание для обновления телефонных книг | — | +| 883 | `сфпИспользоватьРечевуюАналитику` | Использовать речевую аналитику | xs:boolean | — | нет | — | — | +| 884 | `сфпИспользоватьСофтФон` | Использовать СофтФон | xs:boolean | сфпИспользоватьСофтФон | нет | Использовать подсистему СофтФон | — | +| 885 | `сфпИспользоватьСпрут7` | Использовать систему записи телефонных переговоров Спрут-7 | xs:boolean | — | нет | Использовать систему записи телефонных переговоров Спрут-7 | — | +| 886 | `сфпИспользуемаяАТС` | Используемая АТС | cfg:EnumRef.сфпДоступныеАТС | — | нет | — | — | +| 887 | `сфпИспользуемаяАТСДополнительно` | Используемая АТС Дополнительно | xs:string | — | нет | Идентификатор АТС при универсальном подключении Itoolabs | — | +| 888 | `сфпИспользуемаяВерсияСофтФон` | Используемая версия СофтФон | cfg:EnumRef.сфпВерсииСофтФон | — | нет | — | — | +| 889 | `сфпКодГорода` | Код города (812) | xs:string | — | нет | Код города по умолчанию в настройках СофтФон | — | +| 890 | `сфпКодСтраны` | Код страны (+7) | xs:string | — | нет | Код страны по умолчанию в настройках СофтФон | — | +| 891 | `сфпКоличествоВзаимодействийДляМаршрутизации` | Количество входящих звонков клиента для маршрутизации | xs:decimal | — | нет | Количество взаимодействий с клиентом для автоматического перевода звонка | — | +| 892 | `сфпЛогинCoMagic` | Логин CoMagic | xs:string | — | нет | — | — | +| 893 | `сфпМаксимальнаяДлинаВнутреннихНомеров` | Максимальная длина внутренних номеров | xs:decimal | — | нет | Максимальная длина внутренних номеров в настройках СофтФон | — | +| 894 | `сфпМинимальнаяДлинаВнутреннихНомеров` | Минимальная длина внутренних номеров | xs:decimal | — | нет | Минимальная длина внутренних номеров в настройках СофтФон | — | +| 895 | `сфпНастройкиТелефонии` | Настройки телефонии | v8:ValueStorage | — | нет | — | — | +| 896 | `сфпНеЗагружатьЗвонкиДлительностьюМенее` | Не загружать звонки длительностью менее | xs:decimal | — | нет | Не загружать звонки длительностью менее (сек) | — | +| 897 | `сфпОбщиеНастройкиТелефонии` | Общие настройки телефонии | xs:string | — | нет | — | — | +| 898 | `сфпОграничениеНаПросмотрТелефонныхЗвонков` | Использовать ограничение на просмотр телефонных звонков других пользователей | xs:boolean | — | нет | При включенной настройке текущий пользователь может просматривать телефонные звонки других пользователей в соответствии с механизмом "Прослушиваемые пользователи" | — | +| 899 | `сфпОператорКоллтрекинга` | Оператор коллтрекинга | cfg:EnumRef.CRM_CallTrakingСценарии | — | нет | АПК:1032 АПК:265 не проверять на орфографию синоним и имя | — | +| 900 | `сфпОповещатьОПропущенныхЗвонках` | Оповещать о пропущенных звонках | xs:boolean | — | нет | Создавать напоминания о пропущенных звонках при загрузке истории звонков | — | +| 901 | `сфпПарольCoMagic` | Пароль CoMagic | xs:string | — | нет | — | — | +| 902 | `сфпПланНумерацииАвтоопределениеБизнесРегиона` | Определять Бизнес-регион автоматически | xs:boolean | — | нет | Определять Бизнес-регион автоматически | — | +| 903 | `сфпПланНумерацииАдресДетализацииНомера` | Интернет адрес детализации номера | xs:string | — | нет | АПК:1033 АПК:87 АПК:1033 Интернет адрес детализации номера на сайте ФАС (Россвязь) | — | +| 904 | `сфпПланНумерацииАдресРеестра` | Сетевой или интернет адрес реестра нумерации | xs:string | — | нет | Сетевой или интернет адрес реестра Российской системы и плана нумерации | — | +| 905 | `сфпПланНумерацииФайлыРеестра` | Файлы реестра нумерации | xs:string | — | нет | Файлы реестра Российской системы и плана нумерации | — | +| 906 | `сфпПользовательДляОповещений` | Пользователь для оповещений | cfg:CatalogRef.Пользователи | — | нет | Пользователь для оповещений о пропущенных звонках | — | +| 907 | `сфпПорт` | Порт сервера СофтФон (13528) | xs:string | — | нет | Порт сервера СофтФон | — | +| 908 | `сфпПоследниеЦифрыТелефонногоНомера` | Последние цифры телефонного номера | xs:decimal | — | нет | Количество цифр телефонного номера для идентификации абонента | — | +| 909 | `сфпПрефиксВыходаВГород` | Префикс выхода в город (9) | xs:string | — | нет | Префикс выхода в город в настройках СофтФон | — | +| 910 | `сфпПрефиксВыходаВМежгород` | Префикс выхода в межгород (8) | xs:string | — | нет | Префикс выхода в межгород в настройках СофтФон | — | +| 911 | `сфпПрефиксВыходаНаМеждународную` | Префикс выхода на международную линию (10) | xs:string | — | нет | Префикс выхода на международную линию в настройках СофтФон | — | +| 912 | `сфпСрокЖизниСообщенияЖурналаЗвонков` | Срок жизни сообщения журнала звонков | xs:decimal | — | нет | — | — | +| 913 | `сфпСтрокаПодключенияИстории` | Строка подключения к истории звонков | xs:string | — | нет | Строка подключения к БД истории звонков | — | + +### Т + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 914 | `ТаймаутПодключенияКСервисуИнтернетПоддержки` | Таймаут подключения к сервису интернет поддержки | xs:decimal | — | нет | Таймаут подключения к сервису интернет поддержки (в секундах) | — | +| 915 | `ТипПровайдераЭП` | Тип провайдера ЭП | xs:decimal | — | нет | — | — | +| 916 | `ТипыИнцидентовЦККАктуальны` | Типы инцидентов ЦКК актуальны | xs:boolean | — | нет | — | — | + +### У + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 917 | `УдалитьCRM_ПлановаяЧастотаКонтактовA` | (не используется) Плановая частота контактов в группе A | xs:decimal | — | нет | — | — | +| 918 | `УдалитьCRM_ПлановаяЧастотаКонтактовB` | (не используется) Плановая частота контактов в группе B | xs:decimal | — | нет | — | — | +| 919 | `УдалитьCRM_ПлановаяЧастотаКонтактовC` | (не используется) Плановая частота контактов в группе C | xs:decimal | — | нет | — | — | +| 920 | `УдалитьCRM_ПлановаяЧастотаКонтактовНеКлассифицированых` | (не используется) Плановая частота неклассифицированных контактов | xs:decimal | — | нет | — | — | +| 921 | `УдалитьАрхивироватьЧекиККМПриЗакрытииКассовойСмены` | Архивировать чеки ККМ при закрытии кассовой смены | xs:boolean | — | нет | — | — | +| 922 | `УдалитьВестиУчетТабачнойПродукцииМОТП` | (не используется) Вести учет табачной продукции МОТП | xs:boolean | УдалитьВестиУчетТабачнойПродукцииМОТП | нет | — | — | +| 923 | `УдалитьВыполнятьРасчетТоварныхОграниченийПоКоличествуПродаж` | (не используется) Удалить выполнять расчет товарных ограничений по количеству продаж | xs:boolean | — | нет | — | — | +| 924 | `УдалитьДатаОбязательнойМаркировкиОбувиИСМП` | (не используется) Дата ввода обязательной маркировки обуви ИС МП | xs:dateTime | — | нет | — | — | +| 925 | `УдалитьДатаОбязательнойМаркировкиТабачнойПродукцииМОТП` | (не используется) Дата ввода обязательной маркировки табачной продукции | xs:dateTime | — | нет | — | — | +| 926 | `УдалитьИспользоватьВзаимодействия` | Удалить использовать взаимодействия | xs:boolean | ИспользоватьВзаимодействия | нет | — | — | +| 927 | `УдалитьИспользоватьНДС0` | (не используется) Использовать НДС 0% | xs:boolean | УдалитьИспользоватьНДС0 | нет | — | — | +| 928 | `УдалитьИспользоватьНесколькоОрганизацийБЭД` | (не используется) Использовать несколько организаций БЭД | xs:boolean | — | нет | Устарела | — | +| 929 | `УдалитьИспользоватьОбменССайтами` | (не используется) Использовать обмен с сайтами | xs:boolean | — | нет | Флаг для одноименной функциональной опции | — | +| 930 | `УдалитьИспользоватьПродажиНаЭкспорт` | (не используется) Использовать продажи на экспорт | xs:boolean | — | нет | — | — | +| 931 | `УдалитьИспользоватьРубрикаторБизнесСеть` | (не используется) Использовать рубрикатор 1С:Бизнес-сеть | xs:boolean | — | нет | — | — | +| 932 | `УдалитьИспользоватьСтатусыЗаказовКлиентов` | (не используется) Использовать статусы заказов клиентов | xs:boolean | УдалитьИспользоватьСтатусыЗаказовКлиентов | нет | — | — | +| 933 | `УдалитьИспользоватьСтатусыЗаявокНаВозврат` | (не используется) Использовать статусы заявок на возврат | xs:boolean | УдалитьИспользоватьСтатусыЗаявокНаВозврат | нет | — | — | +| 934 | `УдалитьКонтролироватьСтатусыКодовМаркировкиВРозницеИСМП` | Контролировать статусы кодов маркировки в ИС МП при розничных продажах | xs:boolean | УдалитьКонтролироватьСтатусыКодовМаркировкиВРозницеИСМП | нет | — | — | +| 935 | `УдалитьКонтролироватьСтатусыКодовМаркировкиВРозницеМОТП` | (не используется) Контролировать статусы кодов маркировки при розничных продажах | xs:boolean | УдалитьКонтролироватьСтатусыКодовМаркировкиВРозницеМОТП | нет | — | — | +| 936 | `УдалитьКонтролироватьСтатусыКодовМаркировкиМОТП` | (не используется) Контролировать статусы кодов маркировки МОТП | xs:boolean | УдалитьКонтролироватьСтатусыКодовМаркировкиМОТП | нет | — | — | +| 937 | `УдалитьКонтролироватьТоварыОрганизацийПриОтменеПриходов` | (не используется) Контролировать товары организаций при отмене приходов | xs:boolean | — | да: Предприятие | — | — | +| 938 | `УдалитьЛогинДоступаКСервисуMorpher` | (Не используется) удалить логин доступа к сервису morpher | xs:string | — | нет | — | — | +| 939 | `УдалитьНеПоказыватьПодсказкиПокупателейБизнесСеть` | Удалить не показывать подсказки покупателей бизнес сеть | xs:boolean | — | нет | — | — | +| 940 | `УдалитьНеПоказыватьПодсказкиПоставщиковБизнесСеть` | Удалить не показывать подсказки поставщиков бизнес сеть | xs:boolean | — | нет | — | — | +| 941 | `УдалитьПлановыйВидЦены` | (не используется) Плановый вид цены | cfg:CatalogRef.ВидыЦен | — | нет | — | — | +| 942 | `УдалитьПоказыватьКомандуДополнительныеПечатныеФормы` | Удалить показывать команду дополнительные печатные формы | xs:boolean | ИспользоватьДополнительныеПечатныеФормы | нет | Переназначить ФО.ИспользоватьДополнительныеПечатныеФормы на эту константу после окончательного перевода команд печати на версию 2.1.4 | — | +| 943 | `УдалитьПорядокОформленияВыкупаПриСписанииТоваров` | (не используется) Порядок оформления выкупа при списании товаров | cfg:EnumRef.НастройкиОформленияВыкупаПриСписанииТоваров | — | да: УчетНДСиВЭД | Настройка показывает, в какой момент необходимо оформить выкуп при передаче в производство или при фактическом потреблении. | — | +| 944 | `УдалитьРаспределятьНДС` | (не используется) Распределять НДС | xs:boolean | УдалитьРаспределятьНДС | нет | — | — | +| 945 | `УдалитьТипХраненияФайлов` | Удалить тип хранения файлов | cfg:EnumRef.ТипыХраненияФайлов | — | нет | Удалено: Глобальная настройка - где хранятся файлы - в базе как ХранилищеЗначения или в каталоге на диске | — | +| 946 | `УдалитьУчитыватьПравилаВнутреннегоТовародвиженияПриРасчетеТоварныхОграничений` | (не используется) Удалить учитывать правила внутреннего товародвижения при расчете товарных ограничений | xs:boolean | — | да: СкладИДоставка | — | — | +| 947 | `УправлениеПредприятием` | Управление предприятием | xs:boolean | УправлениеПредприятием | да: Казначейство, Предприятие | — | — | +| 948 | `УправлениеТорговлей` | Управление торговлей | xs:boolean | УправлениеТорговлей | нет | — | — | +| 949 | `УчетнаяЗаписьДляВосстановленияПароля` | Учетная запись для восстановления пароля | v8:ValueStorage | — | нет | — | — | +| 950 | `УчитыватьПравилаВнутреннегоТовародвиженияПриABCКлассификацииНоменклатуры` | Учитывать правила внутреннего товародвижения при ABC-классификации номенклатуры | xs:boolean | — | нет | — | — | +| 951 | `УчитыватьПравилаВнутреннегоТовародвиженияПриXYZКлассификацииНоменклатуры` | Учитывать правила внутреннего товародвижения при XYZ-классификации номенклатуры | xs:boolean | — | нет | — | — | +| 952 | `УчитыватьСебестоимостьТоваровПоНазначениям` | Обособленный учет себестоимости по назначениям | xs:boolean | УчитыватьСебестоимостьТоваровПоНазначениям | да: ФинансовыйРезультатИКонтроллинг | — | — | + +### Ф + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 953 | `ФайлКлассификаторов` | Файл классификаторов | xs:string | — | нет | — | — | +| 954 | `ФиксироватьПервичныйИнтерес` | Фиксировать первичный интерес | xs:boolean | CRM_ФиксироватьПервичныйИнтерес; ФиксироватьПервичныйИнтерес | да: CRMИМаркетинг | — | — | +| 955 | `ФиксироватьПретензииКлиентов` | Фиксировать претензии клиентов | xs:boolean | ФиксироватьПретензииКлиентов | да: CRMИМаркетинг | — | — | +| 956 | `ФормироватьВидыЗапасовПоГруппамФинансовогоУчета` | Формировать виды запасов по группам финансового учета | xs:boolean | ФормироватьВидыЗапасовПоГруппамФинансовогоУчета | нет | — | — | +| 957 | `ФормироватьВидыЗапасовПоПодразделениямМенеджерам` | Формировать виды запасов по подразделениям или менеджерам | xs:boolean | ФормироватьВидыЗапасовПоПодразделениямМенеджерам | да: ФинансовыйРезультатИКонтроллинг | — | — | +| 958 | `ФормироватьВидыЗапасовПоПоставщикам` | Формировать виды запасов по поставщикам | xs:boolean | ФормироватьВидыЗапасовПоПоставщикам | нет | — | — | +| 959 | `ФормироватьВидыЗапасовПоСделкам` | Формировать виды запасов по сделкам | xs:boolean | ФормироватьВидыЗапасовПоСделкам | да: ФинансовыйРезультатИКонтроллинг | — | — | +| 960 | `ФормироватьОтчетностьПоНДС` | Формировать отчетность по НДС | xs:boolean | ФормироватьОтчетностьПоНДС | да: УчетНДСиВЭД | — | — | +| 961 | `ФормироватьУправленческийБаланс` | Использовать управленческий баланс | xs:boolean | ФормироватьУправленческийБаланс | да: ФинансовыйРезультатИКонтроллинг | — | — | +| 962 | `ФормироватьФинансовыйРезультат` | Формировать финансовый результат | xs:boolean | ФормироватьФинансовыйРезультат | да: ФинансовыйРезультатИКонтроллинг | — | — | + +### Х + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 963 | `ХранитьФайлыВТомахНаДиске` | Хранить файлы в томах на диске | xs:boolean | ХранитьФайлыВТомахНаДиске | нет | — | — | + +### Ч + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 964 | `ЧасовойПоясОбластиДанных` | Часовой пояс области данных | xs:string | — | нет | — | — | + +### Ш + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 965 | `ШаблонЭтикеткиДляДоставки` | Шаблон этикетки для доставки | cfg:CatalogRef.ШаблоныЭтикетокИЦенников | — | да: СкладИДоставка | — | — | +| 966 | `ШаблонЭтикеткиУпаковочногоЛиста` | Шаблон этикетки упаковочного листа | cfg:CatalogRef.ШаблоныЭтикетокИЦенников | — | да: СкладИДоставка | — | — | + +### Э + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 967 | `ЭтоАвтономноеРабочееМесто` | Это автономное рабочее место | xs:boolean | ИспользоватьАвтономнуюРаботуВЛокальномРежиме; РаботаВАвтономномРежиме; СтандартныеПодсистемыВАвтономномРежиме; ТехнологияСервисаВАвтономномРежиме | нет | — | — | + +## crm3-dev.rhana (расширение Рана) + +**Каталог:** `crm3-dev.rhana\src\Constants` +**Количество констант:** 3 +**Индекс ФО:** `crm3-dev.rhana\src\FunctionalOptions` +**Индекс панели УТ:** `crm3-dev\src\DataProcessors\ПанельАдминистрированияУТ` + +### R + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 1 | `rh_СкладСебестоимости` | — | cfg:CatalogRef.Склады | — | нет | — | — | + +### Г + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 2 | `ГруппаЛаеннек` | — | cfg:CatalogRef.Номенклатура | — | нет | — | — | + +### Д + +| № | Имя | Синоним | Тип | Функциональные опции | Панель администрирования УТ | Комментарий | Подсказка | +|---|-----|---------|-----|----------------------|-----------------------------|-------------|-----------| +| 3 | `ДатаНачалаУпрощенногоПартионногоУчета` | — | xs:dateTime | — | нет | — | — | + +**Примечание по расширению:** у констант с `ObjectBelonging = Adopted` синоним в XML может отсутствовать — в таблице тогда «—»; смысл задаётся типовой конфигурацией и расширением. + +--- + +*Сгенерировано скриптом `scripts/list_constants_crm3_dev.py`* \ No newline at end of file diff --git a/docs__Проблема_неуникальности_регистра_CRM_ЖурналДокументов.md b/docs__Проблема_неуникальности_регистра_CRM_ЖурналДокументов.md new file mode 100644 index 0000000..d5a4712 --- /dev/null +++ b/docs__Проблема_неуникальности_регистра_CRM_ЖурналДокументов.md @@ -0,0 +1,260 @@ +--- +title: Проблема неуникальности регистра CRM_ЖурналДокументов +version: 1.0 +author: Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) +date_created: 2025-12-09 +date_modified: 2025-12-09 +show_metadata_block: true +show_index_link: true +--- + +# Проблема неуникальности регистра CRM_ЖурналДокументов + +> 📚 **См. также:** [Оглавление документов](docs__INDEX.md) | [Список объектов для удаления из подсистем](docs__Список_объектов_для_удаления_из_подсистем.md) | [Анализ ошибок обновления](docs__Анализ_ошибок_обновления.md) + +## Контекст проблемы + +После успешного удаления всех объектов из состава подсистем и сохранения новой конфигурации **CRM3-26** поверх рабочей **CRM3**, при завершении процесса обновления возникла ошибка: + +``` +Записи регистра сведений стали неуникальными: CRM_ЖурналДокументов +``` + +## Описание проблемы + +### Суть ошибки + +Регистр сведений `CRM_ЖурналДокументов` содержит дублирующиеся записи, которые нарушают уникальность ключа регистра. Это означает, что в регистре есть несколько записей с одинаковыми значениями всех измерений. + +### Причины возникновения + +1. **Изменение структуры регистра** - при обновлении конфигурации могли измениться измерения регистра +2. **Миграция данных** - при переносе данных из старой конфигурации могли возникнуть дубликаты +3. **Ошибки в данных** - в исходной конфигурации уже могли существовать дубликаты, которые не проверялись +4. **Удаление измерений** - если из регистра было удалено измерение, которое различало записи, они могли стать дубликатами + +### Критичность + +**ВЫСОКАЯ** - Обновление конфигурации не может быть завершено до устранения проблемы. + +--- + +## Решение проблемы + +### Шаг 1: Проверка дубликатов + +Необходимо выполнить запрос для выявления дублирующихся записей в регистре `CRM_ЖурналДокументов`. + +#### Запрос для проверки дубликатов + +```bsl +// Проверка на дубликаты в регистре сведений CRM_ЖурналДокументов + +Запрос = Новый Запрос; +Запрос.Текст = +"ВЫБРАТЬ +| CRM_ЖурналДокументов.Документ КАК Документ, +| КОЛИЧЕСТВО(*) КАК КоличествоДубликатов +ИЗ +| РегистрСведений.CRM_ЖурналДокументов КАК CRM_ЖурналДокументов +| +|СГРУППИРОВАТЬ ПО +| CRM_ЖурналДокументов.Документ +| +|ИМЕЮЩИЕ +| КОЛИЧЕСТВО(*) > 1"; + +Результат = Запрос.Выполнить(); +Выборка = Результат.Выбрать(); + +Если Выборка.Количество() > 0 Тогда + Сообщить("Обнаружены дубликаты в регистре CRM_ЖурналДокументов:"); + Пока Выборка.Следующий() Цикл + Сообщить(" Документ: " + Выборка.Документ + + ", Количество дубликатов: " + Выборка.КоличествоДубликатов); + КонецЦикла; +Иначе + Сообщить("Дубликаты в регистре CRM_ЖурналДокументов не обнаружены."); +КонецЕсли; +``` + +**Примечание:** Структура запроса может отличаться в зависимости от фактических измерений регистра. Необходимо уточнить структуру регистра в конфигураторе. + +### Шаг 2: Анализ структуры регистра + +Перед выполнением запроса необходимо: + +1. Открыть конфигурацию в конфигураторе +2. Найти регистр `РегистрСведений.CRM_ЖурналДокументов` +3. Проверить список измерений регистра +4. Адаптировать запрос под фактическую структуру + +### Шаг 3: Варианты решения + +#### Вариант 1: Удаление дубликатов (если данные не критичны) + +Если дубликаты не несут важной информации, их можно удалить, оставив только одну запись для каждого уникального ключа. + +```bsl +// Удаление дубликатов из регистра CRM_ЖурналДокументов +// ВНИМАНИЕ: Выполнять только после резервного копирования! + +Запрос = Новый Запрос; +Запрос.Текст = +"ВЫБРАТЬ ПЕРВЫЕ 1 +| CRM_ЖурналДокументов.Ссылка КАК Ссылка +ИЗ +| РегистрСведений.CRM_ЖурналДокументов КАК CRM_ЖурналДокументов +| +|ГДЕ +| CRM_ЖурналДокументов.Документ = &Документ +| +|УПОРЯДОЧИТЬ ПО +| CRM_ЖурналДокументов.Ссылка"; + +// Для каждого документа с дубликатами +// Оставить первую запись, остальные удалить +``` + +#### Вариант 2: Объединение данных (если данные важны) + +Если в дубликатах есть различающиеся данные в ресурсах, необходимо объединить их перед удалением дубликатов. + +#### Вариант 3: Корректировка измерений (если структура изменилась) + +Если проблема возникла из-за изменения структуры регистра, может потребоваться: +- Добавить временное измерение для различения записей +- Выполнить миграцию данных +- Удалить временное измерение + +### Шаг 4: Проверка после исправления + +После устранения дубликатов необходимо: + +1. Повторно выполнить запрос проверки дубликатов +2. Убедиться, что дубликатов больше нет +3. Попробовать завершить обновление конфигурации + +--- + +## Детальный запрос для анализа + +Для более детального анализа можно использовать следующий запрос: + +```bsl +// Детальный анализ дубликатов в регистре CRM_ЖурналДокументов + +Запрос = Новый Запрос; +Запрос.Текст = +"ВЫБРАТЬ +| CRM_ЖурналДокументов.Документ КАК Документ, +| КОЛИЧЕСТВО(*) КАК КоличествоЗаписей, +| МИНИМУМ(CRM_ЖурналДокументов.Период) КАК ПерваяЗапись, +| МАКСИМУМ(CRM_ЖурналДокументов.Период) КАК ПоследняяЗапись +ИЗ +| РегистрСведений.CRM_ЖурналДокументов КАК CRM_ЖурналДокументов +| +|СГРУППИРОВАТЬ ПО +| CRM_ЖурналДокументов.Документ +| +|ИМЕЮЩИЕ +| КОЛИЧЕСТВО(*) > 1 +| +|УПОРЯДОЧИТЬ ПО +| КоличествоЗаписей УБЫВ"; + +Результат = Запрос.Выполнить(); +Выборка = Результат.Выбрать(); + +Если Выборка.Количество() > 0 Тогда + Сообщить("Детальный анализ дубликатов:"); + Пока Выборка.Следующий() Цикл + Сообщить(" Документ: " + Выборка.Документ + + ", Записей: " + Выборка.КоличествоЗаписей + + ", Период первой: " + Выборка.ПерваяЗапись + + ", Период последней: " + Выборка.ПоследняяЗапись); + КонецЦикл; +КонецЕсли; +``` + +--- + +## Рекомендации + +### Перед исправлением + +1. ✅ **Создать резервную копию базы данных** +2. ✅ **Выполнить запрос проверки** для оценки масштаба проблемы +3. ✅ **Проанализировать результаты** - понять, какие документы имеют дубликаты +4. ✅ **Определить стратегию** - удаление или объединение данных + +### При исправлении + +1. ⚠️ **Выполнять в режиме монопольного доступа** +2. ⚠️ **Не выполнять во время работы пользователей** +3. ⚠️ **Сохранять логи** всех операций +4. ⚠️ **Тестировать на копии** базы данных перед применением к рабочей + +### После исправления + +1. ✅ **Проверить отсутствие дубликатов** +2. ✅ **Проверить целостность данных** +3. ✅ **Попробовать завершить обновление** +4. ✅ **Провести функциональное тестирование** + +--- + +## Альтернативные решения + +### Если проблема не решается стандартными методами + +1. **Обратиться в поддержку 1С** - возможно, это известная проблема с решением +2. **Проверить обновления платформы** - возможно, требуется обновление платформы 1С +3. **Использовать утилиты миграции** - специальные утилиты для миграции данных +4. **Ручная корректировка** - если записей немного, можно исправить вручную + +--- + +## Связанные проблемы + +При обновлении конфигурации могут возникнуть аналогичные проблемы с другими регистрами: + +- Регистры сведений с измененной структурой +- Регистры накопления с удаленными измерениями +- Регистры с данными, требующими миграции + +**Рекомендация:** После устранения проблемы с `CRM_ЖурналДокументов` проверить другие регистры на наличие аналогичных проблем. + +--- + +## Чек-лист действий + +- [ ] Создать резервную копию базы данных +- [ ] Открыть конфигурацию в конфигураторе +- [ ] Проверить структуру регистра `CRM_ЖурналДокументов` +- [ ] Адаптировать запрос проверки под структуру регистра +- [ ] Выполнить запрос проверки дубликатов +- [ ] Проанализировать результаты +- [ ] Определить стратегию исправления +- [ ] Выполнить исправление (на копии базы) +- [ ] Проверить результат +- [ ] Применить к рабочей базе +- [ ] Завершить обновление конфигурации +- [ ] Провести тестирование + +--- + +## История проблемы + +### Версия 1.0 (Текущая итерация) +- Обнаружена проблема после удаления объектов из состава подсистем +- Конфигурация сохранена, но обновление не завершено +- Требуется устранение дубликатов в регистре `CRM_ЖурналДокументов` + +--- + +**Дата создания:** 2024 +**Статус:** Требуется решение +**Критичность:** ВЫСОКАЯ +**Контекст:** Применение CRM3-26 поверх рабочей CRM3 + diff --git a/docs__Проверка_ставки_НДС_22.md b/docs__Проверка_ставки_НДС_22.md new file mode 100644 index 0000000..7503cd0 --- /dev/null +++ b/docs__Проверка_ставки_НДС_22.md @@ -0,0 +1,60 @@ +--- +title: Проверка наличия ставки НДС 22% в целевой конфигурации CRM326 +author: Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) +version: 1.0 +date_created: 2025-12-13 +date_modified: 2025-12-13 +show_metadata_block: true +show_index_link: true +--- + +# Проверка наличия ставки НДС 22% в целевой конфигурации CRM326 + +## Результаты проверки + +**Дата проверки:** 13.12.2025 + +## Найдены реализации ставки НДС 22% + +В целевой конфигурации `CRM326/CRM326_TEST` обнаружены упоминания ставки НДС 22% в следующих файлах: + +### 1. Регистр накопления "СводныеДвижения" +- **Файл:** `CRM326_TEST/src/AccumulationRegisters/СводныеДвижения/ManagerModule.bsl` +- **Строка 105:** Упоминание `СтавкаНДС22` + +### 2. Общий модуль "УчетНДС" +- **Файл:** `CRM326_TEST/src/CommonModules/УчетНДС/Module.bsl` +- **Найдено несколько упоминаний:** + - Строка 2068: `Справочники.СтавкиНДС.НайтиПервый("СтавкаНДС22", ...)` + - Строка 2069: `Справочники.СтавкиНДС.СтавкаНДС22.СоздатьНаборЗаписей()` + - Строка 2072: `Справочники.СтавкиНДС.СтавкаНДС22.СоздатьНаборЗаписей()` + - Строка 2365: Использование `Справочники.СтавкиНДС.СтавкаНДС22.ЗначениеПроцент` + - Строка 2393: Использование `Справочники.СтавкиНДС.СтавкаНДС22.ЗначениеПропорция` + - Строка 2455: `Параметры.Установить("СтавкаНДС22ЗначениеПроцент", Справочники.СтавкиНДС.СтавкаНДС22.ЗначениеПроцент)` + - Строка 2457: `Параметры.Установить("СтавкаНДС22ЗначениеПропорция", Справочники.СтавкиНДС.СтавкаНДС22.ЗначениеПропорция)` + +### 3. Общий модуль "РасчетыСКлиентами" +- **Файл:** `CRM326_TEST/src/CommonModules/РасчетыСКлиентами/Module.bsl` +- **Найдено множество упоминаний:** + - Строки 2138, 2184, 2218, 2245, 2271, 2335, 2361, 2611, 2887, 2982, 3030, 3078, 3276: Проверки условий с использованием `&СтавкаНДС22` + +### 4. Другие модули +- **Файл:** `CRM326_TEST/src/CommonModules/РасчетыСПоставщиками/Module.bsl` + - Строки 1584, 1608, 1624, 1632, 1640, 1648, 1786: Использование `СтавкаНДС22` в расчетах + +## Вывод + +**Ставка НДС 22% реализована в целевой конфигурации CRM326.** + +Реализация включает: +1. Элемент справочника "СтавкиНДС" с кодом/именем "СтавкаНДС22" +2. Использование в модулях учета НДС +3. Использование в расчетах с клиентами и поставщиками +4. Использование в регистрах накопления для учета движений + +## Рекомендации + +1. Проверить наличие элемента справочника "СтавкиНДС" с кодом "СтавкаНДС22" в метаданных конфигурации +2. Убедиться, что значение ставки установлено корректно (22% или 0.22) +3. Проверить даты действия ставки НДС 22% (если применимо) + diff --git a/docs__РЕЗУЛЬТАТЫ_КОНВЕРТАЦИИ.md b/docs__РЕЗУЛЬТАТЫ_КОНВЕРТАЦИИ.md new file mode 100644 index 0000000..1c3c916 --- /dev/null +++ b/docs__РЕЗУЛЬТАТЫ_КОНВЕРТАЦИИ.md @@ -0,0 +1,238 @@ +--- +title: Результаты конвертации Markdown в HTML +author: Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) +version: 1.0 +date_created: 2025-12-09 +date_modified: 2025-12-09 +show_metadata_block: true +show_index_link: true +--- + +# Результаты конвертации Markdown в HTML + +## ✅ Статус: Успешно завершено + +### Итоговая статистика + +- **Всего конвертировано файлов:** 12 +- **Ошибок при конвертации:** 0 +- **Ошибок в HTML файлах:** 0 +- **Предупреждений:** 0 +- **Битых ссылок:** 0 + +--- + +## Реализованные возможности + +### ✅ 1. Перекрестные ссылки между документами + +Все ссылки на другие `.md` файлы автоматически конвертируются в ссылки на соответствующие `.html` файлы. + +**Пример конвертации:** +```markdown +[Глубинный анализ регистров](docs__Глубинный_анализ_регистров.md) +``` +↓ +```html +Глубинный анализ регистров +``` + +**Результат:** Все перекрестные ссылки работают корректно в HTML формате. + +### ✅ 2. Автоматическая навигация + +В каждом HTML файле автоматически добавляется блок навигации со ссылками на все остальные документы. + +**Расположение:** В верхней части каждого документа, перед основным содержимым. + +**Стиль:** Синие кнопки с белым текстом, при наведении темнеют. + +### ✅ 3. Индексный файл (INDEX.md/INDEX.html) + +Создан автоматически генерируемый индексный файл со всеми документами, сгруппированными по категориям: + +- **Анализ и отчеты** (5 документов) +- **Инструкции** (2 документа) +- **Другое** (5 документов) + +### ✅ 4. Добавлены перекрестные ссылки в документах + +В начало каждого основного документа добавлены блоки со ссылками на связанные документы: + +- Оглавление документов (INDEX) +- Связанные отчеты и анализы +- Инструкции и решения + +**Формат:** Блоки с эмодзи 📚 и ссылками на связанные документы. + +--- + +## Список конвертированных файлов + +### HTML файлы (в папке `html/`) + +1. ✅ **INDEX.html** - Оглавление всех документов (23 ссылки) +2. ✅ **Анализ_ошибок_обновления.html** - Анализ ошибок обновления (15 ссылок) +3. ✅ **Быстрое_решение.html** - Быстрое решение проблемы (15 ссылок) +4. ✅ **Глубинный_анализ_регистров.html** - Глубинный анализ регистров (15 ссылок) +5. ✅ **Инструкция_по_исправлению.html** - Инструкция по исправлению (15 ссылок) +6. ✅ **Итоговый_отчет_анализа_регистров.html** - Итоговый отчет (15 ссылок) +7. ✅ **ФИНАЛЬНЫЙ_ОТЧЕТ_Анализ_регистров.html** - Финальный отчет (15 ссылок) +8. ✅ **Отчет_о_конвертации.html** - Отчет о конвертации (11 ссылок) +9. ✅ **README_md_to_html.html** - Инструкция по использованию скрипта (11 ссылок) +10. ✅ **analysis_report.html** - Отчет анализа (11 ссылок) +11. ✅ **analysis_report_detailed.html** - Детальный отчет анализа (26 ссылок) +12. ✅ **Партнеры_АналитическийОтчет.html** - Аналитический отчет по партнерам (20 ссылок) + +--- + +## Проверка корректности + +### ✅ Структура HTML + +Все файлы проверены на: +- ✅ Наличие `` +- ✅ Корректная структура ``, ``, `` +- ✅ Наличие тега `` с осмысленным содержимым +- ✅ Указана кодировка UTF-8 +- ✅ Присутствуют стили CSS + +### ✅ Ссылки + +- ✅ Все перекрестные ссылки между документами работают +- ✅ Относительные пути корректны +- ✅ Нет битых ссылок +- ✅ Навигационные ссылки присутствуют во всех файлах + +### ✅ Оформление + +- ✅ Адаптивный дизайн +- ✅ Подсветка синтаксиса кода +- ✅ Стилизованные таблицы +- ✅ Красивое оформление блоков цитат +- ✅ Оглавление (TOC) работает корректно + +### ✅ Контент + +- ✅ Все содержимое Markdown корректно отображается +- ✅ Таблицы отформатированы правильно +- ✅ Код подсвечен синтаксисом +- ✅ Списки отображаются корректно + +--- + +## Использование + +### Открытие документов + +1. **Начните с индексного файла:** + ``` + html/INDEX.html + ``` + Откройте этот файл в браузере для навигации по всем документам. + +2. **Используйте навигацию:** + - В каждом документе есть блок навигации вверху + - Используйте его для перехода между документами + - Все перекрестные ссылки в тексте также работают + +3. **Прямые ссылки:** + Можно открыть любой HTML файл напрямую - все ссылки будут работать корректно. + +### Примеры ссылок + +- `html/INDEX.html` - Главная страница с оглавлением +- `html/Анализ_ошибок_обновления.html` - Анализ ошибок +- `html/ФИНАЛЬНЫЙ_ОТЧЕТ_Анализ_регистров.html` - Финальный отчет +- `html/Глубинный_анализ_регистров.html` - Глубинный анализ + +--- + +## Инструменты + +### Созданные скрипты + +1. **md_to_html.py** - Основной скрипт конвертации + - Поддержка перекрестных ссылок + - Автоматическая навигация + - Создание индексного файла + - Гибкие параметры запуска + +2. **check_html_files.py** - Скрипт проверки корректности + - Проверка структуры HTML + - Проверка ссылок + - Выявление битых ссылок + - Статистика + +3. **compare_configurations.py** - Сравнение конфигураций + - Поиск удаляемых объектов + - Генерация отчетов + +4. **deep_register_analysis.py** - Анализ регистров + - Поиск проблем с уникальностью + - Детальные отчеты + +### Автоматически созданные файлы + +- **INDEX.md** - Индексный файл (автоматически обновляется) +- **INDEX.html** - HTML версия индексного файла + +--- + +## Технические детали + +### Формат HTML + +- **Версия:** HTML5 +- **Кодировка:** UTF-8 +- **Стили:** Встроенные CSS +- **Адаптивность:** Да (responsive design) + +### Поддерживаемые возможности Markdown + +- ✅ Заголовки всех уровней +- ✅ Списки (нумерованные и маркированные) +- ✅ Таблицы +- ✅ Блоки кода с подсветкой синтаксиса +- ✅ Цитаты +- ✅ Ссылки (включая перекрестные) +- ✅ Изображения +- ✅ Горизонтальные разделители +- ✅ Автоматическое оглавление (TOC) + +### Особенности реализации + +1. **Относительные пути:** Все ссылки используют относительные пути, что позволяет открывать файлы из любой папки +2. **Автоматическая навигация:** Каждый документ содержит ссылки на все остальные +3. **Красивое оформление:** Современный дизайн с адаптивной версткой +4. **Подсветка кода:** Автоматическая подсветка синтаксиса для блоков кода + +--- + +## Рекомендации + +1. **Для просмотра:** Откройте `html/INDEX.html` в браузере +2. **Для обновления:** Запустите `python md_to_html.py --create-index` +3. **Для проверки:** Запустите `python check_html_files.py` +4. **Для добавления ссылок:** Используйте формат `[текст](файл.md)` в Markdown + +--- + +## Заключение + +✅ **Все задачи выполнены успешно:** + +1. ✅ Создан скрипт конвертации с поддержкой перекрестных ссылок +2. ✅ Создан индексный файл со всеми документами +3. ✅ Все MD файлы конвертированы в HTML +4. ✅ Добавлены перекрестные ссылки в документах +5. ✅ Проверена корректность всех HTML файлов +6. ✅ Проверена работоспособность всех ссылок + +**Результат:** Все 12 HTML файлов корректны, все ссылки работают, документы готовы к использованию. + +--- + +**Дата конвертации:** 2024 +**Статус:** ✅ Полностью готово к использованию + diff --git a/docs__Реализация_переноса_НДС_22.md b/docs__Реализация_переноса_НДС_22.md new file mode 100644 index 0000000..0d8e339 --- /dev/null +++ b/docs__Реализация_переноса_НДС_22.md @@ -0,0 +1,829 @@ +--- +title: Реализация переноса НДС 22% +version: 1.0 +date_created: 2026-01-05 +date_modified: 2026-01-05 +author: Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) +description: Результаты проверки реализации переноса функционала ставки НДС 22% в старой конфигурации на основе документа оценки +status: Выполнение проверки на тестовой базе +extension: CRM3devLocal.Рана +extension_version: 3.0.22.26/1.0.1.316 +based_on: Оценка_правок_для_переноса_НДС_22_(v1.4).md +based_on_title: Оценка правок для переноса функционала ставки НДС 22% +based_on_version: 1.4 +show_metadata_block: true +show_index_link: true +show_toc: true +--- + +# Реализация переноса НДС 22% + +## Дата проверки +05.01.2026 + +## Версия документа +1.0 от 05.01.2026 + +## Автор работ по переносу +Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) + +## Текущий статус +Выполнение проверки на тестовой базе + +## Версия расширения +**Расширение:** `CRM3devLocal.Рана` +**Версия:** `3.0.22.26/1.0.1.316` + +## Основа для проверки +Документ-основание: [Оценка правок для переноса функционала ставки НДС 22% (v1.4)](Оценка_правок_для_переноса_НДС_22_(v1.4).md) + +--- + +## Результаты проверки реализации + +### 1. Перечисление "СтавкиНДС" + +#### 1.1. Добавление значений в перечисление + +**Статус:** ✅ **ВЫПОЛНЕНО КОРРЕКТНО** + +**Проверка:** +- ✅ Значение `НДС22` добавлено в перечисление `СтавкиНДС` в расширении `CRM3devLocal.Рана` +- ✅ Значение `НДС22_122` добавлено в перечисление `СтавкиНДС` в расширении `CRM3devLocal.Рана` +- ✅ Значения присутствуют в файле `CRM3devLocal.Рана/src/Enums/СтавкиНДС.xml` + +**Расположение:** `CRM3devLocal.Рана/src/Enums/СтавкиНДС.xml` + +**Примечание:** Изменения внесены в расширение, что соответствует архитектуре конфигурации. + +--- + +### 2. Общий модуль "УчетНДСУП" + +#### 2.1. Модификация функции СтавкаНДСПоУмолчанию + +**Статус:** ✅ **ВЫПОЛНЕНО КОРРЕКТНО** + +**Проверка:** +- ✅ Функция модифицирована в расширении `CRM3devLocal.Рана/src/CommonModules/УчетНДСУП/Ext/Module.bsl` +- ✅ Добавлена проверка даты для ставки НДС 22% +- ✅ Корректно используется дата `'20260101'` для начала действия ставки НДС 22% + +**Реализация (строки 17-23):** +```bsl +// Добавление ставки НДС 22% +Если ДатаПолучения >= '20260101' Тогда + Возврат ?(РасчетнаяСтавка, Перечисления.СтавкиНДС.НДС22_122, Перечисления.СтавкиНДС.НДС22); +ИначеЕсли ДатаПолучения >= '20190101' Тогда + Возврат ?(РасчетнаяСтавка, Перечисления.СтавкиНДС.НДС20_120, Перечисления.СтавкиНДС.НДС20); +Иначе + Возврат ?(РасчетнаяСтавка, Перечисления.СтавкиНДС.НДС18_118, Перечисления.СтавкиНДС.НДС18); +КонецЕсли; +``` + +**Примечание:** Функция корректно определяет ставку НДС по умолчанию в зависимости от даты: для дат >= 01.01.2026 возвращает ставку 22%, для дат >= 01.01.2019 - ставку 20%, для более ранних дат - ставку 18%. + +#### 2.2. Модификация функции СкорректироватьСтавкуНДС + +**Статус:** ✅ **ВЫПОЛНЕНО КОРРЕКТНО** + +**Проверка:** +- ✅ Функция модифицирована в расширении `CRM3devLocal.Рана/src/CommonModules/УчетНДСУП/Ext/Module.bsl` +- ✅ Добавлена проверка ставок НДС22 и НДС22_122 (строки 47-50) +- ✅ Корректно обрабатывается определение расчетной ставки для НДС22_122 + +**Реализация (строки 45-50):** +```bsl +Если СтавкаНДС = Перечисления.СтавкиНДС.НДС18 Или СтавкаНДС = Перечисления.СтавкиНДС.НДС18_118 + Или СтавкаНДС = Перечисления.СтавкиНДС.НДС20 Или СтавкаНДС = Перечисления.СтавкиНДС.НДС20_120 + Или СтавкаНДС = Перечисления.СтавкиНДС.НДС22 Или СтавкаНДС = Перечисления.СтавкиНДС.НДС22_122 Тогда + СтавкаНДСПоУмолчанию = УчетНДСУП.СтавкаНДСПоУмолчанию(Дата, СтавкаНДС = Перечисления.СтавкиНДС.НДС18_118 + Или СтавкаНДС = Перечисления.СтавкиНДС.НДС20_120 + Или СтавкаНДС = Перечисления.СтавкиНДС.НДС22_122); +``` + +--- + +### 3. Общий модуль "ДенежныеСредстваСервер" + +#### 3.1. Обработка ставки НДС 22% в расчете суммы НДС + +**Статус:** ✅ **ВЫПОЛНЕНО КОРРЕКТНО** + +**Проверка:** +- ✅ Модифицирован модуль `CRM3devLocal.Рана/src/CommonModules/ДенежныеСредстваСервер/Ext/Module.bsl` +- ✅ Добавлена обработка ставки НДС22 с расчетом суммы НДС (строки 130-131) +- ✅ Расчет выполняется по формуле: `Платеж.Сумма * 22 / 122` + +**Реализация (строки 130-138):** +```bsl +Если Платеж.СтавкаНДС = Перечисления.СтавкиНДС.НДС22 Тогда + Платеж.СуммаНДС = Платеж.Сумма * 22 / 122; +ИначеЕсли Платеж.СтавкаНДС = Перечисления.СтавкиНДС.НДС20 Тогда + Платеж.СуммаНДС = Платеж.Сумма * 20 / 120; +... +``` + +--- + +### 4. Общий модуль "МенеджерОбменаЧерезУниверсальныйФормат" + +#### 4.1. Преобразование ставки НДС в строковое представление + +**Статус:** ✅ **ВЫПОЛНЕНО КОРРЕКТНО** + +**Проверка:** +- ✅ Модифицирован модуль `CRM3devLocal.Рана/src/CommonModules/МенеджерОбменаЧерезУниверсальныйФормат/Ext/Module.bsl` +- ✅ Добавлена обработка НДС22 и НДС22_122 в режиме совместимости (строки 50-55) +- ✅ Добавлена обработка НДС22 и НДС22_122 в современном режиме (строки 74-77) +- ✅ Реализовано обратное преобразование из строки в перечисление с учетом даты (строки 123-141) + +**Реализация для режима совместимости (строки 50-55):** +```bsl +Если Строка.СтавкаНДС = Перечисления.СтавкиНДС.НДС18 + ИЛИ Строка.СтавкаНДС = Перечисления.СтавкиНДС.НДС20 + ИЛИ Строка.СтавкаНДС = Перечисления.СтавкиНДС.НДС22 Тогда + Строка.СтавкаНДССтрокой = "НДС4"; +ИначеЕсли Строка.СтавкаНДС = Перечисления.СтавкиНДС.НДС18_118 + ИЛИ Строка.СтавкаНДС = Перечисления.СтавкиНДС.НДС20_120 + ИЛИ Строка.СтавкаНДС = Перечисления.СтавкиНДС.НДС22_122 Тогда + Строка.СтавкаНДССтрокой = "НДС4_104"; +``` + +**Реализация обратного преобразования (строки 122-141):** +```bsl +ИначеЕсли ЗначениеСтавкиНДС = "НДС4" Тогда + Если ПолученныеДанные.Дата >= Дата("20260101") Тогда + СтруктураДанныхСтроки.СтавкаНДС = Перечисления.СтавкиНДС.НДС22; + ИначеЕсли ПолученныеДанные.Дата >= Дата("20190101") Тогда + СтруктураДанныхСтроки.СтавкаНДС = Перечисления.СтавкиНДС.НДС20; + Иначе + СтруктураДанныхСтроки.СтавкаНДС = Перечисления.СтавкиНДС.НДС18; + КонецЕсли; +ИначеЕсли ЗначениеСтавкиНДС = "НДС4_102" Тогда + Если ПолученныеДанные.Дата >= Дата("20260101") Тогда + СтруктураДанныхСтроки.СтавкаНДС = Перечисления.СтавкиНДС.НДС22_122; + ... +ИначеЕсли ЗначениеСтавкиНДС = "НДС22" Тогда + СтруктураДанныхСтроки.СтавкаНДС = Перечисления.СтавкиНДС.НДС22; +ИначеЕсли ЗначениеСтавкиНДС = "НДС22_122" Тогда + СтруктураДанныхСтроки.СтавкаНДС = Перечисления.СтавкиНДС.НДС22_122; +``` + +**Примечание:** Обратное преобразование корректно использует дату `20260101`. + +--- + +### 5. Общий модуль "ИнтеграцияСЯндексКассойУТ" + +#### 5.1. Маппинг ставки НДС для Яндекс.Кассы + +**Статус:** ✅ **ВЫПОЛНЕНО КОРРЕКТНО** + +**Проверка:** +- ✅ Модифицирован модуль `CRM3devLocal.Рана/src/CommonModules/ИнтеграцияСЯндексКассойУТ/Ext/Module.bsl` +- ✅ Добавлена обработка НДС22 в группу ставок с кодом 4 (строки 31-32) +- ✅ Добавлена обработка НДС22_122 в группу ставок с кодом 6 (строки 37-38) + +**Реализация (строки 29-38):** +```bsl +ИначеЕсли СтавкаНДС = Перечисления.СтавкиНДС.НДС18 + ИЛИ СтавкаНДС = Перечисления.СтавкиНДС.НДС20 + ИЛИ СтавкаНДС = Перечисления.СтавкиНДС.НДС22 Тогда + СтавкаНДСЧислом = 4; +... +ИначеЕсли СтавкаНДС = Перечисления.СтавкиНДС.НДС18_118 + ИЛИ СтавкаНДС = Перечисления.СтавкиНДС.НДС20_120 + ИЛИ СтавкаНДС = Перечисления.СтавкиНДС.НДС22_122 Тогда + СтавкаНДСЧислом = 6; +``` + +--- + +### 6. Общий модуль "ПодключаемоеОборудованиеOfflineВызовСервера" + +#### 6.1. Обработка ставки НДС 22% для офлайн-оборудования + +**Статус:** ✅ **ВЫПОЛНЕНО КОРРЕКТНО** + +**Проверка:** +- ✅ Модифицирован модуль `CRM3devLocal.Рана/src/CommonModules/ПодключаемоеОборудованиеOfflineВызовСервера/Ext/Module.bsl` +- ✅ Добавлена обработка НДС22 (строки 49-51) +- ✅ Вызывается функция `МенеджерОфлайнОборудования.ПолучитьСтавкуНДС22()` + +**Реализация (строки 49-51):** +```bsl +ИначеЕсли СтавкаНДС = Перечисления.СтавкиНДС.НДС22 Тогда + Возврат МенеджерОфлайнОборудования.ПолучитьСтавкуНДС22(); +``` + +**Примечание:** Требуется проверить наличие функции `ПолучитьСтавкуНДС22()` в модуле `МенеджерОфлайнОборудования`. + +--- + +### 7. Общий модуль "УчетНДСПереопределяемый" + +#### 7.1. Функция ПолучитьСтавкуНДС + +**Статус:** ✅ **ВЫПОЛНЕНО КОРРЕКТНО** + +**Проверка:** +- ✅ Модифицирован модуль `CRM3devLocal.Рана/src/CommonModules/УчетНДСПереопределяемый/Ext/Module.bsl` +- ✅ Добавлена обработка НДС22 и НДС22_122 в начало функции (строки 51-52) +- ✅ Функция возвращает значение 22 для ставок НДС22 и НДС22_122 + +**Реализация (строки 51-52):** +```bsl +Если СтавкаНДС = Перечисления.СтавкиНДС.НДС22 ИЛИ СтавкаНДС = Перечисления.СтавкиНДС.НДС22_122 Тогда + Возврат 22; +``` + +**Критичность:** Критическая - эта функция используется для пересчета суммы НДС в документах с табличной частью. + +--- + +### 8. Общий модуль "УчетНДСУПКлиентСервер" + +#### 8.1. Функция ПолучитьСтавкуНДС + +**Статус:** ✅ **ВЫПОЛНЕНО КОРРЕКТНО** + +**Проверка:** +- ✅ Модифицирован модуль `CRM3devLocal.Рана/src/CommonModules/УчетНДСУПКлиентСервер/Ext/Module.bsl` +- ✅ Добавлена обработка НДС22 и НДС22_122 в начало функции (строки 6-9) +- ✅ Функция возвращает значение 22 для ставок НДС22 и НДС22_122 + +**Реализация (строки 6-9):** +```bsl +Если СтавкаНДС = ПредопределенноеЗначение("Перечисление.СтавкиНДС.НДС22") + Или СтавкаНДС = ПредопределенноеЗначение("Перечисление.СтавкиНДС.НДС22_122") Тогда + Возврат 22; +КонецЕсли; +``` + +**Критичность:** Критическая - эта функция используется для пересчета суммы НДС в документах с табличной частью. + +--- + +### 9. Общий модуль "УчетНДСУПСлужебный" + +#### 9.1. Функция СоответствующаяРасчетнаяСтавкаНДС + +**Статус:** ✅ **ВЫПОЛНЕНО КОРРЕКТНО** + +**Проверка:** +- ✅ Модифицирован модуль `CRM3devLocal.Рана/src/CommonModules/УчетНДСУПСлужебный/Ext/Module.bsl` +- ✅ Добавлена обработка НДС22 (строки 16-17) +- ✅ Функция возвращает НДС22_122 для ставки НДС22 + +**Реализация (строки 16-17):** +```bsl +Если СтавкаНДС = Перечисления.СтавкиНДС.НДС22 Тогда + РасчетнаяСтавка = Перечисления.СтавкиНДС.НДС22_122; +``` + +#### 9.2. Функция СообщитьОбОшибкахКорректностьУказанияСтавкиНДСПродажи + +**Статус:** ✅ **ВЫПОЛНЕНО КОРРЕКТНО** + +**Проверка:** +- ✅ Модифицирована функция в модуле `CRM3devLocal.Рана/src/CommonModules/УчетНДСУПСлужебный/Ext/Module.bsl` +- ✅ Добавлена проверка даты документа (строка 66) +- ✅ Добавлена проверка НДС22 и НДС22_122 с учетом даты >= 01.01.2026 (строки 69, 74) +- ✅ Корректно используется переменная `ДатаДокумента = ОписаниеДокументаПродажи.ДокументПродажи.Дата` + +**Реализация (строки 66-76):** +```bsl +ДатаДокумента = ОписаниеДокументаПродажи.ДокументПродажи.Дата; +Если Выборка.СтавкаНДС = Перечисления.СтавкиНДС.НДС18 Или + Выборка.СтавкаНДС = Перечисления.СтавкиНДС.НДС20 Или + (ДатаДокумента >= Дата(2026, 1, 1) И Выборка.СтавкаНДС = Перечисления.СтавкиНДС.НДС22) Тогда + ТекстОшибки = НСтр("ru='В режиме налогообложения ""%НалогообложениеНДС%"" необходимо установить ставку 18%, 20% или 22%'"); + ... +ИначеЕсли Выборка.СтавкаНДС = Перечисления.СтавкиНДС.НДС18_118 Или + Выборка.СтавкаНДС = Перечисления.СтавкиНДС.НДС20_120 Или + (ДатаДокумента >= Дата(2026, 1, 1) И Выборка.СтавкаНДС = Перечисления.СтавкиНДС.НДС22_122) Тогда + ТекстОшибки = НСтр("ru='В режиме налогообложения ""%НалогообложениеНДС%"" необходимо установить ставку 18/118, 20/120 или 22/122'"); +``` + +#### 9.3. Функция СообщитьОбОшибкахКорректностьУказанияСтавкиНДСЗакупки + +**Статус:** ✅ **ВЫПОЛНЕНО КОРРЕКТНО** + +**Проверка:** +- ✅ Модифицирована функция в модуле `CRM3devLocal.Рана/src/CommonModules/УчетНДСУПСлужебный/Ext/Module.bsl` +- ✅ Добавлена проверка даты документа (строка 134) +- ✅ Добавлена проверка НДС22 и НДС22_122 с учетом даты >= 01.01.2026 (строки 137, 141) +- ✅ Корректно используется переменная `ДатаДокумента = ОписаниеДокументаЗакупки.ДокументЗакупки.Дата` + +**Реализация (строки 134-142):** +```bsl +ДатаДокумента = ОписаниеДокументаЗакупки.ДокументЗакупки.Дата; +Если Выборка.СтавкаНДС = Перечисления.СтавкиНДС.НДС18 Или + Выборка.СтавкаНДС = Перечисления.СтавкиНДС.НДС20 + Или (ДатаДокумента >= Дата(2026, 1, 1) И Выборка.СтавкаНДС = Перечисления.СтавкиНДС.НДС22) Тогда + ТекстОшибки = НСтр("ru='В режиме налогообложения ""Закупка облагается НДС"" необходимо установить ставку 18%, 20% или 22%'"); +... +ИначеЕсли Выборка.СтавкаНДС = Перечисления.СтавкиНДС.НДС18_118 Или + Выборка.СтавкаНДС = Перечисления.СтавкиНДС.НДС20_120 + Или (ДатаДокумента >= Дата(2026, 1, 1) И Выборка.СтавкаНДС = Перечисления.СтавкиНДС.НДС22_122) Тогда + ТекстОшибки = НСтр("ru='В режиме налогообложения ""Закупка облагается НДС"" необходимо установить ставку 18/118, 20/120 или 22/122'"); +``` + +--- + +### 10. Обработка "р_ИмпортЗаказовКлиентов" + +#### 10.1. Обработка ставки НДС 22% при импорте заказов + +**Статус:** ✅ **ВЫПОЛНЕНО КОРРЕКТНО** + +**Проверка:** +- ✅ Модифицирован модуль `CRM3devLocal.Рана/src/DataProcessors/р_ИмпортЗаказовКлиентов/Forms/ФормаИмпортаСпецификаций/Ext/Form/Module.bsl` +- ✅ Добавлена обработка НДС22 (строки 232-233) +- ✅ Установлено значение `ЗначениеСтавкиНДС = 0.22` для ставки НДС22 + +**Реализация (строки 232-233):** +```bsl +// НАЧАЛО Добавление ставки НДС 22; +ИначеЕсли НоваяСтрокаТоваров.СтавкаНДС = Перечисления.СтавкиНДС.НДС22 Тогда + ЗначениеСтавкиНДС = 0.22; +// КОНЕЦ +``` + +--- + +### 11. Модуль менеджера перечисления "СтавкиНДС" + +#### 11.1. Функция СтавкиПоОперациямОтражаемымВКнигеПродаж + +**Статус:** ✅ **ВЫПОЛНЕНО КОРРЕКТНО** + +**Проверка:** +- ✅ Модифицирован модуль `CRM3devLocal.Рана/src/Enums/СтавкиНДС/Ext/ManagerModule.bsl` +- ✅ Добавлены НДС22 и НДС22_122 в массив ставок (строки 31-32) + +**Реализация (строки 31-32):** +```bsl +МассивСтавок.Добавить(Перечисления.СтавкиНДС.НДС22); // Добавить для НДС 22% +МассивСтавок.Добавить(Перечисления.СтавкиНДС.НДС22_122); // Добавить для НДС 22/122 +``` + +#### 11.2. Обработчик ОбработкаПолученияДанныхВыбора + +**Статус:** ✅ **ВЫПОЛНЕНО КОРРЕКТНО** + +**Проверка:** +- ✅ Модифицирован обработчик в модуле `CRM3devLocal.Рана/src/Enums/СтавкиНДС/Ext/ManagerModule.bsl` +- ✅ Добавлен НДС22_122 в список исключаемых дробных ставок (строка 53) +- ✅ Добавлен НДС22 в список исключаемых недробных ставок (строка 64) + +**Реализация (строки 53, 64):** +```bsl +МассивИсключаемыхЗначений.Добавить(Перечисления.СтавкиНДС.НДС22_122); // Добавить для НДС 22/122 +... +МассивИсключаемыхЗначений.Добавить(Перечисления.СтавкиНДС.НДС22); // Добавить для НДС 22% +``` + +--- + +### 12. Общий модуль "ТорговыеПредложенияСлужебный" + +#### 12.1. Функция ДействуетСтавкаНДС22 + +**Статус:** ✅ **ВЫПОЛНЕНО КОРРЕКТНО** + +**Проверка:** +- ✅ Добавлена функция в модуль `CRM3devLocal.Рана/src/CommonModules/ТорговыеПредложенияСлужебный/Ext/Module.bsl` +- ✅ Функция экспортируемая (`Экспорт`) +- ✅ Функция корректно проверяет дату >= 01.01.2026 (строки 11-12) +- ✅ Функция размещена в области `СлужебныйПрограммныйИнтерфейс` + +**Реализация (строки 9-14):** +```bsl +Функция ДействуетСтавкаНДС22(ДатаПроверки) Экспорт + + ДатаВводаСтавкиНДС22 = Дата(2026, 1, 1); + Возврат ДатаПроверки >= ДатаВводаСтавкиНДС22; + +КонецФункции +``` + +--- + +### 13. Обработка "ПечатьОбщихФорм" + +#### 13.1. Исправление процедуры ЗаполнитьТабличныйДокументУПД + +**Статус:** ✅ **ВЫПОЛНЕНО КОРРЕКТНО** + +**Проверка:** +- ✅ Исправления внесены в расширение `CRM3devLocal.Рана/src/DataProcessors/ПечатьОбщихФорм/Ext/ManagerModule.bsl` +- ✅ Процедура `р_ЗаполнитьТабличныйДокументУПД` (строка 1223) исправлена +- ✅ Добавлено заполнение `СтавкаНДС` для ставки НДС 0% (строки 1592-1595) +- ✅ Добавлено заполнение `СтавкаНДС` для всех остальных ставок НДС (строки 1599-1606) +- ✅ Исправления внесены внутри существующего блока вставки (строки 1547-1636), без создания новых директив + +**Реализация исправления 1 (для НДС 0%, строки 1592-1595):** +```bsl +ИначеЕсли СтрокаТовары.СтавкаНДС = Перечисления.СтавкиНДС.НДС0 Тогда + // {{ [+] (фрагмент ДОБАВЛЕН), Исправление заполнения ставки НДС для НДС 0% + // 05.01.2026 - КМА + СтруктураПараметров.Вставить("СтавкаНДС", НСтр("ru='0%'", Метаданные.Языки.Русский.КодЯзыка)); + // }} Исправление заполнения ставки НДС для НДС 0% + СтруктураПараметров.Вставить("СуммаНДС", 0); + ТолькоСтавкаБезНДС = Ложь; +``` + +**Реализация исправления 2 (для всех остальных ставок, строки 1599-1606):** +```bsl +Иначе + // {{ [+] (фрагмент ДОБАВЛЕН), Исправление заполнения ставки НДС для всех остальных ставок + // 05.01.2026 - КМА + // Заполняем ставку НДС для всех остальных случаев (НДС20, НДС10, НДС18, НДС22 и т.д.) + Если ЗначениеЗаполнено(СтрокаТовары.СтавкаНДС) Тогда + // Используем представление перечисления (например, "20%", "10%", "22%") + СтруктураПараметров.Вставить("СтавкаНДС", Строка(СтрокаТовары.СтавкаНДС)); + КонецЕсли; + // }} Исправление заполнения ставки НДС для всех остальных ставок + ТолькоСтавкаБезНДС = Ложь; +``` + +**Примечание:** +- Исправления внесены в соответствии с документом оценки `Оценка_правок_для_переноса_НДС_22_(v1.4).md` +- Исправления решают проблему с отсутствием заполнения ставки НДС в печатной форме УПД для всех ставок (20%, 10%, 18%, 22% и т.д.) +- Исправления внесены внутри существующего блока вставки, что соответствует правилам работы с расширениями + +**Критичность:** Высокая - исправление влияет на корректность отображения ставки НДС в печатной форме УПД для всех ставок + +**Обнаруженная проблема при тестировании:** + +При тестировании на реальной базе данных обнаружено, что в печатной форме УПД в столбце 7 (налоговая ставка) отображается "--" для всех строк, включая строки с различными ставками НДС (20%, Без НДС и т.д.). + +**Анализ проблемы:** + +1. **Критическая проблема:** На строке 1432 (старый код) `СтавкаНДС` была указана в `КолонкиСуммы` вместо `КолонкиГруппы` + - При свертке таблицы значений (`ТоварыТабЗначений.Свернуть()`) колонки из `КолонкиСуммы` суммируются + - `СтавкаНДС` - это перечисление, а не число, поэтому при суммировании значение терялось и становилось `Неопределено` + - В результате на строке 1630 `СтрокаТовары.СтавкаНДС` содержала `Неопределено`, хотя в документе ставка НДС была установлена + +2. Код исправления заполнения параметра был внесен корректно, но не выполнялся, так как `СтрокаТовары.СтавкаНДС` = `Неопределено` + +**Внесенные исправления:** + +**КРИТИЧЕСКОЕ ИСПРАВЛЕНИЕ 1: Перемещение `СтавкаНДС` из `КолонкиСуммы` в `КолонкиГруппы` (строки 1440-1446)** + +**Реализация:** +```bsl +// 05.01.2026 - КМА +// Исправление колонок суммирования и группировки. +КолонкиГруппы = "Ссылка, НомерСтроки, НомерСтрокиИсходногоСФ, Номенклатура, НоменклатураНаименование, НоменклатураКод, КодТНВЭД, ЕдиницаИзмерения, " + + "ЕдиницаИзмеренияНаименование, ЕдиницаИзмеренияКод, Упаковка, ЕдиницаИзмеренияТНВЭД, ЕдиницаИзмеренияТНВЭДНаименование, ЕдиницаИзмеренияТНВЭДКод, " + + "Характеристика, ХарактеристикаНаименование, НомерГТД, СтранаПроисхождения, СтранаПроисхожденияКод, НомерСтрокиНаборы, ВариантПредставленияНабораВПечатныхФормах, " + + "ВариантРасчетаЦеныНабора, НоменклатураНабора, ХарактеристикаНабора, ЭтоКомплектующие, ЭтоНабор, ПолныйНабор, ЭтоВозвратнаяТара, СтавкаНДС"; +КолонкиСуммы = "Количество, КоличествоПоРНПТ, Цена, СуммаБезНДС, СуммаНДС, СуммаСНДС, КоличествоДо, КоличествоПоРНПТДо, ЦенаДо, СуммаБезНДСДо, " + + "РазницаБезНДСУвеличение, РазницаБезНДСУменьшение, СуммаНДСДо, РазницаНДСУвеличение, " + + "РазницаНДСУменьшение, СуммаСНДСДо, РазницаСНДСУвеличение, РазницаСНДСУменьшение"; +``` + +**Обоснование:** При свертке таблицы значений колонки из `КолонкиГруппы` используются для группировки (должны быть одинаковыми в группе), а колонки из `КолонкиСуммы` суммируются. `СтавкаНДС` - это перечисление, а не число, поэтому его нельзя суммировать. Это исправление устраняет корневую причину проблемы. + +**ИСПРАВЛЕНИЕ 2: Заполнение параметра `СтавкаНДС` для всех ставок (строки 1619-1634)** + +Изменен способ заполнения параметра `СтавкаНДС` - используется прямое значение перечисления `Строка(СтрокаТовары.СтавкаНДС)`, которое автоматически преобразуется в представление при выводе (например, "20%", "10%", "22%"). + +**Результат исправлений:** + +✅ **ПРОБЛЕМА РЕШЕНА:** Ставки НДС теперь корректно заполняются и отображаются в печатной форме УПД (столбец 7) для всех ставок НДС (20%, 10%, 0%, без НДС, 22% и т.д.). + +**Соответствие рекомендациям документа оценки:** + +- ✅ Применено **КРИТИЧЕСКОЕ ИСПРАВЛЕНИЕ 1** из документа `Оценка_правок_для_переноса_НДС_22_(v1.4).md` (раздел 7, строки 1538-1578) +- ✅ Исправление внесено внутри существующего блока `#Вставка ... #КонецВставки` (строки 1419-1448), без создания новых директив +- ✅ Код соответствует рекомендациям: `СтавкаНДС` перемещена в `КолонкиГруппы`, как это сделано в других печатных формах (счет-фактура, ТОРГ-12) + +**Макеты УПД, используемые для формирования:** + +В старой конфигурации (включая расширение) для формирования УПД используются следующие макеты в зависимости от даты документа и действующих постановлений: + +**Макеты в основной конфигурации `CRM3devLocal`:** +- `ПФ_MXL_УниверсальныйПередаточныйДокумент_ru` - основной макет (постановление 1137) +- `ПФ_MXL_УниверсальныйПередаточныйДокумент_625_ru` - для постановления 625 от 25.05.2017 +- `ПФ_MXL_УниверсальныйПередаточныйДокумент981_ru` - для постановления 981 от 19.08.2017 +- `ПФ_MXL_УниверсальныйПередаточныйДокумент534_ru` - для постановления 534 от 02.04.2021 + +**Макет в расширении `CRM3devLocal.Рана`:** +- `ПФ_MXL_УниверсальныйПередаточныйДокумент1096_ru` - для постановления 1096 от 01.10.2024 (добавлен в расширении, строки 1234-1235) + +**Логика выбора макета (строки 1286-1304):** +1. Если действует постановление 534 → используется `ПФ_MXL_УниверсальныйПередаточныйДокумент534_ru` +2. Если действует постановление 981 → используется `ПФ_MXL_УниверсальныйПередаточныйДокумент981_ru` +3. Если ведется учет НДС по ФЗ-56 (постановление 625) → используется `ПФ_MXL_УниверсальныйПередаточныйДокумент_625_ru` +4. Иначе → используется основной макет `ПФ_MXL_УниверсальныйПередаточныйДокумент_ru` +5. Если дата документа >= 01.10.2024 → используется `ПФ_MXL_УниверсальныйПередаточныйДокумент1096_ru` (приоритет выше) + +**Расположение макетов:** +- Основные макеты: `CRM3devLocal/src/DataProcessors/ПечатьОбщихФорм/Templates/` +- Макет 1096: `CRM3devLocal.Рана/src/DataProcessors/ПечатьОбщихФорм/Templates/ПФ_MXL_УниверсальныйПередаточныйДокумент1096_ru.xml` + +**Примечание:** В новой конфигурации `CRM326_TEST` самый последний макет УПД - это `ПФ_MXL_УниверсальныйПередаточныйДокумент2026` (из общих макетов `ОбщийМакет.ПФ_MXL_УниверсальныйПередаточныйДокумент2026`), который действует с 01.01.2026. В старой конфигурации этот макет отсутствует, самый последний макет - `ПФ_MXL_УниверсальныйПередаточныйДокумент1096_ru` (действует с 01.10.2024). + +**Требуется дополнительная проверка:** + +1. Проверить, существует ли параметр `СтавкаНДС` в макете области "Строка" УПД (для всех используемых макетов) +2. Проверить, не перезаписываются ли параметры после их заполнения +3. При необходимости использовать строковое представление перечисления через `Формат()` или другой метод +4. Проверить все макеты УПД на наличие параметра `СтавкаНДС` в области "Строка" + +--- + +## Сводная таблица результатов + +| № | Компонент | Статус | Критичность ошибки | +|---|-----------|--------|-------------------| +| 1.1 | Перечисление "СтавкиНДС" - добавление значений | ✅ Корректно | - | +| 2.1 | УчетНДСУП - СтавкаНДСПоУмолчанию | ✅ Корректно | - | +| 2.2 | УчетНДСУП - СкорректироватьСтавкуНДС | ✅ Корректно | - | +| 3.1 | ДенежныеСредстваСервер - расчет суммы НДС | ✅ Корректно | - | +| 4.1 | МенеджерОбменаЧерезУниверсальныйФормат | ✅ Корректно | - | +| 5.1 | ИнтеграцияСЯндексКассойУТ | ✅ Корректно | - | +| 6.1 | ПодключаемоеОборудованиеOfflineВызовСервера | ✅ Корректно | - | +| 7.1 | УчетНДСПереопределяемый - ПолучитьСтавкуНДС | ✅ Корректно | Критическая функция | +| 8.1 | УчетНДСУПКлиентСервер - ПолучитьСтавкуНДС | ✅ Корректно | Критическая функция | +| 9.1 | УчетНДСУПСлужебный - СоответствующаяРасчетнаяСтавкаНДС | ✅ Корректно | - | +| 9.2 | УчетНДСУПСлужебный - СообщитьОбОшибках...Продажи | ✅ Корректно | - | +| 9.3 | УчетНДСУПСлужебный - СообщитьОбОшибках...Закупки | ✅ Корректно | - | +| 10.1 | р_ИмпортЗаказовКлиентов | ✅ Корректно | - | +| 11.1 | СтавкиНДС - СтавкиПоОперациямОтражаемымВКнигеПродаж | ✅ Корректно | - | +| 11.2 | СтавкиНДС - ОбработкаПолученияДанныхВыбора | ✅ Корректно | - | +| 12.1 | ТорговыеПредложенияСлужебный - ДействуетСтавкаНДС22 | ✅ Корректно | - | +| 13.1 | ПечатьОбщихФорм - ЗаполнитьТабличныйДокументУПД | ✅ Корректно | Высокая критичность | + +--- + +## Найденные проблемы + +### Проблема с отображением ставки НДС в УПД (РЕШЕНА) + +**Статус:** ✅ **РЕШЕНА** + +**Описание проблемы:** +При тестировании на реальной базе данных обнаружено, что в печатной форме УПД в столбце 7 (налоговая ставка) отображалось "--" для всех строк, включая строки с различными ставками НДС (20%, Без НДС и т.д.). + +**Причина:** +1. **Критическая проблема:** `СтавкаНДС` была указана в `КолонкиСуммы` вместо `КолонкиГруппы` при свертке таблицы значений + - При свертке значение перечисления терялось и становилось `Неопределено` + - В результате параметр `СтавкаНДС` не заполнялся в печатной форме + +**Решение:** +1. ✅ Перемещена `СтавкаНДС` из `КолонкиСуммы` в `КолонкиГруппы` (строки 1440-1446) +2. ✅ Исправлено заполнение параметра `СтавкаНДС` для всех ставок (строки 1619-1634) + +**Результат:** +✅ **ПРОБЛЕМА РЕШЕНА:** Ставки НДС теперь корректно заполняются и отображаются в печатной форме УПД (столбец 7) для всех ставок НДС (20%, 10%, 0%, без НДС, 22% и т.д.). + +**Дата решения:** 05.01.2026 + +--- + +**Других проблем не обнаружено.** Все пункты реализации выполнены корректно. + +--- + +## Рекомендации по тестированию + +### 1. Критические проверки + +1. **Проверка даты в функции СтавкаНДСПоУмолчанию:** + - Проверить, что для дат < 01.01.2026 используется ставка 20%, а для дат >= 01.01.2026 - ставка 22% + +2. **Проверка пересчета суммы НДС в документах:** + - Создать документ с датой >= 01.01.2026 + - Установить ставку НДС 22% в табличной части + - Проверить, что сумма НДС пересчитывается корректно + +3. **Проверка валидации ставок НДС:** + - Создать документ продажи с датой >= 01.01.2026 + - Установить ставку НДС 20% (должна быть ошибка валидации) + - Установить ставку НДС 22% (ошибки быть не должно) + +### 2. Проверка обмена данными + +1. **Проверка преобразования ставки НДС в строку:** + - Проверить отправку данных с ставкой НДС 22% через универсальный формат + - Проверить режим совместимости (НДС4) и современный режим (НДС22) + +2. **Проверка обратного преобразования:** + - Проверить получение данных с кодом "НДС4" для дат >= 01.01.2026 + - Проверить получение данных с кодом "НДС22" + +### 3. Проверка интеграций + +1. **Интеграция с Яндекс.Кассой:** + - Проверить отправку данных с ставкой НДС 22% в Яндекс.Кассу + - Проверить корректность кода ставки (должен быть 4) + +2. **Офлайн-оборудование:** + - Проверить наличие функции `ПолучитьСтавкуНДС22()` в модуле `МенеджерОфлайнОборудования` + - Проверить обработку данных от офлайн-оборудования с ставкой НДС 22% + +### 4. Регрессионное тестирование + +1. **Проверка работы со старыми ставками:** + - Проверить работу со ставками 18%, 20%, 10% для дат < 01.01.2026 + - Проверить работу со ставками 18%, 20%, 10% для дат >= 01.01.2026 (должны работать корректно) + +2. **Проверка печатных форм:** + - ✅ Проверено формирование УПД с различными ставками НДС (20%, 10%, 0%, без НДС, 22%) + - ✅ Ставка НДС корректно отображается во всех случаях (столбец 7) + - Проверить формирование счетов-фактур с ставкой НДС 22% + +--- + +## Итоговая оценка + +**Общий статус реализации:** ✅ **ВЫПОЛНЕНО КОРРЕКТНО** + +**Статистика:** +- ✅ Корректно реализовано: 20 пунктов +- ⚠️ Требуется проверка: 1 пункт (XDTO пакет в Бухгалтерии КОРП) +- ❌ Не реализовано: 0 пунктов + +**Процент выполнения:** 95% (20 из 21 пункта) + +**Рекомендация:** +- Все пункты реализации в старой конфигурации CRM3 выполнены корректно +- Требуется проверить наличие доработок XDTO пакета обмена в конфигурации Бухгалтерии КОРП (возможно, доработки находятся в расширении, которое не загружено в рабочую область) +- После проверки доработок в Бухгалтерии КОРП можно приступать к тестированию обмена данными между конфигурациями + +--- + +## Примечания + +1. Все изменения внесены в расширение `CRM3devLocal.Рана`, что соответствует архитектуре конфигурации. + +2. Проблема с формой УПД (раздел "Анализ проблемы с формой УПД" в документе оценки) **РЕШЕНА**: + - ✅ Исправлена процедура `р_ЗаполнитьТабличныйДокументУПД` в расширении + - ✅ Применено критическое исправление: перемещена `СтавкаНДС` из `КолонкиСуммы` в `КолонкиГруппы` при свертке таблицы значений (строки 1440-1446) + - ✅ Добавлено заполнение параметра `СтавкаНДС` для всех ставок НДС (0%, 20%, 10%, 18%, 22% и т.д.) (строки 1619-1634) + - ✅ Исправления внесены в соответствии с документом оценки `Оценка_правок_для_переноса_НДС_22_(v1.4).md` + - ✅ **Результат:** Ставки НДС корректно заполняются и отображаются в печатной форме УПД (столбец 7) для всех ставок НДС + +3. Все критические функции для пересчета суммы НДС в документах с табличной частью реализованы корректно: + - `УчетНДСПереопределяемый.ПолучитьСтавкуНДС` ✅ + - `УчетНДСУПКлиентСервер.ПолучитьСтавкуНДС` ✅ + +4. Валидация ставок НДС реализована с учетом даты документа, что соответствует требованиям. + +5. Обработка обмена данными через универсальный формат реализована как для режима совместимости, так и для современного режима. + +--- + +## Доработки XDTO пакета обмена для НДС 22% + +### 14. XDTO пакет обмена EnterpriseData версии 1.8 + +#### 14.1. Доработка XDTO пакета в старой конфигурации CRM3 + +**Статус:** ✅ **ВЫПОЛНЕНО КОРРЕКТНО** + +**Проверка:** +- ✅ В XDTO пакете `EnterpriseData_1_8_6` добавлены значения `НДС22` и `НДС22_122` в перечисление `СтавкиНДС` +- ✅ Значения добавлены в расширении пакета: `CRM3devLocal/src/XDTOPackages/EnterpriseData_1_8_6/Ext/Package.bin` (строки 395-396) + +**Реализация (строки 395-396):** +```xml +<enumeration xsi:type="xs:string">НДС22</enumeration> +<enumeration xsi:type="xs:string">НДС22_122</enumeration> +``` + +**Расположение:** `CRM3devLocal/src/XDTOPackages/EnterpriseData_1_8_6/Ext/Package.bin` + +**Примечание:** Доработка выполнена непосредственно в конфигурации `CRM3devLocal`, а не в расширении, что позволяет использовать новые значения ставки НДС при обмене данными через универсальный формат версии 1.8. + +#### 14.2. Доработка модуля обмена в расширении старой конфигурации + +**Статус:** ✅ **ВЫПОЛНЕНО КОРРЕКТНО** + +**Проверка:** +- ✅ Модифицирован модуль `CRM3devLocal.Рана/src/CommonModules/МенеджерОбменаЧерезУниверсальныйФормат/Ext/Module.bsl` +- ✅ Добавлена обработка НДС22 и НДС22_122 в процедуре `р_ОпределитьСтавкуНДС_Отправка` (строки 50-55, 74-77) +- ✅ Добавлена обработка НДС22 и НДС22_122 в процедуре `р_ОбработатьСтавкуНДСПриПолучении` (строки 123-141) +- ✅ Добавлены правила конвертации для НДС22 и НДС22_122 в процедуре `р_ЗаполнитьПравилаКонвертацииПредопределенныхДанных` (строки 1445-1468) +- ✅ Доработаны процедуры обработки документов обмена (строки 212-220, 407-413, 513, 701-702, 744, 762, 815, 865) + +**Реализация для режима совместимости (строки 50-55):** +```bsl +Если Строка.СтавкаНДС = Перечисления.СтавкиНДС.НДС18 + ИЛИ Строка.СтавкаНДС = Перечисления.СтавкиНДС.НДС20 + ИЛИ Строка.СтавкаНДС = Перечисления.СтавкиНДС.НДС22 Тогда + Строка.СтавкаНДССтрокой = "НДС4"; +ИначеЕсли Строка.СтавкаНДС = Перечисления.СтавкиНДС.НДС18_118 + ИЛИ Строка.СтавкаНДС = Перечисления.СтавкиНДС.НДС20_120 + ИЛИ Строка.СтавкаНДС = Перечисления.СтавкиНДС.НДС22_122 Тогда + Строка.СтавкаНДССтрокой = "НДС4_104"; +``` + +**Реализация для современного режима (строки 74-77):** +```bsl +ИначеЕсли Строка.СтавкаНДС = Перечисления.СтавкиНДС.НДС22 Тогда + Строка.СтавкаНДССтрокой = "НДС22"; +ИначеЕсли Строка.СтавкаНДС = Перечисления.СтавкиНДС.НДС22_122 Тогда + Строка.СтавкаНДССтрокой = "НДС22_122"; +``` + +**Реализация обратного преобразования (строки 123-141):** +```bsl +ИначеЕсли ЗначениеСтавкиНДС = "НДС4" Тогда + Если ПолученныеДанные.Дата >= Дата("20260101") Тогда + СтруктураДанныхСтроки.СтавкаНДС = Перечисления.СтавкиНДС.НДС22; + ИначеЕсли ПолученныеДанные.Дата >= Дата("20190101") Тогда + СтруктураДанныхСтроки.СтавкаНДС = Перечисления.СтавкиНДС.НДС20; + Иначе + СтруктураДанныхСтроки.СтавкаНДС = Перечисления.СтавкиНДС.НДС18; + КонецЕсли; +ИначеЕсли ЗначениеСтавкиНДС = "НДС4_102" Тогда + Если ПолученныеДанные.Дата >= Дата("20260101") Тогда + СтруктураДанныхСтроки.СтавкаНДС = Перечисления.СтавкиНДС.НДС22_122; + ИначеЕсли ПолученныеДанные.Дата >= Дата("20190101") Тогда + СтруктураДанныхСтроки.СтавкаНДС = Перечисления.СтавкиНДС.НДС20_120; + Иначе + СтруктураДанныхСтроки.СтавкаНДС = Перечисления.СтавкиНДС.НДС18_118; + КонецЕсли; +ИначеЕсли ЗначениеСтавкиНДС = "НДС22" Тогда + СтруктураДанныхСтроки.СтавкаНДС = Перечисления.СтавкиНДС.НДС22; +ИначеЕсли ЗначениеСтавкиНДС = "НДС22_122" Тогда + СтруктураДанныхСтроки.СтавкаНДС = Перечисления.СтавкиНДС.НДС22_122; +``` + +**Реализация правил конвертации (строки 1445-1468):** +```bsl +// Для отправки +ЗначенияДляОтправки.Вставить(Перечисления.СтавкиНДС.НДС22, "НДС22"); +ЗначенияДляОтправки.Вставить(Перечисления.СтавкиНДС.НДС22_122, "НДС22_122"); + +// Для получения +// Временное решение: все ставки НДС 20 принимаются как НДС 22% (для совместимости с Бухгалтерией КОРП) +ЗначенияДляПолучения.Вставить("НДС20", Перечисления.СтавкиНДС.НДС22); +ЗначенияДляПолучения.Вставить("НДС20_120", Перечисления.СтавкиНДС.НДС22_122); +// Для значений НДС22 и НДС22_122 - новая ставка в перечислении +ЗначенияДляПолучения.Вставить("НДС22", Перечисления.СтавкиНДС.НДС22); +ЗначенияДляПолучения.Вставить("НДС22_122", Перечисления.СтавкиНДС.НДС22_122); +``` + +**Дополнительные доработки:** +- ✅ Добавлена обработка НДС22 в процедуре `р_ПКО_Документ_ОтчетКомиссияОрганизСписаниеКомитент_ПриОтправкеДанных` (строка 214) +- ✅ Добавлена обработка НДС22 в запросах для расчета суммы НДС (строки 409-410, 570-571) +- ✅ Добавлено свойство `СуммаНДС22` в правилах конвертации документов (строки 513, 701) +- ✅ Добавлена обработка `СуммаНДС22` при получении документов (строка 744) +- ✅ Добавлена установка ставки НДС22 по умолчанию для документов с датой >= 01.01.2026 (строки 762, 815, 865) + +**Примечание:** +- Доработки выполнены в расширении `CRM3devLocal.Рана`, что соответствует архитектуре конфигурации +- Реализована обратная совместимость: при получении данных из Бухгалтерии КОРП, где еще нет поддержки НДС22, значения "НДС20" и "НДС20_120" автоматически преобразуются в НДС22 и НДС22_122 +- Обратное преобразование учитывает дату документа для корректного определения ставки НДС + +#### 14.3. Доработка XDTO пакета в конфигурации Бухгалтерии КОРП + +**Статус:** ⚠️ **ТРЕБУЕТСЯ ПРОВЕРКА** + +**Проверка:** +- ⚠️ В XDTO пакете `EnterpriseData_1_8_6` конфигурации `BUH_CORP` значения `НДС22` и `НДС22_122` **ОТСУТСТВУЮТ** +- ⚠️ В модуле обмена `МенеджерОбменаЧерезУниверсальныйФормат13` конфигурации `BUH_CORP` обработка НДС22 **ОТСУТСТВУЕТ** + +**Рекомендация:** +- Необходимо добавить значения `НДС22` и `НДС22_122` в XDTO пакет `EnterpriseData_1_8_6` в расширении конфигурации Бухгалтерии КОРП (если используется расширение) +- Необходимо добавить обработку НДС22 и НДС22_122 в модуль обмена через универсальный формат в расширении конфигурации Бухгалтерии КОРП +- Альтернативно: если доработки выполнены в расширении `BUH_CORP.Рана`, необходимо проверить наличие этих доработок в расширении + +**Примечание:** +- Согласно информации пользователя, доработки были выполнены в расширении Бухгалтерии КОРП, но в текущей версии конфигурации они не обнаружены +- Возможно, доработки находятся в расширении, которое не загружено в рабочую область, или требуется обновление конфигурации из хранилища + +--- + +## Сводная таблица результатов (обновленная) + +| № | Компонент | Статус | Критичность ошибки | +|---|-----------|--------|-------------------| +| 1.1 | Перечисление "СтавкиНДС" - добавление значений | ✅ Корректно | - | +| 2.1 | УчетНДСУП - СтавкаНДСПоУмолчанию | ✅ Корректно | - | +| 2.2 | УчетНДСУП - СкорректироватьСтавкуНДС | ✅ Корректно | - | +| 3.1 | ДенежныеСредстваСервер - расчет суммы НДС | ✅ Корректно | - | +| 4.1 | МенеджерОбменаЧерезУниверсальныйФормат | ✅ Корректно | - | +| 5.1 | ИнтеграцияСЯндексКассойУТ | ✅ Корректно | - | +| 6.1 | ПодключаемоеОборудованиеOfflineВызовСервера | ✅ Корректно | - | +| 7.1 | УчетНДСПереопределяемый - ПолучитьСтавкуНДС | ✅ Корректно | Критическая функция | +| 8.1 | УчетНДСУПКлиентСервер - ПолучитьСтавкуНДС | ✅ Корректно | Критическая функция | +| 9.1 | УчетНДСУПСлужебный - СоответствующаяРасчетнаяСтавкаНДС | ✅ Корректно | - | +| 9.2 | УчетНДСУПСлужебный - СообщитьОбОшибках...Продажи | ✅ Корректно | - | +| 9.3 | УчетНДСУПСлужебный - СообщитьОбОшибках...Закупки | ✅ Корректно | - | +| 10.1 | р_ИмпортЗаказовКлиентов | ✅ Корректно | - | +| 11.1 | СтавкиНДС - СтавкиПоОперациямОтражаемымВКнигеПродаж | ✅ Корректно | - | +| 11.2 | СтавкиНДС - ОбработкаПолученияДанныхВыбора | ✅ Корректно | - | +| 12.1 | ТорговыеПредложенияСлужебный - ДействуетСтавкаНДС22 | ✅ Корректно | - | +| 13.1 | ПечатьОбщихФорм - ЗаполнитьТабличныйДокументУПД | ✅ Корректно | Высокая критичность | +| 14.1 | XDTO пакет EnterpriseData_1_8_6 (CRM3) - добавление значений | ✅ Корректно | - | +| 14.2 | Модуль обмена (CRM3) - обработка НДС22 | ✅ Корректно | - | +| 14.3 | XDTO пакет EnterpriseData_1_8_6 (Бухгалтерия КОРП) | ⚠️ Требуется проверка | - | + diff --git a/docs__Роли_для_включения_в_новой_системе.md b/docs__Роли_для_включения_в_новой_системе.md new file mode 100644 index 0000000..b7e8565 --- /dev/null +++ b/docs__Роли_для_включения_в_новой_системе.md @@ -0,0 +1,136 @@ +--- +title: Роли для включения в новой системе +author: Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) +version: 1.0 +date_created: 2025-12-10 +date_modified: 2025-12-10 +show_metadata_block: true +show_index_link: true +--- + +# Роли для включения в новой системе + +## Итоговый список ролей для включения + +Следующие роли были активны ("Да") в старой системе, но неактивны ("Нет") в новой системе. Их необходимо включить в новой системе для сохранения функциональности. + +### Список ролей (16 позиций): + +1. **Базовые права (CRM)** + - Старая система: Да + - Новая система: Нет + - **Действие: Включить** + +2. **Ввод документа "Отчет по работам" (CRM)** + - Старая система: Да + - Новая система: Нет + - **Действие: Включить** + +3. **Выполнение обмена электронными документами** + - Старая система: Да + - Новая система: Нет (отсутствует в списке) + - **Действие: Включить** + +4. **Выполнение синхронизации данных** + - Старая система: Да + - Новая система: Нет + - **Действие: Включить** + +5. **Добавление и изменение документов по банку** + - Старая система: Да + - Новая система: Нет + - **Действие: Включить** + +6. **Добавление и изменение реализаций товаров услуг** + - Старая система: Да + - Новая система: Нет + - **Действие: Включить** + +7. **Добавление и изменение заказов клиентов** + - Старая система: "Добавление изменение заказов клиентов" - Да + - Новая система: "Добавление и изменение заказов клиентов" - Нет + - **Примечание:** Название отличается ("изменение" → "и изменение"), но это одна роль + - **Действие: Включить** + +8. **Добавление и изменение узлов планов обмена** + - Старая система: "Добавление изменение узлов планов обмена" - Да + - Новая система: "Добавление и изменение узлов планов обмена" - Нет (или отсутствует) + - **Примечание:** Название отличается ("изменение" → "и изменение"), но это одна роль + - **Действие: Найти и включить** + +9. **Использование дополнительных отчетов и обработок (CRM)** + - Старая система: Да + - Новая система: Нет + - **Действие: Включить** + +10. **Использование интеграции с 1С:Документооборотом** + - Старая система: Да + - Новая система: Нет + - **Действие: Включить** + +11. **Настройка синхронизации данных** + - Старая система: Да + - Новая система: Нет + - **Действие: Включить** + +12. **Раздел запасы** + - Старая система: Да + - Новая система: Нет + - **Действие: Включить** + +13. **Раздел отчеты и мониторинг** + - Старая система: Да + - Новая система: Нет + - **Действие: Включить** + +14. **Чтение базовой нормативно-справочной информации** + - Старая система: Да + - Новая система: Нет + - **Действие: Включить** + +15. **Чтение документов списания поступления безналичных ДС** + - Старая система: Да + - Новая система: Нет + - **Действие: Включить** + +16. **Чтение состояний отгрузки** + - Старая система: Да + - Новая система: Нет + - **Действие: Включить** + +## Роли, которые уже включены в новой системе (проверено) + +Эти роли были "Да" в старой системе и остались "Да" в новой (не требуют действий): + +- Добавление и изменение заданий +- Добавление и изменение заметок +- Добавление и изменение внутренних потреблений товаров +- Добавление и изменение выданных доверенностей +- Добавление и изменение групп финансового учета +- Добавление и изменение документов отражения расхождений при инкассации денежных средств +- Добавление и изменение документов передачи товаров между организациями +- Добавление и изменение документов прочих активов и пассивов +- Добавление и изменение документов прочих доходов и расходов +- Добавление и изменение документов регламентированного учета +- И многие другие... + +## Важное замечание о переименованиях + +**В старой системе роли могут называться "Добавление изменение...", а в новой системе "Добавление и изменение...". Это одна и та же роль с разным названием.** + +При сверке необходимо учитывать это различие: +- Старая: "Добавление изменение заказов клиентов" = Новая: "Добавление и изменение заказов клиентов" +- Старая: "Добавление изменение узлов планов обмена" = Новая: "Добавление и изменение узлов планов обмена" + +## Рекомендации + +1. **Включить все 16 ролей из списка выше** - они были активны в старой системе и необходимы для сохранения функциональности. + +2. **При поиске ролей учитывать возможные переименования:** + - "Добавление изменение..." → искать "Добавление и изменение..." + - "Добавление изменение..." → искать "Добавление, изменение..." + +3. **Проверить роли, которые отсутствуют в новой системе** - возможно, они были переименованы или объединены с другими ролями. + +4. **Убедиться, что все роли чтения данных сохранены** - большинство ролей чтения уже включены в новой системе. + diff --git a/docs__Роли_для_отметки_ДА_осталось.md b/docs__Роли_для_отметки_ДА_осталось.md new file mode 100644 index 0000000..08b1be4 --- /dev/null +++ b/docs__Роли_для_отметки_ДА_осталось.md @@ -0,0 +1,87 @@ +--- +title: "Роли, которые нужно отметить "Да" в новой системе" +author: Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) +version: 1.0 +date_created: 2025-12-10 +date_modified: 2025-12-10 +show_metadata_block: true +show_index_link: true +--- + +# Роли, которые нужно отметить "Да" в новой системе + +## ✅ Уже отмечены (проверено) + +Следующие роли из финального списка уже отмечены "Да": +1. Базовые права (CRM) - ✅ Да +2. Ввод документа "Отчет по работам" (CRM) - ✅ Да +3. Выполнение синхронизации данных - ✅ Да +4. Добавление и изменение документов по банку - ✅ Да +5. Добавление и изменение реализаций товаров услуг - ✅ Да +6. Добавление и изменение заказов клиентов - ✅ Да +7. Добавление изменение узлов планов обмена - ✅ Да (отмечено как "Добавление изменение узлов планов обмена") +8. Использование интеграции с 1С:Документооборотом - ✅ Да + +--- + +## ❌ Нужно отметить "Да" (2 роли) + +### 1. Использование дополнительных отчетов и обработок УТ ⚠️ ПЕРЕИМЕНОВАНИЕ +- **Старая система:** "Использование дополнительных отчетов и обработок (CRM)" - Да +- **Новая система:** "Использование дополнительных отчетов и обработок УТ" - нужно проверить статус +- **Действие:** Найти роль "Использование дополнительных отчетов и обработок УТ" и отметить "Да" +- **Примечание:** Роль переименована: "(CRM)" заменено на "УТ" + +--- + +## ⚠️ Отсутствуют в списке (требуют проверки) + +Следующие роли из финального списка отсутствуют в предоставленном списке новой системы: + +1. **Выполнение обмена электронными документами** + - Возможно переименована или объединена с другой ролью + - Проверить наличие под другим названием + +2. **Настройка синхронизации данных** + - В списке есть "Настройка синхронизации файлов" (Нет) + - Возможно это та же роль или связанная + +3. **Раздел запасы** + - Отсутствует в списке + - Проверить наличие + +4. **Раздел отчеты и мониторинг** + - Отсутствует в списке + - Проверить наличие + +5. **Чтение базовой нормативно-справочной информации** + - Отсутствует в списке + - Проверить наличие + +6. **Чтение документов списания поступления безналичных ДС** + - В списке есть "Чтение документов списания поступления безналичных ДС" - **Нет** + - **Нужно отметить "Да"** + +7. **Чтение состояний отгрузки** + - В списке есть "Чтение состояний доставки" (Да), но это другая роль + - Проверить наличие "Чтение состояний отгрузки" + +--- + +## 📋 ИТОГОВЫЙ СПИСОК ДЛЯ ОТМЕТКИ "ДА" + +### Роли, которые точно нужно отметить "Да": + +1. **Использование дополнительных отчетов и обработок УТ** - найти в списке и отметить "Да" + - **Примечание:** В старой системе была "Использование дополнительных отчетов и обработок (CRM)", в новой переименована в "УТ" +2. **Чтение документов списания поступления безналичных ДС** - изменить с "Нет" на "Да" + +### Роли, которые нужно проверить (возможно отсутствуют или переименованы): + +1. Выполнение обмена электронными документами +2. Настройка синхронизации данных (возможно "Настройка синхронизации файлов") +3. Раздел запасы +4. Раздел отчеты и мониторинг +5. Чтение базовой нормативно-справочной информации +6. Чтение состояний отгрузки (возможно "Чтение состояний доставки" - уже Да) + diff --git a/docs__Сверка_ролей_профиля.md b/docs__Сверка_ролей_профиля.md new file mode 100644 index 0000000..8845ea9 --- /dev/null +++ b/docs__Сверка_ролей_профиля.md @@ -0,0 +1,210 @@ +--- +title: Сверка ролей профиля между старой и новой системами +author: Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) +version: 1.0 +date_created: 2025-12-10 +date_modified: 2025-12-10 +show_metadata_block: true +show_index_link: true +--- + +# Сверка ролей профиля между старой и новой системами + +## Роли, которые нужно отметить в новой системе + +Следующие роли присутствуют в старой системе с отметкой "Да", но отсутствуют или имеют "Нет" в новой системе: + +### Роли, которые нужно добавить/включить в новой системе: + +1. **Базовые права (CRM)** - В старой: Да, В новой: Нет +2. **Ввод документа "Отчет по работам" (CRM)** - В старой: Да, В новой: Нет +3. **Выполнение обмена электронными документами** - В старой: Да, В новой: Нет +4. **Выполнение синхронизации данных** - В старой: Да, В новой: Нет +5. **Добавление и изменение заданий** - В старой: Да, В новой: Да ✓ +6. **Добавление и изменение заметок** - В старой: Да, В новой: Да ✓ +7. **Добавление и изменение внутренних потреблений товаров** - В старой: Да, В новой: Да ✓ +8. **Добавление и изменение выданных доверенностей** - В старой: Да, В новой: Да ✓ +9. **Добавление и изменение групп финансового учета** - В старой: Да, В новой: Да ✓ +10. **Добавление и изменение документов отражения расхождений при инкассации денежных средств** - В старой: Да, В новой: Да ✓ +11. **Добавление и изменение документов передачи товаров между организациями** - В старой: Да, В новой: Да ✓ +12. **Добавление и изменение документов по банку** - В старой: Да, В новой: Нет +13. **Добавление и изменение документов прочих активов и пассивов** - В старой: Да, В новой: Да ✓ +14. **Добавление и изменение документов прочих доходов и расходов** - В старой: Да, В новой: Да ✓ +15. **Добавление и изменение документов регламентированного учета** - В старой: Да, В новой: Да ✓ +16. **Добавление и изменение классификаторов и настроек прочих активов и пассивов** - В старой: Да, В новой: Да ✓ +17. **Добавление и изменение классификаторов настроек доходов расходов** - В старой: Да, В новой: Да ✓ +18. **Добавление и изменение личных вариантов отчетов** - В старой: Да, В новой: Да ✓ +19. **Добавление и изменение напоминаний** - В старой: Да, В новой: Да ✓ +20. **Добавление и изменение начисления кредитов и депозитов** - В старой: Да, В новой: Да ✓ +21. **Добавление и изменение номеров ГТД** - В старой: Да, В новой: Да ✓ +22. **Добавление и изменение перемещений товаров** - В старой: Да, В новой: Да ✓ +23. **Добавление и изменение претензий клиентов** - В старой: Нет, В новой: Да ✓ +24. **Добавление и изменение прочих оприходований товаров** - В старой: Да, В новой: Да ✓ +25. **Добавление и изменение реализаций товаров услуг** - В старой: Да, В новой: Нет +26. **Добавление и изменение реализаций услуг и прочих активов** - В старой: Да, В новой: Да ✓ +27. **Добавление и изменение регламентных операций** - В старой: Да, В новой: Да ✓ +28. **Добавление и изменение сборок товаров** - В старой: Да, В новой: Да ✓ +29. **Добавление и изменение складских актов** - В старой: Да, В новой: Да ✓ +30. **Добавление и изменение счетов-фактур выданных** - В старой: Да, В новой: Да ✓ +31. **Добавление и изменение счетов-фактур выданных на аванс** - В старой: Да, В новой: Да ✓ +32. **Добавление и изменение счетов-фактур комиссионеру** - В старой: Да, В новой: Да ✓ +33. **Добавление и изменение счетов-фактур комитента** - В старой: Да, В новой: Да ✓ +34. **Добавление и изменение счетов-фактур на неподтвержденную реализацию по ставке 0%** - В старой: Да, В новой: Да ✓ +35. **Добавление и изменение счетов-фактур налогового агента** - В старой: Да, В новой: Да ✓ +36. **Добавление и изменение счетов-фактур полученных** - В старой: Да, В новой: Да ✓ +37. **Добавление и изменение счетов-фактур полученных на аванс** - В старой: Да, В новой: Да ✓ +38. **Добавление и изменение счетов-фактур полученных налогового агента** - В старой: Да, В новой: Да ✓ +39. **Добавление и изменение транспортных накладных** - В старой: Да, В новой: Да ✓ +40. **Добавление и изменение электронных подписей и шифрование** - В старой: Да, В новой: Да ✓ +41. **Добавление и изменение файлов** - В старой: Да, В новой: Да ✓ +42. **Добавление изменение заказов клиентов** - В старой: Да, В новой: Нет +43. **Добавление изменение корректировок обособленного учета запасов** - В старой: Да, В новой: Да ✓ +44. **Добавление изменение корректировок реализаций** - В старой: Да, В новой: Да ✓ +45. **Добавление изменение листов кассовой книги** - В старой: Да, В новой: Да ✓ +46. **Добавление изменение узлов планов обмена** - В старой: Да, В новой: Нет +47. **Запуск веб-клиента** - В старой: Да, В новой: Да ✓ +48. **Запуск толстого клиента** - В старой: Да, В новой: Да ✓ +49. **Запуск тонкого клиента** - В старой: Да, В новой: Да ✓ +50. **Зачет оплаты** - В старой: Да, В новой: Да ✓ +51. **Изменение дополнительных сведений** - В старой: Да, В новой: Да ✓ +52. **Изменение и выполнение задач** - В старой: Да, В новой: Да ✓ +53. **Изменение финансовой группы номенклатуры** - В старой: Да, В новой: Да ✓ +54. **Использование анализа статей кредитов и депозитов** - В старой: Да, В новой: Да ✓ +55. **Использование дополнительных отчетов и обработок (CRM)** - В старой: Да, В новой: Нет +56. **Использование дополнительных отчетов и обработок УТ** - В старой: Да, В новой: Да ✓ +57. **Использование интеграции с 1С:Документооборотом** - В старой: Да, В новой: Нет +58. **Использование обработки текущие дела** - В старой: Да, В новой: Да ✓ +59. **Использование подключаемого оборудования** - В старой: Да, В новой: Да ✓ +60. **Использование реестра кредитов и депозитов** - В старой: Да, В новой: Да ✓ +61. **Настройка синхронизации данных** - В старой: Да, В новой: Нет +62. **Подтверждение реализации по ставке НДС 0%** - В старой: Да, В новой: Да ✓ +63. **Просмотр отчетов по движению денежных средств** - В старой: Да, В новой: Да ✓ +64. **Раздел запасы** - В старой: Да, В новой: Нет +65. **Раздел нормативно справочная информация** - В старой: Да, В новой: Да ✓ +66. **Раздел органайзер** - В старой: Да, В новой: Да ✓ +67. **Раздел отчеты и мониторинг** - В старой: Да, В новой: Нет +68. **Раздел продажи** - В старой: Да, В новой: Да ✓ +69. **Раздел склад** - В старой: Да, В новой: Да ✓ +70. **Редактирование реквизитов объектов** - В старой: Да, В новой: Да ✓ +71. **Редактирование, отправка по почте, сохранение в файл печатных форм** - В старой: Да, В новой: Да ✓ +72. **Сохранение данных пользователя** - В старой: Да, В новой: Да ✓ +73. **Чтение 1С:Номенклатуры** - В старой: Нет, В новой: Да ✓ +74. **Чтение авансовых отчетов** - В старой: Да, В новой: Да ✓ +75. **Чтение актов выполненных работ** - В старой: Да, В новой: Да ✓ +76. **Чтение ассортимента** - В старой: Да, В новой: Да ✓ +77. **Чтение базовой нормативно-справочной информации** - В старой: Да, В новой: Нет +78. **Чтение ввода остатков** - В старой: Да, В новой: Да ✓ +79. **Чтение видов карт лояльности** - В старой: Да, В новой: Да ✓ +80. **Чтение внесения выемки ДС по кассе ККМ** - В старой: Да, В новой: Да ✓ +81. **Чтение возвратов товаров от клиентов** - В старой: Да, В новой: Да ✓ +82. **Чтение выкупов возвратной тары клиентами** - В старой: Да, В новой: Да ✓ +83. **Чтение выкупов возвратной тары у поставщиков** - В старой: Да, В новой: Да ✓ +84. **Чтение выручки от продаж** - В старой: Да, В новой: Да ✓ +85. **Чтение движений Денежные средства - Доходы/Расходы** - В старой: Да, В новой: Да ✓ +86. **Чтение движений Денежные средства - Контрагент** - В старой: Да, В новой: Да ✓ +87. **Чтение движений денежных средств** - В старой: Да, В новой: Да ✓ +88. **Чтение договоров контрагентов** - В старой: Да, В новой: Да ✓ +89. **Чтение договоров кредитов и депозитов** - В старой: Да, В новой: Да ✓ +90. **Чтение документов корректировки задолженности** - В старой: Да, В новой: Да ✓ +91. **Чтение документов по учету НДС** - В старой: Да, В новой: Да ✓ +92. **Чтение документов списания поступления безналичных ДС** - В старой: Да, В новой: Нет +93. **Чтение дополнительных отчетов и обработок** - В старой: Да, В новой: Да ✓ +94. **Чтение заказов клиентов заявок на возврат товаров от клиента** - В старой: Да, В новой: Да ✓ +95. **Чтение заказов на внутреннее потребление** - В старой: Да, В новой: Да ✓ +96. **Чтение заказов на перемещение** - В старой: Да, В новой: Да ✓ +97. **Чтение заказов на сборку** - В старой: Да, В новой: Да ✓ +98. **Чтение заказов поставщикам** - В старой: Да, В новой: Да ✓ +99. **Чтение заявок на расход ДС** - В старой: Да, В новой: Да ✓ +100. **Чтение информации по номенклатуре** - В старой: Да, В новой: Да ✓ +101. **Чтение информации по партнерам** - В старой: Да, В новой: Да ✓ +102. **Чтение карт лояльности** - В старой: Да, В новой: Да ✓ +103. **Чтение кассовых ордеров** - В старой: Да, В новой: Да ✓ +104. **Чтение категорий эксплуатации** - В старой: Да, В новой: Да ✓ +105. **Чтение движений номенклатура контрагент** - В старой: Нет, В новой: Да ✓ +106. **Чтение движений по акцизам** - В старой: Нет, В новой: Да ✓ +107. **Чтение движений Номенклатура - Доходы\Расходы** - В старой: Нет, В новой: Да ✓ +108. **Чтение движений Номенклатура - Номенклатура** - В старой: Нет, В новой: Да ✓ +109. **Чтение назначений** - В старой: Да, В новой: Да ✓ +110. **Чтение нормативно справочной информации** - В старой: Да, В новой: Да ✓ +111. **Чтение ожидаемых поступлений денежных средств** - В старой: Да, В новой: Да ✓ +112. **Чтение операций по платежной карте** - В старой: Да, В новой: Да ✓ +113. **Чтение операций с подарочными сертификатами** - В старой: Да, В новой: Да ✓ +114. **Чтение организаций и банковских счетов организаций** - В старой: Да, В новой: Да ✓ +115. **Чтение ордеров на отражение излишков недостач порчи** - В старой: Да, В новой: Да ✓ +116. **Чтение ордеров на товары** - В старой: Да, В новой: Да ✓ +117. **Чтение остатков безналичных денежных средств** - В старой: Да, В новой: Да ✓ +118. **Чтение остатков денежных средств в кассе ККМ** - В старой: Да, В новой: Да ✓ +119. **Чтение остатков денежных средств к расходу** - В старой: Да, В новой: Да ✓ +120. **Чтение остатков денежных средств у подотчетных лиц** - В старой: Да, В новой: Да ✓ +121. **Чтение остатков доступных товаров** - В старой: Да, В новой: Да ✓ +122. **Чтение остатков заказов клиентов заявок на возврат** - В старой: Да, В новой: Да ✓ +123. **Чтение остатков заказов на внутреннее потребление** - В старой: Да, В новой: Да ✓ +124. **Чтение остатков заказов на перемещение** - В старой: Да, В новой: Да ✓ +125. **Чтение остатков заказов на сборку** - В старой: Да, В новой: Да ✓ +126. **Чтение остатков заказов поставщикам** - В старой: Да, В новой: Да ✓ +127. **Чтение остатков наличных денежных средств** - В старой: Да, В новой: Да ✓ +128. **Чтение остатков переданной возвратной тары** - В старой: Да, В новой: Да ✓ +129. **Чтение остатков принятой возвратной тары** - В старой: Да, В новой: Да ✓ +130. **Чтение остатков расчетов по эквайрингу** - В старой: Да, В новой: Да ✓ +131. **Чтение остатков товаров к отгрузке** - В старой: Да, В новой: Да ✓ +132. **Чтение остатков товаров к поступлению** - В старой: Да, В новой: Да ✓ +133. **Чтение остатков товаров на складах** - В старой: Да, В новой: Да ✓ +134. **Чтение отчетов банка по операциям эквайринга** - В старой: Да, В новой: Да ✓ +135. **Чтение отчетов комиссионеров** - В старой: Да, В новой: Да ✓ +136. **Чтение отчетов комитенту** - В старой: Да, В новой: Да ✓ +137. **Чтение отчетов о розничных продажах** - В старой: Да, В новой: Да ✓ +138. **Чтение пересчетов товаров** - В старой: Да, В новой: Да ✓ +139. **Чтение претензий клиентов** - В старой: Да, В новой: Да ✓ +140. **Чтение распоряжений на перемещение денежных средств** - В старой: Да, В новой: Да ✓ +141. **Чтение расчетов с клиентами** - В старой: Да, В новой: Да ✓ +142. **Чтение расчетов с поставщиками** - В старой: Да, В новой: Да ✓ +143. **Чтение реализаций товаров услуг** - В старой: Да, В новой: Да ✓ +144. **Чтение регистров НДС** - В старой: Да, В новой: Да ✓ +145. **Чтение регистров партий** - В старой: Да, В новой: Да ✓ +146. **Чтение сделок** - В старой: Да, В новой: Да ✓ +147. **Чтение себестоимости товаров** - В старой: Да, В новой: Да ✓ +148. **Чтение соглашений с клиентами** - В старой: Да, В новой: Да ✓ +149. **Чтение соглашений с поставщиками** - В старой: Да, В новой: Да ✓ +150. **Чтение состояний отгрузки** - В старой: Да, В новой: Нет +151. **Чтение счетов на оплату клиентам** - В старой: Да, В новой: Да ✓ +152. **Чтение счетов-фактур выданных** - В старой: Да, В новой: Да ✓ +153. **Чтение счетов-фактур выданных на аванс** - В старой: Да, В новой: Да ✓ +154. **Чтение счетов-фактур комиссионеру** - В старой: Да, В новой: Да ✓ +155. **Чтение счетов-фактур комитента** - В старой: Да, В новой: Да ✓ +156. **Чтение счетов-фактур на неподтвержденную реализацию по ставке 0%** - В старой: Да, В новой: Да ✓ +157. **Чтение счетов-фактур налогового агента** - В старой: Да, В новой: Да ✓ +158. **Чтение счетов-фактур полученных** - В старой: Да, В новой: Да ✓ +159. **Чтение счетов-фактур полученных на аванс** - В старой: Да, В новой: Да ✓ +160. **Чтение счетов-фактур полученных налогового агента** - В старой: Да, В новой: Да ✓ +161. **Чтение таможенных деклараций на импорт** - В старой: Да, В новой: Да ✓ +162. **Чтение товаров к оформлению излишков недостач** - В старой: Да, В новой: Да ✓ +163. **Чтение товаров организаций** - В старой: Да, В новой: Да ✓ +164. **Чтение упаковочных листов** - В старой: Да, В новой: Да ✓ +165. **Чтение физических лиц** - В старой: Да, В новой: Да ✓ +166. **Чтение финансовых результатов** - В старой: Да, В новой: Да ✓ +167. **Чтение цен номенклатуры** - В старой: Да, В новой: Да ✓ +168. **Чтение цен партнеров** - В старой: Да, В новой: Да ✓ +169. **Чтение чеков ККМ** - В старой: Да, В новой: Да ✓ +170. **Чтение электронных документов** - В старой: Нет (дважды), В новой: Да ✓ + +## Итоговый список ролей для включения в новой системе + +Роли, которые были "Да" в старой системе, но "Нет" в новой (требуют включения): + +1. Базовые права (CRM) +2. Ввод документа "Отчет по работам" (CRM) +3. Выполнение обмена электронными документами +4. Выполнение синхронизации данных +5. Добавление и изменение документов по банку +6. Добавление и изменение реализаций товаров услуг +7. Добавление изменение заказов клиентов +8. Добавление изменение узлов планов обмена +9. Использование дополнительных отчетов и обработок (CRM) +10. Использование интеграции с 1С:Документооборотом +11. Настройка синхронизации данных +12. Раздел запасы +13. Раздел отчеты и мониторинг +14. Чтение базовой нормативно-справочной информации +15. Чтение документов списания поступления безналичных ДС +16. Чтение состояний отгрузки + diff --git a/docs__Сверка_ролей_с_учетом_переименований.md b/docs__Сверка_ролей_с_учетом_переименований.md new file mode 100644 index 0000000..4ab939e --- /dev/null +++ b/docs__Сверка_ролей_с_учетом_переименований.md @@ -0,0 +1,158 @@ +--- +title: Сверка ролей с учетом переименований +author: Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) +version: 1.0 +date_created: 2025-12-10 +date_modified: 2025-12-10 +show_metadata_block: true +show_index_link: true +--- + +# Сверка ролей с учетом переименований + +## Важное замечание +В старой системе роли могут называться "Добавление изменение...", а в новой системе "Добавление и изменение...". Это одна и та же роль с разным названием. + +## Роли, требующие включения в новой системе + +### 1. Роли, которые точно нужно включить (названия совпадают или есть соответствие): + +1. **Базовые права (CRM)** + - Старая: "Базовые права (CRM)" - Да + - Новая: "Базовые права (CRM)" - Нет + - **Действие: Включить** + +2. **Ввод документа "Отчет по работам" (CRM)** + - Старая: "Ввод документа "Отчет по работам" (CRM)" - Да + - Новая: "Ввод документа "Отчет по работам" (CRM)" - Нет + - **Действие: Включить** + +3. **Выполнение обмена электронными документами** + - Старая: "Выполнение обмена электронными документами" - Да + - Новая: Отсутствует в списке + - **Действие: Проверить наличие и включить** + +4. **Выполнение синхронизации данных** + - Старая: "Выполнение синхронизации данных" - Да + - Новая: "Выполнение синхронизации данных" - Нет + - **Действие: Включить** + +5. **Добавление и изменение документов по банку** + - Старая: "Добавление и изменение документов по банку" - Да + - Новая: "Добавление и изменение документов по банку" - Нет + - **Действие: Включить** + +6. **Добавление и изменение реализаций товаров услуг** + - Старая: "Добавление и изменение реализаций товаров услуг" - Да + - Новая: "Добавление и изменение реализаций товаров услуг" - Нет + - **Действие: Включить** + +7. **Добавление и изменение заказов клиентов** + - Старая: "Добавление изменение заказов клиентов" - Да + - Новая: "Добавление и изменение заказов клиентов" - Нет (или отсутствует) + - **Примечание:** Название отличается ("изменение" vs "и изменение") + - **Действие: Найти роль "Добавление и изменение заказов клиентов" и включить** + +8. **Добавление и изменение узлов планов обмена** + - Старая: "Добавление изменение узлов планов обмена" - Да + - Новая: "Добавление и изменение узлов планов обмена" - Нет (или отсутствует) + - **Примечание:** Название отличается ("изменение" vs "и изменение") + - **Действие: Найти роль "Добавление и изменение узлов планов обмена" и включить** + +9. **Использование дополнительных отчетов и обработок** ⚠️ ПЕРЕИМЕНОВАНИЕ + - Старая: "Использование дополнительных отчетов и обработок (CRM)" - Да + - Новая: "Использование дополнительных отчетов и обработок" - Нет + - **Примечание:** В новой системе убрано "(CRM)" из названия + - **Действие: Включить роль "Использование дополнительных отчетов и обработок"** + +10. **Использование интеграции с 1С:Документооборотом** + - Старая: "Использование интеграции с 1С:Документооборотом" - Да + - Новая: "Использование интеграции с 1С:Документооборотом" - Нет + - **Действие: Включить** + +11. **Настройка синхронизации данных** ⚠️ ОТСУТСТВУЕТ + - Старая: "Настройка синхронизации данных" - Да + - Новая: Отсутствует в списке + - **Действие:** ⚠️ Проверить, есть ли под другим названием (например, "Настройка синхронизации файлов" или аналогичная) + +12. **Раздел запасы** + - Старая: "Раздел запасы" - Да + - Новая: "Раздел запасы" - Нет (или отсутствует) + - **Действие: Включить** + +13. **Раздел отчеты и мониторинг** + - Старая: "Раздел отчеты и мониторинг" - Да + - Новая: "Раздел отчеты и мониторинг" - Нет (или отсутствует) + - **Действие: Включить** + +14. **Чтение базовой нормативно-справочной информации** + - Старая: "Чтение базовой нормативно-справочной информации" - Да + - Новая: "Чтение базовой нормативно-справочной информации" - Нет (или отсутствует) + - **Действие: Включить** + +15. **Чтение документов списания поступления безналичных ДС** + - Старая: "Чтение документов списания поступления безналичных ДС" - Да + - Новая: "Чтение документов списания поступления безналичных ДС" - Нет (или отсутствует) + - **Действие: Включить** + +16. **Чтение состояний отгрузки** + - Старая: "Чтение состояний отгрузки" - Да + - Новая: "Чтение состояний отгрузки" - Нет (или отсутствует) + - **Действие: Включить** + +## Роли с возможными переименованиями (требуют проверки) + +Следующие роли из старой системы с "Да" могут иметь аналоги в новой системе с другим названием: + +### Паттерн: "Добавление изменение..." → "Добавление и изменение..." + +1. **Добавление изменение заказов клиентов** (старая: Да) + - Проверить в новой: "Добавление и изменение заказов клиентов" + - Если найдена и имеет "Нет" → включить + +2. **Добавление изменение узлов планов обмена** (старая: Да) + - Проверить в новой: "Добавление и изменение узлов планов обмена" + - Если найдена и имеет "Нет" → включить + +3. **Добавление изменение корректировок обособленного учета запасов** (старая: Да) + - Проверить в новой: "Добавление и изменение корректировок обособленного учета запасов" + - Если найдена и имеет "Нет" → включить + +4. **Добавление изменение корректировок реализаций** (старая: Да) + - Проверить в новой: "Добавление и изменение корректировок реализаций" + - Если найдена и имеет "Нет" → включить + +5. **Добавление изменение листов кассовой книги** (старая: Да) + - Проверить в новой: "Добавление и изменение листов кассовой книги" + - Если найдена и имеет "Нет" → включить + +## Методика проверки + +При сверке ролей необходимо: + +1. **Искать точное совпадение** названия роли +2. **Если не найдено**, искать вариант с "и изменение" вместо "изменение" +3. **Если не найдено**, искать вариант с "изменение" вместо "и изменение" +4. **Проверять**, что функциональность роли соответствует + +## Итоговый список для включения (с учетом переименований) + +После проверки всех возможных переименований, следующие роли должны быть включены в новой системе: + +1. Базовые права (CRM) +2. Ввод документа "Отчет по работам" (CRM) +3. Выполнение обмена электронными документами (если существует) +4. Выполнение синхронизации данных +5. Добавление и изменение документов по банку +6. Добавление и изменение реализаций товаров услуг +7. Добавление и изменение заказов клиентов (проверить название) +8. Добавление и изменение узлов планов обмена (проверить название) +9. Использование дополнительных отчетов и обработок (в новой системе без "(CRM)") +10. Использование интеграции с 1С:Документооборотом +11. Настройка синхронизации данных (ОТСУТСТВУЕТ в новой системе - проверить наличие) +12. Раздел запасы +13. Раздел отчеты и мониторинг +14. Чтение базовой нормативно-справочной информации +15. Чтение документов списания поступления безналичных ДС +16. Чтение состояний отгрузки + diff --git a/docs__Сводка_переноса_и_настройки_актуальной_формы_УПД.md b/docs__Сводка_переноса_и_настройки_актуальной_формы_УПД.md new file mode 100644 index 0000000..bf3dee2 --- /dev/null +++ b/docs__Сводка_переноса_и_настройки_актуальной_формы_УПД.md @@ -0,0 +1,103 @@ +# Сводка по работам: перенос и настройка актуальной формы УПД + +## Исполнитель доработки + +- Руководитель ИТ отдела ООО ФК "РАНА" — Кудрявцев Михаил Александрович. +- Контакт: `kma@rhana.com`. + +## 1. Контур работ + +- **Целевая рабочая конфигурация:** «Управление торговлей и взаимоотношениями с клиентами, редакция 3.0», версия **`3.0.22.28`** (рабочий контур проекта CRM3). +- **Расширение, в котором выполнены доработки:** `Графа5бвУПД` (синоним: «Графа5бв УПД»), версия **`1.0.2.93`**. +- **Эталонная конфигурация (источник логики и макетов):** «Управление торговлей и взаимоотношениями с клиентами, редакция 3.0», версия **`3.1.35.11`**. +- **Источник актуальных макетов УПД:** общий макет `ПФ_MXL_УниверсальныйПередаточныйДокумент2026` и связанный вариант `ПФ_MXL_УниверсальныйПередаточныйДокумент2026Прослеж`. + +## 2. Цель доработки + +Обеспечить корректную печать актуальной формы УПД (формат 2026) в целевой конфигурации с сохранением совместимости со старыми форматами, а также с адаптацией к фактической структуре данных рабочего контура CRM3. + +## 3. Основные выполненные работы + +### 3.0. Что вынесено из расширения `Рана` («Рана CRM3») в `Графа5бвУПД` («Графа5бв УПД») + +В рамках работ по переносу актуальной формы УПД логика, которая ранее присутствовала/дополнялась в проектном расширении `Рана` («Рана CRM3»), была **сконцентрирована и реализована** в расширении `Графа5бвУПД` («Графа5бв УПД») как в единой точке внедрения актуального УПД (2026) для рабочего контура. + +Важно: по факту расширение `Графа5бвУПД` реализует **полный контур интеграции формы УПД** в рабочую конфигурацию (макеты, ветки выбора, заполнение шапки/табличной части/подвала, ответственные лица, представление номенклатуры, серия, срок годности и совместимость с ранее действовавшими форматами УПД). +То есть это **не** локальная доработка только графы 5б в старых формах, а самостоятельная поставка интеграции актуальной формы УПД в полном объеме. + +Ключевые элементы, которые были вынесены (перереализованы в `Графа5бвУПД`, с учетом структуры данных целевой конфигурации): + +- **Контур печати УПД 2026/2026Прослеж**: подключение и заполнение актуальных макетов `ПФ_MXL_УниверсальныйПередаточныйДокумент2026` и `...2026Прослеж` в обработке `ПечатьОбщихФорм` (вместо разрозненных проектных поправок). +- **Графа 5б и связанные сценарии отбора**: стабилизация формирования строки 5б (в том числе устранение заглушек и дубликатов, корректный отбор данных при пересечениях реквизитов платежно-расчетных документов и счетов-фактур на аванс, а также использование резервного алгоритма заполнения при пустых значениях шапки). +- **Подвал и нумерация листов в актуальных формах**: восстановление/заполнение `ПодвалНакладной` и корректная обработка `НумерацияЛистов` именно для новых макетов, с учетом отличий параметров от ранее действовавших форм. +- **Ответственные лица**: унификация заполнения ответственных для УПД 2026 через `ОтветственныеЛицаОрганизаций` (выбор актуального назначения на дату документа, исключение завершенных назначений, выравнивание поведения полей под требования ранее действовавших форм УПД). +- **Представление номенклатуры, серия и срок годности**: перенос поведения, характерного для печати в `Рана` (добавление серии и срока годности в строку наименования), в `Графа5бвУПД` для форм 2026 — с отдельными служебными функциями с префиксом `упд5б_` и с резервными источниками данных (печать из СФ или из документа-основания). + +Примечание: расширение `Рана` («Рана CRM3») продолжает использоваться для иных проектных доработок рабочего контура, но перенос и сопровождение актуальной формы УПД (2026) выполнены как самостоятельная поставка через `Графа5бвУПД` («Графа5бв УПД»). + +### 3.1. Перенос и подключение формы УПД 2026 + +- Перенесен и подключен контур печати актуального УПД на базе макетов 2026/2026Прослеж. +- Сохранены ветки выбора макетов для документов прошлых периодов. +- Добавлены проверки и ветвления по периодам/вариантам макета в обработке печати. + +### 3.2. Адаптация заполнения шапки и табличной части + +- Исправлено заполнение граф `1а`, `А`, `5`, `9` и итоговых значений для форм 2026. +- Добавлено корректное заполнение графы `10а` (краткое наименование страны). +- Актуализировано формирование параметров `5а` и `5б` (включая защиту от пустых/фиктивных значений). +- Добавлены резервные сценарии заполнения при различии источников данных между СФ и документом-основанием. + +### 3.3. Графа 5б (авансовые СФ) + +- Исключен вывод фиктивного фрагмента `исправление № -- от --`. +- Убраны дубли фрагментов в строке 5б. +- Добавлен контроль контрагента при подборе СФА, чтобы исключить «чужие» документы при совпадении реквизитов ПРД. + +### 3.4. Подвал формы и нумерация листов + +- Восстановлен и заполнен блок `ПодвалНакладной` для 2026-форм. +- Настроено корректное заполнение параметров даты/основания/листов в новом макете. +- Исправлена логика `НумерацияЛистов` с учетом отличий параметров макетов 2026 от ранее действовавших форм. +- Удалены обращения к недоступным в целевой базе процедурам. + +### 3.5. Ответственные лица + +- Настроено заполнение ответственных по `Справочник.ОтветственныеЛицаОрганизаций`. +- Реализован выбор актуальных назначений на дату документа с учетом периода действия записи. +- Исключено попадание в печать сотрудников с завершенным сроком действия назначения. +- Выровнена логика полей `ФИОРуководителя`, `ФИООтветственного`, `ДолжностьОтветственного`, `ФИОГлавногоБухгалтера` относительно требуемого поведения ранее действовавших форм УПД. + +### 3.6. Наименование номенклатуры, серия и срок годности + +- Формирование `ТоварНаименование` переведено на алгоритм представления номенклатуры, совместимый с ранее действовавшими правилами печати УПД. +- Добавлен вывод номера серии и срока годности для позиций с серийным учетом. +- Реализовано устранение дубля: если характеристика совпадает с номером серии, характеристика в скобках не выводится. +- Добавлены резервные механизмы получения серии и срока годности из разных источников (`СФ`, `ДокументОснование`, текущая строка печати). + +## 4. Учет различий структуры данных целевой базы + +При переносе логики из эталона выполнена адаптация под фактическую структуру данных рабочего контура CRM3: + +- разные источники строк при печати из `СчетФактураВыданный` и `РеализацияТоваровУслуг`; +- неодинаковый состав реквизитов в ветках данных печати; +- отсутствие части вспомогательных процедур/параметров, присутствующих в эталоне; +- необходимость безопасных проверок наличия реквизитов и параметров перед заполнением. + +## 5. Ключевые объекты конфигурации, затронутые доработкой + +- обработка `ПечатьОбщихФорм` (модуль менеджера расширения); +- документ `СчетФактураВыданный` (модуль менеджера расширения); +- общий макет `ПФ_MXL_УниверсальныйПередаточныйДокумент2026`; +- общий макет `ПФ_MXL_УниверсальныйПередаточныйДокумент2026Прослеж`; +- справочник `ОтветственныеЛицаОрганизаций`. + +## 6. Результат + +В целевой конфигурации обеспечена рабочая печать актуальной формы УПД 2026 с корректным заполнением: + +- шапки, табличной части, графы 5б и итогов; +- ответственных лиц и подвала документа; +- наименования номенклатуры с учетом серии и срока годности (для серийного учета); +- совместимости с ранее действовавшими форматами УПД. + diff --git a/docs__Сводка_рисков_неуникальности.md b/docs__Сводка_рисков_неуникальности.md new file mode 100644 index 0000000..733f991 --- /dev/null +++ b/docs__Сводка_рисков_неуникальности.md @@ -0,0 +1,98 @@ +--- +title: "Сводка: Риски нарушения уникальности CRM_ЖурналДокументов" +author: Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) +version: 1.0 +date_created: 2025-12-10 +date_modified: 2025-12-10 +show_metadata_block: true +show_index_link: true +--- + +# Сводка: Риски нарушения уникальности CRM_ЖурналДокументов + +## Результаты сравнения конфигураций + +### Различия в структуре регистра + +| Измерение | CRM3devLocal | CRM326_TEST (новая) | +|-----------|--------------|---------------------| +| **Клиент** | `CatalogRef.Партнеры` (только) | `CatalogRef.Партнеры` **ИЛИ** `CatalogRef.CRM_ПотенциальныеКлиенты` | +| **Объект** | `Characteristic.CRM_ОбъектыЖурналаДокументов` | `Characteristic.CRM_ОбъектыЖурналаДокументов` | +| **CRM_Интерес** | `DocumentRef.CRM_Интерес` | `DocumentRef.CRM_Интерес` | +| **ГлавнаяЗапись** | `Boolean` | `Boolean` | + +## Ссылки, которые станут NULL после реструктуризации + +### 1. Измерение "Клиент" +- ✅ **Риск:** Все ссылки на `CRM_ПотенциальныеКлиенты` будут обнулены +- ✅ **Причина:** В новой конфигурации это измерение поддерживает только `Партнеры` + +### 2. Измерение "Объект" (характеристика) +- ✅ **Риск:** Ссылки на удаляемые типы объектов будут обнулены +- ✅ **Удаляемые типы:** + - `СправочникСсылка.CRM_ПотенциальныеКлиенты` + - `СправочникСсылка.CRM_ИсточникиКонтакта` + - `СправочникСсылка.CRM_КатегорииВрача` + - `СправочникСсылка.CRM_НаучныеСтепени` + - `СправочникСсылка.CRM_ОбластьИнтересов` + - `СправочникСсылка.CRM_Обращения` + - `СправочникСсылка.CRM_Специализация` + - `СправочникСсылка.CRM_Специальность` + - `СправочникСсылка.Отделы` + - `ДокументСсылка.УдалитьCRM_Сделка` + - `ДокументСсылка.УдалитьCRM_Событие` + - `ДокументСсылка.удалитьCRM_Мероприятие` + - `ДокументСсылка.удалитьCRM_Планирование` + - `ДокументСсылка.CRM_ПланированиеПоОтделам` + +### 3. Измерение "CRM_Интерес" +- ✅ **Риск:** Ссылки на удаляемые документы будут обнулены +- ✅ **Удаляемые типы документов:** + - `Документ.УдалитьCRM_Сделка` + - `Документ.УдалитьCRM_Событие` + - `Документ.удалитьCRM_Мероприятие` + - `Документ.удалитьCRM_Планирование` + - `Документ.CRM_ПланированиеПоОтделам` + +## Риски нарушения уникальности + +### Критический риск #1: Обнуление "Клиент" +**Сценарий:** +- Есть записи с `Клиент=CRM_ПотенциальныеКлиенты.*` +- Есть записи с `Клиент=NULL` +- После обнуления все записи с `CRM_ПотенциальныеКлиенты` станут иметь `Клиент=NULL` +- **Результат:** Появление дубликатов + +### Критический риск #2: Обнуление "Объект" +**Сценарий:** +- Есть несколько записей с разными значениями `Объект`, ссылающимися на удаляемые типы +- После обнуления все эти записи будут иметь `Объект=NULL` +- **Результат:** Появление дубликатов, если остальные измерения совпадают + +### Критический риск #3: Обнуление "CRM_Интерес" +**Сценарий:** +- Есть несколько записей с разными значениями `CRM_Интерес`, ссылающимися на удаляемые документы +- После обнуления все эти записи будут иметь `CRM_Интерес=NULL` +- **Результат:** Появление дубликатов, если остальные измерения совпадают + +### Максимальный риск: Комбинированное обнуление +**Сценарий:** +- Обнуляются несколько измерений одновременно +- **Результат:** Максимальная вероятность появления дубликатов + +## Рекомендуемые действия + +1. ✅ **Выполнить проверку** скриптом `check_duplicates_crm_journal.bsl` +2. ✅ **Удалить проблемные записи** перед реструктуризацией: + - Записи с `Клиент=CRM_ПотенциальныеКлиенты.*` + - Записи с `Объект`, ссылающимся на удаляемые типы + - Записи с `CRM_Интерес`, ссылающимся на удаляемые документы +3. ✅ **Проверить уникальность** после реструктуризации + +## Статус проверки + +- ✅ Структура регистра проанализирована +- ✅ Риски идентифицированы +- ✅ Скрипт проверки готов к использованию +- ⚠️ **Требуется выполнение проверки на реальной базе данных** + diff --git a/docs__Список_объектов_для_удаления_из_подсистем.md b/docs__Список_объектов_для_удаления_из_подсистем.md new file mode 100644 index 0000000..a28ddea --- /dev/null +++ b/docs__Список_объектов_для_удаления_из_подсистем.md @@ -0,0 +1,566 @@ +--- +title: Список объектов для удаления из состава подсистем +version: 1.0 +author: Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) +date_created: 2025-12-09 +date_modified: 2025-12-09 +show_metadata_block: true +show_index_link: true +--- + +# Список объектов для удаления из состава подсистем + +> 📚 **См. также:** [Оглавление документов](docs__INDEX.md) | [Анализ ошибок обновления](docs__Анализ_ошибок_обновления.md) | [Инструкция по исправлению](docs__Инструкция_по_исправлению.md) | [Проблема неуникальности регистра CRM_ЖурналДокументов](docs__Проблема_неуникальности_регистра_CRM_ЖурналДокументов.md) + +## Контекст документа + +**Важно:** Данный документ представляет собой **промежуточный список** на одной из итераций применения конфигурации новой системы **CRM3-26** поверх рабочей конфигурации **CRM3**. + +### Процесс обновления + +Обновление выполняется поэтапно: +1. **Исходная конфигурация:** Рабочая конфигурация CRM3 +2. **Целевая конфигурация:** Новая система CRM3-26 (CRM326/CRM326_TEST) +3. **Промежуточные итерации:** Поэтапное применение обновлений с устранением ошибок на каждом этапе + +### Текущая итерация + +Данный список составлен для **текущей итерации** процесса обновления и содержит объекты, которые: +- Присутствуют в рабочей конфигурации CRM3 +- Отсутствуют в целевой конфигурации CRM3-26 +- Имеют ссылки в составе подсистем основной конфигурации +- Требуют удаления из состава подсистем для продолжения обновления + +**Примечание:** После успешного применения обновления на данной итерации может потребоваться составление нового списка для следующей итерации, так как могут появиться новые ошибки и новые объекты, требующие удаления из состава подсистем. + +## Назначение документа + +Данный документ содержит список объектов, которые необходимо удалить из состава подсистем для успешного выполнения текущей итерации обновления конфигурации из `CRM326/CRM326_TEST` на `CRM3devLocal`. + +**Важно:** +- Удаление объектов из состава подсистем **не удаляет сами объекты**, а только убирает их из списка объектов подсистемы +- Это необходимо для устранения ошибок при обновлении на текущей итерации +- После применения обновления может потребоваться дополнительная работа с конфигурацией + +--- + +## Подсистема.rh_RhanaПодсистема.Состав + +### Подписки на события +- `ПодпискаНаСобытие.rh_ПроверитьДатуЗапретаПередЗаписьюДокумента` + +### Регламентные задания +- `РегламентноеЗадание.Диадок_РегламентныеДействия` +- `РегламентноеЗадание.tega_ВыгрузкаОстатковНаСайт` + +### Константы +- `Константа.tega_ОсновнаяНастройкаВыгрузки` +- `Константа.rh_СкладСебестоимости` + +### Общие формы +- `ОбщаяФорма.rh_ФормаНастроек` + +### Справочники +- `Справочник.CRM_Специализация` +- `Справочник.Отделы` +- `Справочник.rh_СтатусыПодарочныхСертификатов` +- `Справочник.CRM_ОфисыКомпании1` +- `Справочник.р_FTPСоединения` +- `Справочник.tega_НастройкиВыгрузки` + +### Документы +- `Документ.rh_ПланированиеПродаж` +- `Документ.rh_ОтражениеФактаПродаж` +- `Документ.rh_ПервичныеДокументы` +- `Документ.rh_ПервичныеДокументыМенеджер` +- `Документ.rh_ПервичныеДокументыМенеджерРеализация` +- `Документ.rh_ДвиженияДенежныеСредстваПрочиеАктивыПассивы` +- `Документ.rh_ДенежныеСредстваКПоступлениюНаличные` +- `Документ.rh_ДенежныеСредстваКСписаниюСПодотчетныхЛиц` +- `Документ.rh_РезервыСерийТоваров` +- `Документ.rh_ТоварыКОформлениюПоступления` +- `Документ.rh_УдалитьДвиженияНоменклатураПрочиеАктивыПассивы` +- `Документ.rh_УдалитьПартииЗатратНаВыпуск` +- `Документ.rh_УдалитьПланыПродажИВнутреннегоПотребления` +- `Документ.rh_УдалитьТоварыКОформлениюОтчетовКомитенту` +- `Документ.rh_УдалитьТоварыОрганизаций` +- `Документ.rh_УдалитьТоварыОрганизацийКОформлению` +- `Документ.rh_УдалитьТоварыОрганизацийКПередаче` +- `Документ.rh_УдалитьТоварыПереданныеНаКомиссию` + +### Отчеты +- `Отчет.rh_АнализСебестоимостиТоваров` +- `Отчет.rh_ТоварныйОтчетПоМенеджерам` +- `Отчет.удалитьОплаченныеЗаказы` +- `Отчет.rh_ПродажиПоПериодамИГруппам` +- `Отчет.rh_СебестоимостьОплаченыхТоваров` +- `Отчет.ВедомостьПоТоварамНаСкладахУЦ` +- `Отчет.rh_ВыручкаДенежныхСредств` +- `Отчет.rh_ВедомостьПоТоварамНаСкладахУЦРеализацияСписание` +- `Отчет.rh_ВедомостьПоТоварамНаСкладахПУРеализацияСписание` +- `Отчет.rh_РеестрОплаченныхНакладных` +- `Отчет.ЗаказыПоМенеджерам` +- `Отчет.rh_НеОплаченныеЗаказы` +- `Отчет.rh_СебестоимостьПоГруппам` +- `Отчет.rh_СебестоимостьПоГруппамПартии` +- `Отчет.rh_КонтрольВыполненияПланаЗакупок` +- `Отчет.rh_ПланированиеПоОтделам` +- `Отчет.rh_ПланированиеПоОтделамНеделям` +- `Отчет.ЧастныеЛицаПоВидамСеминаров` +- `Отчет.rh_ПланФактныйАнализПродаж` +- `Отчет.rh_ПодарочныеСертификаты` +- `Отчет.удалитьrh_ПланированиеПоОтделам2` +- `Отчет.rh_ОборотнаяВедомостьПоОстаткамТоваровПоПартиям` +- `Отчет.rh_ТоварыКоформлениюИзлишковИНедостач` +- `Отчет.rh_ПланированиеПоОтделам3` +- `Отчет.rh_ТоварыКомиссионерам` +- `Отчет.rh_ПланированиеПоОтделамИСебестоимость` + +### Регистры сведений +- `РегистрСведений.rh_УчетДокументовПродаж` +- `РегистрСведений.rh_СвязиПоИзлишкамИНедостачам` + +### Регистры накопления +- `РегистрНакопления.rh_ПланПродаж` + +**Всего объектов в этой подсистеме:** 47 + +--- + +## Подсистема.rh_Rhana.Подсистема.rh_Настройки.Состав + +### Константы +- `Константа.tega_ОсновнаяНастройкаВыгрузки` +- `Константа.rh_СкладСебестоимости` + +**Всего объектов в этой подсистеме:** 2 + +--- + +## Подсистема.rh_Rhana.Подсистема.rh_НСИ.Состав + +### Справочники +- `Справочник.CRM_Специализация` +- `Справочник.rh_СтатусыПодарочныхСертификатов` +- `Справочник.Диадок_ДополнительныеСправочники` +- `Справочник.Диадок_ЮрФизЛица` +- `Справочник.Диадок_Документы` +- `Справочник.Диадок_ПакетыДокументов` +- `Справочник.Диадок_ХранениеДанных` +- `Справочник.Диадок_Файлы` +- `Справочник.р_FTPСоединения` +- `Справочник.tega_НастройкиВыгрузки` + +**Всего объектов в этой подсистеме:** 10 + +--- + +## Подсистема.rh_Rhana.Подсистема.rh_ПодарочныеСертификаты.Состав + +### Справочники +- `Справочник.rh_СтатусыПодарочныхСертификатов` + +### Отчеты +- `Отчет.rh_ПодарочныеСертификаты` + +**Всего объектов в этой подсистеме:** 2 + +--- + +## Подсистема.rh_Rhana.Подсистема.rh_ПереходНаCRM3.Состав + +### Справочники +- `Справочник.CRM_ОфисыКомпании1` + +### Документы +- `Документ.rh_ПервичныеДокументы` +- `Документ.rh_ПервичныеДокументыМенеджер` +- `Документ.rh_ПервичныеДокументыМенеджерРеализация` +- `Документ.rh_ДвиженияДенежныеСредстваПрочиеАктивыПассивы` +- `Документ.rh_ДенежныеСредстваКПоступлениюНаличные` +- `Документ.rh_ДенежныеСредстваКСписаниюСПодотчетныхЛиц` +- `Документ.rh_РезервыСерийТоваров` +- `Документ.rh_ТоварыКОформлениюПоступления` +- `Документ.rh_УдалитьДвиженияНоменклатураПрочиеАктивыПассивы` +- `Документ.rh_УдалитьПартииЗатратНаВыпуск` +- `Документ.rh_УдалитьПланыПродажИВнутреннегоПотребления` +- `Документ.rh_УдалитьТоварыКОформлениюОтчетовКомитенту` +- `Документ.rh_УдалитьТоварыОрганизаций` +- `Документ.rh_УдалитьТоварыОрганизацийКОформлению` +- `Документ.rh_УдалитьТоварыОрганизацийКПередаче` +- `Документ.rh_УдалитьТоварыПереданныеНаКомиссию` + +### Регистры сведений +- `РегистрСведений.CRM_ПрисоединенныеФайлыВерсии` +- `РегистрСведений.mmAgreements` +- `РегистрСведений.mmAnalyticsValues` +- `РегистрСведений.mmNews` +- `РегистрСведений.mmParameters` +- `РегистрСведений.mmНастройки` +- `РегистрСведений.mmСоответствияКлючей` +- `РегистрСведений.АдресныеСокращения` +- `РегистрСведений.АдресныйКлассификатор` +- `РегистрСведений.АналитикаВидовЗапасов` +- `РегистрСведений.бфВидыКонтактнойИнформации` +- `РегистрСведений.бфВидыСервисов` +- `РегистрСведений.бфКлиенты` +- `РегистрСведений.бфКомпетенции` +- `РегистрСведений.бфПользователи` +- `РегистрСведений.бфРегионы` +- `РегистрСведений.бфСвязиСобытий` +- `РегистрСведений.бфСервисныеСпециалисты` +- `РегистрСведений.бфСервисы` +- `РегистрСведений.ВерсииОбъектовАдресногоКлассификатора` +- `РегистрСведений.ЖурналАудитаСбербанк` +- `РегистрСведений.ЗапросыАдминистрированияРазрешенийИспользованияВнешнихРесурсов` + +**Всего объектов в этой подсистеме:** 37 + +--- + +## Подсистема.rh_Rhana.Подсистема.rh_Планирование.Состав + +### Документы +- `Документ.rh_ПланированиеПродаж` +- `Документ.rh_ОтражениеФактаПродаж` + +### Отчеты +- `Отчет.rh_ПланФактныйАнализПродаж` +- `Отчет.rh_ПланированиеПоОтделамИСебестоимость` + +### Регистры сведений +- `РегистрСведений.rh_УчетДокументовПродаж` + +**Всего объектов в этой подсистеме:** 5 + +--- + +## Подсистема.rh_Rhana.Подсистема.rh_Отчеты.Состав + +### Отчеты +- `Отчет.rh_АнализСебестоимостиТоваров` +- `Отчет.rh_ТоварныйОтчетПоМенеджерам` +- `Отчет.rh_ПродажиПоПериодамИГруппам` +- `Отчет.rh_СебестоимостьОплаченыхТоваров` +- `Отчет.ВедомостьПоТоварамНаСкладахУЦ` +- `Отчет.rh_ВыручкаДенежныхСредств` +- `Отчет.rh_ВедомостьПоТоварамНаСкладахУЦРеализацияСписание` +- `Отчет.rh_ВедомостьПоТоварамНаСкладахПУРеализацияСписание` +- `Отчет.rh_РеестрОплаченныхНакладных` +- `Отчет.ЗаказыПоМенеджерам` +- `Отчет.rh_НеОплаченныеЗаказы` +- `Отчет.rh_СебестоимостьПоГруппамПартии` +- `Отчет.rh_КонтрольВыполненияПланаЗакупок` +- `Отчет.rh_ПланированиеПоОтделам` +- `Отчет.rh_ПланФактныйАнализПродаж` +- `Отчет.rh_ПодарочныеСертификаты` +- `Отчет.удалитьrh_ПланированиеПоОтделам2` +- `Отчет.rh_ОборотнаяВедомостьПоОстаткамТоваровПоПартиям` +- `Отчет.rh_ТоварыКоформлениюИзлишковИНедостач` +- `Отчет.rh_ПланированиеПоОтделам3` +- `Отчет.rh_ТоварыКомиссионерам` +- `Отчет.rh_ПланированиеПоОтделамИСебестоимость` + +**Всего объектов в этой подсистеме:** 22 + +--- + +## Подсистема.rh_Rhana.Подсистема.rh_Продажи.Состав + +### Отчеты +- `Отчет.rh_ПродажиПоПериодамИГруппам` +- `Отчет.rh_НеОплаченныеЗаказы` +- `Отчет.rh_ПланированиеПоОтделамИСебестоимость` + +**Всего объектов в этой подсистеме:** 3 + +--- + +## Подсистема.rh_Rhana.Подсистема.rh_СовместимостьСCRM2.Состав + +### Справочники +- `Справочник.Отделы` + +**Всего объектов в этой подсистеме:** 1 + +--- + +## Подсистема.rh_Rhana.Подсистема.rh_СкладИДоставка.Состав + +### Регистры сведений +- `РегистрСведений.rh_СвязиПоИзлишкамИНедостачам` + +**Всего объектов в этой подсистеме:** 1 + +--- + +## Сводная статистика + +| Подсистема | Количество объектов | +|------------|---------------------| +| Подсистема.rh_RhanaПодсистема.Состав | 47 | +| Подсистема.rh_Rhana.Подсистема.rh_ПереходНаCRM3.Состав | 37 | +| Подсистема.rh_Rhana.Подсистема.rh_Отчеты.Состав | 22 | +| Подсистема.rh_Rhana.Подсистема.rh_НСИ.Состав | 10 | +| Подсистема.rh_Rhana.Подсистема.rh_Планирование.Состав | 5 | +| Подсистема.rh_Rhana.Подсистема.rh_Продажи.Состав | 3 | +| Подсистема.rh_Rhana.Подсистема.rh_Настройки.Состав | 2 | +| Подсистема.rh_Rhana.Подсистема.rh_ПодарочныеСертификаты.Состав | 2 | +| Подсистема.rh_Rhana.Подсистема.rh_СовместимостьСCRM2.Состав | 1 | +| Подсистема.rh_Rhana.Подсистема.rh_СкладИДоставка.Состав | 1 | +| **ВСЕГО** | **130** | + +--- + +## Инструкция по удалению объектов из состава подсистем + +### Шаг 1: Открыть конфигурацию + +1. Откройте конфигурацию `CRM3devLocal` в конфигураторе 1С +2. Перейдите в режим редактирования + +### Шаг 2: Удаление объектов из подсистем + +Для каждой подсистемы из списка выше: + +1. Найдите подсистему в дереве конфигурации +2. Откройте свойства подсистемы +3. Перейдите на вкладку "Состав" +4. Найдите объект в списке состава +5. Удалите объект из состава подсистемы (НЕ удаляйте сам объект!) + +**Важно:** +- Удаляйте только из **состава подсистемы**, не удаляйте сами объекты +- Объекты останутся в конфигурации, но не будут входить в состав подсистем + +### Шаг 3: Проверка + +После удаления всех объектов из состава подсистем: + +1. Сохраните конфигурацию +2. Проверьте конфигурацию на ошибки +3. Попробуйте выполнить обновление + +--- + +## Группировка по типам объектов + +### Подписки на события (1) +- `ПодпискаНаСобытие.rh_ПроверитьДатуЗапретаПередЗаписьюДокумента` + +### Регламентные задания (2) +- `РегламентноеЗадание.Диадок_РегламентныеДействия` +- `РегламентноеЗадание.tega_ВыгрузкаОстатковНаСайт` + +### Константы (2) +- `Константа.tega_ОсновнаяНастройкаВыгрузки` +- `Константа.rh_СкладСебестоимости` + +### Общие формы (1) +- `ОбщаяФорма.rh_ФормаНастроек` + +### Справочники (10) +- `Справочник.CRM_Специализация` +- `Справочник.Отделы` +- `Справочник.rh_СтатусыПодарочныхСертификатов` +- `Справочник.CRM_ОфисыКомпании1` +- `Справочник.Диадок_ДополнительныеСправочники` +- `Справочник.Диадок_ЮрФизЛица` +- `Справочник.Диадок_Документы` +- `Справочник.Диадок_ПакетыДокументов` +- `Справочник.Диадок_ХранениеДанных` +- `Справочник.Диадок_Файлы` +- `Справочник.р_FTPСоединения` +- `Справочник.tega_НастройкиВыгрузки` + +### Документы (18) +- `Документ.rh_ПланированиеПродаж` +- `Документ.rh_ОтражениеФактаПродаж` +- `Документ.rh_ПервичныеДокументы` +- `Документ.rh_ПервичныеДокументыМенеджер` +- `Документ.rh_ПервичныеДокументыМенеджерРеализация` +- `Документ.rh_ДвиженияДенежныеСредстваПрочиеАктивыПассивы` +- `Документ.rh_ДенежныеСредстваКПоступлениюНаличные` +- `Документ.rh_ДенежныеСредстваКСписаниюСПодотчетныхЛиц` +- `Документ.rh_РезервыСерийТоваров` +- `Документ.rh_ТоварыКОформлениюПоступления` +- `Документ.rh_УдалитьДвиженияНоменклатураПрочиеАктивыПассивы` +- `Документ.rh_УдалитьПартииЗатратНаВыпуск` +- `Документ.rh_УдалитьПланыПродажИВнутреннегоПотребления` +- `Документ.rh_УдалитьТоварыКОформлениюОтчетовКомитенту` +- `Документ.rh_УдалитьТоварыОрганизаций` +- `Документ.rh_УдалитьТоварыОрганизацийКОформлению` +- `Документ.rh_УдалитьТоварыОрганизацийКПередаче` +- `Документ.rh_УдалитьТоварыПереданныеНаКомиссию` + +### Отчеты (25) +- `Отчет.rh_АнализСебестоимостиТоваров` +- `Отчет.rh_ТоварныйОтчетПоМенеджерам` +- `Отчет.удалитьОплаченныеЗаказы` +- `Отчет.rh_ПродажиПоПериодамИГруппам` +- `Отчет.rh_СебестоимостьОплаченыхТоваров` +- `Отчет.ВедомостьПоТоварамНаСкладахУЦ` +- `Отчет.rh_ВыручкаДенежныхСредств` +- `Отчет.rh_ВедомостьПоТоварамНаСкладахУЦРеализацияСписание` +- `Отчет.rh_ВедомостьПоТоварамНаСкладахПУРеализацияСписание` +- `Отчет.rh_РеестрОплаченныхНакладных` +- `Отчет.ЗаказыПоМенеджерам` +- `Отчет.rh_НеОплаченныеЗаказы` +- `Отчет.rh_СебестоимостьПоГруппам` +- `Отчет.rh_СебестоимостьПоГруппамПартии` +- `Отчет.rh_КонтрольВыполненияПланаЗакупок` +- `Отчет.rh_ПланированиеПоОтделам` +- `Отчет.rh_ПланированиеПоОтделамНеделям` +- `Отчет.ЧастныеЛицаПоВидамСеминаров` +- `Отчет.rh_ПланФактныйАнализПродаж` +- `Отчет.rh_ПодарочныеСертификаты` +- `Отчет.удалитьrh_ПланированиеПоОтделам2` +- `Отчет.rh_ОборотнаяВедомостьПоОстаткамТоваровПоПартиям` +- `Отчет.rh_ТоварыКоформлениюИзлишковИНедостач` +- `Отчет.rh_ПланированиеПоОтделам3` +- `Отчет.rh_ТоварыКомиссионерам` +- `Отчет.rh_ПланированиеПоОтделамИСебестоимость` + +### Регистры сведений (25) +- `РегистрСведений.CRM_ПрисоединенныеФайлыВерсии` +- `РегистрСведений.mmAgreements` +- `РегистрСведений.mmAnalyticsValues` +- `РегистрСведений.mmNews` +- `РегистрСведений.mmParameters` +- `РегистрСведений.mmНастройки` +- `РегистрСведений.mmСоответствияКлючей` +- `РегистрСведений.АдресныеСокращения` +- `РегистрСведений.АдресныйКлассификатор` +- `РегистрСведений.АналитикаВидовЗапасов` +- `РегистрСведений.бфВидыКонтактнойИнформации` +- `РегистрСведений.бфВидыСервисов` +- `РегистрСведений.бфКлиенты` +- `РегистрСведений.бфКомпетенции` +- `РегистрСведений.бфПользователи` +- `РегистрСведений.бфРегионы` +- `РегистрСведений.бфСвязиСобытий` +- `РегистрСведений.бфСервисныеСпециалисты` +- `РегистрСведений.бфСервисы` +- `РегистрСведений.ВерсииОбъектовАдресногоКлассификатора` +- `РегистрСведений.ЖурналАудитаСбербанк` +- `РегистрСведений.ЗапросыАдминистрированияРазрешенийИспользованияВнешнихРесурсов` +- `РегистрСведений.rh_УчетДокументовПродаж` +- `РегистрСведений.rh_СвязиПоИзлишкамИНедостачам` + +### Регистры накопления (1) +- `РегистрНакопления.rh_ПланПродаж` + +--- + +## Приоритеты удаления + +### Высокий приоритет (критично для обновления) + +1. **Подсистема.rh_RhanaПодсистема.Состав** - 47 объектов + - Самая большая группа + - Содержит большинство удаляемых объектов + +2. **Подсистема.rh_Rhana.Подсистема.rh_ПереходНаCRM3.Состав** - 37 объектов + - Много регистров сведений + - Документы переходного периода + +### Средний приоритет + +3. **Подсистема.rh_Rhana.Подсистема.rh_Отчеты.Состав** - 22 объекта + - Отчеты, которые можно временно отключить + +4. **Подсистема.rh_Rhana.Подсистема.rh_НСИ.Состав** - 10 объектов + - Справочники, связанные с НСИ + +### Низкий приоритет + +5. Остальные подсистемы с небольшим количеством объектов + +--- + +## Чек-лист действий + +- [ ] Создать резервную копию конфигурации +- [ ] Удалить объекты из Подсистема.rh_RhanaПодсистема.Состав (47 объектов) +- [ ] Удалить объекты из Подсистема.rh_Rhana.Подсистема.rh_ПереходНаCRM3.Состав (37 объектов) +- [ ] Удалить объекты из Подсистема.rh_Rhana.Подсистема.rh_Отчеты.Состав (22 объекта) +- [ ] Удалить объекты из Подсистема.rh_Rhana.Подсистема.rh_НСИ.Состав (10 объектов) +- [ ] Удалить объекты из Подсистема.rh_Rhana.Подсистема.rh_Планирование.Состав (5 объектов) +- [ ] Удалить объекты из Подсистема.rh_Rhana.Подсистема.rh_Продажи.Состав (3 объекта) +- [ ] Удалить объекты из Подсистема.rh_Rhana.Подсистема.rh_Настройки.Состав (2 объекта) +- [ ] Удалить объекты из Подсистема.rh_Rhana.Подсистема.rh_ПодарочныеСертификаты.Состав (2 объекта) +- [ ] Удалить объекты из Подсистема.rh_Rhana.Подсистема.rh_СовместимостьСCRM2.Состав (1 объект) +- [ ] Удалить объекты из Подсистема.rh_Rhana.Подсистема.rh_СкладИДоставка.Состав (1 объект) +- [ ] Сохранить конфигурацию +- [ ] Проверить конфигурацию на ошибки +- [ ] Попробовать выполнить обновление + +--- + +## Примечания + +1. **Удаление из состава ≠ удаление объекта:** Объекты остаются в конфигурации, но не входят в состав подсистем +2. **Проверка зависимостей:** После удаления объектов из состава подсистем проверьте, не нарушены ли зависимости +3. **Тестирование:** После удаления обязательно протестируйте функциональность, связанную с этими подсистемами +4. **Документирование:** Зафиксируйте все изменения для последующего анализа + +--- + +## История изменений + +### Версия 1.0 (Текущая итерация) +- Составлен список объектов для удаления из состава подсистем +- Группировка по подсистемам +- Статистика по типам объектов +- Инструкция по выполнению удаления + +### Следующие итерации + +После применения обновления на текущей итерации: +1. Проверьте наличие новых ошибок +2. При необходимости составьте новый список для следующей итерации +3. Обновите данный документ или создайте новый + +### Известные проблемы после обновления + +После успешного удаления объектов из состава подсистем и сохранения конфигурации может возникнуть ошибка: + +**Проблема:** Записи регистра сведений стали неуникальными: `CRM_ЖурналДокументов` + +**Решение:** См. документ [Проблема неуникальности регистра CRM_ЖурналДокументов](docs__Проблема_неуникальности_регистра_CRM_ЖурналДокументов.md) + +--- + +## Примечания по процессу обновления + +### Этапы обновления + +1. **Подготовка** + - Анализ ошибок обновления + - Составление списков удаляемых объектов + - Резервное копирование + +2. **Текущая итерация** + - Удаление объектов из состава подсистем (данный документ) + - Применение обновления + - Проверка результата + +3. **Следующие итерации** (при необходимости) + - Анализ новых ошибок + - Составление новых списков + - Повторное применение обновления + +### Рекомендации + +- **Не удаляйте объекты полностью** - только из состава подсистем +- **Сохраняйте резервные копии** перед каждой итерацией +- **Документируйте изменения** для последующего анализа +- **Тестируйте функциональность** после каждой итерации + +--- + +**Дата создания:** 2024 +**Версия:** 1.0 (Промежуточная итерация) +**Статус:** Готово к использованию +**Контекст:** Применение CRM3-26 поверх рабочей CRM3 + diff --git a/docs__Список_ролей_для_отметки_ДА.md b/docs__Список_ролей_для_отметки_ДА.md new file mode 100644 index 0000000..563ee9a --- /dev/null +++ b/docs__Список_ролей_для_отметки_ДА.md @@ -0,0 +1,64 @@ +--- +title: "Список ролей новой системы для отметки "Да"" +author: Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) +version: 1.0 +date_created: 2025-12-10 +date_modified: 2025-12-10 +show_metadata_block: true +show_index_link: true +--- + +# Список ролей новой системы для отметки "Да" + +## Роли, которые нужно отметить "Да" в новой системе + +1. Базовые права (CRM) + +2. Ввод документа "Отчет по работам" (CRM) + +3. Выполнение синхронизации данных + +4. Добавление и изменение документов по банку + +5. Добавление и изменение реализаций товаров услуг + +6. Добавление и изменение заказов клиентов + +7. Добавление и изменение узлов планов обмена + +8. Использование дополнительных отчетов и обработок УТ + +9. Использование интеграции с 1С:Документооборотом + +10. Раздел запасы + +11. Раздел отчеты и мониторинг + +12. Чтение базовой нормативно-справочной информации + +13. Чтение документов списания поступления безналичных ДС + +14. Чтение состояний отгрузки + +--- + +## Роли, отсутствующие в новой системе (требуют проверки) + +- Настройка синхронизации данных (возможно, переименована или объединена с другой ролью) + +--- + +## Дополнительные роли для проверки (возможные переименования) + +Если в новой системе есть следующие роли, их также нужно отметить "Да": + +- Добавление и изменение корректировок обособленного учета запасов +- Добавление и изменение корректировок реализаций +- Добавление и изменение листов кассовой книги + +--- + +## Примечание + +Роль "Выполнение обмена электронными документами" отсутствует в списке новой системы. Если она существует под другим названием, её также нужно включить. + diff --git a/docs__Сравнение_констант_crm3-dev_vs_crm3-26-test.md b/docs__Сравнение_констант_crm3-dev_vs_crm3-26-test.md new file mode 100644 index 0000000..b98582b --- /dev/null +++ b/docs__Сравнение_констант_crm3-dev_vs_crm3-26-test.md @@ -0,0 +1,1343 @@ +# Сравнение констант: crm3-dev → crm3-26-test + +**Дата:** 2026-05-13 +**Источник:** XML констант в `src/Constants/` и те же правила нормализации, что в `scripts/constants_catalog_utils.py`. Сравниваются **основные** конфигурации; расширения — в конце документа. + +**Объём таблиц:** разделы **1.2**, **3** и **4** выводят **полные** списки (без ограничения числа строк). + +**Нечёткое сопоставление (разд. 2.1):** `difflib.SequenceMatcher` по нормализованным синонимам, одинаковый тип, порог **≥ 0.88**, длина синонима **≥ 10**, отрыв от второго кандидата **≥ 0.03** с каждой стороны, пара только при **взаимном** лучшем совпадении. + +--- + +## 1. Сводка по основным конфигурациям + +- **crm3-dev:** 967 констант +- **crm3-26-test:** 1147 констант +- **Общие имена:** 832 +- **Совпадают имя, тип и синоним (разд. 1.2):** 818 +- **Только в crm3-dev (нет в crm3-26-test):** 135 +- **Только в crm3-26-test (новые):** 315 +- **Однозначно сопоставленные «переименования» (эвристика):** 4 (из них по синониму: 4, по длинному комментарию: 0) +- **Доп. кандидаты по нечёткому синониму (разд. 2.1):** 3 + +Константы с **одинаковым** именем в обеих конфигурациях и **совпадающими** после нормализации **типом** и **синонимом** перечислены в разделе **1.2**. Поля *комментарий*, *подсказка*, привязки ФО и панели УТ в этом сравнении **не** сравниваются — при необходимости см. `docs/Перечень_констант_crm3-dev.md` и `docs/Перечень_констант_crm3-26-test.md`. + +### 1.1 Совпадающее имя, но изменились тип или синоним + +| № | Имя | Тип (dev) | Тип (test) | Синоним (dev) | Синоним (test) | +|---|---|---|---|---|---| +| 1 | `CRM_ИспользоватьМаркетинговыеМероприятия` | xs:boolean | xs:boolean | Использовать маркетинговые мероприятия | Использовать маркетинговые мероприятия (CRM) | +| 2 | `CRM_ИспользоватьОповещенияСМС` | xs:boolean | xs:boolean | Использовать SMS оповещения | Использовать SMS-оповещения | +| 3 | `CRM_ИспользоватьПодсистемуУправленияПроектами` | xs:boolean | xs:boolean | Использовать подсистему управления проектами | Использовать подсистему управления проектами (CRM) | +| 4 | `CRM_ПериодПроверкиНовыхНапоминаний` | xs:decimal | xs:decimal | Период проверки новых напоминаний | Период проверки и вывода новых напоминаний | +| 5 | `CRM_ПутьКВнешнейОбработкеЗащиты` | xs:string | xs:string | Путь к внешней обработке защиты CRM | Путь к внешней обработке защиты CRM (служебная) | +| 6 | `CRM_РазрешатьСозданиеИнтересовПоОдномуТипуУслуги` | xs:boolean | xs:boolean | Разрешать создание интересов по одному типу услуги | Разрешать создание нескольких интересов по одному типу услуги | +| 7 | `АдресВебСервиса1СДокументооборот` | xs:string | xs:string | Адрес веб сервиса 1C:Документооборот | Адрес веб-сервиса 1C:Документооборот | +| 8 | `ЗаголовокСистемы` | xs:string | xs:string | Заголовок программы | Заголовок приложения | +| 9 | `ИспользоватьИнтеграциюС1СДокументооборот` | xs:boolean | xs:boolean | Использовать интеграцию с 1С:Документооборотом | Использовать интеграцию с 1С:Документооборотом редакции 2 | +| 10 | `ИспользоватьКоннект` | xs:boolean | xs:boolean | Использовать онлайн-поддержку | Использовать 1С-Коннект | +| 11 | `ИспользоватьПроизводствоНаСтороне` | xs:boolean | xs:boolean | Использовать производство на стороне | Использовать производство на стороне (2.4) | +| 12 | `ИспользоватьСервисСклоненияMorpher` | xs:boolean | xs:boolean | Использовать сервис склонения «Морфер» | Использовать сервис склонения Морфер | +| 13 | `НастройкиСканированияКодовМаркировкиИСМП` | v8:ValueStorage | v8:ValueStorage | Настройки сканирования кодов маркировки ИСМП | Настройки сканирования кодов маркировки ИС МП | +| 14 | `УчетнаяЗаписьДляВосстановленияПароля` | v8:ValueStorage | v8:ValueStorage | Учетная запись для восстановления пароля | Почта для восстановления пароля | + +### 1.2 Идентичные в сравниваемых метаданных (общие имена) + +Одинаковые **имя**, **тип** и **синоним** (после `norm_meta`) в `crm3-dev` и `crm3-26-test`. Комментарий, пояснение, подсказка и прочие свойства не участвуют в критерии «идентичности». + +| № | Имя | Тип | Синоним | +|---|---|---|---| +| 1 | `CRM_iCRMИспользоватьОграниченияВыгрузки` | xs:boolean | Использовать ограничения для первой выгрузки | +| 2 | `CRM_iCRMРегистрироватьДокументыСозданныеВТечение` | xs:decimal | Регистрировать документы созданные в течение (мес) | +| 3 | `CRM_iCRMРегистрироватьКлиентовИспользованныхВТечение` | xs:decimal | Регистрировать клиентов используемых в течение (мес) | +| 4 | `CRM_iCRMРегистрироватьКлиентовСозданныхВТечение` | xs:decimal | Регистрировать клиентов созданных в течение (мес) | +| 5 | `CRM_iCRMРегистрироватьНоменклатуруИспользованнуюВТечение` | xs:decimal | Регистрировать номенклатуру используемую в течение (мес) | +| 6 | `CRM_iCRMРегистрироватьНоменклатуруСИзмененнымиЦенамиВТечение` | xs:decimal | Регистрировать номенклатуру, у которой менялись цены в течение (мес) | +| 7 | `CRM_АвтоматическиУтверждатьЕдинственныйВариантКоммерческогоПредложения` | xs:boolean | Автоматически утверждать единственный вариант коммерческого предложения | +| 8 | `CRM_АдресWebДоступа` | xs:string | Адрес web-доступа | +| 9 | `CRM_АдресПубликацииiCRM` | xs:string | Адрес публикации iCRM | +| 10 | `CRM_АдресСервисаОбратнойСвязи` | xs:string | Адрес HTTP-сервиса обратной связи | +| 11 | `CRM_ВерсияНачалаРаботыСПрограммой` | xs:string | Версия начала работы с программой | +| 12 | `CRM_ВестиИсториюРеквизитовКлиентов` | xs:boolean | Вести историю реквизитов клиентов | +| 13 | `CRM_ВидВзаимодействияПоУмолчанию` | cfg:CatalogRef.CRM_ВидыВзаимодействий | Вид взаимодействия по умолчанию | +| 14 | `CRM_ВыполнятьПоискДублейПриЗаписиКонтакта` | xs:boolean | Выполнять поиск дублей при записи контакта | +| 15 | `CRM_ВыполнятьПоискДублейПриЗаписиПартнера` | xs:boolean | Выполнять поиск дублей при записи клиента | +| 16 | `CRM_ГлубинаПересчетаПоказателей` | xs:decimal | Глубина пересчета показателей (мес.) | +| 17 | `CRM_ДанныеРегистрации` | v8:ValueStorage | Данные регистрации (CRM) | +| 18 | `CRM_ДатаАктуальностиЦелевыхПоказателей` | xs:dateTime | Дата актуальности целевых показателей | +| 19 | `CRM_ДатаНачалаРаботыСПрограммой` | xs:dateTime | Дата начала работы с программой | +| 20 | `CRM_ДатаПоследнейУспешнойСинхронизации` | xs:dateTime | Дата последней успешной синхронизации (iCRM) | +| 21 | `CRM_ДемонстрационныйРежим` | xs:boolean | Демонстрационный режим (служебная) | +| 22 | `CRM_ДобавлятьРуководителямДоступПодчиненных` | xs:boolean | Добавлять руководителям доступ подчиненных | +| 23 | `CRM_ЗаполнятьПервичныйИнтерес` | xs:boolean | Заполнять актуальный источник привлечения | +| 24 | `CRM_ЗапретитьВводНовогоКлиентаПриНайденныхСовпадениях` | xs:boolean | Запретить ввод нового клиента при найденных совпадениях | +| 25 | `CRM_ЗапретитьВводНовогоКонтактаПриНайденныхСовпадениях` | xs:boolean | Запретить ввод нового контакта при найденных совпадениях | +| 26 | `CRM_ИдентификацияПриложенияGoogle` | xs:string | Идентификация клиента Google | +| 27 | `CRM_ИспользоватьБазуЗнаний` | xs:boolean | Использовать базу знаний | +| 28 | `CRM_ИспользоватьБизнесПроцессы` | xs:boolean | Использовать бизнес-процессы (CRM) | +| 29 | `CRM_ИспользоватьВидыДеятельностиУПартнеров` | xs:boolean | Указывать в карточке клиента более одной отрасли | +| 30 | `CRM_ИспользоватьДолжностныеПозиции` | xs:boolean | Использовать должностные позиции для доступа к подразделениям | +| 31 | `CRM_ИспользоватьДоступныхПользователей` | xs:boolean | Использовать доступных пользователей | +| 32 | `CRM_ИспользоватьЗаявки` | xs:boolean | Использовать заявки | +| 33 | `CRM_ИспользоватьИнтеграцииСИнтернетМагазинами` | xs:boolean | Использовать интеграции с интернет-магазинами | +| 34 | `CRM_ИспользоватьИнтеграциюСМессенджерами` | xs:boolean | Использовать интеграцию с мессенджерами и социальными сетями | +| 35 | `CRM_ИспользоватьКарточкуКлиента` | xs:boolean | Использовать карточку клиента | +| 36 | `CRM_ИспользоватьКатегорииВзаимодействий` | xs:boolean | Использовать категории для взаимодействий | +| 37 | `CRM_ИспользоватьКлассификаторы` | xs:boolean | Использовать классификаторы | +| 38 | `CRM_ИспользоватьКомандуПанельСофтФон` | xs:boolean | Использовать команду панель СофтФон | +| 39 | `CRM_ИспользоватьМоделиМашинногоОбучения` | xs:boolean | Использовать модели машинного обучения | +| 40 | `CRM_ИспользоватьМониторПоказателей` | xs:boolean | Использовать монитор показателей | +| 41 | `CRM_ИспользоватьНапоминания` | xs:boolean | Использовать напоминания (CRM) | +| 42 | `CRM_ИспользоватьОбменСMSExchange` | xs:boolean | Использовать обмен с сервером MS Exchange | +| 43 | `CRM_ИспользоватьОбменСOutlook` | xs:boolean | Использовать обмен с MS Outlook | +| 44 | `CRM_ИспользоватьОповещенияЭлектроннаяПочта` | xs:boolean | Использовать оповещения по электронной почте | +| 45 | `CRM_ИспользоватьПланированиеВстреч` | xs:boolean | Использовать планирование встреч | +| 46 | `CRM_ИспользоватьПоддержку` | xs:boolean | Использовать поддержку | +| 47 | `CRM_ИспользоватьПоказатели` | xs:boolean | Использовать показатели | +| 48 | `CRM_ИспользоватьРассылкиЭлектронныхПисем` | xs:boolean | Использовать рассылки электронных писем | +| 49 | `CRM_ИспользоватьРегламентноеЗаданиеОтправкиРассылокЭлектронныхПисем` | xs:boolean | Выполнять рассылки эл. писем равномерно в пакетном режиме | +| 50 | `CRM_ИспользоватьСервисРаспознаванияЛиц` | xs:boolean | Использовать сервис распознавания лиц (CRM) | +| 51 | `CRM_ИспользоватьТеги` | xs:boolean | Использовать теги | +| 52 | `CRM_ИспользоватьТегиДляВзаимодействий` | xs:boolean | Использовать теги для взаимодействий | +| 53 | `CRM_ИспользоватьТелемаркетинг` | xs:boolean | Использовать телемаркетинг | +| 54 | `CRM_ИспользоватьТипыУслуг` | xs:boolean | Использовать типы услуг | +| 55 | `CRM_ИспользоватьУчетРабочегоВремени` | xs:boolean | Использовать учет рабочего времени | +| 56 | `CRM_ИспользуетсяОбменСiCRM` | xs:boolean | Используется обмен с iCRM | +| 57 | `CRM_КлючAPIКарт` | xs:string | Ключ для доступа к API Яндекс.Карт | +| 58 | `CRM_КоличествоПисемЭлектроннойРассылкиВОтправляемомПакете` | xs:decimal | Количество писем в пакете | +| 59 | `CRM_КонецОбеда` | xs:dateTime | Окончание обеденного перерыва | +| 60 | `CRM_КонецРабочегоДня` | xs:dateTime | Окончание рабочего дня | +| 61 | `CRM_ЛоготипРабочегоСтола` | v8:ValueStorage | Логотип рабочего стола | +| 62 | `CRM_МаксимальныйПериодБезСинхронизацииiCRM` | xs:decimal | Максимальный период без синхронизации (дней) | +| 63 | `CRM_НастройкаСоставаРеквизитовМастераРегистрации` | v8:ValueStorage | Настройка состава реквизитов мастера регистрации | +| 64 | `CRM_НачалоОбеда` | xs:dateTime | Начало обеденного перерыва | +| 65 | `CRM_НачалоРабочегоДня` | xs:dateTime | Начало рабочего дня | +| 66 | `CRM_НеСохранятьТекстыПисемРассылок` | xs:boolean | Не сохранять тексты писем рассылок | +| 67 | `CRM_НомерТелефонаОповещений` | xs:string | Номер телефона для отправки оповещений по SMS | +| 68 | `CRM_ОбновлятьФото` | xs:boolean | Обновлять фотографию при видео фиксации | +| 69 | `CRM_ОбязательноУказыватьПричинуПотериЗвонков` | xs:boolean | Обязательно указывать причину потери звонков | +| 70 | `CRM_ОсновнойВариантПоставки` | cfg:EnumRef.CRM_ВариантыПоставки | Основной вариант поставки | +| 71 | `CRM_ОсновнойВидEmailКлиента` | cfg:CatalogRef.ВидыКонтактнойИнформации | Основной вид e-mail клиента | +| 72 | `CRM_ОсновнойВидEmailКонтакта` | cfg:CatalogRef.ВидыКонтактнойИнформации | Основной вид e-mail контакта | +| 73 | `CRM_ОсновнойВидТелефонаКлиента` | cfg:CatalogRef.ВидыКонтактнойИнформации | Основной вид телефона клиента | +| 74 | `CRM_ОсновнойВидТелефонаКонтакта` | cfg:CatalogRef.ВидыКонтактнойИнформации | Основной вид телефона контакта | +| 75 | `CRM_ОтображатьВАРМИсходящиеПисьмаИЗвонки` | xs:boolean | Отображать в АРМ исходящие письма и звонки | +| 76 | `CRM_ОтображатьВКарточкеКлиентаЧисленность` | xs:boolean | Отображать в форме Клиента численность сотрудников и рабочих мест | +| 77 | `CRM_ОчищатьВложенияЭлектронныхПисем` | xs:boolean | Очищать вложения электронных писем | +| 78 | `CRM_ОчищатьТолькоВложенияВходящихПисем` | xs:boolean | Очищать только вложения входящих писем | +| 79 | `CRM_ПарольПользователяСинхронизацииiCRM` | xs:string | Пароль пользователя синхронизации iCRM | +| 80 | `CRM_ПериодОтключенияСинхронизацииiCRM` | xs:decimal | Период отключения синхронизации с iCRM (мин.) | +| 81 | `CRM_ПериодОчисткиВложенийЭлектронныхПисем` | xs:decimal | Период очистки вложений электронных писем | +| 82 | `CRM_ПланироватьПродажи` | xs:boolean | Планирование воронки продаж | +| 83 | `CRM_ПлатныйТарифДоступен` | xs:boolean | Платный тариф доступен | +| 84 | `CRM_ПользовательСинхронизацииiCRM` | xs:string | Пользователь синхронизации iCRM | +| 85 | `CRM_ПриПроведениеКоммерческогоПредложенияПредлагатьУтверждениеВарианта` | xs:boolean | При проведение коммерческого предложения предлагать утверждение варианта | +| 86 | `CRM_РассчитыватьПотенциалКлиентов` | xs:boolean | Рассчитывать потенциал клиентов | +| 87 | `CRM_РегистрироватьВИнтересахВзаимосвязиКлиентов` | xs:boolean | Указывать в интересе клиента связанных партнеров | +| 88 | `CRM_РегистрироватьДополнительнуюИнформацию` | xs:boolean | Регистрировать дополнительную информацию | +| 89 | `CRM_РеквизитыПоискаДублейПартнеров` | v8:ValueStorage | Реквизиты поиска дублей клиентам | +| 90 | `CRM_РеквизитыРасчетаПотенциалаКлиента` | v8:ValueStorage | Реквизиты расчета потенциала клиента | +| 91 | `CRM_СвязыватьРанееПолученныеEmailиЗвонкиСКлиентами` | xs:boolean | Связывать ранее полученные email и телефонные звонки с клиентами и их контактами | +| 92 | `CRM_СервисРассылокОповещенийПоУмолчанию` | cfg:CatalogRef.CRM_СервисыРассылок | Сервис рассылок оповещений по умолчанию | +| 93 | `CRM_СервисРассылокПоУмолчанию` | cfg:CatalogRef.CRM_СервисыРассылок | Сервис рассылок по умолчанию | +| 94 | `CRM_СквознаяАналитика` | xs:boolean | Использовать Сквозную аналитику | +| 95 | `CRM_СквознаяАналитикаАдресПубликацииСервисов` | xs:string | Адрес публикации сервисов сквозной аналитики | +| 96 | `CRM_УказыватьВКарточкеКонтактногоЛицаБолееОднойРоли` | xs:boolean | Указывать в карточке контактного лица более одной роли | +| 97 | `CRM_УчетнаяЗаписьОповещений` | cfg:CatalogRef.УчетныеЗаписиЭлектроннойПочты | Учетная запись для отправки оповещений по электронной почте | +| 98 | `CRM_ХранилищеПравилОбменаСiCRM` | v8:ValueStorage | Хранилище правил обмена с приложением iCRM | +| 99 | `CRM_ЦветСобытияВКалендареПоУмолчанию` | xs:decimal | Цвет события в календаре по умолчанию | +| 100 | `CRM_ЧислоГруппУровнейДоступа` | xs:decimal | Число групп уровней доступа (CRM) | +| 101 | `SMS4B_ДатаПолученияСообщений` | xs:dateTime | Дата получения SMS | +| 102 | `SMS4B_ИспользоватьПериодЗапретаОтправки` | xs:boolean | Не отправлять SMS | +| 103 | `SMS4B_ИспользоватьПолучениеСообщений` | xs:boolean | Включить получение сообщений | +| 104 | `SMS4B_МиллисекундаПолученияСообщений` | xs:decimal | Миллисекунда получения сообщений | +| 105 | `SMS4B_НастройкиСервиса` | v8:ValueStorage | Настройки сервиса SMS4B | +| 106 | `SMS4B_ПолучатьТолькоПолныеСообщения` | xs:boolean | Получать только полные сообщения | +| 107 | `SMS4B_ПроксиПароль` | xs:string | Пароль прокси-сервера | +| 108 | `SMS4B_ПроксиПользователь` | xs:string | Пользователь прокси-сервера | +| 109 | `SMS4B_ПроксиПорт` | xs:string | Порт прокси-сервера | +| 110 | `SMS4B_ПроксиСервер` | xs:string | Прокси-сервер | +| 111 | `АКАМ_ИспользоватьМодульТоргов` | xs:boolean | Использовать АКАМ:Модуль торгов | +| 112 | `АвтоПостановкаКлиентовНаМониторингСПАРК` | xs:boolean | Автоматическая постановка клиентов на мониторинг 1СПАРК | +| 113 | `АвтоПостановкаКлиентовНаМониторингСПАРКНастройка` | v8:ValueStorage | Автоматическая постановка клиентов на мониторинг 1СПАРК настройка | +| 114 | `АвтоПостановкаПоставщиковНаМониторингСПАРК` | xs:boolean | Автоматическая постановка поставщиков на мониторинг 1СПАРК | +| 115 | `АвтоПостановкаПоставщиковНаМониторингСПАРКНастройка` | v8:ValueStorage | Автоматическая постановка поставщиков на мониторинг 1СПАРК настройка | +| 116 | `АвтоматическиНастраиватьРазрешенияВПрофиляхБезопасности` | xs:boolean | Автоматически настраивать разрешения в профилях безопасности | +| 117 | `АвтоматическиСоздаватьПартнеровПриОтправкеЭлектронногоЧекаПокупателю` | xs:boolean | Автоматически создавать партнеров при отправке электронного чека покупателю | +| 118 | `АдресДляВосстановленияПароляУчетнойЗаписи` | xs:string | Адрес для восстановления пароля учетной записи | +| 119 | `АдресДляУведомленийЭДО` | xs:string | Адрес для уведомлений ЭДО | +| 120 | `АдресКриптосервиса` | xs:string | Адрес криптосервиса | +| 121 | `АдресПрограммногоИнтерфейсаСлужбыПоддержки` | xs:string | Адрес программного интерфейса службы поддержки | +| 122 | `АдресПубликацииИнформационнойБазыВИнтернете` | xs:string | Адрес публикации информационной базы в интернете | +| 123 | `АдресПубликацииИнформационнойБазыВЛокальнойСети` | xs:string | Адрес публикации информационной базы в локальной сети | +| 124 | `АдресСервисаНовостей` | xs:string | Адрес сервиса новостей | +| 125 | `АдресСервисаПодключенияЭлектроннойПодписиВМоделиСервиса` | xs:string | Адрес сервиса подключения электронной подписи в модели сервиса | +| 126 | `АдресСервисаЦентраИдей` | xs:string | Адрес сервиса центра идей | +| 127 | `АдресУправленияКонференцией` | xs:string | Адрес управления конференцией | +| 128 | `АдресЦКК` | xs:string | Адрес ЦКК | +| 129 | `АктуализироватьВзаиморасчетыПриПроведенииДокументов` | xs:boolean | Актуализировать взаиморасчеты при проведении документов | +| 130 | `АктуализироватьВзаиморасчетыПриФормированииОтчетов` | xs:boolean | Актуализировать взаиморасчеты при формировании отчетов | +| 131 | `АктуализироватьДанныеПриФормированииОтчетов` | xs:boolean | Актуализировать данные при формировании отчетов | +| 132 | `БазоваяВерсия` | xs:boolean | Базовая версия | +| 133 | `БлокировкаОтправкиБыстрыхСообщений` | xs:dateTime | Блокировка отправки быстрых сообщений | +| 134 | `ВалютаРегламентированногоУчета` | cfg:CatalogRef.Валюты | Валюта регламентированного учета | +| 135 | `ВалютаУправленческогоУчета` | cfg:CatalogRef.Валюты | Валюта управленческого учета | +| 136 | `ВалютыУпрИРеглУчетаСовпадают` | xs:boolean | Валюты упр. и регл. учета совпадают | +| 137 | `ВариантОбновленияКлассификаторов` | xs:decimal | Вариант обновления классификаторов | +| 138 | `ВариантОбособленияТоваровВПеремещении` | cfg:EnumRef.ВариантыОбособленияТоваровВПеремещении | Вариант обособления товаров в перемещении | +| 139 | `ВариантОбособленияТоваровВПродажах` | cfg:EnumRef.ВариантыОбособленияТоваровВПродажах | Вариант обособления товаров в продажах | +| 140 | `ВариантОбособленияТоваровВСборке` | cfg:EnumRef.ВариантыОбособленияТоваровВСборке | Вариант обособления товаров в сборке | +| 141 | `ВариантОбособленияТоваровВоВнутреннемПотреблении` | cfg:EnumRef.ВариантыОбособленияТоваровВоВнутреннемПотреблении | Вариант обособления товаров во внутреннем потреблении | +| 142 | `ВариантПриемкиТоваров` | cfg:EnumRef.ВариантыПриемкиТоваров | Вариант приемки товаров | +| 143 | `ВариантУчетаСезонныхКолебаний` | cfg:EnumRef.УчетСезонныхКолебаний | Вариант учета сезонных колебаний | +| 144 | `ВедетсяРаботаЧерезТорговыхПредставителей` | xs:boolean | Ведется работа через торговых представителей | +| 145 | `ВерсииСхемОбменаГИСМ` | xs:string | Версии схем обмена ГИСМ | +| 146 | `ВерсияДатЗапретаИзменения` | v8:UUID | Версия дат запрета изменения | +| 147 | `ВерсияКлассификатораБанков` | v8:ValueStorage | Версия классификатора банков | +| 148 | `ВестиОтдельнуюНумерациюСчетовФактурНаАвансы` | xs:boolean | Вести отдельную нумерацию счетов-фактур, выданных на авансы | +| 149 | `ВестиСведенияДляДекларацийАлкоВРознице` | xs:boolean | Вести сведения для деклараций по алкогольной и спиртосодержащей продукции в рознице | +| 150 | `ВестиСведенияДляДекларацийПоАлкогольнойПродукции` | xs:boolean | Вести сведения для деклараций по алкогольной продукции | +| 151 | `ВестиУправленческийУчетОрганизаций` | xs:boolean | Вести управленческий учет организаций | +| 152 | `ВестиУчетМаркировкиПродукцииВГИСМ` | xs:boolean | Вести учет маркировки продукции в ГИСМ | +| 153 | `ВестиУчетМаркируемойПродукцииИСМП` | xs:boolean | Вести учет маркируемой продукции ИС МП | +| 154 | `ВестиУчетПодконтрольныхТоваровВЕТИС` | xs:boolean | Вести учет подконтрольных товаров ВетИС | +| 155 | `ВидМаксимальноДопустимыхЦенЗакупки` | cfg:CatalogRef.ВидыЦен | Вид максимально допустимых цен закупки | +| 156 | `ВидМаксимальноДопустимыхЦенПродажи` | cfg:CatalogRef.ВидыЦен | Вид максимально допустимых цен продажи | +| 157 | `ВидМинимальноДопустимыхЦенПродажи` | cfg:CatalogRef.ВидыЦен | Вид минимально допустимых цен продажи | +| 158 | `ВидимостьДатыНачалаПечатиЕдиногоАвансовогоОтчета` | xs:boolean | Видимость даты начала печати единого авансового отчета | +| 159 | `ВнешнийАдресУправляющегоПриложения` | xs:string | Внешний адрес управляющего приложения | +| 160 | `ВнутреннийАдресМенеджераСервиса` | xs:string | Внутренний адрес менеджера сервиса | +| 161 | `ВыбиратьВариантВыводаСкидокПриПечатиДокументовПродажи` | xs:boolean | Выбирать вариант вывода скидок при печати документов продажи | +| 162 | `ВыводитьQRКодНаПечатныхФормахДокументов` | xs:boolean | Выводить QR-код на печатных формах документов | +| 163 | `ВыводитьБазовыеЕдиницыИзмерения` | xs:boolean | Выводить базовые единицы измерения в печатных формах | +| 164 | `ВыводитьДопКолонкиНДС` | xs:boolean | Выводить дополнительные колонки НДС | +| 165 | `ВыгружатьВнутренниеШтрихкодыШтучныхТоваров` | xs:boolean | Выгружать внутренние штрихкоды штучных товаров | +| 166 | `ВыполнитьРезервноеКопированиеОбластиДанных` | xs:boolean | Выполнить резервное копирование области данных | +| 167 | `ВыполнятьЗамерыПроизводительности` | xs:boolean | Выполнять замеры производительности | +| 168 | `ГеографическаяСхемаДляОтчетов` | v8:ValueStorage | Географическая схема для отчетов | +| 169 | `ГлавныйУзел` | — | Главный узел | +| 170 | `ГруппаДоступаНоменклатурыИзСервиса` | cfg:CatalogRef.ГруппыДоступаНоменклатуры | Группа доступа номенклатуры из сервиса | +| 171 | `ДанныеДляОтложенногоОбновления` | v8:ValueStorage | Данные для отложенного обновления | +| 172 | `ДатаВключенияОбособленногоУчетаСебестоимостиПоНазначениям` | xs:dateTime | Дата включения обособленного учета себестоимости по назначениям | +| 173 | `ДатаЗагрузкиОписанияФорматовДляПреобразования` | xs:dateTime | Дата загрузки описания форматов для преобразования | +| 174 | `ДатаЗапретаИспользованияПродукцииТретьегоУровняВЕТИС` | xs:dateTime | Дата запрета использования продукции третьего уровня | +| 175 | `ДатаНачалаВеденияУправленческогоУчетаОрганизаций` | xs:dateTime | Дата начала ведения управленческого учета организаций | +| 176 | `ДатаНачалаПечатиЕдиногоАвансовогоОтчета` | xs:dateTime | Дата начала печати единого авансового отчета | +| 177 | `ДатаНачалаПримененияПриказа107н` | xs:dateTime | Дата начала применения приказа Минфина России от 12.11.2013 №107н | +| 178 | `ДатаНачалаПримененияПриказа126н` | xs:dateTime | Дата начала применения приказа Минфина России от 30.10.2014 №126н | +| 179 | `ДатаНачалаПримененияПриказа164` | xs:dateTime | Дата начала применения приказа 164 | +| 180 | `ДатаНачалаПримененияСводныхСправок` | xs:dateTime | Дата начала применения сводных справок | +| 181 | `ДатаНачалаРегистрацииЗакупокПоЕГАИС` | xs:dateTime | Дата начала оформления закупок по ЕГАИС | +| 182 | `ДатаНачалаРегистрацииРозничныхПродажВЕГАИС` | xs:dateTime | Дата начала регистрации розничных продаж в ЕГАИС | +| 183 | `ДатаНачалаРегистрацииРозничныхПродажВЕГАИСВСельскойМестности` | xs:dateTime | Дата начала регистрации розничных продаж в ЕГАИС в сельской местности | +| 184 | `ДатаНачалаУчетаНДСПоНаправлениямДеятельности` | xs:dateTime | Дата начала учета НДС по направлениям деятельности | +| 185 | `ДатаНачалаУчетаПрослеживаемыхИмпортныхТоваров` | xs:dateTime | Дата начала учета прослеживаемых импортных товаров | +| 186 | `ДатаНачалаУчетаСебестоимости` | xs:dateTime | Дата начала учета себестоимости | +| 187 | `ДатаОбновленияПовторноИспользуемыхЗначенийМРО` | xs:dateTime | Дата обновления повторно используемых значений МРО | +| 188 | `ДатаОбновленияСобытийСПАРКРиски` | xs:dateTime | Дата обновления событий 1СПАРК Риски | +| 189 | `ДатаПереходаНаПартионныйУчетВерсии22` | xs:dateTime | Дата перехода на партионный учет версии 2.2 | +| 190 | `ДатаПоследнегоОбновленияКлассификатораОшибок` | xs:dateTime | Дата последнего обновления классификатора ошибок | +| 191 | `ДатаПоследнегоСтартаКлиентскогоСеанса` | xs:dateTime | Дата последнего старта клиентского сеанса | +| 192 | `ДатаПоследнейВыгрузкиЗамеровПроизводительностиUTC` | xs:dateTime | Дата последней выгрузки замеров производительности в UTC | +| 193 | `ДатаСинхронизацииОКПД2` | xs:dateTime | Дата синхронизации ОКПД2 | +| 194 | `ДатаСинхронизацииТНВЭД` | xs:dateTime | Дата синхронизации ТНВЭД | +| 195 | `ДатаУведомленияОНовыхЗадачах` | xs:dateTime | Дата уведомления о новых задачах | +| 196 | `ДетализироватьЗаданияТорговымПредставителямПоНоменклатуре` | xs:boolean | Детализировать задания торговым представителям по номенклатуре | +| 197 | `ДетализироватьОбновлениеИБВЖурналеРегистрации` | xs:boolean | Детализировать обновление ИБ в журнале регистрации | +| 198 | `ДополнительнаяКолонкаПечатныхФормДокументов` | cfg:EnumRef.ДополнительнаяКолонкаПечатныхФормДокументов | Дополнительная колонка печатных форм документов | +| 199 | `ДополнительныйЯзык1` | xs:string | Дополнительный язык1 | +| 200 | `ДополнительныйЯзык2` | xs:string | Дополнительный язык2 | +| 201 | `ДопустимоеОтклонениеОтгрузкиПриемкиМерныхТоваров` | xs:decimal | Допустимое отклонение отгрузки и приемки мерных товаров | +| 202 | `ДопустимоеОтклонениеПриОкругленииКоличества` | xs:decimal | Допустимое отклонение при автоматическом округлении | +| 203 | `ЕдиницаИзмеренияВеса` | cfg:CatalogRef.УпаковкиЕдиницыИзмерения | Единица измерения веса | +| 204 | `ЕдиницаИзмеренияДлины` | cfg:CatalogRef.УпаковкиЕдиницыИзмерения | Единица измерения длины | +| 205 | `ЕдиницаИзмеренияКоличестваШтук` | cfg:CatalogRef.УпаковкиЕдиницыИзмерения | Единица измерения количества штук | +| 206 | `ЕдиницаИзмеренияОбъема` | cfg:CatalogRef.УпаковкиЕдиницыИзмерения | Единица измерения объема | +| 207 | `ЕдиницаИзмеренияПлощади` | cfg:CatalogRef.УпаковкиЕдиницыИзмерения | Единица измерения площади | +| 208 | `ЕдиницаИзмеренияРазливнойПродукции` | cfg:CatalogRef.УпаковкиЕдиницыИзмерения | Единица измерения разливной продукции | +| 209 | `ЗагружатьИУстанавливатьИсправленияАвтоматически` | xs:boolean | Загружать и устанавливать исправления (патчи) автоматически | +| 210 | `ЗагрузитьРасширенияИзменяющиеСтруктуруДанных` | xs:boolean | Загрузить расширения изменяющие структуру данных | +| 211 | `ЗагрузитьСообщениеОбменаДанными` | xs:boolean | Загрузить сообщение обмена данными | +| 212 | `ЗаполненыДвиженияАктивовПассивов` | xs:boolean | Заполнены движения активов пассивов | +| 213 | `ЗапрашиватьДанныеСервисаИСМП` | xs:boolean | Запрашивать данные сервиса ГИС МТ | +| 214 | `ЗапретитьОтображениеНебезопасногоСодержимогоВПисьмах` | xs:boolean | Запретить отображение небезопасного содержимого в письмах | +| 215 | `ЗапретитьОформлениеОперацийСИмпортнымиТоварамиБезНомеровГТД` | xs:boolean | Запретить операции с товарами без номеров ГТД | +| 216 | `ЗапретитьПоступлениеТоваровБезНомеровГТД` | xs:boolean | Запретить поступления товаров без номеров ГТД | +| 217 | `ЗапрещатьЗагрузкуФайловПоРасширению` | xs:boolean | Запрещать загрузку файлов по расширению | +| 218 | `ЗарегистрированыИзмененияДанных` | xs:boolean | Зарегистрированы изменения данных | +| 219 | `ИдентификаторИнформационнойБазы` | xs:string | Идентификатор информационной базы | +| 220 | `ИдентификаторКорневойПапкиФайлов1СДокументооборот` | xs:string | Идентификатор корневой папки файлов 1С:Документооборота | +| 221 | `ИдентификаторОбсужденияФискализации` | xs:string | Идентификатор обсуждения фискализации | +| 222 | `ИзвлекатьТекстыФайловНаСервере` | xs:boolean | Извлекать тексты файлов на сервере | +| 223 | `ИзменятьЗаданияЗаднимЧислом` | xs:boolean | Изменять задания задним числом | +| 224 | `ИнтеграцияС1СДокументооборотИмяПользователяДляОбмена` | xs:string | Имя пользователя для обмена с 1С:Документооборотом | +| 225 | `ИнтеграцияС1СДокументооборотПарольДляОбмена` | xs:string | Пароль пользователя для обмена с 1С:Документооборотом | +| 226 | `ИнтервалЗапросаИзмененныхДанныхВЕТИС` | xs:decimal | Интервал запроса измененных данных ВетИС | +| 227 | `ИнтерфейсВерсии82` | xs:boolean | Интерфейс версии82 | +| 228 | `ИнформацияОПроцедуреЗагрузки` | v8:ValueStorage | Информация о процедуре загрузки | +| 229 | `ИспользованиеЗаданийТорговымПредставителям` | cfg:EnumRef.ИспользованиеЗаданийТорговымПредставителям | Использование заданий торговым представителям | +| 230 | `ИспользованиеКаталогаДополнительныхОтчетовИОбработокВМоделиСервиса` | xs:boolean | Использование каталога дополнительных отчетов и обработок в модели сервиса | +| 231 | `ИспользованиеКаталогаРасширенийВМоделиСервиса` | xs:boolean | Использование каталога расширений в модели сервиса | +| 232 | `ИспользованиеКлассификаторовНоменклатуры` | xs:boolean | Использование классификаторов номенклатуры | +| 233 | `ИспользованиеСоглашенийСКлиентами` | cfg:EnumRef.ИспользованиеСоглашенийСКлиентами | Использование соглашений с клиентами | +| 234 | `ИспользованиеСтарыхКлассификаторовОКПиОКВЭД` | xs:boolean | Использование старых классификаторов (ОКП и ОКВЭД) | +| 235 | `ИспользованиеЭтаповОплатыВЗакупках` | cfg:EnumRef.ИспользованиеЭтаповОплаты | Использование этапов оплаты в закупках | +| 236 | `ИспользованиеЭтаповОплатыВПродажах` | cfg:EnumRef.ИспользованиеЭтаповОплаты | Использование этапов оплаты в продажах | +| 237 | `ИспользоватьABCXYZКлассификациюНоменклатурыПоВаловойПрибыли` | xs:boolean | Использовать ABC/XYZ классификацию номенклатуры по валовой прибыли | +| 238 | `ИспользоватьABCXYZКлассификациюНоменклатурыПоВыручке` | xs:boolean | Использовать ABC/XYZ классификацию номенклатуры по выручке | +| 239 | `ИспользоватьABCXYZКлассификациюНоменклатурыПоКоличествуПродаж` | xs:boolean | Использовать ABC/XYZ классификацию номенклатуры по количеству продаж | +| 240 | `ИспользоватьABCXYZКлассификациюПартнеровПоВаловойПрибыли` | xs:boolean | Использовать ABC/XYZ классификацию партнеров по валовой прибыли | +| 241 | `ИспользоватьABCXYZКлассификациюПартнеровПоВыручке` | xs:boolean | Использовать ABC/XYZ классификацию партнеров по выручке | +| 242 | `ИспользоватьABCXYZКлассификациюПартнеровПоКоличествуПродаж` | xs:boolean | Использовать ABC/XYZ классификацию партнеров по количеству продаж | +| 243 | `ИспользоватьАвтоматическиеСкидкиВПродажах` | xs:boolean | Использовать автоматические скидки в продажах | +| 244 | `ИспользоватьАвтоматическоеЗакрытиеСтрокЗаказовМерныхТоваров` | xs:boolean | Использовать автоматическое закрытие строк заказов мерных товаров | +| 245 | `ИспользоватьАвтоматическуюОтправкуПолучениеДанныхВЕТИС` | xs:boolean | Использовать автоматическую отправку и получение данных ВетИС | +| 246 | `ИспользоватьАвтоматическуюОтправкуПолучениеДанныхГИСМ` | xs:boolean | Использовать автоматическую отправку и получение данных ГИСМ | +| 247 | `ИспользоватьАвтоматическуюОтправкуПолучениеДанныхЕГАИС` | xs:boolean | Использовать автоматическую отправку получение данных ЕГАИС | +| 248 | `ИспользоватьАвтоматическуюОтправкуПолучениеДанныхИСМП` | xs:boolean | Использовать автоматическую отправку и получение данных МОТП | +| 249 | `ИспользоватьАвтоматическуюСверткуРегистраСоответствиеНоменклатурыВЕТИС` | xs:boolean | Использовать автоматическую свертку регистра соответствие номенклатуры ВетИС | +| 250 | `ИспользоватьАвтоматическуюСверткуРегистраСоответствиеНоменклатурыЕГАИС` | xs:boolean | Использовать автоматическую свертку регистра соответствие номенклатуры ЕГАИС | +| 251 | `ИспользоватьАвтономнуюРаботуВМоделиСервиса` | xs:boolean | Использовать автономную работу в модели сервиса | +| 252 | `ИспользоватьАктыВыполненныхРаботПоНесколькимЗаказам` | xs:boolean | Использовать акты выполненных работ по нескольким заказам | +| 253 | `ИспользоватьАктыНаПередачуПрав` | xs:boolean | Использовать акты на передачу прав | +| 254 | `ИспользоватьАктыРасхожденийПослеПеремещения` | xs:boolean | Использовать акты расхождений после перемещения | +| 255 | `ИспользоватьАльтернативныйСерверДляЗагрузкиКурсовВалют` | xs:boolean | Использовать альтернативный сервер для загрузки курсов валют | +| 256 | `ИспользоватьАнкетирование` | xs:boolean | Использовать анкетирование | +| 257 | `ИспользоватьАссортимент` | xs:boolean | Использовать ассортимент | +| 258 | `ИспользоватьБизнесПроцессыИЗадачи` | xs:boolean | Использовать бизнес-процессы и задачи | +| 259 | `ИспользоватьБизнесРегионы` | xs:boolean | Использовать бизнес-регионы | +| 260 | `ИспользоватьБонусныеПрограммыЛояльности` | xs:boolean | Использовать бонусные программы лояльности | +| 261 | `ИспользоватьБюджетирование` | xs:boolean | Использовать бюджетирование | +| 262 | `ИспользоватьВалютныеПлатежи` | xs:boolean | Использовать валютные платежи | +| 263 | `ИспользоватьВерсионированиеОбъектов` | xs:boolean | Использовать версионирование объектов | +| 264 | `ИспользоватьВидыСвязейМеждуФизическимиЛицами` | xs:boolean | Использовать виды связей между физическими лицами | +| 265 | `ИспользоватьВидыСвязейПартнеров` | xs:boolean | Использовать виды связей партнеров | +| 266 | `ИспользоватьВнеоборотныеАктивы2_2` | xs:boolean | Использовать внеоборотные активы (версия 2.2) | +| 267 | `ИспользоватьВнеоборотныеАктивы2_4` | xs:boolean | Использовать внеоборотные активы (версия 2.4) | +| 268 | `ИспользоватьВнешнихПользователей` | xs:boolean | Использовать внешних пользователей | +| 269 | `ИспользоватьВнутреннееПотребление` | xs:boolean | Использовать внутреннее потребление | +| 270 | `ИспользоватьВнутреннееПотреблениеПоНесколькимЗаказам` | xs:boolean | Использовать внутреннее потребление по нескольким заказам | +| 271 | `ИспользоватьВнутреннееСогласованиеЗаказовКлиентов` | xs:boolean | Использовать внутреннее согласование заказов клиентов | +| 272 | `ИспользоватьВнутреннееСогласованиеЗаявокНаВозвратТоваровОтКлиентов` | xs:boolean | Использовать внутреннее согласование заявок на возврат товаров от клиентов | +| 273 | `ИспользоватьВнутреннееСогласованиеКоммерческихПредложений` | xs:boolean | Использовать внутреннее согласование коммерческих предложений | +| 274 | `ИспользоватьВнутреннееСогласованиеСоглашенийСКлиентами` | xs:boolean | Использовать внутреннее согласование соглашений с клиентами | +| 275 | `ИспользоватьВнутренниеДокументыЭДО` | xs:boolean | Использовать внутренние документы ЭДО | +| 276 | `ИспользоватьВыгрузкуВСводноеПриложение` | xs:boolean | Использовать выгрузку в сводное приложение | +| 277 | `ИспользоватьГрафикиОплаты` | xs:boolean | Использовать графики оплаты | +| 278 | `ИспользоватьГруппыАналитическогоУчетаНоменклатуры` | xs:boolean | Группы аналитического учета номенклатуры | +| 279 | `ИспользоватьГруппыДоступаНоменклатуры` | xs:boolean | Использовать группы доступа номенклатуры | +| 280 | `ИспользоватьГруппыДоступаПартнеров` | xs:boolean | Использовать группы доступа партнеров | +| 281 | `ИспользоватьГруппыПользователей` | xs:boolean | Использовать группы пользователей | +| 282 | `ИспользоватьГруппыФинансовогоУчета` | xs:boolean | Использовать группы настроек финансового учета | +| 283 | `ИспользоватьДатуИВремяВСрокахЗадач` | xs:boolean | Использовать дату и время в сроках задач | +| 284 | `ИспользоватьДатуНачалаЗадач` | xs:boolean | Использовать дату начала задач | +| 285 | `ИспользоватьДатыЗапретаЗагрузки` | xs:boolean | Использовать даты запрета загрузки | +| 286 | `ИспользоватьДатыЗапретаИзменения` | xs:boolean | Использовать даты запрета изменения | +| 287 | `ИспользоватьДифференциальноеРезервноеКопирование` | xs:boolean | Использовать дифференциальное резервное копирование | +| 288 | `ИспользоватьДоверенностиНаПолучениеТМЦ` | xs:boolean | Использовать доверенности на получение ТМЦ | +| 289 | `ИспользоватьДоговорыКредитовИДепозитов` | xs:boolean | Использовать договоры кредитов и депозитов | +| 290 | `ИспользоватьДоговорыМеждуОрганизациями` | xs:boolean | Использовать договоры между организациями | +| 291 | `ИспользоватьДоговорыСКлиентами` | xs:boolean | Использовать договоры с клиентами | +| 292 | `ИспользоватьДоговорыСПоставщиками` | xs:boolean | Использовать договоры с поставщиками | +| 293 | `ИспользоватьДополнительныеОтчетыИОбработки` | xs:boolean | Использовать дополнительные отчеты и обработки | +| 294 | `ИспользоватьДополнительныеРеквизитыИСведения` | xs:boolean | Использовать дополнительные реквизиты и сведения | +| 295 | `ИспользоватьДополнительныйЯзык1` | xs:boolean | Использовать дополнительный язык1 | +| 296 | `ИспользоватьДополнительныйЯзык2` | xs:boolean | Использовать дополнительный язык2 | +| 297 | `ИспользоватьДопустимоеОтклонениеОтгрузкиПриемкиМерныхТоваров` | xs:boolean | Использовать допустимое отклонение отгрузки приемки мерных товаров | +| 298 | `ИспользоватьЕдиницыИзмеренияДляОтчетов` | xs:boolean | Использовать единицы измерения для отчетов | +| 299 | `ИспользоватьЕжедневныеОтчеты1СДокументооборота` | xs:boolean | Использовать ежедневные отчеты 1С:Документооборота | +| 300 | `ИспользоватьЖурналПлатежей` | xs:boolean | Использовать журнал платежей | +| 301 | `ИспользоватьЗаданияДляУправленияТорговымиПредставителями` | xs:boolean | Использовать задания для управления торговыми представителями | +| 302 | `ИспользоватьЗаданияНаПеревозкуДляУчетаДоставкиПеревозчиками` | xs:boolean | Использовать задания на перевозку для учета доставки перевозчиками | +| 303 | `ИспользоватьЗаданияТорговымПредставителямДляПланирования` | xs:boolean | Использовать задания торговым представителям для планирования | +| 304 | `ИспользоватьЗаказыКлиентов` | xs:boolean | Использовать заказы клиентов | +| 305 | `ИспользоватьЗаказыНаВнутреннееПотребление` | xs:boolean | Использовать заказы на внутреннее потребление | +| 306 | `ИспользоватьЗаказыНаПеремещение` | xs:boolean | Использовать заказы на перемещение | +| 307 | `ИспользоватьЗаказыНаСборку` | xs:boolean | Использовать заказы на сборку/разборку | +| 308 | `ИспользоватьЗаказыПоставщикам` | xs:boolean | Использовать заказы поставщикам | +| 309 | `ИспользоватьЗаказыПоставщикамИЗаявкиНаРасходованиеДС` | xs:boolean | Использовать заказы поставщикам и заявки на расходование ДС | +| 310 | `ИспользоватьЗаметки` | xs:boolean | Использовать заметки | +| 311 | `ИспользоватьЗаполнениеРаздела7ДекларацииПоНДС` | xs:boolean | Использовать заполнение раздела 7 декларации по НДС | +| 312 | `ИспользоватьЗапретОтгрузки` | xs:boolean | Использовать запрет отгрузки | +| 313 | `ИспользоватьЗапросыКоммерческихПредложенийОтКлиента` | xs:boolean | Использовать запросы коммерческих предложений от клиента | +| 314 | `ИспользоватьЗапросыКоммерческихПредложенийПоставщиков` | xs:boolean | Использовать запросы коммерческих предложений поставщиков | +| 315 | `ИспользоватьЗаявкиНаВозвратТоваровОтКлиентов` | xs:boolean | Использовать заявки на возврат товаров от клиентов | +| 316 | `ИспользоватьЗаявкиНаРасходованиеДенежныхСредств` | xs:boolean | Использовать заявки на расходование денежных средств | +| 317 | `ИспользоватьИмпортныеЗакупки` | xs:boolean | Использовать импортные закупки | +| 318 | `ИспользоватьИмпортныеЗакупкиТоваровВПути` | xs:boolean | Использовать импортные закупки товаров в пути | +| 319 | `ИспользоватьИмпортныеТовары` | xs:boolean | Использовать импортные товары | +| 320 | `ИспользоватьИндивидуальныеСоглашенияСКлиентами` | xs:boolean | Использовать индивидуальные соглашения с клиентами | +| 321 | `ИспользоватьИнтеграциюССистемойВзаимодействия` | xs:boolean | Использовать интеграцию с системой взаимодействия | +| 322 | `ИспользоватьКартыЛояльности` | xs:boolean | Использовать карты лояльности | +| 323 | `ИспользоватьКачествоТоваров` | xs:boolean | Использовать качество товаров | +| 324 | `ИспользоватьКомиссиюПриЗакупках` | xs:boolean | Использовать комиссию при закупках | +| 325 | `ИспользоватьКомиссиюПриЗакупкахБазовая` | xs:boolean | Использовать комиссию при закупках базовая | +| 326 | `ИспользоватьКомиссиюПриЗакупкахНеБазовая` | xs:boolean | Использовать комиссию при закупках не базовая | +| 327 | `ИспользоватьКомиссиюПриПродажах` | xs:boolean | Использовать комиссию при продажах | +| 328 | `ИспользоватьКомиссиюПриПродажахБазовая` | xs:boolean | Использовать комиссию при продажах базовая | +| 329 | `ИспользоватьКомиссиюПриПродажахНеБазовая` | xs:boolean | Использовать комиссию при продажах не базовая | +| 330 | `ИспользоватьКоммерческиеПредложенияКлиентам` | xs:boolean | Использовать коммерческие предложения клиентам | +| 331 | `ИспользоватьКоммерческиеПредложенияПоставщиков` | xs:boolean | Использовать коммерческие предложения поставщиков | +| 332 | `ИспользоватьКонкурентнуюРазведку` | xs:boolean | Использовать конкурентную разведку | +| 333 | `ИспользоватьКонтрольТарификации` | xs:boolean | Использовать контроль тарификации | +| 334 | `ИспользоватьКорректировкиПриобретений` | xs:boolean | Использовать корректировки приобретений | +| 335 | `ИспользоватьКорректировкиРеализаций` | xs:boolean | Использовать корректировки реализаций | +| 336 | `ИспользоватьЛимитыРасходаДенежныхСредств` | xs:boolean | Использовать лимиты расхода денежных средств | +| 337 | `ИспользоватьЛимитыРасходаДенежныхСредствПоОрганизациям` | xs:boolean | Использовать лимиты расхода денежных средств по организациям | +| 338 | `ИспользоватьЛимитыРасходаДенежныхСредствПоПодразделениям` | xs:boolean | Использовать лимиты расхода денежных средств по подразделениям | +| 339 | `ИспользоватьМаркетинговыеМероприятия` | xs:boolean | Использовать маркетинговые мероприятия | +| 340 | `ИспользоватьМногооборотнуюТару` | xs:boolean | Использовать многооборотную тару | +| 341 | `ИспользоватьМобильноеПриложение1СЗаказыКлиентов` | xs:boolean | Использовать мобильное приложение "1С:Заказы" | +| 342 | `ИспользоватьМониторингЦелевыхПоказателей` | xs:boolean | Использовать мониторинг целевых показателей | +| 343 | `ИспользоватьНаборы` | xs:boolean | Использовать наборы | +| 344 | `ИспользоватьНапоминанияПользователя` | xs:boolean | Использовать напоминания | +| 345 | `ИспользоватьНачислениеЗарплаты` | xs:boolean | Использовать начисление зарплаты | +| 346 | `ИспользоватьНеотфактурованныеПоставки` | xs:boolean | Неотфактурованные поставки | +| 347 | `ИспользоватьНесколькоВалют` | xs:boolean | Использовать несколько валют | +| 348 | `ИспользоватьНесколькоВидовНоменклатуры` | xs:boolean | Использовать несколько видов номенклатуры | +| 349 | `ИспользоватьНесколькоВидовЦен` | xs:boolean | Использовать несколько видов цен | +| 350 | `ИспользоватьНесколькоКасс` | xs:boolean | Использовать несколько касс | +| 351 | `ИспользоватьНесколькоКассККМ` | xs:boolean | Использовать несколько касс ККМ | +| 352 | `ИспользоватьНесколькоКлассификацийЗадолженности` | xs:boolean | Использовать несколько классификаций задолженности | +| 353 | `ИспользоватьНесколькоОрганизаций` | xs:boolean | Использовать несколько организаций | +| 354 | `ИспользоватьНесколькоПроизводственныхКалендарей` | xs:boolean | Использовать несколько производственных календарей | +| 355 | `ИспользоватьНесколькоРасчетныхСчетов` | xs:boolean | Использовать несколько расчетных счетов | +| 356 | `ИспользоватьНесколькоРасчетныхСчетовКасс` | xs:boolean | Использовать несколько расчетных счетов или касс | +| 357 | `ИспользоватьНесколькоСкладов` | xs:boolean | Использовать несколько складов | +| 358 | `ИспользоватьНоменклатуруПартнеров` | xs:boolean | Использовать номенклатуру партнеров | +| 359 | `ИспользоватьНоменклатуруПродаваемуюСовместно` | xs:boolean | Использовать номенклатуру, продаваемую совместно | +| 360 | `ИспользоватьОбменEDI` | xs:boolean | Использовать обмен через 1С:EDI | +| 361 | `ИспользоватьОбменБизнесСеть` | xs:boolean | Использовать обмен электронными документами через 1С:Бизнес-сеть | +| 362 | `ИспользоватьОбменСБанками` | xs:boolean | Использовать обмен с банками | +| 363 | `ИспользоватьОбменСПодключаемымОборудованиемOffline` | xs:boolean | Использовать обмен с подключаемым оборудованием offline | +| 364 | `ИспользоватьОбменССайтом` | xs:boolean | Использовать обмен с сайтом | +| 365 | `ИспользоватьОбменЭД` | xs:boolean | Использовать обмен электронными документами | +| 366 | `ИспользоватьОбменЭДМеждуОрганизациями` | xs:boolean | Использовать обмен электронными документами между организациями | +| 367 | `ИспользоватьОбобщенныйУчетНекачественныхТоваров` | xs:boolean | Использовать обобщенный учет некачественных товаров | +| 368 | `ИспользоватьОбособленноеОбеспечениеЗаказов` | xs:boolean | Использовать обособленное обеспечение заказов | +| 369 | `ИспользоватьОбособленныеПодразделенияВыделенныеНаБаланс` | xs:boolean | Использовать обособленные подразделения, выделенные на отдельный баланс | +| 370 | `ИспользоватьОграниченияРучныхСкидокВПродажахПоПользователям` | xs:boolean | Использовать ограничения ручных скидок в продажах по пользователям | +| 371 | `ИспользоватьОграниченияРучныхСкидокВПродажахПоСоглашениям` | xs:boolean | Использовать ограничения ручных скидок в продажах по соглашениям | +| 372 | `ИспользоватьОзнакомлениеСЭлектроннымиДокументами` | xs:boolean | Использовать ознакомление с электронными документами | +| 373 | `ИспользоватьОплатуПлатежнымиКартами` | xs:boolean | Использовать оплату платежными картами | +| 374 | `ИспользоватьОрдерныеСклады` | xs:boolean | Использовать ордерные склады | +| 375 | `ИспользоватьОтветственноеХранение` | xs:boolean | Использовать ответственное хранение | +| 376 | `ИспользоватьОтветственноеХранениеВПроцессеЗакупки` | xs:boolean | Использовать ответственное хранение в процессе закупки | +| 377 | `ИспользоватьОтгрузкуБезПереходаПраваСобственности` | xs:boolean | Использовать отгрузку без перехода права собственности | +| 378 | `ИспользоватьОтложеннуюОтправкуЭлектронныхДокументов` | xs:boolean | Использовать отложенную отправку электронных документов | +| 379 | `ИспользоватьОтправкуSMSВШаблонахСообщений` | xs:boolean | Использовать отправку SMS в шаблонах сообщений | +| 380 | `ИспользоватьОтчетВедомостьРасчетовМеждуОрганизациями` | xs:boolean | Использовать отчет ведомость расчетов между организациями | +| 381 | `ИспользоватьОтчетДвиженияЗаказов` | xs:boolean | Использовать отчет движения заказов | +| 382 | `ИспользоватьОтчетРасчетыМеждуОрганизациями` | xs:boolean | Использовать отчет расчеты между организациями | +| 383 | `ИспользоватьПартионныйУчет` | xs:boolean | Использовать партионный учет | +| 384 | `ИспользоватьПартнеровИКонтрагентов` | xs:boolean | Использовать партнеров и контрагентов | +| 385 | `ИспользоватьПартнеровКакКонтрагентов` | xs:boolean | Использовать партнеров как контрагентов | +| 386 | `ИспользоватьПервичныйСпрос` | xs:boolean | Фиксировать первичный спрос | +| 387 | `ИспользоватьПередачиТоваровМеждуОрганизациями` | xs:boolean | Использовать передачи товаров между организациями | +| 388 | `ИспользоватьПередачуНаОтветственноеХранениеСПравомПродажи` | xs:boolean | Использовать передачу на ответственное хранение с правом продажи | +| 389 | `ИспользоватьПеремещениеПоНесколькимЗаказам` | xs:boolean | Использовать перемещение по нескольким заказам | +| 390 | `ИспользоватьПеремещениеТоваров` | xs:boolean | Использовать перемещение товаров | +| 391 | `ИспользоватьПеренаправлениеЗадач` | xs:boolean | Использовать перенаправление задач | +| 392 | `ИспользоватьПланированиеЗакупок` | xs:boolean | Использовать планирование закупок | +| 393 | `ИспользоватьПланированиеОстатков` | xs:boolean | Использовать планирование остатков | +| 394 | `ИспользоватьПланированиеПродаж` | xs:boolean | Использовать планирование продаж | +| 395 | `ИспользоватьПланированиеПродажПоКатегориям` | xs:boolean | Использовать планирование продаж по категориям | +| 396 | `ИспользоватьПланированиеСборкиРазборки` | xs:boolean | Использовать планирование сборки (разборки) | +| 397 | `ИспользоватьПодарочныеСертификаты` | xs:boolean | Использовать подарочные сертификаты | +| 398 | `ИспользоватьПодключаемоеОборудование` | xs:boolean | Использовать подключаемое оборудование | +| 399 | `ИспользоватьПодключаемоеОборудованиеИОплатуПлатежнымиКартами` | xs:boolean | Использовать подключаемое оборудование и оплату платежными картами | +| 400 | `ИспользоватьПодразделения` | xs:boolean | Использовать подразделения | +| 401 | `ИспользоватьПодчиненныеБизнесПроцессы` | xs:boolean | Использовать подчиненные бизнес-процессы | +| 402 | `ИспользоватьПолнотекстовыйПоиск` | xs:boolean | Использовать полнотекстовый поиск | +| 403 | `ИспользоватьПолнотекстовыйПоискПриПодбореТоваров` | xs:boolean | Использовать полнотекстовый поиск при подборе товаров | +| 404 | `ИспользоватьПострочнуюОтгрузкуВЗаказеКлиента` | xs:boolean | Использовать построчную отгрузку в заказе клиента | +| 405 | `ИспользоватьПоступлениеПоНесколькимЗаказам` | xs:boolean | Использовать поступление по нескольким заказам | +| 406 | `ИспользоватьПочтовыйКлиент` | xs:boolean | Использовать почтовый клиент | +| 407 | `ИспользоватьПризнакРассмотрено` | xs:boolean | Использовать признак "Рассмотрено" | +| 408 | `ИспользоватьПрисоединенныеФайлы1СДокументооборота` | xs:boolean | Использовать присоединенные файлы 1С:Документооборота | +| 409 | `ИспользоватьПричиныОтменыЗаказовКлиентов` | xs:boolean | Использовать причины отмены заказов клиентов | +| 410 | `ИспользоватьПричиныОтменыЗаказовПоставщикам` | xs:boolean | Использовать причины отмены заказов поставщикам | +| 411 | `ИспользоватьПроверкуКонтрагентов` | xs:decimal | Использовать сервис проверки данных по контрагенту | +| 412 | `ИспользоватьПродажиНаЭкспортНесырьевыхТоваров` | xs:boolean | Использовать продажи на экспорт несырьевых товаров | +| 413 | `ИспользоватьПродажиНаЭкспортСырьевыхТоваровУслуг` | xs:boolean | Использовать продажи на экспорт сырьевых товаров, услуг | +| 414 | `ИспользоватьПродажуАгентскихУслуг` | xs:boolean | Использовать продажу агентских услуг | +| 415 | `ИспользоватьПроекты` | xs:boolean | Использовать проекты | +| 416 | `ИспользоватьПроизводство` | xs:boolean | Использовать производство | +| 417 | `ИспользоватьПрофилиБезопасностиДляДОО` | xs:boolean | Использовать профили безопасности для дополнительных отчетов и обработок | +| 418 | `ИспользоватьПрофилиБезопасностиДляРасширений` | xs:boolean | Использовать профили безопасности для расширений | +| 419 | `ИспользоватьПроцессыИЗадачи1СДокументооборота` | xs:boolean | Использовать процессы и задачи 1С:Документооборота | +| 420 | `ИспользоватьПрочееОприходованиеТоваров` | xs:boolean | Использовать прочее оприходование товаров | +| 421 | `ИспользоватьПрочиеВзаимодействия` | xs:boolean | Использовать прочие взаимодействия | +| 422 | `ИспользоватьПрямойОбменЭлектроннымиДокументами` | xs:boolean | Использовать прямой обмен электронными документами | +| 423 | `ИспользоватьРазделениеПоОбластямДанных` | xs:boolean | Использовать разделение по областям данных | +| 424 | `ИспользоватьРасширенноеОбеспечениеПотребностей` | xs:boolean | Использовать расширенное обеспечение потребностей | +| 425 | `ИспользоватьРасширенныеВозможностиЗаказаКлиента` | xs:boolean | Использовать расширенные возможности заказа клиента | +| 426 | `ИспользоватьРеализациюПоНесколькимЗаказам` | xs:boolean | Использовать реализацию по нескольким заказам | +| 427 | `ИспользоватьРеглУчет` | xs:boolean | Использовать регламентированный учет | +| 428 | `ИспользоватьРейтингиПродажНоменклатуры` | xs:boolean | Использовать рейтинги продаж номенклатуры | +| 429 | `ИспользоватьРозничныеПродажи` | xs:boolean | Использовать розничные продажи | +| 430 | `ИспользоватьРолиКонтактныхЛицПартнеров` | xs:boolean | Использовать роли контактных лиц партнеров | +| 431 | `ИспользоватьРолиПартнеровИКонтактныхЛицВСделкахИПроектах` | xs:boolean | Использовать роли партнеров и контактных лиц в сделках и проектах | +| 432 | `ИспользоватьРучныеСкидкиВЗакупках` | xs:boolean | Использовать ручные скидки в закупках | +| 433 | `ИспользоватьРучныеСкидкиВПродажах` | xs:boolean | Использовать ручные скидки в продажах | +| 434 | `ИспользоватьСбалансированностьПлановУТ` | xs:boolean | Использовать сбалансированность планов УТ | +| 435 | `ИспользоватьСборкуРазборку` | xs:boolean | Использовать сборку разборку | +| 436 | `ИспользоватьСвязанныеДокументы1СДокументооборота` | xs:boolean | Использовать связанные документы 1С:Документооборота | +| 437 | `ИспользоватьСделкиСКлиентами` | xs:boolean | Использовать сделки с клиентами | +| 438 | `ИспользоватьСегментыНоменклатуры` | xs:boolean | Использовать сегменты номенклатуры | +| 439 | `ИспользоватьСегментыПартнеров` | xs:boolean | Использовать сегменты партнеров | +| 440 | `ИспользоватьСезонныеКоэффициенты` | xs:boolean | Использовать сезонные коэффициенты | +| 441 | `ИспользоватьСервис1СДоставка` | xs:boolean | Использовать сервис 1С:Доставка | +| 442 | `ИспользоватьСервис1СКурьер` | xs:boolean | Использовать сервис 1С:Курьер | +| 443 | `ИспользоватьСервисDSS` | xs:boolean | Использовать сервис DSS | +| 444 | `ИспользоватьСервисПереводаТекста` | xs:boolean | Использовать сервис перевода текста | +| 445 | `ИспользоватьСервисРаботаСНоменклатурой` | xs:boolean | Использовать сервис 1С:Номенклатура | +| 446 | `ИспользоватьСервисСПАРКРиски` | xs:boolean | Использовать сервис 1СПАРК Риски | +| 447 | `ИспользоватьСерииНоменклатуры` | xs:boolean | Использовать серии номенклатуры | +| 448 | `ИспользоватьСертификатыНоменклатуры` | xs:boolean | Использовать сертификаты номенклатуры | +| 449 | `ИспользоватьСертификатыОблачногоСервисаВЭДО` | xs:boolean | Использовать сертификаты облачного сервиса в ЭДО | +| 450 | `ИспользоватьСинхронизациюДанных` | xs:boolean | Использовать синхронизацию данных | +| 451 | `ИспользоватьСинхронизациюДанныхВЛокальномРежиме` | xs:boolean | Использовать синхронизацию данных в локальном режиме | +| 452 | `ИспользоватьСинхронизациюДанныхВМоделиСервиса` | xs:boolean | Использовать синхронизацию данных в модели сервиса | +| 453 | `ИспользоватьСинхронизациюДанныхВМоделиСервисаСЛокальнойПрограммой` | xs:boolean | Использовать синхронизацию данных в модели сервиса с локальной программой | +| 454 | `ИспользоватьСинхронизациюДанныхВМоделиСервисаСПриложениемВИнтернете` | xs:boolean | Использовать синхронизацию данных в модели сервиса с приложением в Интернете | +| 455 | `ИспользоватьСкладыВТабличнойЧастиДокументовЗакупки` | xs:boolean | Использовать склады в табличной части документов закупки | +| 456 | `ИспользоватьСкладыВТабличнойЧастиДокументовПродажи` | xs:boolean | Использовать склады в табличной части документов продажи | +| 457 | `ИспользоватьСкрытиеПерсональныхДанныхСубъектов` | xs:boolean | Использовать скрытие персональных данных субъектов | +| 458 | `ИспользоватьСогласованиеЗаказовКлиентов` | xs:boolean | Использовать согласование заказов клиентов | +| 459 | `ИспользоватьСогласованиеЗаказовПоставщикам` | xs:boolean | Использовать согласование заказов поставщикам | +| 460 | `ИспользоватьСогласованиеЗаявокНаВозвратТоваровОтКлиентов` | xs:boolean | Использовать согласование заявок на возврат товаров от клиентов | +| 461 | `ИспользоватьСогласованиеСоглашенийСКлиентами` | xs:boolean | Использовать согласование соглашений с клиентами | +| 462 | `ИспользоватьСогласованиеЦенНоменклатуры` | xs:boolean | Использовать согласование цен номенклатуры | +| 463 | `ИспользоватьСогласованиеЧерез1СДокументооборот` | xs:boolean | Использовать согласование через 1С:Документооборот | +| 464 | `ИспользоватьСоглашенияСКлиентами` | xs:boolean | Использовать соглашения с клиентами | +| 465 | `ИспользоватьСоглашенияСПоставщиками` | xs:boolean | Использовать соглашения с поставщиками | +| 466 | `ИспользоватьСтандартныйПоискПриПодбореТоваров` | xs:boolean | Использовать стандартный поиск при подборе товаров | +| 467 | `ИспользоватьСтатусыАвансовыхОтчетов` | xs:boolean | Использовать статусы авансовых отчетов | +| 468 | `ИспользоватьСтатусыЗаказовНаВнутреннееПотребление` | xs:boolean | Использовать статусы заказов на внутреннее потребление | +| 469 | `ИспользоватьСтатусыЗаказовНаПеремещение` | xs:boolean | Использовать статусы заказов на перемещение | +| 470 | `ИспользоватьСтатусыЗаказовНаСборку` | xs:boolean | Использовать статусы заказов на сборку | +| 471 | `ИспользоватьСтатусыЗаказовПоставщикам` | xs:boolean | Использовать статусы заказов поставщикам | +| 472 | `ИспользоватьСтатусыПеремещенийТоваров` | xs:boolean | Использовать статусы перемещений товаров | +| 473 | `ИспользоватьСтатусыРеализацийТоваровУслуг` | xs:boolean | Использовать статусы реализаций товаров услуг | +| 474 | `ИспользоватьСтатусыСборокТоваров` | xs:boolean | Использовать статусы сборок товаров | +| 475 | `ИспользоватьСчетаНаОплатуКлиентам` | xs:boolean | Использовать счета на оплату клиентам | +| 476 | `ИспользоватьТТН` | xs:boolean | Использовать товарно-транспортные накладные | +| 477 | `ИспользоватьТиповыеИИндивидуальныеСоглашенияСКлиентами` | xs:boolean | Использовать типовые и индивидуальные соглашения с клиентами | +| 478 | `ИспользоватьТиповыеСоглашенияСКлиентами` | xs:boolean | Использовать типовые соглашения с клиентами | +| 479 | `ИспользоватьТоварныеКатегории` | xs:boolean | Использовать товарные категории | +| 480 | `ИспользоватьТоварыВПутиОтПоставщиков` | xs:boolean | Товары в пути | +| 481 | `ИспользоватьУведомленияОКонтролируемыхСделках` | xs:boolean | Использовать уведомления о контролируемых сделках | +| 482 | `ИспользоватьУдалениеПомеченныхОбъектов` | xs:boolean | Использовать удаление помеченных объектов | +| 483 | `ИспользоватьУпаковкиНоменклатуры` | xs:boolean | Использовать упаковки номенклатуры | +| 484 | `ИспользоватьУпаковочныеЛисты` | xs:boolean | Использовать упаковочные листы | +| 485 | `ИспользоватьУправлениеДоставкой` | xs:boolean | Использовать управление доставкой | +| 486 | `ИспользоватьУправлениеДоступом` | xs:boolean | Использовать управление доступом | +| 487 | `ИспользоватьУправлениеКоллекциями` | xs:boolean | Использовать управление коллекциями | +| 488 | `ИспользоватьУправлениеПеремещениемОбособленныхТоваров` | xs:boolean | Использовать управление перемещением обособленных товаров | +| 489 | `ИспользоватьУправлениеПроизводством` | xs:boolean | Использовать управление производством | +| 490 | `ИспользоватьУправлениеПроизводством2_2` | xs:boolean | Использовать управление производством 2.2 | +| 491 | `ИспользоватьУправлениеСделками` | xs:boolean | Использовать управление сделками | +| 492 | `ИспользоватьУправленческуюОрганизацию` | xs:boolean | Использовать раздельные операции закупки и продажи для упр. и регл. учета | +| 493 | `ИспользоватьУпрощеннуюСхемуОплатыВЗакупках` | xs:boolean | Использовать упрощенную схему оплаты в закупках | +| 494 | `ИспользоватьУпрощеннуюСхемуОплатыВПродажах` | xs:boolean | Использовать упрощенную схему оплаты в продажах | +| 495 | `ИспользоватьУчетДрагоценныхМатериалов` | xs:boolean | Использовать учет драгоценных металлов и камней | +| 496 | `ИспользоватьУчетНДС` | xs:boolean | Использовать учет НДС | +| 497 | `ИспользоватьУчетПрослеживаемыхИмпортныхТоваров` | xs:boolean | Использовать учет прослеживаемых импортных товаров | +| 498 | `ИспользоватьУчетПрочихАктивовПассивов` | xs:boolean | Использовать учет прочих активов пассивов | +| 499 | `ИспользоватьУчетПрочихДоходовРасходов` | xs:boolean | Использовать учет прочих доходов и расходов | +| 500 | `ИспользоватьУчетПрочихДоходовРасходовРегл` | xs:boolean | Использовать учет прочих доходов и расходов в регл. учете | +| 501 | `ИспользоватьУчетСебестоимости` | xs:boolean | Использовать учет себестоимости | +| 502 | `ИспользоватьФайловоеХранилище1СДокументооборота` | xs:boolean | Использовать файловое хранилище 1С:Документооборота | +| 503 | `ИспользоватьФасовкуВесовогоТовара` | xs:boolean | Использовать фасовку весового товара | +| 504 | `ИспользоватьФорматыМагазинов` | xs:boolean | Использовать форматы магазинов | +| 505 | `ИспользоватьХарактеристикиНоменклатуры` | xs:boolean | Использовать характеристики номенклатуры | +| 506 | `ИспользоватьЦеновыеГруппы` | xs:boolean | Использовать ценовые группы | +| 507 | `ИспользоватьШаблоныСообщений` | xs:boolean | Использовать шаблоны сообщений | +| 508 | `ИспользоватьШифрование` | xs:boolean | Использовать шифрование | +| 509 | `ИспользоватьШтрихкодированиеПечатныхФормОбъектов` | xs:boolean | Использовать штрихкодирование печатных форм объектов | +| 510 | `ИспользоватьЭлектроннуюПодписьВМоделиСервиса` | xs:boolean | Использовать электронную подпись в модели сервиса | +| 511 | `ИспользоватьЭлектроннуюПочту1СДокументооборота` | xs:boolean | Использовать электронную почту 1С:Документооборота | +| 512 | `ИспользоватьЭлектроннуюПочтуВШаблонахСообщений` | xs:boolean | Использовать электронную почту в шаблонах сообщений | +| 513 | `ИспользоватьЭлектронныеПодписи` | xs:boolean | Использовать электронные подписи | +| 514 | `ИспользуетсяМиграцияПриложений` | xs:boolean | Используется миграция приложений | +| 515 | `ИспользуетсяОбменСБухгалтериейПредприятия` | xs:boolean | Используется обмен с бухгалтерией предприятия | +| 516 | `ИспользуетсяСборкаРазборкаИСерииНоменклатуры` | xs:boolean | Используется сборка разборка и серии номенклатуры | +| 517 | `ИспользуетсяУчетВЕдиницеИзмеренияТНВЭД` | xs:boolean | Используется учет в единице измерения ТНВЭД | +| 518 | `ИспользуютсяПрофилиБезопасности` | xs:boolean | Используются профили безопасности | +| 519 | `ИсточникДанныхАдресногоКлассификатора` | xs:string | Источник данных адресного классификатора | +| 520 | `КаталогОбменаФайламиВМоделиСервиса` | xs:string | Каталог обмена файлами в модели сервиса | +| 521 | `КаталогОбменаФайламиВМоделиСервисаLinux` | xs:string | Каталог обмена файлами в модели сервиса Linux | +| 522 | `КаталогРасширенийКоличествоЭлементовВВыборке` | xs:decimal | Максимальное количество элементов на странице каталога расширений | +| 523 | `КаталогРасширенийОтправлятьПревьюПриЗапросеСписка` | xs:boolean | Отображать изображения в каталоге расширений | +| 524 | `КаталогСообщенийОбменаДаннымиДляLinux` | xs:string | Каталог сообщений синхронизации для Linux | +| 525 | `КаталогСообщенийОбменаДаннымиДляWindows` | xs:string | Каталог сообщений синхронизации для Windows | +| 526 | `КлассификаторОшибокКриптографии` | v8:ValueStorage | Классификатор ошибок криптографии | +| 527 | `КлючОбластиДанных` | xs:string | Ключ области данных | +| 528 | `КодПоследнегоУпаковочногоЛиста` | xs:string | Код последнего упаковочного листа | +| 529 | `КоличествоДнейХраненияЗаархивированныхЧеков` | xs:decimal | Количество дней хранения заархивированных чеков | +| 530 | `КоличествоДнейХраненияОтложенныхЧеков` | xs:decimal | Количество дней хранения отложенных чеков | +| 531 | `КоличествоЗамеровВПакетеЭкспорта` | xs:decimal | Количество замеров в пакете экспорта | +| 532 | `КоличествоПериодовABCКлассификацииНоменклатуры` | xs:decimal | Количество периодов ABC классификации номенклатуры | +| 533 | `КоличествоПериодовABCКлассификацииПартнеров` | xs:decimal | Количество периодов ABC классификации партнеров | +| 534 | `КоличествоПериодовXYZКлассификацииНоменклатуры` | xs:decimal | Количество периодов XYZ классификации номенклатуры | +| 535 | `КоличествоПериодовXYZКлассификацииПартнеров` | xs:decimal | Количество периодов XYZ классификации партнеров | +| 536 | `КоличествоПериодовДляАнализаНоменклатурыПродаваемойСовместно` | xs:decimal | Количество периодов | +| 537 | `КоличествоПериодовРасчетаТоварныхОграничений` | xs:decimal | Количество периодов расчета товарных ограничений | +| 538 | `КоличествоПотоковОбновленияДоступа` | xs:decimal | Количество потоков обновления доступа | +| 539 | `КоличествоПотоковОбновленияИнформационнойБазы` | xs:decimal | Количество потоков обновления информационной базы | +| 540 | `КоличествоПотоковРаспределенияВзаиморасчетов` | xs:decimal | Количество потоков распределения взаиморасчетов | +| 541 | `КоличествоЭлементовВТранзакцииЗагрузкиДанных` | xs:decimal | Количество элементов в транзакции загрузки данных | +| 542 | `КомплекснаяАвтоматизация` | xs:boolean | Комплексная автоматизация | +| 543 | `КонечнаяТочкаМенеджераСервиса` | cfg:ExchangePlanRef.ОбменСообщениями | Конечная точка менеджера сервиса | +| 544 | `КонтекстРаботыИС` | v8:ValueStorage | Контекст работы ИС | +| 545 | `КонтролироватьВыдачуПодОтчетВРазрезеЦелей` | xs:boolean | Контролировать выдачу под отчет в разрезе целей | +| 546 | `КонтролироватьОстаткиНомеровГТДПриЗакупкеУПоставщикаПоСхемеТоварыВПути` | xs:boolean | Контролировать остатки номеров ГТД при закупке у поставщика по схеме "товары в пути" | +| 547 | `КонтролироватьОстаткиНомеровГТДПриИмпортеПоСхемеТоварыВПути` | xs:boolean | Контролировать остатки номеров ГТД при импорте по схеме "товары в пути" | +| 548 | `КонтролироватьОстаткиТоваровОрганизаций` | xs:boolean | Контролировать остатки товаров организаций | +| 549 | `КонтролироватьОстаткиТоваровОрганизацийКОформлениюПоПоступлениям` | xs:boolean | Контролировать остатки товаров организаций к оформлению по поступлениям | +| 550 | `КонтролироватьПревышениеЛимитовРасходаДенежныхСредств` | xs:boolean | Контролировать превышение лимитов расхода денежных средств | +| 551 | `КонтролироватьУникальностьНоменклатурыПоСочетаниюЗначенийРеквизитов` | xs:boolean | Контролировать уникальность номенклатуры и характеристик по сочетанию значений реквизитов | +| 552 | `КонтролироватьУникальностьРабочегоНаименованияНоменклатурыИХарактеристик` | xs:boolean | Контролировать уникальность рабочего наименования номенклатуры и характеристик | +| 553 | `КопироватьОбластиДанныхИзЭталонной` | xs:boolean | Копировать области данных из эталонной | +| 554 | `ЛогироватьЗапускиЗаданийОчереди` | xs:boolean | Логировать запуски заданий очереди | +| 555 | `МаксимальнаяДлительностьВыполненияИсполняющегоФоновогоЗадания` | xs:decimal | Максимальная длительность выполнения исполняющего фонового задания | +| 556 | `МаксимальноеКоличествоИсполняющихФоновыхЗаданий` | xs:decimal | Максимальное количество исполняющих фоновых заданий | +| 557 | `МаксимальноеКоличествоЭлементовВДеревеОтборовНоменклатуры` | xs:decimal | Максимальное количество элементов в дереве отборов номенклатуры | +| 558 | `МаксимальныйРазмерФайла` | xs:decimal | Максимальный размер файла | +| 559 | `МаксимальныйРазмерФайлаДляПередачиВ1СДокументооборот` | xs:decimal | Максимальный размер файла для передачи в 1С:Документооборот | +| 560 | `МаксимальныйРазмерФайлаОбластиДанных` | xs:decimal | Максимальный размер файла области данных | +| 561 | `МинимальнаяДостоверностьНоменклатурыПродаваемойСовместно` | xs:decimal | Минимальная достоверность | +| 562 | `МинимальнаяЗначимостьНоменклатурыПродаваемойСовместно` | xs:decimal | Минимальная значимость | +| 563 | `МинимальныйИнтервалРегламентныхЗаданийДОИОВМоделиСервиса` | xs:decimal | Минимальный интервал регламентных заданий дополнительных отчетов и обработок в модели сервиса | +| 564 | `МинимальныйПроцентСлучаевНоменклатурыПродаваемойСовместно` | xs:decimal | Минимальный процент случаев | +| 565 | `НазначатьСкидкиПоКнопкеРасчетВЧекеККМ` | xs:boolean | Назначать скидки по кнопке Расчет в чеке ККМ | +| 566 | `НаименованиеДляПечатиВидовНоменклатуры` | xs:string | Наименование для печати видов номенклатуры | +| 567 | `НаименованиеКорневойПапкиФайлов1СДокументооборот` | xs:string | Наименование корневой папки файлов 1С:Документооборота | +| 568 | `НастройкаПодчиненногоУзлаРИБЗавершена` | xs:boolean | Настройка подчиненного узла РИБ Завершена | +| 569 | `НастройкаПроксиСервера` | v8:ValueStorage | Настройка прокси сервера | +| 570 | `НастройкиВходаПользователей` | v8:ValueStorage | Настройки входа пользователей | +| 571 | `НастройкиВыгрузкиНоменклатуры` | v8:ValueStorage | Настройки выгрузки номенклатуры | +| 572 | `НастройкиЗакрытияМесяца` | v8:ValueStorage | Настройки закрытия месяца | +| 573 | `НастройкиКолонтитулов` | v8:ValueStorage | Настройки колонтитулов | +| 574 | `НастройкиНовостей` | v8:ValueStorage | Настройки новостей | +| 575 | `НастройкиОбменаВЕТИС` | v8:ValueStorage | Настройки обмена ВетИС | +| 576 | `НастройкиОбменаГосИС` | v8:ValueStorage | Настройки обмена ГосИС через ЭДО | +| 577 | `НастройкиПодчиненногоУзлаРИБ` | xs:string | Настройки подчиненного узла РИБ | +| 578 | `НастройкиПрефиксацииШтрихкодов` | v8:ValueStorage | Настройки префиксации штрихкодов | +| 579 | `НачатПереходНаНовуюАрхитектуруВзаиморасчетов` | xs:boolean | Начат переход на новую архитектуру взаиморасчетов | +| 580 | `НеБазоваяВерсия` | xs:boolean | Не базовая версия | +| 581 | `НеВыбиратьВариантВыводаСкидокПриПечатиДокументовПродажи` | xs:boolean | Не выбирать вариант вывода скидок при печати документов продажи | +| 582 | `НеВыгружатьИзображенияТорговыхПредложений` | xs:boolean | Не выгружать изображения торговых предложений | +| 583 | `НеДетализироватьЗаданияТорговымПредставителямПоНоменклатуре` | xs:boolean | Не детализировать задания торговым представителям по номенклатуре | +| 584 | `НеЗакрыватьЗаказыКлиентовБезПолнойОплаты` | xs:boolean | Не закрывать заказы клиентов без полной оплаты | +| 585 | `НеЗакрыватьЗаказыКлиентовБезПолнойОтгрузки` | xs:boolean | Не закрывать заказы клиентов без полной отгрузки | +| 586 | `НеЗакрыватьЗаказыНаВнутреннееПотреблениеБезПолнойОтгрузки` | xs:boolean | Не закрывать заказы на внутреннее потребление без полной отгрузки | +| 587 | `НеЗакрыватьЗаказыНаПеремещениеБезПолнойОтгрузки` | xs:boolean | Не закрывать заказы на перемещение без полной отгрузки | +| 588 | `НеЗакрыватьЗаказыНаСборкуБезПолнойОтгрузки` | xs:boolean | Не закрывать заказы на сборку без полной отгрузки | +| 589 | `НеЗакрыватьЗаказыПоставщикамБезПолногоПоступления` | xs:boolean | Не закрывать заказы поставщикам без полного поступления | +| 590 | `НеЗакрыватьЗаказыПоставщикамБезПолнойОплаты` | xs:boolean | Не закрывать заказы поставщикам без полной оплаты | +| 591 | `НеИспользоватьБизнесРегионы` | xs:boolean | Не использовать бизнес-регионы | +| 592 | `НеИспользоватьЖурналПлатежей` | xs:boolean | Не использовать журнал платежей | +| 593 | `НеИспользоватьЗаявкиНаРасходованиеДенежныхСредств` | xs:boolean | Не использовать заявки на расходование денежных средств | +| 594 | `НеИспользоватьНесколькоВалют` | xs:boolean | Не использовать несколько валют | +| 595 | `НеИспользоватьНесколькоКасс` | xs:boolean | Не использовать несколько касс | +| 596 | `НеИспользоватьНесколькоКассККМ` | xs:boolean | Не использовать несколько касс ККМ | +| 597 | `НеИспользоватьНесколькоОрганизаций` | xs:boolean | Не использовать несколько организаций | +| 598 | `НеИспользоватьНесколькоРасчетныхСчетов` | xs:boolean | Не использовать несколько расчетных счетов | +| 599 | `НеИспользоватьНесколькоСкладов` | xs:boolean | Не использовать несколько складов | +| 600 | `НеИспользоватьПроверкуЗаданийЗакрытияМесяцаВОтчетахРегл` | xs:boolean | Не использовать проверку заданий закрытия месяца в отчетах регл | +| 601 | `НеИспользоватьРазделениеПоОбластямДанных` | xs:boolean | Не использовать разделение по областям данных | +| 602 | `НеИспользоватьРазделениеПоОбластямДанныхИЭтоКА` | xs:boolean | Не использовать разделение по областям данных и это КА | +| 603 | `НеИспользоватьРазделениеПоОбластямДанныхИЭтоУТ` | xs:boolean | Не использовать разделение по областям данных и это УТ | +| 604 | `НеИспользоватьРасширенноеОбеспечениеПотребностей` | xs:boolean | Не использовать расширенное обеспечение потребностей | +| 605 | `НеИспользоватьРозничныеПродажи` | xs:boolean | Не использовать розничные продажи | +| 606 | `НеИспользоватьСчетаНаОплатуВыбиратьВариантВыводаСкидок` | xs:boolean | Не использовать счета на оплату и выбирать вариант вывода скидок | +| 607 | `НеИспользоватьСчетаНаОплатуНеВыбиратьВариантВыводаСкидок` | xs:boolean | Не использовать счета на оплату и не выбирать вариант вывода скидок | +| 608 | `НеИспользоватьЦеновыеГруппы` | xs:boolean | Не использовать ценовые группы | +| 609 | `НеНоваяАрхитектураВзаиморасчетов` | xs:boolean | Не новая архитектура взаиморасчетов | +| 610 | `НеПечататьФискальныйЧекПриОтправкеЭлектронногоЧекаПокупателю` | xs:boolean | Не печатать фискальный чек при отправке электронного чека покупателю | +| 611 | `НеФормироватьФинансовыйРезультат` | xs:boolean | Не формировать финансовый результат | +| 612 | `НезависимоеИспользованиеДополнительныхОтчетовИОбработокВМоделиСервиса` | xs:boolean | Независимое использование дополнительных отчетов и обработок в модели сервиса | +| 613 | `НезависимоеИспользованиеРасширенийВМоделиСервиса` | xs:boolean | Независимое использование расширений в модели сервиса | +| 614 | `НоваяАрхитектураВзаиморасчетов` | xs:boolean | Новая архитектура взаиморасчетов | +| 615 | `НомерЗаданияКЗакрытиюМесяца` | xs:decimal | Номер задания к закрытию месяца | +| 616 | `НомерЗаданияКРаспределениюРасчетовСКлиентами` | xs:decimal | Номер задания к распределению расчетов с клиентами | +| 617 | `НомерЗаданияКРаспределениюРасчетовСПоставщиками` | xs:decimal | Номер задания к распределению расчетов с поставщиками | +| 618 | `НомерЗаданияКРасчетуСебестоимости` | xs:decimal | Номер задания к расчету себестоимости | +| 619 | `НомерЗаданияКФормированиюДвиженийПоНДС` | xs:decimal | Номер задания к формированию движений по НДС | +| 620 | `НормативныйВидЦен` | cfg:CatalogRef.ВидыЦен | Нормативный вид цен | +| 621 | `ОбновлятьКонтактнуюИнформациюПартнеровПриОтправкеЭлектронныхЧеков` | xs:boolean | Обновлять контактную информацию партнеров при отправке электронных чеков | +| 622 | `ОбщиеФайлыОбменСБанками` | v8:ValueStorage | Общие файлы для обмена с сервисом 1С:ДиректБанк | +| 623 | `ОграничиватьДоступНаУровнеЗаписей` | xs:boolean | Ограничивать доступ на уровне записей | +| 624 | `ОграничиватьДоступНаУровнеЗаписейУниверсально` | xs:boolean | Ограничивать доступ на уровне записей универсально | +| 625 | `ОперацияПриЗакрытииКассовойСмены` | cfg:EnumRef.ОперацииПриЗакрытииКассовойСмены | Операция при закрытии кассовой смены | +| 626 | `ОптимизироватьЗапасыРаспределительногоЦентра` | xs:boolean | Оптимизировать запасы распределительного центра | +| 627 | `ОрганизацияНаКоторуюЗарегистрированаПрограмма` | xs:string | Организация, на которую зарегистрирована программа | +| 628 | `ОсновнойКалендарьПредприятия` | cfg:CatalogRef.Календари | Основной график работы предприятия | +| 629 | `ОсновнойЯзык` | xs:string | Основной язык | +| 630 | `ОтветственныйВДокументах` | xs:boolean | Ответственный в документах | +| 631 | `ОтключитьОчередьПередачиЗаписейСкладскогоЖурналаВЕТИС` | xs:boolean | Не использовать очередь передачи записей складского журнала ВетИС | +| 632 | `ОтложенноеОбновлениеВГлавномУзлеЗавершеноУспешно` | xs:boolean | Отложенное обновление в главном узле завершено успешно | +| 633 | `ОтложенноеОбновлениеЗавершеноУспешно` | xs:boolean | Отложенное обновление завершено успешно | +| 634 | `ОтображениеСкидокВПечатныхФормахДокументовПродажи` | cfg:EnumRef.ВариантыВыводаСкидокВПечатныхФормах | Отображение скидок в печатных формах документов продажи | +| 635 | `ОтправкаЭлектронныхЧековПослеПробитияЧека` | xs:boolean | Отправка электронных чеков после пробития чека | +| 636 | `ОтправлятьВходящиеДокументыНаУтверждение` | xs:boolean | Отправлять входящие документы на утверждение | +| 637 | `ОтправлятьПисьмаВФорматеHTML` | xs:boolean | Отправлять письма в формате HTML | +| 638 | `ОтправлятьЭлектронныеЧекиПоEmailЧерезОФД` | xs:boolean | Отправлять электронные чеки по E-mail через ОФД | +| 639 | `ОтправлятьЭлектронныеЧекиПоSMSЧерезОФД` | xs:boolean | Отправлять электронные чеки по SMS через ОФД | +| 640 | `ОценкаПроизводительностиПериодЗаписи` | xs:decimal | Оценка производительности период записи | +| 641 | `ПараметрыАдминистрированияИБ` | v8:ValueStorage | Параметры администрирования ИБ | +| 642 | `ПараметрыАдресногоКлассификатора` | v8:ValueStorage | Параметры адресного классификатора | +| 643 | `ПараметрыБлокировкиРаботыСВнешнимиРесурсами` | v8:ValueStorage | Параметры блокировки работы с внешними ресурсами | +| 644 | `ПараметрыЗапускаИнтерактивнойПроцедурыЗагрузки` | v8:ValueStorage | Параметры запуска интерактивной процедуры загрузки | +| 645 | `ПараметрыИтоговИАгрегатов` | v8:ValueStorage | Параметры итогов и агрегатов | +| 646 | `ПараметрыОбработчиковОбновления` | v8:ValueStorage | Параметры обработчиков обновления | +| 647 | `ПараметрыРезервногоКопирования` | v8:ValueStorage | Параметры резервного копирования | +| 648 | `ПараметрыСверткиИБ` | v8:ValueStorage | Параметры свертки ИБ | +| 649 | `ПараметрыХраненияФайловВИБ` | v8:ValueStorage | Параметры хранения файлов в ИБ | +| 650 | `ПараметрыЦентраМониторинга` | v8:ValueStorage | Параметры центра мониторинга | +| 651 | `ПартионныйУчетВерсии22` | xs:boolean | Партионный учет версии 2.2 | +| 652 | `ПервоеОбновлениеДоступаЗавершилось` | xs:boolean | Первое обновление доступа завершилось | +| 653 | `ПеремещатьТоварыДругихОрганизаций` | xs:boolean | Перемещать товары других организаций | +| 654 | `ПереоцениватьВалютныеСредстваПоДням` | xs:boolean | Переоценивать валютные средства по дням | +| 655 | `ПериодABCКлассификацииНоменклатуры` | cfg:EnumRef.Периодичность | Период ABC классификации номенклатуры | +| 656 | `ПериодABCКлассификацииПартнеров` | cfg:EnumRef.Периодичность | Период ABC классификации партнеров | +| 657 | `ПериодXYZКлассификацииНоменклатуры` | cfg:EnumRef.Периодичность | Период XYZ классификации номенклатуры | +| 658 | `ПериодXYZКлассификацииПартнеров` | cfg:EnumRef.Периодичность | Период XYZ классификации партнеров | +| 659 | `ПериодРасчетаТоварныхОграничений` | cfg:EnumRef.Периодичность | Период расчета товарных ограничений | +| 660 | `ПериодХраненияЗамеров` | xs:decimal | Период хранения замеров | +| 661 | `ПериодХраненияИсторииЗапусковЗаданийОчереди` | xs:decimal | Период хранения истории запусков заданий очереди (часов) | +| 662 | `ПериодичностьВводаСезонныхКоэффициентов` | cfg:EnumRef.Периодичность | Периодичность ввода сезонных коэффициентов | +| 663 | `ПериодичностьДляАнализаНоменклатурыПродаваемойСовместно` | cfg:EnumRef.Периодичность | Периодичность | +| 664 | `ПериодыРезервовТоваровОрганизацийАктуальны` | xs:boolean | Периоды резервов товаров организаций актуальны | +| 665 | `ПисьмаОбменСБанками` | xs:boolean | Письма обмен с банками | +| 666 | `ПовторитьЗагрузкуСообщенияОбменаДаннымиПередЗапуском` | xs:boolean | Повторить загрузку сообщения обмена данными перед запуском | +| 667 | `ПоддержкаРезервногоКопирования` | xs:boolean | Поддержка резервного копирования | +| 668 | `ПодпериодXYZКлассификацииНоменклатуры` | cfg:EnumRef.Периодичность | Подпериод XYZ классификации номенклатуры | +| 669 | `ПодпериодXYZКлассификацииПартнеров` | cfg:EnumRef.Периодичность | Подпериод XYZ классификации партнеров | +| 670 | `ПоказыватьКомандуУстановитьРасширениеМаг1с` | xs:boolean | Показывать команду установить расширение Маг1С | +| 671 | `ПокупкаТоваровОблагаемыхНДСУПокупателя` | xs:boolean | Покупка товаров, облагаемых НДС у покупателя | +| 672 | `ПорядокОформленияНакладныхРасходныхОрдеров` | cfg:EnumRef.ПорядокОформленияНакладныхРасходныхОрдеров | Порядок оформления накладных и расходных ордеров | +| 673 | `ПоследнееОбновлениеДоступа` | v8:ValueStorage | Последнее обновление доступа | +| 674 | `ПредельноеКоличествоЗаписейВРазделеДекларацииПоНДС` | xs:decimal | Предельное количество записей в разделах 8-12 декларации по НДС (с 1 кв. 2015 года) | +| 675 | `ПредлагатьДополнитьДокументыМногооборотнойТарой` | xs:boolean | Предлагать дополнить документы многооборотной тарой | +| 676 | `ПредставлениеОбластиДанных` | xs:string | Представление области данных | +| 677 | `ПрефиксВесовогоШтрихкода` | xs:decimal | Префикс весового штрихкода | +| 678 | `ПрефиксОбластиДанных` | xs:string | Префикс области данных | +| 679 | `ПрефиксПоследнегоАвтономногоРабочегоМеста` | xs:string | Префикс последнего автономного рабочего места | +| 680 | `ПрефиксСервисаДляНовостей` | xs:string | Префикс сервиса для новостей | +| 681 | `ПрефиксУзлаРаспределеннойИнформационнойБазы` | xs:string | Префикс информационной базы | +| 682 | `ПрефиксШтрихкодовУзлаРИБ` | xs:string | Префикс штрихкодов узла РИБ | +| 683 | `ПрефиксШтучногоШтрихкода` | xs:decimal | Префикс штучного штрихкода | +| 684 | `ПриоритетОбновленияВОбластяхДанных` | xs:string | Приоритет обновления в областях данных | +| 685 | `ПровайдерSMS` | cfg:EnumRef.ПровайдерыSMS | Провайдер SMS | +| 686 | `ПроверятьЗаполнениеНомеровГТДПриЗакупкеУПоставщикаПоСхемеТоварыВПути` | xs:boolean | Проверять заполнение номеров ГТД при закупке у поставщика по схеме "товары в пути" | +| 687 | `ПроверятьИспользованиеУдаляемыхОбъектов` | xs:boolean | Проверять использование удаляемых объектов | +| 688 | `ПроверятьЭлектронныеПодписиНаСервере` | xs:boolean | Проверять электронные подписи на сервере | +| 689 | `ПродажаТоваровОблагаемыхНДСУПокупателя` | xs:boolean | Продажа товаров, облагаемых НДС у покупателя | +| 690 | `ПрофильБезопасностиИнформационнойБазы` | — | Профиль безопасности информационной базы | +| 691 | `ПутьКТомуБезУчетаРегиональныхНастроек` | xs:boolean | Путь к тому без учета региональных настроек | +| 692 | `РазмерБлокаПередачиФайла` | xs:decimal | Размер блока передачи файла | +| 693 | `РазрешатьПродажуАлкогольнойПродукцииБезСопоставленияЕГАИС` | xs:boolean | Разрешать продажу алкогольной продукции без сопоставления ЕГАИС | +| 694 | `РазрешенаРаботаСНовостями` | xs:boolean | Разрешена работа с новостями | +| 695 | `РазрешенаРаботаСНовостямиЧерезИнтернет` | xs:boolean | Разрешена работа с новостями через интернет | +| 696 | `РазрешитьВыполнениеДООРегламентнымиЗаданиямиВМоделиСервиса` | xs:boolean | Разрешить выполнение дополнительных отчетов и обработок регламентными заданиями в модели сервиса | +| 697 | `РазрешитьОбособлениеТоваровСверхПотребности` | xs:boolean | Разрешить обособление товаров сверх потребности | +| 698 | `РаспределениеДопРасходовПоВыбывшимТоварам` | xs:boolean | Распределение доп. расходов по выбывшим товарам | +| 699 | `РассчитыватьПредварительнуюСтоимостьРегламентнымЗаданием` | xs:boolean | Рассчитывать предварительную стоимость регламентным заданием | +| 700 | `РасходныеОрдераФормируютсяМенеджером` | xs:boolean | Расходные ордера формируются менеджером | +| 701 | `РегистрационныйНомерПрограммы` | xs:string | Регистрационный номер программы | +| 702 | `РедактироватьАдресаДоставкиТолькоВДиалоге` | xs:boolean | Редактировать адреса доставки только в диалоге | +| 703 | `РежимИспользованияИнформационнойБазы` | cfg:EnumRef.РежимыИспользованияИнформационнойБазы | Режим использования информационной базы | +| 704 | `РежимОтладки` | xs:boolean | Режим отладки | +| 705 | `РежимОчисткиФайлов` | cfg:EnumRef.РежимыОчисткиФайлов | Режим очистки файлов | +| 706 | `РежимРаботыСТестовымКонтуромВЕТИС` | xs:boolean | Режим работы с тестовым контуром ВетИС | +| 707 | `РежимРаботыСТестовымКонтуромИСМП` | xs:boolean | Режим работы с тестовым контуром ИС МП | +| 708 | `РежимФормированияРасходныхОрдеров` | cfg:EnumRef.РежимыФормированияРасходныхОрдеров | Режим формирования расходных ордеров | +| 709 | `СайтСоздан` | xs:boolean | Сайт создан | +| 710 | `СведенияОБлокируемыхОбъектах` | v8:ValueStorage | Сведения о блокируемых объектах | +| 711 | `СведенияОбОбновленииИБ` | v8:ValueStorage | Сведения об обновлении ИБ | +| 712 | `СвойстваСПАРКРиски` | v8:ValueStorage | Свойства 1СПАРК Риски | +| 713 | `СервисПереводаТекста` | cfg:EnumRef.СервисыПереводаТекста | Сервис перевода текста | +| 714 | `СинхронизироватьДанныеСПриложениемВИнтернетеПриЗавершенииРаботыПрограммы` | xs:boolean | Синхронизировать данные с приложением в Интернете при завершении работы программы | +| 715 | `СинхронизироватьДанныеСПриложениемВИнтернетеПриНачалеРаботыПрограммы` | xs:boolean | Синхронизировать данные с приложением в Интернете при начале работы программы | +| 716 | `СинхронизироватьФайлы` | xs:boolean | Синхронизировать файлы с облачными сервисами | +| 717 | `СоздаватьКонтрагентовАвтоматическиБЭД` | xs:boolean | Создавать контрагентов автоматически БЭД | +| 718 | `СоздаватьПодкаталогиСИменамиВладельцев` | xs:boolean | Создавать подкаталоги с именами владельцев | +| 719 | `СоздаватьЭлектронныеПодписиНаСервере` | xs:boolean | Создавать электронные подписи на сервере | +| 720 | `СообщениеБлокировкиПриОбновленииКонфигурации` | xs:string | Сообщение блокировки при обновлении конфигурации | +| 721 | `СообщениеОбменаДаннымиИзГлавногоУзла` | v8:ValueStorage | Сообщение обмена данными из главного узла | +| 722 | `СписокЗапрещенныхРасширений` | xs:string | Список запрещенных расширений | +| 723 | `СписокЗапрещенныхРасширенийОбластиДанных` | xs:string | Список запрещенных расширений области данных | +| 724 | `СписокРасширенийТекстовыхФайлов` | xs:string | Список расширений текстовых файлов | +| 725 | `СписокРасширенийФайловOpenDocument` | xs:string | Список расширений файлов OpenDocument | +| 726 | `СписокРасширенийФайловOpenDocumentОбластиДанных` | xs:string | Список расширений файлов OpenDocument | +| 727 | `СпособХраненияФайлов` | xs:string | Способ хранения файлов | +| 728 | `СрокВыставленияСчетаФактуры` | xs:decimal | Срок выставления счета-фактуры согласно п.3 ст. 168 НК РФ | +| 729 | `СрокХраненияИспользованныхКодовМаркировки` | xs:decimal | Срок хранения использованных кодов маркировки в пуле, дней | +| 730 | `СтатусОбновленияКонфигурации` | v8:ValueStorage | Статус обновления конфигурации | +| 731 | `СтоимостьТоваровПриОценкеРентабельностиПродажи` | cfg:EnumRef.СтоимостьТоваровПриОценкеРентабельностиПродажи | Стоимость товаров при оценке рентабельности продажи | +| 732 | `ТипыИнцидентовЦККАктуальны` | xs:boolean | Типы инцидентов ЦКК актуальны | +| 733 | `УдалитьВестиУчетТабачнойПродукцииМОТП` | xs:boolean | (не используется) Вести учет табачной продукции МОТП | +| 734 | `УдалитьДатаОбязательнойМаркировкиОбувиИСМП` | xs:dateTime | (не используется) Дата ввода обязательной маркировки обуви ИС МП | +| 735 | `УдалитьДатаОбязательнойМаркировкиТабачнойПродукцииМОТП` | xs:dateTime | (не используется) Дата ввода обязательной маркировки табачной продукции | +| 736 | `УдалитьИспользоватьНесколькоОрганизацийБЭД` | xs:boolean | (не используется) Использовать несколько организаций БЭД | +| 737 | `УдалитьКонтролироватьСтатусыКодовМаркировкиВРозницеИСМП` | xs:boolean | Контролировать статусы кодов маркировки в ИС МП при розничных продажах | +| 738 | `УдалитьКонтролироватьСтатусыКодовМаркировкиВРозницеМОТП` | xs:boolean | (не используется) Контролировать статусы кодов маркировки при розничных продажах | +| 739 | `УдалитьКонтролироватьСтатусыКодовМаркировкиМОТП` | xs:boolean | (не используется) Контролировать статусы кодов маркировки МОТП | +| 740 | `УдалитьЛогинДоступаКСервисуMorpher` | xs:string | (Не используется) удалить логин доступа к сервису morpher | +| 741 | `УправлениеПредприятием` | xs:boolean | Управление предприятием | +| 742 | `УправлениеТорговлей` | xs:boolean | Управление торговлей | +| 743 | `УчитыватьПравилаВнутреннегоТовародвиженияПриABCКлассификацииНоменклатуры` | xs:boolean | Учитывать правила внутреннего товародвижения при ABC-классификации номенклатуры | +| 744 | `УчитыватьПравилаВнутреннегоТовародвиженияПриXYZКлассификацииНоменклатуры` | xs:boolean | Учитывать правила внутреннего товародвижения при XYZ-классификации номенклатуры | +| 745 | `УчитыватьСебестоимостьТоваровПоНазначениям` | xs:boolean | Обособленный учет себестоимости по назначениям | +| 746 | `ФайлКлассификаторов` | xs:string | Файл классификаторов | +| 747 | `ФиксироватьПервичныйИнтерес` | xs:boolean | Фиксировать первичный интерес | +| 748 | `ФормироватьВидыЗапасовПоГруппамФинансовогоУчета` | xs:boolean | Формировать виды запасов по группам финансового учета | +| 749 | `ФормироватьВидыЗапасовПоПодразделениямМенеджерам` | xs:boolean | Формировать виды запасов по подразделениям или менеджерам | +| 750 | `ФормироватьВидыЗапасовПоПоставщикам` | xs:boolean | Формировать виды запасов по поставщикам | +| 751 | `ФормироватьВидыЗапасовПоСделкам` | xs:boolean | Формировать виды запасов по сделкам | +| 752 | `ФормироватьОтчетностьПоНДС` | xs:boolean | Формировать отчетность по НДС | +| 753 | `ФормироватьУправленческийБаланс` | xs:boolean | Использовать управленческий баланс | +| 754 | `ФормироватьФинансовыйРезультат` | xs:boolean | Формировать финансовый результат | +| 755 | `ХранитьФайлыВТомахНаДиске` | xs:boolean | Хранить файлы в томах на диске | +| 756 | `ЧасовойПоясОбластиДанных` | xs:string | Часовой пояс области данных | +| 757 | `ШаблонЭтикеткиДляДоставки` | cfg:CatalogRef.ШаблоныЭтикетокИЦенников | Шаблон этикетки для доставки | +| 758 | `ШаблонЭтикеткиУпаковочногоЛиста` | cfg:CatalogRef.ШаблоныЭтикетокИЦенников | Шаблон этикетки упаковочного листа | +| 759 | `ЭтоАвтономноеРабочееМесто` | xs:boolean | Это автономное рабочее место | +| 760 | `сфпCLONServerIP` | xs:string | IP- адрес сервера CLON | +| 761 | `сфпCLONServerLogin` | xs:string | Имя пользователя CLON | +| 762 | `сфпCLONServerPassword` | xs:string | Пароль пользователя CLON | +| 763 | `сфпCLONServerPort` | xs:decimal | Порт сервера CLON | +| 764 | `сфпCLONType` | cfg:EnumRef.сфпCLONType | Тип CLON | +| 765 | `сфпВариантПодключенияСервераВзаимодействия` | xs:string | Вариант подключения Сервера взаимодействия | +| 766 | `сфпВнутренниеНомераИнформационнойБазы` | xs:string | Внутренние телефонные номера Информационной базы | +| 767 | `сфпДатаИсторииЗвонков` | xs:dateTime | Дата истории звонков | +| 768 | `сфпДатаРечевойАналитики` | xs:dateTime | Дата последнего звонка Речевой аналитики | +| 769 | `сфпДействиеПриОшибкеЗагрузкиИсторииЗвонков` | cfg:EnumRef.сфпДействияПриОшибкеЗагрузкиИсторииЗвонков | Действие при ошибке загрузки истории звонков | +| 770 | `сфпДополнительнаяИнформацияКонтактов` | xs:string | Дополнительная информация контактов (СофтФон) | +| 771 | `сфпЖурналЗвонковОбновлен` | xs:boolean | Журнал звонков обновлен | +| 772 | `сфпЗагружатьВнутренниеЗвонки` | xs:boolean | Загружать внутренние звонки | +| 773 | `сфпИдентификаторЖурналаЗвонковСистемыВзаимодействия` | xs:string | Идентификатор журнала звонков системы взаимодействия | +| 774 | `сфпИдентификаторМаршрутизации` | xs:string | Идентификатор таблицы маршрутизации | +| 775 | `сфпИмяСервера` | xs:string | Имя сервера СофтФон | +| 776 | `сфпИспользоватьCLON` | xs:boolean | Использовать систему записи телефонных переговоров CLON | +| 777 | `сфпИспользоватьCoMagic` | xs:boolean | Использовать коллтрекинг | +| 778 | `сфпИспользоватьSMS` | xs:boolean | Использовать отправку СМС средствами сервера СофтФон | +| 779 | `сфпИспользоватьВнутреннийНомерИзКИПользователя` | xs:boolean | Использовать внутренний номер из контактной информации пользователя | +| 780 | `сфпИспользоватьЗаписьПереговоров` | xs:boolean | Использовать запись переговоров | +| 781 | `сфпИспользоватьИсториюЗвонков` | xs:boolean | Использовать историю звонков | +| 782 | `сфпИспользоватьМаршрутизацию` | xs:boolean | Использовать маршрутизацию средствами сервера СофтФон | +| 783 | `сфпИспользоватьМобильнуюТелефонию` | xs:boolean | Использовать мобильную телефонию | +| 784 | `сфпИспользоватьОблачнуюТелефонию` | xs:boolean | Использовать облачную телефонию | +| 785 | `сфпИспользоватьОчисткуСообщенийЖурналаЗвонков` | xs:boolean | Использовать очистку сообщений журнала звонков | +| 786 | `сфпИспользоватьРегламентноеЗаданиеИсторииЗвонков` | xs:boolean | Использовать регламентное задание истории звонков | +| 787 | `сфпИспользоватьРегламентноеЗаданиеТелефонныхКниг` | xs:boolean | Использовать регламентное задание телефонных книг | +| 788 | `сфпИспользоватьРечевуюАналитику` | xs:boolean | Использовать речевую аналитику | +| 789 | `сфпИспользоватьСофтФон` | xs:boolean | Использовать СофтФон | +| 790 | `сфпИспользоватьСпрут7` | xs:boolean | Использовать систему записи телефонных переговоров Спрут-7 | +| 791 | `сфпИспользуемаяАТС` | cfg:EnumRef.сфпДоступныеАТС | Используемая АТС | +| 792 | `сфпИспользуемаяАТСДополнительно` | xs:string | Используемая АТС Дополнительно | +| 793 | `сфпИспользуемаяВерсияСофтФон` | cfg:EnumRef.сфпВерсииСофтФон | Используемая версия СофтФон | +| 794 | `сфпКодГорода` | xs:string | Код города (812) | +| 795 | `сфпКодСтраны` | xs:string | Код страны (+7) | +| 796 | `сфпКоличествоВзаимодействийДляМаршрутизации` | xs:decimal | Количество входящих звонков клиента для маршрутизации | +| 797 | `сфпЛогинCoMagic` | xs:string | Логин CoMagic | +| 798 | `сфпМаксимальнаяДлинаВнутреннихНомеров` | xs:decimal | Максимальная длина внутренних номеров | +| 799 | `сфпМинимальнаяДлинаВнутреннихНомеров` | xs:decimal | Минимальная длина внутренних номеров | +| 800 | `сфпНастройкиТелефонии` | v8:ValueStorage | Настройки телефонии | +| 801 | `сфпНеЗагружатьЗвонкиДлительностьюМенее` | xs:decimal | Не загружать звонки длительностью менее | +| 802 | `сфпОбщиеНастройкиТелефонии` | xs:string | Общие настройки телефонии | +| 803 | `сфпОграничениеНаПросмотрТелефонныхЗвонков` | xs:boolean | Использовать ограничение на просмотр телефонных звонков других пользователей | +| 804 | `сфпОператорКоллтрекинга` | cfg:EnumRef.CRM_CallTrakingСценарии | Оператор коллтрекинга | +| 805 | `сфпОповещатьОПропущенныхЗвонках` | xs:boolean | Оповещать о пропущенных звонках | +| 806 | `сфпПарольCoMagic` | xs:string | Пароль CoMagic | +| 807 | `сфпПланНумерацииАвтоопределениеБизнесРегиона` | xs:boolean | Определять Бизнес-регион автоматически | +| 808 | `сфпПланНумерацииАдресДетализацииНомера` | xs:string | Интернет адрес детализации номера | +| 809 | `сфпПланНумерацииАдресРеестра` | xs:string | Сетевой или интернет адрес реестра нумерации | +| 810 | `сфпПланНумерацииФайлыРеестра` | xs:string | Файлы реестра нумерации | +| 811 | `сфпПользовательДляОповещений` | cfg:CatalogRef.Пользователи | Пользователь для оповещений | +| 812 | `сфпПорт` | xs:string | Порт сервера СофтФон (13528) | +| 813 | `сфпПоследниеЦифрыТелефонногоНомера` | xs:decimal | Последние цифры телефонного номера | +| 814 | `сфпПрефиксВыходаВГород` | xs:string | Префикс выхода в город (9) | +| 815 | `сфпПрефиксВыходаВМежгород` | xs:string | Префикс выхода в межгород (8) | +| 816 | `сфпПрефиксВыходаНаМеждународную` | xs:string | Префикс выхода на международную линию (10) | +| 817 | `сфпСрокЖизниСообщенияЖурналаЗвонков` | xs:decimal | Срок жизни сообщения журнала звонков | +| 818 | `сфпСтрокаПодключенияИстории` | xs:string | Строка подключения к истории звонков | + +## 2. Вероятные переименования (однозначная эвристика) + +Пара **(старое имя в crm3-dev, новое имя в crm3-26-test)** попадает сюда, только если среди констант, **отсутствующих в другой базе по имени**, ровно одна пара совпадает по **типу** и по **нормализованному синониму** или по **типу** и **нормализованному комментарию** (комментарий не короче 12 символов после нормализации). + +| № | Имя crm3-dev | Имя crm3-26-test | Тип | Синоним (dev) | +|---|---|---|---|---| +| 1 | `CRM_СостояниеЛидаСозданоПоЗвонку` | `УдалитьCRM_СостояниеЛидаСозданоПоЗвонку` | cfg:CatalogRef.CRM_СостоянияЛидов | Состояние заявки, созданной по звонку | +| 2 | `ИспользоватьАктыРасхожденийПослеОтгрузкиПоРеализациям` | `ИспользоватьАктыРасхожденийПослеОтгрузки` | xs:boolean | Использовать акты расхождений после реализаций клиентам | +| 3 | `ИспользоватьАктыРасхожденийПослеПриемкиПоПриобретениям` | `ИспользоватьАктыРасхожденийПослеПриемки` | xs:boolean | Использовать акты расхождений после поступлений товаров от поставщика | +| 4 | `ИспользоватьИнтеграциюСЯндексКассой` | `ИспользоватьОнлайнОплаты` | xs:boolean | Использовать интеграцию с ЮKassa | + +### 2.1 Кандидаты на переименование по нечёткому совпадению синонима + +Учитываются только пары, где после **точного** сопоставления (разд. 2) имя по-прежнему есть только с одной стороны. Коэффициент — `SequenceMatcher` по строкам синонимов после `norm_meta`. + +| № | Имя crm3-dev | Имя crm3-26-test | Тип | Коэфф. | Синоним (dev) | Синоним (test) | +|---|---|---|---|---|---|---| +| 1 | `НеПоказыватьРекомендацииБизнесСеть` | `ПоказыватьРекомендацииБизнесСеть` | xs:boolean | 0.959 | Не показывать рекомендации бизнес сеть | Показывать рекомендации бизнес сеть | +| 2 | `ПредопределенныеШаблоныСообщений` | `ПредопределенныеШаблоныСообщенийСБП` | v8:ValueStorage | 0.944 | Предопределенные шаблоны сообщений | Предопределенные шаблоны сообщений СБП | +| 3 | `ИспользоватьСтатусыВнутреннихПотребленийТоваров` | `ИспользоватьСтатусыВнутреннихПотреблений` | xs:boolean | 0.915 | Использовать статусы внутренних потреблений товаров | Использовать статусы внутренних потреблений | + +## 3. Константы только в crm3-dev (отсутствуют в crm3-26-test по имени) + +| № | Имя | Синоним | Тип | Комментарий / пояснение | +|---|---|---|---|---| +| 1 | `CRM_ЗапрещатьРедактироватьСостоявшиесяСобытия` | Запрещать редактировать состоявшиеся события | xs:boolean | — | +| 2 | `CRM_ИспользоватьВерсионированиеФайлов` | Использовать версионирование файлов | xs:boolean | — | +| 3 | `CRM_ИспользоватьИнтеграциюQlikSense` | Использовать Qlik Sense | xs:boolean | — | +| 4 | `CRM_ИспользоватьТиповойМеханизмСделокСКлиентами` | Использовать типовой механизм сделок с клиентами | xs:boolean | — | +| 5 | `CRM_НеПервыйЗапускИБ` | Не первый запуск ИБ (CRM) | xs:boolean | — | +| 6 | `CRM_ПараметрыКонтроляЗаполненностиРеквизитовОбъектов` | Параметры контроля заполненности реквизитов объектов | v8:ValueStorage | — | +| 7 | `CRM_ПериодВыводаНезавершенныхОповещений` | Период вывода незавершенных оповещений | cfg:EnumRef.Периодичность | — | +| 8 | `CRM_ПериодОповещенияОПросроченныхСобытиях` | Период оповещения о просроченных событиях | cfg:EnumRef.Периодичность | — | +| 9 | `CRM_ПривязыватьПотенциалКлиентаКНоменклатурнымГруппам` | Привязывать потенциал клиента к номенклатурным группам | xs:boolean | — | +| 10 | `CRM_ПутьКВнешнейОбработкеЗащитыМоб` | Путь к внешней обработке защиты (мобильный клиент) | xs:string | Служебная константа | +| 11 | `CRM_СинхронизироватьКалендарьСКалендаремGoogle` | Использовать синхронизацию с календарями Google | xs:boolean | — | +| 12 | `CRM_УчетнаяЗаписьПолученияОповещенийGAPI` | Учетная запись получения оповещений GAPI | cfg:CatalogRef.УчетныеЗаписиЭлектроннойПочты | — | +| 13 | `mmИспользоватьМобильныйМонитор` | ММ: Использовать мобильный монитор показателей | xs:boolean | Использовать мобильный монитор показателей | +| 14 | `rh_ВнутреннийАдресМенеджераСервиса` | Rh внутренний адрес менеджера сервиса | xs:string | — | +| 15 | `rh_КонечнаяТочкаМенеджераСервиса` | Rh конечная точка менеджера сервиса | cfg:ExchangePlanRef.ОбменСообщениями | — | +| 16 | `rh_МеханизмСогласованияКарточекКлиентов` | Механизм согласования карточек клиентов | xs:boolean | — | +| 17 | `rh_СкладСебестоимости` | Склад себестоимости по-умолчанию | cfg:CatalogRef.Склады | — | +| 18 | `tega_ОсновнаяНастройкаВыгрузки` | Tega основная настройка выгрузки | cfg:CatalogRef.tega_НастройкиВыгрузки | — | +| 19 | `tega_ОсновнаяНастройкаВыгрузкиЦен` | Tega основная настройка выгрузки цен | cfg:CatalogRef.tega_НастройкиВыгрузки | — | +| 20 | `АдресатыПолученияОтчетаПоЖурналуРегистрации` | Адресаты получения отчета по журналу регистрации | xs:string | — | +| 21 | `АлгоритмПодписи` | Алгоритм подписи | xs:string | — | +| 22 | `АлгоритмХеширования` | Алгоритм хеширования | xs:string | — | +| 23 | `АлгоритмШифрования` | Алгоритм шифрования | xs:string | — | +| 24 | `бфWSDLСсылка` | WSDL-ссылка для доступа к сервису 1С-Бухфон (служебная) | xs:string | — | +| 25 | `бфИдентификаторПартнера` | Идентификатор партнера БухФон | xs:string | — | +| 26 | `бфИспользоватьБухФон` | Использовать 1С-Бухфон | xs:boolean | — | +| 27 | `бфЛогин` | Логин в учетной системе 1С-Бухфон | xs:string | — | +| 28 | `бфПароль` | Пароль в учетной системы 1С-Бухфон | xs:string | — | +| 29 | `бфШаблонУведомленияДляПользователейБухфон` | Шаблон уведомления для пользователей бухфон | cfg:CatalogRef.CRM_ШаблоныРассылки | — | +| 30 | `бфШаблонУведомленияДляСпециалистовБухфон` | Шаблон уведомления для специалистов бухфон | cfg:CatalogRef.CRM_ШаблоныРассылки | — | +| 31 | `ВалютаДоллары` | Валюта доллары | cfg:CatalogRef.Валюты | — | +| 32 | `ВидКонтроляТоваровОрганизаций` | Вид контроля товаров организаций | cfg:EnumRef.ВидыКонтроляТоваровОрганизаций | — | +| 33 | `ВыполняетсяРаспределениеПлановыхРасчетов` | Выполняется распределение плановых расчетов | xs:boolean | — | +| 34 | `ГруппаЛаеннек` | Группа лаеннек | cfg:CatalogRef.Номенклатура | — | +| 35 | `ДатаЗагрузкиКлассификатораОшибокКриптографии` | Дата загрузки классификатора ошибок криптографии | xs:dateTime | — | +| 36 | `ДатаНачалаПримененияПостановления1137` | Дата начала применения постановления Правительства РФ №1137 | xs:dateTime | — | +| 37 | `ДатаНачалаУпрощенногоПартионногоУчета` | Дата начала упрощенного партионного учета | xs:dateTime | — | +| 38 | `ДнейДоСкрытияПерсональныхДанныхСубъектов` | Дней до скрытия персональных данных субъектов | xs:decimal | — | +| 39 | `ДобавлятьИндивидуальныеУпаковкиПриСозданииНоменклатуры` | Добавлять индивидуальные упаковки при создании номенклатуры | xs:boolean | — | +| 40 | `ДобавлятьИндивидуальныеХарактеристикиПриСозданииНоменклатуры` | Добавлять индивидуальные характеристики при создании номенклатуры | xs:boolean | — | +| 41 | `ДобавлятьСертификатыНоменклатурыПриСозданииНоменклатуры` | Добавлять сертификаты номенклатуры при создании номенклатуры | xs:boolean | — | +| 42 | `ИмяСлужебногоПользователяМенеджераСервиса` | Имя служебного пользователя менеджера сервиса | xs:string | — | +| 43 | `ИспользоватьАктыОРасхожденияхПриПоступленииТоваров` | Использовать акты о расхождениях при поступлении товаров | xs:boolean | — | +| 44 | `ИспользоватьАктыПриемкиТоваров` | Использовать акты приемки товаров | xs:boolean | — | +| 45 | `ИспользоватьАктыРасхожденийПослеОтгрузкиПоВозвратам` | Использовать акты расхождений после возвратов поставщикам | xs:boolean | — | +| 46 | `ИспользоватьАктыРасхожденийПослеОтгрузкиПоОтгрузкамТоваровСХранения` | Использовать акты расхождений после отгрузки по отгрузкам товаров с хранения | xs:boolean | — | +| 47 | `ИспользоватьАктыРасхожденийПослеОтгрузкиПоПередачамХранителю` | Использовать акты расхождений после отгрузки по передачам хранителю | xs:boolean | — | +| 48 | `ИспользоватьАктыРасхожденийПослеПриемкиПоВозвратам` | Использовать акты расхождений после возвратов от клиентов | xs:boolean | — | +| 49 | `ИспользоватьАктыРасхожденийПослеПриемкиПоПоступлениямТоваровОтХранителя` | Использовать акты расхождений после поступлений товаров от хранителя | xs:boolean | — | +| 50 | `ИспользоватьАктыРасхожденийПослеПриемкиПоПриемкамТоваровНаХранение` | Использовать акты расхождений после приемки по приемкам товаров на хранение | xs:boolean | — | +| 51 | `ИспользоватьИмпортныеЗакупкиНеотфактурованнойПоставки` | Использовать импортные закупки неотфактурованной поставки | xs:boolean | — | +| 52 | `ИспользоватьЛизинг` | Использовать лизинг | xs:boolean | — | +| 53 | `ИспользоватьНаложенныеПлатежиСервисДоставки` | Использовать наложенные платежи | xs:boolean | — | +| 54 | `ИспользоватьОбщиеДополнительныеЗначения` | Использовать общие дополнительные значения | xs:boolean | — | +| 55 | `ИспользоватьОбщиеДополнительныеРеквизитыИСведения` | Использовать общие дополнительные реквизиты и сведения | xs:boolean | — | +| 56 | `ИспользоватьПрисоединенныеФайлыИнтегрированнойСистемы` | Использовать присоединенные файлы интегрированной системы | xs:boolean | — | +| 57 | `ИспользоватьРаздельныйУчетПоНалогообложению` | Использовать раздельный учет по налогообложению | xs:boolean | — | +| 58 | `ИспользоватьРасширеннуюФормуПодбораКоличестваИВариантовОбеспечения` | Использовать расширенную форму подбора количества и вариантов обеспечения | xs:boolean | — | +| 59 | `ИспользоватьСогласованиеКоммерческихПредложений` | Использовать согласование коммерческих предложений | xs:boolean | — | +| 60 | `ИспользоватьСтатусыВозвратовТоваровПоставщикам` | Использовать статусы возвратов товаров поставщикам | xs:boolean | — | +| 61 | `ИспользоватьТМЦВЭксплуатации` | Использовать ТМЦ в эксплуатации | xs:boolean | — | +| 62 | `КодДоступаКлючаЗащиты` | Код доступа ключа защиты | xs:string | Код доступа ключа защиты | +| 63 | `КонтекстАвторизации` | Контекст авторизации | cfg:EnumRef.УдалитьКонтекстыРаботыСЭД | — | +| 64 | `КонтекстКриптографии` | Контекст криптографии | cfg:EnumRef.УдалитьКонтекстыРаботыСЭД | — | +| 65 | `КоэффициентПересчетаВЕдиницыОбъема` | Коэффициент пересчета в единицы объема | xs:decimal | — | +| 66 | `КоэффициентПересчетаВКубическиеМетры` | Коэффициент пересчета в кубические метры | xs:decimal | — | +| 67 | `КоэффициентПересчетаВТонны` | Коэффициент пересчета в тонны | xs:decimal | — | +| 68 | `ликИспользоватьЛИК` | Использовать систему ЛИК:Бизнес | xs:boolean | — | +| 69 | `ликЛогин` | Ключ в системе ЛИК:Бизнес | xs:string | — | +| 70 | `ликПароль` | Пароль в системе ЛИК:Бизнес | xs:string | — | +| 71 | `ЛогинДляОтправкиSMS` | Логин для отправки SMS | xs:string | — | +| 72 | `НастройкиВыполненияРегламентныхЗаданий` | Настройки выполнения регламентных заданий | v8:ValueStorage | Только для файловой ИБ | +| 73 | `ОсновнойВариантКлассификацииЗадолженности` | Основной вариант классификации задолженности | cfg:CatalogRef.ВариантыКлассификацииЗадолженности | — | +| 74 | `ОсновнойСпособОбеспеченияПотребностей` | Основной способ обеспечения потребностей | cfg:CatalogRef.СпособыОбеспеченияПотребностей | — | +| 75 | `ОтображатьВнеоборотныеАктивы2_2` | Отображать команды для ведения учета внеоборотных активов версии 2.2 | xs:boolean | — | +| 76 | `ПараметрыВариантовОтчетов` | Параметры вариантов отчетов | v8:ValueStorage | Таблица: ИмяФункциональнойОпции, Отчет, ПредопределенныйВариант | +| 77 | `ПараметрыДополнительныхРеквизитовИСведений` | Параметры дополнительных реквизитов и сведений | v8:ValueStorage | — | +| 78 | `ПараметрыОграниченияДоступа` | Параметры ограничения доступа | v8:ValueStorage | — | +| 79 | `ПараметрыРаботыПользователей` | Параметры работы пользователей | v8:ValueStorage | — | +| 80 | `ПараметрыСлужебныхСобытий` | Параметры служебных событий | v8:ValueStorage | — | +| 81 | `ПарольДляДоговоров` | Пароль для договоров | xs:string | — | +| 82 | `ПарольДляОтправкиSMS` | Пароль для отправки SMS | xs:string | — | +| 83 | `ПарольСлужебногоПользователяМенеджераСервиса` | Пароль служебного пользователя менеджера сервиса | xs:string | — | +| 84 | `ПоддержкаПлатежейВСоответствииС275ФЗ` | Поддержка платежей в соответствии с 275-ФЗ | xs:boolean | — | +| 85 | `ПодключениеКСервисуИППССервера` | Устанавливать подключение с сервера 1С:Предприятия | xs:boolean | — | +| 86 | `ПодставлятьЗначенияПоУмолчаниюВместоПустых` | Подставлять значения по умолчанию вместо пустых | xs:boolean | — | +| 87 | `ПоказыватьПодсказкиПокупателейБизнесСеть` | Показывать подсказки покупателей 1С:Бизнес-сеть | xs:boolean | Признак включения отображений подсказок покупателей в сервисе 1С:Бизнес-сеть | +| 88 | `ПоказыватьПодсказкиПоставщиковБизнесСеть` | Показывать подсказки поставщиков 1С:Бизнес-сеть | xs:boolean | Признак включения отображений подсказок поставщиков в сервисе 1С:Бизнес-сеть | +| 89 | `ПорядокЗачетаДокументовПоДатеОперации` | Порядок зачета документов по дате операции | xs:decimal | — | +| 90 | `ПровайдерЭП` | Провайдер ЭП | xs:string | — | +| 91 | `Ра_БлокировкаЗаказаКлиента` | Блокировка заказа клиента | xs:boolean | — | +| 92 | `РазделыОписанияИзмененийСистемы` | Разделы описания изменений системы | v8:ValueStorage | — | +| 93 | `РазрешитьВыборВерсииФФДПриПечатиЧеков` | Разрешить печать чеков по версии ФФД 1.0.5 для оборудования с ФФД 1.0 | xs:boolean | — | +| 94 | `РаспределятьПлановыеРасчетыФоновымЗаданием` | Распределять плановые расчеты фоновым заданием | xs:boolean | — | +| 95 | `РаспределятьФактическиеРасчетыФоновымЗаданием` | Распределять фактические расчеты фоновым заданием | xs:boolean | — | +| 96 | `РегистрироватьШтрихкодПриСозданииНоменклатуры` | Регистрировать штрихкод при создании номенклатуры | xs:boolean | — | +| 97 | `СерверЛицензирования` | Сервер лицензирования | xs:string | Адрес сервера лицензирования | +| 98 | `смсИмяПользователя` | Имя пользователя SMS4B | xs:string | Имя пользователя для подключения к серверу работы с сообщениями | +| 99 | `смсИспользоватьСМС` | Использовать SMS | xs:boolean | Дает возможность использовать модуль для отправки SMS | +| 100 | `смсПарольПользователя` | Пароль пользователя SMS4B | xs:string | Пароль пользователя для подключения к серверу работы с сообщениями | +| 101 | `СрокХраненияПакетаЭД` | Срок хранения пакета ЭД | xs:decimal | Количество дней, по истечению которых, обработанный пакет эд будет помечен на удаление регламентным заданием | +| 102 | `СтатусыОбъектовПомощникаЗаполненияНастроекИСправочников` | Статусы объектов помощника заполнения настроек и справочников | v8:ValueStorage | — | +| 103 | `сфпЗапретитьИзменениеДлительностиЗвонка` | Запретить изменение длительности телефонного разговора | xs:boolean | Запретить изменение длительности телефонного разговора | +| 104 | `ТаймаутПодключенияКСервисуИнтернетПоддержки` | Таймаут подключения к сервису интернет поддержки | xs:decimal | Таймаут подключения к сервису интернет поддержки (в секундах) | +| 105 | `ТипПровайдераЭП` | Тип провайдера ЭП | xs:decimal | — | +| 106 | `УдалитьCRM_ПлановаяЧастотаКонтактовA` | (не используется) Плановая частота контактов в группе A | xs:decimal | — | +| 107 | `УдалитьCRM_ПлановаяЧастотаКонтактовB` | (не используется) Плановая частота контактов в группе B | xs:decimal | — | +| 108 | `УдалитьCRM_ПлановаяЧастотаКонтактовC` | (не используется) Плановая частота контактов в группе C | xs:decimal | — | +| 109 | `УдалитьCRM_ПлановаяЧастотаКонтактовНеКлассифицированых` | (не используется) Плановая частота неклассифицированных контактов | xs:decimal | — | +| 110 | `УдалитьАрхивироватьЧекиККМПриЗакрытииКассовойСмены` | Архивировать чеки ККМ при закрытии кассовой смены | xs:boolean | — | +| 111 | `УдалитьВыполнятьРасчетТоварныхОграниченийПоКоличествуПродаж` | (не используется) Удалить выполнять расчет товарных ограничений по количеству продаж | xs:boolean | — | +| 112 | `УдалитьИспользоватьВзаимодействия` | Удалить использовать взаимодействия | xs:boolean | — | +| 113 | `УдалитьИспользоватьНДС0` | (не используется) Использовать НДС 0% | xs:boolean | — | +| 114 | `УдалитьИспользоватьОбменССайтами` | (не используется) Использовать обмен с сайтами | xs:boolean | Флаг для одноименной функциональной опции | +| 115 | `УдалитьИспользоватьПродажиНаЭкспорт` | (не используется) Использовать продажи на экспорт | xs:boolean | — | +| 116 | `УдалитьИспользоватьРубрикаторБизнесСеть` | (не используется) Использовать рубрикатор 1С:Бизнес-сеть | xs:boolean | — | +| 117 | `УдалитьИспользоватьСтатусыЗаказовКлиентов` | (не используется) Использовать статусы заказов клиентов | xs:boolean | — | +| 118 | `УдалитьИспользоватьСтатусыЗаявокНаВозврат` | (не используется) Использовать статусы заявок на возврат | xs:boolean | — | +| 119 | `УдалитьКонтролироватьТоварыОрганизацийПриОтменеПриходов` | (не используется) Контролировать товары организаций при отмене приходов | xs:boolean | — | +| 120 | `УдалитьНеПоказыватьПодсказкиПокупателейБизнесСеть` | Удалить не показывать подсказки покупателей бизнес сеть | xs:boolean | — | +| 121 | `УдалитьНеПоказыватьПодсказкиПоставщиковБизнесСеть` | Удалить не показывать подсказки поставщиков бизнес сеть | xs:boolean | — | +| 122 | `УдалитьПлановыйВидЦены` | (не используется) Плановый вид цены | cfg:CatalogRef.ВидыЦен | — | +| 123 | `УдалитьПоказыватьКомандуДополнительныеПечатныеФормы` | Удалить показывать команду дополнительные печатные формы | xs:boolean | Переназначить ФО.ИспользоватьДополнительныеПечатныеФормы на эту константу после окончательного перевода команд печати на версию 2.1.4 | +| 124 | `УдалитьПорядокОформленияВыкупаПриСписанииТоваров` | (не используется) Порядок оформления выкупа при списании товаров | cfg:EnumRef.НастройкиОформленияВыкупаПриСписанииТоваров | Настройка показывает, в какой момент необходимо оформить выкуп при передаче в производство или при фактическом потреблении. | +| 125 | `УдалитьРаспределятьНДС` | (не используется) Распределять НДС | xs:boolean | — | +| 126 | `УдалитьТипХраненияФайлов` | Удалить тип хранения файлов | cfg:EnumRef.ТипыХраненияФайлов | Удалено: Глобальная настройка - где хранятся файлы - в базе как ХранилищеЗначения или в каталоге на диске | +| 127 | `УдалитьУчитыватьПравилаВнутреннегоТовародвиженияПриРасчетеТоварныхОграничений` | (не используется) Удалить учитывать правила внутреннего товародвижения при расчете товарных ограничений | xs:boolean | — | +| 128 | `ФиксироватьПретензииКлиентов` | Фиксировать претензии клиентов | xs:boolean | — | + +## 4. Константы только в crm3-26-test (новые имена) + +| № | Имя | Синоним | Тип | Комментарий / пояснение | +|---|---|---|---|---| +| 1 | `CRM_АвторРассылокПоПраздникам` | Автор рассылок по праздникам | cfg:CatalogRef.Пользователи | — | +| 2 | `CRM_БазоваяВерсия` | Базовая версия (CRM) | xs:boolean | — | +| 3 | `CRM_ВерсияСтраницыПриветствия` | CRM версия страницы приветствия | xs:decimal | — | +| 4 | `CRM_ДелатьРассылкиПоПраздникам` | Делать рассылки по праздникам | xs:boolean | — | +| 5 | `CRM_ДокументыДоходовИРасходовПроектов` | Документы доходов и расходов проектов (CRM) | v8:ValueStorage | — | +| 6 | `CRM_ЗапретитьПечатьСчетаИзИнтереса` | Запретить печать счета из интереса | xs:boolean | — | +| 7 | `CRM_ИскатьДублиТолькоПоПолномуСовпадению` | Искать дубли только по полному совпадению | xs:boolean | — | +| 8 | `CRM_ИспользоватьВариантыОтветов` | Использовать варианты ответов | xs:boolean | — | +| 9 | `CRM_ИспользоватьОбменB2BПортал` | Использовать обмен с B2B порталом | xs:boolean | — | +| 10 | `CRM_ИспользоватьОповещенияМессенджер` | Использовать оповещения через мессенджер | xs:boolean | — | +| 11 | `CRM_ИспользоватьПланированиеПродаж` | Использовать планирование продаж (бета-версия) | xs:boolean | — | +| 12 | `CRM_ИспользоватьПотенциальныхКлиентов` | Использовать потенциальных клиентов | xs:boolean | — | +| 13 | `CRM_ИспользоватьПотокиДоставкиЭлектроннойПочты` | Использовать потоки доставки электронной почты | xs:boolean | — | +| 14 | `CRM_ИспользоватьСервисыЯзыковыхМоделей` | Использовать сервисы языковых моделей | xs:boolean | — | +| 15 | `CRM_ИспользоватьСтатусыОтветовБазыЗнаний` | Использовать статусы ответов базы знаний | xs:boolean | — | +| 16 | `CRM_ИспользоватьТриггеры` | Использовать триггеры (CRM) | xs:boolean | — | +| 17 | `CRM_КонтрольныеСуммыТриггеров` | Контрольные суммы триггеров (CRM) | v8:ValueStorage | — | +| 18 | `CRM_НастройкиБазыЗнаний` | Настройки базы знаний | v8:ValueStorage | — | +| 19 | `CRM_НастройкиСозданияКлиентовПриЗвонке` | Настройки создания клиентов при звонке | v8:ValueStorage | — | +| 20 | `CRM_НеБазоваяВерсия` | Не базовая версия (CRM) | xs:boolean | — | +| 21 | `CRM_НеЗаменятьРольПриОбработкеОбращений` | Не заменять роль при обработке обращений (CRM) | xs:boolean | — | +| 22 | `CRM_НеИспользоватьПотокиДоставкиЭлектроннойПочты` | Не использовать потоки доставки электронной почты | xs:boolean | — | +| 23 | `CRM_НеСвязыватьСАктивнымИнтересомДокументыПриКопировании` | CRM не связывать с активным интересом документы при копировании | xs:boolean | — | +| 24 | `CRM_ОчищатьИсториюРеквизитовОбъектов` | Очищать историю реквизитов объектов | xs:boolean | — | +| 25 | `CRM_ПериодХраненияИсторииРеквизитовОбъектов` | Период хранения истории реквизитов объектов | xs:decimal | — | +| 26 | `CRM_ПубличныеПочтовыеДомены` | Список публичных почтовых доменов (CRM) | v8:ValueStorage | — | +| 27 | `CRM_РассчитыватьВажностьИСрочностьЗадачАвтоматически` | Рассчитывать важность и срочность задач автоматически | xs:boolean | — | +| 28 | `CRM_СлужебныйПользовательРобот` | Служебный пользователь-робот (CRM) | cfg:CatalogRef.Пользователи | — | +| 29 | `CRM_СогласовыватьИзмененияБазыЗнанийЧерезБП` | Согласовать изменения базы знаний через БП | xs:boolean | — | +| 30 | `CRM_СпособОтображенияНапоминаний` | Способ отображения напоминаний | cfg:EnumRef.CRM_ВариантыОтображенияНапоминаний | — | +| 31 | `CRM_СрокАктуальностиЗапросаНаОценку` | Срок актуальности запроса на оценку | xs:decimal | — | +| 32 | `CRM_СрокАктуальностиНапоминанийПоУмолчанию` | Срок актуальности оповещений по умолчанию | xs:decimal | — | +| 33 | `CRM_СрокЖизниЗвонков` | Время жизни звонков как лидов | xs:decimal | Время жизни звонков как лидов (дней) | +| 34 | `CRM_СрокОбработкиЗвонков` | CRM срок обработки звонков | v8:ValueStorage | — | +| 35 | `CRM_СтраницаПриветствия` | CRM страница приветствия | v8:ValueStorage | — | +| 36 | `CRM_ТехподдержкаURL` | CRM техподдержка URL | xs:string | — | +| 37 | `CRM_ТехподдержкаЛогин` | CRM техподдержка логин | xs:string | — | +| 38 | `CRM_ТехподдержкаПароль` | CRM техподдержка пароль | xs:string | — | +| 39 | `CRM_УтверждатьОтветСразу` | Утверждать ответ сразу | xs:boolean | — | +| 40 | `CRM_УчетнаяЗаписьМессенджераОповещений` | Учетная запись мессенджера для отправки оповещений по электронной почте | cfg:CatalogRef.CRM_УчетныеЗаписиМессенджеров | — | +| 41 | `CRM_УчетнаяЗаписьРассылкиПоздравлений` | Учетная запись для рассылки поздравлений с праздниками | cfg:CatalogRef.УчетныеЗаписиЭлектроннойПочты | — | +| 42 | `CRM_ШрифтПисьмаПоУмолчанию` | Шрифт письма по умолчанию (CRM) | xs:string | — | +| 43 | `CRM_ЭтоДемоБаза` | Это демо база | xs:boolean | — | +| 44 | `АвторОповещенийПользователей` | Автор оповещений пользователей | cfg:CatalogRef.Пользователи | — | +| 45 | `АдресаСерверовМетокВремени` | Адреса серверов меток времени | xs:string | — | +| 46 | `АдресГрузополучателяБратьИзАдресаДоставки` | Адрес грузополучателя брать из адреса доставки | xs:boolean | — | +| 47 | `АдресПровайдераАутентификации` | Адрес провайдера аутентификации | xs:string | — | +| 48 | `АдресРеестраМЧД` | Адрес реестра МЧД | xs:string | — | +| 49 | `АдресСервиса1СФреш` | Адрес сервиса 1С:Фреш | xs:string | — | +| 50 | `АдресСервисаМЧДРР` | Адрес сервиса МЧДРР | xs:string | — | +| 51 | `АккредитованныеУдостоверяющиеЦентры` | Аккредитованные удостоверяющие центры | v8:ValueStorage | — | +| 52 | `АутентификацияТокеномДоступаВнутреннихВызововПрограммногоИнтерфейса` | Аутентификация токеном доступа внутренних вызовов программного интерфейса | xs:boolean | — | +| 53 | `БазоваяВалютаПоУмолчанию` | Базовая валюта по умолчанию | cfg:CatalogRef.Валюты | — | +| 54 | `БлокировкаФоновогоРаспределенияРасчетов` | Блокировка фонового распределения расчетов | xs:boolean | — | +| 55 | `ВариантОбновленияВнешнихКомпонент` | Вариант обновления внешних компонент | xs:decimal | — | +| 56 | `ВариантОбновленияРегламентированныхОтчетов` | Вариант обновления регламентированных отчетов | xs:decimal | — | +| 57 | `ВариантПроверкиСтатусовСертификатовНоменклатурыРосаккредитации` | Вариант проверки статусов сертификатов номенклатуры Росаккредитации | cfg:EnumRef.ВариантыПроверкиСтатусовСертификатовНоменклатурыРосаккредитации | — | +| 58 | `ВариантУпорядочиванияПотребностейПоЗаказамДляОбеспечения` | Вариант упорядочивания потребностей по заказам для обеспечения | cfg:EnumRef.ВариантыУпорядочиванияПотребностейПоЗаказамДляОбеспечения | — | +| 59 | `ВедетсяУчетПостоянныхИВременныхРазницОбщая` | Ведется учет постоянных и временных разниц общая | xs:boolean | — | +| 60 | `ВерсияДанныхСмартвей` | Версия данных смартвей | xs:decimal | — | +| 61 | `ВерсияСхемЭлектронногоАктированияЕИС` | Версия схем электронного актирования ЕИС | xs:string | — | +| 62 | `ВестиУчетЗернаИПродуктовПереработкиЗЕРНО` | Вести учет зерна и продуктов переработки (ФГИС "Зерно") | xs:boolean | — | +| 63 | `ВестиУчетПестицидовАгрохимикатовТукосмесейСАТУРН` | Вести учет пестицидов, агрохимикатов, тукосмесей САТУРН | xs:boolean | — | +| 64 | `ВидКартыСерверЛояльности` | Вид карты сервер лояльности | — | — | +| 65 | `ВидЦеныСтоимостиПрослеживаемыхТоваров` | Вид цены стоимости прослеживаемых товаров | cfg:CatalogRef.ВидыЦен | — | +| 66 | `ВыбиратьВерсиюКомиссионныхПродаж` | Выбирать версию комиссионных продаж | xs:boolean | — | +| 67 | `ВыводитьНаименованияИсходящихДокументовВАктахСверкиИСчетахФактурах` | Выводить наименования исходящих документов в актах сверки и счетах-фактурах | xs:boolean | — | +| 68 | `ВыводитьПолныеНаименованияРетроБонусовКлиентов` | Выводить полные наименования ретро-бонусов клиентов | xs:boolean | — | +| 69 | `ВыводитьПолныеНаименованияРетроБонусовПоставщиков` | Выводить полные наименования ретро-бонусов поставщиков | xs:boolean | — | +| 70 | `ВыводитьСерииВПечатныхФормах` | Выводить серии в печатных формах | xs:boolean | — | +| 71 | `ВыполненаПервоначальнаяРегистрацияЗаданийНеоперативногоДопроведенияДокументов` | Выполнена первоначальная регистрация заданий неоперативного допроведения документов | xs:boolean | — | +| 72 | `ГруппаДоступаПартнераПриАвтоматическомСоздании` | Группа доступа партнера при автоматическом создании | cfg:CatalogRef.ГруппыДоступаПартнеров | — | +| 73 | `ДанныеДляИзмененияМультиязычныхРеквизитов` | Данные для изменения мультиязычных реквизитов | v8:ValueStorage | — | +| 74 | `ДатаАвтоматическогоПолученияЭДО` | Дата автоматического получения ЭДО | xs:dateTime | — | +| 75 | `ДатаНачалаИсключенияСведенийДУЛПредставителяИзМЧД` | Дата начала исключения из МЧД сведений документа, удостоверяющего личность физического лица представителя | xs:dateTime | — | +| 76 | `ДатаНачалаРаботыМеханизмаБонусныхБаллов_2_5` | Дата начала работы механизма бонусных баллов (2.5) | xs:dateTime | — | +| 77 | `ДатаОбновленияНаВерсиюСПрочтенностью` | Дата обновления на версию с прочтенностью | xs:dateTime | — | +| 78 | `ДатаПереходаНаЦенообразование25` | Дата перехода на ценообразование25 | xs:dateTime | — | +| 79 | `ДатаПолученияДанныхСервисаСверкиРасчетов` | Дата получения данных сервиса сверки расчетов | xs:dateTime | — | +| 80 | `ДлительностьОперацииПлатежныхСистем` | Длительность операции платежных систем | xs:decimal | — | +| 81 | `ДобавлятьМеткиВремениАвтоматически` | Добавлять метки времени автоматически | xs:boolean | — | +| 82 | `ДоставлятьСерверныеОповещенияБезСистемыВзаимодействия` | Доставлять серверные оповещения без системы взаимодействия | xs:boolean | — | +| 83 | `ДоступностьЛичногоКабинетаСервиса` | Доступность личного кабинета сервиса | xs:boolean | — | +| 84 | `ЕдиницаИзмеренияКилограммИС` | Единица измерения килограмм ИС | — | — | +| 85 | `ЕдиницаИзмеренияЛитрИС` | Единица измерения литр ИС | — | — | +| 86 | `ЗавершатьСеансыБезПредупрежденияПоУмолчаниюВМоделиСервиса` | Завершать сеансы без предупреждения по умолчанию | xs:boolean | — | +| 87 | `ЗапретитьФормированиеОтветногоТитулаБезДокументовУчета` | Запретить формирование ответного титула без документов учета | xs:boolean | — | +| 88 | `ЗапретитьФормированиеФормализованныхЭДИзФайлов` | Запретить формирование формализованных ЭД из файлов | xs:boolean | — | +| 89 | `ИмяВидаПриложенияАвтономногоРабочегоМеста` | Имя вида приложения автономного рабочего места | xs:string | — | +| 90 | `ИмяПользователяУчетнойСистемы` | Имя пользователя учетной системы | xs:string | — | +| 91 | `ИспользоватьАвтоматическоеПолучениеИзСервисаЭДО` | Использовать автоматическое получение из сервиса ЭДО | xs:boolean | — | +| 92 | `ИспользоватьАвтоматическоеПолучениеИзСервисаЭДОПоТокенам` | Использовать автоматическое получение из сервиса ЭДО по токенам | xs:boolean | — | +| 93 | `ИспользоватьАвтоматическоеУдалениеНеиспользованныхКодовМаркировкиИСМП` | Использовать автоматическое удаление неиспользованных кодов маркировки ИС МП | xs:boolean | — | +| 94 | `ИспользоватьАвтоматическуюЗагрузкуСведенийОбОтклоненияхИСМП` | Использовать автоматическую загрузку сведений об отклонениях ИС МП | xs:boolean | — | +| 95 | `ИспользоватьАналогиМатериалов` | Использовать аналоги материалов | xs:boolean | — | +| 96 | `ИспользоватьАутентификациюОСВВебСервисе1СДокументооборота` | Использовать аутентификацию ОС в веб-сервисе 1С:Документооборота | xs:boolean | — | +| 97 | `ИспользоватьВвозТоваровИзТаможенногоСоюза` | Ввоз товаров из Таможенного союза | xs:boolean | — | +| 98 | `ИспользоватьВвозТоваровИзТаможенногоСоюзаНеотфактурованныеПоставки` | Использовать ввоз товаров из таможенного союза (неотфактурованной поставки) | xs:boolean | — | +| 99 | `ИспользоватьВвозТоваровИзТаможенногоСоюзаТоварыВПути` | Использовать ввоз товаров из таможенного союза (товары в пути) | xs:boolean | — | +| 100 | `ИспользоватьВыплатыСамозанятым` | Использовать выплаты самозанятым | xs:boolean | — | +| 101 | `ИспользоватьГруппыВнешнихПользователей` | Использовать группы внешних пользователей | xs:boolean | — | +| 102 | `ИспользоватьДемонстрационныеСценарии` | Использовать демонстрационные сценарии | xs:boolean | — | +| 103 | `ИспользоватьЗагрузкуКурсовВалютЕЦБ` | Использовать загрузку курсов валют ЕЦБ | xs:boolean | — | +| 104 | `ИспользоватьЗаказыХотяБыОдногоВида` | Использовать заказы хотя бы одного вида | xs:boolean | — | +| 105 | `ИспользоватьЗаявкиНаКомандировку` | Использовать заявки на командировку | xs:boolean | — | +| 106 | `ИспользоватьИнтеграционнуюШину` | Использовать интеграционную шину | xs:boolean | — | +| 107 | `ИспользоватьИнтеграциюОблачногоЭДО` | Использовать интеграцию облачного ЭДО | xs:boolean | — | +| 108 | `ИспользоватьИнтеграциюС1САналитикой` | Использовать интеграцию с 1С:Аналитикой | xs:boolean | — | +| 109 | `ИспользоватьИнтеграциюС1СДокументооборот3` | Использовать интеграцию с 1С:Документооборотом редакции 3 | xs:boolean | — | +| 110 | `ИспользоватьИнтеграциюСLamoda` | Использовать интеграцию с Lamoda | xs:boolean | — | +| 111 | `ИспользоватьИнтеграциюСOzon` | Использовать интеграцию с Ozon | xs:boolean | — | +| 112 | `ИспользоватьИнтеграциюСWildberries` | Использовать интеграцию с Wildberries | xs:boolean | — | +| 113 | `ИспользоватьИнтеграциюСоСмартвей` | Использовать интеграцию со смартвей | xs:boolean | — | +| 114 | `ИспользоватьИнтеграциюСЭТПБидзаарДляПокупателей` | Использовать интеграцию с Бидзаар для покупателей | xs:boolean | — | +| 115 | `ИспользоватьИнтеграциюСЭТПБидзаарДляПоставщиков` | Использовать интеграцию с Бидзаар для поставщиков | xs:boolean | — | +| 116 | `ИспользоватьИнтеграциюСЯндексМаркет` | Использовать интеграцию с Яндекс Маркет | xs:boolean | — | +| 117 | `ИспользоватьИнформативныеЦеныНоменклатуры` | Использовать информативные цены номенклатуры | xs:boolean | — | +| 118 | `ИспользоватьИнциденты` | Использовать инциденты | xs:boolean | — | +| 119 | `ИспользоватьИсправлениеДокументов` | Использовать исправление документов | xs:boolean | — | +| 120 | `ИспользоватьКомандуЗаметки` | Использовать команду заметки | xs:boolean | — | +| 121 | `ИспользоватьКомандуНапоминаний` | Использовать команду напоминаний | xs:boolean | — | +| 122 | `ИспользоватьКонтрольОтраженияВУчетеЭДО` | Использовать контроль отражения в учете ЭДО | xs:boolean | — | +| 123 | `ИспользоватьКорневыеСертификатыНСПК` | Использовать корневые сертификаты НСПК | xs:boolean | — | +| 124 | `ИспользоватьМеждународныеПечатныеФормы` | Использовать международные печатные формы | xs:boolean | — | +| 125 | `ИспользоватьМеханизмИзмененияНастроекСписковДокументов` | Использовать механизм изменения настроек списков документов | xs:boolean | — | +| 126 | `ИспользоватьМногострановойУчет` | Использовать многострановой учет | xs:boolean | — | +| 127 | `ИспользоватьНазначенияБезЗаказа` | Использовать назначения без заказа | xs:boolean | — | +| 128 | `ИспользоватьНаложенныеПлатежиСервис1СКурьер` | Использовать наложенные платежи (1С:Курьер) | xs:boolean | — | +| 129 | `ИспользоватьНаложенныеПлатежиСервис1ССДЭК` | Использовать наложенные платежи (1С:СДЭК) | xs:boolean | — | +| 130 | `ИспользоватьОбезличенныеСертификаты` | Использовать обезличенные сертификаты | xs:boolean | — | +| 131 | `ИспользоватьОбработкуОбъектов1СДокументооборота` | Использовать обработку объектов 1С:Документооборота | xs:boolean | — | +| 132 | `ИспользоватьОбщиеНастройкиВходаПользователейСервиса` | Использовать общие настройки входа пользователей сервиса | xs:boolean | — | +| 133 | `ИспользоватьОказаниеАгентскихУслугПриЗакупке` | Использовать оказание агентских услуг при закупке | xs:boolean | — | +| 134 | `ИспользоватьОперацииСводнойКорректировкиЗадолженностиПоПриобретению` | Использовать операции сводной корректировки задолженности по приобретению | xs:boolean | — | +| 135 | `ИспользоватьОперацииСводнойКорректировкиЗадолженностиПоРеализации` | Использовать операции сводной корректировки задолженности по реализации | xs:boolean | — | +| 136 | `ИспользоватьОплатуСервиса` | Использовать оплату сервиса | xs:boolean | — | +| 137 | `ИспользоватьОповещенияПользователейОСобытиях` | Использовать оповещения пользователей о событиях системы | xs:boolean | — | +| 138 | `ИспользоватьОптимизированнуюЗаписьСозданияАвтономногоРабочегоМеста` | Использовать оптимизированную запись создания автономного рабочего места | xs:boolean | — | +| 139 | `ИспользоватьОтветственноеХранениеСобственнымиОрганизациями` | Использовать ответственное хранение собственными организациями | xs:boolean | — | +| 140 | `ИспользоватьОтгрузкуБезПереходаПраваСобственности2_0` | Использовать отгрузку без перехода права собственности (версия 2.0) | xs:boolean | — | +| 141 | `ИспользоватьОтгрузкуБезПереходаПраваСобственности2_5` | Использовать отгрузку без перехода права собственности (версия 2.5) | xs:boolean | — | +| 142 | `ИспользоватьОценкуПроизводительностиСинхронизацииДанных` | Использовать оценку производительности синхронизации данных | xs:boolean | — | +| 143 | `ИспользоватьПараллельнуюВыгрузкуЗагрузкуДанных` | Использовать параллельную выгрузку/загрузку данных | xs:boolean | — | +| 144 | `ИспользоватьПеречислениеДенежныхСредствСпискуСотрудников` | Использовать перечисление денежных средств списку сотрудников | xs:boolean | — | +| 145 | `ИспользоватьПечатныеФормыСФ2_5` | Использовать печатные формы СФ, УПД, УКД 2.5 | xs:boolean | — | +| 146 | `ИспользоватьПланированиеВнутреннихПотреблений` | Использовать планирование внутренних потреблений | xs:boolean | — | +| 147 | `ИспользоватьПодакцизныеТовары` | Использовать подакцизные товары | xs:boolean | — | +| 148 | `ИспользоватьПорчуТоваровУХранителей` | Использовать порчу товаров у хранителей | xs:boolean | — | +| 149 | `ИспользоватьПоставляемыеДанныеОрганизацийБизнесСеть` | Использовать поставляемые данные организаций 1С:Бизнес-сеть | xs:boolean | — | +| 150 | `ИспользоватьПроверкуСтатусовДокументовВГИСМТ` | Использовать автоматическую отправку и получение данных МОТП | xs:boolean | — | +| 151 | `ИспользоватьПродажиНаЭкспорт` | Использовать продажи на экспорт | xs:boolean | — | +| 152 | `ИспользоватьПросмотрPDFДокументовЭДО` | Использовать просмотр PDF документов ЭДО | xs:boolean | — | +| 153 | `ИспользоватьПрочтениеДокументовЭДО` | Использовать прочтение документов ЭДО | xs:boolean | — | +| 154 | `ИспользоватьРазделениеДокументовПоОтветственнымЭДО` | Использовать разделение документов по ответственным ЭДО | xs:boolean | Использовать "Ответственных" за документы в ЭДО | +| 155 | `ИспользоватьРазделыТаможеннойДекларацииИмпорт` | Использовать разделы таможенной декларации импорт | xs:boolean | — | +| 156 | `ИспользоватьРаспознаваниеДокументов` | Использовать распознавание документов | xs:boolean | — | +| 157 | `ИспользоватьРеверсивноеОбложениеНДС` | Использовать реверсивное обложение НДС | xs:boolean | — | +| 158 | `ИспользоватьРеестрДоверенностейФНСЭДО` | Использовать реестр доверенностей ФНС ЭДО | xs:boolean | — | +| 159 | `ИспользоватьРетроБонусыКлиентов` | Использовать ретро-бонусы клиентов | xs:boolean | — | +| 160 | `ИспользоватьРетроБонусыПоставщиков` | Использовать ретро-бонусы поставщиков | xs:boolean | — | +| 161 | `ИспользоватьСверткуРегистраСоответствиеНоменклатурыСАТУРН` | Использовать свертку регистра "Соответствие номенклатуры ФГИС "Сатурн"" | xs:boolean | — | +| 162 | `ИспользоватьСерверЛояльностиПолучательДанных` | Использовать сервер лояльности получатель данных | xs:boolean | — | +| 163 | `ИспользоватьСерверЛояльностиПоставщикДанных` | Использовать сервер лояльности поставщик данных | xs:boolean | — | +| 164 | `ИспользоватьСервис1СКурьерика` | Использовать сервис 1С-Курьерика | xs:boolean | — | +| 165 | `ИспользоватьСервис1ССДЭК` | Использовать сервис 1С:СДЭК | xs:boolean | — | +| 166 | `ИспользоватьСервис1СШтамп` | Использовать сервис 1С:Штамп | cfg:EnumRef.ВариантыИспользованияСервиса1СШтамп | — | +| 167 | `ИспользоватьСервисBankFeeds` | Использовать сервис BankFeeds | xs:boolean | — | +| 168 | `ИспользоватьСервисМобильнойПодписи` | Использовать сервис мобильной подписи | xs:boolean | — | +| 169 | `ИспользоватьСерииНоменклатурыДляЦенообразования` | Использовать серии номенклатуры для ценообразования | xs:boolean | — | +| 170 | `ИспользоватьСловарьСопоставленияНоменклатурыБЭД` | Использовать словарь сопоставления номенклатуры БЭД | xs:boolean | — | +| 171 | `ИспользоватьСогласованиеЗаказовНаВнутреннееПотребление` | Использовать согласование заказов на внутреннее потребление | xs:boolean | — | +| 172 | `ИспользоватьСогласованиеСписанийРетроБонусовКлиентов` | Использовать согласование списаний ретро-бонусов клиентов | xs:boolean | — | +| 173 | `ИспользоватьСогласованиеСписанийРетроБонусовПоставщиков` | Использовать согласование списаний ретро-бонусов поставщиков | xs:boolean | — | +| 174 | `ИспользоватьТокенФорматаUUIDИСМП` | Использовать токен формата UUID | xs:boolean | Для обмена с ГИС МТ использовать токен формата UUID, вместо JWT | +| 175 | `ИспользоватьУпаковкиНоменклатурыДляЦенообразования` | Использовать упаковки номенклатуры для ценообразования | xs:boolean | — | +| 176 | `ИспользоватьУчетОригиналовПервичныхДокументов` | Использовать учет оригиналов первичных документов | xs:boolean | — | +| 177 | `ИспользоватьУчетПоНДД` | Учет по НДД | xs:boolean | — | +| 178 | `ИспользоватьУчетПоОбъектамВозникновенияЗатрат` | Использовать учет по объектам возникновения затрат | xs:boolean | — | +| 179 | `ИспользоватьФоновуюПроверкуДокументовГИСМТ` | Использовать фоновую проверку документов ГИС МТ | xs:boolean | — | +| 180 | `ИспользоватьХарактеристикиНоменклатурыДляЦенообразования` | Использовать характеристики номенклатуры для ценообразования | xs:boolean | — | +| 181 | `ИспользоватьЧастичнуюДоставкуСервис1СКурьерика` | Использовать частичную доставку (1С-Курьерика) | xs:boolean | — | +| 182 | `ИспользоватьЧерновикиЭлектронныхДокументов` | Использовать черновики электронных документов | xs:boolean | — | +| 183 | `ИспользоватьЭлектронноеАктированиеВЕИС` | Использовать обмен с ЕИС для целей электронного актирования | xs:boolean | — | +| 184 | `ИспользоватьЭлектронноеАктированиеЗаказчикаВЕИС` | Использовать электронное актирование заказчика ВЕИС | xs:boolean | — | +| 185 | `ИспользуетсяКомиссионнаяПродажа20` | Используется комиссионная продажа 2.0 | xs:boolean | — | +| 186 | `ИспользуетсяКомиссионнаяПродажаУПКА20` | Комиссионная продажа 2.0 УП КА | xs:boolean | — | +| 187 | `ИспользуетсяКомиссионнаяПродажаУТ11` | Комиссионная продажа 2.0 УТ | xs:boolean | — | +| 188 | `ИспользуетсяПротоколRDPвБПО` | Используется протокол RDP в БПО | xs:boolean | — | +| 189 | `ИспользуетсяСервисСверкиРасчетов` | Используется сервис сверки расчетов | xs:boolean | — | +| 190 | `ИспользуетсяЦенообразование20` | Использовать ценообразование 2.0 | xs:boolean | — | +| 191 | `ИспользуетсяЦенообразование25` | Использовать ценообразование 2.5 | xs:boolean | — | +| 192 | `КаталогВременныхФайловДляLinux` | Каталог временных файлов для linux | xs:string | — | +| 193 | `КаталогВременныхФайловДляWindows` | Каталог временных файлов для windows | xs:string | — | +| 194 | `КлючДоступаКСервисуЭДО` | Ключ доступа к сервису ЭДО | xs:string | — | +| 195 | `КлючПодписиТокенаДоступа1СДокументооборот` | Ключ подписи токена доступа к веб-сервису 1С:Документооборот | xs:string | — | +| 196 | `КлючСопоставленияПользователей1СДокументооборот` | Ключевой реквизит для сопоставления пользователей при авторизации в 1С:Документооборот | cfg:EnumRef.КлючиСопоставленияПользователей1СДокументооборот | — | +| 197 | `КодНовогоУзлаПланаОбмена` | Код нового узла плана обмена | xs:decimal | — | +| 198 | `КоличествоМесяцевМинимальногоПериодаРассчитанныхИтогов` | Количество месяцев минимального периода рассчитанных итогов | xs:decimal | — | +| 199 | `КоличествоМесяцевХраненияИсторииРассылкиОтчетов` | Количество месяцев хранения истории рассылки отчетов | xs:decimal | — | +| 200 | `КоличествоПотоковДлительныхОпераций` | Количество потоков длительных операций | xs:decimal | — | +| 201 | `КоличествоПотоковНеоперативнойОчередиЗаданий` | Количество потоков неоперативной очереди заданий | xs:decimal | — | +| 202 | `КонтролироватьЗапасыТоваровПодлежащихРезервированиюПоМереПоступления` | Контролировать запасы товаров, подлежащих резервированию по мере поступления | xs:boolean | — | +| 203 | `КонтролироватьОстаткиАвансов` | Контролировать остатки авансов | xs:boolean | — | +| 204 | `КонтрольПревышенияОбособленногоОбеспеченияУнаследован` | Контроль превышения обособленного обеспечения унаследован | xs:boolean | — | +| 205 | `ЛокализацияРФ` | Локализация РФ (служебная) | xs:boolean | — | +| 206 | `МаксимальныйРазмерПриложенияДляВыгрузкиБезРасширенияРаботыСФайлами` | Максимальный размер приложения для выгрузки без расширения работы с файлами (Мб) | xs:decimal | — | +| 207 | `МеждународныеРеквизитыБанковскихСчетов` | Международные реквизиты банковских счетов | xs:boolean | — | +| 208 | `НастройкиОбменаЗЕРНО` | Настройки обмена ФГИС "Зерно" | v8:ValueStorage | — | +| 209 | `НастройкиОбменаНСПК` | Настройки обмена НСПК | v8:ValueStorage | — | +| 210 | `НастройкиОбменаСАТУРН` | Настройки обмена ФГИС "Сатурн" | v8:ValueStorage | — | +| 211 | `НастройкиОтборовНаВыгрузкуСервисаПрогнозирования` | Настройки отборов на выгрузку сервиса прогнозирования | v8:ValueStorage | — | +| 212 | `НастройкиОтборовНаЗагрузкуСервисаПрогнозирования` | Настройки отборов на загрузку сервиса прогнозирования | v8:ValueStorage | — | +| 213 | `НастройкиОтображенияКомандПлатежныхСистем` | Настройки отображения команд платежных систем | v8:ValueStorage | — | +| 214 | `НастройкиПараллельнойВыгрузкиЗагрузкиДанных` | Настройки параллельной выгрузки/загрузки данных | v8:ValueStorage | — | +| 215 | `НастройкиПолученияУведомленийПортала` | Настройки получения уведомлений портала | v8:ValueStorage | — | +| 216 | `НастройкиРасчетаРазмераПриложений` | Настройки расчета размера приложений | v8:ValueStorage | — | +| 217 | `НастройкиРегистрацииСобытийДоступаКДанным` | Настройки регистрации событий доступа к данным | v8:ValueStorage | — | +| 218 | `НастройкиСервисаПрогнозирования` | Настройки сервиса прогнозирования | v8:ValueStorage | — | +| 219 | `НациональныеРеквизитыБанковскихСчетов` | Национальные реквизиты банковских счетов | xs:boolean | — | +| 220 | `НачалоИнтервалаВремениПриоритетаОбработкиДанных` | Начало интервала времени приоритета обработки данных | xs:dateTime | — | +| 221 | `НеИспользоватьМногострановойУчет` | Не использовать многострановой учет | xs:boolean | — | +| 222 | `НеИспользоватьНазначенияБезЗаказа` | Не использовать назначения без заказа | xs:boolean | — | +| 223 | `НеСпрашиватьПроПереходНаОнлайнВзаиморасчеты` | Не спрашивать про переход на онлайн взаиморасчеты | xs:boolean | — | +| 224 | `ОкончаниеИнтервалаВремениПриоритетаОбработкиДанных` | Окончание интервала времени приоритета обработки данных | xs:dateTime | — | +| 225 | `ОписанияПроцессовНаПоддержке` | Описания процессов на поддержке | xs:string | — | +| 226 | `ОплатаЭлектроннымиСертификатамиФСС` | Оплата электронными сертификатами ФСС | xs:boolean | — | +| 227 | `ОпределятьПринадлежностьТовараИСтавкуНДСПриПодборе` | Определять принадлежность товара и ставку НДС при подборе | xs:boolean | — | +| 228 | `ОсновнаяСтрана` | Основная страна | cfg:CatalogRef.СтраныМира | — | +| 229 | `ОтключитьАвтоматическоеДовериеПолнымПолномочиям` | Отключить автоматическое доверие полным полномочиям | xs:boolean | — | +| 230 | `ОтключитьЗаполнениеТекстовыхПолномочийПоУмолчанию` | Отключить заполнение текстовых полномочий по умолчанию | xs:boolean | — | +| 231 | `ОтключитьПодборМЧДПоКПППриПодписанииИПроверке` | Отключить подбор МЧД по КПП при подписании и проверке подписи | xs:boolean | — | +| 232 | `ОтображатьЛичныйКабинетСервисаВПанелиРазделов` | Отображать личный кабинет сервиса в панели разделов | xs:boolean | — | +| 233 | `ОтправленоЗаписей` | Отправлено записей | xs:decimal | — | +| 234 | `ПараметрыБлокировкиРаботыССервисамиИнтернетПоддержки` | Параметры блокировки работы с сервисами Интернет-поддержки | v8:ValueStorage | — | +| 235 | `ПараметрыПоискаКонтрагентов` | Параметры поиска контрагентов | v8:ValueStorage | — | +| 236 | `ПараметрыРезервногоКопированияВОблачныйАрхив20` | Параметры резервного копирования в облачный архив | v8:ValueStorage | — | +| 237 | `ПараметрыСеансаЗагрузкиРаспознанныхДокументов` | Параметры сеанса загрузки распознанных документов | v8:ValueStorage | — | +| 238 | `ПечататьБумажныйЧек` | Печатать бумажный чек | xs:boolean | — | +| 239 | `ПечататьОтдельныйСлипЧекЭквайринговойОперации` | Печатать отдельный слип-чек эквайринговой операции | xs:boolean | — | +| 240 | `ПоддержкаБанковскогоИКазначейскогоСопровожденияГосконтрактов` | Поддержка банковского и казначейского сопровождения госконтрактов | xs:boolean | — | +| 241 | `ПоддержкаПлатежейРФ` | Поддержка платежей РФ | xs:boolean | — | +| 242 | `ПользовательСтандартногоИнтерфейсаOData` | Пользователь стандартного интерфейса OData | cfg:CatalogRef.Пользователи | — | +| 243 | `ПорядокЗачетаОплатНакладных` | — | cfg:EnumRef.ПорядкиЗачетаОплатНакладных | — | +| 244 | `ПорядокОбрабатываемыхДанных` | Порядок обрабатываемых данных | cfg:EnumRef.ПорядокОбработчиковОбновления | — | +| 245 | `ПредельноеВремяОбновленияСпискаДокументов` | Предельное время обновления списка документов | xs:decimal | — | +| 246 | `ПредопределенныеШаблоныСообщенийОнлайнЗаказов` | Предопределенные шаблоны сообщений онлайн-заказов | v8:ValueStorage | — | +| 247 | `ПредопределенныеШаблоныСообщенийОнлайнОплат` | Предопределенные шаблоны сообщений онлайн оплат | v8:ValueStorage | — | +| 248 | `ПредставлениеВидаПриложенияАвтономногоРабочегоМеста` | Представление вида приложения автономного рабочего места | xs:string | — | +| 249 | `ПредставлениеВходящихДокументов` | Представление входящих документов | cfg:EnumRef.СпособыПредставленияВходящихДокументов | — | +| 250 | `ПриниматьПриглашенияЭДОАвтоматически` | Принимать приглашения к ЭДО автоматически | xs:boolean | — | +| 251 | `ПринятоЗаписей` | Принято записей | xs:decimal | — | +| 252 | `РазрешенныеНеаккредитованныеУЦ` | Разрешенные неаккредитованные УЦ | xs:string | — | +| 253 | `РазрешитьДоступКИнтернетСервисам` | Разрешить доступ к Интернет-сервисам | xs:boolean | — | +| 254 | `РазрешитьДоступКИнтернетСервисамЭлектроннойПодписи` | Разрешить доступ к Интернет-сервисам электронной подписи | xs:boolean | — | +| 255 | `РаспределениеДопРасходовНаТоварыВПутиОтПоставщиков` | Распределение доп расходов на товары в пути от поставщиков | xs:boolean | — | +| 256 | `РаспределятьВзаиморасчетыФоновымЗаданием` | Распределять взаиморасчеты фоновым заданием | xs:boolean | — | +| 257 | `РегистрироватьИзмененияПравДоступа` | Регистрировать изменения прав доступа | xs:boolean | — | +| 258 | `РегистрироватьПоказателиСерверныхОповещений` | Регистрировать показатели серверных оповещений | xs:boolean | — | +| 259 | `РежимРаботыСТестовымКонтуромЗЕРНО` | Режим работы с тестовым контуром ФГИС "Зерно" | xs:boolean | — | +| 260 | `РежимРаботыСТестовымКонтуромСАТУРН` | Режим работы с тестовым контуром САТУРН | xs:boolean | — | +| 261 | `РежимТестированияМЧД` | Режим тестирования МЧД | xs:boolean | — | +| 262 | `СведенияОбОперацияхСЦелевымиСредствами` | Сведения об операциях с целевыми средствами | xs:boolean | — | +| 263 | `СвойстваИсправленийПередОбновлениемИБ` | Свойства исправлений перед обновлением ИБ | v8:ValueStorage | — | +| 264 | `СостояниеОтправкиСерверныхОповещений` | Состояние отправки серверных оповещений | v8:ValueStorage | — | +| 265 | `СрокХраненияОперацийОчередиЧеков` | Срок хранения операций очереди чеков | cfg:EnumRef.ПериодХраненияИсторииОпераций | — | +| 266 | `СрокХраненияОперацийПроверкиКМ` | Срок хранения операций проверки КМ | cfg:EnumRef.ПериодХраненияИсторииОпераций | — | +| 267 | `СрокХраненияОперацийСОборудованием` | Срок хранения операций с оборудованием | cfg:EnumRef.ПериодХраненияИсторииОпераций | — | +| 268 | `СрокХраненияПлатежныхОпераций` | Срок хранения платежных операций | cfg:EnumRef.ПериодХраненияИсторииОпераций | — | +| 269 | `СрокХраненияСообщенийВ1СДокументооборот` | Срок хранения сообщений в 1С:Документооборот | xs:decimal | — | +| 270 | `СрокХраненияТранспортногоКонтейнераЭДО` | Срок хранения транспортного контейнера ЭДО | xs:decimal | Количество дней, по истечению которых, обработанный транспортный контейнер ЭДО будет помечен на удаление регламентным заданием | +| 271 | `СрокХраненияФискальныхОпераций` | Срок хранения фискальных операций | cfg:EnumRef.ПериодХраненияИсторииОпераций | — | +| 272 | `СтандартныеПодсистемыВАвтономномРежиме` | Стандартные подсистемы в автономном режиме | xs:boolean | — | +| 273 | `сфпИдентификаторИсторииЗвонков` | Идентификатор истории звонков | xs:decimal | Идентификатор истории звонков | +| 274 | `сфпИспользоватьПрефиксыИсходящихВызов` | Использовать префиксы исходящих вызов | xs:boolean | — | +| 275 | `сфпИспользоватьРаспознавание1С` | Использовать распознавание 1С | xs:boolean | — | +| 276 | `сфпИспользоватьТранскрибацию` | Использовать транскрибацию | xs:boolean | Использовать транскрибацию звонков | +| 277 | `сфпЛогинТранскрибация` | Логин транскрибация | xs:string | — | +| 278 | `сфпНастройкиТелефонии_ИсточникЛидов` | Источник лидов (Телефония) | xs:boolean | АПК:1032 АПК:265 не проверять на орфографию синоним и имя | +| 279 | `сфпНастройкиТелефонии_ПравилаОбработки` | Правила обработки | v8:ValueStorage | — | +| 280 | `сфпНастройкиТелефонии_ПрименитьПравилаОбработки` | Применить правила обработки (Телефония) | xs:boolean | — | +| 281 | `сфпНастройкиТелефонии_СценарииОбработки` | Правила обработки | v8:ValueStorage | — | +| 282 | `сфпОграничитьТранскрибациюТелефонныхЗвонков` | Ограничить транскрибацию | xs:boolean | Использовать транскрибацию звонков могут только определенные пользователи | +| 283 | `сфпПарольТранскрибация` | Пароль транскрибация | xs:string | — | +| 284 | `сфпТипПостобработки` | Тип постобработки | cfg:EnumRef.сфпТипыПостобработкиРаспознаванияРечи | Тип постобработки транскрибации | +| 285 | `ТипПодписиКриптографииПоУмолчанию` | Тип подписи криптографии по умолчанию | cfg:EnumRef.ТипыПодписиКриптографии | — | +| 286 | `ТипПодписиМЧД` | Тип подписи МЧД | cfg:EnumRef.ТипыПодписиКриптографии | — | +| 287 | `ТипПодписиЭД` | Тип подписи ЭД | cfg:EnumRef.ТипыПодписиКриптографии | — | +| 288 | `ТолькоКомиссионныеПродажи25` | Только комиссионные продажи 2.5 | xs:boolean | — | +| 289 | `УдалитьБлокировкаВыполненияЗаданийНеоперативнойОчереди` | (не используется) Блокировка выполнения заданий неоперативной очереди | xs:boolean | — | +| 290 | `УдалитьЗачетОплатПоДатеПлатежа` | Удалить зачет оплат по дате платежа | xs:decimal | — | +| 291 | `УдалитьНастройкиВходаПользователей` | (не используется) Настройки входа пользователей | v8:ValueStorage | — | +| 292 | `УдалитьПечататьОтдельныйСлипЧекЕГАИС` | Печатать отдельный слип-чек ЕГАИС (удалить) | xs:boolean | — | +| 293 | `УдалитьРаспоряженияНаОтгрузкуКВыполнениюНеЗаполнен` | (не используется) распоряжения на отгрузку к выполнению не заполнен | xs:boolean | — | +| 294 | `УдалитьРаспределятьФактическиеРасчетыФоновымЗаданием` | (не используется) Распределять фактические расчеты фоновым заданием | xs:boolean | — | +| 295 | `УдалитьТипыЗаписейВзаиморасчетовЗаполнены` | Удалить типы записей взаиморасчетов заполнены | xs:boolean | Используется для распределения и получения данных расчетов по текущим правилам, пока не выполнены обработчики обновления | +| 296 | `УдалятьКвитанцииУТМДляАСИиУ` | Удалять квитанции УТМ для АСИиУ | xs:decimal | — | +| 297 | `УсовершенствоватьПодписиАвтоматически` | Усовершенствовать подписи автоматически | xs:decimal | — | +| 298 | `УсовершенствоватьПодписиСДаты` | Усовершенствовать подписи с даты | xs:dateTime | Если подпись создана позже указанной даты, она будет попадать в отчеты и обрабатываться регламентным заданием | +| 299 | `УстанавливатьПриоритетОбработкиДанныхВУказанномИнтервалеВремени` | Устанавливать приоритет обработки данных в указанном интервале времени | xs:boolean | — | +| 300 | `УстановленаМонопольнаяБлокировка` | Установлена монопольная блокировка | xs:boolean | — | +| 301 | `УчетТМЦВЭксплуатацииWE` | Учет ТМЦ в эксплуатации WE (служебная) | xs:boolean | — | +| 302 | `УчетТМЦВЭксплуатацииУПКА` | Учет ТМЦ в эксплуатации УП и КА (служебная) | xs:boolean | — | +| 303 | `ФайлВнешнихКомпонент` | Файл внешних компонент | xs:string | — | +| 304 | `ФайлРегламентированныхОтчетов` | Файл регламентированных отчетов | xs:string | — | +| 305 | `ФиксироватьПретензии` | Фиксировать претензии | xs:boolean | — | +| 306 | `ХешРасхожденийСервисаСверкиРасчетов` | Хеш расхождений сервиса сверки расчетов | xs:string | — | +| 307 | `ХранитьИсториюРассылкиОтчетов` | Хранить историю рассылки отчетов | xs:boolean | — | +| 308 | `ХранитьУспешныеОперацииРазрешения` | Хранить успешные операции разрешения продажи | xs:boolean | — | + +## 5. Расширения (.rhana) + +- **crm3-dev.rhana:** 3 констант: `rh_СкладСебестоимости`, `ГруппаЛаеннек`, `ДатаНачалаУпрощенногоПартионногоУчета` +- **crm3-26-test.rhana:** 1 констант: `РК_РежимОтладкиРана` + +--- + +*Сгенерировано скриптом `scripts/compare_constants_crm3_dev_vs_test.py`* \ No newline at end of file diff --git a/docs__ТЗ_2_полный_перенос_логики_УПД_из_crm3-26-promo_в_crm3-dev_2026-04-21.md b/docs__ТЗ_2_полный_перенос_логики_УПД_из_crm3-26-promo_в_crm3-dev_2026-04-21.md new file mode 100644 index 0000000..c6bf4dc --- /dev/null +++ b/docs__ТЗ_2_полный_перенос_логики_УПД_из_crm3-26-promo_в_crm3-dev_2026-04-21.md @@ -0,0 +1,218 @@ +--- +title: Техническое задание №2 - полный перенос новой логики УПД из crm3-26-promo в crm3-dev +version: 1.0 +date_created: 2026-04-21 +date_modified: 2026-04-21 +author: Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) +description: Полный план переноса логики подготовки данных и печати УПД из crm3-26-promo в crm3-dev с учетом выделения доработок в отдельное расширение упд5б. +status: К согласованию +show_metadata_block: true +show_index_link: true +show_toc: true +--- + +# Техническое задание №2 + +## 1. Цель и основание + +Цель: выполнить **полный перенос** актуальной логики формирования данных и печати УПД из `crm3-26-promo` в `crm3-dev` с выделением изменений в отдельное расширение `упд5б`, минимизируя изменения в основной конфигурации. + +Основание: сравнительный анализ: +- `crm3-dev` (версия `3.0.22.28`, режим совместимости `Version8_3_16`); +- `crm3-26-promo` (версия `3.1.35.11`, режим совместимости `Version8_3_27`); +- текущего расширения `crm3-dev.rhana`. + +## 2. Итоги полного анализа (as-is / to-be) + +### 2.1. Что уже есть в `crm3-26-promo` + +В `crm3-26-promo` реализован полный контур графы 5б: +- функция `СтрокаАвансовыеСчетаФактуры(...)` в `Documents/СчетФактураВыданный/Ext/ManagerModule.bsl`; +- расширенная `ПоместитьВременнуюТаблицуПлатежноРасчетныхДокументов(...)` с колонкой `СтрокаАвансовыеСчетаФактуры`; +- расширенный `ТекстЗапросаПолученияНомеровИДатПлатежноРасчетныхДокументов()` с данными `СчетФактураВыданныйАванс` и исправлений; +- вывод поля `ПредставлениеАвансовыеСчетаФактуры` в запросе шапки для печати; +- заполнение `ОбластьШапка.Параметры.АвансовыеСчетаФактуры` в `ПечатьОбщихФорм`. + +### 2.2. Что есть в `crm3-dev` + +В `crm3-dev` (база): +- базовые методы `ПоместитьВременнуюТаблицуПлатежноРасчетныхДокументов(...)` и `ТекстЗапросаПолученияНомеровИДатПлатежноРасчетныхДокументов()` присутствуют, но без контура 5б; +- в запросе шапки УПД отсутствует `ПредставлениеАвансовыеСчетаФактуры`. + +В `crm3-dev.rhana`: +- в `DataProcessors/ПечатьОбщихФорм/Ext/ManagerModule.bsl` уже есть ветка выбора макета `1096` для периода 2026; +- подключен макет `ПФ_MXL_УниверсальныйПередаточныйДокумент1096_ru`; +- в `Documents/СчетФактураВыданный/Ext/ManagerModule.bsl` отсутствуют изменения по 5б (есть только доработки по строке 5а). + +Критичное отличие по макетам: +- в `crm3-26-promo` для актуальной ветки УПД применяются `CommonTemplates`: + - `ПФ_MXL_УниверсальныйПередаточныйДокумент2026`, + - `ПФ_MXL_УниверсальныйПередаточныйДокумент2026Прослеж`, + в которых присутствует параметр `АвансовыеСчетаФактуры` (графа 5б); +- в `crm3-dev` и `crm3-dev.rhana` такие `CommonTemplates` отсутствуют. + +## 3. Границы работ по ТЗ №2 + +### 3.1. Входит в объем + +1. Полный перенос механизма подготовки данных 5б из `crm3-26-promo`. +2. Полный перенос логики вывода 5б в печатной форме УПД. +3. Унификация доработок в новом расширении `упд5б` (вынос из `crm3-dev.rhana` релевантных частей). +4. Анализ и устранение дублирования между `crm3-dev.rhana` и `упд5б`. +5. Подготовка правил, что остается в расширении, а что (при необходимости) меняется в базе `crm3-dev`. + +### 3.2. Не входит в объем + +1. Полный перенос всех несвязанных с УПД подсистем из `crm3-26-promo`. +2. Массовый рефакторинг документов вне контура СФ/УПД. + +## 4. Детальный анализ изменений структуры данных + +### 4.1. Обязательные поля и представления для миграции + +Для полного переноса должны быть поддержаны: +- строка представления авансовых СФ: `СтрокаАвансовыеСчетаФактуры`; +- поле вывода в шапке печати: `ПредставлениеАвансовыеСчетаФактуры`; +- поля в таблице платежно-расчетных документов: + - `НомерСчетаФактурыНаАванс`, + - `ДатаСчетаФактурыНаАванс`, + - `НомерИсправленияСчетаФактурыНаАванс`, + - `ДатаИсправленияСчетаФактурыНаАванс`. + +### 4.2. Временные таблицы и запросы + +В контуре `СчетФактураВыданный` требуется перенос (или эквивалентное восстановление) цепочки: +1. подготовка данных платежно-расчетных документов; +2. формирование данных по `СчетФактураВыданныйАванс` и исправлениям; +3. объединение в итоговую ВТ для передачи в печать; +4. подстановка в `РезультатПоШапке` поля `ПредставлениеАвансовыеСчетаФактуры`. + +### 4.3. Проверка наличия реквизитов документа + +В `crm3-26-promo` используется реквизит документа `СтрокаАвансовыеСчетаФактуры` в ряде сценариев формы/объекта. + +Для `crm3-dev` обязательна проверка: +1. если реквизит уже существует в базе - использовать его; +2. если реквизита нет: + - вариант А (предпочтительный): вычислять строку на лету в расширении и передавать через ВТ/запрос шапки; + - вариант Б (если требуется функциональная паритетность формы документа): добавить реквизит в объект (через расширение, если позволяет совместимость), либо точечно в базу. + +## 5. Целевая архитектура переноса + +### 5.1. Новое расширение `упд5б` (основной контур) + +В `упд5б` концентрируются: +1. все изменения `Documents/СчетФактураВыданный/Ext/ManagerModule.bsl` по данным 5б; +2. все изменения `DataProcessors/ПечатьОбщихФорм/Ext/ManagerModule.bsl` по выводу 5б; +3. перенос и сопровождение `CommonTemplates`: + - `ПФ_MXL_УниверсальныйПередаточныйДокумент2026`, + - `ПФ_MXL_УниверсальныйПередаточныйДокумент2026Прослеж`; +4. опционально (для обратной совместимости) - `ПФ_MXL_УниверсальныйПередаточныйДокумент1096_ru`, если он остается в legacy-ветке. + +### 5.2. Что переносить из `crm3-dev.rhana` в `упд5б` + +Переносу в `упд5б` подлежат доработки, связанные с актуальной печатью УПД и графой 5б: +1. ветка выбора макета для периода 2026+; +2. переключение на `CommonTemplates` `...2026` / `...2026Прослеж`; +3. блок заполнения параметров шапки УПД, который должен включать `АвансовыеСчетаФактуры`. + +### 5.3. Что убрать из `crm3-dev.rhana` после переноса + +После приемки `упд5б` из `crm3-dev.rhana` исключаются дублирующие фрагменты: +1. дублирующее подключение макета 1096 в ветке 2026, если оно заменено на `CommonTemplates` 2026; +2. дублирующая ветка выбора макета 1096/2026; +3. любой дублирующий расчет параметра `АвансовыеСчетаФактуры` (если был добавлен в `crm3-dev.rhana`). + +Удаление выполняется только после тестов регрессии и при подтверждении идентичного поведения в `упд5б`. + +## 6. План реализации (по этапам) + +### Этап 1. Инвентаризация и фиксация baseline + +1. Зафиксировать текущие версии и hash модулей/макетов: + - `crm3-dev/src/Documents/СчетФактураВыданный/...`, + - `crm3-dev/src/DataProcessors/ПечатьОбщихФорм/...`, + - `crm3-dev.rhana/src/...`, + - `crm3-26-promo/src/...`. +2. Составить карту расхождений: методы, поля, ВТ, параметры макета. + +Результат этапа: отчет о diff и точный реестр переносимых фрагментов. + +### Этап 2. Перенос данных 5б + +1. В `упд5б` добавить `упд5б_СтрокаАвансовыеСчетаФактуры(...)`. +2. Расширить `ПоместитьВременнуюТаблицуПлатежноРасчетныхДокументов(...)`. +3. Расширить `ТекстЗапросаПолученияНомеровИДатПлатежноРасчетныхДокументов()`. +4. Расширить формирование `ТекстЗапросаДанныхШапкиДляПечатиСчетаФактуры(...)` с полем `ПредставлениеАвансовыеСчетаФактуры`. + +Результат этапа: данные 5б формируются и доступны в `РезультатПоШапке`. + +### Этап 3. Перенос печати и макетов + +1. Перенести в `упд5б` выбор макета для ветки 2026+. +2. Перенести из `crm3-26-promo` `CommonTemplates`: + - `ПФ_MXL_УниверсальныйПередаточныйДокумент2026`, + - `ПФ_MXL_УниверсальныйПередаточныйДокумент2026Прослеж`. +3. В `ЗаполнитьТабличныйДокументУПД(...)` добавить/сохранить установку `ОбластьШапка.Параметры.АвансовыеСчетаФактуры`. +4. Проверить, что legacy-ветки до 2026 не изменили поведение. + +Результат этапа: графа 5б печатается в УПД по новым макетам 2026/2026Прослеж. + +### Этап 4. Дедубликация `crm3-dev.rhana` + +1. Отключить/удалить дублирующие фрагменты по макету 1096 из `crm3-dev.rhana`. +2. Подтвердить отсутствие конфликтов при одновременном подключении расширений. + +Результат этапа: единая точка ответственности в `упд5б`. + +### Этап 5. Регрессия и приемка + +1. Позитивные сценарии: + - реализация с авансом и исправлением; + - реализация с авансом без исправления; + - без аванса (fallback). +2. Регрессия: + - печать УПД до 2026 (исторические периоды); + - печать УПД после 01.01.2026 (макеты 2026/2026Прослеж); + - пакетная печать смешанных документов. + +Результат этапа: акт приемки и протокол регрессии. + +### Этап 6. Переход структуры данных и обработчики обновления + +1. Подготовить решение по данным для уже созданных документов: + - если строка 5б рассчитывается на лету - обновление данных не требуется; + - если вводится хранение в реквизите/регистре - требуется миграция данных. +2. При необходимости добавить обработчики обновления данных: + - модуль обновления конфигурации/расширения; + - пакетный пересчет `СтрокаАвансовыеСчетаФактуры` для исторических `СчетФактураВыданный`. +3. Добавить контрольные отчеты сверки до/после миграции. + +## 7. Требования по применению расширения с учетом совместимости `crm3-dev` + +Учитывать ограничения `crm3-dev` (`CompatibilityMode = Version8_3_16`): +1. приоритетно использовать `&ИзменениеИКонтроль` в расширении; +2. в блоках `#Удаление` размещать только удаляемый код; +3. комментарии и пояснения размещать только в `#Вставка`; +4. не использовать вставку директив удаления внутрь многострочных литералов запроса; +5. при изменении условных операторов заменять цельный блок `Если ... КонецЕсли` (а не только строку условия); +6. если точка расширения недоступна технически, оформлять точечное изменение в базе отдельным решением с обоснованием. + +## 8. Решение по макетам после 01.01.2026 + +Для новых документов после `01.01.2026` целевые макеты: +1. `ОбщийМакет.ПФ_MXL_УниверсальныйПередаточныйДокумент2026`; +2. `ОбщийМакет.ПФ_MXL_УниверсальныйПередаточныйДокумент2026Прослеж`. + +Исторические макеты (`..._ru`, `..._625_ru`, `...981_ru`, `...534_ru`) не удаляются, потому что: +1. они нужны для корректной печати документов прошлых периодов; +2. они участвуют в проверках совместимости печати смешанных наборов документов; +3. их изменение в рамках полного переноса выполняется только при отдельном бизнес-требовании. + +## 9. Критерии готовности ТЗ №2 к реализации + +1. Согласован перечень переносимых объектов и методов. +2. Согласован перечень удаляемых дубликатов из `crm3-dev.rhana`. +3. Подтвержден способ работы с отсутствующими реквизитами (через расширение или точечно в базе). +4. Утвержден план поэтапного внедрения и регрессии. + diff --git a/docs__ТЗ_3_Внедрение_формы_УПД_в_текущую_рабочую_базу_2026-05-05.md b/docs__ТЗ_3_Внедрение_формы_УПД_в_текущую_рабочую_базу_2026-05-05.md new file mode 100644 index 0000000..0e01360 --- /dev/null +++ b/docs__ТЗ_3_Внедрение_формы_УПД_в_текущую_рабочую_базу_2026-05-05.md @@ -0,0 +1,1807 @@ +--- +title: Техническое задание №260506/3 от 06.05.2026 +document_number: 260506/3 +version: 1.2 +date_created: 2026-05-06 +date_modified: 2026-05-06 +author: Руководитель отдела информационных технологий Кудрявцев М.А. +executor: Руководитель отдела информационных технологий Кудрявцев М.А. +description: ТЗ по фактически реализованному переносу логики УПД (разделы 5, 5а, 5б) из эталонной конфигурации crm3-26-promo в рабочий контур crm3-dev через расширение crm3-dev.upd5b. +status: К приемке +show_metadata_block: true +show_index_link: true +show_toc: true +--- + +# Техническое задание №260506/3 от 06.05.2026 + +## Внедрение формы УПД в текущую рабочую базу. + + +<div style="page-break-before: always;"></div> + +## Оглавление + +- [Техническое задание №260506/3 от 06.05.2026](#техническое-задание-2605063-от-06052026) +- [Внедрение формы УПД в текущую рабочую базу.](#внедрение-формы-упд-в-текущую-рабочую-базу) +- [1. Общая информация](#1-общая-информация) + - [1.1. Реквизиты документа (служебные свойства файла ТЗ)](#11-реквизиты-документа-служебные-свойства-файла-тз) + - [1.2. Основание](#12-основание) + - [1.3. Информационная система (уточненное описание)](#13-информационная-система-уточненное-описание) + - [1.4. Термины, сокращения и условные обозначения](#14-термины-сокращения-и-условные-обозначения) + - [1.4.1. ТЗ](#141-тз) + - [1.4.2. УПД](#142-упд) + - [1.4.3. ИС](#143-ис) + - [1.4.4. СФ; СФА](#144-сф-сфа) + - [1.4.5. ПРД](#145-прд) + - [1.4.6. ВТ](#146-вт) + - [1.4.7. legacy](#147-legacy) + - [1.4.8. fallback](#148-fallback) + - [1.4.9. CommonTemplate](#149-commontemplate) + - [1.4.10. DataProcessor, Document, InformationRegister](#1410-dataprocessor-document-informationregister) + - [1.4.11. Префикс `ПФ\_MXL\_`](#1411-префикс-пф_mxl_) + - [1.4.12. Макеты «2026» и «2026Прослеж»](#1412-макеты-2026-и-2026прослеж) + - [1.4.13. РезультатПоШапке](#1413-результатпошапке) + - [1.4.14. СтрЗаменить](#1414-стрзаменить) + - [1.4.15. Условные имена `crm3-dev`, `crm3-26-promo`](#1415-условные-имена-crm3-dev-crm3-26-promo) + - [1.4.16. Расширения `crm3-dev.rhana`, `crm3-dev.upd5b`; EDT; конфигуратор](#1416-расширения-crm3-devrhana-crm3-devupd5b-edt-конфигуратор) + - [1.4.17. Префикс `упд5б\_` в коде](#1417-префикс-упд5б_-в-коде) + - [1.4.18. Номера актов 534, 981, 625, 1137, 1096](#1418-номера-актов-534-981-625-1137-1096) +- [2. Цель и результат работ](#2-цель-и-результат-работ) + - [2.1. Цель](#21-цель) + - [2.2. Фактически достигнутый результат](#22-фактически-достигнутый-результат) + - [2.2.1. Макеты 2026 года](#221-макеты-2026-года) + - [2.2.2. Цепочка данных для графы 5б](#222-цепочка-данных-для-графы-5б) + - [2.2.3. Поле шапки `ПредставлениеАвансовыеСчетаФактуры`](#223-поле-шапки-представлениеавансовыесчетафактуры) + - [2.2.4. Fallback для строки 5б](#224-fallback-для-строки-5б) + - [2.2.5. Вывод диагностического кода](#225-вывод-диагностического-кода) +- [3. Границы и принципы реализации](#3-границы-и-принципы-реализации) + - [3.1. Точка внедрения](#31-точка-внедрения) + - [3.2. Механизм расширения конфигурации](#32-механизм-расширения-конфигурации) + - [3.3. Совместимость с унаследованными формами (**legacy**, п. 1.4.7)](#33-совместимость-с-унаследованными-формами-legacy-п-147) + - [3.4. Макеты для формы 2026 года](#34-макеты-для-формы-2026-года) +- [4. Реестр измененных объектов (фактически)](#4-реестр-измененных-объектов-фактически) + - [4.0. Имена в расширении и соответствие типовой базе](#40-имена-в-расширении-и-соответствие-типовой-базе) + - [4.1. Расширение и метаданные](#41-расширение-и-метаданные) + - [4.2. Модуль документа СФ выданный](#42-модуль-документа-сф-выданный) + - [4.2.1. `упд5б\_ПоместитьВременнуюТаблицуПлатежноРасчетныхДокументов(...)`](#421-упд5б_поместитьвременнуютаблицуплатежнорасчетныхдокументов) + - [4.2.2. `упд5б\_ЗаполнитьТаблицуПлатежноРасчетныхДокументовПоВыборке(...)`](#422-упд5б_заполнитьтаблицуплатежнорасчетныхдокументовповыборке) + - [4.2.3. `упд5б\_СтрокаАвансовыеСчетаФактуры(...)`](#423-упд5б_строкаавансовыесчетафактуры) + - [4.2.4. `упд5б\_ТекстЗапросаПолученияНомеровИДатПлатежноРасчетныхДокументов()`](#424-упд5б_текстзапросаполученияномеровидатплатежнорасчетныхдокументов) + - [4.2.5. `упд5б\_ТекстЗапросаДанныхШапкиДляПечатиСчетаФактуры(...)`](#425-упд5б_текстзапросаданныхшапкидляпечатисчетафактуры) + - [4.3. Модуль печати](#43-модуль-печати) + - [4.3.1. `упд5б\_ЗаполнитьТабличныйДокументУПД(...)`](#431-упд5б_заполнитьтабличныйдокументупд) + - [4.3.2. `ДействуетПостановление2026(...)`](#432-действуетпостановление2026) + - [4.3.3. `упд5б\_ПолучитьПредставлениеАвансовыхСчетовФактурДляПечати(...)`](#433-упд5б_получитьпредставлениеавансовыхсчетовфактурдляпечати) + - [4.3.4. `упд5б\_ДобавитьОтсутствующиеКолонкиВТаблицуЗначений(...)`](#434-упд5б_добавитьотсутствующиеколонкивтаблицузначений) + - [4.3.5. `упд5б\_ПолучитьЗначениеПоУмолчаниюПоТипу(...)`](#435-упд5б_получитьзначениепоумолчаниюпотипу) + - [4.3.6. `упд5б\_ОпределитьТипКолонкиПоИмени(...)`](#436-упд5б_определитьтипколонкипоимени) +- [5. Детализация доработок по разделам 5, 5а, 5б](#5-детализация-доработок-по-разделам-5-5а-5б) + - [5.1. Раздел 5 (по документу оплаты)](#51-раздел-5-по-документу-оплаты) + - [5.1.1. Фактическая реализация](#511-фактическая-реализация) + - [5.1.2. Ориентиры в коде](#512-ориентиры-в-коде) + - [5.2. Раздел 5а (документы об отгрузке)](#52-раздел-5а-документы-об-отгрузке) + - [5.2.1. Фактическая реализация](#521-фактическая-реализация) + - [5.2.2. Ориентиры в коде](#522-ориентиры-в-коде) + - [5.3. Раздел 5б (авансовые счета-фактуры)](#53-раздел-5б-авансовые-счета-фактуры) + - [5.3.1. Фактическая реализация - контур данных](#531-фактическая-реализация---контур-данных) + - [5.3.2. Фактическая реализация - контур печати](#532-фактическая-реализация---контур-печати) + - [5.3.3. Ориентиры в коде](#533-ориентиры-в-коде) +- [6. Перенос логики выбора макетов УПД](#6-перенос-логики-выбора-макетов-упд) + - [6.1. Фактическая реализация](#61-фактическая-реализация) + - [6.1.1. Признак `ЕстьПостановление2026`](#611-признак-естьпостановление2026) + - [6.1.2. Выбор макета `CommonTemplate` для 2026](#612-выбор-макета-commontemplate-для-2026) + - [6.1.3. Переходный период 1096](#613-переходный-период-1096) + - [6.1.4. Унаследованные (**legacy**) ветки до 01.10.2024](#614-унаследованные-legacy-ветки-до-01102024) + - [6.1.5. Запрет некорректной смешанной печати](#615-запрет-некорректной-смешанной-печати) + - [6.2. Ориентиры в коде](#62-ориентиры-в-коде) +- [7. Сравнение с эталонной конфигурацией `crm3-26-promo`](#7-сравнение-с-эталонной-конфигурацией-crm3-26-promo) + - [7.1. Стороны и версии сопоставления](#71-стороны-и-версии-сопоставления) + - [7.2. Согласование с эталоном по целевым элементам формы УПД](#72-согласование-с-эталоном-по-целевым-элементам-формы-упд) + - [7.3. Отличия, обусловленные средой `crm3-dev` и технологией расширений](#73-отличия-обусловленные-средой-crm3-dev-и-технологией-расширений) + - [7.4. Осознанное отличие от эталона (дополнительный контур печати)](#74-осознанное-отличие-от-эталона-дополнительный-контур-печати) + - [7.5. Промежуточный вывод и отсылка к разделу 12](#75-промежуточный-вывод-и-отсылка-к-разделу-12) +- [8. Ограничения и допущения](#8-ограничения-и-допущения) + - [8.1. Исправление в тексте строки 5б](#81-исправление-в-тексте-строки-5б) + - [8.2. Хрупкость вставки поля через `СтрЗаменить`](#82-хрупкость-вставки-поля-через-стрзаменить) + - [8.3. Предварительные условия работы fallback](#83-предварительные-условия-работы-fallback) +- [9. Критерии приемки по ТЗ №3](#9-критерии-приемки-по-тз-3) + - [9.1. Графа 5б при наличии данных](#91-графа-5б-при-наличии-данных) + - [9.2. Графа 5б при отсутствии данных](#92-графа-5б-при-отсутствии-данных) + - [9.3. Графа 5а](#93-графа-5а) + - [9.4. Графа 5 (**legacy**, п. 1.4.7)](#94-графа-5-legacy-п-147) + - [9.5. Смешанная печать](#95-смешанная-печать) +- [10. Перечень поставки по результату внедрения](#10-перечень-поставки-по-результату-внедрения) + - [10.1. Расширение конфигурации](#101-расширение-конфигурации) + - [10.2. Макеты печатных форм](#102-макеты-печатных-форм) + - [10.3. Программные модули](#103-программные-модули) + - [10.4. Настоящее техническое задание](#104-настоящее-техническое-задание) +- [11. Приложение А. Полный добавленный код (к типовому)](#11-приложение-а-полный-добавленный-код-к-типовому) + - [11.1. `Documents/СчетФактураВыданный/Ext/ManagerModule.bsl`](#111-documentsсчетфактуравыданныйextmanagermodulebsl) + - [11.2. `DataProcessors/ПечатьОбщихФорм/Ext/ManagerModule.bsl`](#112-dataprocessorsпечатьобщихформextmanagermodulebsl) + - [11.3. `Configuration.xml` (дополнительные объекты)](#113-configurationxml-дополнительные-объекты) +- [12. Соответствие и расхождения с эталонной конфигурацией `crm3-26-promo`](#12-соответствие-и-расхождения-с-эталонной-конфигурацией-crm3-26-promo) + - [12.1. Эталон для сравнения (уточнение)](#121-эталон-для-сравнения-уточнение) + - [12.2. Соответствие реализации (что перенесено эквивалентно)](#122-соответствие-реализации-что-перенесено-эквивалентно) + - [12.2.1. Макеты нового формата УПД](#1221-макеты-нового-формата-упд) + - [12.2.2. Строка графы 5б](#1222-строка-графы-5б) + - [12.2.3. Регистр `ЖурналУчетаСчетовФактур`](#1223-регистр-журналучетасчетовфактур) + - [12.2.4. Поле `ПредставлениеАвансовыеСчетаФактуры`](#1224-поле-представлениеавансовыесчетафактуры) + - [12.2.5. Параметр шапки печати](#1225-параметр-шапки-печати) + - [12.3. Адаптации под `crm3-dev` (допустимые расхождения без потери результата)](#123-адаптации-под-crm3-dev-допустимые-расхождения-без-потери-результата) + - [12.3.1. Связь с документом `СчетФактураВыданныйАванс`](#1231-связь-с-документом-счетфактуравыданныйаванс) + - [12.3.2. Вставка поля в текст запроса шапки](#1232-вставка-поля-в-текст-запроса-шапки) + - [12.3.3. Ветвление по датам (1096 и 2026)](#1233-ветвление-по-датам-1096-и-2026) + - [12.3.4. Области макета для наборов](#1234-области-макета-для-наборов) + - [12.4. Целевые функциональные расхождения (осознанные)](#124-целевые-функциональные-расхождения-осознанные) + - [12.4.1. Дополнительный fallback (п. 1.4.8) в печати](#1241-дополнительный-fallback-п-148-в-печати) + - [12.4.2. Обоснование отличия от эталона](#1242-обоснование-отличия-от-эталона) + - [12.4.3. При отсутствии данных исправления](#1243-при-отсутствии-данных-исправления) + - [12.5. Вывод по соответствию](#125-вывод-по-соответствию) + - [12.5.1. Бизнес-результат](#1251-бизнес-результат) + - [12.5.2. Характер остальных расхождений](#1252-характер-остальных-расхождений) + - [12.6. Формальная таблица соответствия](#126-формальная-таблица-соответствия) + - [12.6.1. Макет УПД для 2026](#1261-макет-упд-для-2026) + - [12.6.2. Макет УПД 2026 (прослеживаемые товары)](#1262-макет-упд-2026-прослеживаемые-товары) + - [12.6.3. Раздел 5 (по документу оплаты)](#1263-раздел-5-по-документу-оплаты) + - [12.6.4. Раздел 5а (документы отгрузки)](#1264-раздел-5а-документы-отгрузки) + - [12.6.5. Раздел 5б (данные)](#1265-раздел-5б-данные) + - [12.6.6. Поле шапки 5б](#1266-поле-шапки-5б) + - [12.6.7. Вывод 5б в печатную форму](#1267-вывод-5б-в-печатную-форму) + - [12.6.8. Источник номера и даты СФ на аванс](#1268-источник-номера-и-даты-сф-на-аванс) + - [12.6.9. Связка ПРД и СФ на аванс](#1269-связка-прд-и-сф-на-аванс) + - [12.6.10. Поведение при пустом значении 5б в шапке](#12610-поведение-при-пустом-значении-5б-в-шапке) + - [12.6.11. Совместимость с периодом 01.10.2024–31.12.2025](#12611-совместимость-с-периодом-0110202431122025) + - [12.6.12. Совместимость со старыми форматами](#12612-совместимость-со-старыми-форматами) +- [13. Приложение Б. Реестр изменений в формате "объект -> метод -> фрагмент -> назначение"](#13-приложение-б-реестр-изменений-в-формате-объект---метод---фрагмент---назначение) + - [13.1. Модуль `СчетФактураВыданный`](#131-модуль-счетфактуравыданный) + - [13.2. Модуль `ПечатьОбщихФорм`](#132-модуль-печатьобщихформ) + - [13.3. Метаданные расширения](#133-метаданные-расширения) +- [14. Исправления и доработки](#14-исправления-и-доработки) + - [14.1. Корректировка вывода графы 5б (версия 1.0.0.37)](#141-корректировка-вывода-графы-5б-версия-10037) + - [14.2. Заполнение граф 1а, А, 5, 9 в УПД 2026 (версия 1.0.2.46)](#142-заполнение-граф-1а-а-5-9-в-упд-2026-версия-10246) + - [14.3. Заполнение графы 10а в УПД 2026 (версия 1.0.2.47)](#143-заполнение-графы-10а-в-упд-2026-версия-10247) + - [14.4. Заполнение итоговых граф 5 и 9 в УПД 2026 (версия 1.0.2.48)](#144-заполнение-итоговых-граф-5-и-9-в-упд-2026-версия-10248) + - [14.5. Исключение чужих СФА в графе 5б при совпадающих ПРД (версия 1.0.2.49)](#145-исключение-чужих-сфа-в-графе-5б-при-совпадающих-прд-версия-10249) + - [14.6. Исключение заглушки исправления в графе 5б (версия 1.0.2.50)](#146-исключение-заглушки-исправления-в-графе-5б-версия-10250) + - [14.7. Пакет доработок УПД 2026 по подвалу и ответственным лицам (версии 1.0.2.51-1.0.2.72)](#147-пакет-доработок-упд-2026-по-подвалу-и-ответственным-лицам-версии-1025110272) + - [14.8. Пакет доработок представления номенклатуры, серии и срока годности в УПД 2026 (версии 1.0.2.73-1.0.2.90)](#148-пакет-доработок-представления-номенклатуры-серии-и-срока-годности-в-упд-2026-версии-1027310290) +- [Технический комментарий](#технический-комментарий) + +## 1. Общая информация + +### 1.1. Реквизиты документа (служебные свойства файла ТЗ) + +Ниже приведены поля машиночитаемого блока описания («front matter», YAML при открытии файла Markdown). При смене реквизитов они должны синхронно обновляться и здесь, и в этом блоке свойств файла. + +- Номер документа (`document\_number`): **260506/3**. + +- Версия документа (`version`): **1.2**. + +- Дата создания (`date\_created`): **06.05.2026**. + +- Дата последней редакции (`date\_modified`): **06.05.2026**. + +- Автор (`author`): **Руководитель отдела информационных технологий Кудрявцев М.А.** + +- Исполнитель (`executor`): **Руководитель отдела информационных технологий Кудрявцев М.А.** + +- Описание (`description`): ТЗ по фактически реализованному переносу логики УПД (разделы 5, 5а, 5б) из эталонной конфигурации crm3-26-promo в рабочий контур crm3-dev через расширение crm3-dev.upd5b. + +- Статус (`status`): **К приемке**. + +- Параметры отображения при конвертации: `show\_metadata\_block: true`; `show\_index\_link: true`; `show\_toc: true`. + +### 1.2. Основание + +Настоящее ТЗ сформировано по результатам **фактической реализации** доработок печати УПД в целевой информационной системе; сличение с эталонной конфигурацией **`crm3-26-promo`** изложено в **разделе 7** (сводно) и **разделе 12** (детально). + +1. Реализация переноса формы УПД 2026 и граф **5**, **5а**, **5б** выполнена в расширении **`crm3-dev.upd5b`** как единая точка по графе **5б** (не в **`crm3-dev.rhana`**). + +2. Для графы **5б** в печати применён дополнительный **fallback** при пустом значении **`ПредставлениеАвансовыеСчетаФактуры`** в шапке. + +3. Диагностические вставки, использованные при отладке, из продуктового кода удалены. + +4. Настоящий документ фиксирует **факт** внедрённой реализации, а не план работ. + +### 1.3. Информационная система (уточненное описание) + +Целевая рабочая ИС: **`crm3-dev`** (основная прикладная конфигурация) с параллельно используемыми расширениями. Текущие версии: + +- **Конфигурация `crm3-dev`** — рабочая прикладная конфигурация, версия **`3.0.22.28`**, режим совместимости **`Version8\_3\_16`**. + +- **Расширение `crm3-dev.rhana`** — действующие проектные доработки (в т.ч. печать/УПД и смежная функциональность), версия **`3.0.22.26/1.0.1.322`**, режим совместимости **`Version8\_3\_14`**. + +- **Расширение `crm3-dev.upd5b`** — реализация переноса логики УПД (разделы 5/5а/5б и макеты 2026), версия **`1.0.2.90`**, режим совместимости **`Version8\_3\_16`**. + +- **Эталонная конфигурация `crm3-26-promo`** (для сравнения) — версия **`3.1.35.11`**, режим совместимости **`Version8\_3\_27`**. + +### 1.4. Термины, сокращения и условные обозначения + +Ниже приведены пояснения к неодноязычным терминам, аббревиатурам и условным именам объектов конфигурации, встречающимся в настоящем документе. Имена реквизитов и объектов платформы 1С сохранены в форме, принятой в метаданных. **Нумерация подпунктов 1.4.1–1.4.18** используется в тексте ТЗ для отсылок вида «п. 1.4.N». + +#### 1.4.1. ТЗ + +Техническое задание. + +#### 1.4.2. УПД + +Универсальный передаточный документ; в учете — печатная форма, совмещающая передаточный документ и счет-фактуру, требования к графам и макетам задаются нормативными актами Правительства РФ. + +#### 1.4.3. ИС + +Информационная система (в контексте ТЗ — прикладная конфигурация «1С:Предприятие» и информационная база). + +#### 1.4.4. СФ; СФА + +**СФ** — счёт-фактура. Уточняющее обозначение **СФ на аванс** / в кодовых именах связки **СФА** — документ `СчетФактураВыданныйАванс`. + +#### 1.4.5. ПРД + +Платёжно-расчётные документы: сведения о платёжных документах для целей регистрации счёта-фактуры (табличная часть счёта-фактуры выданного «ПлатежноРасчетныеДокументы», а также связанные реквизиты в смежных документах). + +#### 1.4.6. ВТ + +Временная таблица в тексте запроса на языке запросов 1С (промежуточный результат `ПОМЕСТИТЬ …` при подготовке данных печати). + +#### 1.4.7. legacy + +*(англ. «унаследованный»)* — здесь не «устаревший код», а **ветви печати и макеты УПД для документов с датами, не подпадающими под редакцию формы 2026 года** и ранее принятые постановления о форме УПД. Эти ветки сохранены для воспроизводимости печати прошлых периодов. + +#### 1.4.8. fallback + +*(англ. «запасной сценарий»)* — **дополнительный расчёт значения** (например, строки раздела 5б в шапке УПД), если основная цепочка подготовки данных не передала нужное поле или вернула пустое значение. + +#### 1.4.9. CommonTemplate + +Вид метаданных конфигурации **«общий макет»**: хранит табличную печатную форму, используется при указании объектов вида `CommonTemplate.ИмяМакета`. + +#### 1.4.10. DataProcessor, Document, InformationRegister + +Стандартные **англоязычные имена типов объектов метаданных** платформы 1С в выгрузке в файлы и в синтакс-помощнике: соответственно **обработка**, **документ**, **регистр сведений**. + +#### 1.4.11. Префикс `ПФ\_MXL\_` + +В имени общего макета означает, что представление счёта-фактуры/УПД хранится как **табличный документ** (офисный формат печати платформы, аналог макета таблицы Excel или OpenDocument). + +#### 1.4.12. Макеты «2026» и «2026Прослеж» + +Два подключённых макета общего назначения: обычный УПД по форме, действующей с учётным годом перехода на постановление о форме 2026 года, и вариант **с блоками учёта прослеживаемости отдельных товаров** (обеспечивается отдельным макетом «Прослеж»). + +#### 1.4.13. РезультатПоШапке + +В коде условное имя набора строк/полей **результата запроса по реквизитам счёта-фактуры для заполнения шапки** печатной формы УПД. + +#### 1.4.14. СтрЗаменить + +Встроенная функция платформы **поиска и замены подстроки** в тексте (используется для включения дополнительного поля в текст запроса без полного копирования запроса). + +#### 1.4.15. Условные имена `crm3-dev`, `crm3-26-promo` + +Имена ветки/выгрузки конфигурации в репозитории проекта: рабочая расширяемая конфигурация и **эталон** для сверки логики соответственно. + +#### 1.4.16. Расширения `crm3-dev.rhana`, `crm3-dev.upd5b`; EDT; конфигуратор + +Имена расширений конфигурации **`crm3-dev`** (суффикс после точки — идентификатор расширения при выгрузке в дерево файлов). **EDT** *(англ. Enterprise Development Tools)* — официальная среда разработки конфигураций 1С на базе Eclipse; **конфигуратор** — встроенный режим разработки в клиенте «1С:Предприятие». Сокращение **upd5b** в имени папки расширения отражает проектную привязку к доработке **УПД, раздел 5б** (и смежным графам 5, 5а). + +#### 1.4.17. Префикс `упд5б\_` в коде + +Префикс **`упд5б\_`** используется в именах процедур и функций **внутри текста расширения** `crm3-dev.upd5b`, чтобы отличать доработку от типового кода. Для точек, подключённых директивой **`&ИзменениеИКонтроль("ИмяТиповой")`**, имя после префикса **`упд5б\_`** совпадает с именем **расширяемой** процедуры или функции в типовой конфигурации (в кавычках у директивы). Полный перечень таких пар и отдельно введённых процедур приведён в **разделе 4** (пояснение перед реестром и подпункты 4.2–4.3). + +#### 1.4.18. Номера актов 534, 981, 625, 1137, 1096 + +В тексте кода означают **ветки соответствия постановлениям Правительства РФ о форме счёта-фактуры/УПД** и переходным датам между редакциями макетов; применяются условными датами в программе до введения формы 2026 года. + + +## 2. Цель и результат работ + +### 2.1. Цель + +Обеспечить корректное формирование и печать УПД для нового формата 2026 с корректным заполнением: + +- графы **5** (платежно-расчетный документ), + +- графы **5а** (документы об отгрузке), + +- графы **5б** (авансовые счета-фактуры), с сохранением работоспособности унаследованных веток печати УПД **legacy** для документов вне режима формы 2026 года (см. п. 1.4.7). + +### 2.2. Фактически достигнутый результат + +#### 2.2.1. Макеты 2026 года + +Подключены и применяются макеты **общего макета** (`CommonTemplate`, п. 1.4.9) для вариантов **2026** и **2026Прослеж** (п. 1.4.12) в расширении `upd5b` (п. 1.4.16). + +#### 2.2.2. Цепочка данных для графы 5б + +Данные для графы 5б формируются по цепочке **ПРД** → **СФ на аванс** → регистр `ЖурналУчетаСчетовФактур` (сокращения **ПРД**, **СФ** — п. 1.4.4–1.4.5). + +#### 2.2.3. Поле шапки `ПредставлениеАвансовыеСчетаФактуры` + +Поле `ПредставлениеАвансовыеСчетаФактуры` протянуто в набор данных печати шапки (**`РезультатПоШапке`**, п. 1.4.13). + +#### 2.2.4. Fallback для строки 5б + +В печати УПД для 2026 реализован устойчивый **запасной расчёт** (**fallback**, п. 1.4.8) поля 5б, если входное поле пустое. + +#### 2.2.5. Вывод диагностического кода + +Диагностические блоки удалены из **эксплуатационного** (не отладочного) кода после подтверждения работоспособности. + + +## 3. Границы и принципы реализации + +### 3.1. Точка внедрения + +Все изменения сделаны в расширении `crm3-dev.upd5b`. + +### 3.2. Механизм расширения конфигурации + +Применены механизмы `&ИзменениеИКонтроль`, блоки `\#Удаление/\#Вставка`. + +### 3.3. Совместимость с унаследованными формами (**legacy**, п. 1.4.7) + +Унаследованные (**legacy**) периоды и макеты до формы 2026 года не удалены и не заменены целиком. + +### 3.4. Макеты для формы 2026 года + +Для 2026 применяются макеты: + +- `ОбщийМакет.ПФ\_MXL\_УниверсальныйПередаточныйДокумент2026`; + +- `ОбщийМакет.ПФ\_MXL\_УниверсальныйПередаточныйДокумент2026Прослеж`. + + +## 4. Реестр измененных объектов (фактически) + +### 4.0. Имена в расширении и соответствие типовой базе + +В тексте расширения фигурируют имена вида **`упд5б\_ИмяКакВТиповой`**. Для процедур и функций, оформленных через **`&ИзменениеИКонтроль("…")`**, это **то же имя**, что у расширяемой процедуры/функции в типовой конфигурации, с добавленным префиксом `упд5б\_` (требование механизма «Изменение и контроль» — в типовом коде по-прежнему вызывается имя **без** префикса, перенаправление выполняет платформа). + +1. **`упд5б\_ПоместитьВременнуюТаблицуЗаполненияПлатежноРасчетныхДокументов`** расширяет типовую процедуру **`ПоместитьВременнуюТаблицуЗаполненияПлатежноРасчетныхДокументов`** — модуль менеджера **`Документ.СчетФактураВыданный`**. + +2. **`упд5б\_ПоместитьВременнуюТаблицуПлатежноРасчетныхДокументов`** расширяет **`ПоместитьВременнуюТаблицуПлатежноРасчетныхДокументов`** — тот же модуль менеджера. + +3. **`упд5б\_ЗаполнитьТаблицуПлатежноРасчетныхДокументовПоВыборке`** расширяет **`ЗаполнитьТаблицуПлатежноРасчетныхДокументовПоВыборке`** — тот же модуль менеджера. + +4. **`упд5б\_ТекстЗапросаПолученияНомеровИДатПлатежноРасчетныхДокументов`** расширяет **`ТекстЗапросаПолученияНомеровИДатПлатежноРасчетныхДокументов`** — тот же модуль менеджера. + +5. **`упд5б\_ТекстЗапросаДанныхШапкиДляПечатиСчетаФактуры`** расширяет **`ТекстЗапросаДанныхШапкиДляПечатиСчетаФактуры`** — тот же модуль менеджера. + +6. **`упд5б\_ЗаполнитьТабличныйДокументУПД`** расширяет **`ЗаполнитьТабличныйДокументУПД`** — модуль менеджера **`Обработка.ПечатьОбщихФорм`**. + +**Вновь добавленные** в расширении процедуры и функции (в типовой конфигурации **нет** одноимённой расширяемой процедуры с тем же смыслом подключения «Изменение и контроль»): **`упд5б\_СтрокаАвансовыеСчетаФактуры`**, **`упд5б\_ПолучитьПредставлениеАвансовыхСчетовФактурДляПечати`**, **`упд5б\_ДобавитьОтсутствующиеКолонкиВТаблицуЗначений`**, **`упд5б\_ПолучитьЗначениеПоУмолчаниюПоТипу`**, **`упд5б\_ОпределитьТипКолонкиПоИмени`**, а также **`ДействуетПостановление2026`** — вызываются из кода расширенных процедур печати и подготовки данных. + +### 4.1. Расширение и метаданные + +- `crm3-dev.upd5b/src/Configuration.xml` + + - актуальная версия расширения: `1.0.2.90`; + + - включены объекты: + + - `Document.СчетФактураВыданный`, + + - `Document.СчетФактураВыданныйАванс`, + + - `DataProcessor.ПечатьОбщихФорм`, + + - `InformationRegister.ЖурналУчетаСчетовФактур`, + + - `CommonTemplate.ПФ\_MXL\_УниверсальныйПередаточныйДокумент2026`, + + - `CommonTemplate.ПФ\_MXL\_УниверсальныйПередаточныйДокумент2026Прослеж`. + +### 4.2. Модуль документа СФ выданный + +- `crm3-dev.upd5b/src/Documents/СчетФактураВыданный/Ext/ManagerModule.bsl` + +Измененные или добавленные точки входа (имена типовой базы — п. 4.0). **Дополнительно** в этом же модуле расширена процедура **`упд5б\_ПоместитьВременнуюТаблицуЗаполненияПлатежноРасчетныхДокументов`** (типовая **`ПоместитьВременнуюТаблицуЗаполненияПлатежноРасчетныхДокументов`**, см. п. 4.0) — ниже отдельным подпунктом не выделена. + +#### 4.2.1. `упд5б\_ПоместитьВременнуюТаблицуПлатежноРасчетныхДокументов(...)` + +Расширяемая типовая процедура: **`ПоместитьВременнуюТаблицуПлатежноРасчетныхДокументов`**. + +#### 4.2.2. `упд5б\_ЗаполнитьТаблицуПлатежноРасчетныхДокументовПоВыборке(...)` + +Расширяемая типовая процедура: **`ЗаполнитьТаблицуПлатежноРасчетныхДокументовПоВыборке`**. + +#### 4.2.3. `упд5б\_СтрокаАвансовыеСчетаФактуры(...)` + +**Не** замена одноимённой типовой: **новая** экспортируемая функция; вызывается из кода расширенных процедур подготовки ПРД. + +#### 4.2.4. `упд5б\_ТекстЗапросаПолученияНомеровИДатПлатежноРасчетныхДокументов()` + +Расширяемая типовая функция: **`ТекстЗапросаПолученияНомеровИДатПлатежноРасчетныхДокументов`**. + +#### 4.2.5. `упд5б\_ТекстЗапросаДанныхШапкиДляПечатиСчетаФактуры(...)` + +Расширяемая типовая функция: **`ТекстЗапросаДанныхШапкиДляПечатиСчетаФактуры`**. + +### 4.3. Модуль печати + +- `crm3-dev.upd5b/src/DataProcessors/ПечатьОбщихФорм/Ext/ManagerModule.bsl` + +Измененные или добавленные точки входа (имена типовой базы — п. 4.0): + +#### 4.3.1. `упд5б\_ЗаполнитьТабличныйДокументУПД(...)` + +Расширяемая типовая процедура: **`ЗаполнитьТабличныйДокументУПД`**. + +#### 4.3.2. `ДействуетПостановление2026(...)` + +**Не** замена одноимённой типовой: **новая** функция; используется внутри расширенной **`ЗаполнитьТабличныйДокументУПД`**. + +#### 4.3.3. `упд5б\_ПолучитьПредставлениеАвансовыхСчетовФактурДляПечати(...)` + +**Не** замена одноимённой типовой: **новая** функция; вызывается из расширенной **`ЗаполнитьТабличныйДокументУПД`**. + +#### 4.3.4. `упд5б\_ДобавитьОтсутствующиеКолонкиВТаблицуЗначений(...)` + +**Не** замена одноимённой типовой: **новая** процедура; вызывается из расширенной **`ЗаполнитьТабличныйДокументУПД`**. + +#### 4.3.5. `упд5б\_ПолучитьЗначениеПоУмолчаниюПоТипу(...)` + +**Не** замена одноимённой типовой: **новая** функция; вспомогательная для п. 4.3.4. + +#### 4.3.6. `упд5б\_ОпределитьТипКолонкиПоИмени(...)` + +**Не** замена одноимённой типовой: **новая** функция; вспомогательная для п. 4.3.4. + + +## 5. Детализация доработок по разделам 5, 5а, 5б + +### 5.1. Раздел 5 (по документу оплаты) + +#### 5.1.1. Фактическая реализация + +1. Базовое поле `СтрокаПоДокументу` сохранено как источник графы 5. + +2. В модуле `СчетФактураВыданный` сохранена/поддержана логика формирования ПРД на основании платежных документов. + +3. В печати `ПечатьОбщихФорм` значение по разделу 5 продолжает использоваться через `ДанныеПечати.СтрокаПоДокументу`. + +#### 5.1.2. Ориентиры в коде + +- `Documents/.../ManagerModule.bsl`: формирование `СтрокаПлатежноРасчетныеДокументы`. + +- `Documents/.../ManagerModule.bsl`: блок `КАК СтрокаПоДокументу` в расширении функции **`упд5б\_ТекстЗапросаДанныхШапкиДляПечатиСчетаФактуры`** (типовая **`ТекстЗапросаДанныхШапкиДляПечатиСчетаФактуры`**). + +- `DataProcessors/.../ManagerModule.bsl`: заполнение шапки УПД через существующую логику `ПоДокументу`. + + +### 5.2. Раздел 5а (документы об отгрузке) + +#### 5.2.1. Фактическая реализация + +1. Для legacy-форм сохранено заполнение `ПоДокументуОтгрузки`. + +2. Для 2026 добавлено заполнение `ДокументыОбОтгрузке`: + + - шаблон: `Универсальный передаточный документ, № \<номер\> от \<дата\>`. + +3. Для новых макетов обеспечена совместимость логики строк и наборов: + + - для 2026 области наборов берутся из `Строка` при отсутствии специфичных областей `СтрокаНабор`. + +#### 5.2.2. Ориентиры в коде + +- `DataProcessors/ПечатьОбщихФорм/Ext/ManagerModule.bsl`: + + - блок `Заполняем документ отгрузки для графы 5а`; + + - присваивание `ОбластьШапка.Параметры.ДокументыОбОтгрузке`; + + - блок выбора `ОбластьСтрокаНабор/ОбластьСтрокаКомплектующие` с условием `ЕстьПостановление2026`. + + +### 5.3. Раздел 5б (авансовые счета-фактуры) + +#### 5.3.1. Фактическая реализация - контур данных + +1. В таблицу ПРД добавлены колонки для 5б: + + - `НомерСчетаФактурыНаАванс`, + + - `ДатаСчетаФактурыНаАванс`, + + - `НомерИсправленияСчетаФактурыНаАванс`, + + - `ДатаИсправленияСчетаФактурыНаАванс`, + + - служебно: `РасчетныйДокумент`. + +2. Реализована сборка итоговой строки 5б в **`упд5б\_СтрокаАвансовыеСчетаФактуры`** (новая функция расширения, см. п. 4.0). + +3. Колонка `СтрокаАвансовыеСчетаФактуры` добавлена в ВТ `ТаблицаПлатежноРасчетныеДокументы`. + +4. В запрос шапки УПД добавлено поле `ПредставлениеАвансовыеСчетаФактуры`. + +5. Для объединяемой ветки (`ОБЪЕДИНИТЬ ВСЕ`) добавлена пустая колонка `ПредставлениеАвансовыеСчетаФактуры` для согласованности структуры. + +#### 5.3.2. Фактическая реализация - контур печати + +1. В расширении процедуры **`упд5б\_ЗаполнитьТабличныйДокументУПД`** (типовая **`ЗаполнитьТабличныйДокументУПД`**, см. п. 4.0) добавлено чтение поля `ПредставлениеАвансовыеСчетаФактуры`. + +2. Для сценария 2026 добавлен устойчивый fallback: + + - если входное `ПредставлениеАвансовыеСчетаФактуры` пустое, вызывается **`упд5б\_ПолучитьПредставлениеАвансовыхСчетовФактурДляПечати`** (новая функция, см. п. 4.0). + +3. В fallback-функции выполняется прямой запрос: + + - `СчетФактураВыданный.ПлатежноРасчетныеДокументы` + + - -> `СчетФактураВыданныйАванс` (по номеру/дате ПРД) + + - -> `ЖурналУчетаСчетовФактур` (номер/дата СФ на аванс). + +4. Результат передается в `ОбластьШапка.Параметры.АвансовыеСчетаФактуры` для макетов 2026. + +#### 5.3.3. Ориентиры в коде + +- `Documents/СчетФактураВыданный/Ext/ManagerModule.bsl`: + + - **`упд5б\_ПоместитьВременнуюТаблицуПлатежноРасчетныхДокументов`** (типовая **`ПоместитьВременнуюТаблицуПлатежноРасчетныхДокументов`**); + + - **`упд5б\_ЗаполнитьТаблицуПлатежноРасчетныхДокументовПоВыборке`** (типовая **`ЗаполнитьТаблицуПлатежноРасчетныхДокументовПоВыборке`**); + + - **`упд5б\_СтрокаАвансовыеСчетаФактуры`** (новая); + + - **`упд5б\_ТекстЗапросаПолученияНомеровИДатПлатежноРасчетныхДокументов`** (типовая **`ТекстЗапросаПолученияНомеровИДатПлатежноРасчетныхДокументов`**); + + - **`упд5б\_ТекстЗапросаДанныхШапкиДляПечатиСчетаФактуры`** (типовая **`ТекстЗапросаДанныхШапкиДляПечатиСчетаФактуры`**). + +- `DataProcessors/ПечатьОбщихФорм/Ext/ManagerModule.bsl`: + + - блок вычисления `ВходПредставлениеАвансовыеСчетаФактуры` внутри **`упд5б\_ЗаполнитьТабличныйДокументУПД`** (типовая **`ЗаполнитьТабличныйДокументУПД`**); + + - вызов **`упд5б\_ПолучитьПредставлениеАвансовыхСчетовФактурДляПечати`** (новая); + + - присвоение `ОбластьШапка.Параметры.АвансовыеСчетаФактуры`. + + +## 6. Перенос логики выбора макетов УПД + +### 6.1. Фактическая реализация + +#### 6.1.1. Признак `ЕстьПостановление2026` + +Добавлен признак для ветвления логики печати новой формы. + +#### 6.1.2. Выбор макета `CommonTemplate` для 2026 + +Выбор макета для 2026 вынесен на `CommonTemplate` 2026 и 2026Прослеж. + +#### 6.1.3. Переходный период 1096 + +Период `01.10.2024 – 31.12.2025` оставлен на ветке 1096. + +#### 6.1.4. Унаследованные (**legacy**) ветки до 01.10.2024 + +Legacy-ветки до `01.10.2024` (номера актов см. п. 1.4.18) сохранены и ограничены эффективной датой документа. + +#### 6.1.5. Запрет некорректной смешанной печати + +Добавлен контроль запрета смешанной печати новых и старых форматов. + +### 6.2. Ориентиры в коде + +- `DataProcessors/ПечатьОбщихФорм/Ext/ManagerModule.bsl` — процедура **`упд5б\_ЗаполнитьТабличныйДокументУПД`** (типовая **`ЗаполнитьТабличныйДокументУПД`**, см. п. 4.0): + + - блок выбора макетов с `ЭффективнаяДатаУПД`; + + - блок `Если ДействуетПостановление2026(...) Тогда` (новая функция, п. 4.0); + + - использование `ОбщийМакет.ПФ\_MXL\_УниверсальныйПередаточныйДокумент2026`; + + - использование `ОбщийМакет.ПФ\_MXL\_УниверсальныйПередаточныйДокумент2026Прослеж`. + + +## 7. Сравнение с эталонной конфигурацией `crm3-26-promo` + +Настоящий раздел даёт **сводное** сопоставление фактической реализации в **`crm3-dev`** + **`crm3-dev.upd5b`** с **эталонной** конфигурацией переноса **`crm3-26-promo`**. Подробная разбивка по компонентам, адаптациям и формальная матрица соответствия приведены в **разделе 12** (в т.ч. п. **12.6**). + +### 7.1. Стороны и версии сопоставления + +1. **Эталон:** конфигурация **`crm3-26-promo`**, версия прикладной конфигурации **`3.1.35.11`**, режим совместимости платформы **`Version8\_3\_27`**. + +2. **Сравниваемая реализация:** конфигурация **`crm3-dev`**, версия **`3.0.22.28`**, режим совместимости **`Version8\_3\_16`**, доработки в расширении **`crm3-dev.upd5b`**. + +### 7.2. Согласование с эталоном по целевым элементам формы УПД + +Реализация **сходна с эталоном** по ожидаемому результату для пользователя и учёта в следующих элементах: + +1. Подключение и использование общих макетов **`ПФ\_MXL\_УниверсальныйПередаточныйДокумент2026`** и **`ПФ\_MXL\_УниверсальныйПередаточныйДокумент2026Прослеж`**. + +2. Формирование строки раздела **5б** на основе данных **авансовых счетов-фактур** с опорой на регистр сведений **`ЖурналУчетаСчетовФактур`** как основной источник номера и даты СФ на аванс. + +3. Наличие в наборе данных печати шапки поля **`ПредставлениеАвансовыеСчетаФактуры`** и заполнение в ветке 2026 параметра **`ОбластьШапка.Параметры.АвансовыеСчетаФактуры`** макета. + +4. Логика раздела **5** через **`СтрокаПоДокументу`**; раздел **5а** для нового формата — через параметр **`ДокументыОбОтгрузке`** (для наследуемых веток — **`ПоДокументуОтгрузки`**, п. **1.4.7**). + +5. Учёт **переходного периода** (ветка постановления **1096**) и сохранение **унаследованных по датам документа** (**legacy**, п. **1.4.7**) веток выбора макета; условные номера актов для исторических веток — п. **1.4.18**. + +### 7.3. Отличия, обусловленные средой `crm3-dev` и технологией расширений + +Перечисленные ниже расхождения **не меняют смысл** выводимых граф для корректно заполненных данных, но обязательны учёту при сопровождении и обновлениях конфигурации: + +1. Связка **ПРД** с документом **`СчетФактураВыданныйАванс`** реализована по реквизитам **`НомерПлатежноРасчетногоДокумента`** и **`ДатаПлатежноРасчетногоДокумента`** в связи со структурой объектов **`crm3-dev`**. + +2. Включение поля **`ПредставлениеАвансовыеСчетаФактуры`** в текст запроса шапки выполнено средствами **`СтрЗаменить`** в ограничениях расширения и при фактическом тексте типового запроса. + +3. Для макетов **2026** при отсутствии в макете зон **`СтрокаНабор`** / **`СтрокаКомплектующие`** используется область **`Строка`** (см. также п. **12.3.4**). + +### 7.4. Осознанное отличие от эталона (дополнительный контур печати) + +В **`crm3-dev.upd5b`** добавлен **дополнительный расчёт (fallback)** — функция **`упд5б\_ПолучитьПредставлениеАвансовыхСчетовФактурДляПечати`**, если в **`РезультатПоШапке`** есть колонка **`ПредставлениеАвансовыеСчетаФактуры`**, но значение **пустое**. В описанном в эталоне «штатном» контуре отдельный такой второй источник строки **5б** не требовался. + +### 7.5. Промежуточный вывод и отсылка к разделу 12 + +По совокупности целевого результата (форма УПД **2026**, корректная графа **5б**) внедрение **эквивалентно логике эталона** **`crm3-26-promo`**; дополнительные отличия носят **технико-адаптационный** характер либо сформулированы как **расширение** (fallback). Для приёмки по пунктам матрицы, перечней адаптаций и итоговой формализации см. **раздел 12** настоящего ТЗ. + + +## 8. Ограничения и допущения + +### 8.1. Исправление в тексте строки 5б + +Значение исправления в fallback-строке 5б формируется как `исправление № -- от --`, если данные исправления не получены. + +### 8.2. Хрупкость вставки поля через `СтрЗаменить` + +Добавление поля `ПредставлениеАвансовыеСчетаФактуры` в шапку выполняется через `СтрЗаменить`; при последующих изменениях базового текста запроса требуется контроль соответствия фрагментов поиска и замены. + +### 8.3. Предварительные условия работы fallback + +Для корректной работы fallback необходимы: + +1. заполненные ПРД в `СчетФактураВыданный`; + +2. корректная связь с `СчетФактураВыданныйАванс`; + +3. заполнение `ЖурналУчетаСчетовФактур`. + + +## 9. Критерии приемки по ТЗ №3 + +### 9.1. Графа 5б при наличии данных + +Для документов 2026 графа 5б печатается значением вида: + +- `№ \<номер СФ аванс\> от \<дата\>, исправление № ...`. + +### 9.2. Графа 5б при отсутствии данных + +Для отсутствующих данных сохраняется безопасный fallback: + +- `№ -- от --, исправление № -- от --`. + +### 9.3. Графа 5а + +Графа 5а корректно заполняется в макетах 2026 через `ДокументыОбОтгрузке`. + +### 9.4. Графа 5 (**legacy**, п. 1.4.7) + +Графа 5 (`СтрокаПоДокументу`) не деградирует в legacy-сценариях. + +### 9.5. Смешанная печать + +Печать смешанных документов (legacy и 2026) отрабатывает в рамках действующих ограничений смешанного вывода. + + +## 10. Перечень поставки по результату внедрения + +### 10.1. Расширение конфигурации + +Актуализированное расширение `crm3-dev.upd5b` (версия `1.0.2.90`). + +### 10.2. Макеты печатных форм + +Перенесенные или подключенные макеты 2026 и 2026Прослеж. + +### 10.3. Программные модули + +Реализованные изменения модулей: + +- `Documents/СчетФактураВыданный/Ext/ManagerModule.bsl`; + +- `DataProcessors/ПечатьОбщихФорм/Ext/ManagerModule.bsl`. + +### 10.4. Настоящее техническое задание + +Настоящее ТЗ №3 как документ фиксации объема и факта выполненных доработок. + + +<div style="page-break-before: always;"></div> + +## 11. Приложение А. Полный добавленный код (к типовому) + +Ниже приведены листинги **всего дополнительного кода**, добавленного в расширении `crm3-dev.upd5b` относительно типовой базы в рамках доработки УПД (разделы 5, 5а, 5б). Имена процедур и функций с префиксом **`упд5б\_`** и соответствие им **расширяемым** именам в типовой конфигурации см. **п. 4.0** и подпункты **4.2–4.3**. + +### 11.1. `Documents/СчетФактураВыданный/Ext/ManagerModule.bsl` + +``` +// === \[UPD5B\] НАЧАЛО БЛОКА ВСТАВКИ === +// Добавление колонки в сводную ТЗ +ПлатежноРасчетныеДокументыСводно.Колонки.Добавить("СтрокаАвансовыеСчетаФактуры", + Новый ОписаниеТипов("Строка",,Новый КвалификаторыСтроки(1000))); +// === \[UPD5B\] КОНЕЦ БЛОКА ВСТАВКИ === + +// === \[UPD5B\] НАЧАЛО БЛОКА ВСТАВКИ === +// Подготавливаем колонки для данных графы 5б до заполнения таблицы по выборке. +ПлатежноРасчетныеДокументы.Колонки.Добавить("РасчетныйДокумент"); +ПлатежноРасчетныеДокументы.Колонки.Добавить("НомерСчетаФактурыНаАванс", + Новый ОписаниеТипов("Строка",,Новый КвалификаторыСтроки(30))); +ПлатежноРасчетныеДокументы.Колонки.Добавить("ДатаСчетаФактурыНаАванс", + Новый ОписаниеТипов("Дата",,, Новый КвалификаторыДаты(ЧастиДаты.Дата))); +ПлатежноРасчетныеДокументы.Колонки.Добавить("НомерИсправленияСчетаФактурыНаАванс", + Новый ОписаниеТипов("Число", Новый КвалификаторыЧисла(10, 0))); +ПлатежноРасчетныеДокументы.Колонки.Добавить("ДатаИсправленияСчетаФактурыНаАванс", + Новый ОписаниеТипов("Дата",,, Новый КвалификаторыДаты(ЧастиДаты.Дата))); +// === \[UPD5B\] КОНЕЦ БЛОКА ВСТАВКИ === + +// === \[UPD5B\] НАЧАЛО БЛОКА ВСТАВКИ === +// Заполнение значения в цикле по счетам-фактурам +НоваяСтрока.СтрокаАвансовыеСчетаФактуры = упд5б\_СтрокаАвансовыеСчетаФактуры(ПлатежноРасчетныеДокументы); +// === \[UPD5B\] КОНЕЦ БЛОКА ВСТАВКИ === + +// === \[UPD5B\] НАЧАЛО БЛОКА ВСТАВКИ === +// \[+\] Добавляем отдельную колонку для текстового представления графы 5б +// во временную таблицу ТаблицаПлатежноРасчетныеДокументы. +// \[+\] Включаем колонку в финальный набор, который участвует в формировании шапки печати. +Запрос.Текст = +"ВЫБРАТЬ +| Таблица.Ссылка, +| Таблица.СтрокаПлатежноРасчетныеДокументы, +| Таблица.СтрокаАвансовыеСчетаФактуры +|ПОМЕСТИТЬ ТаблицаПлатежноРасчетныеДокументы +|ИЗ +| &ПлатежноРасчетныеДокументы КАК Таблица"; +// === \[UPD5B\] КОНЕЦ БЛОКА ВСТАВКИ === + +// ========================================== +// \[UPD5B\] СУТЬ ИЗМЕНЕНИЯ: +// Перенос полей для строки 5б из выборки в ТЗ ПРД: +// номер/дата СФ на аванс и реквизиты исправления. +// 04.05.2026 - КМА +// ========================================== +// --- НАЧАЛО ВСТАВЛЕННОГО КОДА --- +Если ПлатежноРасчетныеДокументы.Колонки.Найти("НомерСчетаФактурыНаАванс") \<\> Неопределено Тогда + ЗаполнитьЗначенияСвойств(НоваяСтрока, Выборка, "РасчетныйДокумент, НомерСчетаФактурыНаАванс, ДатаСчетаФактурыНаАванс, НомерИсправленияСчетаФактурыНаАванс, ДатаИсправленияСчетаФактурыНаАванс"); +КонецЕсли; +// --- КОНЕЦ ВСТАВЛЕННОГО КОДА --- + +// ========================================== +// \[UPD5B\] СУТЬ ИЗМЕНЕНИЯ: +// При наличии колонок 5б включаем их в ключ свертки, +// чтобы значения не терялись при группировке строк. +// 04.05.2026 - КМА +// ========================================== +// --- НАЧАЛО ВСТАВЛЕННОГО КОДА --- +Если ПлатежноРасчетныеДокументы.Колонки.Найти("НомерСчетаФактурыНаАванс") \<\> Неопределено Тогда + ПлатежноРасчетныеДокументы.Свернуть( + "ДатаПлатежноРасчетногоДокумента, НомерПлатежноРасчетногоДокумента, НомерСчетаФактурыНаАванс, ДатаСчетаФактурыНаАванс, НомерИсправленияСчетаФактурыНаАванс, ДатаИсправленияСчетаФактурыНаАванс", + ""); +Иначе + ПлатежноРасчетныеДокументы.Свернуть("ДатаПлатежноРасчетногоДокумента, НомерПлатежноРасчетногоДокумента", ""); +КонецЕсли; +// --- КОНЕЦ ВСТАВЛЕННОГО КОДА --- + +Функция упд5б\_СтрокаАвансовыеСчетаФактуры(ПлатежноРасчетныеДокументы) Экспорт + + СтрокаНомеровИДата = ""; + + // Поддерживаем оба входа: + // - ТаблицаЗначений (есть свойство Колонки), + // - табличная часть объекта документа (преобразуем через Выгрузить()). + Если НЕ ОбщегоНазначенияКлиентСервер.ЕстьРеквизитИлиСвойствоОбъекта(ПлатежноРасчетныеДокументы, "Колонки") Тогда + Если ОбщегоНазначенияКлиентСервер.ЕстьРеквизитИлиСвойствоОбъекта(ПлатежноРасчетныеДокументы, "Выгрузить") Тогда + ПлатежноРасчетныеДокументы = ПлатежноРасчетныеДокументы.Выгрузить(); + Иначе + Возврат ""; + КонецЕсли; + КонецЕсли; + + ЕстьКолонкиСФАванс = + ПлатежноРасчетныеДокументы.Колонки.Найти("НомерСчетаФактурыНаАванс") \<\> Неопределено + И ПлатежноРасчетныеДокументы.Колонки.Найти("ДатаСчетаФактурыНаАванс") \<\> Неопределено; + ЕстьКолонкиИсправленияСФАванс = + ПлатежноРасчетныеДокументы.Колонки.Найти("НомерИсправленияСчетаФактурыНаАванс") \<\> Неопределено + И ПлатежноРасчетныеДокументы.Колонки.Найти("ДатаИсправленияСчетаФактурыНаАванс") \<\> Неопределено; + + Если НЕ ЕстьКолонкиСФАванс Тогда + Возврат ""; + КонецЕсли; + + Для каждого СтрокаДокумента Из ПлатежноРасчетныеДокументы Цикл + НомерСФАвансДля5Б = ""; + ДатаСФАвансДля5Б = Неопределено; + НомерИсправленияСФАвансДля5Б = "--"; + ДатаИсправленияСФАвансДля5Б = "--"; + + Если ЕстьКолонкиСФАванс Тогда + НомерСФАвансДля5Б = СтрокаДокумента.НомерСчетаФактурыНаАванс; + ДатаСФАвансДля5Б = СтрокаДокумента.ДатаСчетаФактурыНаАванс; + Если ЕстьКолонкиИсправленияСФАванс Тогда + НомерИсправленияСФАвансДля5Б = ?(ЗначениеЗаполнено(СтрокаДокумента.НомерИсправленияСчетаФактурыНаАванс), СтрокаДокумента.НомерИсправленияСчетаФактурыНаАванс, "--"); + ДатаИсправленияСФАвансДля5Б = ?(ЗначениеЗаполнено(СтрокаДокумента.ДатаИсправленияСчетаФактурыНаАванс), Формат(СтрокаДокумента.ДатаИсправленияСчетаФактурыНаАванс, "ДФ=dd.MM.yyyy"), "--"); + КонецЕсли; + КонецЕсли; + + Если ЗначениеЗаполнено(НомерСФАвансДля5Б) Тогда + ТекстСтроки = СтрШаблон( + НСтр("ru='№ %1 от %2, исправление № %3 от %4'"), + НомерСФАвансДля5Б, + Формат(ДатаСФАвансДля5Б, "ДФ=dd.MM.yyyy"), + НомерИсправленияСФАвансДля5Б, + ДатаИсправленияСФАвансДля5Б + ); + СтрокаНомеровИДата = СтрокаНомеровИДата + + ?(ПустаяСтрока(СтрокаНомеровИДата), "", "; ") + + ТекстСтроки; + КонецЕсли; + КонецЦикла; + + Возврат СтрокаНомеровИДата; + +КонецФункции + +// === \[UPD5B\] НАЧАЛО БЛОКА ВСТАВКИ === +// \[+\] Этап 1: формируем ВТ втДанныеПлатежноРасчетныхДокументов и +// добавляем РасчетныйДокумент для связи с авансовыми СФ. +// \[+\] Этап 2: определяем авансовый СФ и его исправление (если есть), +// сворачиваем по СчетФактура. +// \[+\] Этап 3: отдаём полный набор полей, требуемых для формирования строки 5б. +// \[+\] Этап 4: очищаем все созданные ВТ. +ТекстЗапроса = +"ВЫБРАТЬ РАЗЛИЧНЫЕ +| ДанныеПервичныхДокументов.Дата КАК ДатаВходящегоДокумента, +| ДанныеПервичныхДокументов.Номер КАК НомерВходящегоДокумента, +| ТаблицаДокументов.Ссылка КАК СчетФактура, +| ПлатежныеДокументы.ДокументОплаты КАК РасчетныйДокумент +|ПОМЕСТИТЬ втДанныеПлатежноРасчетныхДокументов +|ИЗ +| РасчетыСКлиентами\_ОснованияИДокументыОплаты КАК ПлатежныеДокументы +| ВНУТРЕННЕЕ СОЕДИНЕНИЕ ТаблицаЗаполненияПлатежноРасчетныхДокументов КАК ТаблицаДокументов +| ПО ПлатежныеДокументы.ОснованиеОплаты = ТаблицаДокументов.ДокументОснование +| И (ПлатежныеДокументы.АналитикаУчетаПоПартнерам В (&МассивАналитикУчетаПоПартнерам)) +| ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ДанныеПервичныхДокументов КАК ДанныеПервичныхДокументов +| ПО ПлатежныеДокументы.Организация = ДанныеПервичныхДокументов.Организация +| И ПлатежныеДокументы.ДокументОплаты = ДанныеПервичныхДокументов.Документ +|ГДЕ +| ТИПЗНАЧЕНИЯ(ПлатежныеДокументы.ДокументОплаты) \<\> ТИП(Документ.ВзаимозачетЗадолженности) +|; +| +|//////////////////////////////////////////////////////////////////////////////// +|ВЫБРАТЬ +| втДанныеПлатежноРасчетныхДокументов.РасчетныйДокумент КАК РасчетныйДокумент, +| втДанныеПлатежноРасчетныхДокументов.СчетФактура КАК СчетФактура, +| СчетФактураАванс.Ссылка КАК СчетФактураАванс, +| СчетФактураАванс.Организация КАК ОрганизацияАванса, +| ЕСТЬNULL(ИсправленныйСчетФактураАванс.Ссылка, ЗНАЧЕНИЕ(Документ.СчетФактураВыданныйАванс.ПустаяСсылка)) КАК ИсправлениеСчетаФактурыАванс, +| МАКСИМУМ(СчетФактураАванс.НомерИсправления) КАК НомерИсправления +|ПОМЕСТИТЬ втНомераИсправленийСчетовФактурНаАванс +|ИЗ +| втДанныеПлатежноРасчетныхДокументов КАК втДанныеПлатежноРасчетныхДокументов +| ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.СчетФактураВыданныйАванс КАК СчетФактураАванс +| ПО втДанныеПлатежноРасчетныхДокументов.НомерВходящегоДокумента = СчетФактураАванс.НомерПлатежноРасчетногоДокумента +| И втДанныеПлатежноРасчетныхДокументов.ДатаВходящегоДокумента = СчетФактураАванс.ДатаПлатежноРасчетногоДокумента +| И (НЕ СчетФактураАванс.Корректировочный) +| И (СчетФактураАванс.Проведен) +| ЛЕВОЕ СОЕДИНЕНИЕ Документ.СчетФактураВыданныйАванс КАК ИсправленныйСчетФактураАванс +| ПО (СчетФактураАванс.СчетФактураОснование = ИсправленныйСчетФактураАванс.Ссылка) +| И (СчетФактураАванс.Исправление) +| И (НЕ ИсправленныйСчетФактураАванс.Корректировочный) +| И (ИсправленныйСчетФактураАванс.Проведен) +| +|СГРУППИРОВАТЬ ПО +| втДанныеПлатежноРасчетныхДокументов.РасчетныйДокумент, +| втДанныеПлатежноРасчетныхДокументов.СчетФактура, +| СчетФактураАванс.Ссылка, +| СчетФактураАванс.Организация, +| ЕСТЬNULL(ИсправленныйСчетФактураАванс.Ссылка, ЗНАЧЕНИЕ(Документ.СчетФактураВыданныйАванс.ПустаяСсылка)) +|; +| +|//////////////////////////////////////////////////////////////////////////////// +|ВЫБРАТЬ +| ДанныеПлатежноРасчетныхДокументов.РасчетныйДокумент КАК РасчетныйДокумент, +| ДанныеПлатежноРасчетныхДокументов.СчетФактура КАК СчетФактура, +| ДанныеПлатежноРасчетныхДокументов.ДатаВходящегоДокумента КАК ДатаВходящегоДокумента, +| ДанныеПлатежноРасчетныхДокументов.НомерВходящегоДокумента КАК НомерВходящегоДокумента, +| ДанныеСчетаФактурыАванс.ДатаСчетаФактуры КАК ДатаСчетаФактурыНаАванс, +| ДанныеСчетаФактурыАванс.НомерСчетаФактуры КАК НомерСчетаФактурыНаАванс, +| ДанныеИсправленияСчетаФактурыАванс.ДатаИсправления КАК ДатаИсправленияСчетаФактурыНаАванс, +| ДанныеИсправленияСчетаФактурыАванс.НомерИсправления КАК НомерИсправленияСчетаФактурыНаАванс +|ИЗ +| втДанныеПлатежноРасчетныхДокументов КАК ДанныеПлатежноРасчетныхДокументов +| ЛЕВОЕ СОЕДИНЕНИЕ втНомераИсправленийСчетовФактурНаАванс КАК СчетаФактурыАванс +| ПО ДанныеПлатежноРасчетныхДокументов.РасчетныйДокумент = СчетаФактурыАванс.РасчетныйДокумент +| И ДанныеПлатежноРасчетныхДокументов.СчетФактура = СчетаФактурыАванс.СчетФактура +| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЖурналУчетаСчетовФактур КАК ДанныеСчетаФактурыАванс +| ПО СчетаФактурыАванс.ОрганизацияАванса = ДанныеСчетаФактурыАванс.Организация +| И СчетаФактурыАванс.СчетФактураАванс = ДанныеСчетаФактурыАванс.СчетФактура +| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЖурналУчетаСчетовФактур КАК ДанныеИсправленияСчетаФактурыАванс +| ПО СчетаФактурыАванс.ОрганизацияАванса = ДанныеИсправленияСчетаФактурыАванс.Организация +| И СчетаФактурыАванс.ИсправлениеСчетаФактурыАванс = ДанныеИсправленияСчетаФактурыАванс.СчетФактура +|ИТОГИ ПО +| СчетФактура +|; +| +|//////////////////////////////////////////////////////////////////////////////// +|УНИЧТОЖИТЬ втНомераИсправленийСчетовФактурНаАванс +|; +| +|//////////////////////////////////////////////////////////////////////////////// +|УНИЧТОЖИТЬ втДанныеПлатежноРасчетныхДокументов +|; +| +|//////////////////////////////////////////////////////////////////////////////// +|УНИЧТОЖИТЬ РасчетыСКлиентами\_ОснованияИДокументыОплаты +|; +| +|//////////////////////////////////////////////////////////////////////////////// +|УНИЧТОЖИТЬ ТаблицаЗаполненияПлатежноРасчетныхДокументов"; +// === \[UPD5B\] КОНЕЦ БЛОКА ВСТАВКИ === + +// === \[UPD5B\] НАЧАЛО БЛОКА ВСТАВКИ === +// \[+\] Гарантированно добавляем поле ПредставлениеАвансовыеСчетаФактуры +// в основной SELECT шапки (без зависимости от многострочного фрагмента ЕСТЬNULL). +ФрагментПоиска5Б = "КАК СтрокаПоДокументу, +| ДанныеДокумента.Валюта"; +ФрагментЗамены5Б = "КАК СтрокаПоДокументу, +| ЕСТЬNULL(ТаблицаПлатежноРасчетныеДокументы.СтрокаАвансовыеСчетаФактуры, +| """") КАК ПредставлениеАвансовыеСчетаФактуры, +| ДанныеДокумента.Валюта"; +БылоСовпадениеФрагмента5Б = Найти(ТекстЗапроса, ФрагментПоиска5Б) \> 0; +ТекстЗапроса = СтрЗаменить(ТекстЗапроса, ФрагментПоиска5Б, ФрагментЗамены5Б); +СталоПоле5Б = Найти(ТекстЗапроса, "КАК ПредставлениеАвансовыеСчетаФактуры") \> 0; + +// === \[UPD5B\] КОНЕЦ БЛОКА ВСТАВКИ === + +// === \[UPD5B\] НАЧАЛО БЛОКА ВСТАВКИ === +// \[+\] Гарантированно добавляем пустое поле ПредставлениеАвансовыеСчетаФактуры +// в объединяемую ветку (полученные/посреднические СФ). +ФрагментПоиска5Б = "КАК СтрокаПоДокументу, +| ДанныеДокумента.Валюта"; +ФрагментЗамены5Б = "КАК СтрокаПоДокументу, +| """" КАК ПредставлениеАвансовыеСчетаФактуры, +| ДанныеДокумента.Валюта"; +БылоСовпадениеФрагмента5Б = Найти(ТекстЗапроса, ФрагментПоиска5Б) \> 0; +ТекстЗапроса = СтрЗаменить(ТекстЗапроса, ФрагментПоиска5Б, ФрагментЗамены5Б); +СталоПоле5Б = Найти(ТекстЗапроса, "КАК ПредставлениеАвансовыеСчетаФактуры") \> 0; + +// === \[UPD5B\] КОНЕЦ БЛОКА ВСТАВКИ === +``` + +### 11.2. `DataProcessors/ПечатьОбщихФорм/Ext/ManagerModule.bsl` + +``` +МакетУПД\_1096 = УправлениеПечатью.МакетПечатнойФормы( + "Обработка.ПечатьОбщихФорм.ПФ\_MXL\_УниверсальныйПередаточныйДокумент1096\_ru"); +МакетУПД\_2026\_2\_5 = УправлениеПечатью.МакетПечатнойФормы( + "ОбщийМакет.ПФ\_MXL\_УниверсальныйПередаточныйДокумент2026"); +МакетУПД\_2026Прослеж\_2\_5 = УправлениеПечатью.МакетПечатнойФормы( + "ОбщийМакет.ПФ\_MXL\_УниверсальныйПередаточныйДокумент2026Прослеж"); + +// \{\{ \[+\] (фрагмент ДОБАВЛЕН), Добавление переменной для постановления 2026 +// 05.01.2026 - КМА +ЕстьПостановление2026 = Ложь; +// \}\} Добавление переменной для постановления 2026 + +// ========================================== +// \[UPD5B\] СУТЬ ИЗМЕНЕНИЯ: +// Единый блок выбора legacy-макета УПД с ограничением веток +// 534/981/625/1137 датой до 01.10.2024, чтобы исключить +// конфликты флагов со сценариями 1096/2026. +// 04.05.2026 - КМА +// ========================================== +// --- НАЧАЛО ВСТАВЛЕННОГО КОДА --- +ЭффективнаяДатаУПД = ?(ЗначениеЗаполнено(ДанныеПечати.ДатаИсправления), ДанныеПечати.ДатаИсправления, ДанныеПечати.Дата); +Если ДействуетПостановление534(ДанныеПечати.Дата, ДанныеПечати.ДатаИсправления) + И ЭффективнаяДатаУПД \< '20241001' Тогда + Макет = МакетУПД\_534; + ЕстьПостановление534 = Истина; +ИначеЕсли ДействуетПостановление981(ДанныеПечати.Дата, ДанныеПечати.ДатаИсправления) + И ЭффективнаяДатаУПД \< '20241001' Тогда + Макет = МакетУПД\_981; + ЕстьПостановление981 = Истина; +ИначеЕсли ВедетсяУчетНДСПоФЗ56(ДанныеПечати.Дата, ДанныеПечати.ДатаИсправления) + И ЭффективнаяДатаУПД \< '20241001' Тогда + Макет = МакетУПД\_625; + ЕстьПостановление1137\_625 = Истина; +ИначеЕсли ЭффективнаяДатаУПД \< '20241001' Тогда + Макет = МакетУПД; + ЕстьПостановление1137 = Истина; +КонецЕсли; +// --- КОНЕЦ ВСТАВЛЕННОГО КОДА --- + +// \{\{ \[+\] (фрагмент ДОБАВЛЕН), Анисимов Артур Маратович \#38867 16.10.24 +// \{\{ \[+\] (фрагмент ИЗМЕНЕН), Обновление логики выбора макета 1096 для постановлений 1096 и 2026 +// 05.01.2026 - КМА +// Для дат \>= 01.01.2026 используем новые макеты 2026/2026Прослеж. +Если ДействуетПостановление2026(ДанныеПечати.Дата, ДанныеПечати.ДатаИсправления) Тогда + ЕстьПрослеживаемыеТоварыВТабличнойЧасти = Ложь; + Если ОбщегоНазначенияКлиентСервер.ЕстьРеквизитИлиСвойствоОбъекта(ДанныеПечати, "ЕстьПрослеживаемыеТоварыВТабличнойЧасти") + И ЗначениеЗаполнено(ДанныеПечати.ЕстьПрослеживаемыеТоварыВТабличнойЧасти) + И ДанныеПечати.ЕстьПрослеживаемыеТоварыВТабличнойЧасти Тогда + ЕстьПрослеживаемыеТоварыВТабличнойЧасти = Истина; + КонецЕсли; + Если (ОбщегоНазначенияКлиентСервер.ЕстьРеквизитИлиСвойствоОбъекта(ДанныеПечати, "ЕстьПрослеживаемыеТовары") + И ЗначениеЗаполнено(ДанныеПечати.ЕстьПрослеживаемыеТовары) + И ДанныеПечати.ЕстьПрослеживаемыеТовары) + Или ЕстьПрослеживаемыеТоварыВТабличнойЧасти Тогда + Макет = УправлениеПечатью.МакетПечатнойФормы( + "ОбщийМакет.ПФ\_MXL\_УниверсальныйПередаточныйДокумент2026Прослеж"); + Иначе + Макет = УправлениеПечатью.МакетПечатнойФормы( + "ОбщийМакет.ПФ\_MXL\_УниверсальныйПередаточныйДокумент2026"); + КонецЕсли; + ЕстьПостановление2026 = Истина; + ЕстьПостановление1096 = Истина; // Сохраняем для совместимости +// Для дат \>= 01.10.2024 и \< 01.01.2026 используем макет 1096 (постановление 1096) +ИначеЕсли ?(ЗначениеЗаполнено(ДанныеПечати.ДатаИсправления), ДанныеПечати.ДатаИсправления, ДанныеПечати.Дата) \>= '20241001' Тогда + Макет = МакетУПД\_1096; + ЕстьПостановление1096 = Истина; +КонецЕсли; +// \}\} Обновление логики выбора макета 1096 для постановлений 1096 и 2026 +// \}\} Анисимов Артур Маратович \# + +ИначеЕсли (ЕстьПостановление1137\_625 Или ЕстьПостановление1137 Или ЕстьПостановление981 Или ЕстьПостановление534) + И ЕстьПостановление2026 Тогда + + ТекстСообщения = НСтр("ru = 'Недоступна одновременная печать универсальных передаточных документов, + |сформированных до и после начала применения нового формата УПД с 01.01.2026.'"); + + ОбщегоНазначения.СообщитьПользователю(ТекстСообщения, ДанныеПечати.Ссылка); + + ТабличныйДокумент.Очистить(); + Прервать; + +// ========================================== +// \[UPD5B\] СУТЬ ИЗМЕНЕНИЯ: +// Перенос логики из crm3-26-promo для новых макетов: +// в периоде 2026 области наборов берутся из "Строка", +// для макетов старого формата УПД (до 01.10.2024) +// сохраняются области "СтрокаНабор/СтрокаКомплектующие". +// 04.05.2026 - КМА +// ========================================== +// --- НАЧАЛО ВСТАВЛЕННОГО КОДА --- +Если ОбщегоНазначенияУТКлиентСервер.ЕстьРеквизитОбъекта(ВыборкаПоДокументам, "ЭтоНабор") Тогда + ИспользоватьНаборы = Истина; + Если ЕстьПостановление2026 Тогда + ОбластьСтрокаНабор = Макет.ПолучитьОбласть("Строка"); + ОбластьСтрокаКомплектующие = Макет.ПолучитьОбласть("Строка"); + Иначе + ОбластьСтрокаНабор = Макет.ПолучитьОбласть("СтрокаНабор"); + ОбластьСтрокаКомплектующие = Макет.ПолучитьОбласть("СтрокаКомплектующие"); + КонецЕсли; +КонецЕсли; +// --- КОНЕЦ ВСТАВЛЕННОГО КОДА --- + +// \{\{ \[+\] (фрагмент ДОБАВЛЕН), Анисимов Артур Маратович \# +ТоварыТабЗначений =ДанныеДляПечати.РезультатПоТабличнойЧасти.Выгрузить(); +Для каждого СтрокаТабЗначений Из ТоварыТабЗначений Цикл + // Удаляем пустые строки образовавшийся после выгрузки + Если не ЗначениеЗаполнено(СтрокаТабЗначений.Номенклатура) Тогда + ТоварыТабЗначений.Удалить(СтрокаТабЗначений); + КонецЕсли; +КонецЦикла; + +// 05.01.2026 - КМА +// Исправление колонок суммирования и группировки. +КолонкиГруппы = "Ссылка, НомерСтроки, НомерСтрокиИсходногоСФ, Номенклатура, НоменклатураНаименование, НоменклатураКод, КодТНВЭД, ЕдиницаИзмерения, " + + "ЕдиницаИзмеренияНаименование, ЕдиницаИзмеренияКод, Упаковка, ЕдиницаИзмеренияТНВЭД, ЕдиницаИзмеренияТНВЭДНаименование, ЕдиницаИзмеренияТНВЭДКод, " + + "Характеристика, ХарактеристикаНаименование, НомерГТД, СтранаПроисхождения, СтранаПроисхожденияКод, НомерСтрокиНаборы, ВариантПредставленияНабораВПечатныхФормах, " + + "ВариантРасчетаЦеныНабора, НоменклатураНабора, ХарактеристикаНабора, ЭтоКомплектующие, ЭтоНабор, ПолныйНабор, ЭтоВозвратнаяТара, СтавкаНДС"; +КолонкиСуммы = "Количество, КоличествоПоРНПТ, Цена, СуммаБезНДС, СуммаНДС, СуммаСНДС, КоличествоДо, КоличествоПоРНПТДо, ЦенаДо, СуммаБезНДСДо, " + + "РазницаБезНДСУвеличение, РазницаБезНДСУменьшение, СуммаНДСДо, РазницаНДСУвеличение, " + + "РазницаНДСУменьшение, СуммаСНДСДо, РазницаСНДСУвеличение, РазницаСНДСУменьшение"; +//цену тоже суммируем - цена комплектующих не используется в УПД + +// \{\{ 12.01.2026 - КМА +// Проверка обязательных колонок для УПД +// Добавляем отсутствующие колонки перед сверткой (и для группировки, и для суммирования) +упд5б\_ДобавитьОтсутствующиеКолонкиВТаблицуЗначений(ТоварыТабЗначений, КолонкиГруппы); +упд5б\_ДобавитьОтсутствующиеКолонкиВТаблицуЗначений(ТоварыТабЗначений, КолонкиСуммы); +// \}\} + +ТоварыТабЗначений.Свернуть(КолонкиГруппы, КолонкиСуммы); +// \}\} Анисимов Артур Маратович \# + +// \{\{ \[+\] (фрагмент ДОБАВЛЕН), Анисимов Артур Маратович \#38428 12.08.24 +Для каждого СтрокаТовары Из ТоварыТабЗначений Цикл + Если ИспользоватьНаборы + и СтрокаТовары.ЭтоНабор + и СтрокаТовары.ВариантПредставленияНабораВПечатныхФормах = Перечисления.ВариантыПредставленияНаборовВПечатныхФормах.НаборИКомплектующие Тогда + КоличествоСтрок = КоличествоСтрок; + Иначе + КоличествоСтрок = КоличествоСтрок + 1; + КонецЕсли; +КонецЦикла; +// \}\} Анисимов Артур Маратович \#38428 12.08.24 + +// ========================================== +// \[UPD5B\] СУТЬ ИЗМЕНЕНИЯ: +// Заполняем документ отгрузки для графы 5а: +// - старое поле ПоДокументуОтгрузки для макетов 534; +// - новое поле ДокументыОбОтгрузке для макетов 2026. +// 04.05.2026 - КМА +// ========================================== +// --- НАЧАЛО ВСТАВЛЕННОГО КОДА --- +Если ЕстьПостановление534 Тогда + ОбластьШапка.Параметры.ПоДокументуОтгрузки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = '№ п/п %1 № %2 от %3'"), + ?(КоличествоСтрок = 1, "1" , "1-" + Формат(КоличествоСтрок, "ЧГ=0")), + ОбластьШапка.Параметры.Номер, + ОбластьШапка.Параметры.Дата); +КонецЕсли; +Если ЕстьПостановление2026 Тогда + ОбластьШапка.Параметры.ДокументыОбОтгрузке = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = '%1, № %2 от %3'"), + НСтр("ru = 'Универсальный передаточный документ'"), + ОбластьШапка.Параметры.Номер, + ОбластьШапка.Параметры.Дата); +КонецЕсли; +// --- КОНЕЦ ВСТАВЛЕННОГО КОДА --- + +// \[+\] Читаем поле ПредставлениеАвансовыеСчетаФактуры из РезультатПоШапке. +// \[+\] При отсутствии значения задаём безопасный fallback. +// \[+\] Передаём значение в параметр макета АвансовыеСчетаФактуры (графа 5б). +ВходПредставлениеАвансовыеСчетаФактуры = + ?(ОбщегоНазначенияКлиентСервер.ЕстьРеквизитИлиСвойствоОбъекта(ДанныеПечати, "ПредставлениеАвансовыеСчетаФактуры"), + СокрЛП(Строка(ДанныеПечати.ПредставлениеАвансовыеСчетаФактуры)), + ""); + +Если ЕстьПостановление2026 + И ПустаяСтрока(ВходПредставлениеАвансовыеСчетаФактуры) + И ЗначениеЗаполнено(ДанныеПечати.Ссылка) Тогда + АвансовыеСчетаФактуры = упд5б\_ПолучитьПредставлениеАвансовыхСчетовФактурДляПечати(ДанныеПечати.Ссылка); +Иначе + АвансовыеСчетаФактуры = + ?(ЗначениеЗаполнено(ВходПредставлениеАвансовыеСчетаФактуры), + ВходПредставлениеАвансовыеСчетаФактуры, + НСтр("ru='№ -- от --, исправление № -- от --'")); +КонецЕсли; + +Если ЕстьПостановление2026 Тогда + ОбластьШапка.Параметры.АвансовыеСчетаФактуры = АвансовыеСчетаФактуры; +КонецЕсли; + +// ========================================== +// \[UPD5B\] СУТЬ ИЗМЕНЕНИЯ: +// Для макетов 2026 явно заполняем ПредставлениеГТД +// (используется в новой форме вместо прямого НомерГТД). +// 04.05.2026 - КМА +// ========================================== +// --- НАЧАЛО ВСТАВЛЕННОГО КОДА --- +Если ЕстьПостановление2026 Тогда + ОбластьСтрока.Параметры.ПредставлениеГТД = + ?(ЗначениеЗаполнено(СтрокаТовары.НомерГТД), Строка(СтрокаТовары.НомерГТД), ""); +КонецЕсли; +// --- КОНЕЦ ВСТАВЛЕННОГО КОДА --- + +// \{\{ 12.01.2026 КМА - исправление заполнения суммы НДС при ставке "Без НДС" +СтруктураПараметров.Вставить("СуммаНДС", 0); +// \}\} + +// \{\{ \[+\] (фрагмент ДОБАВЛЕН), Исправление заполнения ставки НДС для НДС 0% +// 05.01.2026 - КМА +СтруктураПараметров.Вставить("СтавкаНДС", НСтр("ru='0%'", Метаданные.Языки.Русский.КодЯзыка)); +// \}\} Исправление заполнения ставки НДС для НДС 0% + +// \{\{ \[+\] (фрагмент ДОБАВЛЕН), Исправление заполнения ставки НДС для всех остальных ставок +// 05.01.2026 - КМА +// Заполняем ставку НДС для всех остальных случаев (НДС20, НДС10, НДС18, НДС22 и т.д.) +Если ЗначениеЗаполнено(СтрокаТовары.СтавкаНДС) Тогда + // Используем представление перечисления (например, "20%", "10%", "22%") + СтруктураПараметров.Вставить("СтавкаНДС", Строка(СтрокаТовары.СтавкаНДС)); +КонецЕсли; +// \}\} Исправление заполнения ставки НДС для всех остальных ставок + +// В итоговых данных также вместо "Без НДС" будет проставляться именно 0руб. + +// \{\{ \[+\] (фрагмент ДОБАВЛЕН), Добавление функции проверки постановления 2026 +// 05.01.2026 - КМА +Функция ДействуетПостановление2026(ДатаДокумента, ДатаИсправления) + + Возврат ?(ЗначениеЗаполнено(ДатаИсправления), ДатаИсправления, ДатаДокумента) \>= '20260101'; + +КонецФункции +// \}\} Добавление функции проверки постановления 2026 + +Функция упд5б\_ПолучитьПредставлениеАвансовыхСчетовФактурДляПечати(СчетФактураВыданныйСсылка) + + РезультатСтрока5Б = ""; + Запрос = Новый Запрос; + Запрос.Текст = + "ВЫБРАТЬ РАЗЛИЧНЫЕ + | ЕСТЬNULL(ЖурналСФАванс.НомерСчетаФактуры, СчетФактураАванс.Номер) КАК НомерСчетаФактурыНаАванс, + | ЕСТЬNULL(ЖурналСФАванс.ДатаСчетаФактуры, СчетФактураАванс.Дата) КАК ДатаСчетаФактурыНаАванс + |ИЗ + | Документ.СчетФактураВыданный.ПлатежноРасчетныеДокументы КАК ПРД + | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.СчетФактураВыданныйАванс КАК СчетФактураАванс + | ПО ПРД.НомерПлатежноРасчетногоДокумента = СчетФактураАванс.НомерПлатежноРасчетногоДокумента + | И ПРД.ДатаПлатежноРасчетногоДокумента = СчетФактураАванс.ДатаПлатежноРасчетногоДокумента + | И НЕ СчетФактураАванс.Корректировочный + | И СчетФактураАванс.Проведен + | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЖурналУчетаСчетовФактур КАК ЖурналСФАванс + | ПО СчетФактураАванс.Организация = ЖурналСФАванс.Организация + | И СчетФактураАванс.Ссылка = ЖурналСФАванс.СчетФактура + |ГДЕ + | ПРД.Ссылка = &СсылкаСФ + | + |УПОРЯДОЧИТЬ ПО + | ДатаСчетаФактурыНаАванс, + | НомерСчетаФактурыНаАванс"; + Запрос.УстановитьПараметр("СсылкаСФ", СчетФактураВыданныйСсылка); + + Выборка = Запрос.Выполнить().Выбрать(); + Пока Выборка.Следующий() Цикл + Если ЗначениеЗаполнено(Выборка.НомерСчетаФактурыНаАванс) + И ЗначениеЗаполнено(Выборка.ДатаСчетаФактурыНаАванс) Тогда + РезультатСтрока5Б = РезультатСтрока5Б + + ?(ПустаяСтрока(РезультатСтрока5Б), "", "; ") + + СтрШаблон( + НСтр("ru='№ %1 от %2, исправление № -- от --'"), + Выборка.НомерСчетаФактурыНаАванс, + Формат(Выборка.ДатаСчетаФактурыНаАванс, "ДФ=dd.MM.yyyy")); + КонецЕсли; + КонецЦикла; + + Если ПустаяСтрока(РезультатСтрока5Б) Тогда + РезультатСтрока5Б = НСтр("ru='№ -- от --, исправление № -- от --'"); + КонецЕсли; + + Возврат РезультатСтрока5Б; + +КонецФункции + +Процедура упд5б\_ДобавитьОтсутствующиеКолонкиВТаблицуЗначений(ТаблицаЗначений, СписокКолонок) Экспорт + + Если ПустаяСтрока(СписокКолонок) Тогда + Возврат; + КонецЕсли; + + МассивКолонок = СтроковыеФункцииКлиентСервер.РазложитьСтрокуВМассивСлов(СписокКолонок, ","); + + Для Каждого ИмяКолонки Из МассивКолонок Цикл + + ИмяКолонки = СокрЛП(ИмяКолонки); + + Если ПустаяСтрока(ИмяКолонки) Тогда + Продолжить; + КонецЕсли; + + Если ТаблицаЗначений.Колонки.Найти(ИмяКолонки) = Неопределено Тогда + ТипКолонки = упд5б\_ОпределитьТипКолонкиПоИмени(ИмяКолонки); + ТаблицаЗначений.Колонки.Добавить(ИмяКолонки, ТипКолонки); + + ЗначениеПоУмолчанию = упд5б\_ПолучитьЗначениеПоУмолчаниюПоТипу(ТипКолонки); + Для Каждого СтрокаТаблицы Из ТаблицаЗначений Цикл + СтрокаТаблицы\[ИмяКолонки\] = ЗначениеПоУмолчанию; + КонецЦикла; + КонецЕсли; + + КонецЦикла; + +КонецПроцедуры + +Функция упд5б\_ПолучитьЗначениеПоУмолчаниюПоТипу(ТипКолонки) + + Если ТипКолонки.СодержитТип(Тип("Число")) Тогда + Возврат 0; + ИначеЕсли ТипКолонки.СодержитТип(Тип("Строка")) Тогда + Возврат ""; + ИначеЕсли ТипКолонки.СодержитТип(Тип("Булево")) Тогда + Возврат Ложь; + ИначеЕсли ТипКолонки.СодержитТип(Тип("Дата")) Тогда + Возврат '00010101'; + Иначе + Возврат Неопределено; + КонецЕсли; + +КонецФункции + +Функция упд5б\_ОпределитьТипКолонкиПоИмени(ИмяКолонки) + + Если СтрНайти(НРег(ИмяКолонки), "сумма") \> 0 + Или СтрНайти(НРег(ИмяКолонки), "количество") \> 0 + Или СтрНайти(НРег(ИмяКолонки), "цена") \> 0 + Или СтрНайти(НРег(ИмяКолонки), "разница") \> 0 + Или СтрНайти(НРег(ИмяКолонки), "масса") \> 0 Тогда + + Возврат Новый ОписаниеТипов("Число"); + + КонецЕсли; + + Возврат Новый ОписаниеТипов("Число"); + +КонецФункции +``` + +### 11.3. `Configuration.xml` (дополнительные объекты) + +``` +\<CommonTemplate\>ПФ\_MXL\_УниверсальныйПередаточныйДокумент2026\</CommonTemplate\> +\<CommonTemplate\>ПФ\_MXL\_УниверсальныйПередаточныйДокумент2026Прослеж\</CommonTemplate\> +\<InformationRegister\>ЖурналУчетаСчетовФактур\</InformationRegister\> +``` + + +<div style="page-break-before: always;"></div> + +## 12. Соответствие и расхождения с эталонной конфигурацией `crm3-26-promo` + +Текст **раздела 12** детализирует то же сравнение с эталоном, что в **сводном виде** изложено в **разделе 7**. + +### 12.1. Эталон для сравнения (уточнение) + +Сравнение выполнено с эталонной конфигурацией: + +- наименование: `crm3-26-promo`; + +- версия эталона: **`3.1.35.11`**; + +- режим совместимости: `Version8\_3\_27`. + +Целевая рабочая конфигурация: + +- `crm3-dev`, версия `3.0.22.28`; + +- режим совместимости `Version8\_3\_16`; + +- внедрение через расширение `crm3-dev.upd5b`. + +### 12.2. Соответствие реализации (что перенесено эквивалентно) + +#### 12.2.1. Макеты нового формата УПД + +Подключение и применение макетов нового формата УПД: + +- `ПФ\_MXL\_УниверсальныйПередаточныйДокумент2026`; + +- `ПФ\_MXL\_УниверсальныйПередаточныйДокумент2026Прослеж`. + +#### 12.2.2. Строка графы 5б + +Формирование строки графы 5б через данные авансовых СФ. + +#### 12.2.3. Регистр `ЖурналУчетаСчетовФактур` + +Использование `ЖурналУчетаСчетовФактур` как основного источника номера и даты СФ на аванс. + +#### 12.2.4. Поле `ПредставлениеАвансовыеСчетаФактуры` + +Протягивание поля `ПредставлениеАвансовыеСчетаФактуры` в `РезультатПоШапке`. + +#### 12.2.5. Параметр шапки печати + +Заполнение `ОбластьШапка.Параметры.АвансовыеСчетаФактуры` в печати УПД 2026. + +### 12.3. Адаптации под `crm3-dev` (допустимые расхождения без потери результата) + +#### 12.3.1. Связь с документом `СчетФактураВыданныйАванс` + +Связка платежного документа с `СчетФактураВыданныйАванс` выполнена по реквизитам: + +- `НомерПлатежноРасчетногоДокумента`; + +- `ДатаПлатежноРасчетногоДокумента`, + +поскольку в рабочей базе структура данных отличается от эталона. + +#### 12.3.2. Вставка поля в текст запроса шапки + +Вставка поля `ПредставлениеАвансовыеСчетаФактуры` в текст запроса шапки реализована через `СтрЗаменить` в рамках ограничений расширения и фактической структуры типового текста. + +#### 12.3.3. Ветвление по датам (1096 и 2026) + +Для периода `01.10.2024 – 31.12.2025` сохранена ветка 1096 (переходный период), для дат `\>= 01.01.2026` используется новая форма 2026. + +#### 12.3.4. Области макета для наборов + +Для новых макетов 2026 добавлена адаптация по областям наборов (`Строка` вместо `СтрокаНабор` / `СтрокаКомплектующие`, если соответствующие области отсутствуют). + +### 12.4. Целевые функциональные расхождения (осознанные) + +#### 12.4.1. Дополнительный fallback (п. 1.4.8) в печати + +В `crm3-dev.upd5b` реализован дополнительный вычислительный fallback в печати: + +- функция **`упд5б\_ПолучитьПредставлениеАвансовыхСчетовФактурДляПечати`** (новая, вызывается из расширенной **`ЗаполнитьТабличныйДокументУПД`**, см. п. 4.0); + +- применяется, если в `РезультатПоШапке` поле `ПредставлениеАвансовыеСчетаФактуры` присутствует, но приходит пустым. + +#### 12.4.2. Обоснование отличия от эталона + +Данный fallback отсутствует в чистом эталонном сценарии и добавлен как стабилизирующая мера для рабочей базы `crm3-dev`. + +#### 12.4.3. При отсутствии данных исправления + +Формат fallback-строки по исправлению в этом механизме: **`исправление № -- от --`** при отсутствии данных исправления. + +### 12.5. Вывод по соответствию + +#### 12.5.1. Бизнес-результат + +По целевому бизнес-результату (актуальная форма УПД 2026 и корректная графа 5б) реализация соответствует эталонной логике `crm3-26-promo`. + +#### 12.5.2. Характер остальных расхождений + +Имеющиеся расхождения носят технический и адаптационный характер и обусловлены: + +- отличиями версии платформенной и прикладной базы (`3.0.22.28` и `3.1.35.11`); + +- отличиями структуры данных рабочей системы; + +- необходимостью устойчивой работы в текущем продуктивном контуре. + +### 12.6. Формальная таблица соответствия + +Нумерация строк: **12.6.N** — компонент; **12.6.N.M** — уточняющий подпункт (эталон, реализация, статус). + +#### 12.6.1. Макет УПД для 2026 + +**12.6.1.1.** Эталон: `ОбщийМакет.ПФ\_MXL\_УниверсальныйПередаточныйДокумент2026`. +**12.6.1.2.** Реализация в `crm3-dev.upd5b`: используется тот же `CommonTemplate`. +**12.6.1.3.** Статус: **соответствует**. + +#### 12.6.2. Макет УПД 2026 (прослеживаемые товары) + +**12.6.2.1.** Эталон: `ОбщийМакет.ПФ\_MXL\_УниверсальныйПередаточныйДокумент2026Прослеж`. +**12.6.2.2.** Реализация в `crm3-dev.upd5b`: используется тот же `CommonTemplate`. +**12.6.2.3.** Статус: **соответствует**. + +#### 12.6.3. Раздел 5 (по документу оплаты) + +**12.6.3.1.** Эталон: формируется через `СтрокаПоДокументу`. +**12.6.3.2.** Реализация в `crm3-dev.upd5b`: поведение сохранено, совместимо с legacy. +**12.6.3.3.** Статус: **соответствует**. + +#### 12.6.4. Раздел 5а (документы отгрузки) + +**12.6.4.1.** Эталон: для новых форм используется отдельный параметр шапки. +**12.6.4.2.** Реализация в `crm3-dev.upd5b`: для 2026 заполняется `ДокументыОбОтгрузке`, для legacy сохранен `ПоДокументуОтгрузки`. +**12.6.4.3.** Статус: **соответствует (с адаптацией)**. + +#### 12.6.5. Раздел 5б (данные) + +**12.6.5.1.** Эталон: формирование строки авансовых СФ из контура СФ и регистров. +**12.6.5.2.** Реализация в `crm3-dev.upd5b`: реализовано через ПРД, `СчетФактураВыданныйАванс` и `ЖурналУчетаСчетовФактур`. +**12.6.5.3.** Статус: **соответствует**. + +#### 12.6.6. Поле шапки 5б + +**12.6.6.1.** Эталон: `ПредставлениеАвансовыеСчетаФактуры` в наборе данных печати. +**12.6.6.2.** Реализация в `crm3-dev.upd5b`: поле добавлено в `РезультатПоШапке`. +**12.6.6.3.** Статус: **соответствует**. + +#### 12.6.7. Вывод 5б в печатную форму + +**12.6.7.1.** Эталон: `ОбластьШапка.Параметры.АвансовыеСчетаФактуры`. +**12.6.7.2.** Реализация в `crm3-dev.upd5b`: параметр заполняется в ветке 2026. +**12.6.7.3.** Статус: **соответствует**. + +#### 12.6.8. Источник номера и даты СФ на аванс + +**12.6.8.1.** Эталон: приоритет `ЖурналУчетаСчетовФактур`. +**12.6.8.2.** Реализация в `crm3-dev.upd5b`: приоритет `ЖурналУчетаСчетовФактур` с учетом структуры `crm3-dev`. +**12.6.8.3.** Статус: **соответствует**. + +#### 12.6.9. Связка ПРД и СФ на аванс + +**12.6.9.1.** Эталон: реализована в контуре эталона. +**12.6.9.2.** Реализация в `crm3-dev.upd5b`: адаптирована на связку по номеру и дате ПРД. +**12.6.9.3.** Статус: **адаптация**. + +#### 12.6.10. Поведение при пустом значении 5б в шапке + +**12.6.10.1.** Эталон: штатный контур без дополнительного fallback. +**12.6.10.2.** Реализация в `crm3-dev.upd5b`: добавлен fallback **`упд5б\_ПолучитьПредставлениеАвансовыхСчетовФактурДляПечати`** (новая функция; типовой одноимённой процедуры нет, см. п. 4.0). +**12.6.10.3.** Статус: **расширено (целевое отклонение)**. + +#### 12.6.11. Совместимость с периодом 01.10.2024–31.12.2025 + +**12.6.11.1.** Эталон: переходный контур. +**12.6.11.2.** Реализация в `crm3-dev.upd5b`: сохранена отдельная ветка 1096. +**12.6.11.3.** Статус: **соответствует**. + +#### 12.6.12. Совместимость со старыми форматами + +**12.6.12.1.** Эталон: исторические ветки доступны. +**12.6.12.2.** Реализация в `crm3-dev.upd5b`: legacy-ветки сохранены, смешанная печать контролируется. +**12.6.12.3.** Статус: **соответствует**. + + +<div style="page-break-before: always;"></div> + +## 13. Приложение Б. Реестр изменений в формате "объект -> метод -> фрагмент -> назначение" + +В колонке «метод» указано **имя в модуле расширения**. Для имён **`упд5б\_…`** расшифровка **типовой расширяемой** процедуры или функции (если применимо) дана в **п. 4.0** и в подпунктах **4.2–4.3**. + +### 13.1. Модуль `СчетФактураВыданный` + +1. Объект: `Documents/СчетФактураВыданный/Ext/ManagerModule.bsl`. 1.1. Метод: `упд5б\_ПоместитьВременнуюТаблицуПлатежноРасчетныхДокументов`. +Фрагмент: `Колонки.Добавить("СтрокаАвансовыеСчетаФактуры")`. +Назначение: добавить контейнер итогового текстового представления графы 5б. + +2. Объект: `Documents/СчетФактураВыданный/Ext/ManagerModule.bsl`. 2.1. Метод: `упд5б\_ПоместитьВременнуюТаблицуПлатежноРасчетныхДокументов`. +Фрагмент: добавление колонок `РасчетныйДокумент`, `Номер/ДатаСчетаФактурыНаАванс`, `Номер/ДатаИсправления...`. +Назначение: подготовить структуру ТЗ ПРД для переноса реквизитов СФ на аванс. + +3. Объект: `Documents/СчетФактураВыданный/Ext/ManagerModule.bsl`. 3.1. Метод: `упд5б\_ПоместитьВременнуюТаблицуПлатежноРасчетныхДокументов`. +Фрагмент: `НоваяСтрока.СтрокаАвансовыеСчетаФактуры = упд5б\_СтрокаАвансовыеСчетаФактуры(...)`. +Назначение: рассчитать строку 5б по документу и сохранить в сводной таблице. + +4. Объект: `Documents/СчетФактураВыданный/Ext/ManagerModule.bsl`. 4.1. Метод: `упд5б\_ПоместитьВременнуюТаблицуПлатежноРасчетныхДокументов`. +Фрагмент: в `ПОМЕСТИТЬ ТаблицаПлатежноРасчетныеДокументы` добавлена колонка `СтрокаАвансовыеСчетаФактуры`. +Назначение: передать значение 5б в дальнейшие запросы шапки. + +5. Объект: `Documents/СчетФактураВыданный/Ext/ManagerModule.bsl`. 5.1. Метод: `упд5б\_ЗаполнитьТаблицуПлатежноРасчетныхДокументовПоВыборке`. +Фрагмент: `ЗаполнитьЗначенияСвойств(... "РасчетныйДокумент, НомерСчетаФактурыНаАванс, ...")`. +Назначение: прокинуть поля 5б из выборки запроса в строки ПРД. + +6. Объект: `Documents/СчетФактураВыданный/Ext/ManagerModule.bsl`. 6.1. Метод: `упд5б\_ЗаполнитьТаблицуПлатежноРасчетныхДокументовПоВыборке`. +Фрагмент: расширенная `Свернуть(...)` с полями 5б. +Назначение: не терять разные авансовые СФ при группировке строк. + +7. Объект: `Documents/СчетФактураВыданный/Ext/ManagerModule.bsl`. 7.1. Метод: `упд5б\_СтрокаАвансовыеСчетаФактуры`. +Фрагмент: новый экспортный метод. +Назначение: собрать строку вида `№ ... от ..., исправление № ... от ...` по данным ПРД. + +8. Объект: `Documents/СчетФактураВыданный/Ext/ManagerModule.bsl`. 8.1. Метод: `упд5б\_СтрокаАвансовыеСчетаФактуры`. +Фрагмент: проверка входа `ТаблицаЗначений`/табличная часть через `Выгрузить()`. +Назначение: обеспечить устойчивую работу функции для разных типов входных данных. + +9. Объект: `Documents/СчетФактураВыданный/Ext/ManagerModule.bsl`. 9.1. Метод: `упд5б\_ТекстЗапросаПолученияНомеровИДатПлатежноРасчетныхДокументов`. +Фрагмент: полная замена текста запроса на многоэтапный с ВТ. +Назначение: реализовать контур поиска СФ на аванс и данных исправления. + +10. Объект: `Documents/СчетФактураВыданный/Ext/ManagerModule.bsl`. 10.1. Метод: `упд5б\_ТекстЗапросаПолученияНомеровИДатПлатежноРасчетныхДокументов`. +Фрагмент: `втДанныеПлатежноРасчетныхДокументов` + `втНомераИсправленийСчетовФактурНаАванс`. +Назначение: разнести этапы вычисления и обеспечить стабильные связи. + +11. Объект: `Documents/СчетФактураВыданный/Ext/ManagerModule.bsl`. 11.1. Метод: `упд5б\_ТекстЗапросаПолученияНомеровИДатПлатежноРасчетныхДокументов`. +Фрагмент: соединение с `РегистрСведений.ЖурналУчетаСчетовФактур`. +Назначение: получать номер/дату СФ на аванс и исправления из целевого регистра. + +12. Объект: `Documents/СчетФактураВыданный/Ext/ManagerModule.bsl`. 12.1. Метод: `упд5б\_ТекстЗапросаДанныхШапкиДляПечатиСчетаФактуры`. +Фрагмент: `СтрЗаменить` блока `КАК СтрокаПоДокументу ...` -> добавление `КАК ПредставлениеАвансовыеСчетаФактуры`. +Назначение: включить поле 5б в основной SELECT шапки. + +13. Объект: `Documents/СчетФактураВыданный/Ext/ManagerModule.bsl`. 13.1. Метод: `упд5б\_ТекстЗапросаДанныхШапкиДляПечатиСчетаФактуры`. +Фрагмент: `СтрЗаменить` в ветке `ОБЪЕДИНИТЬ ВСЕ` с пустым `ПредставлениеАвансовыеСчетаФактуры`. +Назначение: согласовать структуру колонок во всех ветках объединения. + +### 13.2. Модуль `ПечатьОбщихФорм` + +1. Объект: `DataProcessors/ПечатьОбщихФорм/Ext/ManagerModule.bsl`. 1.1. Метод: `упд5б\_ЗаполнитьТабличныйДокументУПД`. +Фрагмент: подключение макетов `ПФ\_MXL\_...2026` и `...2026Прослеж`. +Назначение: включить актуальные формы УПД 2026. + +2. Объект: `DataProcessors/ПечатьОбщихФорм/Ext/ManagerModule.bsl`. 2.1. Метод: `упд5б\_ЗаполнитьТабличныйДокументУПД`. +Фрагмент: введение флага `ЕстьПостановление2026`. +Назначение: управлять веткой новой формы и параметрами шапки. + +3. Объект: `DataProcessors/ПечатьОбщихФорм/Ext/ManagerModule.bsl`. 3.1. Метод: `упд5б\_ЗаполнитьТабличныйДокументУПД`. +Фрагмент: блок legacy-выбора макетов с `ЭффективнаяДатаУПД \< '20241001'`. +Назначение: исключить конфликты флагов старых/новых форматов. + +4. Объект: `DataProcessors/ПечатьОбщихФорм/Ext/ManagerModule.bsl`. 4.1. Метод: `упд5б\_ЗаполнитьТабличныйДокументУПД`. +Фрагмент: выбор 2026/2026Прослеж по наличию прослеживаемых товаров. +Назначение: выбирать корректный макет УПД нового формата. + +5. Объект: `DataProcessors/ПечатьОбщихФорм/Ext/ManagerModule.bsl`. 5.1. Метод: `упд5б\_ЗаполнитьТабличныйДокументУПД`. +Фрагмент: проверка запрета смешанной печати legacy и 2026. +Назначение: сохранить корректность пакетной печати смешанных наборов. + +6. Объект: `DataProcessors/ПечатьОбщихФорм/Ext/ManagerModule.bsl`. 6.1. Метод: `упд5б\_ЗаполнитьТабличныйДокументУПД`. +Фрагмент: для наборов в 2026 использовать область `Строка`. +Назначение: устранить ошибку отсутствия областей `СтрокаНабор/СтрокаКомплектующие` в новых макетах. + +7. Объект: `DataProcessors/ПечатьОбщихФорм/Ext/ManagerModule.bsl`. 7.1. Метод: `упд5б\_ЗаполнитьТабличныйДокументУПД`. +Фрагмент: выгрузка `РезультатПоТабличнойЧасти` в ТЗ + свертка. +Назначение: нормализовать состав строк и подготовить корректные данные печати. + +8. Объект: `DataProcessors/ПечатьОбщихФорм/Ext/ManagerModule.bsl`. 8.1. Метод: `упд5б\_ЗаполнитьТабличныйДокументУПД`. +Фрагмент: `упд5б\_ДобавитьОтсутствующиеКолонкиВТаблицуЗначений(...)`. +Назначение: безошибочно сворачивать ТЗ при неполном наборе колонок. + +9. Объект: `DataProcessors/ПечатьОбщихФорм/Ext/ManagerModule.bsl`. 9.1. Метод: `упд5б\_ЗаполнитьТабличныйДокументУПД`. +Фрагмент: заполнение `ОбластьШапка.Параметры.ДокументыОбОтгрузке`. +Назначение: реализовать графу 5а для макетов 2026. + +10. Объект: `DataProcessors/ПечатьОбщихФорм/Ext/ManagerModule.bsl`. 10.1. Метод: `упд5б\_ЗаполнитьТабличныйДокументУПД`. +Фрагмент: вычисление `ВходПредставлениеАвансовыеСчетаФактуры` и fallback. +Назначение: реализовать устойчивое заполнение графы 5б при пустой шапке. + +11. Объект: `DataProcessors/ПечатьОбщихФорм/Ext/ManagerModule.bsl`. 11.1. Метод: `упд5б\_ЗаполнитьТабличныйДокументУПД`. +Фрагмент: `ОбластьШапка.Параметры.АвансовыеСчетаФактуры = ...`. +Назначение: передать итоговое значение 5б в макет 2026. + +12. Объект: `DataProcessors/ПечатьОбщихФорм/Ext/ManagerModule.bsl`. 12.1. Метод: `упд5б\_ЗаполнитьТабличныйДокументУПД`. +Фрагмент: заполнение `ПредставлениеГТД` для строк 2026. +Назначение: корректно вывести ГТД в новых шаблонах. + +13. Объект: `DataProcessors/ПечатьОбщихФорм/Ext/ManagerModule.bsl`. 13.1. Метод: `упд5б\_ЗаполнитьТабличныйДокументУПД`. +Фрагмент: коррекция НДС (`Без НДС` -> `0`, `НДС0` -> `0%`, прочие ставки). +Назначение: привести вывод ставок/сумм НДС к требуемому виду в новой форме. + +14. Объект: `DataProcessors/ПечатьОбщихФорм/Ext/ManagerModule.bsl`. 14.1. Метод: `ДействуетПостановление2026`. +Фрагмент: новый метод `\>= '20260101'`. +Назначение: централизовать условие применения новой формы УПД. + +15. Объект: `DataProcessors/ПечатьОбщихФорм/Ext/ManagerModule.bsl`. 15.1. Метод: `упд5б\_ПолучитьПредставлениеАвансовыхСчетовФактурДляПечати`. +Фрагмент: fallback-запрос ПРД -> СФА -> Журнал СФ. +Назначение: восстанавливать графу 5б напрямую при пустом поле в `РезультатПоШапке`. + +16. Объект: `DataProcessors/ПечатьОбщихФорм/Ext/ManagerModule.bsl`. 16.1. Метод: `упд5б\_ДобавитьОтсутствующиеКолонкиВТаблицуЗначений`. +Фрагмент: новый вспомогательный метод. +Назначение: добавлять недостающие колонки перед `Свернуть(...)`. + +17. Объект: `DataProcessors/ПечатьОбщихФорм/Ext/ManagerModule.bsl`. 17.1. Метод: `упд5б\_ПолучитьЗначениеПоУмолчаниюПоТипу`. +Фрагмент: новый вспомогательный метод. +Назначение: выдавать default-значение под тип новой колонки. + +18. Объект: `DataProcessors/ПечатьОбщихФорм/Ext/ManagerModule.bsl`. 18.1. Метод: `упд5б\_ОпределитьТипКолонкиПоИмени`. +Фрагмент: новый вспомогательный метод. +Назначение: определять тип добавляемых колонок перед заполнением. + +### 13.3. Метаданные расширения + +1. Объект: `Configuration.xml`. 1.1. Элемент: `ChildObjects`. +Фрагмент: `CommonTemplate.ПФ\_MXL\_УниверсальныйПередаточныйДокумент2026`. +Назначение: подключить новый макет УПД 2026. + +2. Объект: `Configuration.xml`. 2.1. Элемент: `ChildObjects`. +Фрагмент: `CommonTemplate.ПФ\_MXL\_УниверсальныйПередаточныйДокумент2026Прослеж`. +Назначение: подключить новый макет УПД 2026 (прослеживаемые товары). + +3. Объект: `Configuration.xml`. 3.1. Элемент: `ChildObjects`. +Фрагмент: `InformationRegister.ЖурналУчетаСчетовФактур`. +Назначение: обеспечить использование регистра для данных СФ на аванс. + +4. Объект: `Configuration.xml`. 4.1. Элемент: `Properties`. +Фрагмент: `Version=1.0.0.37`. +Назначение: зафиксировать актуальную версию поставки доработки. + + +## 14. Исправления и доработки + +### 14.1. Корректировка вывода графы 5б (версия 1.0.0.37) + +В рамках эксплуатации в рабочей базе выявлен дефект формирования строки графы **5б** в печати УПД: + +- при отсутствии данных по исправлению СФ выводилась заглушка `исправление № -- от --`; +- при формировании строки 5б в отдельных сценариях могли повторно выводиться одинаковые фрагменты. + +В версии расширения **`1.0.0.37`** выполнены доработки: + +- заглушка по исправлению СФ исключена из вывода; блок `исправление № ... от ...` теперь выводится только при фактическом наличии номера и даты исправления; +- в логике формирования строки 5б добавлена дедупликация фрагментов, чтобы исключить повторный вывод одинаковых значений; +- fallback в печати при отсутствии значения в шапке возвращает пустую строку вместо шаблона-заглушки. + +Результат: в графе **5б** выводятся только фактические сведения без фиктивных значений и без повторов одинаковых элементов. + +### 14.2. Заполнение граф 1а, А, 5, 9 в УПД 2026 (версия 1.0.2.46) + +В рабочей базе зафиксирован критический дефект печати УПД 2026: при печати из `Счет-фактура выданный` (при пустой табличной части СФ и заполненной табличной части документа-основания `Реализация`) графы **1а**, **А**, **5**, **9** выводились как `--`. + +В версии расширения **`1.0.2.46`** выполнены доработки: + +- сохранен и использован fallback-источник строк из `ДокументОснование.Товары` для случаев, когда `СФ.Товары` пуст; +- добавлена нормализация данных строк до структуры, ожидаемой печатью (код/наименование/суммы); +- выполнено явное сопоставление значений в параметры области `Строка` макета УПД 2026 по фактическим именам параметров макета: + - `ТоварКод` <- `НоменклатураКод`; + - `ТоварНаименование` <- `НоменклатураНаименование`; + - `Стоимость` <- `СуммаБезНДС`; + - `Всего` <- `СуммаСНДС`. + +Результат: в печатной форме УПД 2026 графы **1а**, **А**, **5**, **9** заполняются фактическими значениями номенклатуры и сумм вместо `--`. + +### 14.3. Заполнение графы 10а в УПД 2026 (версия 1.0.2.47) + +Дополнительно в рабочей базе выявлен дефект печати УПД 2026: при наличии кода страны в графе **10** поле графы **10а** (краткое наименование страны происхождения) выводилось как `--`. + +В версии расширения **`1.0.2.47`** выполнена доработка: + +- в ветке печати для макета 2026 добавлено явное заполнение параметра строки `ПредставлениеСтраны` из данных `СтранаПроисхождения` табличной части (с безопасным fallback к строковому представлению значения). + +Результат: при наличии данных страны происхождения графа **10а** заполняется фактическим наименованием страны и не выводится как `--`. + +### 14.4. Заполнение итоговых граф 5 и 9 в УПД 2026 (версия 1.0.2.48) + +В рабочей базе выявлен дефект итоговой строки печати УПД 2026: в строке итогов графы **5** и **9** выводились как `--`, несмотря на наличие рассчитанных сумм по документу. + +В версии расширения **`1.0.2.48`** выполнена доработка: + +- для макета УПД 2026 добавлено явное заполнение параметров итоговой области по фактическим именам макета: + - `ИтогоСтоимость` <- `ИтогоСуммаБезНДС`; + - `ИтогоВсего` <- `ИтогоСуммаСНДС`. + +Результат: в итоговой строке УПД 2026 графы **5** и **9** заполняются расчетными суммами и не выводятся как `--`. + +### 14.5. Исключение чужих СФА в графе 5б при совпадающих ПРД (версия 1.0.2.49) + +В рабочей базе выявлен дефект отбора данных для графы **5б**: при совпадении номера и даты ПРД у разных плательщиков в строку 5б могли попадать две СФА, одна из которых не относится к текущей УПД. + +В версии расширения **`1.0.2.49`** выполнена доработка: + +- в запросы подбора СФА для графы 5б добавлено ограничение по контрагенту: + - `СчетФактураВыданный.Контрагент = СчетФактураАванс.Контрагент`; +- исправление внесено в обе точки формирования строки 5б: + - в модуль подготовки шапки печати; + - в fallback-функцию формирования представления авансовых СФ. + +Результат: при совпадении номера/даты ПРД у разных контрагентов в графу **5б** попадают только СФА, относящиеся к контрагенту текущей УПД. + +### 14.6. Исключение заглушки исправления в графе 5б (версия 1.0.2.50) + +В рабочей базе после обновления выявлен дефект вывода графы **5б**: при отсутствии фактических данных по исправлению СФА в строке по-прежнему печатался фрагмент `исправление № -- от --` (в том числе повторно для нескольких СФА). + +В версии расширения **`1.0.2.50`** выполнена доработка: + +- в функции формирования строки 5б (`упд5б_СтрокаАвансовыеСчетаФактуры`) убран fallback-заполнитель `"--"` для номера и даты исправления; +- при отсутствии данных исправления значения остаются пустыми, и блок `, исправление № ... от ...` не добавляется в текст графы 5б. + +Результат: в графе **5б** выводятся только фактические реквизиты СФА; фиктивный фрагмент `исправление № -- от --` не печатается. + +### 14.7. Пакет доработок УПД 2026 по подвалу и ответственным лицам (версии 1.0.2.51-1.0.2.72) + +В рабочей базе по итогам тестовой печати УПД 2026/2026Прослеж выявлен набор связанных дефектов в блоках подвала и нумерации листов, а также в выборе ответственных лиц организации при печати из `РеализацияТоваровУслуг`. + +В версиях расширения **`1.0.2.51`** - **`1.0.2.72`** выполнен пакет доработок: + +- восстановлен вывод и заполнение области `ПодвалНакладной` для форм 2026 (включая параметры `ДатаОтгрузкиПередачи`, `Основание`, `КоличествоЛистов`); +- устранены ошибки заполнения `НумерацияЛистов` для 2026-форм (учет отличий параметров макета и безопасное заполнение без обращения к отсутствующим реквизитам); +- удален вызов недоступной в `crm3-dev` процедуры `УдалитьВсеОбластиФаксимиле`; +- для параметров `ФИООтветственного`, `ДолжностьОтветственного`, `ФИОРуководителя`, `ФИОГлавногоБухгалтера` добавлен выбор по `Справочник.ОтветственныеЛицаОрганизаций` с учетом даты документа и явной проверкой периода действия записи; +- при выборе актуальных назначений реализован приоритет записи с максимальной `ДатаНачала` среди действующих на дату документа (исключены завершенные назначения); +- добавлен резервный расчет для параметров `ПредставлениеОрганизации` и `ПредставлениеКонтрагента`, если они не пришли из базового заполнения подвала. +- для параметров `ФИОКладовщика` и `ДолжностьКладовщика` в `ПодвалНакладной` макетов 2026 перенесен алгоритм legacy-УПД: `ФИОКладовщика` формируется через `ФизическиеЛицаУТ.ФамилияИнициалыФизЛица(Кладовщик, Дата)`, должность берется из `ДанныеПечати.ДолжностьКладовщика`. + +Результат: печать УПД 2026/2026Прослеж формирует подвал корректно; поля ответственных лиц и экономических субъектов заполняются из актуальных на дату документа данных и не используют завершенные назначения. + +### 14.8. Пакет доработок представления номенклатуры, серии и срока годности в УПД 2026 (версии 1.0.2.73-1.0.2.90) + +В рабочей базе по результатам целевых тестов печати УПД 2026 (включая сценарий печати из `СчетФактураВыданный` по документу-основанию `РеализацияТоваровУслуг`) выполнен пакет доработок формирования параметра `ТоварНаименование`. + +В версиях расширения **`1.0.2.73`** - **`1.0.2.90`** реализовано: + +- выравнивание заполнения `ФИОРуководителя`, `ФИООтветственного`, `ДолжностьОтветственного` относительно алгоритмов legacy-УПД (включая перенос логики из `ФИОРуководителяОрганизации`); +- нормализация `ФИООтветственного` (без дублирования должности, с возможностью вывода основания полномочий в тексте); +- перенос алгоритма формирования `ТоварНаименование` на механизм `НоменклатураКлиентСервер.ПредставлениеНоменклатурыДляПечати(...)` с учетом характеристики; +- добавление расчета и вывода серии и срока годности для 2026-форм: + - отдельный вывод номера серии (`серия <номер>`); + - вывод срока годности (`срок годности до <дата>`); + - при совпадении номера серии с характеристикой исключен дублирующий вывод характеристики в скобках; +- добавлены отдельные служебные функции с префиксом `упд5б_` для исключения конфликтов с алгоритмами расширения `crm3-dev.rhana`: + - получение документа-основания из данных печати; + - получение хвоста срока годности; + - получение номера серии; +- реализованы fallback-сценарии чтения серий для печати из `СФ` и из `Реализации`, включая чтение из `ДокументОснование`. + +Результат: в УПД 2026 для позиций с серийным учетом формируется строка наименования в требуемом формате, например: `... , серия 258069, срок годности до 31.08.2028`; дублирование характеристики исключается. + +### 14.9. Заполнение шапки УПД 2026 по редакции постановления (версии 1.0.2.91-1.0.2.93) + +В рабочей базе выявлен дефект заполнения верхнего блока шапки макетов `ПФ_MXL_УниверсальныйПередаточныйДокумент2026` и `ПФ_MXL_УниверсальныйПередаточныйДокумент2026Прослеж`: в строке +`(в редакции постановления Правительства Российской Федерации от [ДатаПостановления] № [НомерПостановления])` +печатались пустые значения (`от №`) либо дата с временем. + +В версиях расширения **`1.0.2.91`** - **`1.0.2.93`** выполнены доработки: + +- алгоритм заполнения приведен к эталонному сценарию `crm3-26-promo` для версий постановления 8/9, с адаптацией под `crm3-dev`; +- для макетов 2026 определен порядок заполнения шапки по дате документа (или дате исправления, если она заполнена): + - при редакции **8** используются реквизиты `НомерПостановления2026` / `ДатаПостановления2026`; + - при редакции **9** используются реквизиты `НомерПостановления26` / `ДатаПостановления26`; +- различия между редакциями **8** и **9** для печатной формы УПД 2026 не являются критичными: структура макета и порядок вывода реквизитов шапки одинаковы, отличается только источник номера и даты редакции постановления; +- добавлен безопасный резерв на случай отсутствия соответствующих функций в текущей конфигурации `crm3-dev`: `№ 26` и дата `23.01.2026`; +- формат вывода `ДатаПостановления` в шапке зафиксирован как строковый, без времени, в виде `23 января 2026 г.` с использованием форматной строки: + - `ДФ='dd MMMM yyyy ""г.""'`. + +Результат: в шапке УПД 2026 корректно выводится редакция постановления в требуемом виде, например: +`...(в редакции постановления Правительства Российской Федерации от 23 января 2026 г. № 26)`. + +### Технический комментарий + +Структура документа: **разделы 1–14** (см. заголовки уровней 2 ниже); внутри разделов — **иерархическая нумерация** подпунктов (например, 1.1 — реквизиты, 1.4.N — термины, **раздел 7** — сравнение с эталоном `crm3-26-promo`, 5.x.y — фактические доработки, приложения А–Б в разделах 11 и 13, исправления в разделе 14). + diff --git a/docs__Улучшения_скрипта_проверки.md b/docs__Улучшения_скрипта_проверки.md new file mode 100644 index 0000000..014e7c8 --- /dev/null +++ b/docs__Улучшения_скрипта_проверки.md @@ -0,0 +1,86 @@ +--- +title: Улучшения скрипта проверки дубликатов +author: Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) +version: 1.0 +date_created: 2025-12-10 +date_modified: 2025-12-10 +show_metadata_block: true +show_index_link: true +--- + +# Улучшения скрипта проверки дубликатов + +## Проблема + +Скрипт не обнаруживал проблем, но при реструктуризации возникала ошибка нарушения уникальности. + +## Причина + +Скрипт проверял только случаи, когда **несколько записей с обнуляемыми ссылками** становятся дубликатами друг друга после обнуления. Но он **не проверял случаи**, когда обнуленные записи совпадают с **уже существующими записями с NULL значениями**. + +### Пример проблемы: + +``` +ДО реструктуризации: +Запись 1: ГлавнаяЗапись=true, Клиент=Партнеры.K1, Объект=X, CRM_Интерес=Y +Запись 2: ГлавнаяЗапись=true, Клиент=NULL, Объект=X, CRM_Интерес=Y ← Уже существует с NULL +Запись 3: ГлавнаяЗапись=true, Клиент=CRM_ПотенциальныеКлиенты.K2, Объект=X, CRM_Интерес=Y ← Будет обнулена + +ПОСЛЕ реструктуризации: +Запись 1: ГлавнаяЗапись=true, Клиент=Партнеры.K1, Объект=X, CRM_Интерес=Y +Запись 2: ГлавнаяЗапись=true, Клиент=NULL, Объект=X, CRM_Интерес=Y +Запись 3: ГлавнаяЗапись=true, Клиент=NULL, Объект=X, CRM_Интерес=Y ← ОБНУЛЕНО, совпала с Записью 2! + +РЕЗУЛЬТАТ: Запись 2 и Запись 3 стали ДУБЛИКАТАМИ! +``` + +## Решение + +Добавлена **дополнительная проверка**, которая: + +1. ✅ Получает все записи регистра (включая те, у которых уже есть NULL) +2. ✅ Создает структуру всех существующих комбинаций измерений +3. ✅ Для каждой записи с обнуляемыми ссылками: + - Симулирует обнуление ссылок + - Проверяет, не совпадет ли обнуленная запись с уже существующей +4. ✅ Выводит предупреждение, если найдены совпадения + +## Что изменилось в скрипте + +### Добавлена проверка совпадений + +Скрипт теперь проверяет: +- ✅ Совпадение обнуленных записей с уже существующими записями с NULL +- ✅ Все комбинации обнуления измерений (Клиент, Объект, CRM_Интерес) +- ✅ Комбинированное обнуление нескольких измерений одновременно + +### Новые сообщения + +Скрипт теперь выводит: +- ⚠️ **"КРИТИЧНО: Найдено X записей, которые после обнуления совпадут с уже существующими записями!"** +- ✅ **"Совпадений обнуленных записей с уже существующими не найдено."** (если проблем нет) + +## Как использовать + +1. Запустите скрипт `check_duplicates_crm_journal.bsl` +2. Проверьте вывод: + - Если есть предупреждения о совпадениях - **необходимо удалить проблемные записи** + - Если все проверки пройдены - регистр готов к реструктуризации + +## Рекомендации + +Если скрипт находит совпадения: + +1. **Удалите проблемные записи** перед реструктуризацией: + - Записи с `Клиент=CRM_ПотенциальныеКлиенты.*` + - Записи с `Объект`, ссылающимся на удаляемые типы + - Записи с `CRM_Интерес`, ссылающимся на удаляемые документы + +2. **Повторно запустите скрипт** для проверки + +3. **Выполните реструктуризацию** только после того, как все проверки пройдены + +## Важно + +⚠️ Скрипт теперь проверяет **все возможные сценарии** нарушения уникальности, включая совпадение с уже существующими записями. Это должно решить проблему, когда скрипт не находил проблем, но при реструктуризации возникала ошибка. + diff --git a/docs__ФИНАЛЬНЫЙ_ОТЧЕТ_Анализ_регистров.md b/docs__ФИНАЛЬНЫЙ_ОТЧЕТ_Анализ_регистров.md new file mode 100644 index 0000000..1dce77f --- /dev/null +++ b/docs__ФИНАЛЬНЫЙ_ОТЧЕТ_Анализ_регистров.md @@ -0,0 +1,279 @@ +--- +title: "ФИНАЛЬНЫЙ ОТЧЕТ: Глубинный анализ регистров на нарушение уникальности данных" +author: Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) +version: 1.0 +date_created: 2025-12-09 +date_modified: 2025-12-09 +show_metadata_block: true +show_index_link: true +--- + +# ФИНАЛЬНЫЙ ОТЧЕТ: Глубинный анализ регистров на нарушение уникальности данных + +> 📚 **См. также:** [Оглавление документов](docs__INDEX.md) | [Глубинный анализ регистров](docs__Глубинный_анализ_регистров.md) | [Итоговый отчет](docs__Итоговый_отчет_анализа_регистров.md) | [Анализ ошибок обновления](docs__Анализ_ошибок_обновления.md) + +## Резюме + +Проведен полный анализ всех регистров сведений и регистров накопления в конфигурации `CRM3devLocal` на предмет возможного нарушения уникальности данных после обновления до конфигурации `CRM326/CRM326_TEST`. + +**Дата анализа:** 2024 +**Версия конфигурации:** CRM3devLocal → CRM326/CRM326_TEST + +--- + +## Методология анализа + +1. **Сравнение конфигураций:** Сравнение объектов в `CRM3devLocal` и `CRM326/CRM326_TEST` для выявления удаляемых объектов +2. **Автоматический анализ:** Сканирование всех файлов метаданных регистров (801 регистр) +3. **Проверка удаляемых объектов:** Анализ измерений на ссылки к удаляемым объектам +4. **Выявление рисков:** Определение регистров с потенциальными проблемами уникальности + +--- + +## Статистика анализа + +### Проанализировано +- **Всего регистров:** 801 +- **Регистров сведений:** ~400 +- **Регистров накопления:** ~400 + +### Удаляемые объекты конфигурации +- **Всего удаляемых объектов:** 176 + - **Справочников:** 59 + - **Документов:** 41 + - **Перечислений:** 76 + +### Найдено проблемных регистров: 35 + +--- + +## КРИТИЧЕСКИЕ ПРОБЛЕМЫ (CRITICAL) + +### Все найденные регистры полностью удаляются + +Все 35 проблемных регистров **полностью удаляются** из конфигурации при обновлении. Это означает, что: + +1. **Все данные этих регистров будут потеряны** без возможности автоматического восстановления +2. **Риск нарушения уникальности:** НЕТ (регистры полностью удаляются, данные теряются) +3. **Требуются действия:** Экспорт данных перед обновлением (если данные нужны) + +--- + +## Список удаляемых регистров + +### Регистры накопления (25 регистров) + +1. **CRM_Планирование** - Регистр планирования CRM +2. **rh_ТоварыНаСкладахСебестоимость** - Товары на складах (себестоимость) +3. **ДвиженияДенежныеСредстваПрочиеАктивыПассивы** - Движения денежных средств +4. **ДенежныеСредстваКПоступлениюНаличные** - Денежные средства к поступлению +5. **ДенежныеСредстваКСписаниюСПодотчетныхЛиц** - Денежные средства к списанию +6. **ПартииЗатратНаВыпуск** - Партии затрат на выпуск +7. **ПланыПродаж** - Планы продаж +8. **ПрочиеАктивыПассивы** - Прочие активы и пассивы +9. **РезервыСерийТоваров** - Резервы серий товаров +10. **СебестоимостьТоваров** - Себестоимость товаров +11. **ТМЦВЭксплуатации** - ТМЦ в эксплуатации +12. **ТоварыКОформлениюОтчетовКомитенту** - Товары к оформлению отчетов комитенту +13. **ТоварыКОформлениюПоступления** - Товары к оформлению поступления +14. **ТоварыНаСкладах** - Товары на складах +15. **ТоварыОрганизаций** - Товары организаций +16. **ТоварыОрганизацийКПередаче** - Товары организаций к передаче +17. **ТоварыПереданныеНаКомиссию** - Товары переданные на комиссию +18. **УдалитьДвиженияНоменклатураПрочиеАктивыПассивы** - Удаляемый регистр +19. **УдалитьПартииЗатратНаВыпуск** - Удаляемый регистр +20. **УдалитьПланыПродажИВнутреннегоПотребления** - Удаляемый регистр +21. **УдалитьТоварыКОформлениюОтчетовКомитенту** - Удаляемый регистр +22. **УдалитьТоварыОрганизаций** - Удаляемый регистр +23. **УдалитьТоварыОрганизацийКОформлению** - Удаляемый регистр +24. **УдалитьТоварыОрганизацийКПередаче** - Удаляемый регистр +25. **УдалитьТоварыПереданныеНаКомиссию** - Удаляемый регистр + +### Регистры сведений (10 регистров) + +1. **ВерсииПодсистем** - Версии подсистем +2. **ПервичныеДокументы** - Первичные документы +3. **ПервичныеДокументыМенеджер** - Первичные документы менеджер +4. **ПервичныеДокументыМенеджерРеализация** - Первичные документы менеджер (реализация) +5. **ПроблемыСостоянияСистемы** - Проблемы состояния системы +6. **РеестрДокументов** - Реестр документов +7. **СостоянияЗагрузкиНаложенныхПлатежейСервисДоставки** - Состояния загрузки наложенных платежей +8. **СостоянияОтгрузки** - Состояния отгрузки +9. **СостоянияЭД** - Состояния электронных документов +10. **УдалитьРеестрДокументов** - Удаляемый реестр документов + +--- + +## ВЫСОКИЙ РИСК (HIGH) + +### РегистрНакопления.МатериалыИРаботыВПроизводстве + +**Статус:** ⚠️ ВЫСОКИЙ РИСК - Удаляется измерение + +**Описание проблемы:** +- Из регистра удаляется измерение `УдалитьАналитикаУчетаНоменклатуры` +- Измерение помечено как "(не используется)" в метаданных +- Тип измерения: `CatalogRef.КлючиАналитикиУчетаНоменклатуры` + +**Структура регистра:** +- **Тип:** Регистр накопления (Остатки) +- **Измерения:** + 1. Организация + 2. Номенклатура + 3. Характеристика + 4. Подразделение + 5. Серия + 6. Назначение + 7. **УдалитьАналитикаУчетаНоменклатуры** ⚠️ (УДАЛЯЕТСЯ) + +**Почему это критично:** + +После удаления измерения `УдалитьАналитикаУчетаНоменклатуры` все записи с одинаковыми значениями остальных измерений, но разными значениями удаляемого измерения, станут неразличимыми. Это приведет к нарушению уникальности ключа регистра. + +**Пример проблемы:** + +``` +ДО удаления измерения: +┌─────────────┬──────────────┬─────────────────────────────────────┬──────────┐ +│ Организация │ Номенклатура │ УдалитьАналитикаУчетаНоменклатуры │ Количество│ +├─────────────┼──────────────┼─────────────────────────────────────┼──────────┤ +│ ООО "А" │ Товар1 │ Ключ1 │ 10 │ +│ ООО "А" │ Товар1 │ Ключ2 │ 20 │ +└─────────────┴──────────────┴─────────────────────────────────────┴──────────┘ + +ПОСЛЕ удаления измерения: +┌─────────────┬──────────────┬──────────┐ +│ Организация │ Номенклатура │ Количество│ +├─────────────┼──────────────┼──────────┤ +│ ООО "А" │ Товар1 │ 10 │ ← ДУБЛИКАТ! +│ ООО "А" │ Товар1 │ 20 │ ← ДУБЛИКАТ! +└─────────────┴──────────────┴──────────┘ +→ НАРУШЕНИЕ УНИКАЛЬНОСТИ! +``` + +**Рекомендации:** + +1. **ОБЯЗАТЕЛЬНО** выполнить проверку на дубликаты перед обновлением (использовать скрипт `check_duplicates_materials.bsl`) +2. Если дубликаты найдены - объединить записи или очистить данные +3. Убедиться, что после обработки дубликатов нет + +--- + +## План действий перед обновлением + +### Этап 1: Подготовка (КРИТИЧНО) ⚠️ + +- [ ] **Создать полную резервную копию базы данных** +- [ ] **Экспортировать данные из всех 35 проблемных регистров:** + - [ ] Все 25 регистров накопления + - [ ] Все 10 регистров сведений +- [ ] **Выполнить проверку на дубликаты для регистра МатериалыИРаботыВПроизводстве:** + - [ ] Запустить скрипт `check_duplicates_materials.bsl` + - [ ] Проанализировать результаты + - [ ] Определить стратегию обработки + +### Этап 2: Обработка данных + +#### Для регистра МатериалыИРаботыВПроизводстве: + +- [ ] Если дубликаты НЕ найдены: + - [ ] Можно безопасно применять обновление + - [ ] Измерение будет удалено без последствий + +- [ ] Если дубликаты найдены: + - [ ] Выбрать вариант решения (объединение или очистка) + - [ ] Выполнить обработку данных + - [ ] Повторно проверить на дубликаты + - [ ] Убедиться, что дубликатов больше нет + +#### Для удаляемых регистров: + +- [ ] Определить, нужны ли данные после обновления +- [ ] Если нужны: + - [ ] Создать скрипт миграции данных + - [ ] Протестировать миграцию на копии базы +- [ ] Если не нужны: + - [ ] Можно удалить данные перед обновлением + +### Этап 3: Применение обновления + +- [ ] Применить обновление конфигурации из `CRM326/CRM326_TEST` +- [ ] Проверить отсутствие ошибок при обновлении +- [ ] Проверить целостность данных + +### Этап 4: Верификация + +- [ ] Проверить работу регистра МатериалыИРаботыВПроизводстве +- [ ] Убедиться, что данные корректны +- [ ] Проверить отсутствие ошибок уникальности +- [ ] Провести функциональное тестирование +- [ ] Если данные были мигрированы - проверить их корректность + +--- + +## Инструменты и скрипты + +### Созданные инструменты: + +1. **compare_configurations.py** - сравнение конфигураций для поиска удаляемых объектов +2. **deep_register_analysis.py** - автоматический анализ всех регистров +3. **check_duplicates_materials.bsl** - проверка дубликатов в регистре МатериалыИРаботыВПроизводстве +4. **analyze_registers.py** - базовый анализ регистров +5. **find_references.py** - поиск ссылок на удаляемые объекты + +### Отчеты: + +- `deleted_objects_report.txt` - отчет об удаляемых объектах (176 объектов) +- `deep_register_analysis_report.txt` - детальный отчет анализа регистров (35 проблемных регистров) +- `register_analysis_report.txt` - базовый отчет +- `references_report.txt` - отчет о ссылках + +--- + +## Выводы + +### Критические проблемы: + +1. **35 регистров полностью удаляются:** + - 25 регистров накопления + - 10 регистров сведений + - Все данные этих регистров будут потеряны + +2. **1 регистр имеет удаляемое измерение:** + - РегистрНакопления.МатериалыИРаботыВПроизводстве + - Измерение: УдалитьАналитикаУчетаНоменклатуры + - **ВЫСОКИЙ РИСК нарушения уникальности** + +### Главный риск: + +**РегистрНакопления.МатериалыИРаботыВПроизводстве** может потерять уникальность данных после удаления измерения `УдалитьАналитикаУчетаНоменклатуры`. + +### Обязательные действия: + +1. ✅ **ОБЯЗАТЕЛЬНО** выполнить проверку на дубликаты перед обновлением +2. ✅ **ОБЯЗАТЕЛЬНО** обработать найденные дубликаты +3. ✅ **ОБЯЗАТЕЛЬНО** создать резервную копию базы данных +4. ✅ **ОБЯЗАТЕЛЬНО** экспортировать данные из удаляемых регистров (если они нужны) + +### Рекомендации: + +- Не применять обновление без предварительной проверки на дубликаты +- Использовать созданные скрипты для автоматизации проверки +- Документировать все действия по обработке данных +- Тестировать на копии базы данных перед применением к рабочей базе + +--- + +## Статус анализа + +✅ **Анализ завершен** + +- Проанализировано: 801 регистр +- Найдено проблемных регистров: 35 +- Удаляемых объектов конфигурации: 176 +- Статус: Требуется обработка данных перед обновлением + +--- + +**ВНИМАНИЕ!** Перед применением обновления обязательно выполните все действия из раздела "План действий перед обновлением". + diff --git a/docs__ФИНАЛЬНЫЙ_СПИСОК_РОЛЕЙ_ДЛЯ_ВКЛЮЧЕНИЯ.md b/docs__ФИНАЛЬНЫЙ_СПИСОК_РОЛЕЙ_ДЛЯ_ВКЛЮЧЕНИЯ.md new file mode 100644 index 0000000..6f40546 --- /dev/null +++ b/docs__ФИНАЛЬНЫЙ_СПИСОК_РОЛЕЙ_ДЛЯ_ВКЛЮЧЕНИЯ.md @@ -0,0 +1,141 @@ +--- +title: ФИНАЛЬНЫЙ СПИСОК РОЛЕЙ ДЛЯ ВКЛЮЧЕНИЯ В НОВОЙ СИСТЕМЕ +author: Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) +version: 1.0 +date_created: 2025-12-10 +date_modified: 2025-12-10 +show_metadata_block: true +show_index_link: true +--- + +# ФИНАЛЬНЫЙ СПИСОК РОЛЕЙ ДЛЯ ВКЛЮЧЕНИЯ В НОВОЙ СИСТЕМЕ + +## ⚠️ ВАЖНО: Учет переименований + +В старой системе роли могут называться **"Добавление изменение..."**, а в новой системе **"Добавление и изменение..."**. Это одна и та же роль с разным названием. + +При поиске ролей в новой системе необходимо учитывать это различие. + +--- + +## 📋 СПИСОК РОЛЕЙ ДЛЯ ВКЛЮЧЕНИЯ (16 позиций) + +### 1. Базовые права (CRM) +- **Старая система:** "Базовые права (CRM)" - ✅ Да +- **Новая система:** "Базовые права (CRM)" - ❌ Нет +- **Действие:** ✅ Включить + +### 2. Ввод документа "Отчет по работам" (CRM) +- **Старая система:** "Ввод документа "Отчет по работам" (CRM)" - ✅ Да +- **Новая система:** "Ввод документа "Отчет по работам" (CRM)" - ❌ Нет +- **Действие:** ✅ Включить + +### 3. Выполнение обмена электронными документами +- **Старая система:** "Выполнение обмена электронными документами" - ✅ Да +- **Новая система:** Отсутствует в списке +- **Действие:** ⚠️ Проверить наличие роли и включить (возможно переименована) + +### 4. Выполнение синхронизации данных +- **Старая система:** "Выполнение синхронизации данных" - ✅ Да +- **Новая система:** "Выполнение синхронизации данных" - ❌ Нет +- **Действие:** ✅ Включить + +### 5. Добавление и изменение документов по банку +- **Старая система:** "Добавление и изменение документов по банку" - ✅ Да +- **Новая система:** "Добавление и изменение документов по банку" - ❌ Нет +- **Действие:** ✅ Включить + +### 6. Добавление и изменение реализаций товаров услуг +- **Старая система:** "Добавление и изменение реализаций товаров услуг" - ✅ Да +- **Новая система:** "Добавление и изменение реализаций товаров услуг" - ❌ Нет +- **Действие:** ✅ Включить + +### 7. Добавление и изменение заказов клиентов ⚠️ ПЕРЕИМЕНОВАНИЕ +- **Старая система:** "Добавление изменение заказов клиентов" - ✅ Да +- **Новая система:** "Добавление и изменение заказов клиентов" - ❌ Нет +- **Примечание:** Название отличается: "изменение" → "и изменение" +- **Действие:** ✅ Включить (это та же роль) + +### 8. Добавление и изменение узлов планов обмена ⚠️ ПЕРЕИМЕНОВАНИЕ +- **Старая система:** "Добавление изменение узлов планов обмена" - ✅ Да +- **Новая система:** "Добавление и изменение узлов планов обмена" - ❌ Нет (или отсутствует) +- **Примечание:** Название отличается: "изменение" → "и изменение" +- **Действие:** ✅ Найти роль "Добавление и изменение узлов планов обмена" и включить + +### 9. Использование дополнительных отчетов и обработок УТ ⚠️ ПЕРЕИМЕНОВАНИЕ +- **Старая система:** "Использование дополнительных отчетов и обработок (CRM)" - ✅ Да +- **Новая система:** "Использование дополнительных отчетов и обработок УТ" - ❌ Нет (или нужно проверить) +- **Примечание:** В новой системе "(CRM)" заменено на "УТ" +- **Действие:** ✅ Найти роль "Использование дополнительных отчетов и обработок УТ" и включить + +### 10. Использование интеграции с 1С:Документооборотом +- **Старая система:** "Использование интеграции с 1С:Документооборотом" - ✅ Да +- **Новая система:** "Использование интеграции с 1С:Документооборотом" - ❌ Нет +- **Действие:** ✅ Включить + +### 11. Настройка синхронизации данных ⚠️ ОТСУТСТВУЕТ +- **Старая система:** "Настройка синхронизации данных" - ✅ Да +- **Новая система:** Отсутствует в списке +- **Действие:** ⚠️ Проверить, есть ли под другим названием (например, "Настройка синхронизации файлов") + +### 12. Раздел запасы +- **Старая система:** "Раздел запасы" - ✅ Да +- **Новая система:** "Раздел запасы" - ❌ Нет (или отсутствует) +- **Действие:** ✅ Включить + +### 13. Раздел отчеты и мониторинг +- **Старая система:** "Раздел отчеты и мониторинг" - ✅ Да +- **Новая система:** "Раздел отчеты и мониторинг" - ❌ Нет (или отсутствует) +- **Действие:** ✅ Включить + +### 14. Чтение базовой нормативно-справочной информации +- **Старая система:** "Чтение базовой нормативно-справочной информации" - ✅ Да +- **Новая система:** "Чтение базовой нормативно-справочной информации" - ❌ Нет (или отсутствует) +- **Действие:** ✅ Включить + +### 15. Чтение документов списания поступления безналичных ДС +- **Старая система:** "Чтение документов списания поступления безналичных ДС" - ✅ Да +- **Новая система:** "Чтение документов списания поступления безналичных ДС" - ❌ Нет (или отсутствует) +- **Действие:** ✅ Включить + +### 16. Чтение состояний отгрузки +- **Старая система:** "Чтение состояний отгрузки" - ✅ Да +- **Новая система:** "Чтение состояний отгрузки" - ❌ Нет (или отсутствует) +- **Действие:** ✅ Включить + +--- + +## 📝 Дополнительные роли с возможными переименованиями (требуют проверки) + +Следующие роли из старой системы с "Да" могут иметь аналоги в новой системе с другим названием: + +1. **Добавление изменение корректировок обособленного учета запасов** (старая: Да) + - Проверить в новой: "Добавление и изменение корректировок обособленного учета запасов" + - Если найдена и имеет "Нет" → включить + +2. **Добавление изменение корректировок реализаций** (старая: Да) + - Проверить в новой: "Добавление и изменение корректировок реализаций" + - Если найдена и имеет "Нет" → включить + +3. **Добавление изменение листов кассовой книги** (старая: Да) + - Проверить в новой: "Добавление и изменение листов кассовой книги" + - Если найдена и имеет "Нет" → включить + +--- + +## ✅ Итоговые действия + +1. **Включить все 16 ролей из основного списка** +2. **При поиске ролей учитывать переименования:** + - "Добавление изменение..." → искать "Добавление и изменение..." +3. **Проверить дополнительные роли с возможными переименованиями** +4. **Убедиться, что все роли чтения данных сохранены** + +--- + +## 📊 Статистика + +- **Всего ролей для включения:** 15 (в списке новой системы) +- **Ролей с переименованиями:** 3 (позиции 7, 8, 9) +- **Ролей, отсутствующих в новой системе:** 2 (позиции 3 и 11) + diff --git a/docs__Чеклист_внедрения_графы_5б_УПД_2026-04-21.md b/docs__Чеклист_внедрения_графы_5б_УПД_2026-04-21.md new file mode 100644 index 0000000..a77906f --- /dev/null +++ b/docs__Чеклист_внедрения_графы_5б_УПД_2026-04-21.md @@ -0,0 +1,140 @@ +--- +title: Чек-лист внедрения графы 5б в УПД +version: 1.0 +date_created: 2026-04-21 +date_modified: 2026-04-21 +author: Руководитель отдела ИТ Кудрявцев М.А. (kma@rhana.com) +description: Рабочий чек-лист для разработки и приемки реализации графы 5б в УПД с приоритетом изменений через расширение crm3-dev.rhana. +status: К выполнению +based_on: ТЗ_минимальная_реализация_графы_5б_УПД_2026-04-21.md +based_on_title: Техническое задание - минимальная реализация графы 5б в УПД (через расширение) +based_on_version: 1.1 +show_metadata_block: true +show_index_link: true +show_toc: true +--- + +# Рабочий чек-лист внедрения + +## Ссылки на ТЗ + +- Базовый документ: [ТЗ по графе 5б](docs__ТЗ_минимальная_реализация_графы_5б_УПД_2026-04-21.md) +- Архитектурный принцип: см. раздел `2` ТЗ. +- Карта объектов: см. раздел `4` ТЗ. +- Детализация реализации: см. раздел `5` ТЗ. +- Шаблоны кода: см. раздел `6` ТЗ. +- Правила разработки: см. раздел `7` ТЗ. +- План работ: см. раздел `8` ТЗ. +- Критерии приемки: см. раздел `9` ТЗ. + +## 1. Подготовка + +- [ ] Подтвердить ветку разработки и стенд внедрения (см. разделы `1`, `2` ТЗ). +- [ ] Зафиксировать версии: + - `crm3-dev` + - `crm3-dev.rhana` + - текущий рабочий макет УПД. +- [ ] Создать резервные копии объектов: + - `Documents/СчетФактураВыданный` + - `DataProcessors/ПечатьОбщихФорм` + - макет УПД в расширении. +- [ ] Проверить, что правила `&ИзменениеИКонтроль` применимы для целевых методов (см. раздел `7` ТЗ). + +## 2. Реализация в расширении документа `СчетФактураВыданный` + +Файл: `crm3-dev.rhana/src/Documents/СчетФактураВыданный/Ext/ManagerModule.bsl` (см. разделы `4.1`, `5.1`, `6.1`, `6.2`, `6.3`, `6.4` ТЗ) + +### 2.1. Функция формирования строки 5б +- [ ] Добавить `упд5б_СтрокаАвансовыеСчетаФактуры(ПлатежноРасчетныеДокументы) Экспорт` (шаблон: раздел `6.1` ТЗ). +- [ ] Проверить формат вывода: + - `№ %1 от %2, исправление № %3 от %4` + - разделитель нескольких значений: `; `. + +### 2.2. Временная таблица платежно-расчетных документов +- [ ] Расширить `ПоместитьВременнуюТаблицуПлатежноРасчетныхДокументов(...)` (цельный блок с директивами, раздел `6.2` ТЗ). +- [ ] Добавить колонку `СтрокаАвансовыеСчетаФактуры` (раздел `6.2` ТЗ). +- [ ] Заполнять колонку через `упд5б_СтрокаАвансовыеСчетаФактуры(...)` (раздел `6.2` ТЗ). + +### 2.3. Запрос данных по оплатам/авансовым СФ +- [ ] Расширить `ТекстЗапросаПолученияНомеровИДатПлатежноРасчетныхДокументов()` (цельный блок с директивами, раздел `6.3` ТЗ). +- [ ] Добавить получение полей: + - `НомерСчетаФактурыНаАванс` + - `ДатаСчетаФактурыНаАванс` + - `НомерИсправленияСчетаФактурыНаАванс` + - `ДатаИсправленияСчетаФактурыНаАванс`. +- [ ] Проверить, что используются связи с `Документ.СчетФактураВыданныйАванс`. + +### 2.4. Прокидывание в данные печати +- [ ] Добавить в запрос шапки поле `ПредставлениеАвансовыеСчетаФактуры` (раздел `6.4` ТЗ). +- [ ] Реализовать через `ЕСТЬNULL(...)` (ВТ/данные документа) (раздел `6.4` ТЗ). + +## 3. Реализация в расширении печати УПД + +Файл: `crm3-dev.rhana/src/DataProcessors/ПечатьОбщихФорм/Ext/ManagerModule.bsl` (см. разделы `4.1`, `5.2`, `6.5` ТЗ) + +### 3.1. Вставка в `р_ЗаполнитьТабличныйДокументУПД(...)` +- [ ] Добавить получение `ДанныеПечати.ПредставлениеАвансовыеСчетаФактуры` (раздел `6.5` ТЗ). +- [ ] Добавить fallback: + - `№ -- от --, исправление № -- от --`. +- [ ] Заполнить параметр: + - `ОбластьШапка.Параметры.АвансовыеСчетаФактуры` (раздел `6.5` ТЗ). + +### 3.2. Контроль совместимости +- [ ] Проверить, что при отсутствии поля/значения печать не падает. +- [ ] Проверить, что прочие поля УПД не изменили поведение. + +## 4. Изменение макета УПД (в расширении) + +См. разделы `4.1`, `5.3`, `8` ТЗ. + +- [ ] Добавить параметр `АвансовыеСчетаФактуры` в область `Шапка` (строка 5б). +- [ ] Проверить совпадение имени параметра в макете и коде. +- [ ] Проверить перенос длинной строки в шапке. + +## 5. Стандарты и контроль качества кода + +См. раздел `7` ТЗ. + +- [ ] Все изменения в перехватываемых методах оформлены через `&ИзменениеИКонтроль`. +- [ ] Новые блоки оформлены в `#Вставка` / `#Удаление`. +- [ ] В `#Удаление` нет комментариев и нового текста. +- [ ] Новые методы расширения имеют префикс `упд5б_`. +- [ ] Проверка `check_ext` выполнена без критических несоответствий. + +## 6. Тестовые сценарии (минимум) + +См. разделы `8` и `9` ТЗ. + +### 6.1. Позитивные +- [ ] Реализация с одним авансовым СФ -> 5б заполнена корректно. +- [ ] Реализация с несколькими авансовыми СФ -> значения через `; `. +- [ ] Реализация с исправленным авансовым СФ -> отображаются номер/дата исправления. + +### 6.2. Негативные и граничные +- [ ] Нет авансовых СФ -> вывод fallback. +- [ ] Старые документы без данных 5б печатаются без ошибок. +- [ ] Пустые/частично заполненные значения не ломают формат строки. + +### 6.3. Регрессия +- [ ] УПД без авансов печатается как до внедрения. +- [ ] Графы 5а/6/7/8 работают корректно. +- [ ] Печать из `РеализацияТоваровУслуг` без ошибок. + +## 7. Критерии готовности (Definition of Done) + +См. раздел `9` ТЗ. + +- [ ] В графе 5б выводятся авансовые СФ для закрываемой реализацией оплаты. +- [ ] При отсутствии данных применяется fallback. +- [ ] Изменения выполнены преимущественно в `crm3-dev.rhana`. +- [ ] Протокол тестирования заполнен и подписан. +- [ ] Подготовлен список фактически измененных объектов. + +## 8. Протокол сдачи + +См. разделы `10` и `11` ТЗ. + +- [ ] Передать перечень измененных объектов (файл/метод/тип изменения). +- [ ] Передать скриншоты УПД по 3 ключевым кейсам (1 СФ, несколько СФ, fallback). +- [ ] Передать результаты `check_ext`. +- [ ] Передать итоговую оценку рисков (низкий/средний/высокий) и план отката. diff --git a/manifest.export_docs.71ab8b6a.json b/manifest.export_docs.71ab8b6a.json index dcbfe14..6ba7668 100644 --- a/manifest.export_docs.71ab8b6a.json +++ b/manifest.export_docs.71ab8b6a.json @@ -5,16 +5,124 @@ "files": [ "docs__Checklist_5b_UPD_2026-04-21.md", "docs__INDEX.md", + "docs__PROJECT_CONTEXT.md", + "docs__README_md_to_html.md", + "docs__TZ2_full_UPD_migration_2026-04-21.md", + "docs__TZ_min_5b_UPD_2026-04-21.md", + "docs__diadoc_answer_2026-05-08.md", + "docs__instructions_filter_access_groups.md", + "docs__meta__PROJECT_STRUCTURE.md", "docs__test.md", + "docs__Анализ_доработок_синхронизации_ЗаказКлиента.md", + "docs__Анализ_доработок_синхронизации_РеализацияТоваровУслуг.md", + "docs__Анализ_доработок_складского_учета_и_печати_документов.md", + "docs__Анализ_доработок_формы_приемки_УправлениеПоступлением.md", + "docs__Анализ_механизма_перезаполнения_CRM_ЖурналДокументов.md", + "docs__Анализ_обмена_НДС_22_с_Бухгалтерией_КОРП.md", + "docs__Анализ_обработчиков_обновления_НДС_22.md", "docs__Анализ_ошибок_обновления.md", + "docs__Анализ_переноса_обработки_КредитНотаЗаПериод.md", + "docs__Анализ_печати_пакета_документов_и_складского_учета (v3.0).md", + "docs__Анализ_привязок_серий_номенклатур_к_видам_номенклатур.md", + "docs__Анализ_применения_КредитНота (v1.1).md", + "docs__Анализ_применения_КредитНота.md", + "docs__Анализ_применения_реквизита_Купон (v1.0).md", + "docs__Анализ_применения_реквизита_Купон.md", + "docs__Анализ_различий_crm3-26-test_vs_crm3-dev.md", + "docs__Анализ_рисков_неуникальности_CRM_ЖурналДокументов.md", "docs__Быстрое_решение.md", + "docs__Выводы_сравнения_конфигураций.md", "docs__Глубинный_анализ_регистров.md", + "docs__Дорожная_карта_миграции_CRM3_v0.1.md", + "docs__Инструкция_добавления_ролей_в_профиль.md", + "docs__Инструкция_по_запуску_md_convert.md", "docs__Инструкция_по_исправлению.md", - "docs__ТЗ_минимальная_реализация_графы_5б_УПД_2026-04-21.md" + "docs__Итоговый_отчет_анализа_регистров.md", + "docs__Отчет_о_конвертации.md", + "docs__Оценка_правок_для_переноса_НДС_22.md", + "docs__Оценка_правок_для_переноса_НДС_22_(v1.1).md", + "docs__Перечень_констант_crm3-26-test.md", + "docs__Перечень_констант_crm3-dev.md", + "docs__Проблема_неуникальности_регистра_CRM_ЖурналДокументов.md", + "docs__Проверка_ставки_НДС_22.md", + "docs__РЕЗУЛЬТАТЫ_КОНВЕРТАЦИИ.md", + "docs__Реализация_переноса_НДС_22.md", + "docs__Роли_для_включения_в_новой_системе.md", + "docs__Роли_для_отметки_ДА_осталось.md", + "docs__Сверка_ролей_профиля.md", + "docs__Сверка_ролей_с_учетом_переименований.md", + "docs__Сводка_переноса_и_настройки_актуальной_формы_УПД.md", + "docs__Сводка_рисков_неуникальности.md", + "docs__Список_объектов_для_удаления_из_подсистем.md", + "docs__Список_ролей_для_отметки_ДА.md", + "docs__Сравнение_констант_crm3-dev_vs_crm3-26-test.md", + "docs__ТЗ_2_полный_перенос_логики_УПД_из_crm3-26-promo_в_crm3-dev_2026-04-21.md", + "docs__ТЗ_3_Внедрение_формы_УПД_в_текущую_рабочую_базу_2026-05-05.md", + "docs__ТЗ_минимальная_реализация_графы_5б_УПД_2026-04-21.md", + "docs__Улучшения_скрипта_проверки.md", + "docs__ФИНАЛЬНЫЙ_ОТЧЕТ_Анализ_регистров.md", + "docs__ФИНАЛЬНЫЙ_СПИСОК_РОЛЕЙ_ДЛЯ_ВКЛЮЧЕНИЯ.md", + "docs__Чеклист_внедрения_графы_5б_УПД_2026-04-21.md" ], "sources": [ "/Users/mihailkudravcev/projects/crm3-26/docs/Checklist_5b_UPD_2026-04-21.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/INDEX.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/PROJECT_CONTEXT.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/README_md_to_html.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/TZ2_full_UPD_migration_2026-04-21.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/TZ_min_5b_UPD_2026-04-21.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/diadoc_answer_2026-05-08.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/instructions_filter_access_groups.md", "/Users/mihailkudravcev/projects/crm3-26/docs/test.md", - "/Users/mihailkudravcev/projects/crm3-26/docs/Анализ_ошибок_обновления.md" + "/Users/mihailkudravcev/projects/crm3-26/docs/Анализ_доработок_синхронизации_ЗаказКлиента.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/Анализ_доработок_синхронизации_РеализацияТоваровУслуг.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/Анализ_доработок_складского_учета_и_печати_документов.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/Анализ_доработок_формы_приемки_УправлениеПоступлением.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/Анализ_механизма_перезаполнения_CRM_ЖурналДокументов.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/Анализ_обмена_НДС_22_с_Бухгалтерией_КОРП.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/Анализ_обработчиков_обновления_НДС_22.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/Анализ_ошибок_обновления.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/Анализ_переноса_обработки_КредитНотаЗаПериод.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/Анализ_печати_пакета_документов_и_складского_учета (v3.0).md", + "/Users/mihailkudravcev/projects/crm3-26/docs/Анализ_привязок_серий_номенклатур_к_видам_номенклатур.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/Анализ_применения_КредитНота (v1.1).md", + "/Users/mihailkudravcev/projects/crm3-26/docs/Анализ_применения_КредитНота.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/Анализ_применения_реквизита_Купон (v1.0).md", + "/Users/mihailkudravcev/projects/crm3-26/docs/Анализ_применения_реквизита_Купон.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/Анализ_различий_crm3-26-test_vs_crm3-dev.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/Анализ_рисков_неуникальности_CRM_ЖурналДокументов.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/Быстрое_решение.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/Выводы_сравнения_конфигураций.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/Глубинный_анализ_регистров.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/Дорожная_карта_миграции_CRM3_v0.1.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/Инструкция_добавления_ролей_в_профиль.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/Инструкция_по_запуску_md_convert.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/Инструкция_по_исправлению.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/Итоговый_отчет_анализа_регистров.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/Отчет_о_конвертации.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/Оценка_правок_для_переноса_НДС_22.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/Оценка_правок_для_переноса_НДС_22_(v1.1).md", + "/Users/mihailkudravcev/projects/crm3-26/docs/Перечень_констант_crm3-26-test.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/Перечень_констант_crm3-dev.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/Проблема_неуникальности_регистра_CRM_ЖурналДокументов.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/Проверка_ставки_НДС_22.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/РЕЗУЛЬТАТЫ_КОНВЕРТАЦИИ.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/Реализация_переноса_НДС_22.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/Роли_для_включения_в_новой_системе.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/Роли_для_отметки_ДА_осталось.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/Сверка_ролей_профиля.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/Сверка_ролей_с_учетом_переименований.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/Сводка_переноса_и_настройки_актуальной_формы_УПД.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/Сводка_рисков_неуникальности.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/Список_объектов_для_удаления_из_подсистем.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/Список_ролей_для_отметки_ДА.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/Сравнение_констант_crm3-dev_vs_crm3-26-test.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/ТЗ_2_полный_перенос_логики_УПД_из_crm3-26-promo_в_crm3-dev_2026-04-21.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/ТЗ_3_Внедрение_формы_УПД_в_текущую_рабочую_базу_2026-05-05.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/ТЗ_минимальная_реализация_графы_5б_УПД_2026-04-21.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/Улучшения_скрипта_проверки.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/ФИНАЛЬНЫЙ_ОТЧЕТ_Анализ_регистров.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/ФИНАЛЬНЫЙ_СПИСОК_РОЛЕЙ_ДЛЯ_ВКЛЮЧЕНИЯ.md", + "/Users/mihailkudravcev/projects/crm3-26/docs/Чеклист_внедрения_графы_5б_УПД_2026-04-21.md" ] }