Oracle Form表单开发的问题
来源:互联网 发布:万方数据库医学论文 编辑:程序博客网 时间:2024/06/02 00:37
Oracle Form表单开发的问题(FRM-40831)
做一个工程用款资金Form,在查询界面可以按日期范围及其他情况
可以查询,其他字段查询时是正确的,但使用时间查询时会出现以
下报错:
“FRM-40831:出现截段:域op_date至太长”,
资料中显示"FRM-40505: ORACLE 错误: 不能执行查询.
--------------------------------------------------------------
ORA-00905: 缺少关键字"
op_date是我的一张表中的一字段:表结构如下:
-- 在CUX表空间中创建数据表
create table CUX.CUX_OLD_PROJECT_ALL
(
op_newid Number Not Null,
op_vendorid Varchar2(150), -- 供应商编码
op_vendorname Varchar2(150), -- 供应商名称
op_snnumber Varchar2(150) Not Null, -- 申请序号
op_date Date, -- 申请用款时间
op_depentment Varchar2(150), -- 申请部门
op_typename Varchar(10) Not Null, -- 月度计划用款
op_project Varchar2(150), -- 项目
op_description Varchar2(150), -- 付款内容
op_types Varchar2(150), -- 支付类型
op_status Varchar2(10) Not Null, -- 合同状态
op_amount Number, -- 合同金额
op_amounts Number, -- 合同累计应付款
op_totals Number, -- 累计已付款
op_checkamount Number, -- 代缴代扣金
op_modiamount Number, -- 保修金
op_amount_non Number, -- 合同未付款
op_amounts_non Number, -- 合同累计未付款
op_recamount Number, -- 本月计划用款
op_memo Varchar2(150), -- 情况说明
op_okamount Number, -- 批准用款金额
op_conamount Number, -- 本月实际支付款
ORG_ID NUMBER default to_number(decode(substrb(userenv('CLIENT_INFO'),1,1),' ',null,substrb(userenv('CLIENT_INFO'),1,10))),
ATTRIBUTE_CATEGORY VARCHAR2(150),
ATTRIBUTE1 VARCHAR2(150),
ATTRIBUTE2 VARCHAR2(150),
ATTRIBUTE3 VARCHAR2(150),
ATTRIBUTE4 VARCHAR2(150),
ATTRIBUTE5 VARCHAR2(150),
ATTRIBUTE6 VARCHAR2(150),
ATTRIBUTE7 VARCHAR2(150),
ATTRIBUTE8 VARCHAR2(150),
ATTRIBUTE9 VARCHAR2(150),
ATTRIBUTE10 VARCHAR2(150),
ATTRIBUTE11 VARCHAR2(150),
ATTRIBUTE12 VARCHAR2(150),
ATTRIBUTE13 VARCHAR2(150),
ATTRIBUTE14 VARCHAR2(150),
ATTRIBUTE15 VARCHAR2(150),
-- WHO字段
LAST_UPDATE_DATE DATE,
LAST_UPDATED_BY NUMBER(15),
CREATION_DATE DATE,
CREATED_BY NUMBER(15),
LAST_UPDATE_LOGIN NUMBER(15)
)
查询的trigger代码入下:
procedure find_query(event in varchar2)
is
begin
if (event='PRE-QUERY') then
-- 查询状态
if (name_in('parameter.G_Query_Find') = 'TRUE' ) then
-- 供应商
if (name_in('CUX_OLD_FIND.VENDOR_ID') is not null) then
copy(name_in('CUX_OLD_FIND.VENDOR_ID'),'CUX_OLD_PROJECTCASH_V.OP_VENDORID');
end if;
--合同状态
if (name_in('CUX_OLD_FIND.OP_STATUS') is not null) then
copy(name_in('CUX_OLD_FIND.OP_STATUS'),'CUX_OLD_PROJECTCASH_V.OP_STATUS');
end if;
-- 日期查询
if (name_in('cux_old_find.date_from1') is not null) then
if (name_in('cux_old_find.date_to1') is not null) then
app_find.query_range(:cux_old_find.date_from1,
:cux_old_find.date_to1,
'CUX_OLD_PROJECTCASH_V.OP_DATE');
else
app_find.query_range(:cux_old_find.date_from1,
sysdate,
'CUX_OLD_PROJECTCASH_V.OP_DATE');
end if;
else
if (name_in('cux_old_find.date_to1') is not null) then
app_find.query_range(to_date('1901-01-01','YYYY-MM-DD')
:cux_old_find.date_to1,
'CUX_OLD_PROJECTCASH_V.OP_DATE');
end if;
end if;
Copy('FALSE', 'parameter.G_Query_Find');
end if;
end if;
end find_query;
查过问题后,觉得是属于Oracle的app_find.query_range有问题,经如下解决:
使用:
GO_BLOCK('CUX_OLD_PROJECTCASH_V');
SET_BLOCK_PROPERTY('CUX_OLD_PROJECTCASH_V',DEFAULT_WHERE,var_default_where);
EXECUTE_QUERY;
抛开app_find.query_range;
- Oracle Form表单开发的问题
- form表单的onsubmit()问题
- form表单的onsubmit()问题
- form表单的onsubmit()问题
- form表单的onsubmit()问题
- form表单的onsubmit()问题
- form表单的相关问题
- form表单的编码问题
- form表单的acton问题
- form表单的onsubmit()不起作用的问题
- Form动态表单设计的开发
- form表单的onsubmit()问题 集合
- html form onsubmit表单提交的问题
- 回车自动提交Form表单的问题
- form表单提交时的target问题
- 关于FORM下的表单提交问题
- form表单提交编码的问题
- form 表单的action参数问题
- [转] 在Gentoo Linux下轻松安装ALSA
- 看了照片有啥想法,别忘了留言阿(就在这个话题后面)
- ORACLE数据库管理员的职责
- IMail Server 8.21 正式版发布
- [7/7更新]Exchange /Windows Server视频录像下载
- Oracle Form表单开发的问题
- Javascript的IE和Firefox兼容性汇编
- 关于使用sping MVC框架进行文件上传的一点感受
- 第一次使用,试试
- 你有自己的“匹萨软件”了吗?
- hibernate字段中的小问题
- Firebird的JDBC驱动在Eclipse里无法装载的问题
- 知识点滴------------
- Windows 2003下的进程隐藏