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

1С:Предприятие :: 1С:Предприятие 8 общая

СКД вывести прайс с картинками

СКД вывести прайс с картинками
Я
   Roma1314704
 
26.01.18 - 13:43
Столкнулся с проблемой как вывести изображения товара в прайсе на основании СКД
Изображение  в карточке товара есть.
При выводе через СКД - в поле Изображение - <>
Как правильно?
 
 
   Roma1314704
 
1 - 26.01.18 - 13:46
платформа  - 8.3
   kittystark
 
2 - 26.01.18 - 14:31
просто так без дополнительного программирования не получится, на курсы-по-1с.рф было бесплатное видео - ищи
   Ненавижу 1С
 
3 - 26.01.18 - 14:34
Перем ВторойЗаход;

Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
    
    Если ВторойЗаход Тогда
        Возврат;    
    КонецЕсли; 
    
    ВторойЗаход = Истина;
    СтандартнаяОбработка = Ложь;
    Попытка
        СкомпоноватьРезультат(ДокументРезультат,ДанныеРасшифровки);
    Исключение
        ВторойЗаход = Ложь;
        Возврат;
    КонецПопытки; 
    ВторойЗаход = Ложь;
    Состояние("Вывод картинок на экран...");
...

КонецПроцедуры
ВторойЗаход = Ложь;
   kittystark
 
4 - 26.01.18 - 14:46
(3) эээ....
это чё? прикол?

сам в СКД наваял пачку отчетов с картинками, 
но такой методы не видел :)
   Ненавижу 1С
 
5 - 26.01.18 - 14:54
(4) сам придумал в свое время
   Roma1314704
 
6 - 28.01.18 - 15:50
kittystark, спасибо, действительно по Вашей ссылке удалось прикрутить к прайсу изображение.
Теперь возникла другая проблема - размер картинки держит высота строки товара табличного документа.
Даже когда меняю свойство РазмерКартинки на Авто все равно высота строки табличного документа не дает развернуть изображение на всю высоту.
Что делаю не так?
   mexanik_96
 
7 - 28.01.18 - 15:58
(6) дак включи автовысоту строк у строки
   Roma1314704
 
8 - 28.01.18 - 16:46
Где включить ? Отчет создается через СКД
   Roma1314704
 
9 - 28.01.18 - 16:54
Если речь идёт о макете в скд то там стоит галочка автоматическая высота строки. Походу это немного не то
   Roma1314704
 
10 - 28.01.18 - 18:02
Есть мысли что нужно поменять?
 
 Рекламное место пустует
   kittystark
 
11 - 29.01.18 - 08:56
если автовысота не срабатывает:

возьми картинку высотой 100px
без СКД в любом табличном документе вставь эту картинку и замерь сколько "попугаев" высоты табличного документа она занимает -> откуда получишь эмпирический коэфф.перевода
в СКД перед тем как выполнять областьДляКартинки.Расположить();
вычисляешь высоту изображения в px (через ком-объект винды), переводишь ее по коэфф. и присваиваешь полученное значение высоте строки в попугаях
   echo77
 
12 - 29.01.18 - 09:07
В свое время писал(где-то взял) процедуру постробработки табличного документа:

// Моя вставка Крынецкий 07.05.16. Вывод картинок, расположенных в поле с типом СправочникСсылка.ХранилищеДополнительнойИнформации

Процедура ВывестиКартинкиСКД(ДокументРезультат, ДанныеРасшифровки)
    
    If 1=0 Тогда ДокументРезультат = Новый ТабличныйДокумент; КонецЕсли;
    
    Для Row = 1 По ДокументРезультат.ВысотаТаблицы Цикл
        Для Col = 1 По ДокументРезультат.ШиринаТаблицы Цикл
            Область = ДокументРезультат.Область(Row, Col);
            Расшифровка = Область.Расшифровка;
            
            Если ТипЗнч(Расшифровка) = Тип("ИдентификаторРасшифровкиКомпоновкиДанных") Тогда
                ПоляРасшифровки = ДанныеРасшифровки.Элементы.Получить(Расшифровка).ПолучитьПоля();
                Картинка = Неопределено;
                Для Каждого ПолеРасшифровки Из ПоляРасшифровки Цикл
                    Если ТипЗнч(ПолеРасшифровки.Значение) = Тип("СправочникСсылка.ХранилищеДополнительнойИнформации") И ЗначениеЗаполнено(ПолеРасшифровки.Значение) Тогда
                        
                        ЗначениеИзХранилища = ПолеРасшифровки.Значение.Хранилище.Получить()// В хранилище может храниться как картинка, так и двоичные данные

                        
                        Если ТипЗнч(ЗначениеИзХранилища) = Тип("Картинка") Тогда
                            Картинка = ЗначениеИзХранилища;
                        ИначеЕсли  ТипЗнч(ЗначениеИзХранилища) = Тип("ДвоичныеДанные") Тогда
                            Картинка = Новый Картинка(ЗначениеИзХранилища);
                        КонецЕсли;
                        
                        Прервать// Как только нашли первую картинку - прекращаем

                    КонецЕсли;
                КонецЦикла;
                
                Если Картинка <> Неопределено Тогда
                    Рис = ДокументРезультат.Рисунки.Добавить(ТипРисункаТабличногоДокумента.Картинка);
                    Рис.Картинка = Картинка;
                    // Здесь задается размер рисунка

                    Рис.РазмерКартинки = РазмерКартинки.Пропорционально;
                    // Уберем рамку

                    Рис.ГраницаСверху    = Ложь;
                    Рис.ГраницаСлева    = Ложь;
                    Рис.ГраницаСнизу    = Ложь;
                    Рис.ГраницаСправа    = Ложь;
                    Рис.Расположить(Область);
                КонецЕсли;
                
            КонецЕсли;
            
        КонецЦикла;
    КонецЦикла;
    
    
КонецПроцедуры
// Конец моей вставки

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