Универсальная обработка копирования табличной части "Товары" любого документа из другого документа или файла Excel

Обработка предназначена для заполнения (копирования) табличных частей "Товары" любых докумнетов. Обработка работает в любых конфигурациях на платформе 1С 8.1 (для работы с 8.2 требуется конвертация) с любыми документами, где есть табличная часть "Товары". Источником данных может служить как любой документ, так и файл Excel с колонками код номенклатуры, количество, цена (не обязательна). В случае, когда коды номенклатуры в источнике и приемнике не совпадают (при обмене документами между разными базами), есть возможность указать файл соответствия кодов (Excel). Заполнение документа —  приемника происходит "интерактивно", то есть обработка фактически повторяет действия оператора, который вводит в документ номенклатуру, количество и цену (если нжуно). При этом, все остальные реквизиты строки (единица измерения, счета учета и пр.) заполнятся автоматически, как и при "ручном" вводе.

Обработка предназначена для заполнения табличных частей «Товары» любых докумнетов. Обработка работает в любых конфигурациях на платформе 1С 8.1 (для работы с 8.2 требуется конвертация) с любыми документами, где есть табличная часть «Товары». Источником данных может служить как любой документ, так и файл Excel с колонками «Код», «Количество» и «Цена». В случае, когда коды номенклатуры в источнике и приемнике не совпадают (при обмене документами между разными базами), есть возможность указать файл соответствия кодов. Заполнение документа —  приемника происходит «интерактивно», то есть обработка фактически повторяет действия оператора, который вводит в документ номенклатуру, количество и цену (если нжуно). При этом все остальные реквизиты строки (единица измерения, счета учета и пр.) заполнятся автоматически, как при «ручном» вводе.

Примеры решаемых с помощью обработки разовых задач:

— скоприовать данные из списания в оприходование (например при «переброске» товаров со склада на склад) — в качестве источника выбираем списание, в качестве приемника — оприходование и нажимаем «Выполнить»;

— скомпенсировать отрицательные остатки — формируем отчет по отрицательным остаткам, сохраняем в Excel, убираем знак «минус» и загружаем в оприходование;

— загрузить результаты инвентаризации из Excel — в качестве приемника выбираем документ инвентаризации;

— на основании расходной накладной создать приходную с измененными ценами — сохраняем в Excel табличную часть расходной накладной (например через «Вывести список» или с помощью соответствующего отчета), изменяем в Excel цены, загружаем в приходную накладную;

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

 Порядок работы следующий.

В качестве приемника данных выбираем заранее созданный документ, в котором заполняем необходимые реквизиты шапки, которые влияют на заполнение табличной части товары при ручном вводе (например контрагента и тип цен). В качестве источника данных может быть либо файл Excel с тремя колонками: в первой — код номенклатуры, во второй — количество, в третьей — цена (если загружать цену не нужно, то может отсутствовать); либо любой существующий в базе докумет. В случае, когда коды номенклатуры у источника и приемника не совпадают, необходимо указать файл соответствия номенклатуры — файл Excel с колонками «Код источника», «Код приемника».  Далее устанавливаем при необходимости флажки «Очищать приемник», «Загружать цены» и жмем «Выполнить».  Фактически обработка повторяет действия оператора, который вводит номенклутуру, количество и цену (если нужно).

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

Программистам:

Довольно часто приходится программно заполнять табличные части «Товары» различных документов. При этом, помимо заполнения основных полей — «Номенклатура», «Количество» и «Цена», приходится обрабатывать заполнение множества дополнительных (единица измерения, коэффициент, ставка НДС и т.д.). Эта рутина утомляет, особенно в разовых задачах. Обработка решает проблему — табличная часть заполняется «интерактивно». Обработка работает в любой конфигурации на платформе 1С 8.1 с любыми документами, где есть табличная часть «Товары». Источником данных может служить как документ, так и файл Excel. В случае несовпадения кодов источника и приемника, необходимо указать файл соответствия кодов (Excel).

 

 

41 Comments

  1. detec

    Поставил плюс за идею, так как в самописной конфигурации не взлетела.

    Reply ↓
  2. JRG

    Поддерживаю, плюс за идею

    Reply ↓
  3. NovSL

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

    Reply ↓
  4. yavedmin

    Поддерживаю, плюс за идею.

    Reply ↓
  5. cool.vlad4

    Это что-то типа того, что я озвучил http://forum.infostart.ru/forum24/topic42449/message454893/#message454893 ?…блин обработку скачал утром, надо посмотреть…

    Reply ↓
  6. still_

    Отлично, я тоже ставлю плюс!!!!!!!!!

    Reply ↓
  7. TSSV

    Спасибо за поддержку! Изменил немного загрузку из Excel.

    Reply ↓
  8. w22u

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

    Reply ↓
  9. w22u

    Попробовал заполнить табличную часть документа поступление из документа реализация, серия, страна и ГТД остались пустые.

    Reply ↓
  10. TSSV

    (9) w22u, если при «ручном» добавлении загружаемых позиций в загружаемый документ (приемник) серия, страна и ГТД заполняются, то и при заполнении с помощью обработки все должно заполняться.

    Reply ↓
  11. 1801

    Обработка нужная, видел правда здесь и более продвинутые — с настраиваемыми соответствиями колонок приемника и источника, что делает возможным перенос из любой табличной части в другую табличную часть иной структуры(ссылки не помню). Но даже в таком исполнении обработка очень нужная, поскольку по опыту знаю — большинство пользователей работают руками, что предполагает организацию 2-3 рабочих мест, вместо 1-го полуавтоматизированного. Я за увеличение производительности труда (сам работаю за 3-их), а соответственно и за увеличение его оплаты. Плюсую.

    Reply ↓
  12. arjuna

    Поддерживаю, плюс за идею. Из описания не понятно, обработка добавляет строки к уже существующим, или заменяет. В любом случае можно доделать.

    Reply ↓
  13. arjuna

    После тестирования появился вопрос. А если мы собираем номенклатуру в один документ из разных и повторяется номенклатура, то почему бы не сворачивать таблицу по номенклатуре и количеству.

    Reply ↓
  14. TSSV

    (12) arjuna, спасибо за замечание! На форме обработки есть два флажка: «Очищать приемник» — при установке которого перед загрузкой приемник будет очищен и «Загружать цены» — при его установке в приемник будут загружаться цены из источника.

    Reply ↓
  15. TSSV

    (13) arjuna, постараюсь учесть Ваши пожелания, спасибо!

    Reply ↓
  16. post279

    Спасибо

    Reply ↓
  17. Psiheya

    Интересно, попробуем, пощупаем. Опять же — пока плюс за идею

    Reply ↓
  18. Nado2010

    интересная штуковина… буду тетсировать как всегда на управлении производственным предприятием

    Reply ↓
  19. ThunderUA

    Пригодилось

    Reply ↓
  20. askoder

    спасибо

    Reply ↓
  21. Fenrus89

    мм… а смысл? хотя идея вроде неплохая

    Reply ↓
  22. lazy sea

    спасибо огромное-супер

    Reply ↓
  23. lazy sea

    (22) Fenrus89,

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

    Reply ↓
  24. TSSV

    Спасибо, очень рад, что понравилось!

    Reply ↓
  25. lazy sea

    Скажите плз, а есть возможность переносит реализацию из одной программы в другую? У меня две одинаковые базы 1 С, в одной учет ведут менеджеры, в другой я выбираю «нужные» реализации и копирую их в свою чистую базу руками. Попробовала через эту обработку, но поняла, что вроде нет возможности выкачать данные в файл, а потом восстановить в другой аналогичной базе

    Reply ↓
  26. TSSV

    (26) lazy sea, Для того чтобы перенести документ из одной базы в другую, необходимо сохранить в Excel его табличную часть — колонки код номенклатуры, количество, цена (цену можно не указывать, если загружать ее не нужно). Как это сделать. Если в бухгалтерии, то можно воспользоваться отчетом «Универсальный отчет» (в меню Отчеты — Прочие…), в нем указать тип данных — «Документ», объект — например «Поступление товаров и услуг», таблица — «Товары». После этого в настройках убрать группировки (они не нужны нам), указать поля отчета Номенклатура.Код, Количество и Цена, задать отбор по документу (поле Ссылка), сформировать отчет и сохранить его в Exsel (меню Файл — Сохранить копию, выбрав тип файла xls). Далее в файле удалить шапку отчета, здесь же можно скорректировать цены если нужно. Далее, открыв обработку во второй базе, этот файл указать в качестве источника. И здесь еще необходимо учесть следующее — если коды номенклатуры в базах различаются, то нужно создать еще один файл Excel, в котором указать соответствия кодов номенклатуры — в этом файле должно быть 2 колонки: код в первой базе, код во второй базе. Файл соответствия кодов можно использовать многократно, добавляя туда новые позиции по мере их появления. Файл соответствия выберите в обработке при загрузке. Если коды в обеих базах одинаковые (что маловероятно конечно), то файл соответствия можно не использовать. В общих чертах так. В планах добавить в обработку возможность поиска номенклатуры не только по коду, но и по наименованию, а так же добавить опцию поиска наиболее похожих из имеющихся в базе наименований (так называемый нечеткий поиск). Эту опцию можно будет использовать например для анализа прайсов конкурентов или для загрузки наименований по данным поставщика, когда написания различаются. А вообще задачи обмена данными можно решать и с помощью привлечения программистов — создать правила обмена например … вариантов масса 🙂

    Reply ↓
  27. wialex

    Очень пригодилась эта обработка. Избавила от большого объема рутинной работы.

    Спасибо.

    Reply ↓
  28. razrazraz

    Идея конечно интересная но мне к сожалению не подошла.

    Интересовали возможности свзанные с Экселем . Но есть проблемма что номенклатура не синхронизирована в обеих базах.Теоретически конечно всё возможно решить.

    Reply ↓
  29. electronik

    обработка очень виручила (почемуто бортовая функция 1С ввести на основании работала сошобками, с ошибками работала функция заполнеить по документу поступления) пока разбирался и исправлял ошибки обработка здорово виручила. Автору огромное спасибо так держать, продолжайте в том же духе.!!!!Респект

    Reply ↓
  30. alcoholic

    плюс к идеии!!, удобная вещь

    Reply ↓
  31. Adoms

    Большое спасибо!

    Reply ↓
  32. makas
    В случае несовпадения кодов источника и приемника, необходимо указать файл соответствия кодов (Excel)

    (0) Автор, Честно говоря непонятно что и как соспостовлять….

    Выложите пожадуйста пример файлов сответствия и шаблона загрузки в документ из Экселя.

    Ошибка в типовой БП 2.0.39: при копировании данных из документа «Реализация товаров и услуг» в «Реализация товаров и услуг» Номер ГТД и Страна неп переносятся.

    Reply ↓
  33. TSSV

    (33) makas, Во первых, просьба прочитать пост (27) — подобные вопросы уже задавались. Так же хочу заметить, что хотя с помощью этой обработки и можно решить довольно много разнообразных прикладных задач, есть задачи, решить которые с ее помощью нельзя. Например, для копирования данных из расходной накладной в расходную накладную, лучше воспользоваться штатным механизмом создания нового документа копированием.

    Reply ↓
  34. kounshin

    Наконец-то воспользовался обработкой: автор молодец. Вопрос пока один: а можно ли прикрутить перенос не только номенклатуры, но и их Характеристик?

    Reply ↓
  35. TSSV

    (35) kounshin, спасибо! Думаю можно, причем все что для этого нужно в обработке присутствует, то есть доработки небольшие требуются.

    Reply ↓
  36. alekseies

    попробуем на управлении производственным предприятием …

    Reply ↓
  37. kounshin

    (36) Tsaregorodtsev, тогда ждём обновлений 🙂

    Reply ↓
  38. TSSV

    (38) kounshin, пока обновление с возможностью переноса характеристик не предвидится ) Характеристики используются не везде (например их нет в БП), при этом обработка претендует на некторую универсальность, чем и обусловлен довольно компактный набор возможностей — только самое необходимое. Но, ее легко доработать под конкретную задачу. Если нужно — пишите в личку, договоримся я думаю )

    Reply ↓
  39. ula1c

    Спасибо, доработала под себя. У нас в Авансовых отчетах большое поступление продуктов за наличных расчет от одного поставщика. Сканирую накладные, соханяю в Эксель-файле, таблицу соответствия кодов по мере необходимости пополняю. В ней я добавила коэффициент для пересчета количества, если товар поступил в другой единице измерения. Раньше на тупой ввод такого АО уходило до 4 часов времени . Сейчас около 2ч более приятной работы -сканирование и распознавание накладных и загрузка . Еще раз спасибо.

    Reply ↓
  40. TSSV

    (40) ula1c, Приятно читать такие отзывы, да еще и от девушки! Рад что пригодилась обработка!

    Reply ↓
  41. yuyu1

    А Вы не переделывали обработку под 8.2 ? Версия 8.1 уже как бы устарела…..

    Reply ↓

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *