QQ:886922
P_TABLE => 'mtl_parameters', P_ADDL_W_C => '',
P_WINDOW_CAPTION => 'selecting org code', P_WINDOW_WIDTH => 400, P_WINDOW_HEIGHT => 400, P_TABLE_BLOCK_SIZE => 10, P_TABLE_SORT_ORDER => 'yes,no', P_USER_ID => -1,
MSN:Johnson_hsz@hotmail.com
P_POPLIST_FLAG => '' --- this by default is null and results in Table based LOV, if set to 'Y', it will result in POPLIST.
); end;
参数:
P_APPLICATION_ID P_INTERFACE_CODE P_INTERFACE_COL_NAME 以上三个参数可定位至Excel中的需要使用LOV的栏位 可通过以下SQL查询以上三个栏位的值:
SELECT I.APPLICATION_ID,--P_APPLICATION_ID I.INTEGRATOR_CODE, I.ENABLED_FLAG, T.USER_NAME,
IFC.INTERFACE_CODE, --P_INTERFACE_CODE
IFCC.INTERFACE_COL_NAME -- P_INTERFACE_COL_NAME FROM BNE_INTEGRATORS_B I, BNE_INTEGRATORS_TL T, BNE_INTERFACES_B IFC, BNE_INTERFACE_COLS_B IFCC
WHERE I.APPLICATION_ID = T.APPLICATION_ID AND I.INTEGRATOR_CODE = T.INTEGRATOR_CODE AND I.INTEGRATOR_CODE = IFC.INTEGRATOR_CODE AND IFC.INTERFACE_CODE = IFCC.INTERFACE_CODE AND T.USER_NAME = ' CUX Item Import' --AND T.LANGUAGE = USERENV('LANG');
P_ID_COL P_MEAN_COL P_DESC_COL P_TABLE P_ADDL_W_C 以上5个参数为LOV来源的table及table中的栏位相关。
P_ID_COL为最终写到Table中的栏位,类似于ERP中Value set在设定是的ID栏位,在LOV及Excel中Oracle EBS Customization—Web ADI
31
QQ:886922 MSN:Johnson_hsz@hotmail.com
都看不到该栏位返回的值;P_MEAN_COL为Excel中show的栏位,类似于ERP中Value Set中返回值的Value栏位。当P_ID_COL栏位与P_MEAN_COL栏位不同时,P_ID_COL栏位的值会写到table中,而P_MEAN_COL栏位的值只Show在Excel中,不会写到Table中;P_DESC_COL为Description,如果该参数有指定具体的column,则该栏位也会show在LOV的画面上。P_TABLE为LOV来源的Table,P_ADDL_WC为Where条件,可以卡org_id或生失效日期等
P_WINDOW_CAPTION P_WINDOW_WIDTH P_WINDOW_HEIGHT P_TABLE_BLOCK_SIZE P_TABLE_SORT_ORDER P_WINDOW_CAPTION设定LOV画面的title;P_WINDOW_WIDTH、P_WINDOW_HEIGHT为LOV窗口的宽和高;P_TABLE_BLOCK_SIZE为每页显示的记录条数;P_TABLE_SORT_ORDER可设定排序的栏位,格式为‘yes,no’,第一个‘yes’表示根据P_MEAN_COL排序,第二个‘no’表示不对P_DESC_COL栏位排序
P_USER_ID P_POPLIST_FLAG P_USER_ID为建立LOV的User之ID,对应为fnd_user.user_id. P_POPLIST_FLAG表示LOV的类型,为null时代表弹出视窗的LOV,如果为‘Y’则表示使用pop list。注意,poplist最多只能有256笔记录 3. 执行完上面的API后,运行Excel查看结果如下:
Excel上的Organization Code栏位前面会有个‘*List-Text’的标示,表示这个栏位有LOV,如下图:
双击该栏位,会跳出如下窗口:
Oracle EBS Customization—Web ADI 32
QQ:886922 MSN:Johnson_hsz@hotmail.com
4. 上面的LOV画面只有一个栏位,当有设定P_DESC_COL参数时,LOV的画面会出现两个栏位。下面的例
子为主单位设定LOV,P_ID_COL,P_MEAN_COL,P_DESC_COL参数的值都不同: begin
BNE_INTEGRATOR_UTILS.CREATE_TABLE_LOV (P_APPLICATION_ID => 401,
P_INTERFACE_CODE => 'GENERAL_206_INTF', P_INTERFACE_COL_NAME => 'P_DESCRIPTION', P_ID_COL => 'UNIT_OF_MEASURE', P_MEAN_COL => 'UOM_CODE', P_DESC_COL => 'UOM_CLASS',
P_TABLE => 'MTL_UNITS_OF_MEASURE_TL', P_ADDL_W_C => '',
P_WINDOW_CAPTION => 'selecting Uom code', P_WINDOW_WIDTH => 500, P_WINDOW_HEIGHT => 600, P_TABLE_BLOCK_SIZE => 10, P_TABLE_SORT_ORDER => 'yes', P_USER_ID => -1,
P_POPLIST_FLAG => '' --- this by default is null and results in Table based LOV, if set to 'Y', it will result in POPLIST.
); end;
得到的结果:LOV画面show两个栏位,为UOM_CODE、UOM_CLASS;当挑选完主单位后,Excel中的show的为UOM_CODE,但实际写到table的为UNIT_OF_MEASURE栏位。如下图:
Oracle EBS Customization—Web ADI 33
QQ:886922 MSN:Johnson_hsz@hotmail.com
资料重复是因为没有卡language,需要拉滚动条是因为窗口的高度设定不够。这个可根据实际的情况再调整,记得调整完要重启AP.
7. 待解决问题
7.1 Excel显示Uploading the Document,但是Database已经有值
有时在Upload时,Excel中会显示如下的窗口:
但是Database里面已经有资料。目前不确定是什么问题造成
Oracle EBS Customization—Web ADI 34
QQ:886922
? MSN:Johnson_hsz@hotmail.com
Open/Closed Issues
Open Issues
序号 1. 2. 3. 4. 问题 解决方法 备注
Close Issues
Oracle EBS Customization—Web ADI 35