Show/Hide Toolbars

Руководство администратора

Специфические кейсы

Ссылки Назад Вверх Вперед

ДП "Таблица"

При синхронизации категории "Первой Формы", в которой есть ДП "Таблица", рекомендуется создавать дополнительный (буферный) скрытый ДП "Таблица": при обновлении главного ДП "Таблица" с помощью смарт-автоматизации обновляется буферная таблица, и именно эта буферная таблица участвует в синхронизации с 1С.

1c_sync_table

Схема синхронизации ДП "Таблица"

Использование буферной таблицы позволяет решить следующие проблемы:

Не запускается лишняя синхронизация. Если синхронизация будет настроена на главный ДП "Таблица", она будет запускаться каждый раз при изменении какой-либо ячейки. На самом деле, не все ячейки таблицы могут быть важны для синхронизации. Буферную таблицу можно обновлять только при изменении значимых ячеек или при переводе задачи в определенный статус, в этом случае синхронизация будет запускаться только тогда, когда это действительно нужно.

Обеспечивается полнота и разделение данных. Исходная таблица может содержать вспомогательные ячейки (пояснения, изображения и т.п.) или расчетные ячейки, которые нужны пользователям, но не участвуют в синхронизации. Наоборот, буферная таблица будет содержать только данные, участвующие в синхронизации, включая техническую информацию, не нужную пользователям.

Синхронизация статуса задачи

Правильная организация обмена данных — когда процесс начинается в одной системе, потом передается в другую и завершается там. Но иногда процесс требуется вернуть снова в исходную систему. Например, согласование заявки на оплату инициируется в "Первой Форме", затем передается в 1С, там проверяется по бюджету и частично согласуется, а затем возвращается в "Первую Форму" для завершающего согласования.

В таких случаях между системами передаются не только ДП, но и статус задачи. Для этого мы рекомендуем создавать в "Первой Форме" скрытый ДП, в котором будет храниться статус задачи. Он будет актуализироваться с помощью смарт-автоматизации на переходах. В 1С нужно создать виртуальный реквизит, который будет соответствовать статусу задачи и вычисляться по какой-то специфической логике. ДП, хранящий статус в "Первой Форме", должен синхронизироваться с этим виртуальным реквизитом.

1c_sync_status

Схема синхронизации статусов

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

когда процесс ведется в "Первой Форме", задача в 1С либо еще не существует, либо заблокирована для изменений;

когда процесс передан в 1С, блокируется изменение задачи в "Первой Форме";

в момент синхронизации проверяются условия, и если они соблюдены (т.е. происходит передача процесса из одной системы в другую), выполняется автоматизация, которая разблокирует задачу в одной системе и блокирует в другой.  

1c_sync_status_2

Блокирование изменений при синхронизации

Переименование файлов, вложенных в ДП

При обмене файлами с 1С файлы должны иметь типовые имена — в имени не должно быть номера версии и должен быть ключ SyncFrom1F, примерно так:

SyncFrom1F ИмяФайла _ФотоРакурс2.jpeg

Когда пользователь вкладывает в ДП "Файл" файл для отправки в 1С, имя этого файла не соответствует требованиям обмена. Поэтому файл переименовывается нужным образом, под этим именем записывается в буферный ДП для отправки в 1С, а затем переименовывается обратно так, как изначально был назван пользователем.

Для автоматизации используется пакет действий, который состоит из трех смарт-действий:

1. Обновить параметры с помощью T-SQL вычислений

2. Вложить файл в ДП

3. Обновить параметры с помощью T-SQL вычислений

В первом и третьем смарт-действии вызывается хранимая процедура Rename_File_In_DP. Скачать ее можно здесь.

Во втором смарт-действии вызывается смарт-выражение "Файл из измененного ДП":

1c_ep_file_modified

Смарт-выражение "Файл из измененного ДП"