SAP-MM-采购订单含税价实现方式
在很多企业里,采购跟供应商谈定的价格是含税价。采购订单价格一般都是通过含税价来实现的,但是SAP的标准功能要求采购订单上面输入的价格是一个净价,即不含税价。如果客户不使用净价做维护,那么就要使用含税价。
========================================================================
实现方式可以考虑:
采购单输入的采购价格类型是PB00或者PBXX,是一个含税价。
再做另外一个条件类型把税算出来,作为一个折扣项减去,最后得到的就是净价了。
========================================================================
一、按照这个思路我们来做。首先做一个条件类型ZTAX,折扣型的,负数。
配置路径:SPRO->物料管理->采购->条件->定义价格确认流程->定义条件类型
二、再把这个折扣的条件类型放到定价过程里面,例如就使用标准的RM0000采购单据(大)
配置路径:SPRO->物料管理->采购->条件->定义价格确认流程->定义定价过程
在定义定价过程的时候增加备选计算类型的方法和代码:
新建计算税额的例程
事务码:VOFM,进入界面后点击【公式】--【定价值】
新建例程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
然后就可以了,做个采购订单,变换税率,ZTAX就会自动根据税码里面配置的金额发生变化。
这个公式里面涉及到了一个'A'和'I'的问题。A是价外税,I是价内税。举例来说:同样100块的含税价,17%的税率,如果按A的方式,那么税就是100/1.17*0.17 = 14.53,净价就是85.47.而如果是I的方式,税就是100*0.17 = 17,净价就是83
价内税税款=货款(销售款)×税率,
价外税税款=[货款/(1+税率)]*税率=不含税价格×税率。
我国目前的流转税中,增值税采用价外税模式,消费税采用价内税模式。
————————————————
版权声明:本文为CSDN博主「tongchucai」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/tongchucai/article/details/127380569
posted on 2022-10-18 09:10 tongxiaohu 阅读(812) 评论(0) 编辑 收藏 举报