问题描述:使用BAPI:BAPI_PO_CREATE1创建PO时,出现单价比传入金额大10倍的问题。

解决方法:在table:pocond;pocondx增加币种传参

示例:

LOOP AT lt_alv2.
    "订单抬头
    CLEAR:poheader,poheaderx,po_no.
*  poheader-po_number = .    "采购订单
    poheader-comp_code = lt_alv2-bukrs.    "公司代码
    IF lt_alv2-lifnr+4(1) = '0'.
      poheader-doc_type  = 'Z02'.    "订单类型
    ELSE.
      poheader-doc_type  = 'Z04'.    "订单类型
    ENDIF.
    poheader-vendor    = lt_alv2-lifnr.    "供应商.
    poheader-doc_date  = sy-datum.    "采购凭证日期
    poheader-purch_org = lt_alv2-ekorg.    "采购组织
    poheader-pur_group = lt_alv2-ekgrp.    "采购组
*    poheader-pmnttrms  = lt_alv2-zterm.    "付款条件
    poheader-currency  = lt_alv2-waers.    "币别
*    poheader-ref_1     = lt_alv2-ihrez.    "您的参考
*    poheader-our_ref    = lt_alv2-ebeln.    "我们的参考
*  poheader-collect_no = lt_alv2-submi.    "汇总号
    poheader-langu = sy-langu.  "语言代码
    poheader-pmnttrms  = lt_alv2-zterm.

*  poheaderx-po_number =  c_x.
    poheaderx-comp_code =  c_x.
    poheaderx-doc_type  =  c_x.
    poheaderx-vendor    =  c_x.
    poheaderx-doc_date  =  c_x.
    poheaderx-purch_org =  c_x.
    poheaderx-pur_group =  c_x.
*    poheaderx-pmnttrms  =  c_x.
    poheaderx-currency  =  c_x.
*  poheaderx-ref_1       =  c_x.
*  poheaderx-sales_pers  = c_x.
*    poheaderx-our_ref     =  c_x.
*  poheaderx-collect_no  =  c_x.
    poheaderx-langu       = c_x.           "语言代码
    poheaderx-pmnttrms  = c_x.

**行项目/计划行
    CLEAR:poitem[],poitemx[],lv_ebelp,posched[],poschedx[],pocond[],pocondx[],return[].
    LOOP AT gt_alv2 INTO gs_alv2 WHERE ebeln = lt_alv2-ebeln.
      lv_ebelp = lv_ebelp + 10.
      CLEAR:poitem,poitemx,posched,poschedx,pocond,pocondx.

poitem-po_item     = lv_ebelp. "采购订单行项目
      poitemx-po_item    = lv_ebelp. "采购订单行项目
      poitem-acctasscat  = gs_alv2-knttp. "科目分配类别
      poitemx-acctasscat = c_x.          "科目分配类别
      poitem-item_cat    = gs_alv2-pstyp. "项目类别
      poitemx-item_cat   = c_x.          "项目类别
      poitem-material    = gs_alv2-matnr. "物料
      poitemx-material   = c_x .         "物料
      poitem-short_text  = gs_alv2-txz01. "行项目文本
      poitemx-short_text = c_x.          "行项目文本
      poitem-quantity    = gs_alv2-menge. "采购订单数量
      poitemx-quantity   = c_x .         "采购订单数量
      poitem-po_unit     = gs_alv2-meins. "订单单位
      poitemx-po_unit    = c_x.          "订单单位
      poitem-net_price   = gs_alv2-netpr. "价格
      poitemx-net_price  = c_x.          "价格
      poitem-price_unit  = gs_alv2-peinh ."价格单位
      poitemx-price_unit = c_x .         "价格单位
      poitem-orderpr_un  = gs_alv2-meins ."订单价格单位(采购).
      poitemx-orderpr_un = c_x .         "订单价格单位(采购).
      poitem-plant       = gs_alv2-werks. "工厂
      poitemx-plant      = c_x.          "工厂
      poitem-tax_code    = gs_alv2-mwskz. "税码
      poitemx-tax_code   = c_x.          "税码
      poitem-ret_item    = 'X'.         "退货项目
      poitemx-ret_item   = c_x.          "退货项目

APPEND poitem.
      APPEND poitemx.

posched-po_item        = lv_ebelp. "订单行项目
      posched-sched_line     = '0001'.       "计划行
      posched-delivery_date  = sy-datum. "交货日期
      posched-quantity       = gs_alv2-menge. "交货数量
      APPEND posched.
      poschedx-po_item       = lv_ebelp.
      poschedx-sched_line    = '0001'.
      poschedx-po_itemx      = c_x.
      poschedx-sched_linex   = c_x.
      poschedx-delivery_date = c_x.
      poschedx-quantity      = c_x.
      APPEND poschedx.

IF gs_alv2-netpr > 0 AND poheader-doc_type  = 'Z04'.
        pocond-itm_number = lv_ebelp.
        pocond-cond_st_no = '001'.
        pocond-cond_type  = 'PBXX'.          "定价条件
        pocond-cond_value = gs_alv2-netpr.    "采购订单货币的订单净值
        pocond-cond_p_unt = gs_alv2-peinh .
        pocond-currency = lt_alv2-waers.

ENDIF.

APPEND pocond.

pocondx-itm_number = lv_ebelp.
        pocondx-cond_st_no = '001'.
        pocondx-cond_type  = c_x.            "定价条件
*        pocondx-cond_count = c_x.
        pocondx-cond_value = c_x.
        pocondx-cond_p_unt = c_x.
        pocondx-currency = c_x.
        APPEND pocondx.

ENDIF.

gs_alv2-rbelp = lv_ebelp.
      MODIFY gt_alv2 FROM gs_alv2 TRANSPORTING rbelp.

ENDLOOP.

CHECK poitem[] IS NOT INITIAL.

CALL FUNCTION 'BAPI_PO_CREATE1'
      EXPORTING
        poheader         = poheader
        poheaderx        = poheaderx
*       testrun          = l_testrun
*       no_price_from_po = 'X'           
      IMPORTING
        exppurchaseorder = po_no
      TABLES
        return           = return
        poitem           = poitem
        poitemx          = poitemx
        poschedule       = posched
        poschedulex      = poschedx
*       poaccount        = poaccount
*       poaccountx       = poaccountx
        pocond           = pocond
        pocondx          = pocondx.
*        potextitem       = potextitem
*        potextheader     = potextheader.
*       pocomponents     = pocomponents
*       pocomponentsx    = pocomponentsx.
*       extensionin      = extensionin.

CLEAR lv_msg.

LOOP AT return WHERE type = 'E'.
      CONCATENATE lv_msg return-message INTO lv_msg SEPARATED BY ',' .
    ENDLOOP.

IF sy-subrc EQ 0 .
      CALL FUNCTION 'ICON_CREATE'
        EXPORTING
          name   = icon_red_light
          info   = '有错误'
        IMPORTING
          result = lt_alv2-dr.

CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'.

LOOP AT gt_alv2 INTO gs_alv2 WHERE ebeln = lt_alv2-ebeln.
        gs_alv2-rbelp = ''.
        gs_alv2-dr = lt_alv2-dr.
        gs_alv2-msg = lv_msg.
        MODIFY gt_alv2 FROM gs_alv2 TRANSPORTING rbelp dr msg.
      ENDLOOP.

ELSE.
      CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'.

CALL FUNCTION 'ICON_CREATE'
        EXPORTING
          name   = icon_okay
          info   = '创建成功 '
        IMPORTING
          result = lt_alv2-dr.

LOOP AT gt_alv2 INTO gs_alv2 WHERE ebeln = lt_alv2-ebeln.
        gs_alv2-rbeln = po_no.
        gs_alv2-dr = lt_alv2-dr.
        MODIFY gt_alv2 FROM gs_alv2 TRANSPORTING rbeln dr.
      ENDLOOP.

ENDIF.

ENDLOOP.

BAPI_PO_CREATE1--单价增大10倍问题相关推荐

  1. PICRUSt2:OTU/ASV等16S序列随意预测宏基因组,参考数据库增大10倍

    PICRUSt推出了近6年,引用2500余次. 现推出PICRUSt2 https://github.com/picrust/picrust2 具有以下三大优势: 任何OTU/ASV直接预测功能: 数 ...

  2. 如何让你的Nginx 提升10倍性能?

    来源:www.zcfy.cc/article/10-tips-for-10x-application-performance-nginx-22.html 原文:https://www.nginx.co ...

  3. 比可微架构搜索DARTS快10倍,第四范式提出优化NAS算法

    关注上方"深度学习技术前沿",选择"星标公众号", 资源干货,第一时间送达! 神经架构搜索一直被认为是高算力的代表,尽管可微架构搜索的概念非常吸引人,但它目前的 ...

  4. 面试官:我想用Nginx提升系统10倍性能,你有哪些建议?

    提升Web应用的性能从未像今天这样刻不容缓. 在线经济活动的比例日益提高,就连发展中国家和地区的经济活动都已经有5%以上在线进行了(相关数据请参考本文后面的资源).在这个超级链接.随时在线的现代世界, ...

  5. 如何将 Nginx 性能提升10倍?这10个“套路”请收好!

    点击上方 好好学java ,选择 星标 公众号 重磅资讯.干货,第一时间送达今日推荐:2020年7月程序员工资统计,平均14357元,又跌了,扎心个人原创100W+访问量博客:点击前往,查看更多 提升 ...

  6. excel android 公式,两个超实用的Excel万能公式,瞬间提升你10倍工作效率!

    相信大家在平时的工作中,都会经常有用到公式的需要,但是下面这些公式你用过吗,今天小编就带大家一起看看吧! 1. SUM函数 这个函数不仅在我们学习的过程中会用到,即便到了工作后,也经常需要对各种数据进 ...

  7. 京东大数据研究院:智能马桶四年销量翻10倍

    3月22日消息,根据京东大数据研究院发布的<2021智能马桶线上消费趋势报告>显示:有赖于智能马桶单价的逐步降低,其销量正在年年攀涨,智能马桶正在全国化普及. 数据显示,从2017到202 ...

  8. 10倍提升应用性能的10个建议

    2019独角兽企业重金招聘Python工程师标准>>> 提升Web应用的性能从未像今天这样刻不容缓.在线经济活动的比例日益提高,就连发展中国家和地区的经济活动都已经有5%以上在线进行 ...

  9. 太厉害了!我用 Nginx 提升系统10倍性能

    题图-斗罗大陆-献祭 提升Web应用的性能从未像今天这样刻不容缓. 在线经济活动的比例日益提高,就连发展中国家和地区的经济活动都已经有5%以上在线进行了.在这个超级链接.随时在线的现代世界,用户的期望 ...

最新文章

  1. 【转载】SAP Oracle ERP产品的比较
  2. 六大环节,教你如何从 0 到 1 搭建一场 A/B 测试
  3. 用pytorch及numpy计算成对余弦相似性矩阵,并用numpy实现kmeans聚类
  4. 足不出户,确保交付——独家交付秘籍(第二回)
  5. oracle同库复制schema,使用impdp复制oracle的schema数据迁移 | 学步园
  6. python实现给微信指定好友定时发消息
  7. access ea 可以联网吗_EA自家Origin平台高级会员Origin Access Premier现已上线
  8. visio 2010激活教程
  9. 关于大小端转换整理总结(包含原始方式、Qt方式)
  10. sodp软件如何导入多个工作面信息_6款堪称业界良心的软件,好用到想为它们疯狂打call!...
  11. ​ 解决金仓数据库KingbaseES对pg模式的单机数据库插入数据时,出现日志打印的问题
  12. 3.5寸TFT液晶屏验证板设计过程——硬件篇
  13. Android 传感器篇:(一)方向传感器
  14. mysqldump加速导入参数说明
  15. datasets DatasetDict类
  16. ArcGIS10.5安装时提示localhost没有有效管理许可怎么办
  17. html dom节点源码,HTML DOM HTML DOM 节点 - 闪电教程JSRUN
  18. 若有以下定义和语句:double r=99, *p=r;*p=r; 则以下正确的叙述是 A) 以下两处的*p含义相同,都说明给指针变量p赋值 B) 在“double r=99, *p=r;“中,
  19. Linux系统中彻底隐藏你的进程(隐藏后如何恢复显示?)
  20. uni-app 动态添加class

热门文章

  1. 蒟蒻の算法题(~~完全不会~~的期望)01
  2. adb常用命令|修改build.porp文件
  3. c语言程序主要的结构特点是什么,1. C语言的结构特点?
  4. laravel路由的配置,别名,路由群组
  5. Nuxt入门到打包部署 Vue-SSR项目
  6. 吴恩达 深度神经网络,吴恩达神经网络课程
  7. P5167 xtq的神笔
  8. 如何识别哭泣csdn_【jji技术】语音识别工程实战:聊聊语音芯片选型
  9. ElasticSearch中文分词,看这一篇就够了
  10. ie浏览器中图片被拉长