Выгрузка картинок товаров из УТ


Обработка для выгрузки картинок товаров из Управления Торговлей в указанную папку

Доброго времени суток!

 

Данная обработка выгружает картинки из карточек товаров в указанную папку. Расширение файла берется исходя из того, в каком формате была загружена картинка в карточку. Имя файла равняется коду соответствующего товара. Если в коде есть символы, которые нельзя использовать в имени файла, то они заменяются на «_» (нижнее подчеркивание).

Таким образом, из товара с картинкой в формате PNG и с кодом, к примеру, «qwerty/12345», выгрузится картинка в файл «qwerty_12345.PNG».

4 Comments

  1. yanker

    В моей версии 1с не работает!

    1С:Предприятие 8.2 (8.2.18.104)

    «Управление торговым предприятием для Украины», редакция 1.2.

    Разработка конфигурации: «ABBYY Ukraine», 2007-2014 (1.2.19.1) (http://v8.1c.ru/regional/RegionalSolutions_UA_UTP.htm)

    Copyright © ООО «1C», 2007-2014

    (http://www.1c.ru)

    зря потратил 1$

    Reply
  2. kn

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

    Reply
  3. lame

    Косяк.

    выгружает только 1 фото у товара.

    не предусмотрено — что у товара может быть их много.

    надо было обращаться не к спр Номенклатура

    а к спр Хранилище доп инфо

    только в имя файла добавить код товара

    типа

    КодТовара_ИмяКакВСправочнике.РасширениеКакВСправочнике

    —-

    Reply
  4. lame

    вот так вот переделать кнопку выгрузки

    Процедура КнопкаВыполнитьНажатие(Кнопка)
    
    Сообщить(» «, СтатусСообщения.БезСтатуса);
    Сообщить(» «, СтатусСообщения.БезСтатуса);
    
    Выгружено = 0;
    
    Запрос = Новый Запрос;
    Запрос.Текст = «ВЫБРАТЬ ПЕРВЫЕ 10
    | ХранилищеДополнительнойИнформации.Ссылка
    |ИЗ
    | Справочник.ХранилищеДополнительнойИнформации КАК ХранилищеДополнительнойИнформации
    |ГДЕ
    | ХранилищеДополнительнойИнформации.ПометкаУдаления = ЛОЖЬ»;
    
    Для Каждого Стр Из Запрос.Выполнить().Выгрузить() Цикл
    
    Ном = Стр.Ссылка;
    //
    //СсылкаНаХранилище = ПолучитьИзображение(Ном);
    //Если СсылкаНаХранилище = Неопределено Тогда
    // Продолжить;
    //КонецЕсли;
    //
    //Хранилище = СсылкаНаХранилище.Хранилище;
    Если Ном.хранилище.Получить() = Неопределено Тогда
    Продолжить;
    КонецЕсли;
    //
    Данные = Ном.хранилище.Получить();
    //
    Наим = ПреобрКод(Ном.объект.Код);// это номенклатура
    //Расширение = ПолучитьРасширение(Данные.ФильтрИменФайлов());
    
    //отсебятина. не везде есть расширение
    Если ПустаяСтрока(Ном.имяфайла) тогда
    Расширение =»Не указано.JPG»;
    Иначе
    Расширение =сокрлп(Ном.имяфайла);
    конецесли;
    
    ПолныйПуть = СокрЛП(Путь) + сокрлп(Наим)+»_»+Расширение;
    //
    Данные.Записать(ПолныйПуть);
    Сообщить(Ном, СтатусСообщения.БезСтатуса);
    Выгружено = Выгружено + 1;
    
    КонецЦикла;
    
    Сообщить(» «, СтатусСообщения.БезСтатуса);
    Сообщить(«Успешно выгружено » + Строка(Выгружено) + » картинок», СтатусСообщения.Информация);
    
    КонецПроцедуры

    Показать

    так будут выгружаться все фото

    тут только есть допуск:

    1. не у всех фото есть имя файла. поэтому там Расширение =»Не указано.JPG»;

    Reply

Leave a Comment

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