|
стандартная процедура печати в 1С8.2 | ☑ | ||
---|---|---|---|---|
0
Lavr
11.06.15
✎
08:47
|
Здравствуйте, есть справочник Инвентаризация (список оборудования с инв. номерами, ценами и тд.) с реквизитами, после формирования стандартной процедуры печати​ каждая запись выводится отдельно с заголовком. Подскажите пожалуйста способ вывода на печать в виде таблицы?
&НаКлиенте Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды) //{{_КОНСТРУКТОР_ПЕЧАТИ(Печать) ТабДок = Новый ТабличныйДокумент; Печать(ТабДок, ПараметрКоманды); ТабДок.ОтображатьСетку = Ложь; ТабДок.Защита = Ложь; ТабДок.ТолькоПросмотр = Ложь; ТабДок.ОтображатьЗаголовки = Ложь; ТабДок.Показать(); //}} КонецПроцедуры &НаСервере Процедура Печать(ТабДок, ПараметрКоманды) Справочники.Инвентаризация.Печать(ТабДок, ПараметрКоманды); КонецПроцедуры |
|||
1
kosts
11.06.15
✎
08:57
|
Сделать внешнюю печатную форму. Добавить туда нужные процедуры и макеты, в том числе взять процедуру Печать. В этой процедуре переделать, так, что бы выводилось в нужном виде.
|
|||
2
Вася Чез
11.06.15
✎
09:04
|
(0) задача понятна, но не тот кусок кода ты выложил
|
|||
3
Lavr
11.06.15
✎
09:10
|
Какой кусок кода нужен?
|
|||
4
Остап Сулейманович
11.06.15
✎
09:12
|
(3) То что внутри вот этого :
Печать(ТабДок, ПараметрКоманды) |
|||
5
Вася Чез
11.06.15
✎
09:17
|
(0) или ты выложил это, потому что увидел свойство ОтображатьЗаголовки?
|
|||
6
Lavr
11.06.15
✎
09:23
|
Ой, мой косяк! Вот:
Процедура Печать(ТабДок, Ссылка) Экспорт //{{_КОНСТРУКТОР_ПЕЧАТИ(Печать) Макет = Справочники.Инвентаризация.ПолучитьМакет("Печать"); Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | Инвентаризация.Амортизация, | Инвентаризация.БалансоваяСтоимость, | Инвентаризация.ДатаПриобретения, | Инвентаризация.ИнвентарныйНомер, | Инвентаризация.МатериальноеЛицо, | Инвентаризация.НаименованиеОС, | Инвентаризация.НаименованиеФилиала, | Инвентаризация.ПодразделениеФилиала, | Инвентаризация.Стоимость |ИЗ | Справочник.Инвентаризация КАК Инвентаризация |ГДЕ | Инвентаризация.Ссылка В (&Ссылка)"; Запрос.Параметры.Вставить("Ссылка", Ссылка); Выборка = Запрос.Выполнить().Выбрать(); ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок"); Шапка = Макет.ПолучитьОбласть("Шапка"); ТабДок.Очистить(); ВставлятьРазделительСтраниц = Ложь; Пока Выборка.Следующий() Цикл Если ВставлятьРазделительСтраниц Тогда ТабДок.ВывестиГоризонтальныйРазделительСтраниц(); КонецЕсли; ТабДок.Вывести(ОбластьЗаголовок); Шапка.Параметры.Заполнить(Выборка); ТабДок.Вывести(Шапка, Выборка.Уровень()); ВставлятьРазделительСтраниц = Истина; КонецЦикла; //}} КонецПроцедуры |
|||
7
Вася Чез
11.06.15
✎
09:25
|
все правильно у тебя заголовок в цикле ТабДок.Вывести(ОбластьЗаголовок); , выпили его оттуда перед циклом
|
|||
8
EverGreenMouse
11.06.15
✎
09:26
|
(6) из цикла убери ТабДок.Вывести(ОбластьЗаголовок); и будет тебе счастье) но не забудь вернуть эту бабарыку вне цикла))
|
|||
9
Остап Сулейманович
11.06.15
✎
09:27
|
(6) Что там у тебя в областях - не знаю. Но примерно так :
// изменения с этого места ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок"); Шапка = Макет.ПолучитьОбласть("Шапка"); ТабДок.Очистить(); ТабДок.Вывести(ОбластьЗаголовок); Пока Выборка.Следующий() Цикл Шапка.Параметры.Заполнить(Выборка); ТабДок.Вывести(Шапка, Выборка.Уровень()); КонецЦикла; // конец изменений |
|||
10
Lavr
11.06.15
✎
11:04
|
Благодарю за помощь, сделал так:
Процедура Печать(ТабДок, Ссылка) Экспорт //{{_КОНСТРУКТОР_ПЕЧАТИ(Печать) Макет = Справочники.Инвентаризация.ПолучитьМакет("Печать"); Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | Инвентаризация.Амортизация, | Инвентаризация.БалансоваяСтоимость, | Инвентаризация.ДатаПриобретения, | Инвентаризация.ИнвентарныйНомер, | Инвентаризация.МатериальноеЛицо, | Инвентаризация.НаименованиеОС, | Инвентаризация.НаименованиеФилиала, | Инвентаризация.ПодразделениеФилиала, | Инвентаризация.Стоимость |ИЗ | Справочник.Инвентаризация КАК Инвентаризация |ГДЕ | Инвентаризация.Ссылка В (&Ссылка)"; Запрос.Параметры.Вставить("Ссылка", Ссылка); Выборка = Запрос.Выполнить().Выбрать(); ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок"); ОбластьШапка = Макет.ПолучитьОбласть("Шапка"); Шапка = Макет.ПолучитьОбласть("Таблица"); ТабДок.Очистить(); ТабДок.Вывести(ОбластьЗаголовок); ТабДок.Вывести(ОбластьШапка); ВставлятьРазделительСтраниц = Ложь; Пока Выборка.Следующий() Цикл Шапка.Параметры.Заполнить(Выборка); ТабДок.Вывести(Шапка, Выборка.Уровень()); КонецЦикла; //}} КонецПроцедуры |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |