Имя: Пароль:
1C
1С v8
Управляемая форма, СообщениеПользователю - не выводить справа панельку с текстом
,
0 IamAlexy
 
27.07.11
11:55
Реально?

а то есть допустим документ.. много реквизитов.. большой документ..
пользователь что то там некорректно вводит и ему выводится сообщение в виде всплывающей подсказки  с указанием на некорректное поле.. + справа от формы документа выводится белое поле с текстом сообщения... соответственно размер формы меняется.

вопрос: можно ли как то это "правое" сообщение нафиг отключить??
1 RomaH
 
naïve
27.07.11
11:57
2 RomaH
 
naïve
27.07.11
11:58
(0) а на вопрос такой можешь ответить?
как повесить сообщение рядом с реквизитом формы? тот который не реквизит основного, а просто добавлен в реквизиты
3 IamAlexy
 
27.07.11
11:58
пля.. я так и знал что сырое г.вно эта ваша 8ка ...
4 Юрий Лазаренко
 
27.07.11
12:23
(0) Че восьмерку ругаешь. Напиши свою процедуру, кидай ей туда текст сообщения, процедура пусть открывает отдельное окно с сообщением - ни у кого размер меняться не будет.
5 Юрий Лазаренко
 
27.07.11
12:24
(0) Второй вариант - всплывающее окно возле треевских часов.
6 Юрий Лазаренко
 
27.07.11
12:24
Это только что, что сходу придумалось, стопудофф если посидеть подумать - еще варианты появятся.
7 IamAlexy
 
27.07.11
12:25
(0) свою процедуру которая будет выводить всплывающее сообщение привязанное к реквизиту формы? пример кинешь?

(5) неинтересно.. хочется показать пользователю в каком именно месте он идиот..
8 Юрий Лазаренко
 
27.07.11
13:22
(7) Открывай свою форму, на ней список сообщений об ошибках. При клике на сообщение активизируется форма с ошибкой и делается активным нужное поле в ней. Как реализовать думаю разберешься, мне счас лениво код ковырять, сорри.
9 IamAlexy
 
27.07.11
13:28
(8) неудобно.. и бессмысленно..
10 Юрий Лазаренко
 
27.07.11
13:38
(9) Чего неудобно? Размер не меняется, место ошибки указывается.
11 xReason
 
27.07.11
13:42
// Формирует и выводит сообщение, которое может быть связано с элементом
// управления формы.
//
//  Параметры
//  ТекстСообщенияПользователю - Строка - текст сообщения.
//  КлючДанных                - Любая ссылка на объект информационной базы.
//                               Ссылка на объект информационной базы, к которому это сообщение относится,
//                               или ключ записи.
//  Поле                       - Строка - наименование реквизита формы
//  ПутьКДанным                - Строка - путь к данным (путь к реквизиту формы)
//  Отказ                      - Булево - Выходной параметр
//                               Всегда устанавливается в значение Истина
//
//    Примеры использования:
//
//    1. Для вывода сообщения у поля управляемой формы, связанного с реквизитом объекта:
//    ОбщегоНазначенияКлиентСервер.СообщитьПользователю(
//        НСтр("ru = 'Сообщение об ошибке.'"), ,
//        "ПолеВРеквизитеФормыОбъект",
//        "Объект");
//
//    Альтернативный вариант использования в форме объекта:
//    ОбщегоНазначенияКлиентСервер.СообщитьПользователю(
//        НСтр("ru = 'Сообщение об ошибке.'"), ,
//        "Объект.ПолеВРеквизитеФормыОбъект");
//
//    2. Для вывода сообщения рядом с полем управляемой формы, связанным с реквизитом формы:
//    ОбщегоНазначенияКлиентСервер.СообщитьПользователю(
//        НСтр("ru = 'Сообщение об ошибке.'"), ,
//        "ИмяРеквизитаФормы");
//
//    3. Для вывода сообщения связанного с объектом информационной базы
//    ОбщегоНазначенияКлиентСервер.СообщитьПользователю(
//        НСтр("ru = 'Сообщение об ошибке.'"), ОбъектИнформационнойБазы, "Ответственный",,Отказ);
//
// 4. Для вывода сообщения по ссылке на объект информационной базы
//    ОбщегоНазначенияКлиентСервер.СообщитьПользователю(
//        НСтр("ru = 'Сообщение об ошибке.'"), Ссылка, , , Отказ);
//
// Случаи некорректного использования:
//  1. Передача одновременно параметров КлючДанных и ПутьКДанным
//  2. Передача в параметре КлючДанных значения типа отличного от допустимых
//  3. Установка ссылки без установки поля (и/или пути к данным)
//
Процедура СообщитьПользователю(
       Знач ТекстСообщенияПользователю,
       Знач КлючДанных = Неопределено,
       Знач Поле = "",
       Знач ПутьКДанным = "",
       Отказ = Ложь) Экспорт
   
   Сообщение = Новый СообщениеПользователю;
   Сообщение.Текст = ТекстСообщенияПользователю;
   Сообщение.Поле = Поле;
   
   ЭтоОбъект = Ложь;
   
#Если НЕ (ТонкийКлиент ИЛИ ВебКлиент) Тогда
   Если КлючДанных <> Неопределено
      И XMLТипЗнч(КлючДанных) <> Неопределено Тогда
       ТипЗначенияСтрокой = XMLТипЗнч(КлючДанных).ИмяТипа;
       ЭтоОбъект = Найти(ТипЗначенияСтрокой, "Object.") > 0;
   КонецЕсли;
#КонецЕсли
   
   Если ЭтоОбъект Тогда
       Сообщение.УстановитьДанные(КлючДанных);
   Иначе
       Сообщение.КлючДанных = КлючДанных;
   КонецЕсли;
   
   Если НЕ ПустаяСтрока(ПутьКДанным) Тогда
       Сообщение.ПутьКДанным = ПутьКДанным;
   КонецЕсли;
       
   Сообщение.Сообщить();
   
   Отказ = Истина;
   
КонецПроцедуры
12 Юрий Лазаренко
 
27.07.11
13:45
(11) Или я туплю, или этот код выведет сообщение с форме, изменив размеры формы, а ТС хочет этого избежать
13 acsent
 
27.07.11
13:47
А програмно закрыть это окошко с текстом можно?
14 Юрий Лазаренко
 
27.07.11
13:50
(13) Форма все равно будет "колбаситься"
15 acsent
 
27.07.11
13:51
(14) Это мелочи
16 IamAlexy
 
27.07.11
14:00
кстати к вопросу "зачем это надо" - например делаем интерфейс для тачскрина.. форма должна быть на весь экран развернута.. ее все реквизиты расчитаны под определенное разрешение и тд и тп... и тут бац.. всплывает это дыбыльное окошко справа...
17 Юрий Лазаренко
 
27.07.11
14:03
(15) Не скажи. Это обращение к серверу, причем двойное минимум. Форма будет дергаться, что станет приводить юзеров в непонятки и впоследствии в бешенство.
18 acsent
 
27.07.11
14:46
Для фулл скрин работы УФ пока не предназначены
19 IamAlexy
 
27.07.11
14:54
(18) пофиг. хочу.
20 BigRoma
 
27.07.11
14:57
(0) Нельзя. Окно справа будет всегда.
"соответственно размер формы меняется. "
вроде бы меняется за счет свободного места, элементы на существующей форме остаются на своих местах в своих размерах?
21 IamAlexy
 
27.07.11
14:57
(20) угу.. см (16)
22 palpetrovich
 
27.07.11
14:59
(19) так пусть Окно сообщений будет всегда открыто ...когда нет ошибок - туда можно анекдоты подкидывать ...все довольны будут :)
23 BigRoma
 
27.07.11
15:00
ИМХО для мобильных устройств с относительно небольшим экраном нужно делать свои формы.
24 Юрий Лазаренко
 
27.07.11
15:07
(22) :-D
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший