PA模块报错-实际返回的行数超出请求的行数(分析标准FORM报错解决思路)

录入预算报错时报错:

分析:这个错误是select into 语句返回多行的结果,但具体在哪?

两种方法查找,trace 或者debug

1.trace

启用调试

获取trace文件

-bash-3.2$ tkprof ERPDEV_ora_7532_RICK.trc $HOME/7532_rick.fchela.txt

TKPROF: Release 11.2.0.2.0 - Development on Mon Jul 28 11:21:34 2014

Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.

分析trace文件

TKPROF: Release 11.2.0.2.0 - Development on Mon Jul 28 11:39:10 2014

Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.

Trace file: ERPDEV_ora_7532_RICK.trc

Sort options: default

********************************************************************************

count    = number of times OCI procedure was executed

cpu      = cpu time in seconds executing

elapsed  = elapsed time in seconds executing

disk     = number of physical reads of buffers from disk

query    = number of buffers gotten for consistent read

current  = number of buffers gotten in current mode (usually for update)

rows     = number of rows processed by the fetch or execute call

********************************************************************************

SQL ID: ga9j9xk5cy9s0 Plan Hash: 467424113

select /*+ index(idl_sb4$ i_idl_sb41) +*/ piece#,length,piece

from

idl_sb4$ where obj#=:1 and part=:2 and version=:3 order by piece#

call     count       cpu    elapsed       disk      query    current        rows

------- ------  -------- ---------- ---------- ---------- ----------  ----------

Parse        8      0.00       0.00          0          0          0           0

Execute      8      0.00       0.01          0          0          0           0

Fetch       22      0.01       0.15         12         66          0          14

------- ------  -------- ---------- ---------- ---------- ----------  ----------

total       38      0.01       0.17         12         66          0          14

...........

内容太多找不到出错点

用debug

分析保存时触发器执行顺序

(1)WHEN-V ALIDA TE-RECORD(将页面上的所有数据提交到数据库,若页面上有重复的数据,则提交

第一次时成功但只是将数据先写到数据库中一类似临时表的地方,在提交第二条重复记录的时候报错,执

行事务回滚,原来执行成功的指令也将被撤消)

(2) PRE-INSER T

(3) ON-INSER T

(4) POST-INSER T

(5) POST-FORMS-COMMIT

(6) PRE-BLOCK(BLOCK 级)

(7) KEY-COMMIT

(8) WHEN-NEW-ITEM-INST ANCE

做界面跟踪

好像是在WHEN-V ALIDA TE-RECORD 里面

备份AU_TOP下的fmb文件以及PA_TOP下的fmx文件

在form触发器里debug

发现不是 WHEN-V ALIDA TE-RECORD 里面

在pre-insert以及on-insert外层定位

FND_MESSAGE.DEBUG(‘validate‘);

matrix1.when_validate_record;

FND_MESSAGE.DEBUG(‘end validate‘);

FND_MESSAGE.DEBUG(‘on-insert‘);

matrix5.validate_resource_level;

FND_MESSAGE.DEBUG(‘on-insert -1‘);

matrix.insert_update_record;

FND_MESSAGE.DEBUG(‘end on-insert‘);

发现是在on-insert里面的matrix.insert_update_record;报错

做精确定位

if(:matrix_control.p1 is not null) then

--{

l_period_type_code    := null;

fnd_message.debug(‘ insert_update_record 3‘);

fnd_message.debug(‘ :matrix_control.p1 3:‘||:matrix_control.p1);

select period_type_code into l_period_type_code

from pa_budget_periods_v where period_name = :matrix_control.p1;

fnd_message.debug(‘ insert_update_record 4‘);

找到问题,form被以前开发中修改过,取期间code时没加模块限制,返回多行数据

解决,加模块限制

--modify  by cxy 2014-07-28

select period_type_code into l_period_type_code

from pa_budget_periods_v where period_name = :matrix_control.p1

and period_type_m = ‘PA Period‘;

PA模块报错-实际返回的行数超出请求的行数(分析标准FORM报错解决思路)

时间: 2024-08-10 11:41:40

PA模块报错-实际返回的行数超出请求的行数(分析标准FORM报错解决思路)的相关文章

对服务器端接口的调用,自己手写了一个脚本,但返回信息的中文总是乱码(这个方法很不错,重要的是解决思路,寻找手写脚本与录制脚本 生成目录文件的区别)

对服务器端接口的调用,自己手写了一个脚本,但返回信息的中文总是乱码.在网上搜索了很多方法,包括: 1.Tools->Recording Options->Advanced->勾选Support charset UTF-8 2.Run-time Settings->Browser->Browser Emulation->Change,将language置为中文 3.web_add_auto_header("Accept-Language","

Solidworks api帮助代码报错 “特性说明符不是一个完整的语句。请使用行继续符将该特性应用于下列语句。“的解决办法!

相信大家经常会把solidworks api帮助中的代码直接贴出来直接使用,今天遇到段代码就无法使用.现分享一下经验: <ComVisibleAttribute(True)> _ Public Class clsPropMgr 上面的代码就会报错:"特性说明符不是一个完整的语句.请使用行继续符将该特性应用于下列语句." 怎么解决呢?其实很简单! 解决方法1: 两行合成一行 <ComVisibleAttribute(True)> Public Class clsP

vs报错“以下文件中的行尾不一致,是否将行尾标准化”

vs报错“以下文件中的行尾不一致,是否将行尾标准化” 分析: 通过读取源文件,发现换行都使用的是“\n”   Windows和Unix不同的标准引起的...即“回车”和“换行”的问题... 符号  ASCII码 意义 \n 10 换行NL \r 13 回车CR 在计算机还没有出现之前,有一种叫做电传打字机(Teletype Model 33)的玩意,每秒钟可以打10个字符.但是它有一个问题,就是打完一行换行的时候,要用去0.2秒,正好可以打两个字符.要是在这0.2秒里面,又有新的字符传过来,那么

MO拆分计划行程序中写入PRODUCTIONORDERS表数据出现重复导致报错(BUG)20180502

错误提示:ORA-00001: 违反唯一约束条件 (ABPPMGR.C0248833319_6192)ORA-06512: 在 "STG.FP_MO_SPLIT", line 199  ORA-06512: 在 "STG.FP_MO_SPLIT", line 1318 错误描述:MO拆分计划行程序中写入PRODUCTIONORDERS表数据出现重复导致报错(BUG) 存储过程:FP_MO_SPLIT 解决方法: 原文地址:https://www.cnblogs.co

根据报错信息返回判断系统容器、系统

根据报错信息返回判断系统容器.系统 判断容器 通过构造错误的URL地址,使得网站返回404页面:没有经过处理的就会暴露自己的系统和容器. 这一类是:Windows 2008 R2 IIS7.5/7.0 特征:白底黑字+红字 这一类是:Windows 2003 IIS6.0 特征是:白底黑字 这一类是:Apache Tomcat 特征:白字棕灰底 这一类是:Apache 特征:粗体的Not Found 这一类则是经过人工干预的自定义的美化404页面,无法从此判断容器类型 遇到这类页面可以通过Coo

随笔4:报错:“System.Windows.Markup.XamlParseException”类型的第一次机会异常在 PresentationFramework.dll 中发生 其他信息: “在“System.Windows.Baml2006.TypeConverterMarkupExtension”上提供值时引发了异常。”,行号为“11”,行位置为“18”。

问题描述: “System.Windows.Markup.XamlParseException”类型的第一次机会异常在 PresentationFramework.dll 中发生 其他信息: “在“System.Windows.Baml2006.TypeConverterMarkupExtension”上提供值时引发了异常.”,行号为“11”,行位置为“18”. 解决方案: 修改图片的“属性”页的“高级”中的“生成操作”,从“内容”改为“Resource”: (1)默认 (2)更改: 原文地址:

彻底解决ASP.NET MVC 3 404错误码返回302的问题

转自:http://blog.csdn.net/mycloudke/article/details/9746333 404状态码:,意味着当在页面上显示用户点击不存在,提高用户体验度,搜索引擎会放弃这个页面索引. 302状态码:搜索引擎将继续指数,这将导致大量不同的链接指向同一个页面,它将影响搜索引擎对站点的信任度. http://www.cloudke.com.cn/ 后面随便带些参数或者不存在的文件名,然后跳转到自定义错误页,但返回的状态是302. 解决办法: 第一步: 将web.confi

post数据时报错:远程服务器返回错误: (400) 错误的请求。

网上查了多种方法,有不少说法,报400说是传的数据格式不对,最后的结论确实是数据格式不对. Content_Type为:application/json,配的数据格式有些麻烦,特别数多层,单层还好.例如,我本传的数据是这个的json: { "key1": { "key11": "value11", "key12": "value12" }, "key2": "value2&qu

PA模块常用表

SELECT * FROM pa_projects_all; --项目 SELECT * FROM pa_project_types; --项目类型 SELECT * FROM pa_project_statuses; --项目状态 SELECT * FROM pa_project_options; --项目选项 SELECT * FROM pa_lookups l WHERE l.lookup_type = 'PA_OPTIONS' ; SELECT * FROM pa_project_cus