1
Я создал один POPUP в формах Oracle (Пользовательские ФАПЧ - Oracle EBS R12)Oracle Forms- 'FND_MESSAGE' вопрос
fnd_message.set_name ('XX', 'CASCADE_SHIPPING_METHOD');
-- fnd_message.show;
n_button_selection :=
fnd_message.question ('Yes',
'No',
'',
1,
2,
3);
IF n_button_selection = 1
THEN
Procedure1();
ELSIF n_button_selection = 2
THEN
Procedure2();
ELSE
NULL;
END IF;
Этот код работает отлично, Но, если ЗАКРЫТЬ Пользователь форму (щелкнув по значку «X»), то выполняется условие ELSIF и вызывается процедура2. Я ожидаю, что управление будет ELSE и ничего не делать. Просьба помочь.
Я изменил код, как
fnd_message.set_name ('XX', 'CASCADE_SHIPPING_METHOD');
n_button_selection :=
fnd_message.question ('Yes',
'No',
'Cancel',
1,
2,
3);
--If user select "Yes" option to cascade, then enter inside if and call the proc to cascade
IF n_button_selection = 1
THEN
MESSAGE('Pressed Yes-For Lines Cascading');
shipping_method (l_header_id,
ship_method,
'Lines');
ELSIF n_button_selection = 2
THEN
MESSAGE('Pressed No-For Header Cascading');
shipping_method (l_header_id,
ship_method,
'Header');
ELSE
\t MESSAGE('Inside ELSE Condition');
NULL;
END IF;
, но по-прежнему Если закрыть форму управления Переход к Кнопка выбора 2, который ELSIF.
Привет Vinish, Спасибо за ваш ответ, будет пытаться это, и пусть вы знаете, если он работает .. раз большое спасибо за ваш suggesytion. –
Пожалуйста, см. Мое обновление .. на самом деле он снова отправился в ELSIF. Я изменил условие IF на CASE. все еще, если мы нажмем на X, перейдем к CASE 2 –
Привет, я снова отредактировал ответ, попробуйте этот. Фактически после параметра Cancle, 1 для кнопки ok по умолчанию и 3 для кнопки cancle по умолчанию, нет необходимости в другом параметре, как и для значка. –