![]() |
![]() |
![]() |
|
Как вызвать внешнюю печатную форму из внешней обработки? | ☑ | ||
---|---|---|---|---|
0
Kashton
27.01.11
✎
09:29
|
Как вызвать внешнюю печатную форму из внешней обработки?
|
|||
1
lxs
27.01.11
✎
09:31
|
а точнее?
|
|||
2
Нуф-Нуф
27.01.11
✎
09:31
|
вызов = новый ВызовПечатнойФормыИзВнешнейОбработки;
Вызов.ПридиКоМне(); |
|||
3
Kashton
27.01.11
✎
09:33
|
Имеется внешняя обработка (она же печатная форма). вот как вызвать ее из другой внешней обработки?
|
|||
4
Kashton
27.01.11
✎
09:33
|
(2) Спс. Сейчас попробую
|
|||
5
lxs
27.01.11
✎
09:34
|
Обработка.Печать();
|
|||
6
lxs
27.01.11
✎
09:35
|
У тебя же Печать() - экспортная функция в модуле объекта.
|
|||
7
Axel2009
27.01.11
✎
09:36
|
подглядеть как это делает 1с.. там все глобально
|
|||
8
MaxS
27.01.11
✎
09:39
|
Функция Печать() Экспорт
СсылкаОбработка = Справочники.ВнешниеОбработки.НайтиПоКоду(КодОбработки); ИмяФайла = ПолучитьИмяВременногоФайла(); ДвоичныеДанные = СсылкаОбработка.ХранилищеВнешнейОбработки.Получить(); ДвоичныеДанные.Записать(ИмяФайла); Обработка = ВнешниеОбработки.Создать(ИмяФайла); Обработка.СсылкаНаОбъект = СсылкаНаОбъект; // Передать внешней обработке дополнительные параметры Если ДополнительныеПараметры <> Неопределено Тогда // Если у внешней обработки есть реквизит для дополнительных параметров, присвоить ему значение Если НЕ Обработка.Метаданные().Реквизиты.Найти("ДополнительныеПараметры") = Неопределено Тогда Обработка.ДополнительныеПараметры = ДополнительныеПараметры; Иначе Обработка.ДополнительныеПараметры = Новый ("Имя",ДополнительныйПараметрИмя); КонецЕсли; КонецЕсли; ТабДокумент = Обработка.Печать(); УдалитьФайлы(ИмяФайла); Возврат ТабДокумент; КонецФункции // Печать() КодОбработки = "000000016"; // Т9 - там несколько печатных форм в одной обработке ДополнительныйПараметрИмя = "Т10а"; |
|||
9
MaxS
27.01.11
✎
09:43
|
Применительно в коду (8), при регистрации обработки, в колонке "Параметры обработки" нужно добавить параметр
Имя = "Имя" Значение = "Т10а" |
|||
10
MaxS
27.01.11
✎
09:45
|
для полноты картины, функция из обработки в которой несколько печатных форм:
Функция Печать() Экспорт Ссылка = СсылкаНаОбъект; ВыборкаПоШапкеДокумента = СформироватьЗапросПоШапке().Выбрать(); Если ВыборкаПоШапкеДокумента.Следующий() Тогда Организация = ВыборкаПоШапкеДокумента.Организация; Дата = ВыборкаПоШапкеДокумента.Дата; Если ТипЗнч(ДополнительныеПараметры)=Тип("Структура") Тогда Если ДополнительныеПараметры.Свойство("Имя") Тогда ИмяПечатнойФормы = ДополнительныеПараметры.Имя; ТабДокумент = Неопределено; Выполнить("ТабДокумент = Печать"+ИмяПечатнойФормы+"("""+ИмяПечатнойФормы+""");"); Возврат ТабДокумент; КонецЕсли; КонецЕсли; Возврат ПечатьТ9("Т9"); КонецЕсли; КонецФункции // Печать |
|||
11
Kashton
27.01.11
✎
10:49
|
(8) Спасибо, друг, все получилось
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |