gifts2017

Печать прайс-листа с картинками для 1С Предприятие 7.7 Торговля и Склад 9.2 - пример реализации

Опубликовал Chaotic в раздел Обработки - Ценообразование, прайсы

Задача: требуется вывести в прайс фотографии товаров. Фотографии не хранятся в БД, ссылки на файлы генерируются в момент формирования прайса.

При создании статьи за основу взят материал aleksdbs из темы http://forum.infostart.ru/forum11/topic110387/.

Берем стандартную обработку "Печать прайс-листа".

Добавляем в модуль формы следующую процедуру:

Процедура ВывестиРисунок(ОбъектКартинка, Путь)
	Картинка = СоздатьОбъект("Картинка");
    Картинка.Загрузить(Путь);
	
	ОбъектКартинка.РежимРисования(3);
    ОбъектКартинка.УстановитьКартинку(Картинка);
КонецПроцедуры

В макет прайса добавляем 2 колонки "Фото" и "БезФото". В колонку "Фото" вставляем Объект "Картинка" ("Таблица" -> "Вставить рисунок" - > "Картинка"), нажимаем "Отмена" в диалоговом окне загрузки картинки. В свойствах объекта картинки в поле "Текст" пишем

ВывестиРисунок(ИсхТабл.ТекущийОбъект, Путь)

Должно получиться примерно следующее:

Макет

В процедуру Сформировать() после вывода цен добавляем

//Путь к картинке формируется на основе кода номенклатуры
	//возможны варианты: наименования картинок формируются на основе
	//артикулов или при необходимости, добавляем реквизит в справочник
	//Номенклатура и храним путь к картинке в нем

	Путь = "D:\1SBase\ПрайсСКартинками\"+ТекЭлем.Код+".jpg";
			
	Если ФС.СуществуетФайл(Путь)=0 Тогда
		Путь = "";
		ИсхТабл.ПрисоединитьСекцию("Номенклатура|БезФото");
	Иначе
		ИсхТабл.ПрисоединитьСекцию("Номенклатура|Фото");
	КонецЕсли;

Готово!

Скачать файлы

Наименование Файл Версия Размер
ПрайсСКартинками.ert 42
.ert 205,00Kb
29.06.14
42
.ert 1 205,00Kb Скачать

См. также

Подписаться Добавить вознаграждение
Комментарии
1. Андрей Ка (user629924_info) 29.11.16 00:14
//Путь к картинке формируется на основе кода номенклатуры
//возможны варианты: наименования картинок формируются на основе
//артикулов или при необходимости, добавляем реквизит в справочник
//Номенклатура и храним путь к картинке в нем


чет у меня в этой фразе не сходится мысли
2. rjhev korum (корум) 29.11.16 09:28
(0)
Фотографии не хранятся в БД

Сколько работал с 7.7, ни разу не видел, чтобы фотографии хоть кто-то хранил в БД, которая не приспособлена для этого от слова совсем.
3. Андрей Ка (user629924_info) 02.12.16 22:28
Вот немного допилил форму,
а вот по артикулу цеплять, так не получилось((
(пока что учусь)
Прикрепленные файлы:
Price.ert
4. Дмитрий Дрейцер (MadDAD) 05.12.16 08:44
(2) Ну если база на скуле, то ничего не мешает хранить картинки в ней, для Dbf тоже вариантов есть. Конечно без внешних объектов не обойтись но дело то не в базе.
5. Сергей (Che) Коцюра (CheBurator) 05.12.16 17:15
прайс с картинками сожоет при формировании оперативу, а при сохранении в эксель будет весить сотни мегабайт