采购订单含税价实现方式

编程入门 行业动态 更新时间:2024-10-08 04:34:45

采购订单<a href=https://www.elefans.com/category/jswz/34/1705004.html style=含税价实现方式"/>

采购订单含税价实现方式

原文地址:采购订单含税价实现方式 作者:SD模块那些事儿 很多企业,尤其是国内企业,价格一般都是通过含税价来实现的,也就是说,跟供应商谈定的价格是含税价。但是SAP的标准功能要求采购订单上面输入的价格是一个净价,即不含税价。如果我们没办法说服客户使用净价做维护,那么必须要支持他们使用含税价。 博主虽然是SD模块,但是近几个项目都在帮MM的比较初级的顾问做一些东西,就比如这个需求。 那么如何实现呢? 从SD的角度来说,想做含税价,SAP有标准的定价过程可以参考,比如RVAB01。 但是采购订单却没有标准的过程可以参考。不过实现起来倒是也不那么麻烦。 变通一下,比如你输入的采购价格是PB00或者PBXX,是一个含税价。那么只要再做另外一个条件类型,把税算出来,作为一个折扣项减去,最后得到的就是净价了。 按照这个思路我们来做。首先做一个条件类型 ZTAX,折扣型的,负数,就这么几个选项,不参考创建也无所谓。
然后再把这个折扣的条件类型放到定价过程里面,演示方便就使用标准的RM0000,放到哪无所谓,就放最后吧。
有几个地方要注意: 1. From - to这里面要得到的是含税的总价。博主这次做的简单点,就直接参考step 1 -即PB00或PBXX 2. Subtotal一定要写9,9才会计算到net value里面去 3. 新建一个calculation formula,比如905.因为这个条件类型需要我们通过税码自己计算出来,而不是通过存取顺序维护条件记录的方式计算出来。 下面就是公式的内容了。 *&---------------------------------------------------------------------* *&       Form   FRM_KONDI_WERT_905 *&---------------------------------------------------------------------* *       text *----------------------------------------------------------------------* FORM frm_kondi_wert_905.
DATA: l_kbetr LIKE konp-kbetr.     "Tax Rate DATA: l_krech LIKE t685a-krech.   "Inclusive or Exclusive DATA: l_knumh LIKE a003-knumh.     "Condition Record Number DATA: l_kschl LIKE a003-kschl.     "Condition Type DATA: l_kappl(2) TYPE c VALUE 'TX'. "Application
* Get condition type and condition record SELECT SINGLE knumh kschl           FROM a003           INTO (l_knumh,l_kschl)         WHERE kappl = l_kappl           AND aland = komk-aland           AND mwskz = komp-mwskz. IF sy-subrc = 0. * Get condition record value   SELECT SINGLE kbetr             INTO l_kbetr             FROM konp           WHERE knumh = l_knumh.   IF sy-subrc = 0.     SELECT SINGLE krech               INTO l_krech               FROM t685a             WHERE kschl = l_kschl. * Set Condition Value     IF sy-subrc = 0.       IF l_krech = 'A'. "Tax Excluded         xkwert = -1 * xkomv-kawrt * l_kbetr / ( 100000 + l_kbetr ).       ELSEIF l_krech = 'I'. "Tax Included         xkwert = -1 * xkomv-kawrt * l_kbetr   / 100000.       ENDIF.     ENDIF.     l_kschl = xkomv-kschl. * Set Condition Amount     LOOP AT xkomv WHERE kschl = l_kschl.       xkomv-kbetr = l_kbetr * -1.     ENDLOOP.   ELSE. * Set Condition Value     xkwert = 0.     l_kschl = xkomv-kschl. * Set Condition Amount     LOOP AT xkomv WHERE kschl = l_kschl.       xkomv-kbetr = 0.     ENDLOOP.   ENDIF. ENDIF. ENDFORM.                     "FRM_KONDI_WERT_905 然后就OK了,做个采购订单,变换税率,你的ZTAX就会自动根据税码里面配置的金额发生变化。 这个公式里面涉及到了一个'A'和'I'的问题。A是价外税,I是价内税。举例来说:同样100块的含税价,17%的税率,如果按A的方式,那么税就是100/1.17*0.17 = 14.53,净价就是85.47.而如果是I的方式,税就是100*0.17 = 17,净价就是83 一般I这种方式在未加工农产品采购的时候会使用,多半是13%的税率,叫扣除率。 V1税码:价外税15%
输入含税价115,得到净价100。 W1税码(博主自己随便创建的):价内税 13%

更多推荐

采购订单含税价实现方式

本文发布于:2024-02-25 17:54:06,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1699821.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:含税   订单   方式   采购

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!