Как открыть форму объекта программы если известна его текстовая ссылка

от admin

Как программно открыть форму справочника?

Открыть форму справочника можно несколькими способами:

А. По имени формы

Если требуется открыть основную форму нового элемента справочника или форму списка, достаточно написать следующий код:

Где ФормаОбъекта — имя основной формы открываемого справочника. Вместо нее можно указать другую основную форму, которую требуется открыть:

ФормаОбъекта основная форма элемента справочника
ФормаГруппы основная форма группы справочника
ФормаСписка основная форма списка справочника
ФормаВыбора основная форма выбора справочника
ФормаВыбораГруппы основная форма выбора группы

Чтобы открыть любую другую форму, необходимо указать ее имя после ключевого слова Форма (точно так, как оно задано в конфигураторе):

Б. По ссылке

Если в контексте вызова доступна ссылка на элемент или группу справочника, можно воспользоваться параметрами формы:

а можно воспользоваться универсальными методами и просто открыть значение:

Как открыть форму существующего объекта?

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

Например, если из формы списка организаций нужно открыть форму той организации, на которой находится курсор, сделать это можно следующим способом:

Ссылку на интересующий элемент справочника мы получаем через текущую строку списка:

Параметры формы передаем в виде структуры, где имя элемента структуры соответствует имени параметра формы, а значение — это то значение, в которое мы хотим установить параметр формы.

Если требуется открыть не основную, а произвольную форму объекта, созданную в конфигураторе, вместо стандартного имени основной формы ( ФормаОбъекта ) указывается слово Форма и через точку за ним — имя формы, созданной в конфигураторе.

Следует заметить, что в том случае, когда кроме ссылки на объект никакие параметры в открываемую форму передавать не нужно и нужна именно основная форма существующего объекта, можно использовать более простой способ – открывать форму с помощью процедуры ОткрытьЗначение() :

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

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

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

Как открыть форму зная ссылку объекта?

https://s.mail.ru/uQaUdxWYg5h7/img-2016-01-26-12-26-35.png
получил ссылку объекта (документ или справочник или еще что-то) на сервере, как на клиенте открыть форму?
Ссылка.ОткрытьФорму() — в толстом..

Тип: Структура.
Параметры формы. Ключ структуры — имя параметра, а значение — значение параметра формы. Имя элемента должно совпадать с именем параметра структуры.
П = Новый Структура("Ключ", Поставщик);
Форма = ПолучитьФорму("Справочник.Контрагенты.ФормаОбъекта", П);
Форма.Открыть();

(с) Синтакс помощник

ОткрытьЗначение (OpenValue)
Синтаксис:

Тип: Произвольный.
Значение любого типа, который может быть показан системой в диалоге.
Описание:

Показывает в диалоге переданное значение. Вид диалога зависит от типа переданного значения.

Читать:
Reference assemblies что это за программа

Тонкий клиент, веб-клиент, толстый клиент.
Пример:

Товар = Справочники.Номенклатура.НайтиПоКоду(КодТовара);
ОткрытьЗначение(Товар);

ну и сразу:
Расширение управляемой формы для объектов (Managed form extension for objects)
Свойства:

ВыборДоступен (ChoiceAvailable)
ПараметрыВыбора (ChoiceParameters)
РежимВыбора (ChoiceMode)

Записать (Write)
Прочитать (Read)

ВыборЗначения (ValueChoice)
ПередЗаписью (BeforeWrite)
ПередЗаписьюНаСервере (BeforeWriteAtServer)
ПослеЗаписи (AfterWrite)
ПослеЗаписиНаСервере (AfterWriteAtServer)
ПриЗаписиНаСервере (OnWriteAtServer)
ПриЧтенииНаСервере (OnReadAtServer)

ДополнительныеПараметры (AdditionalParameters)
ЗначениеКопирования (CopyingValue)
ЗначенияЗаполнения (FillingValues)
Ключ (Key)
Основание (Basis)
ПараметрыВыбора (ChoiceParameters)
РежимВыбора (ChoiceMode)
ТекстЗаполнения (FillingText)

Дополнительные свойства, методы и стандартные параметры формы объекта УправляемаяФорма, применимые для формы любого объекта, кроме документа, бизнес-процесса, задачи, справочника, плана видов характеристик.

Тонкий клиент, веб-клиент, сервер, толстый клиент, мобильное приложение(клиент), мобильное приложение(сервер).

(3) (2) спасибо помогли.
(1) в методе открытьформу нужно передать сначала метаданные (а если система не знает документ это или справочник?)

ОткрытьФорму(<ИмяФормы>, <Параметры>, <Владелец>, <Уникальность>, <Окно>, <НавигационнаяСсылка>, <ОписаниеОповещенияОЗакрытии>, <РежимОткрытияОкна>)

как задать параметр <ИмяФормы> (обязательный) типа "Справочник.Товары.ФормаВыбора")?

Как в 1с открыть ссылку на документ

В статье будет описано, как в 1с открыть ссылку на документ, справочник и т.д. В данном случае имеется в виду открытие формы объекта, используя ссылку на него. Рассмотрим три способа решения поставленной задачи.

Открыть ссылку используя ПоказатьЗначение

Самый простой способ, использовать метод глобального контекста ПоказатьЗначение. Который показывает в диалоге значение переданное в параметре.

В параметр Значение передадим ссылку, которую необходимо открыть. Данный метод является ассинхронным, т.е. не ожидает закрытие указанного значения. Для целей ожидания и обработки закрытого значения, в процедуре существует первый параметр. Но для нашей задачи он не нужен и указывать его не следует.

Таким образом открытие ссылки будет выглядеть следующим образом:

Если в вашей конфигурации разрешено открытие модальных окон (Свойства конфигурации -> Режим использования модальности, принимает значения Использовать или Использовать с предупреждениями), то можно использовать метод ОткрытьЗначение.

Открытие формы по ссылке

Также в 1с открыть ссылку можно при помощи метода ОткрытьФорму. Этот способ более сложен в реализации, но зато универсален. У него довольно много параметров, но для данной задачи нас интересуют первые два.

ИмяФормы — в параметре следует указать полный путь к форме, которую вы собираетесь открыть.

Пример 1. Можно указать форму, которая является формой объекта по умолчанию:

Пример 2. Либо указать имя конкретной формы, которую вы хотите открыть. Если, например, форм объекта несколько.

Параметры — структура параметров, которая передается в форму. Набор параметров разработчик выбирает сам, исходя их своих целей. Но некоторые параметры являются стандартными и используются для конкретных целей. Например, параметр Ключ, используется для указания платформе, форму какого объекта следует открыть (если Ключ, не указан, то будет открыта форма нового объекта). Таким образом в данный параметр необходимо передать ссылку на открываемый объект.

Пример 3. Открыть форму объекта для документа Поступление товаров.

Получить более подробную информацию по методу ОткрытьФорму можно в статье Как в 1с открыть форму программно

Открытие формы по навигационной ссылке

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

Также навигационную ссылку можно получить из обычной ссылки. Для этого используется метод ПолучитьНавигационнуюСсылку.

В параметр Объект, в том числе, можно передать ссылку на документ или справочник.

Пример 5. Получить навигационную ссылку, используя обычную ссылку и открыть форму объекта.

Похожие статьи