在此次情况中,业务顾问就给我提供了一张客户公司客户化的Form,然后让找出界面上的数据是怎样生成的。
首先我们从EBS form 界面上找到了界面的数据来源于一张表ks_so_line_margin_all
A:--------------------------------
然后找出与这张表相关的数据库对象:
SELECT * FROM dba_dependencies t WHERE t.referenced_name = 'KS_SO_LINE_MARGIN_ALL';
查询结果中包含了一个package和一张同名表;
同名表就不需要继续追踪了,
B:--------------------------------
根据package,我们查看是不是可执行调用的程序包,是哪一个可执行在调用的程序包:
SELECT *
FROM fnd_executables_vl t
WHERE upper(t.execution_file_name) LIKE '%KS_OM_MARGIN_PKG%';
结果却是存在一条记录,说明有一个可执行调用的该package;
如果没有结果,则有可能form中直接调用的该package,如果是遇到这种情况,我们查找时就比较费劲了,需要逐个查看form中的代码了。
C:---------------------------------
根据可执行查看有哪些并发请求调用了该可执行:
SELECT * FROM fnd_concurrent_programs_vl t WHERE t.executable_id = 12719;