Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
28 мар 2024, 21:14

Открыть внешнюю обработку

Автор amix, 30 окт 2009, 11:52

0 Пользователей и 1 гость просматривают эту тему.

amix


Здравствуйте, сразу извиняюсь за столь нубский вопрос - но видимо он настолько тривиален, что я не нашла ответа :^454^:

Как назначить открытие внешней обработки на нажатие кнопки.
(например я создаю форму-на ней кнопка - нажимаем и открывается форма создания новой накладной (любой .ert файл).
Спасибо.


DDD

В реквизитах формы должен быть реквизит "ОбработкаОбъект". Который создается автоматически при создании формы и выделяется в списке жирным шрифтом. Если его нет, то можно создать новый. Тип у него должен быть "ВнешняяОбработка.<Название_Вашей_Обработки>". Создайте такой реквизит. Тогда (допустим, вы его назовете "ОбработкаОбъект"), а в обработчике нажатия кнопки пишите:

ДругаяФорма = ОбработкаОбъект.ПолучитьФорму("Форма2");
ДругаяФорма.Открыть();



amix

Так-) Спасибо. Тогда вопрос - что такое реквизиты формы? Простите-что-то совсем не могу разобраться:(
Смотрите, что я делаю:
Открываю БД в режиме конфигуратора - файл-новый-внешний отчет-передо мной открывается форма на которой я создаю кнопку-в модуле на процедуре нажатия на кнопку я хочу прописать чтобы открывался например документ какой-нибудь(его имя я знаю).

Боня

Цитата: amix от 30 окт 2009, 13:55
прописать чтобы открывался например документ какой-нибудь(его имя я знаю).

Документ объект базы? Или внешний?

Если объект и известна ссылка, тогда:

ИскомыйДокумент - содержит ссылку на документ.

Пишем в продцедуре:

Форма = ИскомыйДокумент.ПолучитьФорму();
Форма.Открыть();

Боня

Но если надо открыть внешнюю обработку, то:

Обработка = ВнешниеОбработки.ПолучитьФорму(ИмяФайла);
Обработка.Открыть();


Боня

А Вы ее зарегистрировали как внешнюю обработку?

ПС: В переменной ИмяФайла содержится имя файла внешней обработки

amix

Попробывала так:

Процедура кнопкаотч()
Обработка = ВнешниеОбработки.ПолучитьФорму("C:\Base\ExtForms\PrnForms\Отчет.Отчет по ККМ.ert");
Обработка.Открыть();
КонецПроцедуры

Ругается, что переманная не определена (Внешние обработки)

Если пробывать открыть форму, то ругается на ИскомыйДокумент
(мне все равно, что открывать - просто хочу понять саму идею)
Может я просто не правильно вопрос ставлю (поэтому и нагуглить не могу:((




amix

Стоп.
Простите за невнимательность.
Искомый документ - я поняла надо назначить.
А внешниеобработки где регистровать? В обработках в конфигурации? Сейчас попробую.

DDD

Цитата: Боня от 30 окт 2009, 14:25
А Вы ее зарегистрировали как внешнюю обработку?

Зарегистрируйте если нет. И сделайте как Боня написала:

Обработка = ВнешниеОбработки.ПолучитьФорму(ИмяФайла);
Обработка.Открыть();


ИмяФайла - имя файла внешней обработки

Как зарегистрировать знаете?

DDD

Нет не в конфигураторе. Стойте.

В режиме Предприятия регистрируйте:

Сервис-Внешние Печатные формы и обработки-Внешние обработки.

Там добавляете внешнюю обработку и присваиваете ей имя, его и пишите в "ИмяФайла"

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск