Создать документ УТ 10.3

1. _7445_ 02.03.19 14:38 Сейчас в теме
Здравствуйте. Я плохо знаю русский. Извините за этого. Я еще новичок в 1С программирование. В УТ 10.3. В документе заказ покупателя есть 2 галочка (Директор по продажам и Главный бухгалтер). Чтобы на основании этого заказа можно было реализовать товар только если они оба подтвердили этот заказ. Если оба они не подтвердили тогда при создании реализации на основании этого заказа выдавало ошибку с текстом НЕ ПОДТВЕРЖДЕН.... В документа реализация - модуль объекта - обработка заполнения добавил код. Код показывает сообщению когда не подтвердили оба они. Но есть токая проблема что показывает сообщению но после этого открывает новый пустой документ. Надо что если документ не подтверждён тогда проста показывал сообщению. Можете дать подсказку что как исправится с этим?
Спасибо всем за ранее.
Если ТипЗнч(Основание) = Тип("ДокументСсылка.ЗаказПокупателя") Тогда
	 	 Если Основание.ДиректорПоПродажам = Ложь ИЛИ Основание.ГлавныйБухгалтер = Ложь Тогда
		  Сообщить("Не Подтвержден");
		 Возврат
		 Иначе 
	 КонецЕсли
 Иначе
	 КонецЕсли;
По теме из базы знаний
Найденные решения
9. dhurricane 02.03.19 16:13 Сейчас в теме
(8) Можно попробовать заглянуть в типовой код. Например, попытайтесь создать заказ поставщику на основании Партнера (Контрагента), который не является ни поставщиком, ни конкурентом. У Вас ничего не получится, т.к. Вы получите сообщение об ошибке примерно с таким текстом:
Партнер не является поставщиком. Ввод на основании доступен только для поставщика.

И документ открыт не будет.

Такого поведения как раз и добиваются используя метод "ВызватьИсключение". Это нормальная практика.

И в Вашей задаче я также предлагаю вызывать сообщение об ошибке. Т.к. Вы программист и тестируете свои наработки в режиме отладки, в сообщении Вы увидели много технической информации. Но пользователи ее не увидят. Они увидят только текст сообщения в окне с ошибкой.
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. dhurricane 02.03.19 15:32 Сейчас в теме
(1)
Сообщить("Не Подтвержден");

Предлагаю Вам заменить обычное сообщение пользователю на сообщение об ошибке:
Если Основание.ДиректорПоПродажам = Ложь ИЛИ Основание.ГлавныйБухгалтер = Ложь Тогда
          ВызватьИсключение "Не Подтвержден";
КонецЕсли;

При этом исполнение кода прекратится, даже "Возврат" не нужен.
3. _7445_ 02.03.19 15:39 Сейчас в теме
(2)
Если Основание.ДиректорПоПродажам = Ложь ИЛИ Основание.ГлавныйБухгалтер = Ложь Тогда
ВызватьИсключение "Не Подтвержден";
КонецЕсли;

Спасибо за вниманию
Дают такую ошибку Ошибка при выполнении обработчика - 'ОбработкаЗаполнения'
по причине:
{Документ.РеализацияТоваровУслуг.МодульОбъекта(5434)}: Не Подтвержден

Не когда не встречался с таким ошибкам
4. dhurricane 02.03.19 15:41 Сейчас в теме
(3) Все верно, именно такое поведение и запланировано: ошибка при попытке создать документ на основании неподтвержденного.
5. dhurricane 02.03.19 15:42 Сейчас в теме
(3) У Ваших пользователей вряд ли включена отладка сеанса, поэтому они увидят лишь сообщение "Не подтвержден", без технических деталей.
6. _7445_ 02.03.19 15:46 Сейчас в теме
(5)
Как исправится с этим тогда?
Надо что не открылся документ
7. dhurricane 02.03.19 15:59 Сейчас в теме
(6) Вам не понравилось мое предложение?
8. _7445_ 02.03.19 16:06 Сейчас в теме
(7)
Знаете я еще новичок в этом сфере. И извиняю что я не четка понял вашу предложение. Можете более подробнее говорить ?
9. dhurricane 02.03.19 16:13 Сейчас в теме
(8) Можно попробовать заглянуть в типовой код. Например, попытайтесь создать заказ поставщику на основании Партнера (Контрагента), который не является ни поставщиком, ни конкурентом. У Вас ничего не получится, т.к. Вы получите сообщение об ошибке примерно с таким текстом:
Партнер не является поставщиком. Ввод на основании доступен только для поставщика.

И документ открыт не будет.

Такого поведения как раз и добиваются используя метод "ВызватьИсключение". Это нормальная практика.

И в Вашей задаче я также предлагаю вызывать сообщение об ошибке. Т.к. Вы программист и тестируете свои наработки в режиме отладки, в сообщении Вы увидели много технической информации. Но пользователи ее не увидят. Они увидят только текст сообщения в окне с ошибкой.
10. _7445_ 02.03.19 16:21 Сейчас в теме
(9)
Спасибо вам большое. Все понятно. Про "ВызватьИсключение" этого не знал. Ошибку показывает, не открывается форма если не подтвержден документ
11. alexx2510 38 02.03.19 22:00 Сейчас в теме
Выполняйте проверку в форме реализации в процедуре ПередОткрытием:
Выполняете проверку, что это НовыйДокумент, что у него заполнено основание и тип основания заказ покупателя.
А дальше ваша проверка. И если проверка не пройдена, то выводите ваше сообщение и устанавливаете Отказ = Истина;
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот