Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
19 апр 2024, 01:49

Сохранение всех картинок

Автор Воитель, 20 дек 2011, 12:24

0 Пользователей и 1 гость просматривают эту тему.

Воитель

Закончил курсы, решил написать первый СВОЙ собственный код. Задача такая. Сохранить все картинки из номенклатуры в папку.
Но первый блин комом, ошибка:
начение не является значением объектного типа (Хранилище)


Функция МСАА() Экспорт

//{{КОНСТРУКТОР_ЗАПРОСА_С_ОБРАБОТКОЙ_РЕЗУЛЬТАТА
// Данный фрагмент построен конструктором.
// При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!

Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| Номенклатура.Код,
| Номенклатура.ОсновноеИзображение,
| Номенклатура.Наименование
|ИЗ
| Справочник.Номенклатура КАК Номенклатура";

Результат = Запрос.Выполнить();

ВыборкаДетальныеЗаписи = Результат.Выбрать();
    ПеременнаяНаВозврат = "";

Пока ВыборкаДетальныеЗаписи.Следующий() Цикл


КаталогФайла = "D:\WebServers\home\4atrix\www\cron\papka_s_kartinkami_iz_1s";
Картинка = ВыборкаДетальныеЗаписи.ОсновноеИзображение.Хранилище.Получить();
Если ТипЗнч(Картинка) = Тип("Картинка") Тогда
Картинка.Записать(КаталогФайла + "\" + ВыборкаДетальныеЗаписи.Наименование + ".jpg");
ПеременнаяНаВозврат = ПеременнаяНаВозврат + КаталогФайла + "\" + ВыборкаДетальныеЗаписи.Наименование + ".jpg<br />"
КонецЕсли;
КонецЦикла;

//}}КОНСТРУКТОР_ЗАПРОСА_С_ОБРАБОТКОЙ_РЕЗУЛЬТАТА
    Возврат ПеременнаяНаВозврат;
КонецФункции

Это функция в общем модуле, вызывается через COM соединение.
Если закоментировать то что связано с картинкой в переменную "ПеременнаяНаВозврат " всё правильно возвращается - адреса всех картинок, т.е. часть кода у меня всё таки верно работает )

Dethmontt

Картинка = Новый Картинка(ВыборкаДетальныеЗаписи.ОсновноеИзображение.Получить());
//может быть нужно так?
Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!

Воитель

Тоже ошибка:
Метод объекта не обнаружен(Получить)
Пробовал через хранилище, тоже с какой-то ошибкой.

Dethmontt

Запрос = Новый Запрос; //Вот так
    Запрос.Текст =
        "ВЫБРАТЬ
        |    Номенклатура.Код,
        |    Номенклатура.ОсновноеИзображение,
        |    Номенклатура.Наименование
        |ИЗ
        |    Справочник.Номенклатура КАК Номенклатура";

    Результат = Запрос.Выполнить();

    ВыборкаДетальныеЗаписи = Результат.Выбрать();
    ПеременнаяНаВозврат = "";
   
    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
       
        КаталогФайла = "D:\WebServers\home\4atrix\www\cron\papka_s_kartinkami_iz_1s";
Если Не ЗначениеЗаполнено(ВыборкаДетальныеЗаписи.ОсновноеИзображение) Тогда
Продолжить;
КонецЕсли;
        Картинка = ВыборкаДетальныеЗаписи.ОсновноеИзображение.Хранилище.Получить();
        Если ТипЗнч(Картинка) = Тип("Картинка") Тогда
            Картинка.Записать(КаталогФайла + "\" + ВыборкаДетальныеЗаписи.Наименование + ".jpg");
            ПеременнаяНаВозврат = ПеременнаяНаВозврат + КаталогФайла + "\" + ВыборкаДетальныеЗаписи.Наименование + ".jpg<br />"
        КонецЕсли;
    КонецЦикла;
Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!

Воитель


Dethmontt

Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!

Воитель

Процесс пошёл. Есть ещё некоторые непонятности, но картинки стали загружаться.

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск