CREDIT DAYS

Dear Experts
As we have come across the problem of CR.Days in SAP. We have found that, if customer having limit of 1 million and 30 CR.Days .
SAP will allowed to buy the goods till 1 million even though if customer has not paid more than 30 days.  The system should automatic block, if customer cross the Payment Terms.
looking for sopprt

Dear Gordon
My query is about Credit Limit and Cr.days.For example A cutomer is having limit of 1million and 45 Credit days.And the customer have purchase the good of half million on 1st March.Still he can purchase the goods till 1Million but if he buys the goods on 15 April the System should block the futher transacation because he has cross days but not limit.If he buys the goods before 15 April the stem should allowed.I short the system should look the outstanding invoices which have cross the credit days and block the futher transaction untill customer pays his overdues due to credit days.
hope i am clear this time.
thanks
Parikshit

Similar Messages

  • Credit Days based credit check

    1) Credit Check should be according to credit value and No. of credit days
    e.g 60 days-90 days-120 days
    if credit is available but credit days are crossed the order/delivery should get blocked for above days.
    Can this be maintain using any of the facility in OVA8
    Thankyou

    Hi,
    In OVA8 set the following fields:
    Dynamic -Check the Box and put the reaction "C"-->Also check status/Block box
    Oldest open item -Check the Box and put the reaction "C"-->Also check status/Block box
    Set the credit limit in tcode FD32.
    As far as credit days is concerned there is no such functionality in SAP.
    The Credit period would be calculated basis the payment term assigned on the customer master.
    System would block the sales order either credit limit exceeds or the customer invoice has become due.
    This due date would be calculated from Posting date+Period defined in payment terms.
    Hope it clarifes the requirement.
    Regards
    Sanjay

  • Credit charges based on the number of credit days offered to the customer

    AOA,
    I have a scenario.
    We have credit charges based on the number of credit days offered to the customer. This scenario will be executed on credit sales only.
    Example of pricing, a product mobile is offered to customer A on 20 Days credit
    Mobile   $1000
    10 Days $1000
    20 Days $2500
    Total      $4500 (Invoice Amount)
    Any idea how can I acheive this in SAP.

    Customer A wants to buy product " Mobile "
    Scenario is of Credit sales. Pricing is as follows:
    Price                       $1000
    10 Days                  $1000
    Total After 10 days $2000
    20 Days                    $2500
    Total After 20 days $4500
    Gross Amount         $4500
    The amount of invoice will be $4500.
    If customer pays the amount with in 10 days, then customer only pays $1000.
    If customer pays the amount with in 20 days, then customer only pays $2000.
    If customer pays the amount after 20 days, then customer pays $4500.

  • Payment terms - net due date same as credit days?

    Dear all,
    I need to set up a payment term with 20 credit days, 2%. Invoices should be due also after 20 days.
    I would like the payment term to be set up as follow:
    Term           Percentage           No of days
    1.                2                           20
    2.                                             20
    The problem is that the system doesn't let me to set due date to the same number of days as the credit days.
    We will have baseline date = invoice date for our payment terms, if that matters.
    How could I acheive to have due date 20 days after invoice date (baseline date) and deduct 2% cash discount the whole time?
    Thanks and regards,
    Helene

    Hi,
    Please create a payment term as below, if your requirement is "I need to set up a payment term with 20 credit days, 2%. Invoices should be due also after 20 days"
    Term           Percentage           No of days
    1.                2                           20
    2.                                             21
    In case your requirement is to give 2% discount if paid within 20days and due net after that:
    Term           Percentage           No of days
    1.                2                           19
    2.                                             20
    Hope this will solve your issue.
    Thanks,
    Kiran Yelamarthi

  • Topped up & now we have no credit days later .we've made no calls!

    HI We have a spare emergency phone - we topped up with £5 in May and have not used this phone at all it has been in a drawer we turned it on today to use in an emergency and it says we have 4p credit left - who can we contact to have this checked - why would it just disappear - reluctant now to top up again in case it keeps disappearing? all automated numbers do not have a customer service option for the mobile

    Hi 
    It could be that you have a pack active on the account. So each time you top up it would deduct the amount for the pack.
    If you log in or register on My Account to can see and manage any packs or add-ons.
    You can also check your packs via the PAYG Text Services Click Here for information.
    Hope this helps!
    Thanks. 

  • Credit Control Issue

    Hello All,
    I want to know the importance of following field in OVA8 (Maintenance of Automatic Credit Control)
    1) Checks in Financial Accounting/ old A/R summary
         Payer
        Permitted Days  --               Permitted Hours ---
    I want to give some grace period say 2/3 days over defined credit days in payment terms. So that the system will active the credit control after grace period i.e. say if my credit days is set as 30 days, currently the systems gives error if payment not received in 30 days. i want the system to give grace days time and then give error i.e. after 33 days.
    Can i use the above functionality. If yes how it will work
    Note: Increasing the days in payment terms will not solve my problem as i want this grace period for internal use only.
    thanks.

    Hi
    Permitted Ageing in Days/hours
    Permitted aging of A/R summary in days/hours.
    The system uses the permitted aging in days and hours to verify whether the data in the A/R summary is still acceptable for credit check purposes. If the existing data in the A/R summary exceeds the aging set in days and hours, the system sets the status "A/R summary obsolete".
    You may be able to avoid this status by scheduling the program which generates the A/R summary in FI more often or (in a distributed scenario) by going to the Financial Accounting IMG and choosing Accounts Receivable and Accounts Payable -> Credit Management -> Credit Control Account -> Make basic settings for credit management and stipulating that the credit check in SD should check the data in central financial accounting against the current data if the A/R summary is obsolete in one case.
    Hope this clarifies your doubt.

  • Payment Performance Report

    Dear Experts,
               Following is the scenario,
    Sales Person           Raj
    Customer Code       C1000
    Payment Terms       15 days
    Invoice Date            01.02.2010
    Invoice Value          20000
    Payment Date          20.02.2010
    Payment Amount     20000
    Payment performance  0%
    As the customer has not paid within the credit days, when i execute a query based on the sales person and posting date (From, To) parameters the payment performance should result 0%.
    Is the same possible to generate through query?
    Awaiting your reply
    saravanan
    Edited by: Sanbrahma39 on Feb 16, 2010 1:01 PM

    Dear Gordon,
              As  rightly conveyed the payment performance is calculated based on the (Paidtodate/Doctotal)*100. I tried to generate the report using query
    SELECT T0.[DocNum], T0.[DocDate], T0.[CardName], T0.[DocTotal], T0.[PaidToDate] FROM OINV T0  INNER JOIN OSLP T1 ON T0.SlpCode = T1.SlpCode WHERE T1.[SlpName] = [%0] and  T0.[DocDate] > = [%1] and T0.[DocDate] < = [%2].
    The thing is SAP delivered the result perfectly based on the query given above, now the condition is like the query has to check the payment received within the payment terms, then only it need to consider for payment performance.
    Ex:
    Sales Employee   - Raj
    Customer Code    -C1000
    Payment Terms    -15 days
    IN1 Date                - 01.02.2010
    IN1 Amount          - 10000
    Payment Date      - 14.02.2010
    Payment Amt       - 10000
    IN2 Date              - 02.02.2010
    IN2 Amount        - 40000
    Payment Date     - 19.02.2010
    Payment Amount - 40000
    Now if i try to generate a payment performance report of a sales employee Raj as per my query it would show 100% as payment terms is not been considered.
    I need a query to consider the payment terms also so when i generate a report the payment performance should be 20% only.
    Hope this assists
    Saravanan

  • LR dt to be taken as BiIlling dt instead of Actual Goods issue dt

    Hi
    The normal Business practice is the system takes the actual goods issue date mentioned in the delivery document as the billing date and accordingly ,the payment terms or credit days given to the  customer starts from this date.
    Now the requirement is
    The payment terms has to be with ref to LR (lorry receipt ) date and not on Actual goods issue date, for example: If the Actual goods issue date is 15th April & the LR date is 17th april  then the customers credit days has to start from 17th and not from 15th april .
    Because ,in real time we do not know when the transporter will pick and deliver the goods to the customer,so if the transit time is  2 days ,then customer would be loosing the ,2 credit days and the invoice would be due on the 7th day ,where as the customer would have received the stock 5 days back  and not 7days back.(if the  terms of payment is say 7 days)
    can any one suggest how to addresse this scenario apart from the  following
    1) Define  the terms of payment as longer by 2days
    2) Give the actual goods issue date as 2days in advance
    shashi

    Hi TricaC,
    I'm sorry to see your friend is having problems with his BT Broadband.  Please use the 'contact the mods' link in my forum profile to send in his details and we'll be happy to help. You can find the link by clicking on my username.
    Thanks
    Neil
    BTCare Community Mod
    If we have asked you to email us with your details, please make sure you are logged in to the forum, otherwise you will not be able to see our ‘Contact Us’ link within our profiles.
    We are sorry but we are unable to deal with service/account queries via the private message(PM) function so please don't PM your account info, we need to deal with this via our email account :-)
    If someone answers your question correctly please let other members know by clicking on ’Mark as Accepted Solution’.

  • Need info on Cash discounts

    Hello,
    I need some info on cash discounts.
    I understand that cash discounts are applicable to the customer after he makes the payment. We issue credit memo.
    But i dont understand the link b/n cash dicount conditon type (say SKTO/SKTV and payment terms )
    How the cash discounts are linked to payment terms?
    Whats the setting done for this?
    Could some one answer this?
    Regards,
    Krishna

    Cash discount means the rate of cash discount.
    Where do you find the details of how much cash discount to be given to the customer ?
    It is stored in the "Payment Term".
    Any organisation has got its Payment Term or Terms of Payment for the business.
    For example,suppose to-day you have purchased some goods from me and I have a payment term in my organisation like below,
    If you are paying me within 7 days,then you are eligible for 5% cash discount.
    If you are paying me within 15 days, then you will get 2% cash discount.After this no cash discount and 30 days is the maximum credit days and within 30 days if you are not paying me , then I will charge suppose 20% interest on the amount from the 31st day onwards.
    System gets this information regarding the Cash discount, from  this Payment Term.
    For Cash discount , there is a special condition type "SKTO". This is a statistical condition type. Condition type SKTO retrieves the cash discount rate to be given, from the Payment Term.
    Condition type SKTO does not have any access sequence and its finds out the cash discount rate from the payment in the Table "T052" (in this table all cash discounts are stored).
    To find this cash discount rate SKTO uses its condition category "E".

  • Accounts Payable Aging

    Dear All,
             I am in need to develop customized report on Vendor Accounts payable - Aging for given slab.
    I can find the open items for the given key date in the table BSIK.
             if we want to calculate due on past date( for cleared item), how can we use BSIK. ?        
            Let consider the following scenario.
                  Consider an item is cleared on 10.02.2009.   if the key date is 18.05.2009, there is no due for this item. But if the keydate is 15.12.2008, the item is on due. (consider 15.12.2008 is calculated with baseline date, credit days).
             How can we calculate aging for this from BSIK. because BSIK contains only open items.
    If we use BSAK ( Cleared Items ). How to calculate aging using baseline date, clearing date, credit days.
    Regards,
    S.Sridhar

    To calculate aging,
    You com use the FM J_1B_FI_NETDUE. If i undestand your problem, that FM will help you to calculate aging.
    Regards

  • Report should executed based on the radio buttons on the selection screen

    Hi everyone,
    Greets....................
    My scenario is I have 2 selection screen blocks on same screen..
    One selection screen block contains input parameters as follows
    Company Code  -  S_BUKRS
    Business Area -  S_GSBER
    Customer Code -  S_KUNNR
    Fiscal Area  -   S_GJAHR
    GL Account - S_HKONT
    Posting Date  -S_ZFBDT
    Ledger Type  -P_RLDNR
    Open Item Key Date -  P_ZFBDT
    Another selection screen block contains 2 radio buttons with the option as follows
    Collection Plan
    *Credit days summary.
    If i click Collection plan the report output should come based on the input parameters in first selection-screen block.
    If i click Credit days summary the report output should come based on the input parameters in first selection-screen block.
    Pls send me the sample code for this.
    Thanks in Advance
    Regards
    Raj kumar

    See the below folling example : it will have radio buttons and depends on radio button it will show output.
    REPORT ZPPR_BOM_INFOL_REPORT no standard page heading
                     line-size 160
                     line-count 60.
    ======================================================================
    Program Name : ZPPR_BOM_INFOL_REPORT
    Description  : This Program would be used for BOM List for a material*
                   and the component's where used list                   *
    Author       : Seshu                                                 *
    Date         : 07/24/2006                                            *
    MODIFICATION HISTORY                                                 *
    DATE    | AUTHOR   | CHANGE #   | DESCRIPTION OF MODIFICATION        *
    |----
    |----
    |----
    *12/04/06 | Seshu    | DEVK921821 | Removed new page for each material *
    ======================================================================
    Table definition                                                    *
    TABLES: mast,
            stko,
            stpo,
            T418,
            makt.
    TYPE - POOLS
    TYPE-POOLS: slis.
    Constants
    constants : c_tcode(4) type c value 'CS03',
                gc_formname_top_of_page TYPE slis_formname
                VALUE 'TOP_OF_PAGE'.
    Variables
    data : v_maktx like makt-maktx,
           wa_stko like stko.
    DATA:
    Objekttyp 'Material'
       otyp_mat(1) TYPE c VALUE '1',
       ootyp_mat(1) TYPE c VALUE 'M',
    Objekttyp 'kein Objekt'
       otyp_noo(1) TYPE c VALUE '2',
    Objekttyp 'Dokument'
       otyp_doc(1) TYPE c VALUE '3',
    Objekttyp 'Klasse'
       otyp_kla(1) TYPE c VALUE '4',
    Objekttyp 'Intramaterial'
       otyp_ntm(1) TYPE c VALUE '5'.
    maximal anzeigbare Menge
    data:   max_num(7)  TYPE p DECIMALS 3 VALUE '9999999999.999',
            ueberl_kz(1) TYPE c VALUE '*',
            min_num(7)  TYPE p DECIMALS 3 VALUE '9999999999.999-',
            b_flag(1) TYPE c VALUE 'X',
            ecfld(250) TYPE c,
            v_flag type c.
    ALV Variables
    DATA: gt_fieldcat TYPE slis_t_fieldcat_alv,
          gs_layout   TYPE slis_layout_alv,
          gs_keyinfo  TYPE slis_keyinfo_alv,
          gt_sp_group TYPE slis_t_sp_group_alv,
          gt_events   TYPE slis_t_event.
    DATA: g_repid LIKE sy-repid.
    DATA: gt_list_top_of_page TYPE slis_t_listheader,
                g_tabname_header TYPE slis_tabname,
                g_tabname_item   TYPE slis_tabname,
                g_save(1) TYPE c,
                gx_variant LIKE disvariant,
                g_variant LIKE disvariant,
                g_default(1) TYPE c,
                g_exit(1) TYPE c.
    Includes                                                             *
    INCLUDE .
    Internal Table Declaration                                           *
    DATA: t_mast LIKE STANDARD TABLE OF mast WITH HEADER LINE.
    *DATA: t_makt LIKE STANDARD TABLE OF makt WITH HEADER LINE.
    BOM Function module Related
    DATA: t_matcat  LIKE cscmat OCCURS 0 WITH HEADER LINE.
    Internal Table for Level by Level Function module
    DATA: t_stb  LIKE stpox OCCURS 0 WITH HEADER LINE.
    Get the Relevant data from FM
    DATA: BEGIN OF hd_tab OCCURS 0,
             stufe LIKE stpox-stufe,
             vwegx LIKE stpox-vwegx,
          END OF hd_tab.
    Final Output
    DATA: BEGIN OF alv_stb OCCURS 0.
            INCLUDE STRUCTURE stpox_alv.
    DATA:   info(3)   TYPE c,
          END OF alv_stb.
    DATA: BEGIN OF stb_orig.
            INCLUDE STRUCTURE stpox.
    DATA: END OF stb_orig.
    DATA: BEGIN OF stb_add.
            INCLUDE STRUCTURE stpol_add.
    DATA: END OF stb_add.
    Internal Table for STPO
    *-- BOM Line item
    TYPES: BEGIN OF ty_stpo,
           stlty TYPE stpo-stlty,
           stlnr TYPE stpo-stlnr,
           stlkn TYPE stpo-stlkn,
           stpoz TYPE stpo-stpoz,
           idnrk TYPE stpo-idnrk,
           meins TYPE stpo-meins,
           menge TYPE stpo-menge, "Component Qty
           END OF ty_stpo.
    DATA: t_stpo TYPE STANDARD TABLE OF ty_stpo WITH HEADER LINE.
    *-- BOM Header
    TYPES: BEGIN OF ty_stko,
           stlty TYPE stko-stlty,
           stlnr TYPE stko-stlnr,
           stlal TYPE stko-stlal,
           stkoz TYPE stko-stkoz,
           bmein TYPE stko-bmein,
           bmeng TYPE stko-bmeng,
           END OF ty_stko.
    DATA: t_stko TYPE STANDARD TABLE OF ty_stko WITH HEADER LINE .
    data : t_makt like makt occurs 0 with header line.
    DATA: BEGIN OF cl_clstab OCCURS 0,                          "YHG079407
             class LIKE klah-class,                             "YHG079407
             klart LIKE klah-klart,                             "YHG079407
             chked LIKE csdata-xfeld,                           "YHG079407
             noobj LIKE csdata-xfeld,                           "YHG079407
             dsply LIKE csdata-xfeld,                           "YHG079407
          END OF cl_clstab.
    *-- Header table
    TYPES: BEGIN OF ty_main_material,
           matnr TYPE mast-matnr, "Material
           werks TYPE mast-werks, "Plant
           maktx TYPE makt-maktx, "Description
           stlal TYPE mast-stlal, "Alternative BOM
           stlnr TYPE stko-stlnr, "BOM Number
           bmein TYPE stko-bmein, "UOM
           bmeng TYPE stko-bmeng, "Base Qty
           expand(1) TYPE c,      "Expanding Field
           END OF ty_main_material.
    DATA: t_main_material TYPE STANDARD TABLE OF ty_main_material WITH
          HEADER LINE.
    *-- Item (Component) Table
    TYPES: BEGIN OF ty_item_material,
           matnr TYPE mast-matnr, "Material
           werks TYPE mast-werks, "Plant
           idnrk TYPE stpo-idnrk, "Component (Material)
           maktx TYPE makt-maktx, "Description
           stlal TYPE mast-stlal, "Alternative BOM
           stlnr TYPE stpo-stlnr, "BOM Number
           meins TYPE stpo-meins, "UOM
           menge TYPE stpo-menge, "Base Qty
           END OF ty_item_material.
    DATA: t_item_material TYPE STANDARD TABLE OF ty_item_material WITH
          HEADER LINE.
    Selection Screen                                                     *
    SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
    PARAMETERS: p_werks LIKE marc-werks DEFAULT '1000' OBLIGATORY.
    SELECT-OPTIONS s_stlal FOR mast-stlal .
    SELECT-OPTIONS s_stlan FOR mast-stlan DEFAULT '1'.
    SELECTION-SCREEN SKIP.
    SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE text-002.
    SELECTION-SCREEN SKIP.
    PARAMETERS: p_bomlst RADIOBUTTON GROUP g1 DEFAULT 'X'.
    SELECT-OPTIONS s_matnr FOR mast-matnr.
    SELECTION-SCREEN SKIP.
    PARAMETERS: p_compon RADIOBUTTON GROUP g1.
    SELECT-OPTIONS: s_idnrk FOR stpo-idnrk.
    SELECTION-SCREEN END OF BLOCK b2.
    SELECTION-SCREEN END OF BLOCK b1.
    selection-screen begin of block b03 with frame title text-b03.
    selection-screen begin of line.
    selection-screen comment 1(40) text-005.
    parameters: p_all radiobutton group r1 default 'X'.
    selection-screen end of line.
    selection-screen begin of line.
    selection-screen comment 1(40) text-006.
    parameters: p_one radiobutton group r1 .
    selection-screen end of line.
    selection-screen end of block b03.
    SELECTION-SCREEN BEGIN OF BLOCK b3 WITH FRAME TITLE text-003.
    PARAMETERS: p_vari LIKE disvariant-variant.
    SELECTION-SCREEN END OF BLOCK b3.
    At slection screen events                                            *
    *-- Process on value request
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_vari.
      PERFORM f4_for_variant.
    Intitialisation
    INITIALIZATION.
      g_repid = sy-repid.
      g_tabname_header = 'T_MAIN_MATERIAL'.
      g_tabname_item   = 'T_ITEM_MATERIAL'.
    *-- define keyinformation
      CLEAR gs_keyinfo.
      gs_keyinfo-header01 = 'MATNR'.
      gs_keyinfo-item01   = 'MATNR'.
      PERFORM e03_eventtab_build USING gt_events[].
      PERFORM e04_comment_build  USING gt_list_top_of_page[].
      PERFORM e07_sp_group_build USING gt_sp_group[].
      PERFORM e08_layout_build   USING gs_layout.
    Set Options: save variants userspecific or general
      g_save = 'A'.
      PERFORM variant_init.
    Get default variant
      gx_variant = g_variant.
      CALL FUNCTION 'REUSE_ALV_VARIANT_DEFAULT_GET'
           EXPORTING
                i_save     = g_save
           CHANGING
                cs_variant = gx_variant
           EXCEPTIONS
                not_found  = 2.
      IF sy-subrc = 0.
        p_vari = gx_variant-variant.
      ENDIF.
    S T A R T - O F - S E L E C T I O N *******************
    start-of-selection.
      if p_all = 'X'.
    Get the data from MAST and MAKT Table
        if p_bomlst = 'X'.
      Get the data Based On Material #
          perform get_data.
        else.
      Get the data Based On Component
          perform get_data_component.
        endif.
      else.
    Get the Single Level Report
    *-- Moved the fiedl catalog here inorder to change the layout based on
    *-- Selection
        PERFORM e01_fieldcat_init  USING gt_fieldcat[].
        PERFORM select_data.
      endif.
    E N D - O F - S  E  L  E  C  T  I  O  N *******************
    end-of-selection.
      if p_one = 'X'.
        perform alv.
      endif.
    User Command
    at line-selection.
    Interactive to CS03 Transaction
      case sy-ucomm.
        when 'PICK' or 'F2'.
          if not alv_stb-idnrk is initial .
            if not alv_stb-werks is initial.
              if not alv_stb-objty is initial.
                SET PARAMETER ID 'MAT' FIELD alv_stb-idnrk.
                SET PARAMETER ID 'WRK' FIELD alv_stb-werks.
                SET PARAMETER ID 'CSV' FIELD alv_stb-OBJTY.
                call transaction c_tcode and skip first screen.
              endif.
            endif.
          endif.
          clear alv_stb.
      endcase.
    *&      Form  get_data
          Get data from MAST and MAKT Table
    FORM get_data.
      data : wa_lines type sy-index.
      REFRESH : T_MAST,
                t_STB,
                t_MATCAT,
                alv_STB.
      CLEAR : T_MAST,
                t_STB,
                t_MATCAT,
                alv_STB.
    Get the data from MAST Table
    Get all the information from MAST - BOM Table
      SELECT * FROM mast INTO TABLE t_mast WHERE matnr IN s_matnr AND
                                                 werks = p_werks  AND
                                                 stlan IN s_stlan AND
                                                 stlal IN s_stlal.
      describe table t_mast lines  wa_lines.
      if wa_lines is initial.
        Write:/2 'List contains no data'.
        stop.
      endif.
      loop at t_mast.
        clear : v_maktx.
    Start of change  Seshu
    Reason - Remove the new page option
        if sy-tabix ne 1.
          skip 1.
        endif.
    End of Change  Seshu
    Get the material Description
        select single maktx from makt into  v_maktx
                                 where matnr = t_mast-matnr
                                 and   spras = 'E'.
    Get the material details from STKO Table
        select single * from stko into wa_stko
                        where STLTY = 'M'
                        and   STLNR = t_mast-stlnr
                        and   STLAL = t_mast-stlal.
    Main Header for Each Material
        format color 5 on.
        write:/2 'Material',20 'Material Description',65 'Alternative BOM',
             90 'Base Qty', 115 'Base Unit'.
        format color 5 off.
        format color 1 on.
        write:/2 t_mast-matnr,20 v_maktx,65 wa_stko-STLAL, 85 wa_stko-BMENG,
               115 wa_stko-BMEIN.
        format color 1 off.
    Use the Function Module and get the format level by level
        perform get_level_level.
      endloop.
    ENDFORM.                    " get_data
    Top of page                                                  *
    top-of-page.
      perform report_header .
    *&      Form  report_header
          text
    -->  p1        text
    <--  p2        text
    FORM report_header.
      new-page line-size 160 .
      format color col_heading intensified on.
      write:/ sy-uline(160) .
    *--- Write Company Name.
      perform calc_col_and_write using    text-h00
                                          sy-linsz.
    *--- Write Report Title.
      perform calc_col_and_write using    sy-title
                                          sy-linsz.
    *--- Write User Id, Date / Time, Program Id, Page etc.
      perform write_other_hdr_details.
      write:/ sy-uline(160) .
    ENDFORM.                    " report_header
    *&      Form  calc_col_and_write
          text
         -->P_TEXT_H00  text
         -->P_SY_LINSZ  text
    FORM calc_col_and_write USING    P_TEXT
                                     P_LINSZ.
      data: col1 type i,
             col2 type i,
              len  type i,
              str  type i.
      str  = strlen( p_text ).
      col1 = ( p_linsz / 2 ) - ( str / 2 ) .
      len  = p_linsz - col1 - 2.
      write: at  /1  '|'.
      write: at  col1 p_text,
             at  sy-colno(len) space.
      write  at  160 '|'.
    ENDFORM.                    " calc_col_and_write
    *&      Form  write_other_hdr_details
          text
    -->  p1        text
    <--  p2        text
    FORM write_other_hdr_details.
      data: col1 type i,
              col2 type i,
              len  type i.
      col1 = 3.
      write:/1 '|'.
      write: at  col1 'UserId  : ',
                      sy-uname.
      len = sy-linsz - 1.
      write at sy-colno(len) space.
      col2 = sy-linsz - 18.
      write: at col2 'Date: ',
                     sy-datum mm/dd/yyyy.
      write: at sy-linsz '|'.
      write:/1 '|'.
      write: at  col1 'ReportId: ',
                      sy-repid.
      write at sy-colno(len) space.
      col2 = sy-linsz - 18.
      write: at col2 'Page: ',
                      sy-pagno.
      write: at sy-linsz '|'.
    ENDFORM.                    " write_other_hdr_details
    *&      Form  get_data_component
          Get the data based on Component level
    FORM get_data_component.
      data wa_lines type i.
    *-- Get the BOM item details
      SELECT  stlty stlnr stlkn stpoz idnrk meins menge
              FROM stpo
              INTO TABLE t_stpo
      WHERE   idnrk IN s_idnrk.
      IF sy-subrc = 0.
        CLEAR wa_lines.
        DESCRIBE TABLE t_stpo LINES wa_lines.
        IF wa_lines > 0.
          SELECT  stlty stlnr stlal stkoz bmein bmeng
                  FROM stko
                  INTO TABLE t_stko
                  FOR ALL ENTRIES IN t_stpo
          WHERE stlnr = t_stpo-stlnr.
          CLEAR wa_lines.
          DELETE ADJACENT DUPLICATES FROM t_stko COMPARING ALL FIELDS.
          DESCRIBE TABLE t_stko LINES wa_lines.
          IF wa_lines > 0.
    *-- Get the BOM item details
            SELECT * FROM mast INTO TABLE t_mast FOR ALL ENTRIES IN t_stko
                                                WHERE werks = p_werks  AND
                                                  stlnr = t_stko-stlnr
                                                  and stlal in s_stlal.
          ENDIF.
        ENDIF.
      else.
        Write:/2 'List contains no data'.
        stop.
      endif.
      loop at t_mast.
        clear : v_maktx.
    Start of change  Seshu
    Reason - Remove the new page option
        if sy-tabix ne 1.
          skip 1.
        endif.
    End of change    Seshu
    Get the material Description
        select single maktx from makt into  v_maktx
                                 where matnr = t_mast-matnr
                                 and   spras = 'E'.
    Get the material details from STKO Table
        select single * from stko into wa_stko
                        where STLTY = 'M'
                        and   STLNR = t_mast-stlnr
                        and   STLAL = t_mast-stlal.
    Main Header for Each Material
        format color 5 on.
        write:/2 'Material',20 'Material Description',65 'Alternative BOM',
             90 'Base Qty', 115 'Base Unit'.
        format color 5 off.
        format color 1 on.
        write:/2 t_mast-matnr,20 v_maktx,65 wa_stko-STLAL, 85 wa_stko-BMENG,
               115 wa_stko-BMEIN.
        format color 1 off.
    Use the Function Module and get the format level by level
        perform get_level_level.
        clear : t_mast.
      endloop.
    ENDFORM.                    " get_data_component
    *&      Form  obj_ident
          text
    FORM obj_ident.
    weder Mat noch Doc
      CHECK: T_stb-objty NE otyp_mat,
             T_stb-objty NE ootyp_mat,
             T_stb-objty NE otyp_doc,
             T_stb-objty NE otyp_ntm.
    ?T418-WA schon ok
    nein
      IF T_stb-postp NE t418-postp.
        T418 einlesen
        PERFORM t418_lesen USING T_stb-postp.
      ENDIF.
      PERFORM cl_clstab_maint.
    ?MatNr-Eingabe bei diesem PosTyp moeglich
      und keine Textposition
    trifft zu
      IF     t418-matin NE '-'
         AND t418-txpos IS INITIAL.
        aktuelles Objekt ist Material NLAG
        T_stb-objty = '1'.
        PosKurztext in ObjKurztext uebernehmen.
        T_stb-ojtxp = T_stb-potx1.
        MODIFY T_stb.
      ELSE.
        IF T_stb-objty IS INITIAL.
          T_stb-objty = '2'.
          MODIFY T_stb.
        ENDIF.
      ENDIF.
    ENDFORM.                    " obj_ident
    *&      Form  t418_lesen
          text
         -->P_T_STB_POSTP  text
    FORM t418_lesen USING   lkl_postp LIKE stpo-postp.
    T418-WA initialisieren
      CLEAR:
         t418.
    Key angeben
      t418-postp = lkl_postp.
    PosTypDefinition lesen
      READ TABLE t418.
    ENDFORM.                    " t418_lesen
    *&      Form  cl_clstab_maint
          text
    FORM cl_clstab_maint.
    nur fuer Klassenpositionen
      CHECK t_STB-OBJTY EQ OTYP_KLA.
    Teilkey der Klassenpositionentabelle
      CL_CLSTAB-CLASS = t_STB-CLASS.
      CL_CLSTAB-KLART = t_STB-KLART.
    Klassenpositionentabelle lesen
      READ TABLE CL_CLSTAB
         WITH KEY CL_CLSTAB(21)
         BINARY SEARCH.
    aktuelle Klassenposition bereits in Klassenpositionentabelle
    nein
      IF SY-SUBRC <> 0.
        Klassenposition in Klassenpositionentabelle hinzufuegen
        INSERT CL_CLSTAB INDEX SY-TABIX.
      ENDIF.
    ENDFORM.                    " cl_clstab_maint
    *&      Form  alv_stb_prep
          Printing the data as LEVEL BY LEVEL
    FORM alv_stb_prep.
      CLEAR:
          alv_stb,
          stb_orig,
          stb_add.
      IF t_stb-hdnfo IS INITIAL.
        stb_orig = t_stb.
        IF t_stb-mngko >= max_num.
          stb_add-ovfls = ueberl_kz.
        ELSE.
          IF t_stb-mngko <= min_num.
            stb_add-ovfls = ueberl_kz.
          ELSE.
            CLEAR: stb_add-ovfls.
          ENDIF.
        ENDIF.
        IF NOT t_stb-xtlnr IS INITIAL.
          stb_add-bomfl = b_flag.
        ENDIF.
        IF    NOT t_stb-knobj IS INITIAL
           OR NOT t_stb-class IS INITIAL
           OR NOT t_stb-kzclb IS INITIAL.
          stb_add-knofl = 'X'.
        ENDIF.
      ELSE.
        CHECK t_stb-stufe > 1.
        alv_stb-info = 'C30'.
        IF t_stb-ttidx <> t_matcat-index.
          READ TABLE t_matcat INDEX t_stb-ttidx.
        ENDIF.
        stb_orig-hdnfo = t_stb-hdnfo.
        stb_orig-stufe = t_stb-stufe - 1 .
        stb_orig-ojtxp = t_stb-ojtxb.
        IF NOT t_stb-altst IS INITIAL.
          stb_orig-stlal = t_stb-stlal.
          IF stb_orig-stlal(1) EQ '0'.
            stb_orig-stlal(1) = ' '.
          ENDIF.
        ENDIF.
        stb_orig-idnrk = t_matcat-matnr.
      ENDIF.
      CLEAR:
        stb_add-dobjt,
        stb_add-objic.
      CASE t_stb-objty.
        WHEN otyp_mat.
          WRITE: stb_orig-idnrk TO ecfld.
          stb_add-objic = '@A6@'.
        WHEN 'M'.
          WRITE: stb_orig-idnrk TO ecfld.
          stb_add-objic = '@A6@'.
        WHEN otyp_noo.
          WRITE: stb_orig-potx1 TO ecfld.
          stb_add-objic = '@0Q@'.
        WHEN otyp_doc.
          write stb_orig-doknr to ecfld.                        "note 489354
          IF ecfld CP '*# '. ENDIF.                             "note 489354
          sy-fdpos = sy-fdpos + 1.                              "note 489354
          CONCATENATE
    *d      stb_orig-doknr                                      "note 489354
            stb_orig-dokar
            stb_orig-doktl
            stb_orig-dokvr
    *d      INTO ecfld                                          "note 489354
            INTO ecfld+sy-fdpos                                 "note 489354
            SEPARATED BY space.
          stb_add-objic = '@AR@'.
        WHEN otyp_kla.
          CONCATENATE
            stb_orig-class
            stb_orig-klart
            INTO ecfld
            SEPARATED BY space.
          stb_add-objic = '@7C@'.
        WHEN otyp_ntm.
          WRITE: stb_orig-intrm TO ecfld.
        WHEN OTHERS.
      ENDCASE.
    *d CONDENSE ecfld.                                          "note 515408
      stb_add-dobjt = ecfld(40).
      CLEAR: ecfld.
      WRITE stb_orig-stufe TO stb_add-dstuf NO-SIGN.
    *d  MOVE-CORRESPONDING stb_orig TO alv_stb.                 "note 331962
      MOVE-CORRESPONDING stb_add TO alv_stb.
      MOVE-CORRESPONDING stb_orig TO alv_stb.                   "note 331962
      APPEND alv_stb.
    ENDFORM.                    " alv_stb_prep
    *&      Form  get_level_level
          text
    FORM get_level_level.
      REFRESH : T_STB,
                T_MATCAT,
                ALV_STB.
      CLEAR : T_STB,
              T_MATCAT,
              ALV_STB.
      CALL FUNCTION 'CS_BOM_EXPL_MAT_V2'
           EXPORTING
                capid                 = 'PP01'
                datuv                 = sy-datum
                mktls                 = 'X'
                mehrs                 = 'X'
                mtnrv                 = t_mast-matnr
                stlal                 = '01'
                stlan                 = '1'
                stpst                 = 0
                svwvo                 = 'X'
                werks                 = p_werks
                vrsvo                 = 'X'
           TABLES
                stb                   = t_stb
                matcat                = t_matcat
           EXCEPTIONS
                alt_not_found         = 1
                call_invalid          = 2
                material_not_found    = 3
                missing_authorization = 4
                no_bom_found          = 5
                no_plant_data         = 6
                no_suitable_bom_found = 7
                conversion_error      = 8
                OTHERS                = 9.
      IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
      CLEAR: hd_tab.
            Entry der KlassenstatusTab. initialisieren
             cl_clstab,
            Entry 'Objekte von Klassen' initialisieren
             cl_objmemo.
      REFRESH: hd_tab.
      SORT t_matcat BY index ASCENDING.
    Get the All levels
      loop at t_stb.
        IF NOT t_stb-hdnfo IS INITIAL.
          EXIT.
        ENDIF.
    Object Identification
        PERFORM obj_ident.
        READ TABLE hd_tab
            WITH KEY stufe = t_stb-stufe
                     vwegx = t_stb-vwegx
            BINARY SEARCH
            TRANSPORTING NO FIELDS.
        ?gibt es diesen Satz schon
        nein
        IF sy-subrc <> 0.
           dann in SFP-Infosatzverweistab. aufnehmen
    *d       APPEND HD_TAB.                                       "HGH054648
          hd_tab-stufe = t_stb-stufe.
                                                                "HGH054648
          hd_tab-vwegx = t_stb-vwegx.
                                                                "HGH054648
          INSERT hd_tab                                         "HGH054648
            INTO hd_tab                                         "HGH054648
            INDEX sy-tabix.                                     "HGH054648
           PosNr initialisieren
          CLEAR: t_stb-posnr.
           SFP-InfosatzKz setzen
          t_stb-hdnfo = 'X'.
            stb-objty = otyp_mat.
                                                                "HGE246532
           als SFP-Infosatz in die STB aufnehmen
          append t_stb.
        ENDIF.
    *del  ENDIF.
        clear t_stb.
      endloop.
      SORT t_stb ASCENDING BY stufe
                  index ASCENDING
    *del        POSNR ASCENDING.                                  "HGC062735
                  posnr ASCENDING                               "HGC062735
                  hdnfo DESCENDING.
      LOOP AT t_stb.
        T_stb-index = sy-tabix.
        MODIFY T_stb.
        PERFORM alv_stb_prep.
      ENDLOOP.
    Displays the Value as Level by Level
      loop at ALV_stb.
        if sy-tabix = 1.
          format color 3 on.
          write:/2 'Level',12 'Item',22 'Component',
          42 'Material Description',82 'Base Qty',
          107 'Base Unit',120 'Assembly Indicator'.
          format color 3 on.
        endif.
        if alv_stb-MEINs is initial.
          v_flag = 'X'.
        endif.
        if v_flag = 'X'.
          format color 5 on.
          write:/2 ALV_stb-STUFE,12 alv_stb-posnr,22 alv_stb-idnrk,
                 42 alv_stb-OJTXP.
          format color 1 off.
        else.
          if alv_stb-STUFE = '1'.
            format color 1 on.
            write:/2 ALV_stb-STUFE,12 alv_stb-posnr,22 alv_stb-idnrk,
                   42 alv_stb-OJTXP,72 alv_stb-mngko,
                   107 alv_stb-MEINs, 120 alv_stb-bomfl .
            format color 1 off.
          elseif alv_stb-STUFE = '2'.
            format color 2 on.
            write:/2 alv_stb-STUFE,12 alv_stb-posnr,22 alv_stb-idnrk,
                   42 alv_stb-OJTXP,72 alv_stb-mngko,
                   107 alv_stb-MEINs,120 alv_stb-bomfl.
            format color 2 off.
          elseif alv_stb-STUFE = '3'.
            format color 3 on.
            write:/2 alv_stb-STUFE,12 alv_stb-posnr,22 alv_stb-idnrk,
                    42 alv_stb-OJTXP,72 alv_stb-mngko,
                    107 alv_stb-MEINs,120 alv_stb-bomfl .
            format color 3 off.
          elseif alv_stb-STUFE = '4'.
            format color 4 on.
            write:/2 alv_stb-STUFE,12 alv_stb-posnr,22 alv_stb-idnrk,
                    42 alv_stb-OJTXP,72 alv_stb-mngko,
                    107 alv_stb-MEINs,120 alv_stb-bomfl .
            format color 4 off.
          elseif alv_stb-STUFE = '5'.
            format color 5 on.
            write:/2 alv_stb-STUFE,12 alv_stb-posnr,22 alv_stb-idnrk,
                    42 alv_stb-OJTXP,72 alv_stb-mngko,
                    107 alv_stb-MEINs,120 alv_stb-bomfl .
            format color 5 off.
          elseif alv_stb-STUFE = '6'.
            format color 7 on.
            write:/2 alv_stb-STUFE,12 alv_stb-posnr,22 alv_stb-idnrk,
                   42 alv_stb-OJTXP,72 alv_stb-mngko,
                   107 alv_stb-MEINs,120 alv_stb-bomfl.
            format color 6 off.
          elseif alv_stb-STUFE = '7'.
            format color 7 on.
            write:/2 alv_stb-STUFE,12 alv_stb-posnr,22 alv_stb-idnrk,
                   42 alv_stb-OJTXP,72 alv_stb-mngko,
                   107 alv_stb-MEINs,120 alv_stb-bomfl .
            format color  7 off.
          else.
            format color 1 on.
            write:/2 alv_stb-STUFE,12 alv_stb-posnr,22 alv_stb-idnrk,
                    42 alv_stb-OJTXP,72 alv_stb-mngko,
                    107 alv_stb-MEINs,120 alv_stb-bomfl .
            format color  1 off.
          endif.
        endif.
        hide: alv_stb.
        clear : alv_stb.
        clear v_flag.
      endloop.
    ENDFORM.                    " get_level_level
    *&      Form  f4_for_variant
          text
    FORM f4_for_variant.
      CALL FUNCTION 'REUSE_ALV_VARIANT_F4'
             EXPORTING
                  is_variant          = g_variant
                  i_save              = g_save
                  i_tabname_header    = g_tabname_header
                  i_tabname_item      = g_tabname_item
              it_default_fieldcat =
             IMPORTING
                  e_exit              = g_exit
                  es_variant          = gx_variant
             EXCEPTIONS
                  not_found = 2.
      IF sy-subrc = 2.
        MESSAGE ID sy-msgid TYPE 'S'      NUMBER sy-msgno
                WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ELSE.
        IF g_exit = space.
          p_vari = gx_variant-variant.
        ENDIF.
      ENDIF.
    ENDFORM.                    " f4_for_variant
          FORM E03_EVENTTAB_BUILD                                       *
    -->  E03_LT_EVENTS                                                 *
    FORM e03_eventtab_build USING e03_lt_events TYPE slis_t_event.
      DATA: ls_event TYPE slis_alv_event.
      CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
           EXPORTING
                i_list_type = 0
           IMPORTING
                et_events   = e03_lt_events.
      READ TABLE e03_lt_events WITH KEY name = slis_ev_top_of_page
                               INTO ls_event.
      IF sy-subrc = 0.
        MOVE gc_formname_top_of_page TO ls_event-form.
        APPEND ls_event TO e03_lt_events.
      ENDIF.
    ENDFORM.
          FORM E04_COMMENT_BUILD                                        *
    -->  E04_LT_TOP_OF_PAGE                                     

  • Cash Discount vs Actually Availed

    Hi ,
    I need to develop a report showing customer wise analysis of cash discount provides and cash discount actually availed.
    This is my first object in FI . CAn anyone throw ligh ton what is an invoice reference ?
    what is an SD condition to provide CAsh discount ?
    what are the relevant tables I might have to explore?
    Thank u .

    Hi,
    1. Cash Discount Can be given both in FI and SD. If the company uses both then you have a tougher task.
    2. By "Cash discount provides", I guess you are refering to "Terms of Payment". In terms of payment we define the credit days and cash discount offer if paid early.
    Like 30 days 2 %.
    45 Days 1 %.
    3. The Cash discount condition record used in SD pricing procedure is normally CAS. But it can be anything like ZCAS or ZCD etc please check it in your system.
    4. VBRP (Billing Item level) & VBRK (Billing Header Level) are useful Tables. You will also require KONP (Conditions Related) table. BKPF table for FI -Credit note will be also helpful.
    Thanks,
    Ashish

  • AU not counting toward AAoA Equifax FICO score!!

    I recently pulled my Equifax FICO score and report. The Equifax FICO score usually indicates the oldest account that was opened and average age of accounts. I have a AAoA calculator which when populated with all the accounts on my credit report produces an AAoA of over 10 years. After messing around with the AAoA calulator, I figured out that the Equifax FICO calculation is not counting my AU credit card. When I delete the AU from the calculation, the AAoA produces 7 years, which matches the FICO report. Additionally, I saw on my FICO report that the oldest account was 29years 4months. The AU that is on my FICO report was opened 2/1984 which would be 31years 5months. Thought this interesting. Don't know if it has always been this way or if it is a new development or perhaps something wrong with the calculation of my credit report only. Kind of irritates me somewhat. I mean, if a AU isn't going to count toward your AAoA, what is the point other than having a good trade line on your report? As matter of fact, the AU card isn't counting toward my utilization either. Basically, it is there on the credit report, but seems invisible when FICO's calculates. I will try and determine if Experian and TransUnion FICO calculations are also treating it this way when I get around to pulling them. Will paste what I am seeing for Equifax You have an established credit history.Your oldest account was opened 29 Years, 4 Months agoAverage age of your accounts7 yearsFICO High Achievers opened their oldest account 25 years ago, on average.Most FICO High Achievers have an average age of accounts of 11 years or more. Ratio of your revolving balances to your credit limits1%For FICO High Achievers, the average ratio is less than 6%.Company                  Date opened    Balance      StatusSyncb/Belk AU               2/1984           $855         Pays account as agreed  (This is the AU) Macy's/Dsnb                    3/1986               $1         Pays account as agreed   ( FICO says this is my oldest account 29yrs 4mths)Usaa Savings Bank         1/2015             $41         Pays account as agreedAmalgamated Bank          8/2014              $0          Pays account as agreedBarclays Bank                  6/2015              $0          Pays account as agreedAmalgamated Bank          8/2014              $0          Pays account as agreedIberia Bank                       5/2003              $0          Pays account as agreedFmc-Omaha                    11/2003             $0          Pays account as agreed AAoA calulator with all accounts 10.63 yearsAAoA calulator without the Belk AU 7.75 years The Belk AU card is not counting toward my utilization either, as you can see FICO says 1%. If it counted the AU it would be 5 or 6%. Didn't know if this should be on this forum, or maybe Understanding FICO scoring forum. Any one have any input??

    Momof5 wrote:
    TRC_WA wrote:
    slimshady66 wrote:
     I am under the opinion, legally, it is suppose to count. And if it is counting or making a difference, how is it doing that without effecting AAoA or Utilization?Good question. My question is why AU's carry any weight at all in FICO scoring. If my FICO score is supposed to be an indication of how I pay my debts... how would being added to Mom's 30 year old CC and inheriting her payment history be any indication at all of how I would pay my debts? I was in like 4th grade 30 years ago.  The whole thing is just baffling to me.  I'm all for AU accounts... I have added my Dad to my Sallie Mae MC because he has a limited history and I wanted him to have a CC he can use on a daily basis... but IMHO the FICO score shouldn't be affected at all by someone else's account.I believe that this stems from the old housewives, married women don't get credit days.  The wife was an AU on DH's account, but was the one that actually managed the finances for the family.  This helped bring women into the credit world.Basically this, millions of stay-at-home spouses who didn't bother with credit effectively lost their credit scores when FICO 8 was introduced.  It was rolled back in favor of an anti-abuse algorithm to determine whether the AU counts or doesn't.  All or nothing now. Presumably the lenders don't want AU's to count still (or they wouldn't have pushed FICO to do that in the first place), it wouldn't surprise me if further tweaks happen.  FWIW I would strongly recommend everyone to have tradelines in their own name, regardless of AU's on the report.  While mortgages are leaving the mandate of having to have your own tradelines behind, it's simply better to have your own history period to fall back on. OP: you can't really trust any third party (including MF's) interpretation for an AAOA calculation.  I would be stunned and amazed if the abuse calculation was given to the front-end developers in FICO Consumer who wrote the simulator.

  • Help on Report Design

    Dear Expert,
    Please help me out in following Report Requirement.
    Our Management required to develop report which shows Customer Outstanding based on credit periods given to Customer. As the number of credit days varies customer wise. Customer credit days are maintained in Customer Master.
    How do I calculate outstanding of Customer within credit days & Overdue Outstanding in BEx Query Designer, I hope this might be possible using customer exit variable but this credit days limit is not fixed for all customer, then how to get it ?
    Please Help.
    Regards,
    DK

    In the gray section to the left of the report design, right-click on the group footer for the Account Code and select 'Section Expert'.  Turn on "New Page After".  To prevent a blank page at the end of your report, click on the formula button to the right of the check-box and enter "not OnLastRecord".
    -Dell
    - A computer only does what you told it to, not what you <em>thought</em> you told it to!

  • What is the function module to calculate "years of services" in HR?

    What is the function module to calculate "years of services" in HR?

    hi ,
    following function module will help you to find the years of service
    CALL FUNCTION 'HR_HK_TOTAL_YOS' "HR-HK: Calculate an employee's total years of service
      EXPORTING
        years1 =                    " pea_scryy     Years of service
        months1 =                   " pea_scrmm     Months of service
        days1 =                     " pea_scrdd     Days of service
        years2 =                    " pea_scryy     Credit years of service
        months2 =                   " pea_scrmm     Credit months of service
        days2 =                     " pea_scrdd     Credit days of service
      output_format = '01'        " char2         Format to display the output
      IMPORTING
        years =                     " pea_scryy     Total years of service
        months =                    " pea_scrmm     Total months of service
        days =                      " pea_scrdd     Total days of service
        .  "  HR_HK_TOTAL_YOS
    thanks u..

Maybe you are looking for

  • Question 1: new website takes forever to load.

    I just published my first website. The first page is all words and yet it takes forever to load. Why is this? The site is: http://shortpoem.org/ Any suggestions on how to speed things up? Thank you. (The credit page mentions Sandvov, however I remove

  • Authorizations for cost centers or profit centers on FI documents

    Hi, We need to assign some users to a role so they are allowed only to post documents that are related only to a specific cost centers or profit centers in the document. We try to do it using role authorizations transaccion PFCG, however we cannot fi

  • RE logical/physical standby database

    1. Why logical standby database is SQL apply, and Physical standby database is redo apply? What 's the meaning/objective for that? (pls don't tell me what is SQL/redo apply) 2. As we know, a logical standby database can be used for reporting and quer

  • User unable to create queries on a multiprovider that exists in production.

    Helo,     I have an  issue where one of the users  is unable to create queries in BE X on a multiprovider as the multiprovider is not geting listed .He gets the message "No objects found ". I have Checked and the multiprovider exist in test and produ

  • Audio Not Working Correc

    I am using a Soundblaster Audigy 2 on a Windows XP Professional Dell computer. When I run a diagnostic using Creative Diagnostics, I get the following results. Hardware Detection: Pass; Wave: Fail; Midi: Fail; Mixer: Fail; Direct Sound 3D: Pass; Soun