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


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

Одна кнопка и несколько вариантов макета

Одна кнопка и несколько вариантов макета
Я
   gu_viktoria
 
17.08.18 - 11:37
Есть документ в нем два макета,в модуле менеджера описаны функции вывода в макет. Не знаю как и в каком месте сделать чтобы по нажатии кнопки печать выбор какой макет вывести.
Гугл не помог
 
 
   gu_viktoria
 
1 - 17.08.18 - 11:38
выбрать*
   Вафель
 
2 - 17.08.18 - 11:54
сделай просто 2 печатные формы. сами пускай выбирают
   gu_viktoria
 
3 - 17.08.18 - 11:58
(2) Так и есть,не знаю как сделать чтобы можно было выбрать
   МимохожийОднако
 
4 - 17.08.18 - 12:03
(3) Две печатные формы сделала уже?
   gu_viktoria
 
5 - 17.08.18 - 12:07
(4) Да
Вопрос только в том как при нажатии на кнопку "Печать" вывалился список какую печатку мне надо распечатать
   Вафель
 
6 - 17.08.18 - 12:08
(5) посмотри как в типовых сделано
   gu_viktoria
 
7 - 17.08.18 - 12:09
(6) Там БСП. Добавлять общий модуль надо итд. Может как-то проще сделать можно?
   МимохожийОднако
 
8 - 17.08.18 - 12:10
Если типовая конфигурация, то при подключении печатных форма настраиваешь названия кнопок.
   gu_viktoria
 
9 - 17.08.18 - 12:12
(8) Самописная
   shadow_sw
 
10 - 17.08.18 - 12:13
(7) в УТ10.3 посмотри..без БСП, документ РТиУ, к примеру
 
 Рекламное место пустует
   gu_viktoria
 
11 - 17.08.18 - 12:39
(10) Блин,у меня нет УТ
   gu_viktoria
 
12 - 17.08.18 - 12:40
В Рознице нет такого?
   Вафель
 
13 - 17.08.18 - 12:41
обычные формы?
   gu_viktoria
 
14 - 17.08.18 - 12:42
(13) управляемые
   gu_viktoria
 
15 - 17.08.18 - 13:22
up
   Вафель
 
16 - 17.08.18 - 13:25
в упр формах можно группу кнопок сделать и будет меню
   КоньЛапчатый
 
17 - 17.08.18 - 13:51
СписокПечатныхФорм = Новый СписокЗначений;
СписокПечатныхФорм.Добавить(1,"Договор);    
СписокПечатныхФорм.Добавить(2,"Товарный чек");
ВыбраннаяФорма = СписокПечатныхФорм.ВыбратьЭлемент("Выберите печатную форму.",);
   Serg_1960
 
18 - 17.08.18 - 14:33
Лучше уж две кнопки (это уже много для юзверей, боитесь запутаются?), чем когда на сервере ответить некому будет на вопрос :)
   gu_viktoria
 
19 - 17.08.18 - 15:08
(16) (18)  делаю с двумя кнопками, запуталась в передаваемых параметрах
   gu_viktoria
 
20 - 17.08.18 - 15:10
&НаКлиенте
Процедура ПечатьОтчетБаланс(Команда)
    // Вставить содержимое обработчика.

КонецПроцедуры



Функция ПечатьОтчетБаланс(ТабДок, Ссылка) Экспорт
    
    Макет = Документы.КонсолидированныйБаланс.ПолучитьМакет("ОтчетБаланс");
    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    |    КонсолидированныйБаланс.Дата КАК Дата,
    |    КонсолидированныйБаланс.Номер КАК Номер,
    |    КонсолидированныйБаланс.Организация.НаимЮЛПол КАК НаимЮЛПол,
    |    КонсолидированныйБаланс.Организация.КодПоОКПО КАК КодПоОКПО,
    |    КонсолидированныйБаланс.Организация.ГКЭД КАК ГКЭД,
    |    КонсолидированныйБаланс.Организация.КодПравовойФормы КАК КодПравовойФормы,
    |    КонсолидированныйБаланс.Организация.НаимГКЭД КАК НаимГКЭД,
    |    КонсолидированныйБаланс.Организация.ОргПравФорм КАК ОргПравФорм,
    |    КонсолидированныйБаланс.Организация.ОрганУправления КАК ОрганУправления,
    |    КонсолидированныйБаланс.Организация.ИННЮЛ КАК ИННЮЛ,
    |    КонсолидированныйБаланс.Организация.АдрЮР КАК АдрЮР,
    |    КонсолидированныйБаланс.Организация.ТелГБ КАК ТелГБ,
    |    КонсолидированныйБаланс.Организация.ФИОРук КАК ФИОРук,
    |    КонсолидированныйБаланс.Организация.ФИОБух КАК ФИОБух,
    |    ПРЕДСТАВЛЕНИЕ(КонсолидированныйБаланс.Организация) КАК Предприятие,
    |    КонсолидированныйБаланс.ДатаНПП КАК ДатаН,
    |    КонсолидированныйБаланс.ДатаКПП КАК ДатаК,
    |    КонсолидированныйБаланс.Отчет.(
    |        Наименование КАК Наименование,
    |        НаименованиеК КАК НаименованиеК,
    |        Строка КАК Строка,
    |        Сумма КАК СуммаН,
    |        СуммаПП КАК СуммаК
    |    ) КАК Отчет
    |ИЗ
    |    Документ.КонсолидированныйБаланс КАК КонсолидированныйБаланс
    |ГДЕ
    |    КонсолидированныйБаланс.Ссылка В(&Ссылка)";
    
    Запрос.Параметры.Вставить("Ссылка", Ссылка);
    Выборка = Запрос.Выполнить().Выбрать();
    
    ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок");
    ОбластьШапка = Макет.ПолучитьОбласть("ШапкаТаблицы");
    ОбластьДетали = Макет.ПолучитьОбласть("Детали");
    ОбластьПодвал = Макет.ПолучитьОбласть("Подвал");
    
    ТабДок.Очистить();
    
    ВставлятьРазделительСтраниц = Ложь;
    Пока Выборка.Следующий() Цикл
        Если ВставлятьРазделительСтраниц Тогда
            ТабДок.ВывестиГоризонтальныйРазделительСтраниц();
        КонецЕсли;
        
        ТабДок.Вывести(ОбластьЗаголовок);
        
        ОбластьШапка.Параметры.Заполнить(Выборка);
        ТабДок.Вывести(ОбластьШапка, Выборка.Уровень());
        
        
        ВыборкаОтчет = Выборка.Отчет.Выбрать();
        
        Пока ВыборкаОтчет.Следующий() Цикл
            ОбластьДетали.Параметры.Заполнить(ВыборкаОтчет);
            ТабДок.Вывести(ОбластьДетали, ВыборкаОтчет.Уровень());
        КонецЦикла;
        
        ОбластьПодвал.Параметры.Заполнить(Выборка);
        ТабДок.Вывести(ОбластьПодвал);
        ВставлятьРазделительСтраниц = Истина;
    КонецЦикла;
    
    Возврат ТабДок;
    
КонецФункции
   gu_viktoria
 
21 - 17.08.18 - 15:10
Какие параметры ей нужны ?
   gu_viktoria
 
22 - 17.08.18 - 15:56
Вопрос закрыт,всем большое спасибо 
Что сделала:
Создала "Группы команд" на ветке "Общее" 
В свойствах Категория:Командная панель формы

Было создано две стандартные команды печати конструктором 
В свойствах:

Группа:Командная панель формы.<Имя группы>
Тип параметра команды: ДокументСсылка.<Имя Документа>
Режим Использования : Множественный

В модуле команды :

&НаКлиенте
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
    ТабДок = Новый ТабличныйДокумент;
    Печать(ТабДок, ПараметрКоманды);
    ТабДок.ОтображатьСетку = Ложь;
    ТабДок.Защита = Ложь;
    ТабДок.ТолькоПросмотр = Ложь;
    ТабДок.ОтображатьЗаголовки = Ложь;
    ТабДок.Показать();
КонецПроцедуры

&НаСервере
Процедура Печать(ТабДок, ПараметрКоманды)
    Документы.КонсолидированныйБаланс.ПечатьОтчетБаланс(ТабДок, ПараметрКоманды);
КонецПроцедуры


В модуле менеджера:
Функция ПечатьОтчетБаланс(ТабДок, Ссылка) Экспорт
    
    Макет = Документы.КонсолидированныйБаланс.ПолучитьМакет("ОтчетБаланс");
    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    |    КонсолидированныйБаланс.Дата КАК Дата,
    |    КонсолидированныйБаланс.Номер КАК Номер,
    |    КонсолидированныйБаланс.Организация.НаимЮЛПол КАК НаимЮЛПол,
    |    КонсолидированныйБаланс.Организация.КодПоОКПО КАК КодПоОКПО,
    |    КонсолидированныйБаланс.Организация.ГКЭД КАК ГКЭД,
    |    КонсолидированныйБаланс.Организация.КодПравовойФормы КАК КодПравовойФормы,
    |    КонсолидированныйБаланс.Организация.НаимГКЭД КАК НаимГКЭД,
    |    КонсолидированныйБаланс.Организация.ОргПравФорм КАК ОргПравФорм,
    |    КонсолидированныйБаланс.Организация.ОрганУправления КАК ОрганУправления,
    |    КонсолидированныйБаланс.Организация.ИННЮЛ КАК ИННЮЛ,
    |    КонсолидированныйБаланс.Организация.АдрЮР КАК АдрЮР,
    |    КонсолидированныйБаланс.Организация.ТелГБ КАК ТелГБ,
    |    КонсолидированныйБаланс.Организация.ФИОРук КАК ФИОРук,
    |    КонсолидированныйБаланс.Организация.ФИОБух КАК ФИОБух,
    |    ПРЕДСТАВЛЕНИЕ(КонсолидированныйБаланс.Организация) КАК Предприятие,
    |    КонсолидированныйБаланс.ДатаНПП КАК ДатаН,
    |    КонсолидированныйБаланс.ДатаКПП КАК ДатаК,
    |    КонсолидированныйБаланс.Отчет.(
    |        Наименование КАК Наименование,
    |        НаименованиеК КАК НаименованиеК,
    |        Строка КАК Строка,
    |        Сумма КАК СуммаН,
    |        СуммаПП КАК СуммаК
    |    ) КАК Отчет
    |ИЗ
    |    Документ.КонсолидированныйБаланс КАК КонсолидированныйБаланс
    |ГДЕ
    |    КонсолидированныйБаланс.Ссылка В(&Ссылка)";
    
    Запрос.Параметры.Вставить("Ссылка", Ссылка);
    Выборка = Запрос.Выполнить().Выбрать();
    
    ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок");
    ОбластьШапка = Макет.ПолучитьОбласть("ШапкаТаблицы");
    ОбластьДетали = Макет.ПолучитьОбласть("Детали");
    ОбластьПодвал = Макет.ПолучитьОбласть("Подвал");
    
    ТабДок.Очистить();
    
    ВставлятьРазделительСтраниц = Ложь;
    Пока Выборка.Следующий() Цикл
        Если ВставлятьРазделительСтраниц Тогда
            ТабДок.ВывестиГоризонтальныйРазделительСтраниц();
        КонецЕсли;
        
        ТабДок.Вывести(ОбластьЗаголовок);
        
        ОбластьШапка.Параметры.Заполнить(Выборка);
        ТабДок.Вывести(ОбластьШапка, Выборка.Уровень());
        
        
        ВыборкаОтчет = Выборка.Отчет.Выбрать();
        
        Пока ВыборкаОтчет.Следующий() Цикл
            ОбластьДетали.Параметры.Заполнить(ВыборкаОтчет);
            ТабДок.Вывести(ОбластьДетали, ВыборкаОтчет.Уровень());
        КонецЦикла;
        
        ОбластьПодвал.Параметры.Заполнить(Выборка);
        ТабДок.Вывести(ОбластьПодвал);
        ВставлятьРазделительСтраниц = Истина;
    КонецЦикла;
    
    Возврат ТабДок;
    
КонецФункции


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