Взял за основу обработку: //infostart.ru/public/118825/ (Skimen), за что автора благодарю, и переделал под себя, попутно сделав её под Управляемые формы. Годится для УПП 1.3, УТ10.3
Идеология простая.
1. Обработкой выгружаем прайс в виде бланка заказа.
2. Клиент отмечает в файле Excel количества по нужным товарам и присылает обратно.
3. Обработкой анализируем присланный Excel, загружаем в табличку. Табличку, при желании, можно тут же отредактировать и загрузить всё в документ "ЗаказПокупателя". Загруженный документ открывается для редактирования, дополняется требуемыми данными и записывается.
UPD от 10.01.2019 Теперь можно грузить файлы в отчеты комиссионера. Актуально для тех кто работает с ООО «Вайлдберриз».
Внимание, при обратной загрузке прайса в заказ покупателя, цены берутся не из прайса а из базы данных, из типа цен номенклатуры, (Закладка Настройки). В дальнейшем, в заказе покупателя можно сменить.
---
На текущий момент рабочая версия. Будет дорабатываться.
2014.07.22 Обновление обработки, добавлен функционал. Реализован показ отсутствующих на складе позиций. Реализован выбор и сохранение некоторых настроек, таких как; Организация, Склад, минимальный остаток для показа.
2015.03.17 Обновление обработки. Изменен фильтр отбора торговых точек. Изменен вывод сообщений об ошибках в процессе загрузки. Расширены пределы обрабатываемых ячеек в исходном файле. . Изменена привязка обработчика к клиентам с кода на ИНН.
Добавлены новые контрагенты - покупатели с их шаблонами
Эллипс, ИНН: 702100019047, 701404003495
Семь+Я, ИНН: 6312066512
++++Итоговый список обрабатываемых контрагентов++++
Если Код = "СПФ001168" Тогда
Вариант = 0; //Загрузка из нашего, выгруженного прежде прайса
ИНН = "7805377620" Тогда //Спектр групп
ИНН = "645000139980" Тогда //Каменская
ИНН = "5031100639" Тогда //Гудвин
ИНН = "3664128250"
ИЛИ ИНН = "3663099342"
ИЛИ ИНН = "3665095167"
ИЛИ ИНН = "3665101572"
ИЛИ ИНН = "3661060565"
ИЛИ ИНН = "3665094621"
ИЛИ ИНН = "3664130394"
ИЛИ ИНН = "7730678970"
ИЛИ ИНН = "3666185945" Тогда // 7 дней
ИНН = "6312066512" Тогда // 7 +Я
ИНН = "702100019047"
ИЛИ ИНН = "701404003495" Тогда //Эллипс
2015.10.23
1. Добавлены
Семь дней ООО "Веста" 3663113477
Семь дней ООО «СЕМЬ ДНЕЙ ИВАНОВО» 3702114942
2. Убран фильтр расширения файлов (было .xls) при выборе файла. Посмотрим как будет. Причина - некоторые шлют файлы с расширением .xlsx
2019.01.10
ред. 20190110
1. Добавлен загрузчик ООО «Вайлдберриз» ИНН 7721546864 и возможность грузить их отчет комиссионера в отчет комиссионера 1С УПП(УТ)
2. Поскольку в отчете может быть много строк, оптимизирована работа с большими файлами Ексель. На входе определяем кол-во строк в файле и учитываем это в обработке. Так же визуализируем процесс для пользователя, что бы он не думал что "всё повисло".
3. Добавлена еще пачка контрагентов с их шаблонами:
// +Семь дней ООО "Ника" 3665122420
// +Семь дней ООО "Диана" 3664216299
//20150317
// Семь+я
тКлиент = Справочники.Контрагенты.НайтиПоРеквизиту("ИНН", "6312066512");
СписокПоставщиков.Добавить(тКлиент, "" + тКлиент.Наименование + " ИНН: " + тКлиент.ИНН);
// 20151116
тКлиент = Справочники.Контрагенты.НайтиПоРеквизиту("ИНН", "6312132797");
СписокПоставщиков.Добавить(тКлиент, "" + тКлиент.Наименование + " ИНН: " + тКлиент.ИНН);
// Эллипс ИП Андреева Т.А.
тКлиент = Справочники.Контрагенты.НайтиПоРеквизиту("ИНН", "701404003495");
СписокПоставщиков.Добавить(тКлиент, "" + тКлиент.Наименование + " ИНН: " + тКлиент.ИНН);
// Эллипс ИП Колесников А.Г
тКлиент = Справочники.Контрагенты.НайтиПоРеквизиту("ИНН", "702100019047");
СписокПоставщиков.Добавить(тКлиент, "" + тКлиент.Наименование + " ИНН: " + тКлиент.ИНН);
//20150330
//Вдовин Владимир Александрович ИП 501704801235
тКлиент = Справочники.Контрагенты.НайтиПоРеквизиту("ИНН", "501704801235");
СписокПоставщиков.Добавить(тКлиент, "" + тКлиент.Наименование + " ИНН: " + тКлиент.ИНН);
//20170124
//301606149538
//Измайлова Наталья Викентьевна ИП (Радужный)
тКлиент = Справочники.Контрагенты.НайтиПоРеквизиту("ИНН", "301606149538");
СписокПоставщиков.Добавить(тКлиент, "" + тКлиент.Наименование + " ИНН: " + тКлиент.ИНН);
//20180424
//Чистый дом 9102000373
тКлиент = Справочники.Контрагенты.НайтиПоРеквизиту("ИНН", "9102000373");
СписокПоставщиков.Добавить(тКлиент, "" + тКлиент.Наименование + " ИНН: " + тКлиент.ИНН);
//20180628
//Вайлдберриз 7721546864
тКлиент = Справочники.Контрагенты.НайтиПоРеквизиту("ИНН", "7721546864");
СписокПоставщиков.Добавить(тКлиент, "" + тКлиент.Наименование + " ИНН: " + тКлиент.ИНН);
//20180817//ШИК 2901086695
тКлиент = Справочники.Контрагенты.НайтиПоРеквизиту("ИНН", "2901086695");
СписокПоставщиков.Добавить(тКлиент, "" + тКлиент.Наименование + " ИНН: " + тКлиент.ИНН);
//20181001//"ЛогиТрейд", 6313550099
тКлиент = Справочники.Контрагенты.НайтиПоРеквизиту("ИНН", "6313550099");
СписокПоставщиков.Добавить(тКлиент, "" + тКлиент.Наименование + " ИНН: " + тКлиент.ИНН);
Лишний функционал, которого у вас нет отключайте (Например Справочник.ТорговыеТочки)
upd. С большими файлами есть проблема. Такими методами передается примерно 1700 строк табличного документа, а дальше крах клиента.
Разбираюсь... Планирую переписать алгоритм полностью для обхода ограничения.