Прайс лист с картинками для УТ11 (УФ, добавление логотипа и свободных текстовых полей)

08.04.13

Задачи пользователя - Прайсы

Развитие отчета http://infostart.ru/public/177876/ добавлением текстовых полей и логотипа в заголовок формы СКД, без изменения основной конфигурации.

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

Наименование Файл Версия Размер
ПрайсЛист.erf
.erf 18,04Kb
200
.erf 18,04Kb 200 Скачать

История: отчет создание, которого описано в Картинка в таблице СКД (управляемое приложение) на примере УТ11, простое решение "в лоб" или легкая модификация стандартного отчета Прайс-Лист понравился заказчику, но чуть позже захотелось большего, а именно: хотелось добавить некоторое количество сворачиваемых группировкой текстовых полей и логотип в заголовке отчета (причем логотип хотелось добавлять по пути файла с диска), чтобы прямо в таком виде можно было отправлять покупателю.

Как говорится "нет ничего невозможного" (с). Приступим:

Сначала модифицируем Основную схему компоновки данных исходного отчета, добавим нужные нам параметры:

Новые параметры

Укажем их в качестве пользовательских настроек:

Пользовательские настройки

Добавим строковый реквизит отчета АдресЛоготипа для передачи через него адреса хранилища во временном хранилище:

Адрес логотипа

Добавим управляемую ФормуОтчета,

Реквизит АдресЛоготипа не размещаем на форме:

КомпоновщиНастроек

Обратим внимание на то, что элемент формы КомпоновщикНастроекПользовательскиеНастройки, не имеет в своем составе колонок, а они нам нужны, чтобы упростить выбор пользователем файла логотипа. Вызваем контекстное меню КомпоновщикНастроекПользовательскиеНастройки и выбираем Добавить колонки:

колонки 

Появятся колонки, что значительно упрощает дальнейшие действия с настройкой отчета:

теперь они есть

Для элемента формы КомпоновщикНастроекПользовательскиеНастройки зададим действие ПриАктивизацииЯчейки:

ПриАктивацииЯчейки

и наполним процедуру (которая включит отображение кнопки выбора для настройки "Путь к логотипу"):

&НаКлиенте
Процедура КомпоновщикНастроекПользовательскиеНастройкиПриАктивизацииЯчейки(Элемент)
    Если Не Элемент.ТекущиеДанные = Неопределено Тогда
        Элементы.КомпоновщикНастроекПользовательскиеНастройкиЗначение.КнопкаВыбора = ?(Элемент.ТекущиеДанные.Настройка = "Путь к логотипу", Истина, Неопределено);
    КонецЕсли;
КонецПроцедуры

Для элемента формы КомпоновщикНастроекПользовательскиеНастройкиЗначение зададим действие НачалоВыбора:

НачалоВыбора

и наполним процедуру (которая для настройки "Путь к логотипу", умеет вызывать диалог выбора файла и при успешном выборе загружает его во временное хранилище заполняя ревкизит отчета АдресЛоготипа):

&НаКлиенте
Процедура КомпоновщикНастроекПользовательскиеНастройкиЗначениеНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
    Если Элемент.Родитель.Родитель.ТекущиеДанные.Настройка = "Путь к логотипу" Тогда   
        Настройка = Отчет.КомпоновщикНастроек.ПользовательскиеНастройки.Элементы.Найти(Отчет.КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("ПутьКЛоготипу").ИдентификаторПользовательскойНастройки);   
        Режим = РежимДиалогаВыбораФайла.Открытие;   
        ДиалогОткрытияФайла = Новый ДиалогВыбораФайла(Режим);   
        ДиалогОткрытияФайла.ПолноеИмяФайла = Настройка.Значение;   
        Текст = "ru = ""Логотип""; en = ""Logo""";   
        Фильтр = НСтр(Текст)+"(*.*)|*.*";
        ДиалогОткрытияФайла.Фильтр = Фильтр;   
        ДиалогОткрытияФайла.МножественныйВыбор = Ложь;   
        ДиалогОткрытияФайла.Заголовок = "Выберите файл логотипа"   
        Если ДиалогОткрытияФайла.Выбрать() Тогда    
            Настройка.Значение = ДиалогОткрытияФайла.ПолноеИмяФайла;    
            Настройка.Использование = Истина;    
            Элементы.КомпоновщикНастроекПользовательскиеНастройки.ТекущийЭлемент = Элементы.КомпоновщикНастроекПользовательскиеНастройкиНастройка;     
            ОбновитьОтображениеДанных();    
            Элементы.КомпоновщикНастроекПользовательскиеНастройки.ТекущийЭлемент = Элементы.КомпоновщикНастроекПользовательскиеНастройкиЗначение;
            Отчет.АдресЛоготипа = ПоместитьВоВременноеХранилище(Новый ДвоичныеДанные(ДиалогОткрытияФайла.ПолноеИмяФайла), Отчет.АдресЛоготипа);
       КонецЕсли;           
       СтандартнаяОбработка = Ложь;  
    КонецЕсли; 
КонецПроцедуры

Теперь наша форма принимает новые параметры, а при выборе файла логотипа даже сохраняет его во внутреннее хранилище, для дальнейшего использования при компоновке отчета.

Дорабатываем процедуру модуля объекта ПриКомпоновкеРезультата, после строки  ДокументРезультат.Очистить(); добавим вызов:

ВывестиСамопальныйЗаголовок(ДокументРезультат, КомпоновщикНастроек);

И пишем новую процедуру: ВывестиСамопальныйЗаголовок (процедура читает параметры компоновки и выводит их предварительно сгруппировав, она же выводит логотип):

Процедура ВывестиСамопальныйЗаголовок(ДокументРезультат, КомпоновщикНастроек)
    ДокументРезультат.НачатьАвтогруппировкуСтрок();    
    КоличествоКолонок = ВернутьКоличествоКолонки(КомпоновщикНастроек.Настройки.Выбор.Элементы);  
    СекцияЗаголовка = ДокументРезультат.ПолучитьОбласть(1, , 1);
    ДокументРезультат.Вывести(СекцияЗаголовка, 1, "ГруппаЗаголовка", Истина);
    Область = ДокументРезультат.Область(ДокументРезультат.ВысотаТаблицы, 1);  
    Область.ВысотаСтроки = 5
    ТекстЗаголовка = ВернутьЗначениеПараметраНастройкиСКД(КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы, "Заголовок");  
    Если ЗначениеЗаполнено(ТекстЗаголовка) Тогда   
        Область = СекцияЗаголовка.Область("R1C1");   
        Область.Шрифт = Новый Шрифт(Область.Шрифт, , 13, Истина);   
        Область.Текст = ТекстЗаголовка;   
        ДокументРезультат.Вывести(СекцияЗаголовка, 2, "ЭлементЗаголовка", Истина);  
    КонецЕсли;    

    Компания = ВернутьЗначениеПараметраНастройкиСКД(КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы, "Компания");  
    Если ЗначениеЗаполнено(Компания) Тогда   
        Область = СекцияЗаголовка.Область("R1C1");   
        Область.Шрифт = Новый Шрифт(Область.Шрифт, , 10, Истина);   
        Область.Текст = Компания;   
        ДокументРезультат.Вывести(СекцияЗаголовка, 2, "ЭлементЗаголовка", Истина);  
    КонецЕсли;    

    Адрес = ВернутьЗначениеПараметраНастройкиСКД(КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы, "Адрес");  
    Если ЗначениеЗаполнено(Адрес) Тогда   
        Область = СекцияЗаголовка.Область("R1C1");   

        Область.Шрифт = Новый Шрифт(Область.Шрифт, , 9);   
        Область.Текст = Адрес;   
        ДокументРезультат.Вывести(СекцияЗаголовка, 2, "ЭлементЗаголовка", Истина);  
    КонецЕсли;    

    Телефон = ВернутьЗначениеПараметраНастройкиСКД(КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы, "Телефон");   
    Если ЗначениеЗаполнено(Телефон) Тогда   
        Область = СекцияЗаголовка.Область("R1C1");   
        Область.Шрифт = Новый Шрифт(Область.Шрифт, , 9);   
        Область.Текст = Телефон;   
        ДокументРезультат.Вывести(СекцияЗаголовка, 2, "ЭлементЗаголовка", Истина);  
    КонецЕсли;     

    НомерКолонкиЛоготипа = ВернутьЗначениеПараметраНастройкиСКД(КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы, "НомерКолонкиЛоготипа", 4);
    Если ЗначениеЗаполнено(АдресЛоготипа) Тогда   
        Область = ДокументРезультат.Область(1, НомерКолонкиЛоготипа, ДокументРезультат.ВысотаТаблицы - 1, НомерКолонкиЛоготипа + 5);   
        ВывестиЛоготип(ДокументРезультат, АдресЛоготипа, Область);  
    КонецЕсли;    
    ДокументРезультат.ЗакончитьАвтогруппировкуСтрок(); 
КонецПроцедуры

Отметим, что в модуле формы также присутствует процедура ПриОткрытии, которая при наличии строки в настройке ПутьКЛоготипу, поместит соответствующую информацию во временное хранилище, это необходимо учитывать и при автоматическом формировании отчета. Также отметим что если отчет запускается на разных компьютерах под одним и темже пользователем, то при задании абсолютного пути (с указанием диска конкретного компьютера), возможны ошибки чтения логотипа, т.к. в этом случае реальный путь к логотипу может отличатся от сохраненного на другом компьютере.

В результате сформированный отчет может принять такой вид:

результат

Готовый отчет доступен к скачиванию. 

ЗЫ: При передаче больших логотипов может наблюдаться замедление вывода отчета.

PS: Существует еще одна модификация данного отчета Прайс лист с картинками для УТ11 (логотип, картинки товаров, свободные текстовые поля в заголовке, отбор по остаткам), правда без подробного описания процесса изменения... но там изменений минимум.

См. также

SALE! 20%

Автоматический заказ поставщику в 1С: загрузка прайсов и анализ цен поставщиков для УТ 10.3, УТ 11, КА2, УНФ, УПП, ERP, Розница 2

Бюджетирование и планирование Оптовая торговля Розничная торговля Логистика, склад и ТМЦ Анализ продаж Платформа 1С v7.7 Платформа 1С v8.3 1С:Комплексная автоматизация 1.х 1С:Управление торговлей 10 1С:Розница 2 1С:Управление производственным предприятием 1С:Управление нашей фирмой 1.6 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Беларусь Украина Россия Казахстан Управленческий учет Платные (руб)

Система управления запасами для 1С помогает работать с запасами правильно: автоматически рассчитывает потребность и делает заказ поставщику, загружает прайсы, перемещает товары по филиалам, анализирует продажи и позволяет управлять ассортиментом.

28500 22800 руб.

21.04.2017    90178    105    39    

190

ЕГАИС++. Опт, производство, импорт

Оптовая торговля Розничная торговля Обмен с ГосИС Платформа 1С v8.3 1С:Управление торговлей 10 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Рестораны, кафе и фаст-фуд Россия Бухгалтерский учет Управленческий учет Акцизы Платные (руб)

Полнофункциональное расширение (ранее известное как Модуль 1С-ЕГАИС) для взаимодействия типовых конфигураций 1С и ЕГАИС, предоставляющее максимум возможностей по работе с УТМ. Получение и отправка ТТН, отправка акта о постановке на баланс и акта о списании. Получение остатков. Загрузка и сопоставление номенклатуры и контрагентов. Оправка в ЕГАИС отчетов о производстве и импорте.

8970 руб.

15.12.2015    165968    679    362    

385

SALE! 10%

Загрузка номенклатуры из Excel в УТ11, КА 2, ERP 2, Розница 2. Дополнительные реквизиты и сведения, характеристики, картинки, цены, остатки

Загрузка и выгрузка в Excel Розничная торговля Логистика, склад и ТМЦ Ценообразование, анализ цен Прайсы Платформа 1С v8.3 1С:Комплексная автоматизация 1.х 1С:Розница 2 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Управленческий учет Платные (руб)

Загрузка из файлов xls, xlsx, ods, csv, mxl в УТ11, КА 2, ERP 2, Розница 2. Задействованы все возможности конфигурации - заполнение реквизитов номенклатуры, дополнительных реквизитов и сведений, характеристики, доп.реквизиты и сведения характеристик. Дополнительные обработки для расширения возможностей.

10560 9504 руб.

