не дать выбрать договор

  1. 7 г. назад

    БП 2.0, обычные формы.
    у договора есть срок действия. Если срок действия меньше текущей даты, то нужно спросить пользователя - нафига вы выбираете просроченный договор. Если говорит ОК, я знаю что делаю - то выбирать. Если нажимает нет - то не закрывать форму при выборе, а дать возможность выбрать другой договор.

    Набросал код в форме выбора договоров:

    Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка)
    	// Вставить содержимое обработчика.
    	
    	ПОпытка
    		Если элементыформы.СправочникСписок.ТекущаяСтрока.срокДействия <> Дата("00010101")
    			И  элементыформы.СправочникСписок.ТекущаяСтрока.срокДействия < ТекущаяДата() тогда
    		ответ = Вопрос("Срок действия этого договора закончился. Вы уверены, что хотите выбрать этот договор?", РежимДиалогаВопрос.ДаНет)	;
    		Если ответ = КодВозвратаДиалога.Нет тогда
    			СтандартнаяОбработка = ложь;
    			отказ = истина;
    		КОнецЕсли;
    			
    			КОнецЕсли;
    		Исключение	
    		КОнецПопытки
    		
    КонецПроцедуры
    

    Пользователь нажимает Нет, отладка доходит до отказа, но договор все равно выбирается, а форма закрывается.
    ЧЯДНТ?

    Ответы: (10)
  2. + можно использовать обработку выбора в ТП, но выбрать можно и в командной панеле..

    Ответы: (2)
  3. Stim + можно использовать обработку выбора в ТП, но выбрать можно и в командной панеле..

    Это одно и тоже

    Ответы: (3)
  4. sf Это одно и тоже

    Нет

    Ответы: (9)
  5. Очищай поле договора и заново открывай форму выбора.
    но эт конечно костыль

  6. Офф:Ты что с опер стола 1сишь?

    Ответы: (19)
  7. Проще писать в ПриИзменениии в самом документе, а не в форме списка справочника. Мало ли, для чего его еще откроют

    Ответы: (10) (18)
  8. И там, тупо очищать договор с предупреждением. усё. А в форме списка, подсвечивать не активные по дате дока/текущей дате договора.

    Ответы: (10)
  9. У нас так. по крайней мере.

    А у тя не верно, на дату дока, возможно, документ еще проходил по срокам, а на текущую дату ужо нет.

  10. Stim пользовать обработку выбора в ТП, но выбрать можно и в командной панеле..

    что нет? ты какую-то лабуду несешь, честно говоря.
    Если ты про событие "Выбор", то оно одинаково двойного клика и "выбрать" в командной панели.
    Вообще, твой подход неправильный изначально, без обид.

    Ответы: (21)
  11. (6)(7) проще и правильнее вызывать "ОбработкаПроверкиЗаполнения"
    или использовать "Связи параметров выбора" для такого простого случая как в (0)

    Ответы: (11)
  12. (10) не, проще уж изначально не давать выбирать. Так быстрее, чем потом бегать по всем проверяемым реквизитам

    Ответы: (12)
  13. (11) да ладно.... быстрее чем, что?

    Ответы: (13)
  14. (12) Чем потом просматривать букет ошибок.

    Ответы: (16)
  15. Ну и как сделать, чтоб сразу выбирали нужный - это подсветка цветом или отбор при открытии формы договора

  16. Я бы перед открытием формы выбора фильтровал бы договора.

    Ответы: (23)
  17. (13) но методологически это правильнее, имхо. меньше обращений на сервер + способов как запихнуть некорректный договор много (от обработок заполнения до ввода по строке)

    Ответы: (17)
  18. (16) да не вопрос, можно и эту проверку воткнуть, пусть будет тоже.

  19. Ёпрст Проще писать в ПриИзменениии в самом документе, а не в форме списка справочника. Мало ли, для чего его еще откроют

    Не проще. Хотелось бы в одной форме выбора, чем во всех других

  20. Мимими Офф:Ты что с опер стола 1сишь?

    Я уже все)

    Ответы: (20) (22)
  21. (19) быстро ты

    Ответы: (22)
  22. sf что нет? ты какую-то лабуду несешь, честно говоря.
    Если ты про событие "Выбор", то оно одинаково двойного клика и "выбрать" в командной панели.
    Вообще, твой подход неправильный изначально, без обид.

    sf что нет? ты какую-то лабуду несешь, честно говоря.
    Если ты про событие "Выбор", то оно одинаково двойного клика и "выбрать" в командной панели.
    Вообще, твой подход неправильный изначально, без обид.

    Нифига не одинаково. Обработка выбора для тп не срабатывает для выбрать командной панели

  23. Мимими (19) быстро ты

    А что тянуть-то?)

  24. Bekas Я бы перед открытием формы выбора фильтровал бы договора.

    Не вариант. Договор выбирать можно, но с предупрждентем

    Ответы: (24)
  25. (23) хозяин-барин. я размышлял так, что просроченные договора необходимы будут в 1-2% случаев, и поэтому достаточно просто дать возможность отключить фильтр и выбрать необходимый.

или зарегистрируйтесь чтобы ответить!