转自 http://blog.csdn.net/zeewjj/article/details/7941525
REPORT ztest.

DATA:l_kbetr LIKE konp-kbetr.
l_kbetr = '999999'.
*UPDATE konp SET kbetr = l_kbetr  WHERE knumh = '0002394137'.
DATA:it_condct LIKE TABLE OF bapicondct WITH HEADER LINE,
     it_condhd LIKE TABLE OF bapicondhd WITH HEADER LINE,
     it_condit LIKE TABLE OF bapicondit WITH HEADER LINE,
     it_condqs LIKE TABLE OF bapicondqs WITH HEADER LINE,
     it_condvs LIKE TABLE OF bapicondvs WITH HEADER LINE,
     it_ret_mes LIKE TABLE OF bapiret2  WITH HEADER LINE,
     it_knumhs  LIKE TABLE OF bapiknumhs WITH HEADER LINE,
     it_mem_initial LIKE TABLE OF cnd_mem_initial WITH HEADER LINE.

*& 条件价格赋值,需要填充TI_BAPICONDCT,TI_BAPICONDHD,TI_BAPICONDIT.

it_condct-table_no = '017'.
it_condct-cond_usage = 'A'.
it_condct-cond_type  = 'PB00'.
it_condct-applicatio = 'M'.
it_condct-operation  = '004'.

it_condct-cond_no    = '0002394137'.
it_condct-valid_from = 20090907.
it_condct-valid_to   = 99991231.

DATA:l_lifnr LIKE eina-lifnr,
     l_matnr LIKE eina-matnr,
     l_key   LIKE bapicondct-varkey.
l_lifnr = '0000001108'.
l_matnr = '5940-01972'.

CONCATENATE l_lifnr l_matnr INTO l_key.
CONCATENATE l_key '1000' INTO l_key SEPARATED BY ''.
CONCATENATE l_key '1000' '0' INTO l_key.
it_condct-varkey = l_key.
APPEND it_condct.

it_condhd-cond_no = '0002394137'.
it_condhd-operation = '004'.
it_condhd-cond_usage = 'A'.
it_condhd-table_no   = '017'.
it_condhd-applicatio = 'M'.
it_condhd-cond_type  = 'PB00'.
it_condhd-varkey     = l_key.
it_condhd-valid_from = 20090907.
it_condhd-valid_to   = 99991231.
APPEND it_condhd.

it_condit-cond_no = '0002394137'.
it_condit-operation = '004'.
it_condit-cond_count = '01'.
it_condit-applicatio = 'M'.
it_condit-cond_type  = 'PB00'.
it_condit-scaletype  = 'A'.
it_condit-conditidx  = '01'.
it_condit-cond_p_unt = '1'.
it_condit-cond_unit  = 'SET'.
PERFORM convert_into_input CHANGING it_condit-cond_unit.
it_condit-calctypcon = 'C'.
it_condit-exclusion  = 'X'.
it_condit-pmnttrms   = ''.
it_condit-condcurr   = 'CNY'.

it_condit-cond_value = l_kbetr.

APPEND it_condit.

CALL FUNCTION 'BAPI_PRICES_CONDITIONS'
  TABLES
    ti_bapicondct  = it_condct
    ti_bapicondhd  = it_condhd
    ti_bapicondit  = it_condit
    ti_bapicondqs  = it_condqs
    ti_bapicondvs  = it_condvs
    to_bapiret2    = it_ret_mes
    to_bapiknumhs  = it_knumhs
    to_mem_initial = it_mem_initial
  EXCEPTIONS
    update_error   = 1
    OTHERS         = 2.
IF sy-subrc = 0.
  CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'.

ENDIF.

DATA:it_einex LIKE TABLE OF  eine WITH HEADER LINE,
     it_einax LIKE TABLE OF eina WITH HEADER LINE,
     it_einay LIKE TABLE OF eina WITH HEADER LINE ,
     it_einey LIKE TABLE OF eine WITH HEADER LINE,
     it_reg_eina LIKE TABLE OF eina WITH HEADER LINE.

SELECT SINGLE *
INTO it_einay
FROM eina
WHERE infnr = '5300268905'.

it_einax = it_einay.
it_reg_eina = it_einax.

SELECT *
INTO TABLE it_einey
FROM eine
WHERE infnr = '5300268905'.

LOOP AT it_einey.
  it_einex = it_einey.
  it_einex-netpr = l_kbetr.
  it_einex-effpr = l_kbetr.
  APPEND it_einex.

ENDLOOP.

CALL FUNCTION 'ME_UPDATE_INFORECORD' IN UPDATE TASK
  EXPORTING
    xeina    = it_einax
    xeine    = it_einex
    yeina    = it_einay
    yeine    = it_einey
    reg_eina = it_reg_eina.

CLASS cl_badi_mm DEFINITION LOAD.
DATA:l_exit TYPE REF TO if_ex_me_inforec_send.
DATA:it_eina_n TYPE mmpr_einau,
     it_eina_o TYPE mmpr_eina,
     it_eine_n TYPE mmpr_eineu,
     it_eine_o TYPE mmpr_eine ,
     wa_eina_n LIKE LINE OF it_eina_n,
     wa_eine_n LIKE LINE OF it_eine_n,
     wa_eina_o LIKE LINE OF it_eina_o,
     wa_eine_o LIKE LINE OF it_eine_o.

DATA: maxmenge LIKE ekpo-menge VALUE '9999999999'.

l_exit ?= cl_badi_mm=>get_instance( 'ME_INFOREC_SEND' ).
IF NOT l_exit IS INITIAL.

IF NOT  it_einax  IS INITIAL.

MOVE-CORRESPONDING it_einax TO   wa_eina_n.
    APPEND wa_eina_n TO it_eina_n.
    MOVE-CORRESPONDING it_einax TO wa_eina_o.
    APPEND wa_eina_o TO it_eina_o.

ENDIF.

IF NOT  it_einex  IS INITIAL.
    MOVE-CORRESPONDING it_einex  TO   wa_eine_n.
    MOVE 'U' TO  wa_eine_n-kz.
    APPEND wa_eine_n TO it_eine_n.
    MOVE-CORRESPONDING it_einey TO wa_eine_o.
    APPEND wa_eine_o TO it_eine_o.
  ENDIF.

CALL METHOD l_exit->send_changes
    EXPORTING
      n_eina        = it_eina_n
      o_eina        = it_eina_o
      n_eine        = it_eine_n
      o_eine        = it_eine_o
    EXCEPTIONS
      error_in_send = 1.
ENDIF.

COMMIT WORK.
*&---------------------------------------------------------------------*
*&      Form  CONVERT_INTO_INPUT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*      <--P_IT_CONDIT_COND_UNIT  text
*----------------------------------------------------------------------*
FORM convert_into_input  CHANGING p_cond_unit.

CALL FUNCTION 'CONVERSION_EXIT_CUNIT_INPUT'
    EXPORTING
      input          = p_cond_unit
      language       = sy-langu
    IMPORTING
      output         = p_cond_unit
    EXCEPTIONS
      unit_not_found = 1
      OTHERS         = 2.

ENDFORM.                    " CONVERT_INTO_INPUT

me12里更改信息记录的净价和有效价格,以及信息记录的条件价格的更多相关文章

  1. SNF快速开发平台3.0之--系统里广播的作用--迅速及时、简明扼要的把信息发送给接收者

    广播信息,即速度快捷.迅速及时.简明扼要的把信息发送给接收者. 当然在SNF快速开发平台上你也可以作为公告使用.不管当做什么使用要满足以下需求: 简单操作:页面操作简单 只需要输入内容就可以发送. 灵 ...

  2. Android记录3--ExpandableListView使用+获取SIM卡状态信息

    Android记录3--ExpandableListView使用+获取SIM卡状态信息 2013年8月9日Android记录 ExpandableListView是一个可以实现下拉列表的控件,大家可能 ...

  3. 如何更改/删除magento首页产品/广告图片等模块信息

    如何更改/删除magento首页产品/广告图片等模块信息,如果只是修改一些简单的地方,例如已经存在 的左右栏目里面的图片内容等,是很简单的,直接在后台就可以修改的,具体如下: 如何删除magento首 ...

  4. NetFlow是一种数据交换方式,提供网络流量的会话级视图,记录下每个TCP/IP事务的信息

    NetFlow是一种数据交换方式,提供网络流量的会话级视图,记录下每个TCP/IP事务的信息.也许它不能象tcpdump那样提供网络流量的完整记录,但是当汇集起来时,它更加易于管理和易读.Netflo ...

  5. django模板中变更数据库信息后,如何把变更后的信息同步更新到数据库

    我们在基于django开发项目的过程中,经常会遇到数据库表字段增加,删除,或者修改的情况,以及字段属性更改的情况,因为django基于ORM模式来操作数据库的, 传统上如果django项目中的数据库m ...

  6. 性能优化——统计信息——SQLServer自动更新和自动创建统计信息选项

    原文:性能优化--统计信息--SQLServer自动更新和自动创建统计信息选项 原文译自:http://www.mssqltips.com/sqlservertip/2766/sql-server-a ...

  7. SQLServer中使用扩展事件获取Session级别的等待信息以及SQLServer 2016中Session级别等待信息的增强

    本文出处:http://www.cnblogs.com/wy123/p/6835939.html 什么是等待 简单说明一下什么是等待:当应用程序对SQL Server发起一个Session请求的时候, ...

  8. 5G信令(就是用户身份信息)——手机开机后,先从USIM中读取之前运营商分配的临时身份信息GUTI/TMSI,发送携带该身份信息的信令给基站,请求接入运营商网络。

    5G时代,跟IMSI-CATCHER SAY GOODBYE from:https://unicorn.360.com/blog/2018/04/18/GoodBye_5G_IMSI-Catcher/ ...

  9. [统计信息系列7] Oracle 11g的自动统计信息收集

    (一)统计信息收集概述 在Oracle 11g中,默认有3个自动任务,分别是:自动统计信息收集.SQL调优顾问.段空间调整顾问,查看方法如下: SQL> SELECT CLIENT_NAME,T ...

随机推荐

  1. linux中判断符号[]注意事项

    1.中括号[]内的每个组件都需要有空格键来分割: 2.在中括号内的变量,最好都一双引号括号起来: 3.在中括号内的常量,最好都以单引号或双引号括号起来.

  2. 关于rtsp转码rtmp播放的两种方式,客户端直接转,远程服务器转

    需求 一.场景 用户多家门店有监控探头,设备是海康的和大华的.用户总部和门店不在一个网络下,并且总部要能实时调用查看门店监控,和门店回放画面.我们知道监控摄像机获取的视频是 rtsp 流的格式. 只能 ...

  3. Spring使用Cache、整合Ehcache(转)

    Spring使用Cache 从3.1开始,Spring引入了对Cache的支持.其使用方法和原理都类似于Spring对事务管理的支持.Spring Cache是作用在方法上的,其核心思想是这样的:当我 ...

  4. js函数的Json写法

    https://zhidao.baidu.com/question/83401454.html

  5. Ubuntu搭建Http服务器

    一句命令: sudo apt-get install apache2 产生的启动和停止文件是:/etc/init.d/apache2 启动:sudo apache2ctl -k start 停止:su ...

  6. Session对象失效的客户端解决方法

    ASP(Active Server Pages)技术的Session对象用于存储用户在对话期间的私有信息.当前用户的Session对象中定义的变量和对象能在页面之间共享,但是不能为应用中其他用户所访问 ...

  7. iOS之手势滑动返回功能

    iOS中如果不自定义UINavigationBar,通过手势向右滑是可以实现返回的,这时左边的标题文字提示的是上一个ViewController的标题,如果需要把文字改为简约风格,例如弄过箭头返回啥的 ...

  8. 中兴应用之星携手天翼开放平台:让APP开发更简单

    日前,业内率先的APP开发平台运营商中兴应用之星与中国电信天翼开放平台达成战略合作.即广大用户通过天翼开放平台,可直接享受到应用之星提供的"APP开发服务".   应用之星.中兴通 ...

  9. C语言 结构体篇

    结构体:是一种构造类型 它是由若干成员组成的 其中每一个成员都可以是一个基本数据类型或者又是一个构造类型 定义结构体变量后,系统就会为其自动分配内存 为了便于更大的程序便于修改和使用  常常将结构体类 ...

  10. Spring利用propertyConfigurer类 读取.property数据库配置文件

    (1).基本的使用方法是: <bean id="propertyConfigurerForAnalysis" class="org.springframework. ...