УФ + БСП: копирование строк табличных частей (даже между разными инфобазами)

Публикация № 505239

Обработки - Обработка документов

уф управляемый интерфейс копирование строк строки ТЧ табличной части табличных частей между разными различными базами инфобазами буфер обмена

46
Внешняя обработка для конфигураций на БСП, работает на управляемых формах (включая Такси) в толстом клиенте, тонком клиенте и веб-клиенте

Общее описание

Внешняя обработка для передачи (копирования и вставки) строк табличных частей между формами как в пределах одной инфобазы, так и между разными инфобазами.

Для передачи используется буфер обмена той операционной системы, в которой запущен клиент 1С.

Внешние компоненты (ВК) не используются. Для работы с буфером обмена используется обращение к COM-объекту из свойства поля HTML-документа ParentWindow (методы SetData и GetData свойства ClipboardData).

Подключение обработки к инфобазе

Обработка регистрируется в инфобазе как дополнительная обработка.

Чтобы добавить внешнюю обработку в инфобазу, нужно открыть раздел "Администрирование" и перейти к пункту "Печатные формы, отчеты и обработки":

При необходимости установить флажок "Дополнительные отчеты и обработки" и нажать рядом с флажком гиперссылку "Дополнительные отчеты и обработки".

В открывшейся форме вызвать команду "Создать" и указать файл обработки. Галку "Показывать в списках" можно снять.

Использование обработки

Чтобы скопировать строки ТЧ в буфер обмена, нужно их выделить и вызвать команду "Скопировать":

Обратите внимание, что в разных версиях подсистемы БСП расположение команд дополнительных обработок может быть как в командной панели табличной части формы, так и в командной панели самой формы (т.е. в шапке).

Чтобы вставить строки ТЧ из буфера обмена, необходимо поставить фокус (щелкнуть мышкой) в желаемую табичную часть и вызвать команду "Вставить":

Особенности и ограничения

Ссылочные объекты ищутся по GUID'ам.

При вставке новые строки добавляются в конец таблицы (старые не затираются).

Таблица формы должна находиться в фокусе при вызове команд копирования и вставки.

Объект перед копированием или вставкой строк ТЧ должен быть записан в информационной базе (если это не так, то пользователю задается соответствующий вопрос).

Обработка работает только с теми таблицами на формах:

  • которые связаны с реквизитом управляемой формы "Объект.<ИмяТабличнойЧасти>" или "<ИмяТабличнойЧасти>"
  • у которых свойство "Имя" равно имени табличной части объекта

Вместо заключения

Если инструмент привлечет достаточно внимания, то он будет дорабатываться и развиваться. Пишите в комментариях ваши предложения по его улучшению.

При обнаружении ошибок в работе инструмента просьба писать в комментариях, указывая:

  • операционную систему
  • версию платформы 1С
  • версию конфигурации инфобазы
  • версию БСП (смотреть в общем модуле ОбновлениеИнформационнойБазыБСП в процедуре ПриДобавленииПодсистемы())
46

Скачать файлы

Наименование Файл Версия Размер
Внешняя обработка для БСП: копирование и вставка строк ТЧ между разными инфобазами
.epf 10,97Kb
14.09.16
83
.epf 1.0.0.5 10,97Kb 83 Скачать

См. также

Специальные предложения

Комментарии
Избранное Подписка Сортировка: Древо
12. retif 22.04.16 10:50 Сейчас в теме
(1) просьба доработать для документа "Установка цен Номенклатуры"
мне нужно скопировать из одного документа в другой,
При копировании ошибка- "Поле объекта не обнаружено (ДеревоЦен)"
13. Cyberhawk 111 22.04.16 14:35 Сейчас в теме
(12) Обработка предназначена только для работы с табличными частями объектов .
Доработка текущей обработки под работу с деревьями значений не планируется.
2. retif 25.03.16 12:08 Сейчас в теме
Ошибка в документе ЗаказПоставщику
25.03.2016 12:03:32
{Форма.Форма.Форма(137)}: Значение не является значением объектного типа (ИмяТипа)
ИмяТипа = XMLТипЗнч(ЗначениеКолонки).ИмяТипа;
--------------------------------------------------------------------------------
Управление торговлей, редакция 11.1 (11.1.9.51)1С:Предприятие 8.3 (8.3.7.1949)

