Вход | Регистрация

1С:Предприятие ::

Метки: 

Проблема с подгрузкой картинок к Номенклатуре в УТ 11

Я
   ZANDER
 
08.01.13 - 13:06
Загружаю картинки из папки на компе к номенклатуре. Имена файлов картинок являются артикулами. Выполняю следующий код (на клиенте и на сервере):

&НаСервере
Процедура ЗаписьКартинкиВБазу(Артикул, Расширение, ИмяФайла)
    
    Каталог = "C:\Users\213\Desktop\Картинки";
    
    ТоварОбъект = Справочники.Номенклатура.НайтиПоРеквизиту("Артикул", Артикул).ПолучитьОбъект();
    ТоварСсылка = Справочники.Номенклатура.НайтиПоРеквизиту("Артикул", Артикул).Ссылка;
    
    Картинка = Новый Картинка(""+Каталог+"\"+ИмяФайла);
    ХранилищеКартинки = Новый ХранилищеЗначения(Картинка);
    
    НовФайл = Справочники.НоменклатураПрисоединенныеФайлы.СоздатьЭлемент();
    НовФайл.Наименование   = Артикул;
    НовФайл.ВладелецФайла  = ТоварСсылка;
    НовФайл.ФайлХранилище  = ХранилищеКартинки.Получить();
    НовФайл.ТекстХранилище = ""+СокрЛП(ИмяФайла);
    НовФайл.Расширение     = Расширение;
    НовФайл.Записать();
    
    ТоварОбъект.ФайлКартинки = НовФайл.Ссылка;
    ТоварОбъект.Записать();
КонецПроцедуры

 //------------------------------------------------------------------------             
 
&НаКлиенте
Процедура ЗагрузитьФотографии(Команда)
    
    Каталог = "C:\Users\213\Desktop\Картинки";
    
    Файлы = НайтиФайлы(Каталог, "*.*");
    Для Каждого Файл из Файлы Цикл    
       //Сообщить(""+Файл.Имя+", "+Файл.ИмяБезРасширения+", "+Файл.Расширение);
 
        Расширение = СтрЗаменить(Файл.Расширение, ".", "");
        ЗаписьКартинкиВБазу(""+СокрЛП(Файл.ИмяБезРасширения), Расширение, ""+СокрЛП(Файл.Имя));
    КонецЦикла;
        
КонецПроцедуры



Однако, после выполнения, при открытии элемента номенклатуры сообщается об ошибке, что файл картинки не найден на сервере. В чем может быть проблема?
 
 
   ZANDER
 
1 - 08.01.13 - 13:07
понятно, что главная процедура - это клиентская процедура "ЗагрузитьФотографии"
   Капитан О
 
2 - 08.01.13 - 13:08
просто у тебя не найден на сервере файл картинки
   ZANDER
 
3 - 08.01.13 - 14:05
Неужели никто не подгружал еще картинки в 11-ю УТ? Поделитесь нюансами. Что я могу подправить в коде, чтобы картинки все таки были найдены "на сервере"?
   МимохожийОднако
 
4 - 08.01.13 - 14:08
Грузишь в справочник НовФайл.ФайлХранилище, а получаешь из папки?!
   ZANDER
 
5 - 08.01.13 - 14:12
(4) да
   МимохожийОднако
 
6 - 08.01.13 - 14:12
Так и получай из хранилища )))
   ZANDER
 
7 - 08.01.13 - 14:17
(6) я не понимаю, что Вы хотите сказать. Я выполняю код в ожидании того, что по его выполнении файлы картинок загрузятся в БД. Однако, после выполнения этого кода, при открытии элемента справочника Номенклатуры позникает системная ошибка:

{ОбщийМодуль.ПрисоединенныеФайлы.Модуль(182)}: Ошибка открытия файла: файл не найден на сервере.
Возможно файл удален антивирусной программой.
Обратитесь к администратору.

вот в чем мб дело?
   ZANDER
 
8 - 08.01.13 - 14:18
у меня сервер и клиент один и тот же комп
   hhhh
 
9 - 08.01.13 - 14:28
(8) ну значит прав нет на эту папку у сервера 1с
   МимохожийОднако
 
10 - 08.01.13 - 14:31
Проверь вот этот кусок
Картинка = Новый Картинка(""+Каталог+"\"+ИмяФайла);
    ХранилищеКартинки = Новый ХранилищеЗначения(Картинка);
Есть уверенность, что там файлы с картинками?
 
 Рекламное место пустует
   МимохожийОднако
 
11 - 08.01.13 - 14:33
Посмотри общий модуль ПрисоединенныйФайлыКлиент. Логичнее взять велосипед оттуда.
   banco
 
12 - 08.01.13 - 15:57
(0) данные справочника НоменклатураПрисоединенныеФайлы хранится в регистре сведений ПрисоединенныеФайлы, ответ (11) тебе в помощь
   ZANDER
 
13 - 16.01.13 - 03:10
Спасибо (11)МимохожийОднако и (12)banco
Все сделал, все загрузил. Картинки появились в справочнике сразу.
В коде я заменил

Картинка = Новый Картинка(""+Каталог+"\"+ИмяФайла);

на
Картинка = Новый ДвоичныеДанные(""+Каталог+"\"+ИмяФайла);

а также еще кой-чего и добавил запись в регистр сведений ПрисоединенныеФайлы

Спасибо


Список тем форума
Рекламное место пустует Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует