税率的获取

本文介绍如何在SAP系统中通过A003和KONP表获取税率的方法,并提供了一段具体的ABAP代码实现。该方法适用于销项税和进项税的税率获取。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

SAP系统中税率按照条件价格的思想存储,不管是销项税还是进项税都存储在A003表中,再通过定价记录号去KONP表中获取KBETR/1000就是税率的值。

附上实际使用代码,以采购信息记录中的税码为例:
*   取净价
    SELECT SINGLE b~mwskz FROM eina AS a
     INNER JOIN eine AS b ON a~infnr = b~infnr
      INTO lw_mwskz
     WHERE a~matnr = ls_a017-matnr      " 物料编号
       AND a~lifnr = ls_a017-lifnr      " 供应商帐户号
       AND a~loekz ''
       AND b~ekorg = ls_a017-ekorg      " 采购组织
       AND b~werks = ls_a017-werks      " 工厂
       AND b~esokz '0'
       AND b~loekz ''.
    IF sy-subrc 0.
      SELECT SINGLE * FROM a003 INTO ls_a003
       WHERE kappl 'TX'     " 应用程序
         AND kschl 'MWVS'   " 条件类型
         AND aland 'CN'     " 国家
         AND mwskz = lw_mwskz." 销售/购买税代码
      IF sy-subrc 0.
        SELECT SINGLE * FROM konp INTO ls_konp
         WHERE knumh = ls_a003-knumh
           AND kopos '1'.
        IF sy-subrc 0.
          lw_price = lw_price / 1 + ls_konp-kbetr / 1000 ).
        ENDIF.
      ENDIF.
    ELSE.
      CONTINUE.
    ENDIF.

望指正,或者留言更好的方法。

转载于:https://www.cnblogs.com/tangcy1110/p/7879656.html

### SAP 采购订单定价机制与配置方法 SAP 系统中的采购订单(Purchase Order, PO)定价机制是通过多种配置和逻辑实现的,主要包括条件技术(Condition Technique)、价格确定流程以及相关参数设置。以下是关于 SAP 采购订单定价机制及配置方法的详细说明: #### 1. 条件技术(Condition Technique) 在 SAP 中,条件技术是用于控制定价的关键工具。它包括条件类型(Condition Type)、访问序列(Access Sequence)和条件记录(Condition Records)。这些组件共同决定了采购订单的价格计算方式[^1]。 - **条件类型**:条件类型定义了定价的不同方面,例如净价(NETPR)、折扣(ZCURR)等。在事务代码 `OB08` 中可以查看和维护条件类型。 - **访问序列**:访问序列决定了系统在查找条件值时的优先级顺序。例如,系统可能首先尝试从供应商主数据中获取价格,如果未找到,则从物料主数据中获取。访问序列可以通过事务代码 `VK11` 进行配置。 - **条件记录**:条件记录存储了实际的价格信息,可以在事务代码 `ME11` 或 `ME12` 中创建或更改。 #### 2. 定价流程 SAP 的采购订单定价流程通常遵循以下逻辑: - 系统会根据物料主数据、供应商主数据和采购信息记录中的信息来确定初始价格。 - 如果存在特定的合同或协议价格,则系统会优先使用这些价格。 - 在没有明确价格的情况下,系统将按照访问序列中的定义依次查找适用的价格来源[^1]。 #### 3. 配置步骤 以下是配置 SAP 采购订单定价机制的主要步骤: - **启用条件技术**:通过事务代码 `OMW5`,确保条件技术已正确启用。 - **定义条件类型**:使用事务代码 `VK11` 定义所需的条件类型,并将其与适当的定价组关联。 - **设置访问序列**:通过事务代码 `VD12` 配置访问序列,确保系统能够按照正确的优先级顺序查找价格。 - **维护条件记录**:使用事务代码 `ME11` 或 `ME12` 创建或修改条件记录,以确保系统中有可用的价格信息。 - **测试定价结果**:通过事务代码 `ME21N` 创建一个测试采购订单,验证定价是否按预期工作。 ```python # 示例代码:通过事务代码 ME21N 创建采购订单并验证定价 # 假设物料编号为 MAT001,供应商编号为 SUPP001 po = create_purchase_order(material="MAT001", supplier="SUPP001") if po.price == expected_price: print("Pricing is configured correctly.") else: print("Pricing configuration needs adjustment.") ``` #### 4. 注意事项 - 确保所有相关的主数据(如物料主数据、供应商主数据)已正确维护,否则可能导致定价错误。 - 如果使用了扩展定价逻辑(例如基于数量的折扣),需要额外配置相关条件类型和访问序列[^1]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值