Маленький приклад, як вивести зображення номенклатури в звіт СКД
Доброго час доби. Натрапив на таку задачу: як вивести зображення в звіт. Звичайно ж, не хочеться відмовлятися від СКД, бо вручну це все ясно, але довго. В інтернеті не знайшов нормального пояснення. Тому вирішив зробити і віддати всім в користування приклад (робочий звіт), як вивести зображення номенклатури в СКД.
- У запиті завжди виводимо поле Основне зображення з Номенклатури,
- в макетах додаємо макет поля Основного зображення і завжди його використовуємо в сумі з угрупованням Номенклатури (на зображенні видно приклад).
- Висновок звіту треба робити вручну. Ось модуль, який треба вставити в дію кнопки "Сформувати":
Думаю тут все зрозуміло, з елементів форми обробляємо тільки Дати, в параметри.
Налаштувати макет просто: В макетах в СКД вибираємо додати макет поля, вибираємо осередок і додаємо тільки один параметр в розшифровку як називається у нас поле в запиті з зображенням, на зображенні видно.
(Буває глючить: тоді робимо поле тип не "Текст", а "Параметр" і задаємо однакове ім'я для "Параметра" і "Параметра розшифровки". За замовчуванням він напише. Подання (ІмяПараметра)) стираємо Подання та змінюємо тип поля на Текст і залишається тільки один параметр Розшифровки.
В налаштуваннях завжди використовуємо поруч з номенклатурою поле зображення.
Ну ось якось так.
PS: Ця публікація повністю безкоштовна і вільна, тому що це не готовий продукт, а простий приклад рішення задачі
Всім вдалої роботи.
39. Evgeniy_progger_1C (Evgeniy_begin_progger) 04.09.14 9:06 Зараз в темі
(14) lm-alex, привіт! у мене така проблема:
ЕлементРезультата = ПроцессорКомпоновкі.Следующій ();
Що ми отримуємо в якості елемента?
Це мені важливо тому, що мені потрібно дістати з ХраніліщаЗначеній картинку, ось мій код:
СтандартнаяОбработка = Брехня;
ДокументРезультат.Очістіть ();
КомпоновщікМакета = Новий КомпоновщікМакетаКомпоновкіДанних;
Макет = КомпоновщікМакета.Виполніть (СхемаКомпоновкіДанних, КомпоновщікНастроек.Настройкі, ДанниеРасшіфровкі);
ПроцессорКомпоновкі = Новий ПроцессорКомпоновкіДанних;
ПроцессорКомпоновкі.Ініціалізіровать (Макет. ДанниеРасшіфровкі);
ПроцессорВивода = Новий ПроцессорВиводаРезультатаКомпоновкіДаннихВТаблічнийДокумент;
ПроцессорВивода.УстановітьДокумент (ДокументРезультат);
Поки Істина Цикл
Якщо ЕлементРезультата = Не визначено Тоді
перервати;
КонецЕсли;
ПроцессорВивода.ВивестіЕлемент (ЕлементРезультата);
Якщо ЕлементРезультата.ЗначеніяПараметров.Колічество () = 0 Тоді
продовжити;
КонецЕсли;
Але чому то тип значення ХраніліщеЗначенія він не визначає, і тільки 3 типи у ЕлементПараметра.Значеніе: Null, Число і ідентифікатор розшифровки компонування значення.
Зображення - отримую в запиті, Номенклатура.ОсновноеІзображеніе