Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

IDOC WPUBON problem

Former Member
0 Kudos

Hi, We are using WPUBON idoc type for Sales Inbound Posting. Previously we are not recieving the TAX and system was calculating the tax maintained in sap. Now we need to add TAX on article level so we have populated segment E1WPB04 which is meant for Tax. But even though the TAX is coming with the Idoc properly system is considering the default tax only

9 REPLIES 9

former_member244059
Participant
0 Kudos

Hi. Could you solve this?

I'm facing the same issue

Thanx

0 Kudos

Hi Tulika, Jesus

What you want can not be achieved by segment E1WPB04, as a workaround you can consider one of the following suggestions,

- use header taxes with E1WPB07 (TAXCODE, TAXVALUE)

- use E1WPB03 and enter tax amount as condition item

- use WPUUMS IDoc type instead of WPUBON, if possible.

br,

Lalio

0 Kudos

Hi, Lalio!

I am using FM /POSDW/CREATE_TRANSACTIONS_EXT and when filling out RETAILLINEITEM - TAX, E1WPB04 is automaticaly populated and taxes are being ignored at level item.

I tried E1WPB03 by using WE19 and it worked well and conditions are created at level item.

Would I have to change some user exit to make RETAILLINEITEM - TAX populate E1WPB03 instead of E1WPB04? Is there any customization to change this?

Regards,

Issam

0 Kudos

Hi Issam.

I solved this issue by passing taxes at transaction level using table TRANSACTIONTAX on FM /POSDW/BAPI_POSTR_CREATE. Then, IDOC WPUBON will export tax information on segment E1WPB07

Hope it helps

Jesus

0 Kudos

Hi, Jesus. Thanks for your reply.

If I'm not wrong, for item level we need to use E1WPB03 for populating taxes and E1WPB07 would populate conditions at header level.

Did you solve this issue for both header and item levels by using E1WPB07 segment?

Thank you very much!

0 Kudos

I solved this issue by creating a new Z FM of /POSDW/IDOC_OUTPUT_WPUBON, form  map_e1wpb02. In the section (map taxes), I changed the structure from E1WPB04 to E1WPB03.

It works well and solved my problem.

best regards,

Issam Ibrahim

0 Kudos

Hi,

I am have a similar problem. While investigating and seeing the suggestions made in this post, I tried to pass the TAX condition in E1WPB03 instead of E1WPB04. (i did this by manually editing an existing IDOC). 

By doing this I was able to pass the TAX Amount and the pricing procedure in the POS Inbound in SAP ERP was able to accept it. The only challenge here is that once you use the E1WPB03, the ERP system treats TAX as a normal condition like tender or discount and it does not execute the tax code determination in ERP.

@Issam : Could you share the code you used ?

Isn't there a BADI ?

Regards,

Dheeraj

0 Kudos

Hi, Dheeraj!

I changed the FM /POSDW/IDOC_OUTPUT_WPUBON (form map_e1wpb02).

In the section (map taxes), I changed the structure from E1WPB04 to E1WPB03.


Follow my abap code:



    *map taxes

    LOOP AT lw_retaillineitem-tax INTO lw_item_tax.

      APPEND INITIAL LINE TO pet_edidd ASSIGNING <fs_edidd>.

   <fs_edidd>-segnam = 'E1WPB03'.

  

      CLEAR ls_e1wpb03.

  

      ls_e1wpb03-kondition =   lw_item_tax-taxtypecode.

      IF l_return_item = '1'.

        MULTIPLY lw_item_tax-taxamount BY -1.

      ENDIF.

      CALL FUNCTION '/POSDW/CURRENCY_DECIMALS_OUT'

        EXPORTING

          pi_amount          = lw_item_tax-taxamount

          pi_retailstoreid   = pis_transaction-retailstoreid

          pi_businessdaydate = pis_transaction-businessdaydate

          pi_transindex      = pis_transaction-transindex

        IMPORTING

          pe_amount          = l_kondvalue

        CHANGING

          pc_currency        = l_currency.

      SHIFT l_kondvalue LEFT DELETING LEADING '0 '.

      ls_e1wpb03-kondvalue   =  l_kondvalue.

      MOVE ls_e1wpb03 TO <fs_edidd>-sdata.

    ENDLOOP.

0 Kudos

Super.Thank you