Customer exit error

Hi gurus,
In the debugger I looked at e_t_range and saw all 3 value lines.
how to get these values in the query. Can any one give the code for this.
thanks in advance.

Hi Rakesh,
thanks for reply,
i have created a customer exit variable for calculating the demand variability quantity.
for that in the selection screen of the query i am taking the plant, material and date values. ( plant and material are multiple sigle values and date field is interval)
this is the code for customer exit:
WHEN 'ZPRDEMVA'.
    IF i_step = 2.
      READ TABLE I_T_VAR_RANGE INTO LOC_VAR_RANGE
      WITH KEY VNAM = 'ZPRRNDT'.
      v_date = LOC_VAR_RANGE-LOW.
      v_year = v_date+0(4).
      v_month = v_date+4(2).
      v1_date = v_date+6(2).
      v3 = v_year - 1.
      v4 = v_month - 1.
      if v4 = 00.
        v4 = 12.
        v3 = v3 - 1.
      endif.
      concatenate v3 v4 v1_date into ddate.
      CALL FUNCTION 'DATE_GET_WEEK'
        EXPORTING
          DATE         = ddate
        IMPORTING
          WEEK         = zweek
        EXCEPTIONS
          DATE_INVALID = 1
          OTHERS       = 2.
      CALL FUNCTION 'WEEK_GET_FIRST_DAY'
        EXPORTING
          WEEK         = zweek
        IMPORTING
          DATE         = monday
        EXCEPTIONS
          WEEK_INVALID = 1
          OTHERS       = 2.
      sunday = monday + 6.
      v3_date = monday.
      v4_date = sunday.
      LOOP AT I_T_VAR_RANGE INTO LOC_VAR_RANGE
              WHERE VNAM = 'ZPRPLNML'.
        CLEAR L_S_RANGE.
        v_werks          = LOC_VAR_RANGE-LOW.
        LOOP AT I_T_VAR_RANGE INTO LOC_VAR_RANGE
                WHERE VNAM = 'ZPRMATML'.
          CLEAR L_S_RANGE.
          v_matnr          = LOC_VAR_RANGE-LOW.
          data: dummy_menge like i_mseg-menge value '0.01'.
          Do 52 times.
            select MATERIAL PLANT QUANT_B MOVETYPE
                  from /BIC/AWINO0100 into  table  i_mseg
                  where PSTNG_DATE between monday and sunday
                  and   MOVETYPE between 261 and 262
                  and   MATERIAL = v_matnr
                  and   PLANT = v_werks.
            if sy-subrc NE 0.
              i_mseg-menge = '0.01'.
              i_mseg-matnr = v_matnr.
              i_mseg-werks = v_werks.
              i_mseg-bwart = '261'.
              append i_mseg.
            endif.
            loop at i_mseg.
              itab1-matnr = i_mseg-matnr.
              itab1-werks = i_mseg-werks.
              itab1-menge = itab1-menge + i_mseg-menge.
              itab1-bwart = i_mseg-bwart.
              COLLECT i_mseg into itab1.
            endloop.
            sort itab1 by matnr werks bwart.
            loop at itab1 where bwart = '261'.
              itab2-matnr = itab1-matnr.
              itab2-werks = itab1-werks.
              itab2-bwart = itab1-bwart.
              itab2-menge = itab1-menge.
              read table itab1 with key matnr = itab2-matnr
                                        werks = itab2-werks
                                        bwart = '262'.
              if sy-subrc = 0.
                itab2-menge =  itab2-menge - itab1-menge.
              endif.
              append itab2.
            endloop.
            clear itab1[].
            refresh itab1.
            sunday = sunday + 7.
            monday = monday + 7.
          ENDDO.
          loop at itab2.
            sum1 = sum1 + itab2-menge.
          endloop.
          average = sum1 / 52.
          loop at itab2.
            sum2 = sum2 + ( ( itab2-menge - average ) *  ( itab2-menge - average ) ).
          endloop.
          sum2 = sqrt( sum2 / 52 ).
          l_s_range-sign = 'I'.
          l_s_range-opt = 'EQ'.
          l_s_range-low = sum2.
          append l_s_range to E_T_RANGE.
          clear itab2[].
          refresh itab2.
          sum1 = 0.
          sum2 = 0.
          monday = v3_date.
          sunday = v4_date.
        ENDLOOP.
      ENDLOOP.
    ENDIF.
here my problem is when i execute a query with single plant and material then i am getting the demand variability quantity in the report. but when i execute a query with multiple single plant or materia values, the output it is giving the same value to all the combinations of plant and material.
thanks

Similar Messages

  • Error while trying to Execute the Query with Customer Exit

    Hi Experts,
           I am having a Query with Customer Exit, it is working fine for all the Employess, except for one. When i try to remove the Customer Exit it is working for her too. Below is the error i am getting.
    system error in program SAPLLRK0 and form RSRDR; CHECK_NAV_INIT_BACK
    Thanks,
    Kris.

    Hello Kris,
    Are you working with multiprovider? Please check if OSS notes 813454,840080 or 578948 are applicable in your case.
    Regards,
    Praveen

  • Display Error Message in BW Report based on Customer Exit Variable

    Hi
    I need to display an error message in the BW report based on the value of a customer exit variable - i was able to do this successfully in BW3.5 using the below code.
      WHEN 'ZUPN'. "Here ZUPN is the customer exit variable
        IF i_step = 1.
          <check for condition -- if successful, variable flag = 1, else variable flag = 0>
          IF flag = 0.
            MESSAGE e157(00). "Error Message
          ENDIF.
        ENDIF.
    I have upgraded my system to BI 7.0 now. Whenever the variable check is not successful, it displays a blank screen instead of the error message in the report. Please advice if we need to change the code and how ??

    Bhanu,
      Thanks for u r reply.This warning message appears every time i execute the report through portal.
    Any idea ?
    Regards
    Mano

  • Customer Exit Variable on Cal Year/Month Error

    Hi Experts
    My requirment is to develop a Restricted Keyfigure...
    The restriction is based on 0Calmonth (Calendar Year/Month)
    The sales from beginning of calendar year up to last "closed" month in a Calendar.
    Ex: in June i want to see 01.01.2009 to 31.05.2009 data.
    in October i want to see 01.01.2009 to 30.09.2009 data.
    When user execute the report
    in Jan 2010 i want to see 0 as there is no closed month in that particular year.
    in Fed 2010 i want to see 01.01.2010 to 31.01.2010 data.
    For that purpose i created a variable
    Customer Exit on calendar Year/Month
    Variable represents : Interval
    Variable is : Mandatory
    Variable is Ready for Input (Uncheck)
    in CMOD...i had written The below Code
    WHEN 'ZYCCM' . "Current Year Culm. to Last Closed Month
    DATA :Month(2) type c,
    Start_Month like rsd_c_timnm-calmonth,
    End_Month like rsd_c_timnm-calmonth.
    Month = sy-datum+4(2).
    if Month = '01'.
    Start_Month = '000000'.
    End_Month = '000000'.
    Else.
    concatenate sy-datum(4)'01' into Start_Month.
    End_Month = sy-datum(6) - 1.
    Endif.
    CLEAR L_S_RANGE.
    L_S_RANGE-SIGN = 'I'.
    L_S_RANGE-OPT = 'BT'.
    L_S_RANGE-LOW = Start_Month.
    L_S_RANGE-HIGH = End_Month.
    When i execute the report i am getting an error
    "No Value Could be determined for Variable ZYCCM"
    Please update what went wrong and how to Correct error

    Hi
    Thanks for the update..
    Modified code as below
    WHEN 'ZYCCM' . "Current Year Culm. to Last Closed Month
    DATA :Month(2) type c,
    Start_Month like rsd_c_timnm-calmonth,
    End_Month like rsd_c_timnm-calmonth.
    Month = sy-datum+4(2).
    if Month = '01'.
    Start_Month = '000000'.
    End_Month = '000000'.
    Else.
    concatenate sy-datum(4)'01' into Start_Month.
    End_Month = sy-datum(6) - 1.
    Endif.
    CLEAR L_S_RANGE.
    L_S_RANGE-LOW = Start_Month.
    L_S_RANGE-HIGH = End_Month.
    L_S_RANGE-SIGN = 'I'.
    L_S_RANGE-OPT = 'BT'.
    APPEND l_s_range TO e_t_range.
    But when i executed the report....the report is executed sucessfully but the restriction applied to only Jan 2009
    When i saw the KF definition in RSRT 
    I EQ JAN 2009
    I am expecting
    BT JAN2009 APRIL2009
    Please help
    Tahnks

  • Error message in customer exit

    HI ABAPer's,
    I am facing the one problem  while giving the error message in customer exit  ZXM06U43(POCustomer exit). The scenario is i am looping the  tekpo(PO line item) internal tables and doing some validations if any lineitem fail in the validation i need  give the error message .I dd the  but all ways it showing the error in last line item in the  PO.
    Thanks,
    Harinath

    Hi,
    You have to either leave the screen. Also you can try EXIT in place of LEAVE SCREEN as per suitable to your transaction.
    SAMPLE CODE:
      IF SY-SUBRC <> 0.
        MESSAGE E059(ZGO) WITH I_MSEG-MATNR I_MSEG-AUFNR.
        LEAVE SCREEN.
      ENDIF.
    Regds,
    Anil
    Edited by: Anil Katoch on Sep 3, 2009 7:37 AM

  • Customer Exit Variable - Variable Value Error BRAIN 000

    I created a variable which is processed by 'Customer Exit'. This variable is 'optional' and NOT user input required.
    And i have written my code in customer exit under I_STEP EQ 1.
    I used the variable in my query as a default value for a free characteristic.
    The query runs fine and return me the correct result.
    The problem is when i used the same variable as a default value of a free characteristic in another query which has another user input variable for another characteristic, i got a warning message after input a value for another variable.
    Variable Value Error BRAIN 000 <<i>my variable name</i>>
    How to make it work in the second query?
    Please help as I am new to this.
    Thanks,
    CH

    Hi Fernanda,
    Try this:
    DATA:  LS_RA_SID  TYPE   RSR_S_RANGESID.
    DATA:  fst_date LIKE sy-datum.
       CASE i_vnam.
              WHEN 'ZRANGE_PREVMONTH'.
    fst_date = sy-datum - 1.
    concatenate fst_date(6) '01' into ls_ra_sid-low.
          ls_ra_sid-sign = 'I'.
          ls_ra_sid-opt = 'BT'.
          ls_ra_sid-high = fst_date.
          APPEND ls_ra_sid TO e_t_range.
    ENDLOOP.
    ENDCASE.
       ENDIF.
    Just post here for any queries..
    Regards,
    Loed

  • Customer exit variable output error

    Hi gurus,
    I have created one customer exit variable. in the selection screen i am giving multiple plant and material value,
    my code is working for sigle plant and single material.
    when i have taken multiple value. i am getting error message
    error is 'No value determined for th variable"
    When i debug my code in RSRT, it is giving all the values for different combination of plant and material. and those values are getting in the E_T_RANGE.
    but out put it is giving the error.
    my code is:
    WHEN 'ZPRDEMVA'.
        IF i_step = 2.
          READ TABLE I_T_VAR_RANGE INTO LOC_VAR_RANGE
          WITH KEY VNAM = 'ZPRRNDT'.
          v_date = LOC_VAR_RANGE-LOW.
          v_year = v_date+0(4).
          v_month = v_date+4(2).
          v1_date = v_date+6(2).
          v3 = v_year - 1.
          v4 = v_month - 1.
          if v4 = 00.
          v4 = 12.
          v3 = v3 - 1.
          endif.
          concatenate v3 v4 v1_date into ddate.
          CALL FUNCTION 'DATE_GET_WEEK'
            EXPORTING
              DATE         = ddate
            IMPORTING
              WEEK         = zweek
            EXCEPTIONS
              DATE_INVALID = 1
              OTHERS       = 2.
          CALL FUNCTION 'WEEK_GET_FIRST_DAY'
            EXPORTING
              WEEK         = zweek
            IMPORTING
              DATE         = monday
            EXCEPTIONS
              WEEK_INVALID = 1
              OTHERS       = 2.
          sunday = monday + 6.
          v3_date = monday.
          v4_date = sunday.
          LOOP AT I_T_VAR_RANGE INTO LOC_VAR_RANGE
                  WHERE VNAM = 'ZPRPLNML'.
          CLEAR L_S_RANGE.
            v_werks          = LOC_VAR_RANGE-LOW.
          LOOP AT I_T_VAR_RANGE INTO LOC_VAR_RANGE
                  WHERE VNAM = 'ZPRMATML'.
          CLEAR L_S_RANGE.
            v_matnr          = LOC_VAR_RANGE-LOW.
          data: dummy_menge like i_mseg-menge value '0.01'.
          Do 52 times.
               select MATERIAL PLANT QUANT_B MOVETYPE
                     from /BIC/AWINO0100 into  table  i_mseg
                     where PSTNG_DATE between monday and sunday
                     and   MOVETYPE between 261 and 262
                     and   MATERIAL = v_matnr
                     and   PLANT = v_werks.
                         if sy-subrc NE 0.
                           i_mseg-menge = '0.01'.
                           i_mseg-matnr = v_matnr.
                           i_mseg-werks = v_werks.
                           i_mseg-bwart = '261'.
                           append i_mseg.
                         endif.
            loop at i_mseg.
              itab1-matnr = i_mseg-matnr.
              itab1-werks = i_mseg-werks.
              itab1-menge = itab1-menge + i_mseg-menge.
              itab1-bwart = i_mseg-bwart.
              COLLECT i_mseg into itab1.
            endloop.
            sort itab1 by matnr werks bwart.
            loop at itab1 where bwart = '261'.
              itab2-matnr = itab1-matnr.
              itab2-werks = itab1-werks.
              itab2-bwart = itab1-bwart.
              itab2-menge = itab1-menge.
              read table itab1 with key matnr = itab2-matnr
                                        werks = itab2-werks
                                        bwart = '262'.
              if sy-subrc = 0.
                itab2-menge =  itab2-menge - itab1-menge.
              endif.
              append itab2.
            endloop.
            clear itab1[].
            refresh itab1.
            sunday = sunday + 7.
            monday = monday + 7.
          ENDDO.
          loop at itab2.
            sum1 = sum1 + itab2-menge.
          endloop.
          average = sum1 / 52.
          loop at itab2.
            sum2 = sum2 + ( ( itab2-menge - average ) *  ( itab2-menge - average ) ).
          endloop.
          sum2 = sqrt( sum2 / 52 ).
          l_s_range-sign = 'I'.
          l_s_range-opt = 'EQ'.
          l_s_range-low = sum2.
          Append l_s_range to E_T_RANGE.
          clear itab2[].
          refresh itab2.
          sum1 = 0.
          sum2 = 0.
          monday = v3_date.
          sunday = v4_date.
          ENDLOOP.
          ENDLOOP.
        ENDIF.
    Can any one please help me.
    Thanks in advance.

    Hi Alec,
    i created a customer exit with the formula variable only. in the code i am getting the both quantity and unit fields. now i want to get quantity with unit in output.
    thanks

  • Customer Exit VAriable Error

    Hi
      Please fix this or update me on how to fix it as i am struggling to fix
    I created a restricted Key Figure based on Info object data Type DATS
    User Enter Date intreval 01.01.2007 to 31.12.2007
    My requirment is to develop a Variable on Cal Year/Month (0CALNONTH) of Processing Type CUSTOMER EXIT that will take the user input date and display the Year/Month accordingly
    Code
    When 'EXIT_CYM_VAR'.
        DATA: Low_ymon1 Type N,
              High_ymon1 Type N.
        IF i_step = 2.
          LOOP AT i_t_var_range INTO  ls_varrange
              Where vnam = '0I_DAYS'."User Specified Key date Intreval
            CLEAR l_s_range.
            Low_ymon1 = ls_varrange-low+0(6).
            High_ymon1 = ls_varrange-high+0(6).
            l_s_range-low = Low_ymon1.
            l_s_range-high = High_ymon1.
            l_s_range-sign = 'I'.
            l_s_range-opt = 'BT'.
            APPEND l_s_range TO e_t_range.
          ENDLOOP.
        ENDIF.
    Error
    Check the user exit for variable EXIT_CYM_VAR. Make sure that variables for characteristic values are in internal format and are not compounded. This means, for example, that a date variable must have the value 20000914 and not the value 14.09.2000.
    Thanks

    Hi,
    may be u try this.
    When 'EXIT_CYM_VAR'.
    DATA: Low_ymon1(6) Type N,
    High_ymon1(6) Type N.
    IF i_step = 2.
    Read i_t_var_range INTO ls_varrange
    Where vnam = '0I_DAYS'."User Specified Key date Intreval
    CLEAR l_s_range.
    Low_ymon1 = ls_varrange-low+0(6).
    High_ymon1 = ls_varrange-high+0(6).
    l_s_range-low = Low_ymon1.
    l_s_range-high = High_ymon1.
    l_s_range-sign = 'I'.
    l_s_range-opt = 'BT'.
    APPEND l_s_range TO e_t_range.
    ENDIF.
    regards,
    rakesh.

  • Error creating Customer Exit variable, please help

    Hi Experts,
    This is the scenario, I need to obtain the convertion rate from the table TCURR in order to convert several currencies to USD, so I created a Customer Exit variable that gets the Period and based on that obtains the conversion rate for the last day of the given month from TCURR, the problem is when I created the Formula Variable to get the value from the Customer exit variable I got the following error:
    'ZVARREGEXIT' ALREADY EXISTS; SELECT A DIFFERENT NAME.
    But in not using that name anywhere on my variables creation, Im doing something wrong? How can I check wheres is that variable being used.
    Ideas, comments are always welcome and appreciated.
    Regards.

    Hi Ed,
    Open Admin Workbench (RSA1) and choose Transport Connection --> Object Types --> Query Elements --> Variable --> Select Objects. Find the variable of interest and transfer it back to the main screen, then right-click and choose 'Display Description'. That will show you a "where used" list of queries, workbooks, etc.
    Next, you can use the previous technique to open one of the queries, find the variable in the query, and determine which InfoObject it is associated with.
    Hope this helps!
    Regards,
    Saurabh

  • Error in Customer Exit

    Hi Guys,
    I hope someone would be able to quickly point me in the right direction. I have the following error message:
    "Diagnosis
    This internal error is a deliberate termination, since a program status has arisen, that is not allowed to occur.
    The error has arisen for variable ZMOVETYP1 in the customer enhancement .
    Procedure
    Please check your customer enhancement.
    Procedure for System Administration"
    ZMOVETYP1 is of Variable Type=Characteristic, Processing= Customer exit, Variable represents=Multiple single values, variable is Optional, and NOT Input ready. Basically I want to use this variable in a FILTER on movement types in order to EXCLUDE certain movement types based on calendar VALIDTO date and company code.
    TRICKY part: how to send/load into l_s_range-low more than one value. Basically I want to exclude a PAIR of movement types each time. Either 301&302 , either 351&352.
    Below is the code:
      WHEN 'ZMOVETYP1'.
         IF i_step = 2.
            DATA: zcompcode TYPE /BI0/PCOMP_CODE-comp_code,
                  zvalidto TYPE sydatum.
            loop at i_t_var_range INTO l_t_var_range where vnam = 'ZMPD002'.
            endloop.
            if sy-subrc = 0.
    * select the upper part of the 0CALDAY interval, ZMPD002 is basically VALIDTO, based on validfrom-validto interval
    * specified by the user
             zvalidto = l_t_var_range-low.
            endif.
            loop at i_t_var_range INTO l_t_var_range where vnam = '0S_COCD'.
    * select the company code based on the user input
            endloop.
            if sy-subrc = 0.
             zcompcode = l_t_var_range-low.
            endif.
             if zcompcode = '1L01'.
               if zvalidto >= '01.11.2010'.
    * if validto date is bigger or equal to 01.11.2010 exclude from the filter the values 301 and 302
                l_s_range-low = '301'.
                l_s_range-sign = '*E*'.
                l_s_range-opt = 'EQ'.
                APPEND l_s_range TO e_t_range.
                l_s_range-low = '302'.
                l_s_range-sign = '*E*'.
                l_s_range-opt = 'EQ'.
                APPEND l_s_range to e_t_range.
               else.
    * if validto is lower than 01.11.2010 exclude from the filter the values 351 and 352
                l_s_range-low = '351'.
                l_s_range-sign = '*E*'.
                l_s_range-opt = 'EQ'.
                APPEND l_s_range TO e_t_range.
                l_s_range-low = '352'.
                l_s_range-sign = '*E*'.
                l_s_range-opt = 'EQ'.
                APPEND l_s_range to e_t_range.
               endif.
             endif.
         endif.
    Edited by: Dan on Dec 27, 2010 8:46 PM
    Edited by: Dan on Dec 27, 2010 8:48 PM

    try using the below code...
      WHEN 'ZMOVETYP1'.
         IF i_step = 2.
            DATA: zcompcode TYPE /BI0/PCOMP_CODE-comp_code,
                  zvalidto TYPE sydatum.
            read table i_t_var_range INTO l_t_var_range where vnam = 'ZMPD002'.
            if sy-subrc = 0.
             zvalidto = l_t_var_range-low.
            endif.
            read table i_t_var_range INTO l_t_var_range where vnam = '0S_COCD'.
            if sy-subrc = 0.
             zcompcode = l_t_var_range-low.
            endif.
             if zcompcode = '1L01'.
               if zvalidto >= '20101101'.
                l_s_range-low = '301'.
                l_s_range-sign = 'E'.
                l_s_range-opt = 'EQ'.
                APPEND l_s_range TO e_t_range.
                l_s_range-low = '302'.
                l_s_range-sign = 'E'.
                l_s_range-opt = 'EQ'.
                APPEND l_s_range to e_t_range.
               else.
                l_s_range-low = '351'.
                l_s_range-sign = 'E'.
                l_s_range-opt = 'EQ'.
                APPEND l_s_range TO e_t_range.
                l_s_range-low = '352'.
                l_s_range-sign = 'E'.
                l_s_range-opt = 'EQ'.
                APPEND l_s_range to e_t_range.
               endif.
             endif.
         endif.
    rgds, Ghuru

  • Error With Customer Exit Variable

    Hi,
    I need To Create Customer Exit For Text Variable based on Two Input Variable values.
    can any one correct my code Code is written below based on quarter and Fiscalyearvarient.
    I have to get calmonth Text value.
    I am getting the error as : "I_T_VAR_RANGE" is a table without a header line and therefore has no
    Component Called "0PERIV".
    DATA :  l_s_range TYPE rsr_s_rangesid,
            loc_var_range LIKE rrrangeexit.
    IF i_step = 2.
    CASE i_vnam.
       WHEN 'ZTXT_CML' .
          CLEAR: l_s_range.
          LOOP AT i_t_var_range INTO L_S_VNAM WHERE vnam = 'ZQUAR' AND vnam = '0periv'.
            IF i_t_Var_range-0PERIV = 'IE'.
              IF i_t_var_range-ZQUAR = '1'.
                l_s_range-low = 'APRIL'.
                l_s_range-sign = 'I'.
                l_s_range-opt = 'EQ'.
              ELSEIF i_t_var_range-ZQUAR = '2'.
                l_s_range-low = 'JULY'.
                l_s_range-sign = 'I'.
                l_s_range-opt = 'EQ'.
              ELSEIF i_t_var_range-ZQUAR = '3'.
                l_s_range-low = 'OCTOBER'.
                l_s_range-sign = 'I'.
                l_s_range-opt = 'EQ'.
              ELSEIF i_t_var_range-ZQUAR = '4'.
                l_s_range-low = 'JANUARY'.
                l_s_range-sign = 'I'.
                l_s_range-opt = 'EQ'.
              ENDIF.
            ELSEIF i_t_var_range-0PERIV = 'K4'.
              IF i_t_var_range-ZQUAR = '1'.
                l_s_range-low = 'JANUARY'.
                l_s_range-sign = 'I'.
                l_s_range-opt = 'EQ'.
              ELSEIF i_t_var_range-ZQUAR = '2'.
                l_s_range-low = 'APRIL'.
                l_s_range-sign = 'I'.
                l_s_range-opt = 'EQ'.
              ELSEIF i_t_var_range-ZQUAR = '3'.
                l_s_range-low = 'JULY'.
                l_s_range-sign = 'I'.
                l_s_range-opt = 'EQ'.
              ELSEIF i_t_var_range-ZQUAR = '4'.
                l_s_range-low = 'OCTOBER'.
                l_s_range-sign = 'I'.
                l_s_range-opt = 'EQ'.
              ENDIF.
            ENDIF.
              APPEND l_s_range TO e_t_range.
          ENDLOOP.
      ENDCASE.
    ENDIF.

    Hi Supraja,
    You would have to declare I_T_VAR_RANGE internal table as the table with an header line.
    This you will find in data declaration segment.
    ie
    DATA : I_T_VAR_RANGE type <table name> WITH HEADER LINE.
    or
    Create a work area like l_s_var_range.
    Use work area while performing operations in your code and later append the record to the table i_t_var_range.
    DATA : L_S_VAR_RANGE type i_t_var_range.
    Also, i_step = 3 is the right one, because you are processing the customer exit based on the values of the user input of two variables.
    Modified code below.
    DATA : l_s_range TYPE rsr_s_rangesid.
    DATA : L_S_VAR_RANGE type i_t_var_range,
    loc_var_range LIKE rrrangeexit.
    IF i_step = 3.
    CASE i_vnam.
    WHEN 'ZTXT_CML' .
    CLEAR: l_s_range.
    LOOP AT i_t_var_range INTO l_s_var_range WHERE vnam = 'ZQUAR' AND vnam = '0periv'.
    IF l svar_range -0PERIV = 'IE'.
    IF l_s_var_range -ZQUAR = '1'.
    l_s_range-low = 'APRIL'.
    l_s_range-sign = 'I'.
    l_s_range-opt = 'EQ'.
    ELSEIF l_s_var_range -ZQUAR = '2'.
    l_s_range-low = 'JULY'.
    l_s_range-sign = 'I'.
    l_s_range-opt = 'EQ'.
    ELSEIF l_s_var_range -ZQUAR = '3'.
    l_s_range-low = 'OCTOBER'.
    l_s_range-sign = 'I'.
    l_s_range-opt = 'EQ'.
    ELSEIFl_s_var_range -ZQUAR = '4'.
    l_s_range-low = 'JANUARY'.
    l_s_range-sign = 'I'.
    l_s_range-opt = 'EQ'.
    ENDIF.
    ELSEIFl_s_var_range -0PERIV = 'K4'.
    IF i_t_var_range-ZQUAR = '1'.
    l_s_range-low = 'JANUARY'.
    l_s_range-sign = 'I'.
    l_s_range-opt = 'EQ'.
    ELSEIF l_s_var_range -ZQUAR = '2'.
    l_s_range-low = 'APRIL'.
    l_s_range-sign = 'I'.
    l_s_range-opt = 'EQ'.
    ELSEIF l_s_var_range -ZQUAR = '3'.
    l_s_range-low = 'JULY'.
    l_s_range-sign = 'I'.
    l_s_range-opt = 'EQ'.
    ELSEIF l_s_var_range -ZQUAR = '4'.
    l_s_range-low = 'OCTOBER'.
    l_s_range-sign = 'I'.
    l_s_range-opt = 'EQ'.
    ENDIF.
    ENDIF.
    APPEND l_s_range TO e_t_range.
    ENDLOOP.
    ENDCASE.
    ENDIF.
    Hope it helps,
    Best regards,
    Sunmit.

  • Error with a customer exit variable

    I have a customer exit variable in a characteristic (0fiscyear). Also I have a manual input variable on the characteristic 0fiscper. The customer exit collects the four digits of the year that the user introduces a screen for the characteristic 0fiscper. Collect the value correctly and in the development system does not give error, but in the production system said that "the value 2008 (for example) is not valid for 0fiscyear characteristic". The two systems are at the same level of patches and queries are identical. Any idea why this error??
    Thanks and regards
    Ricardo

    No value at all behind 0fiscyear ?

  • Error Message : " No value could be determined for Customer Exit Variable "

    Hello BI Experts ,
    I have created a "ZYTD_PERIOD" Customer Exit Variable  Interval  Mandatory and ready for input check mark removed.
    The reference character is '0FISCPER' .
    I want to have YTD figures when the user enter single Fiscal Year Period for variable 0P_FPER.
    So I have written below code in SE37 : EXIT_SAPLRRS0_001 and include program : ZXRSRU01
    ==================================================================
      case i_vnam.
                  WHEN 'ZYTD_PERIOD'.
                  IF I_STEP = 2.
                  LOOP AT I_T_VAR_RANGE INTO LOC_VAR_RANGE WHERE VNAM = '0P_FPER'.
                  CLEAR L_S_RANGE.
                  L_S_RANGE-LOW0(4) = LOC_VAR_RANGE-LOW0(4).
                  L_S_RANGE-LOW+4(3) = '001'.
                  L_S_RANGE-HIGH = LOC_VAR_RANGE-LOW.
                  L_S_RANGE-SIGN = 'I'.
                  L_S_RANGE-OPT = 'BT'.
                  APPEND L_S_RANGE TO E_T_RANGE.
                  EXIT.
                  ENDLOOP.
                  ENDIF.
    ===================================================================
    After that I use this 'ZYTD_PERIOD' variable in the query .
    Also I have used the variable 0P_FPER in another structure.
    When I execute the query by entering the value of 0P_FPER as 010.2009 or any other value ,
    I am getting below error message ,
    *No value could be determined for variable ZYTDPERIOD*_
    Below is details of this Error message ,
    Note that I have proper Master and Text data for 0CO_AREA and 0COMP_CODE loaded into BI.
    =======================================================================
    Diagnosis
    This error diagnosis is specific only to the variables 0P_FVAEX or 0P_CTPCA !
    Termination message BRAIN 632 appears:
    Could not determine value for variable 0P_FVAEX (or 0P_CTPCA).
    System Response
    1. Operation method of SAP-Exit-Variables 0P_FVAEX or 0P_CTPCA
    With queries from the CO application, both SAP-Exit-Variables look for an entry for 'controlling area'. With this controlling area from the selection screen, the SAP-Exit-Variables program reads the attributes for InfoObject 0CO_AREA (controlling area).
    With queries from the FI application, the SAP Exit Variable 0P_FVAEX looks for an entry for 'company code'. With this company code from the selection screen, the SAP Exit Variables program reads the attributes for InfoObject 0COMP_CODE (Company Code).
    0P_FVAEX determines the fiscal year variant (attribute 0FISCVARNT) from the attributes for 0CO_AREA (CO queries) or 0COMP_CODE (FI queries). 0P_CTPCA determines the currency type of the profit center local currency (attribute 0CURTP_PCA) from the attributes for 0CO_AREA.
    2. Cause of Error
    The attributes for the controlling area (InfoObject 0CO_AREA) or company code (InfoObject 0COMP_CODE) were not loaded into the BW system, or the attributes for the controlling area are not active in the BW system.
    Check whether this is the cause of the error in your BW system. Display the contents of table /bi0/mco_area or /bi0/mcomp_code using transaction se16.
    Application CO:
    Check whether the attributes 'fiscal year variant' (field FISCVARNT) and 'profit center local currency currency type' (field CURTP_PCA) are filled in the 'A' version (field OBJVERS) for the selected controlling area. If the fiscal year variant in the OBJVERS = 'A' is empty, then the error is with variable 0P_FVAEX. If the currency type of the profit center's local currency in OBJVERS = 'A' is empty, then the error is with variable 0P_CTPCA.
    Application FI:
    Check whether or not the attribute 'fiscal year variant' (field FISCVARNT) is filled in the 'A' version (field OBJVERS) for the selected controlling area. If the fiscal year variant is empty in OBJVERS= 'A', then the error is with variable 0P_FVAEX.
    Procedure
    Using InfoSource 0CO_AREA, load the attributes for the controlling area or company code into your BW system.
    Afterwards, activate the attribute changes in your BW system. To do this, use transaction rsa1, path 'Tools > Hierarchy/Attribute changes', functions button 'InfoObject list'. Choose InfoObject 0CO_AREA or 0COMP_CODE from this list, and activate the attribute changes.
    =====================================================================================
    Is there any special settings needed before writing BEx Customer Exit ?
    I have already created a project in CMOD and assinged a proper RSR00001
    and EXIT_SAPLRRS0_001 and project is active.
    Any help please ....
    Regards ,
    Amol

    My Code is as below ,
              case i_vnam.
                  WHEN 'ZYTD_PERIOD'.
                  IF I_STEP = 2.
                  LOOP AT I_T_VAR_RANGE INTO LOC_VAR_RANGE WHERE VNAM = '0P_FPER'.
                  CLEAR L_S_RANGE.
                  L_S_RANGE-LOW0(4) = LOC_VAR_RANGE-LOW0(4).
                  L_S_RANGE-LOW+4(3) = '001'.
                  L_S_RANGE-HIGH = LOC_VAR_RANGE-LOW.
                  L_S_RANGE-SIGN = 'I'.
                  L_S_RANGE-OPT = 'BT'.
                  APPEND L_S_RANGE TO E_T_RANGE.
                  EXIT.
                  ENDLOOP.
                  ENDIF.
                  ENDCASE.

  • Error rro01_s_rkb1f  unknown when creating a customer exit variable.

    Hi,
    I am creating a customer exit variable( i am new to abap).I wrote the code and when i am activating it i am getting the  "error rro01_s_rkb1f unknown". I double clicked on that and i saw that it is Declared in RRO01 as TYPES: rro01_s_rkb1f as rrkb1f.
    And when i saw this rrkb1f it was not active , then i activated it.Even then i am getting this error.
    Can anyone help me on this.
    Thank you
    mandha

    hi,
    I solved it some type pools wer not declared.

  • Customer Exit  (ABAP) Error

    Hi Experts,
    I developed a Customer Exit Variable (BEx)..ZVDAT
    In Variable definition i defined  'Processing Type-Customer Exit' and in CMOD i have written below code
    My requirment is to display records whose Expiry Date is Greater than and equal(>=)  to Current Sys Date (Current Date)
    The system is not displaying any error but when i execute query it is not displaying the desired
    Please correct any errors in the code below
    IF I_STEP = 1.
    CASE i_vnam.
    WHEN 'ZEDAT'.  "Policy  Expiry Date"
    CLEAR: l_s_range.
    l_s_range-low  = sy-datum.
    l_s_range-opt = 'GE'.
    l_s_range-sign = 'I'.
    APPEND l_s_range TO e_t_range.
    Endcase.
    Endif.

    Hi,
       Use the below code and try your program. I think this is the one you should use at i_step = 2
       not i_step = 1
    CASE i_vnam.
    WHEN 'ZEDAT'. "Policy Expiry Date"
              IF I_STEP = 2. "after the popup
                LOOP AT I_T_VAR_RANGE INTO LOC_T_VAR_RANGE
                WHERE VNAM = 'Your Variable Name'. '
                  CLEAR L_S_RANGE.
                  L_S_RANGE-LOW = 'Policy Start Date'    'Variable Start Date Value entered by User
                  L_S_RANGE-HIGH = Sy-Datum. "high value = input
                  L_S_RANGE-SIGN = 'I'.
                  L_S_RANGE-OPT = 'GE'.
                  APPEND L_S_RANGE TO E_T_RANGE.
                  EXIT.
                ENDLOOP.
              ENDIF.
    Regards,
    Raj

Maybe you are looking for

  • How to configure Oracle HTTP server

    Hi, I installed APEX 3.0 in Oracle 10.2.0.2 database. I installed HTTP server from Oracle 10.2.0 database companion CD. The problem is I am not sure which conf file I need to modify as in the installation document, it only shows steps for how to conf

  • Gaim away message issue

    Hello everyone. I've been dealing with a strange issue for awhile, I've got a ZOOM ADSL modem and Verizon as my ISP. Using gaim, whenever I put up an away message I get knocked offline. The weird part being that I can still talk to everyone, I'm just

  • Java Servlet Error in oracle 10.1.2 (10g)

    Hello, This question belongs to our company project,which is a Govt.Organization. We are using AIX 5.3 Server OS with Oracle 10.1.2 (10g) Application Server on it. We have installed all the above OS & Oracle Application on IBM P-Series High End Serve

  • OSB and SOA Suite on same home

    Hi, Which version of Oracle Service Bus can be installed on existing middleware home? The target platform is - Oracle SOA Suite + Oracle service Bus. My assumption is it should be possible to "share" same m/w home (WLS10.3.5) between SOA Suite and OS

  • IMac (Mid 2007) Restore Disc with Leopard OSX 10.5

    Sometime after 26-Oct-07, I assume all new iMacs will be delivered with Leopard factory installed and should come with an updated 10.5 Restore disc? I wondered if Apple will offer the updated 10.5 Restore disc to customers that purchased (mid 2007) i