Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
16 Дек 2017, 08:31
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: 1с 8.2.Не срабатывает Отказ проведения.  (Прочитано 9988 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн |R|U|D|E|N

  • ***
  • Сообщений: 217
  • РЕПУТАЦИЯ: 3
  • КПД: 1%
  • Регистрация: 2011-01-09
  • Компания: Virtual-Kernel | KVM | Xen
  • Профессия: Разработчик 1С
Добрый день. У меня в обработке проведения есть два небольших блока кода с различными проверками

Первый:
//Проверка установленного флажка //----------------------------------------------------------------------	
Если ЭтотОбъект.Отработан = Истина Тогда
Сообщить("Для проведения документа, снемите флажек - Отработан");
Сообщить("При установленном флажке Отработан, возможно только сохранение документа!");
Отказ = Истина;
КонецЕсли;

Если выполняется это условие, то проведение документа жестко останавливается как и задумано и код ниже этого блока уже не выполняется.

Второй блок:
//Выполняется контроль складов по ролям //----------------------------------------------------------------
Если РольДоступна("РядовойМенеджерГО") = Истина ИЛИ РольДоступна("СтаршийМенеджерГО") = Истина Тогда
Если ЭтотОбъект.ПеремещениеИЗ = Справочники.Склады.Сервис ИЛИ ЭтотОбъект.ПеремещениеИЗ.СкладИнжинер = Истина Тогда
Сообщить("Нет прав для перемещения с указанного склада - "+ЭтотОбъект.ПеремещениеИЗ+"!");
Отказ = Истина;
КонецЕсли;
КонецЕсли;

Если выполняется это условие то сообщение из этого блока выдается(тойсть условие истино и Отказ = Истина) но код ниже этого блока все равно продолжает выполняться!!! Тойсть даже при том что указанно  Отказ = Истина выполнение не останавливается и документ проводится!!

Как это понимать? Подскажите пожалуйста?




Оффлайн kastrtroy2006

  • *
  • Сообщений: 8
  • РЕПУТАЦИЯ: 2
  • КПД: 25%
  • Регистрация: 2011-07-14
  • Сайт: 
  • Профессия: Программист 8.1
1. Чтобы процедура не продолжалась дальше, надо вставить оператор Возврат

//Выполняется контроль складов по ролям //----------------------------------------------------------------
Если РольДоступна("РядовойМенеджерГО") = Истина ИЛИ РольДоступна("СтаршийМенеджерГО") = Истина Тогда
    Если ЭтотОбъект.ПеремещениеИЗ = Справочники.Склады.Сервис ИЛИ ЭтотОбъект.ПеремещениеИЗ.СкладИнжинер = Истина Тогда
        Сообщить("Нет прав для перемещения с указанного склада - "+ЭтотОбъект.ПеремещениеИЗ+"!");
        Отказ = Истина;
    КонецЕсли;
КонецЕсли;

2. Если значение Отказ = истина, то документ не проведется.
Выложите всю процедуру проведения.

Оффлайн |R|U|D|E|N

  • ***
  • Сообщений: 217
  • РЕПУТАЦИЯ: 3
  • КПД: 1%
  • Регистрация: 2011-01-09
  • Компания: Virtual-Kernel | KVM | Xen
  • Профессия: Разработчик 1С
Код процедуры слишком большой....

Но за вторым блоком кода идут еще ряд проверок в которых Отказ получает Ложь и документ проводится.

У меня вопрос почему после первого блока где Отказ = Истина процедура дальше не выполняется. А вот после второго блока где тоже Отказ = Истина процедура продолжает выполняться.

Как мне сделать, что бы при первом попавшемся Отказ = Истина процедура намертво останавливалась не выполняя остальные проверки??

Оффлайн Lis3004

  • *
  • Сообщений: 21
  • РЕПУТАЦИЯ: 1
  • КПД: 5%
  • Регистрация: 2010-01-28
  • Сайт: 
//Проверка установленного флажка //---------------------------------------------------------------------- Если ЭтотОбъект.Отработан = Истина ТогдаСообщить("Для проведения документа, снемите флажек - Отработан");
Сообщить("При установленном флажке Отработан, возможно только сохранение документа!");
Отказ = Истина;
Возврат;
КонецЕсли;

Оффлайн |R|U|D|E|N

  • ***
  • Сообщений: 217
  • РЕПУТАЦИЯ: 3
  • КПД: 1%
  • Регистрация: 2011-01-09
  • Компания: Virtual-Kernel | KVM | Xen
  • Профессия: Разработчик 1С
Спасибо огромное за такую маленькую но невероятно ценную подсказку!!)

Все работат. Код дальше не выполняется!


Теги:
 

"Удалять автоматически" и "Удалять автоматически при отмене проведения" - в чем отличие?

Автор leklerkРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 5
Просмотров: 3992
Последний ответ 18 Ноя 2014, 09:13
от leklerk
ошибка проведения реализации "При списании комиссионных товаров не определены параметры партии ""

Автор WelllaryРаздел Пользователям "1С - Предприятие 8"

Ответов: 2
Просмотров: 3739
Последний ответ 15 Апр 2015, 17:58
от Дмитрий@
Отбор по дате проведения документа в обработке "Универсальные подбор и обработка объектов"

Автор rooflessРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 0
Просмотров: 2575
Последний ответ 25 Июн 2014, 15:30
от roofless
Что лучше: добавить код в обработку проведения или создать подписку на событие "при записи"

Автор ZeedРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 1
Просмотров: 725
Последний ответ 26 Окт 2016, 14:42
от MuI_I_Ika
Необходимо подпиской на событие "отредактировать" обработки проведения ПКО и РКО

Автор Vika_22Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 3
Просмотров: 4326
Последний ответ 07 Авг 2011, 02:37
от Klyacksa

* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

Смотрите бесплатно более 300 видеоуроков по работе в 1С:Бухгалтерия 8 и 1C:ЗУП 8 ред. 3.0

СМОТРЕТЬ >>

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
154 Сообщений
ilyay ilyay
66 Сообщений
alex0402
53 Сообщений
AIFrame
46 Сообщений
andron81_81
44 Сообщений
oleg-x
44 Сообщений
BuhRust
32 Сообщений
MuI_I_Ika MuI_I_Ika
32 Сообщений
Golickoff Golickoff
31 Сообщений
Dima Dddd Dima Dddd
24 Сообщений

* Кто онлайн

  • Точка Гостей: 182
  • Точка Скрытых: 1
  • Точка Пользователей: 3
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal