调用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修改行或发运行的单价、数量、需求日期和承诺日期等等相关推荐

  1. Oracle EBS Interface/API(22)-PO(标准PO、PBA、一揽子发放和采购申请审批)审批API

    背景 随着OA系统慢慢在企业普及,越来越多公司把所有审批类的业务迁移到OA系统中审批,Oracle EBS采购审批也是迁移至OA系统审批流程之一,特别部分关键审批领导,基本上不会使用Oracle EB ...

  2. Oracle EBS Interface/API(28) - 客制化开发AP付款API

    背景 在某项目中,需要把其他系统的AP发票和付款同步至Oracle EBS系统.但是,Oracle官方并没有提供标准AP付款API,需要自行客制化开发AP付款API, 其中,它主要用应场景: 与资金管 ...

  3. Oracle EBS Interface/API(32) -WIP任务单关闭API

    某项MES项目上,任务单完工以后,MES系自动关闭任务单之前,需要把任务单关闭信息同步至EBS系统.因此,需要调用Oracle EBS WIP关闭标准API. 快速参考 参考点 内容 功能导航 N: ...

  4. Oracle EBS Interface/API(25) - Lookups API

    本章介绍如何调用Lookups(快速代码)的API新增和修改配 快速参考 参考点 内容 功能导航 Application Developer>Application>Lookups 并发请 ...

  5. Oracle EBS Interface/API(20)-PR自动创建一揽子发放实例

    PR自动创建一揽子发放实例: DECLARELv_Return_Status VARCHAR2(30);Ln_Msg_Count NUMBER;Lv_Msg_Data VARCHAR2(20000); ...

  6. Oracle EBS Interface/API(30) -PR取消API

    背景 某项目上,用户很少关注自己的未转PO的PR,任意放着不管不问,待上线SRM时,需要取消不需要的PR数据,对于三四百行的数据,用户不想手工一行一行或一单一单取消,需要批量导入取消PR. 快速参考 ...

  7. Oracle EBS Interface/API(31) -PR最终关闭API

    快速参考 参考点 内容 功能导航 N: Puchasing Super User->Requisitions->Requisition Summary Puchasing Super Us ...

  8. Oracle EBS Interface/API(18) - 标准采购订单、PBA和一揽子发放等等审批API

    一.标准采购订单和PBA审批API: DECLARELv_Ret_Status VARCHAR2(30);Ln_Org_Id NUMBER := 101; --业务实体标识Ln_Preparer_Id ...

  9. Oracle EBS Interface/API(13)-MRP Forcast 创建预测名称和预测物料导入

    Forcast预测名称创建和预测物料导入API名:MRP_FORECAST_INTERFACE_PK.MRP_FORECAST_INTERFACE 其参数说明: 如下同时导入多组Forecast预测数 ...

最新文章

  1. PHP是弱类型语言,自动转换,强制转换
  2. Windows内存管理学习笔记(二)—— 物理内存的管理
  3. C/C++输入输出流
  4. opencv对图像是软解码_C ++ OpenCV解码缓慢
  5. 01 | 从神经元说起:数学篇
  6. 主要编程教学语言的讨论
  7. mysql 删除创建表分区_创建,增加,删除mysql表分区
  8. Linux 所有版本内核源码下载
  9. 物业小区管理系统源码
  10. 实验——田忌赛马c++
  11. hdmi线推荐微型计算机,几款高清线对比下来,这款mini dp转HDMI最实用
  12. 分词并去停用词自定义函数:seg_word(sentence)
  13. MySQL如何统计表格的总行数
  14. ECshop商品详情页显示可赠送积分和购买使用金额积分
  15. Android 找不到符号错误
  16. eSpeak TTS 中英文真人发音引擎
  17. Nexus私服 (一)
  18. ESP32WiFi-AP 模式创建 wifi 热点
  19. 读书笔记--《软技能-代码之外的生存指南》
  20. sg-uap mysql_SG-UAP常用注解介绍

热门文章

  1. fat32转ntfs
  2. Unicode简介(转)
  3. 即时通信-环信API方法
  4. js移动端协议书弹窗(layer)
  5. [含论文+源码等]Javaweb医院分诊挂号管理系统SSH
  6. Java修炼之凡界篇 筑基期 第03卷 流程控制 第03话 选择结构
  7. 显示网络没有服务器地址,tcp/ip cp报告了错误738:服务器没有指派地址
  8. 什么是电弧光?电弧光保护的重要性
  9. 听我瞎说--路指人仙
  10. 函数式编程中的组合子