Имя: Пароль:
1C
1С v8
терминирующие сообщения
0 LivingStar
 
24.12.12
10:56
Вывожу пользователю сообщение, как сделать что бы ему не давалось продолжить свои действия пока он не исправит проблемную ситуацию? В данном случае пока не введут корректные данные для списания.


   Если ИтогоПоСтроке > ИтКол Тогда
       Превышено             = ИтКол - ИтогоПоСтроке;
       Сообщение             = Новый СообщениеПользователю();
       Сообщение.ПутьКДанным = "Номенклатура";
       Сообщение.Текст       = "В строке " + (ТекСтр + 1)  + " веденное количество превышает остаток на " + Превышено*(-1);
       Сообщение.Сообщить();
   КонецЕсли;
1 Axel2009
 
24.12.12
10:57
модальное окно открой
2 YHVVH
 
24.12.12
10:58
(0) исправь сам за него
3 Starhan
 
24.12.12
10:58
(0)трудная у тебя работа.

плюс фокус в нужное поле и не давать закрыть окно.
4 Reset
 
24.12.12
10:59
Пока Не ВведеныКорректныеДанные цик
print нука введи корректные данные
input Данные
Если ДанныеКорректны(Данные) тогда
   ВведеныКорректныеДанные=Истина;
КонецЕсли;
КонецЦикла;
5 Гефест
 
24.12.12
11:00
(4) только счетчик нужен, чтобы раза с 500-ого признать себя побежденным
6 Wobland
 
24.12.12
11:04
прервать или возврат ещё не предлагали?
7 Жан Пердежон
 
24.12.12
11:07
(0) зачем?
8 Reset
 
24.12.12
11:11
(5)
ЗапасТерпения=500;
Пока Не ВведеныКорректныеДанные цикл
 print нука введи корректные данные
 input Данные
 Если ДанныеКорректны(Данные) тогда
     ВведеныКорректныеДанные=Истина;
 Иначе
    ЗапасТерпения=ЗапасТерпения-1;
    Если ЗапасТерпения=0 тогда
      print хрен с тобой, пусть будут эти данные
      Прервать;
    КонецЕсли;
 КонецЕсли;
КонецЦикла;
9 LivingStar
 
24.12.12
11:23
(6) Возврат ничего не даcт !!!!
Ситуация такая: заполняю таблицу и при окончания ввода строки могу вывести только сообщение, при этом позволено вводить остальные строки. Думал есть метод не позволяющий продолжить ввод пока не исправится значение, и не будет выводиться сообщение об ошибке.
10 vde69
 
24.12.12
11:26
обработчик "ПриИзмененииСтроки"

Отказ = Истина;
11 Wobland
 
24.12.12
11:26
(9) не делай так, дай юзеру закончить ввод, даже если он неправилен. иначе будешь гореть в геенне огненной, проклинаемый проклятиями юзерскими
12 LivingStar
 
24.12.12
11:54
(10) мне надо в ПриОкончанииРедактирования()
13 Ivan Bezdomnyi
 
24.12.12
12:02
(11) У табличного поля "ПередОкончаниемРедактирования" Отказ = Истина
14 LivingStar
 
24.12.12
12:09
(13) спасибо, попробую!!!
15 Wobland
 
24.12.12
12:09
а что, после (10) обязательно надо было (13) дождаться?
16 LivingStar
 
24.12.12
14:21
(15) отказ= истина ничего не дал, дальнейший ввод при возникновении ошибки возможен !