// 1-й вариант //Как вывести картинку в табличный документ? ТабДок = Новый ТабличныйДокумент; Макет = ОбработкаОбъект.ПолучитьМакет("Макет"); ОбластьКартинки = Макет.ПолучитьОбласть("ОбластьСКартинкой"); Картинка = Новый Картинка(ПутьККартинке); // Элемент управления "Логотип" входит в коллекцию картинок области. ОбластьКартинки.Рисунки.Логотип.Картинка = Картинка; ТабДок.Вывести(ОбластьКартинки); ТабДок.Показать(); // 2-й вариант //Как вывести картинку в табличный документ без изменения макета? Область = Макет.ПолучитьОбласть("Шапка"); Рисунок = Область.Рисунки.Добавить(ТипРисункаТабличногоДокумента.Картинка); Рисунок.Верх = 5; Рисунок.Высота = 10; Рисунок.Ширина = 10; Рисунок.Лево = 5; Рисунок.Картинка = Новый Картинка(ПутьККартинке); Рисунок.РазмерКартинки = РазмерКартинки.РеальныйРазмер; ТабДок.Вывести(Область); //3-й вариант //ПечатьОрганизации , добавляем в макет картинку с именем Картинка1 в самую нижнюю //область с именем ОбластьПечатьОрганизации ОбластьПечатьОрганизации = Макет.ПолучитьОбласть("ПечатьОрганизации"); Картинка= Новый Картинка("C:\files\img\печатьОрганизации.gif") ; ОбластьПечатьОрганизации.Рисунки.Картинка1.Картинка = картинка; ТабДок.Вывести(ОбластьПечатьОрганизации); // 4-й вариант динамически ОбластьПечатьОрганизации = Макет.ПолучитьОбласть("ПечатьОрганизации"); КартинкаПечатьОрганизации = ОбластьПечатьОрганизации.Рисунки.Добавить(ТипРисункаТабличногоДокумента.Картинка); КартинкаПечатьОрганизации.Картинка = БиблиотекаКартинок.ОбщаяКартинка1; КартинкаПечатьОрганизации.Верх = 0; КартинкаПечатьОрганизации.Высота = 80; КартинкаПечатьОрганизации.Ширина = 80; КартинкаПечатьОрганизации.Лево = 50; КартинкаПечатьОрганизации.ГраницаСверху = Ложь; КартинкаПечатьОрганизации.ГраницаСлева = Ложь; КартинкаПечатьОрганизации.ГраницаСправа = Ложь; КартинкаПечатьОрганизации.ГраницаСнизу = Ложь; КартинкаПечатьОрганизации.РазмерКартинки = РазмерКартинки.АвтоРазмер; ТабДок.Вывести(ОбластьПечатьОрганизации); //5-й вариант получение картинки из хранилища значений // Выборка.Изображение - выборка из запроса, Изображение реквизит -хранил. значений Попытка Путь = КаталогВременныхФайлов()+ "\1С_Картинка_"+Формат(ТекущаяДата(),"ДФ=yyyyMMddЧЧммсс")+".bmp"; КартинкаВПамяти = Выборка.Изображение.Получить(); КартинкаВПамяти.Записать(Путь); ОбластьСостав.Рисунки.D1.Картинка = Новый Картинка(Путь); Исключение ОбластьСостав.Рисунки.D1.Картинка = Новый Картинка; КонецПопытки;
Перем Картинка, ТЗКаталога, ПутьКаталогаРисунков; //****************************************************************************** Процедура Сформировать1() Таб = СоздатьОбъект("Таблица"); Таб.ИсходнаяТаблица("Сформировать"); Картинка = СоздатьОбъект("Картинка"); т=1; ТЗКаталога.ВыбратьСтроки(); Пока ТЗКаталога.ПолучитьСтроку() = 1 Цикл Картинка.Загрузить(ТЗКаталога.Путь); Сформировать = т; Таб.ВывестиСекцию("Заголовок"); т = т+1; КонецЦикла; Таб.Опции(0,0,0,0); Таб.Показать("Сформировать",""); ТЗКаталога = ""; КонецПроцедуры //****************************************************************************** Процедура карт(карт) //Вызывается из объекта картинка на печатной форме карт.РежимРисования(3); карт.УстановитьКартинку(Картинка); КонецПроцедуры //карт(карт) Вызывается из объекта картинка на печатной форме //****************************************************************************** Процедура СканироватьКаталог(Каталог) Перем А; ФСО=СоздатьОбъект("ФС"); Ф=ФСО.НайтиПервыйФайл(Каталог+"*"); Пока Ф<>"" Цикл Если (Ф<>".")И(Ф<>"..") Тогда ФС.АтрибутыФайла(Каталог+Ф,,А); Если Сред(А,4,1)="1" Тогда СканироватьКаталог(Каталог+Ф+"\"); Иначе Если (Прав(Ф,4)=".jpg") или (Прав(Ф,4)=".wmf") или (Прав(Ф,4)=".emf") или (Прав(Ф,4)=".ico") или (Прав(Ф,4)=".bmp") или (Прав(Ф,4)=".dib") или (Прав(Ф,4)=".rle") Тогда ТЗКаталога.НоваяСтрока(); ТЗКаталога.Путь = Каталог+Ф; ТЗКаталога.Файл = Ф; //Для поиска файла по имени (исп в другой обработке) КонецЕсли; КонецЕсли; КонецЕсли; //Сообщить(Каталог+Ф); Ф=ФСО.НайтиСледующийФайл(); КонецЦикла; КонецПроцедуры //СканироватьКаталог(Каталог) //****************************************************************************** Процедура Сформировать() Если ФС.ВыбратьКаталог(ПутьКаталогаРисунков,"Выберете папку с рисунками .jpg...",60) <> 1 Тогда Предупреждение("Рисунки не покажу!"); Возврат; Иначе ТЗКаталога = СоздатьОбъект("ТаблицаЗначений"); ТЗКаталога.НоваяКолонка("Путь",,,,,,,); ТЗКаталога.НоваяКолонка("Файл",,,,,,,); СканироватьКаталог(ПутьКаталогаРисунков+"\"); КонецЕсли; Сформировать1(); КонецПроцедуры
Процедура ПоказатьДБФ(дбф, имяФайла) далее Процедура Сформировать() перем дбф, флаг, папка; тЗнач.Очистить(); флаг=ФС.ВыбратьФайл(0, имяФайла, папка,"Выберете DBF файл","|*.DBF"); Если флаг=0 Тогда возврат; КонецЕсли; дбф=СоздатьОбъект("Xbase"); дбф.ОткрытьФайл(папка+имяФайла); папк=папка; файл=имяФайла; Если дбф.открыта()=0 Тогда Предупреждение("Не могу открыть файл"+имяФайла); возврат; КонецЕсли; ПоказатьДБФ(дбф, имяФайла); КонецПроцедуры Процедура ПоказатьДБФ(дбф, имяФайла) Перем ин, имяПоля, тип, длина, точность, номСтроки; для ин=1 по дбф.КоличествоПолей() цикл дбф.ОписаниеПоля(ин, имяПоля, тип, длина, точность); тЗнач.НоваяКолонка(имяПоля, тип); тЗнач.УстановитьПараметрыКолонки(ин, тип, длина, точность,, мин(10, длина)); конецЦикла; КолП=дбф.КоличествоПолей(); НомС=ДБФ.КоличествоЗаписей(); загТЗнач="Файл "+имяФайла; дбф.Первая(); номСтроки=0; Пока дбф.ВКонце()=0 Цикл номСтроки=номСтроки+1; тЗнач.НоваяСтрока(номСтроки); для ин=1 по дбф.КоличествоПолей() цикл тЗнач.УстановитьЗначение(номСтроки, ин, дбф.ПолучитьЗначениеПоля(ин)); КонецЦикла; дбф.Следующая(); конецЦикла; КонецПроцедуры