1 Reply Latest reply: Jan 3, 2011 5:35 PM by Mohammed Suhail RSS

Determine Liquidity item for Taxes

JL RA
Currently Being Moderated

Hi Experts,

 

I have reviewed documentation and sap notes about that Taxes are distributed on expense or revenues accounts.

I want to avoid this, I need that Taxes have their own Liquidity Item.

 

For example:

 

Cash             1000  

Revenue        800     --> LI_REVENUE_FOR_SALES = 800

Taxes             200    -->  LI_TAXES                           = 200

 

And not:

 

Cash             1000  

Revenue        1000     --> LI_REVENUE_FOR_SALES = 1000

 

Thanks in advance for your help.

 

Regards,

José Luis

 

  • Re: Determine Liquidity item for Taxes
    Mohammed Suhail
    Currently Being Moderated

    Implement the exits from note 994316

     

    Step by Step explantion about Tax handling:

    There are two exits involved in this process.

      The first exit is for withholding tax.

      This is how the form should be called from

      a Function Module.

      PERFORM UNMARK_WIT_LINES  TABLES  T_BSEG

                                CHANGING P_SUBRC.

     

            Inside this form you have to place the coding for the withholding tax from the note 994316.

    The start of the coding in the note 994316 is

    FORM UNMARK_WIT_LINES  TABLES   C_T_BSEG STRUCTURE BSEG

                           CHANGING P_SUBRC.

    The Function Module which is created for this Withholding tax should be placed in the Document-Red. Exit in the FLQC13 Screen.

     

    The second exit is for tax on sales and purchases.

    This is how the form should be called from

      a Function Module.

      PERFORM UNMARK_VAT_LINES  TABLES  C_T_BSEG_REST

                                CHANGING P_SUBRC.

     

            Inside this form the coding for VAT has to be placed from the note 994316.The start of the coding in the note is

    FORM UNMARK_VAT_LINES  TABLES   C_T_BSEG STRUCTURE BSEG

                           CHANGING P_SUBRC.

     

    The Function Module which is created for this VAT should be placed in the Exit Invoice in the FLQC13 Screen.

     

     

    It is by design of the FLQAD that it doesnot show tax separately. If

    you want to display the tax separately then do the following steps:

     

    Create a function module z* with signature similar to function module

    FLQ_SAMPLE_REDUCE_DOC and call the subroutines given in the note 994316.

    Sample coding:

     

    FUNCTION Z*....

    *"

    ""Lokale Schnittstelle:

    *"  IMPORTING

    *"     VALUE(P_BKPF) LIKE  BKPF STRUCTURE  BKPF

    *"     VALUE(P_ORIG) LIKE  FLQITEM-LQORIG

    *"  EXPORTING

    *"     VALUE(E_TAKE_TABLE) TYPE  XFELD

    *"  TABLES

    *"      T_BSEG STRUCTURE  BSEG

    *"      U_T_KEEP_LINES

    *"      C_T_DEL STRUCTURE  BSEG_KEY

    *"  CHANGING

    *"     REFERENCE(P_SUBRC) LIKE  SY-SUBRC OPTIONAL

    *"

     

     

      PERFORM UNMARK_WIT_LINES  TABLES   C_T_BSEG STRUCTURE BSEG

                               CHANGING P_SUBRC.

     

      PERFORM UNMARK_VAT_LINES  TABLES   C_T_BSEG STRUCTURE BSEG

                                CHANGING P_SUBRC.

     

      E_TAKE_TABLE='X'

     

    ENDFUNCTION.

     

     

    FORM UNMARK_WIT_LINES  TABLES   C_T_BSEG STRUCTURE BSEG

                           CHANGING P_SUBRC.

     

      CLEAR C_T_BSEG-KTOSL.

      MODIFY C_T_BSEG TRANSPORTING KTOSL

        WHERE  ( KTOSL = 'QST' OR KTOSL = 'WIT' ) AND QSSKZ <> SPACE.

     

     

     

      CHECK SY-SUBRC = 0.

      P_SUBRC = 0.

     

    ENDFORM.                    " UNMARK_WIT_LINES

     

     

    FORM UNMARK_VAT_LINES  TABLES   C_T_BSEG STRUCTURE BSEG

                           CHANGING P_SUBRC.

     

      CLEAR C_T_BSEG-MWART.

      MODIFY C_T_BSEG TRANSPORTING MWART WHERE MWART <> SPACE.

     

    • In case of sucess, set return code to zero, for calling program to

    • recognize

      CHECK SY-SUBRC = 0.

      P_SUBRC = 0.

     

    ENDFORM.                    " UNMARK_VAT_LINES

     

    Create Function module Z* with signature similar to Function Module

    FLQ_SAMPLE_MODIFY_INV.

    Sample Coding:

     

    FUNCTION Z*......

    *"

    ""Lokale Schnittstelle:

    *"  TABLES

    *"      C_T_BKPF STRUCTURE  BKPF

    *"      C_T_BSEG_REST STRUCTURE  BSEG

    *"      U_T_BSEG_KEEP STRUCTURE  BSEG

    *"  CHANGING

    *"     REFERENCE(P_SUBRC) LIKE  SY-SUBRC

    *"

     

      PERFORM UNMARK_VAT_LINES  TABLES   C_T_BSEG STRUCTURE BSEG

                                CHANGING P_SUBRC.

     

    ENDFUNCTION.

     

    FORM UNMARK_VAT_LINES  TABLES   C_T_BSEG STRUCTURE BSEG

                           CHANGING P_SUBRC.

     

      CLEAR C_T_BSEG-MWART.

      MODIFY C_T_BSEG TRANSPORTING MWART WHERE MWART <> SPACE.

     

    • In case of sucess, set return code to zero, for calling program to

    • recognize

      CHECK SY-SUBRC = 0.

      P_SUBRC = 0.

     

    ENDFORM.                    " UNMARK_VAT_LINES

Actions