This content has been marked as final. Show 3 replies
I would avoid using the API INV_ITEM_PVT. As the name suggests, the _PVT routines are used by Oracle.
We should use the _PUB routines as much as possible.
You can always create the org assignment and then make the flexfield values as null.
instead of using the assignment pub, you can use process_items_pub for org item creation and make the flexfield values =null in the Item_Tbl_Type record.
I wanted to use the second solution but in fact, if the DFF has a value on the master, If I put null in the Item_Tbl_Type record , the value from the master is used on the org level , if I put another value in the Item_Tbl_Type record , the new value was used.
This API seems to use the interface program and follows this rule :
++Item DFF attribute is always controlled at the org level, so each org can have different values for it. However, if the value is not specified for the child org, then Oracle defaults the value from the master++
++Populate mtl_system_items_interface with a master org value for the DFF. Do NOT populate child org with any value for the DFF. The DFF in the child org will get populated with the same value as in master org.++
++Populate mtl_system_items_interface with a master org value for the DFF.++
++Populate the child org record with a value for the DFF which is different from that defined in the master org. The DFF in the child org will keep the value populated in the child record.++
So finally I mixed the both solutions :
use process_items_pub for org item creation
and update the DFF after.