这其实是个老问题了. 一打开UOM Classes 这个form, 就有错误弹出来
报错的原因可以从下面的SQL 看出来:
select * from mtl_units_of_measure_tl where uom_class = 'Period';
在查出来的结果中, Period 这个UOM class 没有base UOM. 只要给这个class 增加一个base UOM 就可以了.
INSERT INTO mtl_units_of_measure_tl(
UNIT_OF_MEASURE
, UOM_CODE
, UOM_CLASS
, BASE_UOM_FLAG
, UNIT_OF_MEASURE_TL
, LAST_UPDATE_DATE
, LAST_UPDATED_BY
, CREATED_BY
, CREATION_DATE
, DESCRIPTION
, LANGUAGE
, SOURCE_LANG)
VALUES(
'Daily'
, 'D2'
, 'Period'
, 'Y'
, 'Day'
, SYSDATE
, 120
, 120
, SYSDATE
, 'Daily'
, 'US'
, 'US');
一般来说, Period 这个UOM class 的base UOM 应该是 day. 但是Time 这个class 已经存在day 这个UOM 了. 为了防止冲突, 增加的UOM 是D2.
原本的EBS 里面似乎是没有Period 这个class 的, 后来不知什么原因增加了这个, 但是却缺少base UOM. 我们自己的dev 环境上也存在这个问题, 所以猜测所有的环境都存在这个问题.