| Предыдущая тема :: Следующая тема   | 
	
	
	
		| Автор | 
		Сообщение | 
	
	
		Alkov Профи
 
  Вступление в Клуб: 23.09.2010
  | 
		
			
				 Чт Сен 23, 2010 08:43   Закрыть форму и операцию из валидатора | 
				     | 
			 
			
				Полезность: Нет оценки 
  | 
			 
			
				Здравствуйте !
 
 
 
Можно ли закрыть форму и операцию из валидатора или из клиент-скрипта ?
 
 
 Call Form1.ScriptServerValidate( OK, Nothing) - не работает  ( | 
			 
		  | 
	
	
		  | 
	
	
		kit83rd Участник со стажем
 
  Вступление в Клуб: 05.02.2010
  | 
		
			
				 Пт Сен 24, 2010 02:54    | 
				     | 
			 
			
				Полезность: 1 
  | 
			 
			
				Как вариант можно вызвать событие нажатие кнопки "ОТМЕНА"
 
Форма закроется.
 
 
 	  | Код: | 	 		  
 
    Form1.ScriptPostEvent Cancel, "CLICK"
 
 | 	 
  | 
			 
		  | 
	
	
		  | 
	
	
		Alkov Профи
 
  Вступление в Клуб: 23.09.2010
  | 
		
			
				 Пт Сен 24, 2010 03:02    | 
				     | 
			 
			
				Полезность: Нет оценки 
  | 
			 
			
				Спасибо, помогло    | 
			 
		  | 
	
	
		  | 
	
	
		vek21 Участник со стажем
 
  Вступление в Клуб: 20.09.2007
  | 
		
			
				 Вт Окт 26, 2010 08:54    | 
				     | 
			 
			
				Полезность: Нет оценки 
  | 
			 
			
				| ...Но при этом, если на форме был какой-то ввод, обязательно появится окошко с вопросом "Выйти без сохранения изменений?" А можно ли как-то отменить задание этого вопроса, если точно известно, что "да, выйти"? | 
			 
		  | 
	
	
		  | 
	
	
		Random Эксперт
 
  Вступление в Клуб: 27.06.2011
  | 
		
			
				 Ср Окт 05, 2011 06:38   Re: Закрыть форму и операцию из валидатора | 
				     | 
			 
			
				Полезность: Нет оценки 
  | 
			 
			
				 	  | Alkov пишет: | 	 		  Можно ли закрыть форму и операцию из валидатора или из клиент-скрипта ?
 
 
 Call Form1.ScriptServerValidate( OK, Nothing) - не работает  ( | 	  
 
 
А при чем тут серверный валидатор-то?
 
Надо жать Ok на экранной форме (а не Cancel - чтоб вопросов глупых ЭФ не задавала)
 
 	  | Код: | 	 		  | Form1.ScriptPostEvent OK, "CLICK"  | 	 
  | 
			 
		  | 
	
	
		  | 
	
	
		vtar Эксперт
 
  Вступление в Клуб: 20.03.2009
  | 
		
			
				 Ср Окт 05, 2011 09:35   Re: Закрыть форму и операцию из валидатора | 
				     | 
			 
			
				Полезность: 1 
  | 
			 
			
				 	  | Random пишет: | 	 		  Надо жать Ok на экранной форме (а не Cancel - чтоб вопросов глупых ЭФ не задавала)
 
 | 	  
 
А можно я задам глупый вопрос ? Мне всегда казалось, что нажатие ОК ведет к  последующему выполнению секции "тела" операции, а нажатие Cancel ведет к  выходу из операции без выпллнения секции "тела". Вы обладаете знанием, какой вариант нужен ТС, или я чего то не вкурил ? | 
			 
		  | 
	
	
		  | 
	
	
		Random Эксперт
 
  Вступление в Клуб: 27.06.2011
  | 
		
			
				 Ср Окт 05, 2011 18:41   Re: Закрыть форму и операцию из валидатора | 
				     | 
			 
			
				Полезность: Нет оценки 
  | 
			 
			
				 	  | vtar пишет: | 	 		   	  | Random пишет: | 	 		  Надо жать Ok на экранной форме (а не Cancel - чтоб вопросов глупых ЭФ не задавала)
 
 | 	  
 
А можно я задам глупый вопрос ? Мне всегда казалось, что нажатие ОК ведет к  последующему выполнению секции "тела" операции, а нажатие Cancel ведет к  выходу из операции без выпллнения секции "тела". Вы обладаете знанием, какой вариант нужен ТС, или я чего то не вкурил ? | 	  
 
 
Ведет к выполнению тела, безусловно.
 
 
Однако перед этим а) можно установить какую-нить переменную, типа b$run_body_ignore := true;
 
б) вообще выкинуть тело, потому что
 
в) человек пишет пользовательский интерфейс, и, хотя этого явно не говорится, как правило, в таких операциях тело - несущественно.
 
г) только посредством нажатия ОК можно избавиться от вопроса "Сохранять изменения?"
 
д) пусть Alkov сам выбирает из предложенных вариантов - чем вариантов больше, тем лучше.
 
 
Спасибо за напоминание про выполнение тела - я как-то упустил этот момент. | 
			 
		  | 
	
	
		  | 
	
	
		Sith Участник
 
  Вступление в Клуб: 15.12.2009
  | 
		
			
				 Пт Янв 20, 2012 09:43    | 
				     | 
			 
			
				Полезность: Нет оценки 
  | 
			 
			
				А без выполнения тела ? И как быть если надо дёрнуть из расширения ? _________________ Another way, always another way. | 
			 
		  | 
	
	
		  | 
	
	
		Random Эксперт
 
  Вступление в Клуб: 27.06.2011
  | 
		
			
				 Пт Янв 20, 2012 10:00    | 
				     | 
			 
			
				Полезность: Нет оценки 
  | 
			 
			
				 	  | Sith пишет: | 	 		  | А без выполнения тела ? И как быть если надо дёрнуть из расширения ? | 	  
 
 
Что-то я не понимаю насчет "без выполнения тела".
 
Чего сделать-то надо? | 
			 
		  | 
	
	
		  | 
	
	
		Sith Участник
 
  Вступление в Клуб: 15.12.2009
  | 
		
			
				 Пт Янв 20, 2012 10:58    | 
				     | 
			 
			
				Полезность: Нет оценки 
  | 
			 
			
				Ну закрыть операцию из клиентскрипта расширения не выполнив тела _________________ Another way, always another way. | 
			 
		  | 
	
	
		  | 
	
	
		vtar Эксперт
 
  Вступление в Клуб: 20.03.2009
  | 
		
			
				 Пт Янв 20, 2012 12:20    | 
				     | 
			 
			
				Полезность: Нет оценки 
  | 
			 
			
				В клиент - скрипте расширения выполните
 
CALL frmNew_Dt.ScriptPostEvent(Cancel, "CLICK")
 
 
где frmNew_Dt - форма основной операции | 
			 
		  | 
	
	
		  | 
	
	
		Sith Участник
 
  Вступление в Клуб: 15.12.2009
  | 
		
			
				 Пт Янв 20, 2012 13:44    | 
				     | 
			 
			
				Полезность: Нет оценки 
  | 
			 
			
				это то всё понятно сразу , не до конца написал ... нужно чтобы это отрабатывала при нажатии OK 
 
 
т.е в свойствах объекта кнопки нужно поменять значение system action
 
или перекрыть процедуру 
 
OK_onclick _________________ Another way, always another way. | 
			 
		  | 
	
	
		  | 
	
	
		vtar Эксперт
 
  Вступление в Клуб: 20.03.2009
  | 
		
			
				 Пт Янв 20, 2012 13:58    | 
				     | 
			 
			
				Полезность: Нет оценки 
  | 
			 
			
				| Ну в таком случае что мешает, к примеру сделать еще одну кнопку ОК, когда надо, делать реальный ОК скрытым а свой фейковый ОК видимым ? | 
			 
		  | 
	
	
		  | 
	
	
		Sith Участник
 
  Вступление в Клуб: 15.12.2009
  | 
		
			
				 Пт Янв 20, 2012 14:09    | 
				     | 
			 
			
				Полезность: Нет оценки 
  | 
			 
			
				скажу без подкола ... эта мысль тоже приходила в голову ... но не этично и не профессионально _________________ Another way, always another way. | 
			 
		  | 
	
	
		  | 
	
	
		Alexsey Эксперт
 
  Вступление в Клуб: 06.09.2007
  | 
		
			
				 Пт Янв 20, 2012 15:00    | 
				     | 
			 
			
				Полезность: Нет оценки 
  | 
			 
			
				 	  | Sith пишет: | 	 		  | скажу без подкола ... эта мысль тоже приходила в голову ... но не этично и не профессионально | 	  
 
А что мешает написать код, который отработает после выполнения основной операции? это же элементарно.. пишем необходимые действия после макроса и вуаля. _________________ всегда есть как минимум 2 выхода | 
			 
		  | 
	
	
		  | 
	
	
		 |