我的表单有一个主模块(ORDER
)和一个详细模块(ORDER_LINE
)。该ORDER
块具有ORDER_ID
项(它是主键)定义如下:如何解决Oracle Forms中的“FRM-30408:无效值”错误?
的ORDER_LINE
块使用ORDER.ORDER_ID
项目作为参数来查询它的记录:
ORDERING_PACKAGE.QUERY_ORDER_LINES
程序是decl ARED如下:
PROCEDURE
query_order_lines
(
order_lines IN OUT ORDER_LINE_CURSOR_TYPE,
order_id NUMBER,
line_number VARCHAR2,
bin VARCHAR2,
plu VARCHAR2,
description VARCHAR2
);
当我尝试编译我的Oracle表(按Ctrl + 牛逼),我收到这样的错误:
FRM-30408: Invalid value. Reference: ORDER.ORDER_ID Block: ORDER_LINE Procedure: ORDERING_PACKAGE.QUERY_ORDER_LINES Form: ORDER_FORM FRM-30085: Unable to adjust form for output.
根据该文件,推荐解决方法是:
原因:为指定的数据类型输入的值无效。
操作:校正一个或多个以下的:
- 对应于指定的过程的过程参数列表中的给定值的参数的类型。
- 指定过程的过程参数列表中参数的值。
这些都不建议工作:
- 形式(
NUMBER
)参数的数据类型是相同的过程的参数(NUMBER
)的数据类型。 - 参数(
ORDER.ORDER_ID
)的值也NUMBER
类型(见第一截屏)
如何解决这个问题?
感叹。我希望文档给出了一些这样的例子。 – 2011-01-21 14:22:26