Имя: Пароль:
1C
1С v8
Исключение со своим текстом
0 Cool_Profi
 
11.01.17
14:06
А вот подскажите...
Может, я чего не знаю...

Можно ли как-то инициировать исключение со своим текстом?

Пример.
Есть документ. У него есть подписка, в которой Отказ выставляется в Истина и делается Сообщить("тут текст о запрете проведения");
Когда пользователь проводит документ - сообщение видно.

А если это делается программно - я просто получаю "Не удалось провести документ"

Хотелось бы что-то вроде ВызватьИсключение "Текст ошибки".

Нет такого?
1 FIXXXL
 
11.01.17
14:11
если проводить в Попытка, то в Исключении этой Попытка выводи свое Сообщить
2 Cool_Profi
 
11.01.17
14:13
(1) сообщить - выдаст сообщение пользователю.
А мне этот текст нужно отправить выше по стеку вызовов
На самой верхушке которого стоит
Попытка
  док.Записать(РежимЗаписиДокумента.провести);
Исключение
  текстОшибки = ОписаниеОшибки();
КонецПопытки
3 Cool_Profi
 
11.01.17
14:13
И вот в текстОшибки мне нужно поиметь не "Не смогли провести документ", а "ошибка при проведении: нарушена дата запрета на проведение документа по причине..."
4 Волшебник
 
модератор
11.01.17
14:17
ВызватьИсключение <Выражение>

Описание:
При использовании данной формы оператора вызывается новое исключение. Результат вычисления выражения преобразуется к строке и данная строка используется в качестве описания исключения.
5 mistеr
 
11.01.17
14:17
(2) Док.ПопыткаЗаписи(РежимЗаписи, Отказ, ТекстОшибки);
6 Cool_Profi
 
11.01.17
14:17
(4) Блин... И точно...
Вроде не было раньше...

Надо попробовать.
7 Волшебник
 
модератор
11.01.17
14:18
Понаберут по объявлениям...
8 Cool_Profi
 
11.01.17
14:21
Стоп. Не совсем то. Точнее, совсем не то.
ВызватьИсключение работает только в Попытке.

А мне нужно в произвольном месте сделать.
9 youalex
 
11.01.17
14:23
(8) ВызватьИсключение(ТекстОшибки) - вроде везде работает
10 mexanik_96
 
11.01.17
14:24
(8) странно однако, мне кажется ты заблуждаешься
11 Лохматые Уши
 
11.01.17
14:25
(9) И у меня везде. А у автора видать не везде.
12 Cool_Profi
 
11.01.17
14:26
да. Работает. Странно...
Когда раньше (когда-то) пробовал - не срабатывал.

Всем спасибо за внимание и тыкание носом.
13 piter3
 
11.01.17
14:26
(10) неа,не ошибается
14 youalex
 
11.01.17
14:28
(9) зы, не знал что скобки тут не нужны)
Программист всегда исправляет последнюю ошибку.