Oracle Forms- 'FND_MESSAGE' 问题
Oracle Forms- 'FND_MESSAGE' issue
我在 Oracle Forms(自定义 PLL - Oracle EBS R12)中创建了一个 POPUP
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
MESSAGE('Inside ELSE Condition');
NULL;
END IF;
但如果我关闭表单,控件仍会转到 Button Selection 2,即 ELSIF。
试试这个:
fnd_message.set_name ('XX', 'CASCADE_SHIPPING_METHOD');
-- fnd_message.show;
n_button_selection :=
fnd_message.question ('Yes',
'No',
'Cancle',
1,
3);
IF n_button_selection = 1
THEN
Procedure1();
ELSIF n_button_selection = 2
THEN
Procedure2();
ELSE
NULL;
END IF;
我在 Oracle Forms(自定义 PLL - Oracle EBS R12)中创建了一个 POPUP
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
MESSAGE('Inside ELSE Condition');
NULL;
END IF;
但如果我关闭表单,控件仍会转到 Button Selection 2,即 ELSIF。
试试这个:
fnd_message.set_name ('XX', 'CASCADE_SHIPPING_METHOD');
-- fnd_message.show;
n_button_selection :=
fnd_message.question ('Yes',
'No',
'Cancle',
1,
3);
IF n_button_selection = 1
THEN
Procedure1();
ELSIF n_button_selection = 2
THEN
Procedure2();
ELSE
NULL;
END IF;