Oracle EBS Interface/API(19)-PO修改行或发运行的单价、数量、需求日期和承诺日期等等
调用API修改标准订单或一揽子发放行或发运行的单价、数量、需求日期和承诺日期等等,实例参考如下:
一、修改发运行API实例:
DECLARELt_Errors Po_Api_Errors_Rec_Type;Lt_Chg Po_Changes_Rec_Type;Lv_Return_Status VARCHAR2(30);Lv_Launch_Approvals_Flag VARCHAR2(30) := 'T';Ln_Org_Id NUMBER := 131;Ln_Po_Header_Id NUMBER := NULL; --Ln_Po_Release_Id NUMBER := 1393066; --一揽子发放标识Ln_Po_Line_Location_Id NUMBER := 7577456; --发运行标识Ln_New_Quantity NUMBER := 1000; --修改数量Ld_New_Promised_Date DATE := NULL; --承诺日期Ln_New_Price NUMBER := NULL; --单价Ld_New_Need_By_Date DATE := To_Date('2009-01-29', 'yyyy-mm-dd'); --修改需求日期Lv_Msg_Data VARCHAR2(20000);
BEGIN--InitMo_Global.Init('PO');Mo_Global.Set_Policy_Context('S', Ln_Org_Id);Lt_Chg := Po_Changes_Rec_Type.Create_Object(p_Po_Header_Id => Ln_Po_Header_Id,p_Po_Release_Id => Ln_Po_Release_Id);--Call ApiLt_Chg.Shipment_Changes.Add_Change(p_Po_Line_Location_Id => Ln_Po_Line_Location_Id,p_Quantity => Ln_New_Quantity,p_Promised_Date => Ld_New_Promised_Date,p_Price_Override => Ln_New_Price,p_Need_By_Date => Ld_New_Need_By_Date);Po_Document_Update_Grp.Update_Document(p_Api_Version => 1.0 -- pass this as 1.0,p_Init_Msg_List => Fnd_Api.g_True -- pass this as TRUE,x_Return_Status => Lv_Return_Status -- returns the result of execution,p_Changes => Lt_Chg -- changes obPr_Lines_Tbl(J). contains all changes intended to be made on document,p_Run_Submission_Checks => Fnd_Api.g_False -- set to TRUE if want to perform submission check,p_Launch_Approvals_Flag => Lv_Launch_Approvals_Flag -- set to TRUE if want to launch approval work flow after making the changes,p_Buyer_Id => NULL -- buyer id,p_Update_Source => NULL -- name of a source who is calling this API. In case of manual call can be passed as NULL,p_Override_Date => NULL,x_Api_Errors => Lt_Errors -- list of errors if any occurred in execution,p_Mass_Update_Releases => NULL);Dbms_Output.Put_Line('Lv_Return_Status :' || Lv_Return_Status);IF Lt_Errors IS NOT NULL THENFOR i IN 1 .. Lt_Errors.Message_Text.Count LOOPLv_Msg_Data := Lt_Errors.Message_Text(i) || ' - ' ||Lt_Errors.Message_Name(i) || '; ' || Lv_Msg_Data;END LOOP;Dbms_Output.Put_Line('Lv_Msg_Data:' || Lv_Msg_Data);END IF;
END;
二、添加或拆分发运行API实例:
DECLARELt_Errors Po_Api_Errors_Rec_Type;Lt_Chg Po_Changes_Rec_Type;Lt_Shipment_Changes Po_Shipments_Rec_Type;Lv_Return_Status VARCHAR2(30);Lv_Launch_Approvals_Flag VARCHAR2(30) := 'F';--Blanket header Ln_Po_Header_Id NUMBER := 9041;--Blanket ReleaseLn_Po_Release_Id NUMBER := 5989;--父(参照)发运行Ln_Parent_Line_Location_Id NUMBER := 47386;--新发运行Ln_Po_Line_Location_Id Po_Tbl_Number := Po_Tbl_Number();--发运数量 Ln_Quantity Po_Tbl_Number := Po_Tbl_Number();--单价Ln_Price_Override Po_Tbl_Number := Po_Tbl_Number();--承诺日期Ln_Promised_Date Po_Tbl_Date := Po_Tbl_Date();--需求日期Ln_Need_By_Date Po_Tbl_Date := Po_Tbl_Date();Ln_Org_Id NUMBER := 101;--发运行Ln_Split_Shipment_Num NUMBER;Lv_Msg_Data VARCHAR2(20000);
BEGIN--to set org context in a R12 envMo_Global.Init('PO');Mo_Global.Set_Policy_Context('S', Ln_Org_Id);Fnd_Global.Apps_Initialize(User_Id => 110, Resp_Id => 96502, Resp_Appl_Id => 20003);SELECT MAX(Pll.Shipment_Num) + 1INTO Ln_Split_Shipment_NumFROM Po_Line_Locations_All PllWHERE Pll.Po_Header_Id = Ln_Po_Header_Id;Ln_Po_Line_Location_Id := Po_Tbl_Number(NULL);Ln_Quantity := Po_Tbl_Number(20000);Ln_Price_Override := Po_Tbl_Number(NULL);Ln_Promised_Date := Po_Tbl_Date(NULL);Ln_Need_By_Date := Po_Tbl_Date(To_Date('2009-01-29', 'yyyy-mm-dd'));-- Create an Object for Shipment Changes-- For Creating New Shipment Line pass p_po_line_location_id as NullLt_Shipment_Changes := Po_Shipments_Rec_Type.Create_Object(p_Po_Line_Location_Id => Ln_Po_Line_Location_Id,p_Quantity => Ln_Quantity,p_Promised_Date => Ln_Promised_Date,p_Price_Override => Ln_Price_Override,p_Parent_Line_Location_Id => Po_Tbl_Number(Ln_Parent_Line_Location_Id),p_Split_Shipment_Num => Po_Tbl_Number(Ln_Split_Shipment_Num),p_Need_By_Date => Ln_Need_By_Date);-- Create an Object for Changes-- po_changes_rec_type constructor takes either po_header_id OR po_release_id to construct the object.-- For release order pass po_release_id only. Lt_Chg := Po_Changes_Rec_Type.Create_Object(p_Po_Header_Id => NULL,p_Po_Release_Id => Ln_Po_Release_Id,p_Shipment_Changes => Lt_Shipment_Changes);-- Now call the change api to execute the above changesPo_Document_Update_Grp.Update_Document(p_Api_Version => 1.0 -- pass this as 1.0,p_Init_Msg_List => Fnd_Api.g_True -- pass this as TRUE,x_Return_Status => Lv_Return_Status -- returns the result of execution,p_Changes => Lt_Chg -- changes obPr_Lines_Tbl(J). contains all changes intended to be made on document,p_Run_Submission_Checks => Fnd_Api.g_False -- set to TRUE if want to perform submission check,p_Launch_Approvals_Flag => Lv_Launch_Approvals_Flag -- set to TRUE if want to launch approval work flow after making the changes,p_Buyer_Id => NULL -- buyer id,p_Update_Source => NULL -- name of a source who is calling this API. In case of manual call can be passed as NULL,p_Override_Date => NULL,x_Api_Errors => Lt_Errors -- list of errors if any occurred in execution,p_Mass_Update_Releases => NULL);--S表示成功,Dbms_Output.Put_Line('Lv_Return_Status :' || Lv_Return_Status);--Error OutputIF Lt_Errors IS NOT NULL THENFOR i IN 1 .. Lt_Errors.Message_Text.Count LOOPLv_Msg_Data := Lt_Errors.Message_Text(i) || ' - ' || Lt_Errors.Message_Name(i) || '; ' ||Lv_Msg_Data;END LOOP;Dbms_Output.Put_Line('Lv_Msg_Data:' || Lv_Msg_Data);END IF;
END;
Oracle EBS Interface/API(19)-PO修改行或发运行的单价、数量、需求日期和承诺日期等等相关推荐
- Oracle EBS Interface/API(22)-PO(标准PO、PBA、一揽子发放和采购申请审批)审批API
背景 随着OA系统慢慢在企业普及,越来越多公司把所有审批类的业务迁移到OA系统中审批,Oracle EBS采购审批也是迁移至OA系统审批流程之一,特别部分关键审批领导,基本上不会使用Oracle EB ...
- Oracle EBS Interface/API(28) - 客制化开发AP付款API
背景 在某项目中,需要把其他系统的AP发票和付款同步至Oracle EBS系统.但是,Oracle官方并没有提供标准AP付款API,需要自行客制化开发AP付款API, 其中,它主要用应场景: 与资金管 ...
- Oracle EBS Interface/API(32) -WIP任务单关闭API
某项MES项目上,任务单完工以后,MES系自动关闭任务单之前,需要把任务单关闭信息同步至EBS系统.因此,需要调用Oracle EBS WIP关闭标准API. 快速参考 参考点 内容 功能导航 N: ...
- Oracle EBS Interface/API(25) - Lookups API
本章介绍如何调用Lookups(快速代码)的API新增和修改配 快速参考 参考点 内容 功能导航 Application Developer>Application>Lookups 并发请 ...
- Oracle EBS Interface/API(20)-PR自动创建一揽子发放实例
PR自动创建一揽子发放实例: DECLARELv_Return_Status VARCHAR2(30);Ln_Msg_Count NUMBER;Lv_Msg_Data VARCHAR2(20000); ...
- Oracle EBS Interface/API(30) -PR取消API
背景 某项目上,用户很少关注自己的未转PO的PR,任意放着不管不问,待上线SRM时,需要取消不需要的PR数据,对于三四百行的数据,用户不想手工一行一行或一单一单取消,需要批量导入取消PR. 快速参考 ...
- Oracle EBS Interface/API(31) -PR最终关闭API
快速参考 参考点 内容 功能导航 N: Puchasing Super User->Requisitions->Requisition Summary Puchasing Super Us ...
- Oracle EBS Interface/API(18) - 标准采购订单、PBA和一揽子发放等等审批API
一.标准采购订单和PBA审批API: DECLARELv_Ret_Status VARCHAR2(30);Ln_Org_Id NUMBER := 101; --业务实体标识Ln_Preparer_Id ...
- Oracle EBS Interface/API(13)-MRP Forcast 创建预测名称和预测物料导入
Forcast预测名称创建和预测物料导入API名:MRP_FORECAST_INTERFACE_PK.MRP_FORECAST_INTERFACE 其参数说明: 如下同时导入多组Forecast预测数 ...
最新文章
- PHP是弱类型语言,自动转换,强制转换
- Windows内存管理学习笔记(二)—— 物理内存的管理
- C/C++输入输出流
- opencv对图像是软解码_C ++ OpenCV解码缓慢
- 01 | 从神经元说起:数学篇
- 主要编程教学语言的讨论
- mysql 删除创建表分区_创建,增加,删除mysql表分区
- Linux 所有版本内核源码下载
- 物业小区管理系统源码
- 实验——田忌赛马c++
- hdmi线推荐微型计算机,几款高清线对比下来,这款mini dp转HDMI最实用
- 分词并去停用词自定义函数:seg_word(sentence)
- MySQL如何统计表格的总行数
- ECshop商品详情页显示可赠送积分和购买使用金额积分
- Android 找不到符号错误
- eSpeak TTS 中英文真人发音引擎
- Nexus私服 (一)
- ESP32WiFi-AP 模式创建 wifi 热点
- 读书笔记--《软技能-代码之外的生存指南》
- sg-uap mysql_SG-UAP常用注解介绍