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

24.05.23

Задачи пользователя - Подбор и обработка объектов

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

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

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

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

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

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

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

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

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

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

 

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

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

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

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

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

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

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

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

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

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

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

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

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

Обработка не работает с таблицами, отображающими дерево значений или динамический список.

Только для конфигураций с БСП 2.1.3+, т.к. более ранние версии БСП не передают форму-владельца (из которой была вызвана команда доп. обработки) в доп. обработку (соответственно, мы не можем "достучаться" до формы-владельца).

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

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

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

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

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

См. также

Групповое копирование документов из периода в период

Подбор и обработка объектов Платформа 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

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

3600 руб.

29.06.2015    44631    90    18    

100

Групповая обработка проводок для БП 2.0, БП 3.0, БГУ 1.0, БГУ 2.0

Подбор и обработка объектов Бухгалтерский учет 1С:Бухгалтерия 2.0 1С:Бухгалтерия государственного учреждения 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Данная обработка предлагается для случаев, когда бывает необходимо изменить какой-либо реквизит в группе проводок, отобранных по определенному набору полей, за определенный период, с определенным типом документа-регистратора. Предлагается четыре варианта обработки для конфигураций: БП 2.0, БП 3.0, БГУ 1.0, БГУ 2.0 .

2000 руб.

30.05.2016    28792    29    0    

49

Шаблон обработки документов/справочников по произвольному алгоритму

Подбор и обработка объектов Платформа 1С v8.3 1С:ERP Управление предприятием 2 Россия Абонемент ($m)

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

1 стартмани

11.03.2024    257    6    SanchoD    0    

3

Объединение табличных частей "Товары" документов "Реализация товаров и услуг"

Подбор и обработка объектов Платформа 1С v8.3 1С:Управление торговлей 11 Оптовая торговля, дистрибуция, логистика Россия Управленческий учет Акцизы Абонемент ($m)

Заказчик попросил написать обработку по объединению документов "Реализация товаров услуг" в один итоговый документ, в процессе выполнения получилось 2 обработки.

1 стартмани

29.02.2024    352    3    VdZMWOnC    8    

3

Автоматическое начисление ежемесячных услуг

Производство готовой продукции (работ, услуг) Подбор и обработка объектов Платформа 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Абонемент ($m)

Автоматизированное начисление ежемесячных услуг с отправкой по электронной почте счетов. Модуль будет полезен организациям, которые ежемесячно выписывают большое количество счетов и реализаций клиентам, например: IT-компании, охранные предприятия, рекламные организации и другие, оказывающие профессиональные услуги на регулярной основе. Упрощенная версия предназначена для организаций, которые работают без НДС и при выписке услуг предполагается одна услуга в документе "Реализация товаров и услуг"

5 стартмани

18.02.2024    493    3    pean    1    

6

Проведение документов на управляемых формах

Подбор и обработка объектов Платформа 1С v8.3 Управляемые формы 1С:ERP Управление предприятием 2 Россия Абонемент ($m)

Универсальная обработка проведения/перепроведения документов для любой конфигурации на управляемых формах.

1 стартмани

10.02.2024    469    16    SanchoD    0    

3
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. пользователь 23.03.16 20:26
Сообщение было скрыто модератором.
...
12. oleshko_alexey 2 22.04.16 10:50 Сейчас в теме
(1) просьба доработать для документа "Установка цен Номенклатуры"
мне нужно скопировать из одного документа в другой,
При копировании ошибка- "Поле объекта не обнаружено (ДеревоЦен)"
13. Cyberhawk 135 22.04.16 14:35 Сейчас в теме
(12) Обработка предназначена только для работы с табличными частями объектов .
Доработка текущей обработки под работу с деревьями значений не планируется.
2. oleshko_alexey 2 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)

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

16. Cyberhawk 135 22.04.16 17:01 Сейчас в теме
17. German_Tagil 42 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 135 27.02.17 23:38 Сейчас в теме
(19) возможно, буфер обмена в терминале запрещен - проверь
21. Zexes 27.02.17 23:50 Сейчас в теме
(20),первым делом проверил, все копирует без проблем =( server 2012 r2
22. Cyberhawk 135 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 135 14.05.17 20:22 Сейчас в теме
(23) Почему считаешь, что номнеклатура в твоем случае должна переноситься?
Рекомендую внимательно ознакомиться с текстом публикации.
25. alexfolk 15.05.17 09:10 Сейчас в теме
А что не так с моим случаем? Где написано в тексте публикации, что в Рознице 2.2 в документе списание товаров НОМЕНКЛАТУРА не будет переноситься?
26. Cyberhawk 135 15.05.17 09:45 Сейчас в теме
(25) Весьма странный вопрос. Вроде очевидно, что конкретно про какую-то конфигурацию и/или ее документ нигде в тексте не написано.
Рекомендую ознакомиться с текстом публикации на предмет ограничений в реализованной функциональности.
27. anton448 88 26.09.18 11:12 Сейчас в теме
Спасибо, отличная обработка! :)
28. klaus38 14.10.18 13:58 Сейчас в теме
Серию перенесет? Штатный механизм этого не делает.
29. Cyberhawk 135 14.10.18 16:02 Сейчас в теме
(28) У меня в, например, ЗУПе никаких серий нет, так что, видимо, тебе придется проверить это самостоятельно
30. German_Tagil 42 20.05.19 13:06 Сейчас в теме
Благодарю!!! Надо было из табличной части Материалы в эксплуатации Спецодежда
перенести в Спецоснастку
добавил в Спецоснастку физлицо в расширении
и ву а ля один к одному все скопировалось
31. klaus38 03.06.19 14:11 Сейчас в теме
Все переносит и серии и колонки с доп.реквизитами. УТ11.7. Спасибо.
32. ProkopyukIN 17 11.10.19 03:11 Сейчас в теме
на платформе 8.3.15 перестало работать. выдает ошибку "Значение не является значением объектного типа (ClipboardData)"
33. Cyberhawk 135 11.10.19 13:15 Сейчас в теме
(32) Скорее всего перестало работать, начиная с 8.3.14.1565, в связи с переориентированием платформы с Internet Explorer на WebKit.
Посмотрю, что можно сделать, и отпишусь отдельным комментарием.
34. ProkopyukIN 17 11.10.19 16:44 Сейчас в теме
я просто с 13 сразу на 15 прыгнул. 14 даже ни разу не ставил.
35. Cyberhawk 135 11.10.19 17:07 Сейчас в теме
(34) Ошибка исправлена в версии 1.0.0.6, файл обновлен.
Тебе доступно его повторное скачивание (без повторной траты стартмани)?
anton448; +1 Ответить
36. anton448 88 06.02.20 09:36 Сейчас в теме
(35) Добрый день. Скачал обновленную обработку - ошибка ушла, спасибо! :)
40. Vodoley 1 25.12.20 20:29 Сейчас в теме
(35) а можешь плиз подсказать прием, через который работаешь в буфером в новой платформе? спасибо )
41. Cyberhawk 135 25.12.20 20:36 Сейчас в теме
(40)
	МенеджерБуфераОбмена = Новый COMОбъект("htmlfile");
	МенеджерБуфераОбмена.ParentWindow.ClipboardData.Setdata("Text", ТекстДляБуфера);	