Причем в заказе Клиента и Поступление Товаров- все работает
4. retif 28.03.16 09:50 Сейчас в теме
:-( в заказе поставщика не копирует "назначение",
Подразделение получатель, списать на раходы и аналитика расходов - заполняются не так как были в оригинале.
Две первые строчки скопировал и вставил четвертой и пятой строками
Скриншот прилагается
Прикрепленные файлы:
10. retif 29.03.16 09:12 Сейчас в теме
6. AKV77 235 28.03.16 12:07 Сейчас в теме
Удобный механизм. Спасибо, работает.
Один для меня существенный нюанс - при копировании и затем вставке не правильно переносится информация о характеристике номенклатуры в случае ее использования - Пример копирую в буфер строку содержащую номенклатуру с характеристикой, вставляется только номенклатура, а характеристика - нет (якобы не используется хар-ка). УТ 11.1 проверял на нескольких версиях.
7. tormozit 5420 28.03.16 15:24 Сейчас в теме
Автор забыл указать еще одно требование "копируются только значения полей, имена которых соответствуют шаблону <ИмяТЧ><ИмяРеквизитаТЧ>". Думаю в (6) именно поэтому не копируется.
9. AKV77 235 28.03.16 17:09 Сейчас в теме
(8) СПАСИБО. Проверил - характеристики переносятся корректно.
11. vlastapov 49 30.03.16 22:34 Сейчас в теме
Да, между разными базами очень впечатляет, спасибо.
15. wig8 22.04.16 15:43 Сейчас в теме
Добрый день!
Конфигурация БП 3.0 (3.0.43.173) и УНФ (1.6.3.11) обработка не работает. Выводит сообщения при переносе из БП в УНФ «Поле объекта не обнаружено (Хозрасчетный)», из УНФ в БП «Поле объекта не обнаружено (ХарактеристикиНоменклатуры)».

16. Cyberhawk 111 22.04.16 17:01 Сейчас в теме
17. German_Tagil 6 04.05.16 22:35 Сейчас в теме
у меня не много по другому был реализован вариант копирования строк - http://infostart.ru/public/460032/
при этом писал если между документами то писал во временное хранилище
если между системами - то в файл
но никому не показалось интересным .
Делали инвентаризацию шибко пригодилась гонять туда сюда номенклатуру
18. Zexes 13.02.17 02:20 Сейчас в теме
Просто красавец, дико спас.
19. Zexes 27.02.17 22:45 Сейчас в теме
Такой вопрос, на двух терминальных серверах не работает, не пойму почему. Просто ничего не копирует, может быть связанно из-за каких-то настроек ie?
20. Cyberhawk 111 27.02.17 23:38 Сейчас в теме
(19) возможно, буфер обмена в терминале запрещен - проверь
21. Zexes 27.02.17 23:50 Сейчас в теме
(20),первым делом проверил, все копирует без проблем =( server 2012 r2
22. Cyberhawk 111 28.02.17 09:40 Сейчас в теме
(21) Тогда да - дело может быть в определенных настройках политики безопасности. Попробую реализовать альтернативный вариант работы с буфером обмена.
23. alexfolk 14.05.17 20:06 Сейчас в теме
Ошибка при копировании между разными базами, не переносится номенклатура <Объект не найден> (81:969a00235453ced911e71f5b94452f75).

ОС Windows 10 Home
1С:Предприятие 8.3 (8.3.9.2170)
Розница, редакция 2.2 (2.2.5.27)
версия БСП 2.3.4.45
24. Cyberhawk 111 14.05.17 20:22 Сейчас в теме
(23) Почему считаешь, что номнеклатура в твоем случае должна переноситься?
Рекомендую внимательно ознакомиться с текстом публикации.
25. alexfolk 15.05.17 09:10 Сейчас в теме
А что не так с моим случаем? Где написано в тексте публикации, что в Рознице 2.2 в документе списание товаров НОМЕНКЛАТУРА не будет переноситься?
26. Cyberhawk 111 15.05.17 09:45 Сейчас в теме
(25) Весьма странный вопрос. Вроде очевидно, что конкретно про какую-то конфигурацию и/или ее документ нигде в тексте не написано.
Рекомендую ознакомиться с текстом публикации на предмет ограничений в реализованной функциональности.
27. anton448 52 26.09.18 11:12 Сейчас в теме
Спасибо, отличная обработка! :)
28. klaus38 14.10.18 13:58 Сейчас в теме
Серию перенесет? Штатный механизм этого не делает.
29. Cyberhawk 111 14.10.18 16:02 Сейчас в теме
(28) У меня в, например, ЗУПе никаких серий нет, так что, видимо, тебе придется проверить это самостоятельно
30. German_Tagil 6 20.05.19 13:06 Сейчас в теме
Благодарю!!! Надо было из табличной части Материалы в эксплуатации Спецодежда
перенести в Спецоснастку
добавил в Спецоснастку физлицо в расширении
и ву а ля один к одному все скопировалось
31. klaus38 03.06.19 14:11 Сейчас в теме
Все переносит и серии и колонки с доп.реквизитами. УТ11.7. Спасибо.
Оставьте свое сообщение