How to validate the date in alv List

Hi,
How to write the code for date validation in alv.
for ex
i have to recieve the data in between any two months such as
jan- feb,
june-july,
aug-sep,
nov-dec,
dec-jan,
Could you plse explain me with some examples
Thanking you
Ravi Kumar

I did not understand your requirement fully...but this code will give you date range for any two months..
depending up on date you've supplied...
DATA : date LIKE sy-datum,
       date_low LIKE sy-datum,
       date_high LIKE sy-datum.
date = sy-datum.
CALL FUNCTION 'MONTH_PLUS_DETERMINE'
  EXPORTING
    months  = '-1'
    olddate = date
  IMPORTING
    newdate = date_low.
date_low+6(2) = '01'.
CALL FUNCTION 'SLS_MISC_GET_LAST_DAY_OF_MONTH'
  EXPORTING
    day_in            = date
  IMPORTING
    last_day_of_month = date_high.
WRITE :/ date_low.
WRITE :/ date_high.

Similar Messages

  • How to print the data in ALV list  format using an existing layout

    Hi all
    Iam displaying the output in ALV list format and I saved the layout with some name
    now my requirement is i have to provide a field to select the layout name with F4 help and if i execute the program it should show the output with that layout format
    I tried this iam getting F4 help for that layout and selecting the layout but iam not getting the output with that layout iam getting the normal basic layout
    Can anyone send me a sample program code or what to do to get that
    Thank you

    Hi,
    refer this code.
    DATA : wa_variant  TYPE disvariant,       "Work area for variant
           wa_variant1 TYPE disvariant,       "Work area for variant
           wa_layout   TYPE slis_layout_alv,  "Work area for layout
    *&      Form  sub_get_default_variant                                  *
    This form will initialize the variant                               *
    FORM sub_get_default_variant .
    *--Clear
      CLEAR wa_variant.
    *--Pass the report name
      v_repid = sy-repid.                     "Report ID
      wa_variant-report = v_repid.
    *--Call the function module to get the default variant
      CALL FUNCTION 'REUSE_ALV_VARIANT_DEFAULT_GET'
        EXPORTING
          i_save        = c_save
        CHANGING
          cs_variant    = wa_variant1
        EXCEPTIONS
          wrong_input   = 1
          not_found     = 2
          program_error = 3
          OTHERS        = 4.
    *--Check Subrc
      IF sy-subrc = 0.
        p_varnt = wa_variant-variant.
      ENDIF.
    ENDFORM.                                  "sub_get_default_variant
    *&      Form  sub_f4_for_variant                                       *
    This form will display the List of Variants                         *
    FORM sub_f4_for_variant .
    *--Local Variables
      DATA: lv_exit(1) TYPE c.                "ALV exit
    *--Call the function module to display the list of Variants
      CALL FUNCTION 'REUSE_ALV_VARIANT_F4'
        EXPORTING
          is_variant    = wa_variant
          i_save        = c_save
        IMPORTING
          e_exit        = lv_exit
          es_variant    = wa_variant1
        EXCEPTIONS
          not_found     = 1
          program_error = 2.
    *--Check Subrc
      IF sy-subrc <> 2 AND lv_exit IS INITIAL.
        p_varnt = wa_variant1-variant.
      ENDIF.
    ENDFORM.                                  "sub_f4_for_variant
    *&      Form  sub_check_variant                                        *
    This form will check the variant                                    *
    FORM sub_check_variant .
      IF NOT p_varnt IS INITIAL.
        CLEAR wa_variant1.
        MOVE wa_variant TO wa_variant1.
        MOVE p_varnt TO wa_variant1-variant.
    *--Call the function module to check the variant exist
        CALL FUNCTION 'REUSE_ALV_VARIANT_EXISTENCE'
          EXPORTING
            i_save     = c_save
          CHANGING
            cs_variant = wa_variant1.
        wa_variant = wa_variant1.
      ENDIF.
    ENDFORM.                                  "sub_check_variant
    Regards,
    Prashant

  • How to validate the dates in the table control ?

    How to validate the dates in the table control ?
    Can I write like this ?
    LOOP AT it_tab .
    CHAIN.
    FIELD : it_tab-strtdat,it_tab-enddat.
    module date_validation.
    ENDCHAIN.
    ENDLOOP.
    Module Date_validation.
    ranges : vdat type sy-datum.
    vdat-sign = 'I'.
    VDAT-LOW = it_tab-STRTDAT.
    VDAT-HIGH = it_tab-ENDDAT.
    VDAT-OPTION = 'BT'.
    APPEND VDAT.
    WHAT CODE I have to write here to validate ?
    and If I write like this How can we know which is the current row being add ?
    It loops total internal table ..?
    Bye,
    Muttu.

    Hi,
    I think there is no need to put chain endchain.
    To do validation you have to write module in PAI which does required validations.
    Thanks
    DARSHAN PATEL

  • How to take the data from excel list to sap r/3(with time interval)

    hi experts,
       how to transfer the data from a third party system(if it is in format of excel) to sap r/3.with that in a particular time interval,it will delete the data from excel sheet.

    Hi
    use the Fm
    'ALSM_EXCEL_TO_INTERNAL_TABLE'
           EXPORTING
                filename                = p_path
                i_begin_col             = '1'
                i_begin_row             = '2'
                i_end_col               = '2'
                i_end_row               = '500'
          giving the starting row and column and passing the ending row and column name
    Reward points if useful........
    Regards,
    Nitin Sachdeva

  • How to validate the date in my class

    Hi
    In my project with jsp and struts I need to validate the date field.
    So in the action class I want to validate the date that is the date is in dd/mm/year format?
    can anybody please give some idea to do this?
    Thank you so much.

    Here is a method that validates day/month/year using the Calendar class.
         public boolean validateDate(int day, int month, int year) {
              try {
                   Calendar cal = Calendar.getInstance();
                   cal.clear();
                   cal.setLenient(false);
                   cal.set(year, month-1, day);
                   // need to call getTime() to make the calendar compute/validate the date
                   cal.getTime();
                   return true;
              catch (IllegalArgumentException e) {               
                   return false;
         }

  • How to validate the data in the table

    Hi Experts,
    My question is
    I am having a table control on my view. I need to validate the data entered by the user on the table
    and after validation i need to save the data into database table.
    Now my question is only related to Data Validation on table UI element.
    If the user enters 3 rows and if the 2nd and 3rd row are already existing,
    It should throw the message Entry already exists and the pointer should
    be at Row number 2 in this case.
    Similarly in the 2nd row i have a date field and if the user enters some character
    then it should throw an error message that Numeric values are only allowed and
    the pointer is placed in the 2nd row Date column so that it allows user to modify
    the wrong entry.
    Please advise.
    Regards,
    Chitrasen

    Hi,
    for validating user input in table , you have to get the entries inserted by user into an internal table using get_static_attribute_table and futher have your check using loop endloop.
    For date field, make the context attribute binded to date column as DATS. This would make sure the user inputs a valid date without your custom code.

  • How to read modifed data in ALV List

    Hi,
    I have one input enabled field in my ALV list.  User can modify the values of that field.  How i can get what are all the records are modified by the user.
    Thanks
    stallin

    Hi,
    Try this code...
    REPORT ZTEST_EDIT_ALV                             .
    *Data Declaration
    DATA: BEGIN OF T_EKKO,
      EBELN TYPE EKPO-EBELN,
      EBELP TYPE EKPO-EBELP,
    *  FLAG TYPE C,
    *  HANDLE_STYLE TYPE LVC_T_STYL,
    END OF T_EKKO.
      DATA: GD_REPID LIKE SY-REPID, "Exists
      REF_GRID TYPE REF TO CL_GUI_ALV_GRID. "new
    DATA: BEGIN OF IT_EKKO OCCURS 0.
            INCLUDE STRUCTURE T_EKKO.
    DATA: END OF IT_EKKO.
    DATA: BEGIN OF IT_BACKUP OCCURS 0.
            INCLUDE STRUCTURE T_EKKO.
    DATA: END OF IT_BACKUP.
    *ALV data declarations
    TYPE-POOLS: SLIS.                                 "ALV Declarations
    DATA: FIELDCATALOG TYPE SLIS_T_FIELDCAT_ALV WITH HEADER LINE,
          GD_LAYOUT    TYPE SLIS_LAYOUT_ALV.
    *Start-of-selection.
    START-OF-SELECTION.
      PERFORM DATA_RETRIEVAL.
      PERFORM BUILD_FIELDCATALOG.
      PERFORM BUILD_LAYOUT.
      IT_BACKUP[] = IT_EKKO[].
      PERFORM DISPLAY_ALV_REPORT.
    *&      Form  build_fieldcatalog
    *       text
    FORM BUILD_FIELDCATALOG.
      REFRESH FIELDCATALOG.
      CLEAR FIELDCATALOG.
      FIELDCATALOG-FIELDNAME   = 'EBELN'.
      FIELDCATALOG-SELTEXT_M   = 'Purchase Order'.
      FIELDCATALOG-INPUT     = 'X'.
      FIELDCATALOG-EDIT     = 'X'.
      FIELDCATALOG-COL_POS     = 2.
      APPEND FIELDCATALOG.
      CLEAR  FIELDCATALOG.
      FIELDCATALOG-FIELDNAME   = 'EBELP'.
      FIELDCATALOG-SELTEXT_M   = 'PO Item'.
      FIELDCATALOG-COL_POS     = 3.
      APPEND FIELDCATALOG.
      CLEAR  FIELDCATALOG.
    ENDFORM.                    " BUILD_FIELDCATALOG
    *&      Form  BUILD_LAYOUT
    *       Build layout for ALV grid report
    FORM BUILD_LAYOUT.
      "Permet d'ajuster les colonnes au text
    *  gd_layout-colwidth_optimize = 'X'.
    *  GD_LAYOUT-TOTALS_TEXT       = 'Totals'(201).
    *  gd_layout-box_fieldname = 'SELECT'.
    *  gd_layout-box_tabname   = 'IT_EKKO'.
    ENDFORM.                    " BUILD_LAYOUT
    *&      Form  DISPLAY_ALV_REPORT
    *       Display report using ALV grid
    FORM DISPLAY_ALV_REPORT .
      GD_REPID = SY-REPID.
      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
           EXPORTING
                I_CALLBACK_PROGRAM        = GD_REPID
    *            i_callback_top_of_page   = 'TOP-OF-PAGE'
                I_CALLBACK_PF_STATUS_SET  = 'SET_PF_STATUS'
                I_CALLBACK_USER_COMMAND   = 'USER_COMMAND'
    *            i_grid_title             = 'My Title'
                IS_LAYOUT                 = GD_LAYOUT
                IT_FIELDCAT               = FIELDCATALOG[]
           TABLES
                T_OUTTAB                  = IT_EKKO
           EXCEPTIONS
                PROGRAM_ERROR             = 1
                OTHERS                    = 2.
      IF SY-SUBRC <> 0.
        WRITE:/ SY-SUBRC.
      ENDIF.
    ENDFORM.                    " DISPLAY_ALV_REPORT
    *&      Form  DATA_RETRIEVAL
    *       Retrieve data form EKPO table and populate itab it_ekko
    FORM DATA_RETRIEVAL.
      SELECT EBELN EBELP
       UP TO 10 ROWS
        FROM EKPO
        INTO CORRESPONDING FIELDS OF TABLE  IT_EKKO.
    ENDFORM.                    " DATA_RETRIEVAL
    *                      FORM SET_PF_STATUS                              *
    FORM SET_PF_STATUS USING RT_EXTAB   TYPE  SLIS_T_EXTAB.
      SET PF-STATUS 'STANDARD_FULLSCREEN1' EXCLUDING RT_EXTAB.
    ENDFORM.                    "set_pf_status
    *&      Form  user_command
    *       text
    *      -->R_UCOMM    text
    *      -->RS_SELFIELDtext
    FORM USER_COMMAND  USING R_UCOMM LIKE SY-UCOMM
                             RS_SELFIELD TYPE SLIS_SELFIELD.
    *then insert the following code in your USER_COMMAND routine...
    <b> IF REF_GRID IS INITIAL.
        CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR'
          IMPORTING
            E_GRID = REF_GRID.
      ENDIF.
      IF NOT REF_GRID IS INITIAL.
        CALL METHOD REF_GRID->CHECK_CHANGED_DATA
      ENDIF.</b>*modify
      CASE R_UCOMM.
        WHEN '&IC1'.
          CHECK RS_SELFIELD-TABINDEX > 0.
          IF RS_SELFIELD-VALUE EQ '6000000001'.
            CALL TRANSACTION 'ZTEST'.
          ENDIF.
        WHEN 'REFRESH'.
          READ TABLE IT_EKKO INDEX  RS_SELFIELD-TABINDEX.
          IF SY-SUBRC = 0.
            READ TABLE IT_BACKUP INDEX RS_SELFIELD-TABINDEX.
            IF SY-SUBRC = 0.
              IF IT_EKKO <> IT_BACKUP.
    *  then do your check
              ENDIF.
            ENDIF.
          ENDIF.
          PERFORM DATA_RETRIEVAL.
          RS_SELFIELD-REFRESH = 'X'.
      ENDCASE.
    ENDFORM.                    "user_command
    Regards
    vijay

  • How to retive the data from ALV display when checkbox clicked

    HI.....
    suppose i have a ALV list with 3 fields and checkbox attached with it.Now if i click any of the checkbox i want to retrieve the data from a particular field from one of the 3 fields.How shal i do that....
    Kind Regards.

    hi
    use the  field catalog property wa_fcat-hotspot = 'X' and then
    in in list display
    CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
          EXPORTING
            i_callback_program       = g_repid
            i_callback_pf_status_set = 'PFTEST'
    i_callback_user_command  = 'USER_COMMAND_ALV
            is_layout                = l_layout
            it_fieldcat              = it_fcat[]
          TABLES
            t_outtab                 = it_outtab[]
          EXCEPTIONS
            program_error            = 1
            OTHERS                   = 2.
        IF sy-subrc <> 0.
    FORM user_command_alv USING r_ucomm     LIKE sy-ucomm
                                rs_selfield TYPE slis_selfield.
      DATA: l_index      LIKE sy-tabix.
      DATA: l_belnr      TYPE rbkp-belnr.
      DATA: l_gjahr      TYPE rbkp-gjahr.
      DATA: l_awkey      TYPE bkpf-awkey.
      DATA: lwa_bkpf TYPE bkpf.
      CLEAR g_flag.
      IF r_ucomm EQ 'CREATESO'.
        REFRESH it_outsel[].
        LOOP AT it_outtab INTO wa_outtab.
          IF wa_outtab-check = 'X'.
    delete and put in new itab.
          ENDIF.
          CLEAR wa_outtab.
        ENDLOOP.
    shiva

  • How to save the data from alv output

    My ALV output is editable one.I want that user can edit the output and  save the output details into database.How to do it?
    Moderator Message: Basic Question. This site is not an alternative for your Consultancy work. Put some effort of your own before turning to the forums for help. This is your LAST warning. One more violation will lead to Account deletion.
    Edited by: kishan P on Dec 6, 2010 6:45 PM

    Hi
    U need to implement an user_command and manage the functionality SAVE: when the user press SAVE you'll store the data into db.
    There are several programs demo in SAP and many solution in SCN forum: try to search it
    Max
    Moderator message: please think twice before replying. By now you should know which type of questions will be locked, so no point in replying, in a double sense.
    Edited by: Thomas Zloch on Dec 6, 2010 2:49 PM

  • Function module to save the data from ALV list to MS Excel file

    Hi,
    I am displaying an ALV list.
    I am assigning a pushbutton in the GUI status to save the list as a MS Excel file.
    Can you please let me know the function module to achieve this task.
    I tried 'SAP_CONVERT_TO_XLS_FORMAT'  FM but it is giving some type confict error.
    Thanks & Regards,
    Balaji.R

    ALV has this option built in, you may also find FM like [ALV_XXL_CALL|https://www.sdn.sap.com/irj/scn/advancedsearch?cat=sdn_all&query=alv_xxl_call&adv=false&sortby=cm_rnd_rankvalue].
    Can you elaborate a little more on your need, why adding an option that already exits?
    Regards

  • How to download the datas of ALV tree without passing iternal table

    Hi,
      I want to download the values of ALV tree output in an Excel file without using any internal table.
    Please suggest your thoughts on the same.
    Regards,
    Shasiraj.C
    Edited by: Raj Shasi on Aug 1, 2008 8:44 AM

    There is one option -Export' in menu bar of ALV grid itself. Click on that and then click 'Local File'. Then choose 'Spreadsheet' option and provide local PC path for download.
    Regards,
    Aparna Gaikwad

  • How to print the date in dropdown list if records exceeds 1000 above

    Hi All,
    I have 7000 records in my resultset.
    How to display that much of records in dropdown list.
    I am trying to print ,it takes lot of time for single user.
    is there any alternative for that.

    of course it will take time for the client computer to parse your html.. what you will do is to split you record by hundreds.. you have to consider your clients machine.. not all client has fast computers

  • How to fetch the data & display the data if fields got the same name in alv

    hi frnds, i need ur help.
    how to fetch the data & display the data if fields got the same name in alv grid format.
    thanks in advance,
    Regards,
    mahesh
    9321043028

    Refer the url :
    http://abapexpert.blogspot.com/2007/07/sap-list-viewer-alv.html
    Go thru the guide for OOPs based ALV.
    Use SET_TABLE_FOR_FIRST_DISPLAY to display the table:
    CALL METHOD grid->set_table_for_first_display
     EXPORTING
    I_STRUCTURE_NAME = 'SFLIGHT'     “Structure data
    CHANGING
    IT_OUTTAB = gt_sflight.          “ Output table
    You can also implement
    Full Screen ALV, its quite easy. Just pass the output table to FM REUSE_ALV_GRID_DISPLAY. 
    For controlling and implementing the FS-ALV we have to concentrate on few of the components as follows :
    1. Selection of data.
    2. Prepare Layout of display list.
    3. Event handling.
    4. Export all the prepared data to REUSE_ALV_GRID_DISPLAY.
    Regd,
    Vishal

  • How to validate the field when i am populating the data cursor to block

    Hi,
    I am populating data cursor to multi record block.
    Block contain 5 items. I am populating data cursor to block for 4 items. User will enter one item value that is quantity field.
    If user enter negative values and decimal points in quantity filed i need to display message to user item level.
    Please do the needful how to do it.

    902434 wrote:
    Hi,
    I am populating data cursor to multi record block.
    Block contain 5 items. I am populating data cursor to block for 4 items. User will enter one item value that is quantity field.
    If user enter negative values and decimal points in quantity filed i need to display message to user item level.
    Please do the needful how to do it.If you want to validate at entry level then use When-Validate-Item trigger and check the input and show message. Like
    If :quentity <0 then
    message('do not enter negative value');
    message('do not enter negative value');
    raise form_trigger_failure;
    end if;Why u open same thread again ? not closing one.. check this one
    </a>
    How to validate the field when i am populating the data cursor to block
    Hopes this helps
    If someone's response is helpful or correct, please mark it accordingly.

  • How to transpose the data records (rows) to column(lists) using apd

    Hi,
      how to transpose the data records (rows) to column (lists) using apd  in sap bw.
    I do not want to use abap routine.only use the transpose rows to list  transformation .
    Pls provide the step by step procedure .
    thanks,
    Nimai

    Save youe file to transpose as a csv and in the header row of your file for the columns you want to transpose you need to put some soer of a tag before the column name (ie your colum header was for a period budget will be something lie 2011001:ZFIBDD)
    1. You will need to create a new apd process (rsanwb)
    2. Insert a "Read from Data File" data source object and map it file (,csv)
    3. insert a transpose object into your apd process (middle row 4th one over in the transformations section)
    4. under the definition tab in the transformation object select all the columns that are to be transposed into rows and move them to the transformed area, the grouping fields section should contain the rows that you want to now be columns
    5.under the transformation tab enter in the seperator you selected  under the Field Name/Infoobject area (ie. ZFIBDD)
    6. under the details tab  you need to enter in all the fields to be transformed and tner the transposition field (ie ZFIBDD)
    7. Then you can insert a set of transformations and a DSO and link the newly transposed fields into that.
    hope that helps

Maybe you are looking for

  • Credit memo to be created with reference to return delivery

    Dear Gurus, We have a requirement for mapping return process Credit memo to be created with reference to return delivery (instead of with reference to return order) Following issue faced in mapping the same: Billing document No. 1234 dated 25.03.2010

  • Oracle Forms Builder in Windows Vista

    Hi. I have Windows Vista and when treatment to connect to me with Forms Builder vers. Forms [32 Bit] Version 9.0.4.0.19 generates to me east error according to the tests that I did has something to see with OCI_7 can help me please. The error is: ORA

  • Cross Docking EWM

    Hi Experts, the chapter "Merchandise distribution cross-docking " of the EWM-Manual (EWM 7.0) says: "SAP ERP ... sends inbound and outbound delivery documents to EWM, which contain the process methods and the purchase order item as a reference. ... T

  • IM52-Load Order Budget Upload Program

    Hi All, I'm Working on IM52-Load order budget Change BDC Load Program.i'm using Call Transaction for it. here i'm getting a problem while recording(With SHDB) the tcode IM52, It showing the error like 'no measure found'. But the same error i'm not ge

  • Why is it I can't see any of my bookmarks?

    Why is it I can't see any of my bookmarks? And I can't see my recent history. Because, I mentally press the shutdown button. And the PC shutdowns And when I came back, and open the browser suddenly When I type fb.com no auto complete... and when i tr