37. German_Tagil 42 18.02.20 11:19 Сейчас в теме
Тоже перестало работать
38. German_Tagil 42 18.02.20 11:27 Сейчас в теме
Пришлось скачать - иногда очень выручает
39. German_Tagil 42 18.02.20 12:02 Сейчас в теме
Можно вопрос - показывать в списках - список значений?
почему то не показывает
42. пользователь 13.01.21 18:53
Сообщение было скрыто модератором.
...
43. AG-group 09.03.21 16:47 Сейчас в теме
В буфере отсутствует подходящий фрагмент
Подскажите с чем связана эта ошибка?Ошибка возникает при вставке строк из справочника соглашения с клиентом. Причем не работает вставка только при копировании с удаленного рабочего стола, если локально запускать базу,то все вставляется как надо
44. AG-group 09.03.21 17:31 Сейчас в теме
(43)Вопрос решен. Нужно в свойствах IE на вкладке безопасность нажать кнопку другой... затем найти сценарии и изменить переключатель на включить "Разрешить программный доступ к буферу обмена"
Cyberhawk; +1 Ответить
45. German_Tagil 42 03.12.21 14:18 Сейчас в теме
(44) Спасибо добрый человек
46. user710617_a.ananiev 13.04.22 11:35 Сейчас в теме
Обработка здорово облегчает создание документов на основе имеющихся.
Возможно ли устранить ошибку при попытке копирования из ТЧ с товарами в Счет на оплату (ERP 2 v2.5.7.324) - "Не найден реквизит формы, совпадающий с именем таблицы: "МД_ПолеФормыТовары"?
При этом из ТЧ оплат все успешно копируется.
47. Cyberhawk 135 13.04.22 12:05 Сейчас в теме
(46) Силами автора - нет (присмотрись к разделу публикации "Особенности и ограничения").
Самостоятельно - да (т.к. код открыт).
48. gull22 95 01.03.23 17:20 Сейчас в теме
ОС - Win10
1С:Предприятие 8.3 (8.3.22.1709)
Управление торговлей, редакция 11 (11.5.10.84)

01.03.2023 17:12:42
Поле объекта недоступно для записи (Окно)
{ВнешняяОбработка.БуферОбмена.Форма.Вставить.Форма(38)}:Для Каждого Окно из Окна Цикл
50. Cyberhawk 135 01.03.23 17:53 Сейчас в теме
(48) Твоя ошибка к сабжу не имеет отношения,т.к.:
- в сабже нет такого кода
- имя обработки в сабже иное
- формы "Вставить" в сабже нет
.
49. gull22 95 01.03.23 17:23 Сейчас в теме
Кстати когда выделяю строки и нажимаю "Копировать в буфер" нет сообщения о количестве скопированных строк
51. Cyberhawk 135 01.03.23 17:53 Сейчас в теме
(49) С учетом (50) полагаю, что и это сообщение к сабжу не относится
52. gull22 95 02.03.23 10:26 Сейчас в теме
(51) У меня было скачивание 2013 года, скачал свежую обработку, все работает нормально
53. Cyberhawk 135 02.03.23 10:35 Сейчас в теме
(52) Сабж был создан мною и выложен сюда в 2016 году.
И там никогда не было формы "Вставить" (и всего остального, перечисленного в (50)), в чем каждый легко может убедиться, пройдя в комментарий (1).
Так что по-прежнему утверждаю, что твои сообщения к сабжу не имеют отношения.
54. gull22 95 02.03.23 12:00 Сейчас в теме
(53) Прошу извинить за претензию, ввело в заблуждение схожесть форм. Картинку прилагаю
Прикрепленные файлы:
55. user1093589 24.05.23 17:46 Сейчас в теме
Добрый день. Ошибка при копировании :
"Значение не является значением объектного типа (ТекущийЭлемент)
{ВнешняяОбработка.ОбработкаТЧ_КопироватьВБуферОбмена.Форма.Форма.Форма(39)}: ТаблицаФормы = УправляемаяФорма.ТекущийЭлемент;
{ВнешняяОбработка.ОбработкаТЧ_КопироватьВБуферОбмена.Форма.Форма.Форма(231)}: СкопироватьВБуферОбмена(ЭтаФорма.ВладелецФормы);
{ОбщаяФорма.ДополнительныеОтчетыИОбработки.Форма(209)}: ОткрытьФорму("ВнешняяОбработка."+ ИмяОбработки +".Форма", ПараметрыОбработки);
{ОбщаяФорма.ДополнительныеОтчетыИОбработки.Форма(164)}: ВыполнитьОткрытиеФормыОбработки();
{ОбщаяФорма.ДополнительныеОтчетыИОбработки.Форма(102)}: ВыполнитьОбработкуПоПараметрам()
"
операционная система Windows 10 PRO
версию платформы 1С 1С:Предприятие 8.3 (8.3.22.1709)
версию конфигурации инфобазы Управление небольшой фирмой, редакция 1.4 (1.4.4.10)
версию БСП 2.1.2.20
56. Cyberhawk 135 24.05.23 22:27 Сейчас в теме
(55)
БСП 2.1.2.20
Посмотрел разные версии БСП 2.1 и выяснил, что обработка будет работать только в конфигурациях с версией БСП 2.1.3 и новее, т.к. более ранние версии БСП не передают форму-владельца (из которой была вызвана команда доп. обработки) в доп. обработку. И соответственно мы не можем "достучаться" до формы-владельца.
Обернул возникающую ошибку в более дружественный (для пользователя) вариант и обновил файл обработки в публикации.
57. user1093589 25.05.23 16:10 Сейчас в теме
Спасибо, протестирую, напишу.
58. Cyberhawk 135 25.05.23 16:49 Сейчас в теме
(57) Тестировать особо нечего - просто теперь будет не системная ошибка, а сообщение-предупреждение. Сама обработка не заработает на БСП ниже минимально указанной ранее.
59. пользователь 25.05.23 17:14
Сообщение было скрыто модератором.
...
60. gull22 95 09.08.23 17:06 Сейчас в теме
Добрый день.
Обработка версии 1.0.0.6
Все работало с марта месяца. Обновил платформу и конфигурацию, стало выдавать ошибку при копировании из буфера обмена.
Платформа 1С:Предприятие 8.3 (8.3.23.1782)
Управление торговлей, редакция 11 (11.5.13.82)
Копировал из документа "Реализация товаров и услуг". Вставлял в документ "Передача товаров между организациями"

Индекс находится за границами массива
{ВнешняяОбработка.ОбработкаТЧ_КопироватьВБуферОбмена.Форма.Форма.Форма(371)}:ЗначениеКолонки = МассивИмяКолонкиЗначениеКолонки[1];
{ВнешняяОбработка.ОбработкаТЧ_КопироватьВБуферОбмена.Форма.Форма.Форма(256)}:РезультатРазбора = РазобратьТекстИзБуфераОбменаНаСервере(ТекстИзБуфераОбмена);
{ВнешняяОбработка.ОбработкаТЧ_КопироватьВБуферОбмена.Форма.Форма.Форма(233)}:ВставитьИзБуфераОбмена(ЭтаФорма.ВладелецФормы);
{ОбщийМодуль.ДополнительныеОтчетыИОбработкиКлиент.Модуль(319)}:ОткрытьФорму("ВнешняяОбработка."+ ИмяВнешнегоОбъекта +".Форма", ПараметрыВызоваСервера, Форма);
{ОбщийМодуль.ПодключаемыеКомандыКлиент.Модуль(257)}:ВыполнитьОбработкуОповещения(Обработчик, ПараметрКоманды);
{ОбщийМодуль.ПодключаемыеКомандыКлиент.Модуль(35)}:ПродолжитьВыполнениеКоманды(ПараметрыВыполнения);
{Документ.ПередачаТоваровМеждуОрганизациями.Форма.ФормаДокумента.Форма(1517)}:ПодключаемыеКомандыКлиент.НачатьВыполнениеКоманды(ЭтотОбъект, Команда, Объект);
61. Cyberhawk 135 09.08.23 19:56 Сейчас в теме
(60) Специально скачал твою платформу и установил демо-базу УТ 11 твоего релиза - увы, не воспроизвелось.
Расширения в базе установлены? Если да, то попробуй проверить работу вставки без них.
Оставьте свое сообщение