Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Как в процедуре "ПриСозданииНасервере" вывести сообщение и прикрепить его к форме?

Как в процедуре "ПриСозданииНасервере" вывести сообщение и прикрепить его к форме?
Я
   yabes
 
07.02.20 - 10:10
Добрый день. При открытии формы в процедуре ПриСозданииНаСервере() необходимо вывести сообщение и прикрепить его к открываемой форме. Возможно ли это сделать? В стандартном случае сообщение выводится, но в окне основного приложения, а не в окне открываемой формы
 
 
   Cyberhawk
 
1 - 07.02.20 - 10:12
Заполняй реквизит формы, потом в ПриОткрытии уже его смотри и выводи сообщение
   yabes
 
2 - 07.02.20 - 10:14
(1) Да, это вариант, но ради сообщения не хочется создавать реквизит формы
   yabes
 
3 - 07.02.20 - 10:14
Просто интересно, есть ли какое-то красивое решение
   fisher
 
4 - 07.02.20 - 10:15
Теоретически, для этого в СообщениеПользователю есть ИдентификаторНазначения. Но на практике успешно его применить мне не удавалось. Во всяком случае со стороны сервера вне контекста формы. Может, из контекста формы и взлетит - попробуй.
   Cyberhawk
 
5 - 07.02.20 - 10:16
(2) Привязать сообщение к элементу / объекту формы
   Фрэнки
 
6 - 07.02.20 - 10:18
(3) Красиво вряд ли получится, т.к. обработчик ПриСозданииНаСервере() вызывается именно в начале.
Это не ПослеСозданияНаСервере() - такого обработчика, увы, нет.
После создания происходит ПриОткрытии
   pechkin
 
7 - 07.02.20 - 10:19
создай реквизит и элемент надпись на форме
   Cyberhawk
 
8 - 07.02.20 - 10:20
(5) Только выглядеть оно будет как ошибка
   APXi
 
9 - 07.02.20 - 10:20
ДокументОбъект.<Имя документа>.ДополнительныеСвойства
   Cyberhawk
 
10 - 07.02.20 - 10:21
(9) Вообще не в тему
   Temai
 
11 - 07.02.20 - 10:47
Что за бред вы спрашиваете? На сервере нет формы, вы не в курсе?
   drcrasher
 
12 - 07.02.20 - 10:49
(11) чо, правда?
   Василий Алибабаевич
 
13 - 07.02.20 - 10:50
(12) Правда. Контекст формы есть. А самой формы нет. Не знал?
   unenu
 
14 - 07.02.20 - 10:51
(11) Что за бред вы пишите? Форма есть как на клиенте, так и на сервере, вы не курсе?
а вот каких целей можно достигнуть используя тот или иной контекст это другое дело.
   fisher
 
15 - 07.02.20 - 11:08
(13) Ты видишь суслика? А он есть! (с) ДМБ
Не только контекст (в смысле данных). Элементы формы и их свойства тоже доступны.
Или дайте определение "самой формы".
   palsergeich
 
16 - 07.02.20 - 11:16
(11) Форма то как раз на сервере и существует.
А на клиент переходит ее отображение, которое потом синхронизируется с клиентской частью.
Доказывается очень просто.
Полно методов которые существуют только на сервере. Например изменитьРеквизиты.
А то про что Вы скорее всего говорите это окно формы клиентского приложение. Это совсем другое.
   pechkin
 
17 - 07.02.20 - 11:17
(13) а что такое "сама форма" ?
   palsergeich
 
18 - 07.02.20 - 11:28
(17) То что имеет тип УправляемаяФормп
   pechkin
 
19 - 07.02.20 - 11:31
(18) такого типа уже нет
   palsergeich
 
20 - 07.02.20 - 11:51
(19) есть просто называется по другому, сути это не меняет
   palsergeich
 
21 - 07.02.20 - 12:09
(20) Просто та самая управояемая форма состоит на самом деле из 2х сущностей:
Это ФормаКлиентскогоПриложения - то самое что имеет реквизиты, элементы, обработчики событий. Вот она живет на сервере и содержжание на сервере - первично, нельзя внести значащие изменения без обращения на сервер,  после 8.3.7 чуть чуть ослабили связь, но по прежнему некоторые клиентские действия вызывают контекстный серверный вызов для явной синхронизации (например скрытие таблицы формы)
А есть ОкноКлиентскогоПриложения, вот оно то только на клиенте живет.
   Cyberhawk
 
22 - 07.02.20 - 14:46
(16) "Доказывается очень просто.
Полно методов которые существуют только на сервере. Например изменитьРеквизиты" // Че-т не особо понял, как это доказывает, что форма "УправляемаяФорма" существует только на сервере.
На клиенте же тоже полно клиентских методов.


Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.