![]() |
![]() |
![]() |
|
Как можно внешней обработки присвоить кнопку на форме? | ☑ | ||
---|---|---|---|---|
0
Elf1k
26.06.10
✎
09:44
|
Всем доброго времени суток.
У меня такой вопрос, как можно внешней обработке, которая выдает печатную форму присвоить кнопку на форме документа "РеализацияТоваровУслуг" 1с 8.1 УТ 10.3. Необходимо возле кнопки "Печать " и "Расходная Наклодная" создать новую кнопку при щелчке на которую открывался бы макет внешней обработки. Как это можно сделать ? Всем заранее спасибо ? |
|||
1
Rie
26.06.10
✎
09:47
|
(0) Положить кнопку на форму.
В обработчике события Нажатие для этой кнопки - указать процедуру, которая откроет этот самый "макет внешней обработки" (?). Возможно, что на самом деле требуется создать внешнюю печатную форму. Тогда - смотреть в Справке (в режиме Предприятие), как это делается. |
|||
2
Serg_1960
26.06.10
✎
10:16
|
||||
3
Elf1k
26.06.10
✎
10:19
|
Просто вопрос то в чем собственно как получить функцию модуля внешней обработки из документа ?
|
|||
4
Rie
26.06.10
✎
10:25
|
(3) Она там экспортирована?
Если да - создаёшь объект внешней обработки и вызываешь, что тебе нужно. |
|||
5
Elf1k
26.06.10
✎
10:27
|
Если не сложно не могли бы привести пример кода, как это сделать ?
|
|||
6
Rie
26.06.10
✎
10:32
|
(5)
МояСуперОбработка = ВнешниеОбработки.Создать("r:\ВсякоеРазное\СуперОбработка.epf"); МояСуперОбработка.ЭкспортируемаяПроцедураКотораяДелаетВсёЧтоНадо(ПараметрКНей,ЕщёПараметр,ИЕщё); |
|||
7
Elf1k
26.06.10
✎
10:40
|
Написал вот так
Процедура ОсновныеДействияФормыСклад31(Кнопка) ВнешняяОбработка = ВнешниеОбработки.Создать("C:\Program Files\1cv81\РасходнаяНаклодная31Склад.epf"); ВнешняяОбработка.ПечатьДокумента(); КонецПроцедуры Конфигуратор ошибок не выдал, а вот в самой 1с вылезает ошибка "ошибка при вызове метода контекста(Получить Макет): Недопустимое значение параметра (параметр '1')" Сама процедура ВешняяОбработка.ПечатьДокумента(); во внешней обработки стоит экспорт |
|||
8
Strogg
26.06.10
✎
10:56
|
Жесть... сделай внешнюю печатную форму, а в процедуре печать() экспорт напиши все, что тебе надо...
|
|||
9
Elf1k
26.06.10
✎
11:00
|
Почему Жесть ?
|
|||
10
Serg_1960
26.06.10
✎
11:05
|
(8) Сам ты... жесть... :(
Если вспомнить, что различные внешние обработки, обработки ТЧ и обработки ПФ "по разному" вызываются - то можно сообразить, что не стоит вызывать Печать() если вы не собираетесь печатать. Оставьте Печать() для печати. Есть множество других возможностей, методически более правильных. |
|||
11
Strogg
26.06.10
✎
11:07
|
(10) - поясни. Автор-то как раз и собирается печатать, не? Просто до печати ему надо будет сделать кое-какие приготовления к ней. Ты предлагаешь менять код в конфе? :)))
|
|||
12
Seducer
26.06.10
✎
11:07
|
(7) А что, "Сервис - Внешние печатные формы и обработки - Внешние печатные формы" не подходит?
|
|||
13
Serg_1960
26.06.10
✎
11:15
|
(12) Автор желает отдельную кнопку иметь :)
(не в тему) Почему авотр всё время повторяет "наклОдная"? Если мы говорим об документе - то это "наклАдная". Это только искуственные ногти наклодные, да пряди волос наклодные... :( |
|||
14
Serg_1960
26.06.10
✎
11:17
|
(13) + "наклОдные" - для блОндинкО :)
|
|||
15
Strogg
26.06.10
✎
11:21
|
(13) - а автор желает вместе с отдельной кнопкой иметь геморрои при обновлении типовой конфы? :)
|
|||
16
Serg_1960
26.06.10
✎
11:24
|
Ну... это его проблемы.
Можно самому себе создавать трудности, героически их преодолевать и чуствовать себя Героем :)) |
|||
17
Seducer
26.06.10
✎
11:32
|
(13) Может, просто автор не знал, как добавить в список свою печатную форму? И своя кнопка - это просто от незнания? :)
|
|||
18
Serg_1960
26.06.10
✎
11:40
|
(17) Может быть. Объясним? :)
В справочник внешних обработок можно добавить внешню печатную форму. См. справку в режиме 1С:Предприятие. Но можно добавить и дважды! Первый раз - стандартное подключение внешней печатной формы. Второй раз - тоже самое, но с другим наименование и с заполнением реквизита «ДополнительныеПараметры»... В обработке - анализировать наличие дополнительного параметра. Если есть параметры - добавляем кнопку. А лучше сразу - открываем макет на редактирование. Нет параметров - печатаем документ. Как-то типа так :) |
|||
19
Strogg
26.06.10
✎
11:42
|
(18) - хм......
"Если вспомнить, что различные внешние обработки, обработки ТЧ и обработки ПФ "по разному" вызываются - то можно сообразить, что не стоит вызывать Печать() если вы не собираетесь печатать. Оставьте Печать() для печати. Есть множество других возможностей, методически более правильных." © Serg_1960 ----- :-) |
|||
20
Elf1k
26.06.10
✎
11:46
|
Я знаю как в список печати добавить новую печатную форму, но именно надо на отдельную кнопку.
По поводу обновлений у нас вобще не кто не знает про это и не собирается на это тратить деньги. Пи*дец конечно. А вобще по моему УТ очень редко обноляется ? |
|||
21
Serg_1960
26.06.10
✎
11:50
|
(скромно и смущенно, потупив глазки) Да, ладно уж... чего там... погорячился...
:)) |
|||
22
Strogg
26.06.10
✎
11:52
|
(20) - добавь и сделай внешнюю печатью по умолчанию. Не поверишь - будет тебе отдельная кнопка.
(21) - :-)) |
|||
23
Serg_1960
26.06.10
✎
11:54
|
Непонимаю (20) Если автор уже внёс изменения в конфигурацию - почему бы ему не добавить кнопку в модуле формы? Зачем это делать "из-под" внешней обработки?
|
|||
24
Elf1k
26.06.10
✎
11:58
|
Дело в том, что одни пользователь должен печатать одну накладную, а другой пользователь другую накладную. По умолчанию привязано к пользователю или к базе ?
Внешнию обработку мне посоветовали, чтобы было поддержка конфигурации, но я думаю лучше наверное добавить в документ новую печатную форму а не печатную форму из внешней обработки. |
|||
25
Serg_1960
26.06.10
✎
11:58
|
+ В модуле формы при открытии, например, делаешь запрос к справочнику внешних обработок; получаешь подключенные формы; если есть такие - добавляешь кнопку; если надо - запускаешь(вызываешь) обработку из хранилища...
|
|||
26
Seducer
26.06.10
✎
11:59
|
(23) +Да и собственно, почему бы тогда не добавить обработку в конфигурацию?
Автор, что произойдет, если ""C:\Program Files\1cv81\РасходнаяНаклодная31Склад.epf");" вдруг "внезапно" потеряется? :) |
|||
27
Serg_1960
26.06.10
✎
12:00
|
(24) В обработке, перед печатью, анализируй кто вызвал и используй различные макеты печати.
|
|||
28
Elf1k
26.06.10
✎
12:04
|
если я добавлю макет в сам документ и на действие новой кнопки сделаю функцию печати моего нового макета так будет работать ?
Ведь при печати надовызывать печать как то по особому ? |
|||
29
Seducer
26.06.10
✎
12:04
|
(24) > По умолчанию привязано к пользователю или к базе ?
При нажатии кнопки "По умолчанию" в списке печатных форм для текущего пользователя запоминается выбранная форма. |
|||
30
Seducer
26.06.10
✎
12:05
|
Естественно, назначить печатную форму по умолчанию должен сам пользователь
|
|||
31
Strogg
26.06.10
✎
12:05
|
(29) +Каждому пользователю задай свою печать по умолчанию - у каждого пользователя будет своя отдельная кнопка печати.
|
|||
32
Serg_1960
26.06.10
✎
12:10
|
(31) +1 Угу, полностью согласен. Можно даже использовать одну, общую для всех обработку, но прописать в справочнике с разными наименованиями и дополнительными параметрами при вызове.
|
|||
33
Seducer
26.06.10
✎
12:12
|
(32) +1
|
|||
34
Serg_1960
26.06.10
✎
12:14
|
(помоему это изврат, но все же) Можно даже использовать "общий" макет. Анализировать (что там надо? Пармаметры, пользователя и т.д.) и использовать для печатного документа различные области макета...
|
|||
35
Strogg
26.06.10
✎
12:14
|
(32), (33) - +1 :)
|
|||
36
Elf1k
26.06.10
✎
12:16
|
А мне кажется проще просто добавить новую кнопку =)))
|
|||
37
Serg_1960
26.06.10
✎
12:17
|
"Гы-гы" (как говаривал незабвенный Гений 1С) - неплохо спелись(спились? как правильно?). Короче - на троих сообразили :))
(36) Тебе решать. Простые решения - легче поддерживать... и исправлять :) |
|||
38
Seducer
26.06.10
✎
12:23
|
(36) Ну вот смотри.
1. Если вдруг понадобится обновлять УТ (все-таки обновления выходит, законы меняются и т.п.) - как будешь действовать? 2. Если вдруг что-то понадобится поменять в кнопке (например, поменять заголовок или вызвать другую обработку) - как будешь действовать? З.Ы. Не живи только текущим днем. :) |
|||
39
Seducer
26.06.10
✎
12:25
|
(37) Да уж... сообразили. :)
|
|||
40
Serg_1960
26.06.10
✎
12:27
|
Не сочти нравоучением, но всё-же: я по любому - сначало делаю внешнюю обработку. Так легче тестировать, ошибки исправлять и т.д. И даже когда отработаю - всё равно подключаю как внешнюю обработку.
Опыт подсказывает :) Хотелки юзверей оглашаются уже после выполненной работы :( |
|||
41
Serg_1960
26.06.10
✎
12:33
|
Вроде-бы всё уже сказано. Ушел. "по англицки - не прощаясь"
|
|||
42
Strogg
26.06.10
✎
12:34
|
(40) - Делаю проще. Просто на форму вешаю СсылкуНаОбъект, а в кнопке "Сформировать" сразу же отправляю на печать() экспорт. После отладки можно даже форму не удалять.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |