Как обновить 1С:Розницу 2.3 до ФФД 1.2 и устранить ошибку XDTO CurrentRowUse

Системный администратор 1С v8.3 (Управляемые формы) 1С:Розница Торговля и дистрибуция
← На главную

При переходе на формат фискальных данных ФФД 1.2 и внедрении обязательной маркировки товаров пользователи часто сталкиваются с необходимостью глубокого обновления конфигурации 1С:Розница 2.3. Однако обновление только программного кода без повышения версии платформы «1С:Предприятие» неизбежно приводит к техническим сбоям. Разберем ситуацию, когда привычная работа в программе прерывается критическими ошибками, и выясним, какую версию платформы выбрать для стабильной эксплуатации.

Анализ проблемы: почему возникает ошибка XDTO CurrentRowUse

Рассмотрим типовой сценарий: системный администратор обновляет конфигурацию 1С:Розница до релиза 2.3.10.61 или выше, оставляя платформу на уровне 8.3.17.1549. При попытке зайти в настройки подключаемого оборудования или при открытии формы эквайринга программа выдает сообщение: «Несоответствие свойства и элемента данных XDTO: Свойство 'CurrentRowUse'». Проанализируем причину этого сбоя.

Проблема кроется в Библиотеке подключаемого оборудования (БПО), которая является ядром «Розницы». В свежих релизах БПО разработчики «1С» изменили схемы обмена данными с драйверами кассовой техники и банковских терминалов. Новое свойство CurrentRowUse используется для управления фокусом строки в табличных частях чеков и операций. Платформы версии 8.3.17 (за исключением самых последних билдов) физически «не знают» о существовании этого свойства в описании XDTO-пакетов, что и вызывает аварийное завершение сеанса.

Важный вывод: для корректной работы с современным торговым оборудованием под ФФД 1.2 недостаточно просто обновить конфигурацию. Требуется соответствие версии платформы минимальным требованиям разработчика БСП (Библиотеки стандартных подсистем).

Выбор стабильной версии платформы для Розницы 2.3

Выясним, на какую версию платформы лучше всего переходить, чтобы избежать «сюрпризов» в виде утечек памяти или несовместимости расширений. Рассмотрим основные варианты, доступные на текущий момент:

  1. Ветка 8.3.17 (релизы 8.3.17.2733 и выше): Позволяет устранить ошибку XDTO, но является тупиковым путем. Хотя на этих сборках 1С:Розница запускается, работа с криптографией для маркировки (Честный ЗНАК) может быть нестабильной.
  2. Ветка 8.3.19 (например, 8.3.19.1467): Многие специалисты считают её наиболее стабильной для «умеренного» обновления. В ней исправлено большинство ошибок интерфейса и работы с фоновыми заданиями.
  3. Ветка 8.3.20 (например, 8.3.20.2076): Хороший выбор для текущих нужд. Она полностью поддерживает механизмы, необходимые для ФФД 1.2, однако имеет неприятную особенность — постепенное накопление утечек оперативной памяти процессами rphost.
  4. Ветка 8.3.21: На данный момент рекомендуется как целевая для конфигураций на базе БСП 3.1. Она обладает повышенной стабильностью работы расширений конфигурации.

Пошаговый алгоритм устранения ошибки и перехода на ФФД 1.2

Рассмотрим последовательность действий, которая обеспечит безопасный переход на новые требования законодательства:

Шаг 1. Резервное копирование. Перед любыми манипуляциями с платформой обязательно создаем бэкап базы данных (средствами SQL или выгрузкой в .dt). Проверяем целостность данных через Тестирование и исправление.

Шаг 2. Промежуточное обновление платформы. Как показывает практика, прямой прыжок с 8.3.17 на 8.3.21 иногда может привести к повреждению кэша. Рекомендуется сначала установить последний билд текущей ветки (например, 8.3.17.2733). Это позволит убедиться, что ошибка CurrentRowUse исчезла, и конфигурация работает в штатном режиме.

Шаг 3. Переход на платформу 8.3.20 или 8.3.21. Устанавливаем новую версию платформы на сервер и клиентские машины. Если используется клиент-серверный вариант (MSSQL), помним, что старая версия платформы не затирается автоматически. Вы можете установить новую версию параллельно, но службу 1C:Enterprise 8.3 Server Agent необходимо будет перенастроить на запуск исполняемых файлов из новой папки bin.

Шаг 4. Настройка сервера. Проанализируем ситуацию с утечками памяти. Если вы выбрали версию 8.3.20, рекомендуется настроить ежедневный автоматический перезапуск службы сервера «1С» или настроить в консоли администрирования параметры перезапуска рабочих процессов. Для этого в свойствах рабочего сервера установим значения параметров:

Шаг 5. Очистка серверного кэша. Это критически важный момент. После обновления платформы необходимо удалить содержимое папок srvinfo/reg_1541/snccntx* и srvinfo/reg_1541/config*. Это предотвратит ошибки при десериализации данных XDTO, которые могли закэшироваться от старой версии платформы.

Особенности работы с расширениями на новых платформах

Разберем технический нюанс, связанный с расширениями конфигурации. В новых релизах платформы (начиная с 19-й и 20-й веток) изменились механизмы валидации объектов в расширениях. Если в вашей Рознице установлены доработки от сторонних программистов, они могут начать выдавать ошибки при открытии конструктора запросов или СКД.

Чтобы этого избежать, проанализируем режим совместимости в свойствах конфигурации. Для актуальных версий Розницы 2.3 он должен соответствовать 8.3.17. Если платформа значительно выше (например, 8.3.21), расширения могут требовать пересборки или обновления списка заимствованных объектов. Рассмотрим пример кода, который может потребоваться для проверки версии платформы в коде расширений:


ИнформацияСистемы = Новый СистемнаяИнформация;
ВерсияПлатформы = ИнформацияСистемы.ВерсияПриложения;
Если Лев(ВерсияПлатформы, 6) = "8.3.17" Тогда
    // Применяем старую логику работы с оборудованием
Иначе
    // Используем новые механизмы для ФФД 1.2
КонецЕсли;

Технический итог по эквайрингу и ККТ

Выясним финальную причину, почему 8.3.17 больше «не тянет» современные требования. В новых версиях драйверов для эквайринга используется технология «1С:Предприятие — работа с оборудованием». Она запускает отдельные внешние процессы для взаимодействия с терминалами. Старые платформы часто конфликтуют с манифестами этих процессов, что приводит к «тихому» падению драйвера без вывода внятной ошибки.

Итоговая рекомендация: оптимальным выбором для работы 1С:Розница 2.3 в условиях маркировки и ФФД 1.2 на сегодняшний день является платформа версии 8.3.21 (последний стабильный билд). Она решает проблему ошибки XDTO CurrentRowUse, обеспечивает стабильную проверку кодов маркировки и лишена критических утечек памяти, характерных для ранних билдов 20-й ветки. Обновляйтесь вовремя, чтобы обеспечить непрерывность торговых процессов!

← На главную