Версия для печати темы (https://pro1c.org.ua/index.php?s=ddece5408816424cb9ca7df8ad54d76b&showtopic=34649)

Нажмите сюда для просмотра этой темы в обычном формате

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 _ Программирование управляемых форм 1С 8.2 _ Работает ли СообщениеПользователю в управляемой форме обычного приложения?

Автор: Yevhenii 19.01.17, 11:23

1С Предприятие 8.2 обычное приложение.
Конфигурация "Управление торговым предприятием для Украины", редакция 1.2.

Здравствуйте уважаемые.

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

&НаКлиенте
Процедура ПродажаПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, Группа, Параметр)
    
    Если Элементы.ПолеКурс.ТекстРедактирования="0,00" Тогда
    
        Отказ=Истина;
            Сообщение = Новый СообщениеПользователю;
            Сообщение.Текст = "Сначала введите курс!";
                Сообщение.Поле  = "Курс";
            Сообщение.ПутьКДанным = "Объект";
            Сообщение.Сообщить();
    КонецЕсли;

КонецПроцедуры



и так:
&НаСервере
Процедура Сообщить4НаСервере()
    Сообщение4 = новый СообщениеПользователю;
    Сообщение4.УстановитьДанные(РеквизитФормыВЗначение("Объект"));
    Сообщение4.Текст = "Сначала введите курс!";
    Сообщение4.Поле = "Курс";
    Сообщение4.Сообщить();
КонецПроцедуры


&НаКлиенте
Процедура ПродажаПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, Группа, Параметр)
    
    Если Элементы.ПолеКурс.ТекстРедактирования="0,00" Тогда
    
        Отказ=Истина;
            Сообщить4НаСервере();

    КонецЕсли;
КонецПроцедуры

Автор: Petre 19.01.17, 11:41

Yevhenii @ Сегодня, 11:23 * ,
Не работает.

Автор: podcast 19.01.17, 11:54

Yevhenii @ Сегодня, 11:23 * ,
Функции общего назначения помещайте в блок для клиента и сервера. Если в такой функции встречаются клиентские вызовы, например Сообщить или Состояние, то берите их в скобки ЕслиКлиент.

Автор: Petre 19.01.17, 12:40

podcast @ Сегодня, 11:54 * ,
К чему это?

Автор: podcast 19.01.17, 13:33

Petre @ Сегодня, 12:40 * ,
К тому что когда база будет на скуле то будут ошибки, буквально пару дней назад столкнулся с такой ошибкой, в файловом варианте всё работала, а на скуле ошибка.

Автор: Petre 19.01.17, 13:51

podcast @ Сегодня, 13:33 * ,
А можно конкретно указать, на какой строчке приведенного ТС кода будет ошибка "на скуле"?

Автор: podcast 19.01.17, 13:54

Petre @ Сегодня, 13:51 * ,
А пардон,

Сообщить();

уже доступно на сервере.

Автор: Vofka 19.01.17, 14:43

Цитата(podcast @ 19.01.17, 13:54) *
уже доступно на сервере.

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

Автор: Yevhenii 19.01.17, 16:35

На прикручивание забил, сделал ОповещениеПользователю и переходом фокуса на нужное поле.

Теперь другая проблемка:
Этот же документ где Форма документа является управляемой.
В обработке на ТабличномПоле с типом данных ДокументСписок.ИмяДокумента вывожу список данных документов, но при попытке открыть документ мне открывается документ со стандартной сконфигурируемой обычной формой. Т.е. не управляемая которая открывается при создании, а стандартная. С свойствах документа создана только одна управляемая форма, она же выбрана как основная и как дополнительная форма документа.
Как мне по клику открывать документ именно с моей управляемой формой?

 ! 

http://pro1c.org.ua/index.php?act=announce&id=2: 6
 

Автор: Petre 19.01.17, 17:07

Yevhenii @ Сегодня, 16:35 * ,
8.3.9.2084: ситуация не воспроизводится...

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua