Общее описание
Внешняя обработка для передачи (копирования и вставки) строк табличных частей между формами как в пределах одной инфобазы, так и между разными инфобазами.
Для передачи используется буфер обмена той операционной системы, в которой запущен клиент 1С.
Внешние компоненты (ВК) не используются. Для работы с буфером обмена используется обращение к COM-объекту из свойства поля HTML-документа ParentWindow (методы SetData и GetData свойства ClipboardData).
Подключение обработки к инфобазе
Обработка регистрируется в инфобазе как дополнительная обработка.
Чтобы добавить внешнюю обработку в инфобазу, нужно открыть раздел "Администрирование" и перейти к пункту "Печатные формы, отчеты и обработки":
При необходимости установить флажок "Дополнительные отчеты и обработки" и нажать рядом с флажком гиперссылку "Дополнительные отчеты и обработки".
В открывшейся форме вызвать команду "Создать" и указать файл обработки. Галку "Показывать в списках" можно снять.
Использование обработки
Чтобы скопировать строки ТЧ в буфер обмена, нужно их выделить и вызвать команду "Скопировать":
Обратите внимание, что в разных версиях подсистемы БСП расположение команд дополнительных обработок может быть как в командной панели табличной части формы, так и в командной панели самой формы (т.е. в шапке).
Чтобы вставить строки ТЧ из буфера обмена, необходимо поставить фокус (щелкнуть мышкой) в желаемую табичную часть и вызвать команду "Вставить":
Особенности и ограничения
Ссылочные объекты ищутся по GUID'ам.
При вставке новые строки добавляются в конец таблицы (старые не затираются).
Таблица формы должна находиться в фокусе при вызове команд копирования и вставки.
Объект перед копированием или вставкой строк ТЧ должен быть записан в информационной базе (если это не так, то пользователю задается соответствующий вопрос).
Обработка работает только с теми таблицами на формах:
- которые связаны с реквизитом управляемой формы "Объект.<ИмяТабличнойЧасти>" или "<ИмяТабличнойЧасти>"
- у которых свойство "Имя" равно имени табличной части объекта
Обработка не работает с таблицами, отображающими дерево значений или динамический список.
Только для конфигураций с БСП 2.1.3+, т.к. более ранние версии БСП не передают форму-владельца (из которой была вызвана команда доп. обработки) в доп. обработку (соответственно, мы не можем "достучаться" до формы-владельца).
Вместо заключения
Если инструмент привлечет достаточно внимания, то он будет дорабатываться и развиваться. Пишите в комментариях ваши предложения по его улучшению.
При обнаружении ошибок в работе инструмента просьба писать в комментариях, указывая:
- операционную систему
- версию платформы 1С
- версию конфигурации инфобазы
- версию БСП (смотреть в общем модуле ОбновлениеИнформационнойБазыБСП в процедуре ПриДобавленииПодсистемы())