![]() |
|
Как внешнюю обработку корректно сделать внешней обработкой печатной формы.. | ☑ | ||
---|---|---|---|---|
0
Dionis Sergeevich
06.07.12
✎
18:48
|
БП 2.0
Изменил обработку Печать ТТН сделал автозаполнение Транспортной накладной. Товарами, именами, марками и номерами автомобилей, датами, номерами документов и прочими данными. В форме добавил автосохранение содержаний полей ввода. Сохранил как внешнюю - прекрасно работает при открытии. Но вот беда - пытаюсь сделать как положено - обработкой печатных форм. Добавил реквизит, функцию Печать, из нее открываю форму обработки. Работать перестает. сохранение пропадает, параметр криво передается( в поле выбора если указать документ - все норм.. отчет формирую в модуле функции, моя функция Печать не возвращает табличный документ как написано в справке.. чего делать? не знаю как даже вопрос задать, но вроде описал проблему максимально полно |
|||
1
sanja26
06.07.12
✎
18:50
|
пилить дальше...
открывай обработку из меню печати |
|||
2
Dionis Sergeevich
06.07.12
✎
18:55
|
ОТкрываю, из модуля объекта вызываю форму и получаю документ не тот из которого вызвал обработку, а тот который был сохранен в предыдущий вызов формы.
Завтра буду курить дальше =) может чего и нарою |
|||
3
sanja26
06.07.12
✎
18:59
|
ты из модуля объекта реализации вызываешь обработку?
и не можешь в нее передать ссылку этой самой реализации из которой вызываешь? епт) а там уже при открытии должно идти автозаполнение |
|||
4
Dionis Sergeevich
09.07.12
✎
10:03
|
Автозаполнение не идет. Ссылку ну как в хелпе написано СсылкаНаОбъект, передаю ее из модуля объекта в модуль формы, там формирую саму печатную форму, заполняю поля и тд.
Добавил Сохранение введенных данных в предыдущий запуск обработки. Ну чтоб имена водителей, номера автомобилей не вбивать каждый раз. Есть на форме поле ввода где мы выбираем документ, и он так же восстанавливается, заменяя собой ссылку на тот документ из которого вызвана обработка |
|||
5
Dionis Sergeevich
09.07.12
✎
12:39
|
Блин всю голову сломал. При открытии обработки через "Открыть" все хорошо.. При присоединении как внешнюю печатную форму - ошибки. Блин еще фиг отладчиком полазишь((
|
|||
6
del123
09.07.12
✎
12:45
|
Чет ты извращаешься помоему)
Регистрируешь обработку как печатную форму, привязываешь к документу и запускаешь из формы (она сама появится в списке вариантов печати). Или тебе не это надо?) |
|||
7
Dionis Sergeevich
09.07.12
✎
12:48
|
появиться то появляется. работает не так. точнее не работает( На самой форме есть поле для выбора документа - через нее работает. Ссылкой на объект (при запуске по кнопке печать из документа) то не работало, теперь выдает
"Значение не является значением объектного типа (Метаданные) МетаданныеДокумента = Документ.Метаданные(); " Вот как-то так( |
|||
8
Dionis Sergeevich
09.07.12
✎
12:52
|
Модуль объекта:
Функция Печать () Экспорт //Документ = СсылкаНаОбъект; Форма = ЭтотОбъект.ПолучитьФорму("Форма"); Форма.ЭлементыФормы.Документ.Видимость = Ложь; //Форма.ЭлементыФормы.Документ = СсылкаНаОбъект; Форма.Открыть(); КонецФункции Модуль формы: Процедура ПриОткрытии() Док = СсылкаНаОбъект; ЗАполнитьПоля(Док); КонецПроцедуры Процедура ЗАполнитьПоля(Док) Пункт11_1 = МаркаАвтомобиля; Пункт11_2 = ГосНомерАвтомобиля; Пункт0_2 = Док.Дата; Пункт0_3 = Док.Номер; ..... ..... ..... КонецПроцедуры; Вкратце таким образом сейчас выглядит обработка |
|||
9
hhhh
09.07.12
✎
12:53
|
(7) ну видимо ты недопонял, что такое дополнительная печатная форма. Подсовываешь туда фигню какую-то.
|
|||
10
Dionis Sergeevich
09.07.12
✎
12:57
|
в форме много данных которые пользователь может ввести-изменить или удалить - на основании этих данных потом уже печатается печатная форма. Я бы сделал как раньше всегда делал - в модуле объекта бы создал табличный документ и вернул из функции Печать() но необходимость такова что все нужно делать в модуле формы..
|
|||
11
dva1c
09.07.12
✎
13:01
|
(10) Делаешь к ВПФ реквизит СсылкаНаОбъект. Создаешь нужные запросы, подтягиваешь нужные данные и выполняешь вывод таблицы/макета, который тебе нужен.
|
|||
12
Мимохожий Однако
09.07.12
✎
13:07
|
(4)"СсылкаНаОбъект, передаю ее из модуля объекта в модуль формы". А вот с этого момента поподробнее. ИМХО. Никаких дополнительных заполнений не надо. Через отладчик смотрел, что подсунул?
|
|||
13
Dionis Sergeevich
09.07.12
✎
13:09
|
Вот проблематично отладчиком присоединенную внешнюю обработку покопать. ПРи открытии через файл-открыть естественно СсылкаНаОбъект не определено. Не передаю из модуля объекта СсылкуНаОбъект, а обращаюсь к нему в модуле формы.
Процедура ПриОткрытии() Док = СсылкаНаОбъект; ЗАполнитьПоля(Док); КонецПроцедуры |
|||
14
Мимохожий Однако
09.07.12
✎
13:11
|
(13) У тебя на форме есть реквизит с типом "ДокументСсылка"?
Выведи на форму и запуская в отладчике в режиме Файл-Открыть. Точку останова повесь на кнопку Печать или ПриОткрытии формы |
|||
15
Dionis Sergeevich
09.07.12
✎
14:21
|
РАзобрался. блин такая ерунда =)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |