среда, 3 сентября 2014 г.

Конвертация документов и закрытый период

Довольно часто при переносе документов из одной базы в другую пользователь не имеет возможности записать определенные данные, либо не хватает прав либо, дата записи документа попадает в закрытый период. Если использовать типовой обмен данными то обмен на этом прервется и пользователю выдастся сообщение о том что все пропало.
Сегодня я расскажу о том как эту ситуацию сгладить с использованием стандарных обработчиков в Конвертации Данных.

Первое что необходимо сделать создать параметр "Ошибки" в правиле конвертации.
Это простая ТЗ, в которой мы будем собирать ошибки(сообщения) и выводитьпосле обмена именно уникальные сообщения (предварительно свернув таблицу ошибок) .
Инициализируем параметр в обработчике "Перед загрузкой данных"
Параметры.Ошибки=Новый ТаблицаЗначений();
Параметры.Ошибки.Колонки.Добавить("Ошибка");

Сообщение при закрытии кассовой смены: "Не удалось удалить чеки ККМ"

Пользователю необходимо дать право "Администратор ККМ", если оно не установлено.
Также необходимо дать роли "Администратор ККМ" права на удаление чеков и на регистры:
Регистр сведений.Коллизии при обмене
Регистр сведений.Объекты доступа документов
Регистр сведений.Объекты запрещенные для редактирования
Регистр сведений.Отложенные движения документов
Регистр сведений.Соответствие объектов для обмена
Регистр накопления.Продажи (:права на изменение и редактирование)