1с открыть форму внешней обработки программно управляемые формы

Программно открыть форму внешней обработки

Пытаюсь из произвольной формы открыть форму внешней обработки:
&НаСервере
Процедура ОткрытьНаСервере(ИмяФайла)

ОбработкаНоменклатуры = Справочники.ДополнительныеОтчетыИОбработки.НайтиПоРеквизиту(«ИмяОбъекта», «ОбработкаНоменклатуры»);

ИмяФайла = ПолучитьИмяВременногоФайла(«epf»);
ОбъектОбработкаНоменклатуры = ОбработкаНоменклатуры.ПолучитьОбъект();
ДвоичныеДанные = ОбъектОбработкаНоменклатуры.ХранилищеОбработки.Получить();
Попытка
ДвоичныеДанные.Записать(ИмяФайла);
Исключение
Сообщение = Новый СообщениеПользователю;
Сообщение.Текст = ОписаниеОшибки();
Сообщение.Сообщить();
Возврат;
КонецПопытки;

&НаКлиенте
Процедура ПриОткрытии(Отказ)

При подключении внешней обработки выходит ошибка:
Неправильный путь к файлу.
Подскажите,пожалуйста, что не так делаю?

Тип: Строка.
Признак создания внешней обработки в безопасном режиме.
Если указана строка, то внешняя обработка будет исполняться в безопасном режиме под управлением профиля безопасности с этим именем. Профиль безопасности должен иметь значение SafeModeProfile=Истина.
Значение по умолчанию: Истина.

Тип: Строка.
Имя внешней обработки, полученное после подключения.
Описание варианта метода:

Предварительно обработка должна быть подключена методом Подключить.
Возвращаемое значение:

Создает объект внешней обработки по указанному файлу или имени внешней обработки.

Сервер, толстый клиент, внешнее соединение.
Пример:

Пример в синтаксисе, разумеется, для толстого клиента. На сервере открыть не сработает.

Тип: Строка.
Ссылка на реквизит объекта конфигурации, который содержит данные внешней обработки. Ссылка может быть получена методом ПолучитьНавигационнуюСсылку.

&НаСервере
Как передать признак БезопасныйРежим=Ложь?

Источник

Как программно открыть обработку в 1С

1. Общие понятия про обработку в 1С 8.3

Здравствуйте, коллеги! В этой статья я расскажу о том, как открыть внешнюю обработку в 1С через код программы. Однако перво-наперво, все же, считаю необходимым рассмотреть понятие обработки, чтобы в дальнейшем у читателя не осталось никаких вопросов.

Обработка – это прикладной объект внутри конфигурации, который нужен, чтобы выполнять разные действия с информацией. Пример: при помощи обработки выполняется удаление старой информации и данных. Обработка содержит в себе формы, при помощи которых происходит ввод переменных и параметров, которые в дальнейшем будут иметь значение. Отличаются обработка с отчётом тем, что отчёт использует схему, чтобы компоновать данные, а обработка – нет.

А программно это означает, что нужно открывать внешнюю обработку не нажатием кнопок, а «вызывая» её при помощи кода программы.

В 1С предусмотрен специальный объект под названием «ВнешниеОбработки», необходимый, что следует из его названия, для работы именно с внешними обработками.

Существует два возможных варианта развития событий:

1. Когда внешняя обработка находится на диске (без информационной базы);

2. Форма для печати/внешняя обработка сохранена внутри информационной базы.

2. Внешняя обработка находится на диске, без ИБ

Согласно условию, необходимо открыть внешнюю обработку при помощи кода программы. Для этого в системе 1С необходимо узнать адрес файла, в котором она сохранена. После этого можем открывать форму внешней обработки, получать её объекты и так далее.

Чтобы открыть программно форму из обработки воспользуемся специальной функцией «ПолучитьФорму()» в объекте «ВнешниеОбработки». Внутри функции содержатся различные параметры. Рассмотри наипростейшее открытие внешней формы в обработке, пример которого показан на скриншоте ниже.

1s 8 3 obrabotki

Рис. 1 Открытие внешней формы в обработке

Чтобы открыть не основную форму во внешней обработке, необходимо обязательно указать её название:

obrabotki v 1s

Рис. 2 Открытие внешней обработки – не основной формы

Рассмотрим случай, в котором необходимо вызвать внешнюю обработку в виде объекта. Для этого есть функция «Создать()» в объекте «ВнешниеОбработки».

3 otkrytie formy vneshnej obrabotki

Рис. 3 Функция «Создать()» в объекте «ВнешниеОбработки»

Согласно стандартным настройкам, любая обработка будет открыта только в безопасном режиме. При необходимости его можно отключить, как показано на скриншоте ниже.

4 otkrytie formy vneshnej obrabotki 1s

Рис. 4 Отключение безопасного режима обработки 1С 8.3

3. Обработка с печатными формами сохранены внутри информационной базы

В некоторых конфигурациях есть возможность сохранить обработки с печатными формами в самой базе с информацией. Чтобы воспользоваться данной возможностью следует вызвать справочник с названием «ВнешниеОбработки». Внешняя обработка в 1С 8 хранится обычно в:

· в реквизите с наименованием «ХранилищеВнешнейОбработки»;

· внутри таблицы в части «Принадлежность» внутри реквизита «ХранилищеВнешнейОбработки».

Для того чтобы открыть внешнюю обработку, следуйте приведенной ниже инструкции:

1. взять в хранилище саму обработку;

2. файл, в котором находится нужная обработка, сохранить;

3. запустить форму, либо получить объект в обработке;

4. в случае, если это внешняя печатная форма, заполнить реквизит по умолчанию «СсылкаНаОбъект» и вызывать функцию «Печать», которая сработает на экспорт.

5 otkrytie formy obrabotki

Рис. 5 Как открыть внешнюю обработку

6 1s formy vneshnej obrabotki

Рис. 6 Заполнение реквизит СсылкаНаОбъект

В данной статье была проведена полная инструкция по открытию внешней обработки при помощи кода программы. Были рассмотрены два случая: когда обработка хранится отдельно на диске и когда обработка сохранена вместе с ИБ. Для каждого из случаев был написан код, при помощи которого можно открыть обработку. Надеюсь, данная информация оказалась для вас полезной. Однако хочется отметить, что в работе с 1С очень часто возникают сложные вопросы, и если у Вас есть трудности с чем-либо, Вы всегда можете обратиться к нам за помощью. Наши специалисты помогут решить любую проблему, связанную с работой в 1С.

Источник

Как открыть внешнюю обработку или отчет программно 1С УП?

В версии 8.2 и старше: приложение не работает непосредственно с локальными файлами, расположенными на компьютере. Файлы должны находиться на сервере.

Поэтому для открытия внешней обработки нужно выполнить следующую последовательность действий:

Чтобы передать файл на сервер, его нужно поместить во временное хранилище. Для этого сначала на клиенте, в обработчике команды открытия внешней обработки, методом глобального контекста ПоместитьФайл() мы помещаем файл из локальной файловой системы во временное хранилище.

При вызове метода ПоместитьФайл() первым его параметром, АдресХранилища, мы указываем пустую строку. После выполнения метода в нее будет помещен путь к файлу внешней обработки во временном хранилище. Этот путь мы используем для того, чтобы подключить внешнюю обработку.

Для открытия формы внешней обработки используется метод глобального контекста ОткрытьФорму(), в который передается имя формы в виде следующей строки: «ВнешняяОбработка.»+ ИмяОбработки +».Форма». В приведенном варианте открывается основная форма обработки.

При работе с внешними обработками нужно учитывать, что по-умолчанию они запускаются в безопасном режиме исполнения программного кода. Это значит, что некоторые возможности встроенного языка будут для них недоступны. Если есть уверенность, что внешняя обработка не содержит вредоносного кода, ее можно подключить в обычном режиме исполнения программного кода. Для этого используется третий параметр метода Подключить() менеджера внешних обработок.

Жизненный пример

Форма с деревом значений, в котором перечислены обработки из каталога на сервере:

2735fd8e8be74cfda73e21d4f8dc088d

Источник

Понравилась статья? Поделить с друзьями:
Добавить комментарий
  • Как сделать успешный бизнес на ритуальных услугах
  • Выездной кейтеринг в России
  • Риски бизнеса: без чего не обойтись на пути к успеху
  • 1с открыть форму внешней обработки модально
  • 1с открыть форму внешнего отчета программно