Обработка не претендует на уникальность. Скорее еще один вариант из многих. Суть работы с обработкой
— подключается как внешняя обработка заполнения табличной части (по умолчанию — подключается к документу "Счет на оплату поставщика")
— пользователь выбирает файл xls или xlsx
— в файле Excel не всегда удобно визуально определить номера колонок, в которых указаны реквизиты, необходимые для табличной части. В качестве помощи — кнопка "Прочитать файл (необязательно)". При нажатии на кнопку считывается файл в табличный документ. Определить колонки можно точно
— пользователь указывает номера колонок и номера строк, из которых будут считаны данные, нажимает кнопку "1 — Заполнить таблицу". Таблица заполняется информацией из файла
— теперь необходимо выполнить сопоставление с Номенклатурой, существующей в базе. Выбирается вариант поиска — "По наименования", "По артикулу", "По наименованию и артикулу", "По наименованию, затем по артикулу", "По артикулу, затем по наименованию". Поиск выполнен в виде запросов в цикле (по каждой строке). Понимаю, что в ущерб производительности.
"Наименование" — это Полное наименование Номенклатуры (из-за ограничения длины "Наименования")
— если Номенклатура не найдена, ячейка выделяется оранжевым фоном. Пользователь нажимает кнопку "2 — Создать номенклатуру". Номенклатура создается в указанной папке с указанным "Видом номенклатуры"
— затем нажимается кнопка "3 — Перенести в документ" и происходит окончательная обработка табличной части штатными средствами (по кнопке "Изменить" — устанавливается ставка НДС, например)
Проверено на конфигурации "Бухгалтерия предприятия, редакция 3.0 (3.0.44.188)"
Update 17.02.2024
Внесены изменения (проверено на релизе 3.0.67.74)
— Изменено — чтение файла Excel выполняется средствами платформы (режим совместимости, соответственно, должен быть не ниже 8.3.6), наличие установленного MS Office (Exel) на клиентском компьютере или сервере не требуется
— Исправлено — теперь обработка работает и в серверном режиме (ранее при открытии обработки на стороне сервера, если файл находился на компьютере клиента, и путь к файлу был указан не сетевой — возникало сообщение, что файл не найден)
Спасибо за обработку. Вроде, удобно. А можете добавить способ загрузки xls-файла не только через com-соединение, но и без установленного на компьютере MS Excel? В 8.3, вроде, у табличного документа уже есть метод Прочитать().
С предложением полностью согласен. Начиная с 8.3.6, если мне память не изменяет, появилась эта возможность. На дворе — 8.3.9, разумное пожелание. Будет время — придумаю, спасибо за предложение
Очень существенное пожелание! При работе на сервере часто сталкиваюсь с такой проблемой com-соединений… из за чего приходится переходить на пользовательский компьютер с установленным Экселем.
XLSX без Excel — легко. Ибо это зазипованный XML. Из какой-то обработки из состава БСП нужно использовать/скопировать 2-3-4 процедуры. Будет кому интересно — поищу.
(4) ImHunter, информация пригодится, мне точно интересно 🙂 Заранее — спасибо
(6) Спасибо!
велосипед это конечно хорошо но в БСП есть же «загрузка из файлов»https://youtu.be/ovjumkjtn9I?list=PL8TlceaQF_l_CMirNFV1rgUfXUM_w_JMD …. enjoy ))
Здравствуйте, Бухгалтерия предприятия (базовая), редакция 3.0 (3.0.52.32)
При открытии возникла ошибка:
Поле объекта не обнаружено (ОбъектыНазначения)
Помогите, будьте добры…..
(9) ir.iv, доброго времени суток, отвечаю Вам в личном сообщении
(10) Спасибо огромное-все заработало! Обработку подключила в самой программе (администрирование-подключение внешних печатных форм и обработок). Давно искала такую «без заморочек». Так что +++++
Спасибо, приятно знать
Добрый день,
Не работает в конфигурации КОРП
Ошибка — Поле объекта не обнаружено (объекты назначения)
Как можно исправить?
Добрый день.
При подключении обработки — указали объекты назначения (документы), к которым должна подключиться эта обработка заполнения табличных частей?
При нажатии на кнопку прочитать файл, данные с файла читаются, а при нажатии на 1-Заполнить таблицу выходит сообщение, что Файл не существует!
Что может быть…. Длина пути к файлу — не превышает ли 255 символов?
не заполняет таблицу. файл видит. бп (3.0.67.43)
(17) Доброго времени суток. Уточните — база файловая или серверная? Пришлите для примера файл, пожалуйста
Доброго дня. Пробую на файловой.Но работать будет на серверной.
(10) У меня аналогичная ошибка. Могу я расчитывать на помощь? время прошло, релиз уже 3.0. 67.67.
{ВнешняяОбработка.изExcel.Форма.Форма.Форма(4)}: Поле объекта не обнаружено (ОбъектыНазначения)
Если НЕ Параметры.ОбъектыНазначения = Неопределено Тогда
(10) У меня аналогичная ошибка. Могу я расчитывать на помощь? время прошло, релиз уже 3.0. 67.67.
{ВнешняяОбработка.изExcel.Форма.Форма.Форма(4)}: Поле объекта не обнаружено (ОбъектыНазначения)
Если НЕ Параметры.ОбъектыНазначения = Неопределено Тогда
(10)
Прикрепление обработки к базе ничего не дало. Я не нахожу следы обработки в базе(
(21) Доброго времени суток. Давайте проверим, к каким типам документов Вы подключили обработку?
(22) К счету на оплату покупателю.
(23) Проверил на демо-базе релиза 3.0.67.74, серверная, подключив обработку к документу «Счет на оплату покупателю», воспроизвести ситуацию не удалось, к сожалению. В чем еще может быть причина….
В одном из сообщений была фраза, что на версии КОРП не работает. Не проверял на этой версии конфигурации. У Вас, случайно, не КОРП?
(24) нет, это ПРОФ-версия.
(25) Ответил личным сообщением
двс!
аудит на фреше пройдет?
(27) Затрудняюсь ответить. С фрешем еще не работал
Здравствуйте, Бухгалтерия предприятия (базовая), редакция 3.0 (3.0.70.30)
При открытии возникла ошибка:
Поле объекта не обнаружено (Товары)
Помогите, пожалуйста.
(30) Доброго времени суток. Проверьте, для какого документа подключена внешняя обработка. Судя по тексту — либо не подключена к документу, либо подключена к документу, у которого нет табличной части с названием «Товары». Чуть выше в переписке, в ответе с номером 22 показана картинка, проверьте на своей ситуации
Добрый день, высылаю скриншоты, посмотрите пожалуйста.
(32) Верно, у этого документа нет табличных частей с названием «Товар» . Выслал в личном сообщении обработку
БП 3.0.73.60 8.3.12.1685
(34) В почту пришло сообщение с текстом «БП 3.0.73.60 8.3.12.1685 при открытии сразу ошибка 🙁 {ВнешняяОбработка.изExcel.Форма.Форма.Форма(4)}: Поле объекта не обнаружено (ОбъектыНазначения) Если НЕ Параметры.ОбъектыНазначения…». Думаю, это был Ваш вопрос, хотя у меня видна только часть «БП 3.0.73.60 8.3.12.1685»
Проверьте, пожалуйста, для каких документов подключена эта обработка (картинку с примером прилагаю)