Имя: Пароль:
1C
1С v8
Как в стандартных обработках 1C 8 установлен запрет на повторное открытие форм
, , ,
0 Softiks
 
17.04.14
11:31
Добрый день, люди прошу вас писать только по существу!!!
Вопрос такой:
Как в стандартных обработках 1C 8 установлен запрет на повторное открытие форм.
1 Wobland
 
17.04.14
11:33
а он там есть?
2 Cube
 
17.04.14
11:34
(0) Если у открываемой формы идентификатор такой же, как у уже открытой, но новая форма не открывается.
3 Cube
 
17.04.14
11:35
+(2) Возьми любой свой внешний отчет или обработку. Скопируй файл. И попробуй открыть эти две разные копии одновременно... Не получится...
4 Softiks
 
17.04.14
11:35
Есть
5 Cube
 
17.04.14
11:36
+(3) Решение: у любой копии надо форму скопировать, а старую удалить.
6 Wobland
 
17.04.14
11:36
(4) не вижу
7 Softiks
 
17.04.14
11:50
А где этот идентификатор находиться?
8 Cube
 
17.04.14
11:54
(7) Читай СП:

ПолучитьФорму (GetForm)

Синтаксис:
ПолучитьФорму(<Форма>, <Владелец>, <КлючУникальности>)

Параметры:

<Форма> (обязательный)
Тип: Строка; ОбъектМетаданных: Форма .
Имя формы, как оно задано в конфигураторе, или объект описания метаданного требуемой формы.

<Владелец> (необязательный)
Тип: Форма; Элемент управления.
Объект, который будет являться владельцем открываемой формы.

<КлючУникальности> (необязательный)
Тип: Произвольный.
В данном параметре может быть задан некоторый ключ, значение которого будет использоваться для поиска уже открытых форм.
При поиске учитываются значения свойств открытых форм соответствующим значениям параметров метода. Если найдена открытая форма (по совпадению всех параметров), то она будет возвращена вместо новой формы.
Если из некой формы (один и тот же владелец) требуется открывать новые экземпляры другой формы, то при каждом вызове метода значение данного параметра должно быть уникально (в рамках соответствующих значений свойств открытых форм).
Значение параметра присваивается свойству открываемой формы КлючУникальности.
Следует учитывать, что при получении формы из "объекта" система получает форму для конкретного экземпляра объекта с учетом совокупности переданных параметров, в то время как для "ссылки" всегда существует только один объект в базе данных и форма получается одна (для одинаковой совокупности параметров).

Возвращаемое значение:
Тип: Форма.

Описание:
Получает форму справочника. Если получаемая форма - форма для редактирования элемента или группы справочника, то будет получена форма нового элемента или группы.

Доступность:
Толстый клиент.

Примечание:
Перед выполнением метода производиться анализ параметров вызова и, при необходимости, происходитт переадресация вызова глобальному контексту.
9 Softiks
 
17.04.14
12:02
(8) Так в стандартных того нету вообще, она даже в процедуры ПриОткрытии() не входить! Как это в стандартных работает?!
10 SergeyKB
 
17.04.14
12:05
(9) Контролирует платформа по ключу уникальности
11 Cube
 
17.04.14
12:17
(9) Ну я полагаю так: у формы есть идентификатор (ИД) и ключ уникальности (КУ).
С одинаковыми (в том числе пустыми) КУ может быть открыта только одна форма с одним и тем же ИД.

ИД присваивается форме автоматически при её создании. Так же, как и любому другому объекту метаданных. Этип процессом ты не управляешь.
12 trinoo
 
17.04.14
14:46
Вы можете ПередОткрытием отказываться от открытия, если КлючУникальности = Неопределено, затем программно открывать эту же форму, но с КлючомУникальности непустым, например передавать при открытии Новый УникальныйИдентификатор
Программист всегда исправляет последнюю ошибку.