Имя: Пароль:
1C
 
Загрузить картинки ... УНФ
0 Tarlich
 
02.09.21
23:23
Примеров то нашел несколько , но они используют общий модуль
ПрисоединенныйФайл = ПрисоединенныеФайлы.ДобавитьФайл(Номенклатура,ФайлИзображения.ИмяБезРасширения,СтрЗаменить(ФайлИзображения.Расширение,".",""),ТекущаяДата(),ТекущаяДата(),АдресВременногоХранилищаФайла,,"Изображение загружено обработкой");
В посдедних версиях БСП теперь как то по другому....
Не подскажете как сейчас ?
1 Tarlich
 
02.09.21
23:49
может кому пригодиться

&наСервере
Процедура ЗагрузитьИзображение(Товар,АдресФайла)
    
            
        Ф = Новый Файл(АдресФайла);
        Расширение = Ф.Расширение;
        ИмяБезРасширения = Ф.ИмяБезРасширения;
        РазмерФайла = Ф.Размер();
        
        
        ДвоичныеДанные = Новый ДвоичныеДанные(АдресФайла);
        
        НоваяКартинка                               = Справочники.НоменклатураПрисоединенныеФайлы.СоздатьЭлемент();
        НоваяКартинка.Наименование                  = ИмяБезРасширения;
        НоваяКартинка.ВладелецФайла                 = Товар;      
        НоваяКартинка.ТипХраненияФайла              = Перечисления.ТипыХраненияФайлов.ВИнформационнойБазе;
        НоваяКартинка.ДатаСоздания                  = ТекущаяДата();
        НоваяКартинка.ДатаМодификацииУниверсальная  = ТекущаяДата();
        НоваяКартинка.СтатусИзвлеченияТекста        = Перечисления.СтатусыИзвлеченияТекстаФайлов.Извлечен;
        НоваяКартинка.ФайлХранилище                 = Новый ХранилищеЗначения(ДвоичныеДанные, Новый СжатиеДанных());
        НоваяКартинка.Расширение = Расширение;
        НоваяКартинка.Размер = РазмерФайла;
        НоваяКартинка.Записать();

        РаботаСФайламиСлужебный.ЗаписатьФайлВИнформационнуюБазу(НоваяКартинка.Ссылка, ДвоичныеДанные);
    
КонецПроцедуры
2 Злопчинский
 
03.09.21
00:04
(1) э...? картинки в УНФ можно штатно загрузить загрузкой из внешних источников, без программирования. правда, это не работает в облаке.
3 Tarlich
 
03.09.21
00:38
Блин ! загрузились в файлы но не стал основным изображением ...
4 Злопчинский
 
03.09.21
00:40
(3) в штатной загрузке из внешних источников этого нет чтобы установить основным. ругался с разрабами - но им что в лоб, что по лбу. у них свой мир и свои приоритеты.
5 Maniac
 
03.09.21
00:46
У меня в 1С Фреш и 42 клаудс лежит расширение загрузки картинок.
Грузит все в миг, показывает, назначает, даже меняет размеры картинок.

800 рублей в месяц и все. Если разово то вообще копейки..
Работает в облаках замечательно.

Вот оригинал на моем сайте
https://subsystems.ru/solutions/1c_excel/zagruzka-kartinok-nomenklatury-v-1s/

она еще и выгржать может - тоже меняя размер.
Работать в двух вариантах - вместе с загрузкой из эксель, либо просто на диске папку выбираем. пара опций и все ок.
6 Maniac
 
03.09.21
00:47
Самое важное. СИНХРОНИЗИРУЕТ. если картинок 20 000. то она не будет грузить второй раз. А сама синхронизирует их и загрузит только новые.
7 Maniac
 
03.09.21
00:47
Лучше я просто не видел. самая продуманная разработка и быстрая. плюс все опции что нужно.
Главные тоже может понимать как назначить.
8 Maniac
 
03.09.21
00:49
еще может загружать картинки не к номенклатуре а к характеристикам. в УНФ такой функционал есть
9 Tarlich
 
03.09.21
00:52
Решилось то просто

    Выб = Справочники.НоменклатураПрисоединенныеФайлы.Выбрать();
    пока Выб.Следующий() Цикл        
        Спр = Выб.ВладелецФайла.ПолучитьОбъект();
        Спр.ФайлКартинки = Выб.Ссылка;
        Спр.записать();

    КонецЦикла;
10 Maniac
 
03.09.21
00:53
(9) а если несколько? пять штук. пять раз номенклутура перезапись и последняя картинка из всех? ай ай ай.
А если в одной колонке в одной строке все пять?
11 Maniac
 
03.09.21
00:54
а был случай когда вообще все картинки полностью одно название имели. но все разные
12 Maniac
 
03.09.21
00:56
Ято делать будешь когда в этой куче появяться новые - допустим 10 000 картинок, появилось новых всего 100.
Удалять все и снова все лить?
13 Maniac
 
03.09.21
00:58
Ну в общем если ничего этого нет и задачу решил) то молодец)
Но на полноценное решение это все не катит.
Как найти код который в УНФ файлы грузит - это все любой 1Сник должен просто решать как самую примитивную школьную задачу, уровня новичек.
14 Злопчинский
 
03.09.21
01:31
(5) Женя, аудит для облака 1C:Fresh пройдет (был такой аудит у клиентов)?
(6) "их и загрузит только новые." - новизна/неновизна как определяется? если имя одно и то же, но размеры разные - это новая будет или как уже существующая?
15 Maniac
 
03.09.21
01:47
(14) не понял твоего вопроса. 1С приняла мое расширение оно прошло все аудиты и доступно в Магазине расширений.
16 Maniac
 
03.09.21
01:48
(14) на выбор! опционально
17 Maniac
 
03.09.21
01:51
Как только появляется что то новое (новый случай) я вношу доработки.
Одним из самых последних был прайс, в котором в одной строке в одной ячейке 4-5-6 картинок.
ПЛЮС все картинки - абсолютно ВСЕ у всех товаров - полностью имеют одно название!!! вообще все! типа вот так 700.jpg
Отличался только путь ссылки - у каждой картинки была своя подпапка на сервере.

При начальной закачке все картинки записывались в 1 файл!! локально. те просто скачиваешь все, а получаешь 1 файл у себя))

Пришлось сгенерировать специальную опцию) которая просто решила эту задачу на раз-два.
18 Злопчинский
 
03.09.21
01:52
(15) ага, ок, вижу в расширениях. Вернусь с отпуска - запилю в своей конторе.
19 Злопчинский
 
03.09.21
01:53
(16) это кузяво
20 Maniac
 
03.09.21
02:18
Покупают только разово) Види задача 1 раз грузануть и все) Денег заработал меньше чем геммороя по добавлению туда.
21 Maniac
 
03.09.21
02:19
3-4 продажи за год разовых на месяц. вообще ужасно.