29.10.2014    210174    620    524    

439

Обмен с системой ЦРПТ (Универсальная конфигурация ХамелеонЦРПТ + маркировка табака, обуви, одежды, лекарств, фото, молока, духов(парфюма), питьевой воды, велосипедов и шин)

Оптовая торговля Розничная торговля Обмен с ГосИС Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Россия Бухгалтерский учет Управленческий учет Платные (руб)

Данная публикация создана для помощи разработчикам, интеграторам и другим заинтересованным лицам по настройке системы маркировки обуви, одежды, лекарств, табака, фото, молока, духов(парфюма), питьевой воды, велосипедов и шин. Смело задавайте нам вопросы по работе с ЦРПТ, GS1, ЭДО, Национальным каталогом, мы накопили достаточно большую базу знаний по данным темам и готовы ответить на все Ваши вопросы.

104000 руб.

18.03.2019    110327    34    114    

178

Обмен с системой Меркурий через Web + Ветис.API для любых конфигураций (универсальная конфигурация Хамелеон Меркурий)

Оптовая торговля Производство готовой продукции (работ, услуг) Розничная торговля Обмен с ГосИС Платформа 1С v8.3 Конфигурации 1cv8 Сельское хозяйство и рыболовство Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Рестораны, кафе и фаст-фуд Пищевая промышленность Россия Бухгалтерский учет Управленческий учет Платные (руб)

Универсальная конфигурация Хамелеон Меркурий для взаимодействия с системой Меркурий(тестовый+рабочий+демо контур) может использоваться для интеграции в любую конфигурацию на базе 1С, версии ПРОФ и выше. Основное отличие от других решений - работа через веб-интерфейс и API 2.0(API 2.1). Для удобства реализован общий интерфейс в виде обработки, схожей с интерфейсом Меркурий, но возможностей гораздо больше, т.к. при интеграции в Вашу учетную систему, можно на основании Ваших справочников и документов, создавать соответствующие документы и справочники в системе Меркурий и наоборот.

104000 руб.

08.11.2017    120858    296    138    

392
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. admrez 21 03.04.14 13:44 Сейчас в теме
Будет ли работать в 11.1.4.11 или в УТ 11.1.5.8 ? Мало стармани для эксперимента ((
2. mxm2 1263 03.04.14 14:13 Сейчас в теме
(1) admrez, не проверял, но Вы можете сами все сделать на основании стандартного прайса (ибо здесь все наглядно описано). Или можете скачать http://infostart.ru/public/178422 - тут есть версия на 100% работающая в УТ_11_1_4_11
3. welik 4 16.06.14 10:57 Сейчас в теме
Нет процедуры ВывестиЛоготип() и фyнкции ВернутьКоличествоКолонки()
Спасибо за труд, очень полезно.
4. Magomed-mallaev 02.02.15 00:17 Сейчас в теме
Ребята у меня версия УТ11.1.9.70 -
"Ошибку выдает Метод объекта не обнаружен (ПолучитьПараметр)"
5. Magomed-mallaev 02.02.15 00:18 Сейчас в теме
6. PYCTAM 15.06.15 10:58 Сейчас в теме
А как добавить чтобы отображалась группа номенклатуры?
7. meb 30.10.15 15:52 Сейчас в теме
Добрый день!Почему версия отчета 1.001? не получается загрузить отчет
8. kopeikin 16.11.15 16:42 Сейчас в теме
Скачал обработку. У меня выдает ошибку (Метод объекта не обнаружен (ПолучитьПараметр)). Дайте знать что за ошибка и как с ней бороться.
9. kopeikin 16.11.15 16:43 Сейчас в теме
У меня версия УТ 8.3.5.2237 для РБ.
10. Nikovit 24.12.15 13:39 Сейчас в теме
Тоже не работает УТ 11.1.10.185
11. MasteR87 12.01.16 22:42 Сейчас в теме
Кто нибудь решил проблему с ошибкой Метод объекта не обнаружен (ПолучитьПараметр)
Релиз Управление торговлей, редакция 11.1 (11.1.10.199), Отпишитесь кто решил пожалуйста
user816845; vvvalera; Desmondoff; Nikovit; Pyzuriaka; +5 Ответить
Оставьте свое сообщение