我是 Oracle 表单的新手,我正在设计用同样的方式编写应用程序。我在以下情况下遇到问题。
我有一个表格(FORM1)来显示没有授权细节的项目列表。在授权项目之前,授权人必须查看详细信息。这需要另一个表单 (FORM2),只要选择了一个项目并选择了“查看”按钮,就会调用该表单。详细信息将在那里显示。FORM2 上还有按钮:REJECT、APPROVE 和 BACK。
这是 FORM1 按钮按下时查看按钮的事件:
DECLARE
list_id ParamList;
USR_MSG NUMBER;
BEGIN
IF :TBL_CONTRACT.CONTRACT_NO IS NULL THEN
USR_MSG:=USER_ALERT('INFO_ALERT','Please select a valid contract no to View.');
RAISE FORM_TRIGGER_FAILURE;
END IF;
list_id := Create_Parameter_List('PAR_CONTRACT');
Add_Parameter(list_id, 'CONTRACT_NO',TEXT_PARAMETER,:TBL_CONTRACT.CONTRACT_NO);
call_Form('T:\FRM_APPROVAL_VIEW.fmx',no_hide,no_replace, no_query_only,list_id);
END;
我的意图是将 contract_id 传递给 FORM2 并查询数据库以获取详细信息,然后将其显示在表单上。
这是 Form2 when-new-form-instance 事件的代码。
SET_WINDOW_PROPERTY(FORMS_MDI_WINDOW,WINDOW_STATE,MAXIMIZE);
BEGIN
IF ( :PARAMETER.PAR_CONTRACT IS NOT NULL ) THEN
/* Use this value in the WHERE clause of MY_BLOCK */
Set_Block_Property('TBL_CONTRACT',DEFAULT_WHERE, 'PAR_CONTRACT = :PARAMETER.PAR_CONTRACT');
GO_BLOCK('TBL_CONTRACT');
Execute_Query;
END IF;
END;
当我运行应用程序时遇到错误:FRM 47023,在 FRM_APPROVAL_VIEW 表单中不存在名为 Contract_No 的此类参数。
有人会解释什么是错的和补救措施。
提前致谢。