版权声明:本文为博主原创文章。未经博主同意不得转载。 https://blog.csdn.net/gh320/article/details/36666133


新增和更新价目表行

--目的:在已有的价目表头基础上,添加行信息
--限制:该api有些问题。假设强制添加头信息。会有非常多问题,所以该样例仅仅是在已有头信息基础上,添加行信息
--须要手动传參的部分:见凝视
--注意事项:无需模拟登陆
DECLARE
  p_list_header_id          NUMBER(10 );
  p_inventory_item_id       NUMBER(10 );
  p_product_uom_code        VARCHAR2(50 );
  p_primary_uom_flag        VARCHAR2(50 );
  p_operand                 NUMBER(10 );
  p_start_active_date       DATE;
  p_end_active_date         DATE;
  x_return_status           VARCHAR2(10 );
  x_msg_count               NUMBER(10 );
  x_msg_data                VARCHAR2(2000 );
  l_price_list_rec          qp_price_list_pub.price_list_rec_type;
  l_price_list_line_tbl     qp_price_list_pub.price_list_line_tbl_type;
  l_pricing_attr_tbl        qp_price_list_pub.pricing_attr_tbl_type;
  x_price_list_rec          qp_price_list_pub.price_list_rec_type;
  x_price_list_val_rec      qp_price_list_pub.price_list_val_rec_type;
  x_price_list_line_tbl     qp_price_list_pub.price_list_line_tbl_type;
  x_price_list_line_val_tbl qp_price_list_pub.price_list_line_val_tbl_type;
  x_qualifiers_tbl          qp_qualifier_rules_pub.qualifiers_tbl_type;
  x_qualifiers_val_tbl      qp_qualifier_rules_pub.qualifiers_val_tbl_type;
  x_pricing_attr_tbl        qp_price_list_pub.pricing_attr_tbl_type;
  x_pricing_attr_val_tbl    qp_price_list_pub.pricing_attr_val_tbl_type;
BEGIN
  l_price_list_rec.list_header_id := p_list_header_id; -- 业务实体 +  价目表名称  确定
  l_price_list_rec.list_type_code := 'PRL'; --
固定
  l_price_list_rec.operation      := qp_globals.g_opr_update; --固定
  l_price_list_line_tbl( 1).list_header_id
:= p_list_header_id; -- 业务实体 +  价目表名称  确定
  l_price_list_line_tbl( 1).list_line_id
:= fnd_api.g_miss_num;
  l_price_list_line_tbl( 1).list_line_type_code
:= 'PLL' ; -- 固定
  l_price_list_line_tbl( 1).operation
:= qp_globals.g_opr_create; -- 固定
  l_price_list_line_tbl( 1).operand
:= p_operand; -- 值
  l_price_list_line_tbl( 1).arithmetic_operator
:= 'UNIT_PRICE' ; --  固定
  l_price_list_line_tbl( 1).start_date_active
:= p_start_active_date; --  直接传入    起始日期
  l_price_list_line_tbl( 1).end_date_active
:= p_end_active_date; --  直接传入    截止日期
  l_price_list_line_tbl( 1).organization_id
:= NULL ; -- 直接传空
  l_price_list_line_tbl( 1).primary_uom_flag
:= p_primary_uom_flag; --------依据  主要单位  直接传入
  /*  l_price_list_line_tbl(1).end_date_active := '24-12-2013'; --直接传入varchar    截止日期
  */
  l_pricing_attr_tbl( 1).pricing_attribute_id
:= fnd_api.g_miss_num;
  l_pricing_attr_tbl( 1).list_line_id
:= fnd_api.g_miss_num;
  l_pricing_attr_tbl( 1).product_attribute_context
:= 'ITEM' ; -- 固定
  l_pricing_attr_tbl( 1).product_attribute
:= 'PRICING_ATTRIBUTE1' ; --固定
  l_pricing_attr_tbl( 1).product_attr_value
:= p_inventory_item_id; --         传入  inventory_item_id
  l_pricing_attr_tbl( 1).product_uom_code
:= p_product_uom_code; --直接传入 单位
  l_pricing_attr_tbl( 1).excluder_flag
:= 'N' ; -- ?  临时固定
  l_pricing_attr_tbl( 1).attribute_grouping_no
:= 1 ; --固定
  l_pricing_attr_tbl( 1).price_list_line_index
:= 1 ; --固定
  l_pricing_attr_tbl( 1).operation
:= qp_globals.g_opr_create; -- 固定
  qp_price_list_pub.process_price_list(p_api_version_number      => 1,
                                       p_init_msg_list           => fnd_api.g_true,
                                       p_return_values           => fnd_api.g_false,
                                       p_commit                  => fnd_api.g_false,
                                       x_return_status           => x_return_status,
                                       x_msg_count               => x_msg_count,
                                       x_msg_data                => x_msg_data,
                                       p_price_list_rec          => l_price_list_rec,
                                       p_price_list_line_tbl     => l_price_list_line_tbl,
                                       p_pricing_attr_tbl        => l_pricing_attr_tbl,
                                       x_price_list_rec          => x_price_list_rec,
                                       x_price_list_val_rec      => x_price_list_val_rec,
                                       x_price_list_line_tbl     => x_price_list_line_tbl,
                                       x_qualifiers_tbl          => x_qualifiers_tbl,
                                       x_qualifiers_val_tbl      => x_qualifiers_val_tbl,
                                       x_pricing_attr_tbl        => x_pricing_attr_tbl,
                                       x_pricing_attr_val_tbl    => x_pricing_attr_val_tbl,
                                       x_price_list_line_val_tbl => x_price_list_line_val_tbl);
  IF x_return_status = fnd_api.g_ret_sts_success THEN
    dbms_output.put_line( 'x_return_status:' ||
x_return_status);
    dbms_output.put_line( '新增成功');
  ELSE
    dbms_output.put_line( 'x_return_status:' ||
x_return_status);
    dbms_output.put_line( '新增出错');
  END IF;
END;

EBS-新增和更新价目表行的更多相关文章

  1. INSERT INTO .. ON DUPLICATE KEY更新多行记录

    现在问题来了,如果INSERT多行记录, ON DUPLICATE KEY UPDATE后面字段的值怎么指定?要知道一条INSERT语句中只能有一个ON DUPLICATE KEY UPDATE,到底 ...

  2. sharepoint更新多行文本webparth

    前台 <script> function Copy() { var value = document.getElementById("<%=BodyBox.ClientID ...

  3. Java操作属性文件,支持新增或更新多个属性

    Java操作属性文件.支持新增或更新多个属性 一.更新或新增单个属性的方法 /** * 写入properties信息 * @param filePath 绝对路径(包含文件名称和后缀名) * @par ...

  4. MyBatis批量新增和更新

    之前有开发任务一个接口里面有大量的数据新增和更新操作,导致十分缓慢.使用了批量操作之后速度有明显提升,几乎百倍千倍的速度提升. 博主之前统计过,通过普通接口一次数据库插入大概需要200ms,对于大量新 ...

  5. mysql批量新增或者更新

    1.批量更新或者新增 1.单个新增或者更新 keyProperty新增完之后返回Id值

  6. Mybatis入门教程之新增、更新、删除功能_java - JAVA

    文章来源:嗨学网 敏而好学论坛www.piaodoo.com 欢迎大家相互学习 上一节说了Mybatis的框架搭建和简单查询,这次我们来说一说用Mybatis进行基本的增删改操作: 一. 插入一条数据 ...

  7. Amazon EBS的功能更新

    Amazon EBS(Elastic Block Store.简称EBS) 为 Amazon EC2 实例提供块级存储服务.EBS 卷须要通过网络訪问,而且能独立于实例的生命周期而存在.也就是说假如E ...

  8. update更新多行数据(oracle)

    转自:http://blog.itpub.net/25322446/viewspace-767505 说明:笔记总结了在工作中遇到过的几种update方法和各种方法适用的范围. 1.单表更新方案:使用 ...

  9. Solr 新增、更新、删除索引

    solr-admin新增索引 [索引中无则新增,有则更新] 1.在doc标签和field标签中增加权重(boost),增加权重后,可以在搜索的时候做权重过滤. <add> <doc ...

随机推荐

  1. C# 语句 分支语句 switch----case----.

    第二种分支语句  switch..case. switch(一个变量){ case 值:要执行的代码段;break; case 值:要执行的代码段;break; ... ... ... default ...

  2. yarn 工作原理(2)

    1.client向yarn提交job,首先找ResourceManager分配资源, 2.ResourceManager开启一个Container,在Container中运行一个Application ...

  3. C# Why does '+' + a short convert to 44

    I have a line of code that looks like this: MyObject.PhoneNumber = '+' + ThePhonePrefix + TheBizNumb ...

  4. Matlab adaptive quadrature

    % script to perform adaptive quadrature clear all, close all global pts % function to be integrated ...

  5. 实现Java Socket 客户端服务端交互实例

    SocketService.java package socket; import java.io.BufferedReader; import java.io.IOException; import ...

  6. 微信跳一跳Python辅助无需配置一键操作

    作者:NiceCui 本文谢绝转载,如需转载需征得作者本人同意,谢谢. 本文链接:http://www.cnblogs.com/NiceCui/p/8350329.html 邮箱:moyi@moyib ...

  7. vue和webpack打包 项目相对路径修改

    一般vue使用webpack打包是整个工程的根目录,但是很多情况下都是把vue打包后的文件在某子目录下. 修改: 1,打开index.js assetsPublicPath:'/' 改为: asset ...

  8. python自动化开发-5

    列表生成式 生成器 迭代器 列表生成式   举个例子 列表[0, 1, 2, 3, 4, 5, 6],要求把列表里的每个值加1,如何实现呢? L=[0, 1, 2, 3, 4, 5, 6] a={i+ ...

  9. 【转】用yum只下载rpm包而不安装

    转自:http://liucheng.name/1950/ CentOS用yum安装软件是非常方便的,有时,我们只需要下载其中的rpm包,而不直接安装时咋办呢? 一般情况下,yum是不提供只下载的功能 ...

  10. ios开发GCD(2)-dispatch_semaphore_t信号量计数器

    思考:现在有多个线程异步执行,我们想要同时最多只能执行2个或n个,该怎么办? dispatch_semaphore_t 看代码解析: NSLog(@"开始"); dispatch_ ...