|
Внешняя печатная форма к созданному документу | ☑ | ||
---|---|---|---|---|
0
2Sides
11.12.13
✎
16:54
|
Добрый день.
Начал переносить функционал с БП 2.0 на БП 3.0. Встал вопрос о реализации ВПФ к своему документу, но не получается подключить печатную форму к документу(к стандартным она подключается без проблем). Так как его нет в окне выбора "Назначение дополнительной обработки", подскажите как можно решить данную проблему? |
|||
1
Жан Пердежон
11.12.13
✎
17:01
|
прочитать статью на ИТС, либо скопировать код из модулей типовых документов
|
|||
2
2Sides
11.12.13
✎
17:22
|
(1) не сочтите за дерзость, ткните пальцем
|
|||
3
2Sides
12.12.13
✎
08:58
|
Никак не могу найти инфу на ИТС, все попадается о том как реализовать саму внешнюю обработку, а не о том как подготовить сам документ к ее подключению.
Ребята помогите =) |
|||
4
daemvik
12.12.13
✎
09:26
|
создаешь ВПФ, регистрируешь ее в справочнике "Дополнительные обработки и отчеты"... и потом по-моему просто вставляешь в процедуру "ПриСозданииНаСервере" вызов соответствующий посмотри как реализованы в этом плане типовые документы... например "ПоступлениеТоваровУслуг"
|
|||
5
2Sides
12.12.13
✎
10:02
|
Опишу к чему пришел %)
1. Создал ВПФ, которая нормально отрабатывает при подключении к стандартному документу из демки БП 3.0 2. Создал свой документ, согласно статьи на ИТС включил его в параметры глобальной команды "ДополнительныеОтчетыИОбработкиПечатныеФормы", и в модуле формы вставил код: &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) // СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки ДополнительныеОтчетыИОбработки.ПриСозданииНаСервере(ЭтаФорма); // Конец СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки КонецПроцедуры Сама команда "Печать" в командной панели формы в конфигураторе появилась. Запустил отладчик, подключил свою ВПФ к вновь созданному документу, открыл документ, а кнопки печати нет %) Что я делаю не так? |
|||
6
daemvik
12.12.13
✎
10:27
|
попробуй еще добавить следующий вызов в эту процедуру
// СтандартныеПодсистемы.Печать УправлениеПечатью.ПриСозданииНаСервере(ЭтаФорма); // Конец СтандартныеПодсистемы.Печать |
|||
7
daemvik
12.12.13
✎
10:29
|
и еще на всякий случай проверь как зарегилась ВПФ... как внешняя печатная форма или все так как внешний отчет?
|
|||
8
2Sides
12.12.13
✎
10:30
|
(6) Пока ждал помощи тоже добавлял этот вызов, не помогло.
ВПФ регистрируется как печатная форма |
|||
9
daemvik
12.12.13
✎
10:37
|
вот эта процедура в модуле формы есть?
// СтандартныеПодсистемы.Печать &НаКлиенте Процедура Подключаемый_ВыполнитьКомандуПечати(Команда) УправлениеПечатьюКлиент.ВыполнитьПодключаемуюКомандуПечати(Команда, ЭтаФорма, Объект); КонецПроцедуры // Конец СтандартныеПодсистемы.Печать |
|||
10
2Sides
12.12.13
✎
10:40
|
(9)
Да это помогло, огромное спасибо. Лучи добра Вам! ЗЫ Для готового решения необходимо было еще добавить в менеджер объекта // Заполняет список команд печати. // // Параметры: // КомандыПечати - ТаблицаЗначений - состав полей см. в функции УправлениеПечатью.СоздатьКоллекциюКомандПечати // Процедура ДобавитьКомандыПечати(КомандыПечати) Экспорт КонецПроцедуры |
|||
11
daemvik
12.12.13
✎
10:54
|
ну да... еще это надо добавить... )))
|
|||
12
Жан Пердежон
12.12.13
✎
11:14
|
Подготовительные действия
На первом этапе нужно внедрить подсистему в те формы, в которых предполагается использовать команды печати, и в модули менеджеров объектов: 1. В формах каждого объекта, где необходимо разместить команду печати, в процедуре ПриСозданииНаСервере добавить следующий код: &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) // СтандартныеПодсистемы.Печать УправлениеПечатью.ПриСозданииНаСервере(ЭтаФорма); // Конец СтандартныеПодсистемы.Печать КонецПроцедуры 2. В формах объекта, куда размещается команда печати (кроме форм списков), добавить код подключаемого обработчика команды: // СтандартныеПодсистемы.Печать &НаКлиенте Процедура Подключаемый_ВыполнитьКомандуПечати(Команда) УправлениеПечатьюКлиент.ВыполнитьПодключаемуюКомандуПечати(Команда, ЭтаФорма, Объект); КонецПроцедуры // Конец СтандартныеПодсистемы.Печать 3. В формах списка объекта, куда размещается команда печати, добавить код подключаемого обработчика команды: // СтандартныеПодсистемы.Печать &НаКлиенте Процедура Подключаемый_ВыполнитьКомандуПечати(Команда) УправлениеПечатьюКлиент.ВыполнитьПодключаемуюКомандуПечати(Команда, ЭтаФорма, Элементы.Список); КонецПроцедуры // Конец СтандартныеПодсистемы.Печать Важно! Поле Ссылка динамического списка формы должно быть доступно в обработчике команды. Для этого необходимо у реквизита формы, содержащего динамический список, у поля Ссылка поставить флажок Использовать всегда. 4. Добавить экспортную процедуру ДобавитьКомандыПечати в модуль менеджера: // Заполняет список команд печати. // // Параметры: // КомандыПечати - ТаблицаЗначений - состав полей см. в функции УправлениеПечатью.СоздатьКоллекциюКомандПечати // Процедура ДобавитьКомандыПечати(КомандыПечати) Экспорт КонецПроцедуры http://its.1c.ru/db/bspdoc#content:22:1 |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |