Regarding Reading contents in classical ALV

Hi Experts,
I have a problem in Classical ALV Grid Display.
I donot know how to read the contents of  modified fields after the grid is displayed.ie. i will modify some cells and press a button which is defined by me then the modified contents need to be read and updated in the data base.i am not able to read those modified contents.so please help me.i am using REUSE_ALV_GRID_DISPLAY.that is my requirement.i cannot use ALV Objects.i am posting the code.please verify and help me.
REPORT  ZMRMMO_CUSTPOCHANGE.
*******************************TABLES***************************************
TABLES : VBAK,   "Sales Document:Header Data.
         VBUK,   "Sales Document:Header Status And Administrative Data.
         VBAP.   "Sales Document:Item Data.
********************************TYPES***************************************
INCLUDE ZPOCHANGE_DECLARATIONS.   "Include Program for declaration part.
****************************SELECTION SCREEN********************************
INCLUDE ZPOCHANGE_SELSCREEN.      "Include Program for selection screen.
****************************INITIALIZATION**********************************
INITIALIZATION.
COM1 = 'Select Reject Open Sale Order Radio Button To Delete An Open Sale Order'.
COM2 = 'Select Remove Rejection Radio Button To Undo The Delete sale Order'.
****************************START OF SELECTION******************************
START-OF-SELECTION.
*CREATE OBJECT obj1.
PERFORM F_CUSTPOSELECTION. "Subroutine for selection of data from the tables.
PERFORM F_BUILDFCAT.      "Subroutine To bulid a field catalog.
*I_LAYOUT-COLWIDTH_OPTIMIZE = 'X'.
*I_LAYOUT-BOX_TABNAME = 'I_FINAL'.
*I_LAYOUT-BOX_FIELDNAME = 'X'.
*APPEND I_LAYOUT.
PERFORM F_EVENTSGET.
IF FLAG = 'X'.
PERFORM F_ALVGRIDDISPLAY. "Subroutine to call the ALV Grid Display Function Module inorder to display the data
ELSE.
EXIT.
ENDIF.
FORM F_POCHANGEPFSTATUS USING RT_EXTAB TYPE SLIS_T_EXTAB.
  SET PF-STATUS 'PO_CHANGE'. "EXCLUDING RT_EXTAB.
ENDFORM.
FORM F_POCHNGUSERCOMMAND USING R_UCOMM LIKE SY-UCOMM RS_SELFIELD TYPE SLIS_SELFIELD.
RS_SELFIELD-REFRESH = 'X'.
IF R_UCOMM EQ 'UPD'.
PERFORM F_POCHANGECHECK." USING RS_SELFIELD.
ENDIF.
ENDFORM.
INCLUDE ZMRMMO_CUSTPOCHANGE_F_BUILDF01.
INCLUDE ZMRMMO_CUSTPOCHANGE_F_POPULF01.
INCLUDE ZMRMMO_CUSTPOCHANGE_F_ALVGRF01.
INCLUDE ZMRMMO_CUSTPOCHANGE_F_CUSTPF01.
INCLUDE ZMRMMO_CUSTPOCHANGE_F_TESTF01.
INCLUDE ZMRMMO_CUSTPOCHANGE_F_POCHAF01.
INCLUDE ZMRMMO_CUSTPOCHANGE_F_EVENTF01.
*&  Include           ZPOCHANGE_DECLARATIONS
TYPE-POOLS : SLIS.
TYPES :BEGIN OF TY_VBAK,
       VBELN LIKE VBAK-VBELN,
       BSTNK LIKE VBAK-BSTNK,
       KUNNR LIKE VBAK-KUNNR,
       LIFSK LIKE VBAK-LIFSK,
       GWLDT LIKE VBAK-GWLDT,
       END OF TY_VBAK,
       BEGIN OF TY_VBUK,
       VBELN LIKE VBUK-VBELN,
       LFGSK LIKE VBUK-LFGSK,
       END OF TY_VBUK,
       BEGIN OF TY_VBAP,
       VBELN LIKE VBAP-VBELN,
       LPRIO LIKE VBAP-LPRIO,
       ABGRU LIKE VBAP-ABGRU,
       END OF TY_VBAP,
       BEGIN OF TY_FINAL,
       VBELN LIKE VBAK-VBELN,
       BSTNK LIKE VBAK-BSTNK,
       KUNNR LIKE VBAK-KUNNR,
       LFGSK LIKE VBUK-LFGSK,
       LIFSK LIKE VBAK-LIFSK,
       GWLDT LIKE VBAK-GWLDT,
       LPRIO LIKE VBAP-LPRIO,
       ABGRU LIKE VBAP-ABGRU,
       END OF TY_FINAL.
****************************INTERNAL TABLES*********************************
DATA :I_VBAK TYPE STANDARD TABLE OF TY_VBAK,
      I_VBUK TYPE STANDARD TABLE OF TY_VBUK,
      I_VBAP TYPE STANDARD TABLE OF TY_VBAP,
      I_FINAL TYPE STANDARD TABLE OF TY_FINAL,
      WA_VBAK TYPE TY_VBAK,
      WA_VBUK TYPE TY_VBUK,
      WA_VBAP TYPE TY_VBAP,
      WA_FINAL TYPE TY_FINAL.
DATA : I_FCAT TYPE SLIS_T_FIELDCAT_ALV,
       I_LAYOUT TYPE SLIS_LAYOUT_ALV, "OCCURS 0,
       WA_FCAT LIKE LINE OF I_FCAT,
      WA_LAYOUT TYPE SLIS_LAYOUT_ALV,
       I_EVENTS TYPE SLIS_T_EVENT,
       WA_EVENTS LIKE LINE OF I_EVENTS,
       I_FCAT1 TYPE SLIS_T_FIELDCAT_ALV,
       WA_FCAT1 LIKE LINE OF I_FCAT1.
*DATA : obj1 TYPE REF TO CL_GUI_ALV_GRID_BASE.
*DATA :G_ROWNO TYPE I.
DATA FLAG VALUE 'X'.
*&  Include           ZPOCHANGE_SELSCREEN
****************************SELECTION SCREEN********************************
SELECTION-SCREEN : BEGIN OF BLOCK SC1 WITH FRAME TITLE TEXT-000.
PARAMETERS : P_KUNNR TYPE VBAK-KUNNR OBLIGATORY,
             P_BSTNK TYPE VBAK-BSTNK.
SELECTION-SCREEN : END OF BLOCK SC1.
SELECTION-SCREEN : BEGIN OF BLOCK SC2 WITH FRAME TITLE TEXT-001.
PARAMETERS : R_REMSET RADIOBUTTON GROUP RAD1,
             R_CNGGAR RADIOBUTTON GROUP RAD1,
             R_CNGDEL RADIOBUTTON GROUP RAD1,
             R_REJSO RADIOBUTTON GROUP RAD1,
             R_REMREJ RADIOBUTTON GROUP RAD1.
SELECTION-SCREEN : COMMENT /1(79) COM1,
                   COMMENT /1(79) COM2.
SELECTION-SCREEN : END OF BLOCK SC2.
***INCLUDE ZMRMMO_CUSTPOCHANGE_F_CUSTPF01 .
*&      Form  F_CUSTPOSELECTION
      text
-->  p1        text
<--  p2        text
FORM F_CUSTPOSELECTION .
IF P_BSTNK IS INITIAL.
  SELECT VBELN BSTNK KUNNR LIFSK GWLDT
         FROM VBAK
         INTO TABLE I_VBAK
         WHERE KUNNR EQ P_KUNNR.
  IF SY-SUBRC <> 0.
    MESSAGE I000(YMES).
    FLAG = '0'.
  ELSE.
    SORT I_VBAK BY VBELN.
  ENDIF.
ELSE.
  SELECT VBELN BSTNK KUNNR LIFSK GWLDT
         FROM VBAK
         INTO TABLE I_VBAK
         WHERE KUNNR EQ P_KUNNR AND
               BSTNK EQ P_BSTNK.
  IF SY-SUBRC <> 0.
    MESSAGE I000(YMES).
    FLAG = '0'.
    ELSE.
    SORT I_VBAK BY VBELN.
  ENDIF.
ENDIF.
*IF I_VBAK[] IS NOT INITIAL.
LOOP AT I_VBAK INTO WA_VBAK.
   WRITE :/    WA_VBAK-VBELN,
         10  WA_VBAK-BSTNK,
         20  WA_VBAK-KUNNR,
         30  WA_VBAK-LIFSK,
         40  WA_VBAK-GWLDT.
ENDLOOP.
*ENDIF.
IF I_VBAK[] IS NOT INITIAL.
  SELECT VBELN LFGSK
         FROM VBUK
         INTO TABLE I_VBUK
         FOR ALL ENTRIES IN I_VBAK
         WHERE VBELN = I_VBAK-VBELN AND
               LFGSK <> 'C'.
ENDIF.
IF SY-SUBRC <> 0.
  MESSAGE I000(YMES).
  FLAG = '0'.
ELSE.
  SORT I_VBUK BY VBELN.
ENDIF.
*IF I_VBUK[] IS NOT INITIAL.
LOOP AT I_VBUK INTO Wa_VBUK.
   WRITE :/ WA_VBUK-VBELN,
         10 WA_VBUK-LFGSK.
ENDLOOP.
*ENDIF.
IF I_VBUK IS NOT INITIAL.
  SELECT VBELN LPRIO ABGRU
         FROM VBAP
         INTO TABLE I_VBAP
         FOR ALL ENTRIES IN I_VBUK
         WHERE VBELN = I_VBUK-VBELN.
ENDIF.
IF SY-SUBRC <> 0.
  MESSAGE I000(YMES).
FLAG = '0'.
ELSE.
  SORT I_VBAP BY VBELN.
ENDIF.
LOOP AT I_VBUK INTO WA_VBUK.
MOVE :WA_VBUK-VBELN TO WA_FINAL-VBELN,
      WA_VBUK-LFGSK TO WA_FINAL-LFGSK.
READ TABLE I_VBAK INTO WA_VBAK WITH KEY WA_VBUK-VBELN.
MOVE :WA_VBAK-BSTNK TO WA_FINAL-BSTNK,
      WA_VBAK-KUNNR TO WA_FINAL-KUNNR,
      WA_VBAK-LIFSK TO WA_FINAL-LIFSK,
      WA_VBAK-GWLDT TO WA_FINAL-GWLDT.
READ TABLE I_VBAP INTO WA_VBAP WITH KEY WA_VBUK-VBELN.
MOVE :WA_VBAP-LPRIO TO WA_FINAL-LPRIO,
      WA_VBAP-ABGRU TO WA_FINAL-ABGRU.
APPEND WA_FINAL TO I_FINAL.
CLEAR WA_FINAL.
ENDLOOP.
ENDFORM.                    " F_CUSTPOSELECTION
***INCLUDE ZMRMMO_CUSTPOCHANGE_F_BUILDF01 .
*&      Form  F_BUILDFCAT
      text
-->  p1        text
<--  p2        text
FORM F_BUILDFCAT .
PERFORM F_POPULATE_FCAT USING '1' 'VBELN' 'I_FINAL' '' '' '10' 'Sales Document' 'VBELN' 'VBAK'.
PERFORM F_POPULATE_FCAT USING '2' 'BSTNK' 'I_FINAL' '' '' '10' 'Customer PO No.' 'BSTNK' 'VBAK'.
PERFORM F_POPULATE_FCAT USING '3' 'KUNNR' 'I_FINAL' '' 'X' '10' 'Sold-to Party' 'KUNNR' 'VBAK'.
PERFORM F_POPULATE_FCAT USING '4' 'LFGSK' 'I_FINAL' '' '' '1' 'Delivery Status' 'LFGSK' 'VBUK'.
CASE 'X'.
WHEN R_REMSET.
PERFORM F_POPULATE_FCAT USING '5' 'LIFSK' 'I_FINAL' '' '' '2' 'Delivery BlocK' 'LIFSK' 'VBAK'.
PERFORM F_POPULATE_FCAT USING '6' 'LIFSK' 'I_FINAL' 'X' '' '2' 'Present Delivery BlocK' 'LIFSK' 'VBAK'.
WHEN R_CNGGAR.
PERFORM F_POPULATE_FCAT USING '5' 'GWLDT' 'I_FINAL' '' '' '8' 'Guarantee Date' 'GWLDT' 'VBAK'.
PERFORM F_POPULATE_FCAT USING '6' 'GWLDT' 'I_FINAL' 'X' '' '8' 'Present Guarantee Date' 'GWLDT' 'VBAK'.
WHEN R_CNGDEL.
PERFORM F_POPULATE_FCAT USING '5' 'LPRIO' 'I_FINAL' '' '' '2' 'Delivery Priority' 'LPRIO' 'VBAP'.
PERFORM F_POPULATE_FCAT USING '6' 'LPRIO' 'I_FINAL' 'X' '' '2' 'Present Delivery Priority' 'LPRIO' 'VBAP'.
WHEN R_REJSO.
PERFORM F_POPULATE_FCAT USING '5' 'ABGRU' 'I_FINAL' '' '' '2' 'Reason For Rejection' 'ABGRU' 'VBAP'.
PERFORM F_POPULATE_FCAT USING '6' 'ABGRU' 'I_FINAL' 'X' '' '2' 'Reason For Rejection' 'ABGRU' 'VBAP'.
WHEN R_REMREJ.
PERFORM F_POPULATE_FCAT USING '5' 'ABGRU' 'I_FINAL' '' '' '2' 'Reason For Rejection' 'ABGRU' 'VBAP'.
PERFORM F_POPULATE_FCAT USING '6' 'ABGRU' 'I_FINAL' 'X' '' '2' 'Reason For Rejection' 'ABGRU' 'VBAP'.
ENDCASE.
ENDFORM.                    " F_BUILDFCAT
***INCLUDE ZMRMMO_CUSTPOCHANGE_F_EVENTF01 .
*&      Form  F_EVENTSGET
      text
-->  p1        text
<--  p2        text
FORM F_EVENTSGET .
CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
   I_LIST_TYPE           = 0
IMPORTING
   ET_EVENTS             = I_EVENTS
EXCEPTIONS
   LIST_TYPE_WRONG       = 1
   OTHERS                = 2
IF SY-SUBRC <> 0.
SORT I_EVENTS BY NAME.
ENDIF.
*READ TABLE I_EVENTS INTO WA_EVENTS WITH KEY NAME = 'USER_COMMAND'.
*IF SY-SUBRC = 0.
*MOVE 'USER_COMMAND' TO WA_EVENTS-FORM.
*MODIFY I_EVENTS FROM WA_EVENTS INDEX SY-TABIX."TRANSPORTING FORM WHERE NAME = 'WA_EVENT-NAME'.
*ENDIF.
READ TABLE I_EVENTS INTO WA_EVENTS WITH KEY NAME = 'LIST_MODIFY'.
IF SY-SUBRC = 0.
MOVE 'LIST_MODIFY' TO WA_EVENTS-FORM.
MODIFY I_EVENTS FROM WA_EVENTS INDEX SY-TABIX.
ENDIF.
*READ TABLE I_EVENTS INTO WA_EVENTS WITH KEY NAME = 'PF_STATUS_SET'.
*IF SY-SUBRC = 0.
*MOVE 'PF_STATUS_SET' TO WA_EVENTS-FORM.
*MODIFY I_EVENTS FROM WA_EVENTS INDEX SY-TABIX.
*ENDIF.
ENDFORM.                    " F_EVENTSGET
***INCLUDE ZMRMMO_CUSTPOCHANGE_F_ALVGRF01 .
*&      Form  F_ALVGRIDDISPLAY
      text
-->  p1        text
<--  p2        text
FORM F_ALVGRIDDISPLAY .
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
  I_INTERFACE_CHECK                 = ' '
  I_BYPASSING_BUFFER                = ' '
  I_BUFFER_ACTIVE                   = ' '
   I_CALLBACK_PROGRAM                =  SY-REPID
   I_CALLBACK_PF_STATUS_SET          = 'F_POCHANGEPFSTATUS'
   I_CALLBACK_USER_COMMAND           = 'F_POCHNGUSERCOMMAND'
  I_CALLBACK_TOP_OF_PAGE            = ' '
  I_CALLBACK_HTML_TOP_OF_PAGE       = ' '
  I_CALLBACK_HTML_END_OF_LIST       = ' '
  I_STRUCTURE_NAME                  =
  I_BACKGROUND_ID                   = ' '
  I_GRID_TITLE                      =
  I_GRID_SETTINGS                   =
   IS_LAYOUT                         = I_LAYOUT
   IT_FIELDCAT                       = I_FCAT
  IT_EXCLUDING                      =
  IT_SPECIAL_GROUPS                 =
  IT_SORT                           =
  IT_FILTER                         =
  IS_SEL_HIDE                       =
  I_DEFAULT                         = 'X'
   I_SAVE                            = 'U'
  IS_VARIANT                        =
   IT_EVENTS                         = I_EVENTS
  IT_EVENT_EXIT                     =
  IS_PRINT                          =
  IS_REPREP_ID                      =
  I_SCREEN_START_COLUMN             = 0
  I_SCREEN_START_LINE               = 0
  I_SCREEN_END_COLUMN               = 0
  I_SCREEN_END_LINE                 = 0
  I_HTML_HEIGHT_TOP                 = 0
  I_HTML_HEIGHT_END                 = 0
  IT_ALV_GRAPHICS                   =
  IT_HYPERLINK                      =
  IT_ADD_FIELDCAT                   =
  IT_EXCEPT_QINFO                   =
  IR_SALV_FULLSCREEN_ADAPTER        =
IMPORTING
  E_EXIT_CAUSED_BY_CALLER           =
  ES_EXIT_CAUSED_BY_USER            =
  TABLES
    T_OUTTAB                          = I_FINAL
EXCEPTIONS
   PROGRAM_ERROR                     = 1
   OTHERS                            = 2
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
*CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_DATA_GET'
EXPORTING
   I_HEADER_TABNAME       =
   I_ITEM_TABNAME         =
IMPORTING
  ET_FIELDCAT            =
  ET_SORT                =
EXCEPTIONS
  PROGRAM_ERROR          = 1
  OTHERS                 = 2
*IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
*ENDIF.
ENDFORM.                    " F_ALVGRIDDISPLAY
***INCLUDE ZMRMMO_CUSTPOCHANGE_F_POCHAF01 .
*&      Form  F_POCHANGECHECK
      text
-->  p1        text
<--  p2        text
FORM F_POCHANGECHECK.
ENDFORM.                    " F_POCHANGECHECK

Hi
I sure that there is a better way,but this one will work also...
In PBO enter rows you will show in report to itab you define (same type)
In PAI (after change) compare this tables (your grid table and itab with values before the change) and you will get rows which have been changed...
REGARDS
Yossi

Similar Messages

  • ALV GRID Problem with reading contents

    Hi there! I'm quite new with ABAP and I have some problems with the syntax of it. Maybe I should first describe my aim and then I'll show you my code.
    1. I read contents from two database tables, called 'zbc_dan_registry' and 'zbc_dan_category'.
    'zbc_dan_registry' has 2 columns: name, value.
    zbc_dan_category' has 1 column: category.
    Now I want to have an ALV Grid, that displays the contents of 'zbc_dan_registry' and one additional column with dropdown fields, where the user can select a category for each row. This is, what my code already does.
    Now I want to save the contents of the whole table in a new table 'zbc_dan_registrz' (you see: 'registrz', not 'registry'!) with 3 columns:
    name, category, value.
    My problem is, how can I read the contents of the ALV Grid, with the user selected category for each row, and save them in an internal table? I've tried to adapt the code of "BCALV_EDIT_04", but I don't get it running.
    Some detailled help would be great, you know, I'm really working hard to understand ABAP, but it's really hard for me. Thanks for your support and help!!
    Here's my code so far:
    *& Report  ZBC400_DAN_TESTNO4
    REPORT  ZBC400_DAN_TESTNO4.
    DATA: lt_registrz TYPE TABLE OF zbc_dan_regstrz WITH HEADER LINE,
          lt_category TYPE TABLE OF zbc_dan_category WITH HEADER LINE,
          ls_category TYPE zbc_dan_category, "Struktur Kategorie
          ok_code LIKE sy-ucomm,
          container_r TYPE REF TO cl_gui_custom_container,
          grid_r TYPE REF TO cl_gui_alv_grid,
          gc_custom_control_name TYPE scrfname VALUE 'CONTAINER_REG',
          fieldcat_r TYPE lvc_t_fcat,
          layout_r TYPE lvc_s_layo,
          lt_ddval TYPE lvc_t_drop,
          ls_ddval TYPE lvc_s_drop,
          c TYPE i.
    CLASS lcl_event_receiver DEFINITION DEFERRED.
      DATA g_verifier TYPE REF TO lcl_event_receiver.
      DATA: BEGIN OF gt_outtab OCCURS 0.
        INCLUDE STRUCTURE zbc_dan_regstrz.
        DATA: celltab TYPE lvc_t_styl.
      DATA: END OF gt_outtab.
    CLASS lcl_event_receiver DEFINITION.
      PUBLIC SECTION.
      TYPES: BEGIN OF lt_registrz_key.         "Struktur mit den Schlüsseln der Tabelle 'Registry'
        TYPES:  name TYPE zbc_dan_name,
                value TYPE zbc_dan_value,
                category TYPE zbc_dan_cat.
      TYPES: END OF lt_registrz_key.
      TYPES:  ls_registrz_keys TYPE STANDARD TABLE OF lt_registrz_key,
              ls_registrz_table TYPE STANDARD TABLE OF zbc_dan_regstrz.
      METHODS: get_inserted_rows EXPORTING inserted_rows TYPE ls_registrz_keys.
      METHODS: refresh_delta_tables.
      METHODS: handle_data_changed FOR EVENT data_changed OF cl_gui_alv_grid IMPORTING er_data_changed.
    *  METHODS: get_inserted_rows EXPORTING inserted_rows TYPE registrz_keys.
    *  METHODS: refresh_delta_tables.
      PRIVATE SECTION.
      DATA: inserted_rows TYPE ls_registrz_keys.
      DATA: error_in_data TYPE c.
      METHODS: get_cell_values IMPORTING row_id TYPE int4 pr_data_changed TYPE REF TO cl_alv_changed_data_protocol EXPORTING key TYPE lt_registrz_key.
    ENDCLASS.
    CLASS lcl_event_receiver IMPLEMENTATION.
      METHOD handle_data_changed.
        DATA: ls_good TYPE lvc_s_modi,
              ls_new TYPE lvc_s_moce.
        error_in_data = space.
        IF error_in_data = 'X'.
          CALL METHOD er_data_changed->display_protocol.
        ENDIF.
      ENDMETHOD.
      METHOD get_cell_values.
        CALL METHOD pr_data_changed->get_cell_value
          EXPORTING i_row_id = row_id i_fieldname = 'NAME'
            IMPORTING e_value = key-name.
        CALL METHOD pr_data_changed->get_cell_value
          EXPORTING i_row_id = row_id i_fieldname = 'VALUE'
            IMPORTING e_value = key-value.
        CALL METHOD pr_data_changed->get_cell_value
          EXPORTING i_row_id = row_id i_fieldname = 'CATEGORY'
            IMPORTING e_value = key-category.
      ENDMETHOD.
      METHOD get_inserted_rows.
        inserted_rows = me->inserted_rows.
      ENDMETHOD.
      METHOD refresh_delta_tables.
        clear me->inserted_rows[].
      ENDMETHOD.
    ENDCLASS.
    START-OF-SELECTION.
        SELECT client name value
          INTO CORRESPONDING FIELDS OF TABLE lt_registrz FROM zbc_dan_regstry.
        SELECT category INTO CORRESPONDING FIELDS OF TABLE lt_category FROM zbc_dan_category.
    CALL SCREEN 0100.
    MODULE user_command_0100 INPUT.
      CASE ok_code.
        WHEN 'BACK'.
          SET SCREEN 0.
          MESSAGE ID 'BC400' TYPE 'S' NUMBER '057'.
        WHEN 'SAVE'.
          PERFORM save_data.
        WHEN OTHERS.
      ENDCASE.
    ENDMODULE.
    MODULE clear_ok_code OUTPUT.
      CLEAR ok_code.
    ENDMODULE.
    MODULE status_0100 OUTPUT.
      SET PF-STATUS 'DYNPRO100'.
      SET TITLEBAR 'D0100'.
    ENDMODULE.
    MODULE display_alv OUTPUT.
      PERFORM display_alv.
    ENDMODULE.
    FORM display_alv.
    IF grid_r IS INITIAL.
    *----Creating custom container instance
      CREATE OBJECT container_r
      EXPORTING
        container_name = gc_custom_control_name
      EXCEPTIONS
        cntl_error = 1
        cntl_system_error = 2
        create_error = 3
        lifetime_error = 4
        lifetime_dynpro_dynpro_link = 5
        others = 6.
        IF sy-subrc <> 0.
    *--Exception handling
        ENDIF.
    *----Creating ALV Grid instance
        CREATE OBJECT grid_r
        EXPORTING
          i_parent = container_r
        EXCEPTIONS
          error_cntl_create = 1
          error_cntl_init = 2
          error_cntl_link = 3
          error_dp_create = 4
          others = 5.
          IF sy-subrc <> 0.
    *--Exception handling
          ENDIF.
          CREATE OBJECT g_verifier.
          SET HANDLER g_verifier->handle_data_changed FOR grid_r.
    *----Preparing field catalog.
          PERFORM prepare_field_catalog CHANGING fieldcat_r.
    *----Preparing layout structure
          PERFORM prepare_layout CHANGING layout_r.
    *----Here will be additional preparations
    *--e.g. initial sorting criteria, initial filtering criteria, excluding
    *--functions
          CALL METHOD grid_r->set_table_for_first_display
          EXPORTING
    * I_BUFFER_ACTIVE =
    * I_CONSISTENCY_CHECK =
    * I_STRUCTURE_NAME =
    * IS_VARIANT =
    * I_SAVE =
    * I_DEFAULT = 'X'
            is_layout = layout_r
    * IS_PRINT =
    * IT_SPECIAL_GROUPS =
    * IT_TOOLBAR_EXCLUDING =
    * IT_HYPERLINK =
          CHANGING
            it_outtab = lt_registrz[]
            it_fieldcatalog = fieldcat_r
    * IT_SORT =
    * IT_FILTER =
          EXCEPTIONS
            invalid_parameter_combination = 1
            program_error = 2
            too_many_lines = 3
            OTHERS = 4.
          IF sy-subrc <> 0.
    *--Exception handling
          ENDIF.
          ELSE.
            CALL METHOD grid_r->refresh_table_display
    * EXPORTING
    * IS_STABLE =
    * I_SOFT_REFRESH =
          EXCEPTIONS
            finished = 1
            OTHERS = 2.
          IF sy-subrc <> 0.
    *--Exception handling
          ENDIF.
        ENDIF.
        CALL METHOD grid_r->register_edit_event
          EXPORTING
            i_event_id = cl_gui_alv_grid=>mc_evt_enter.
        CALL METHOD grid_r->register_edit_event
          EXPORTING
            i_event_id = cl_gui_alv_grid=>mc_evt_modified.
    ENDFORM.
    FORM prepare_field_catalog CHANGING pt_fieldcat TYPE lvc_t_fcat.
      DATA ls_fcat TYPE lvc_s_fcat.
      CALL FUNCTION 'LVC_FIELDCATALOG_MERGE'
      EXPORTING
        i_structure_name = 'ZBC_DAN_REGSTR2'
      CHANGING
        ct_fieldcat = pt_fieldcat[]
      EXCEPTIONS
        inconsistent_interface = 1
        program_error = 2
        OTHERS = 3.
      IF sy-subrc <> 0.
    *--Exception handling
      ENDIF.
      LOOP AT pt_fieldcat INTO ls_fcat.
        CASE ls_fcat-fieldname.
          WHEN 'NAME'.
            ls_fcat-coltext = 'Name'.
            ls_fcat-outputlen = '40'.
            MODIFY pt_fieldcat FROM ls_fcat.
          WHEN 'VALUE'.
            ls_fcat-coltext = 'Wert'.
            ls_fcat-outputlen = '30'.
            MODIFY pt_fieldcat FROM ls_fcat.
          WHEN 'CATEGORY'.
              LOOP AT lt_category into ls_category.
                ls_ddval-handle = 1.
                ls_ddval-value = ls_category-category.
    *            ls_ddval-style = cl_gui_alv_grid=>mc_style_enabled.
                APPEND ls_ddval TO lt_ddval.
             ENDLOOP.
             CALL METHOD grid_r->set_drop_down_table
                EXPORTING it_drop_down = lt_ddval.
            ls_fcat-edit = 'X'.
            ls_fcat-drdn_hndl = '1'.
            ls_fcat-coltext = 'Kategorie'.
            MODIFY pt_fieldcat FROM ls_fcat.
        ENDCASE.
      ENDLOOP.
    ENDFORM.
    FORM prepare_layout CHANGING ps_layout TYPE lvc_s_layo.
      ps_layout-zebra = 'X'.
      ps_layout-grid_title = 'Kategorie zur Registry hinzufügen'.
      ps_layout-smalltitle = 'X'.
    ENDFORM.
    FORM save_data.
      DATA: ls_ins_keys TYPE g_verifier->ls_registrz_keys,
            ls_ins_key TYPE g_verifier->lt_registrz_key,
            ls_registrz TYPE zbc_dan_regstrz,
            ls_outtab LIKE LINE OF gt_outtab,
            lt_instab TYPE TABLE OF zbc_dan_regstrz.
      CALL METHOD g_verifier->get_inserted_rows IMPORTING inserted_rows = ls_ins_keys.
      LOOP AT ls_ins_keys INTO ls_ins_key.
        READ TABLE gt_outtab INTO ls_outtab
        WITH KEY  name = ls_ins_key-name
                  value = ls_ins_key-value
                  category = ls_ins_key-category.
        IF sy-subrc = 0.
          MOVE-CORRESPONDING ls_outtab TO ls_registrz.
          APPEND ls_registrz TO lt_instab.
        ENDIF.
      ENDLOOP.
      INSERT zbc_dan_regstrz FROM TABLE lt_instab.
      CALL METHOD g_verifier->refresh_delta_tables.
      ENDFORM.

    Hi Hans,
    You raised the Question in the Webdynpro ABAP forum. Here its very diffcult to get the answer from this forum. Please close it here and raise the same question in ABAP General Forum there you will get faster and so many anwsers.
    Please close the question here.
    Warm Regards,
    Vijay

  • Ipod classic music erased, with "iTunes cannot read contents of iPod"

    I went to sync my ipod classic 120GB and before it began, a message popped up telling me that there was a problem with my devices and that they should be scanned and fixed. I went to scan and fix them, but it failed each time. It started syncing but then an error message came up saying, "iTunes cannot read contents of iPod, go to summary tab in iPod preferences and click restore to restore this iPod to factory settings. I took my ipod out of the usb cable and looked to see that my music had all been erased! I went to the preferences tab that it told me to go to and if I restore the iPod to factory settings then all my media will obviously be erased. I have tried a few times since then to re-sync it but it is coming up each time. I had previously had another iPod with this same iTunes account, but it was lost. I bought this new one about 7 months ago and I have had no problem syncing until now. I also had to get a new hard drive for my computer, but that was about a year ago and I illegally saved the music files from my itunes to my new hard drive so I could have all the old music from my ipod on the new one. Is there any way I can get my music back onto my iPod or do I really have to set my itunes back to factory settings and erase all my media?

    I've got a brand new iPod Video 60Gb and i have had this message since the first time i synced it. I think i restored the iPod about 10 times but it's always crashing when i unlupg it. It try to listen to something, the musics are on the iPod but they aren't listed in playlists or under artists or songs.
    Then i plug it to iTunes and i got the message: iTunes cannot read the content.
    I've bought a Belkin card just for it, the one recommended for iPod USB 2.0. Doesn't change anything. I've tried different USB ports, again, nothing new.
    I was just going to try using USB 1.0 but it's sooooooooooooo slow that it will take me like 12 hours to sync the iPod!
    I don't know what to do now, as i can't find if it's a computer problem or an iPod problem...

  • ALV Control and Classical ALV

    Hi all,
    Please let me know the advantages and disadvantages of ALV control over Classical ALV.
    Thanks & regards,
    Naresh.

    ALV LIST Can be coded using only FMs
    ALV control  Can be coded using FMs and object oriented concepts
    ALV LIST Can be displayed hieraicharlly
    ALV GRID cannot be displayed hierarichally
    Alv grid (using oo concept) requires
    designing the screen layout .
    Hence, in one screen, we can show more
    then one alv grid
    (we cannot show more than
    one alv list on one screen)
    ALV LIST is Display Only.
    Whereas
    ALV Grid Can Be made EDITABLE for entry purpose.

  • Search Help in Classical ALV

    Hi All,
    I have a small problem. Can anybody tell me how can i add a search help to a specific column in my classical ALV?
    Regards,
    Prakash Pandey

    Hi Prakash,
    In the Field Catalog there are two fields which are used to get the Search Help of any of the Column in ALV. Those are : REF_FIELDNAME and REF_TABNAME.
    For example,
      ls_fieldcat-fieldname  = 'VBELN'.
      ls_fieldcat-fix_column = 'X'.
      ls_fieldcat-key        = 'X'.
      ls_fieldcat-outputlen  = '10'.
      ls_fieldcat-seltext_m  = 'Sales Document'.
      ls_fieldcat-edit       = 'X'.
      ls_fieldcat-ref_fieldname = 'VBELN'.
      ls_fieldcat-ref_tabname = 'VBAP'.
      append ls_fieldcat to p_fieldcat.
      clear ls_fieldcat.
    The above code will show the F4 for the column VBELN in the ALV.

  • Classic & ALV

    Hi Friends,
    I'm doing a comparison between ALV and classic report and I am trying to find differences. So far, I have gathered information regarding their
    1) Interactivity (sorting etc. Classic needs more coding in this sense)
    2) Capabilities (ability to export to other file format)
    Does anyone know of any other major/important differences? It does not have to be too technical. Thanks in advance
    Regards,
    r3venant

    r3venant,
      Check
    what are ALV reports? how they are different from normal reports?;&#57089;
    ALV is nothing but "application list viewer.
    An ALV displays the output directly in the form of a grid or a list.
    ie,in a tabular format with the required field names as headings.
    while in a normal report,user has to design and format his output in a list or table fashion,which is a tedious process.
    it is to overcome the user designing the output in list,SAP has given ALV,thro which one can deirectly get a tabulated list output.
    type-pool:slis is basically declared to call the respective function module for the ALV display.
    its mandatory that type-pool:slis is declared.
    Imagine you have to write a report that lists out customer addresses. You will write code to get the input from the user via selection screen and then read the data based on the seletion from the database into an internal table(or a set of internal tables). Now once you have the data you will need to output this. In normal list reports, you will have to use 'WRITE' statements to format the output into columns and rows. Now suppose user wants some interactivity in it. Then you will have to provide some buttons and/or menu options through custom pf-status and then write logic for reacting to the user actions. After writing many such reportsm, you will feel like some of this can generalized and reused in every report.
    That is exactly what ALV does. It takes out most of repeated sections of the code from out of you and provides you with excellent outputting functionality. It provides many standard functions like 'print', 'sort', 'filter', 'sum' etc by default. Imagine writing code yourself for all these if you were writing normal list program. One more major difference is the editing feature. If you were write a program that gives the user with editing features, then you will have to write a lot of logic. But with ALV, all the features like adding a row, deleting a row, copying a row, editing some fields of a row etc come by default.
    Likewise, interactivity has become quite easy to implement. Like double clicking on a customer number, if the user wants to go to display customer transaction, it is very easy using ALV.
    As pointed out here by others, go through the documentation of ALV and go through some of those demo programs and you will know the difference. ALV takes out a lot of burden of coding everything away from you and lets you worry about the business functionality that your report provides, rather than formatting the output or providing interactivity to the output.
    Check  ---ALV
                  differences between normal list and ALV list
                  http://www.allsaplinks.com/alv2.html
                  http://www.allsaplinks.com/alv1.html
    Pls. MArk if useful

  • IPad, Acrobat Reader, Content (text and pictures) no longer showing, just blank pages

    Hi,
    I have a user who successfully opened a .pdf attachment from outlook mail and then opened it in Acrobat Reader on the iPad and then edited it and moved it to a created folder.
    Everything was working fine and the user highlighted text in the .pdf document too.
    What then happened is when the user subsequently opened the file, the highlights were shown but not the content (text and pictures).
    I checked they had the latest version via the apps store updates and noted there had recently been an update which had been applied.
    I did check also in the diagnostics to see if there were any acrobat files, but there were none, I also turned on 'send diagnostics' in case this this will help in the future.
    I rebooted the iPad by pressing and holding the power and home buttons until the apple logo appeared.
    Checked again to see if I could view the .pdf  content (it's around 8.5 MB file with 32 pages), still nothing showing apart from the yellow highlights that the user had done.
    From within Acrobat Reader on the iPad I chose to open the file in iBooks to see if I could read it there.  I could successfully open the file in iBooks and the front page thumbnail was showing (I did note that in Acrobat reader the thumbnail was white).
    I found the email with attachment and opened it again in Acrobat Reader and it opens correctly, suggesting somehow the previous copy had become damaged?  I have now saved this good copy over the top of the existing bad copy and all is OK except that the user has lost the highlights previously made.
    Can you give me some idea of how this file has become broken in Acrobat Reader on the iPad and how I can avoid it happening again.
    Many Thanks.

    Thanks for replying.
    This is the first time it has happened, the user has several folders containing files (on their iPad), (some .pdf's with additional highlights) these files are typically company agm board packs so contain pages of text and photo's too.
    I put it down the fact that when I checked the app store for updates there had recently been an update and the user had not rebooted their iPad for some time, hence some of the underlying adobe reader files were perhaps between versions.
    I don't know how you handle files when performing an update, do you close the app, flush files from memory and do a clean update?
    I can confirm that the .pdf file had not been sent  as an email attachment after having added the highlights.
    Because the acrobat document contains so many pictures (32 pages and 8.5MB) when scrolling through it takes several seconds for some pages to appear, and others with text and pictures quite a while for the text to become sharp, I presume this is because the Acrobat Reader cannot open the 8.5MB file in one go and has to keep swapping it out of memory.  Having reached the end if I scroll back to the beginning it takes 10's of seconds before the first page re-appears, otherwise it's just a white page.  Interestingly in iBooks the pages appear almost immediately when viewing.
    The iPad in question is model MD368B/A, 64GB, Software Version 7.1.1 (11D201) and has 28GB Memory available.  Usage tells me Adobe Reader is taking 328MB and is version 11.3.1
    I have just finally browsed back to recent documents, opened 2 or 3 other documents and then this one again (from recent) and it is now broken, just shows white pages (and on the thumbnail too) with my test highlights. so I can now apparently reproduce it.
    Hope this all helps you re-produce
    Regards,

  • Query regarding file content conversion using file adapter

    Hi All
    I have a question regarding file content conversion in file adapter.
    I have a file coming in the following format.
    AA,111,222,333
    BB,444,555,666
    CC,777,888,999
    My incoming message structure has a hierarchy. The CC record is a structure part of BB record. BB record is a structure part of AA record. It is like this:
    AA,111,222,333
    <<BB,444,555,666>>
    <<<<CC,777,888,999>>>>
    After file content conversion, in the resulted xml, i am getting a flat hierarchy instead of nested hierarchy.
    Is it possible to get a nested hierarchy as a result of file content conversion?
    Please let me know
    Thanks
    Chandra

    Hi Udo
    According to your suggestion, I am trying to use mapping.
    I am getting a flat file and i am reading it.
    This is my source structure:
    AA,11,22,33
    BB,44,55,66
    CC,77,88,99
    This is my required targer structure:
    AA,11,22,33
    <<BB,44,55,66>>
    <<<<CC,77,88,99>>>>
    To explain this, BB record can have multiple records of CC records.
    AA records can have multiple records of BB record.
    I am using removecontext node function.
    CC (Source)  (removecontext)-> CC (target structure)
    But here, when i rightclick on source CC field in the mapping editor, i cannot see any other context except root node. So, how can i proceed here??
    Many Thanks
    Chandra

  • How to read contents of files that do not fall under public security group?

    Hi,
    I need to read the contents of a WCM based xml file that does not fall under public security.
    The process is like this:
    First the user makes chnages to the content.
    The workflow will be triggred based on the security group metadata that is associated with the content.
    Once the content is finally approved our workflow calls a custom idoc script.
    First we tried directly reading the xml contents from the idoc script which was still in the context of workflow. But since content item is still in workflow I was not able to read the changes. So I created a separate content publisher thread and read the DOC_INFO and checked for the dStatus value. If the value is RELEASED then I reading contents by calling ssIncludeXml idoc script.
    This was working fine for public content. But now the requirement is that all content cannot be public. Content authors should not be able to edit the content that does not belong to their group, So we created security groups (and roles) and are associating that groups to the relavent content.
    Beacuse of this change I am not not able to read the non public content. The call to DOC_INFO_BY_NAME service, which gives all the content files' metadata, is expecting the user to be logged in to give the details.
    I tried calling the CHECKIN service with sysadmin and captured the cookies returned by that service and use cookies for the DOC_INFO_BY_NAME service call. But the service call was faling. It is throing the 401 forbidden error with the message that user needs to be logged in to get the details.
    How to address this problem. Someone please help.
    Note: I also tried using ridc for this. I was able to get it working but since it is executing in the context of server ridc api is changing server's environment properties like HTTP_HOST, HTTP_CGIPATHROOT etc. It also seemed like system was becoming non functional after using ridc. When I called check-in the system metadata values like security group are no more loading. Not sure if ridc is the culprit here but worried that it might be causing this issue.
    Regards,
    Pratap

    Sorry, I posted too much details while posting this question. I was saying "not able to read *non* public content".
    Anyway, I was able to resolve the issue. I was able to authenticate with sysadmin credentials in the request to service using basic authentication and was able to read doc info with that credential.
    But I realized there is more than option for reading secure content.
    - I could set user name as sysadmin in the m_environment (if I am in the context of a service) and the call the DOC_INFO_BY_NAME service.
    - I can post an HTTP request to DOC_INFO_BY_NAME service with sysadmin credentials and do basic authorization via the connection. (This is what i have done successfully as of now )
    - I could add guest role to all security groups with R (read) privileges.
    I will look into all options and implement the one which is more apt.
    Regards,
    Pratap

  • Regarding displaying role description in alv

    Hi All,
             Here i got struck up with an issue. I want to display role name and its description. But my problem is description is having more than a single line. I need to concatenate all the lines, But I don't know what to do here exactly. I need to display the output in LAV format. And one more thing the description length is more than 255 characters also in that case how to handle.
    Please suggest me a solution for this.
    Regards
    G.S.Naidu

    Hello Naidu,
          Plz search in sdn for handle more than 255 char in ALV,
    Regards.

  • EVENTS in Classical ALV

    Hi,
    I want to know the Purpose of using the below Events in Classical ALV (if possible with example).
    1. CALLER_EXIT
    2. REPREP_SEL_MODIFY
    3. top_of_coverpage
    4. END_OF_COVERPAGE
    5. TOP_OF_FOREIGN_PAGE
    6. END_OF_FOREIGN_PAGE
    7.SUBTOTAL_TEXT
    Thanks in Advance,
    Sumi

    The I_EVENTS table returns with the following possible constants:
    1.     Slis_ev_item_data_expand TYPE slis_formname VALUE 'ITEM_DATA_EXPAND'.     
    Only relevant for hierarchical-sequential lists using the layout parameter IS_LAYOUT-EXPAND_FIELDNAME of the structure IS_LAYOUT. Exit for passing item entries (ITEM table) for a header record that was expanded interactively by the user.
    2.     Slis_ev_reprep_sel_modify TYPE slis_formname VALUE 'REPREP_SEL_MODIFY'.
    RS_SELFIELD-TABINDEX contains the header table index for which the item entries are to       be put in the global item output table (T_OUTTAB_SLAVE). The Callback is only called if ALV has no items for a header that is to be expanded.
    RFLG_ALL is passed with 'X' if the user shows all items. The application must ensure that    entries are not repeated in the item table.
        RS_SELFIELD is initial in this case.         
    3.     Slis_ev_caller_exit_at_start TYPE slis_formname VALUE 'CALLER_EXIT'.
    Is called at the beginning of the function module to make special settings. It is not usually used.          
    4.     Slis_ev_user_command TYPE slis_formname VALUE 'USER_COMMAND'.
    As this is a frequently-used Callback event, the form routine can also be passed        directly in the interface by passing the user command in the IMPORTING parameter           I_CALLBACK_USER_COMMAND.
    5.     Slis_ev_top_of_page TYPE slis_formname VALUE 'TOP_OF_PAGE'.
       Equivalent to the list processing TOP-OF-PAGE event.           
    6.     Slis_ev_top_of_coverpage TYPE slis_formname VALUE 'TOP_OF_COVERPAGE'.       
    The selection information and list status are output together (if they exist) on a separate page by default
    7.     Slis_ev_end_of_coverpage TYPE slis_formname VALUE 'END_OF_COVERPAGE'.       
    Analogously to TOP_OF_COVERPAGE the user can add other information
    to the information output by ALV (selection information, list status) at this event.
    8.     Slis_ev_foreign_top_of_page TYPE slis_formname VALUE ‘FOREIGN_TOP_OF_PAGE'.
    The Top-of-page event is always processed in ALV and is only passed to the caller via the Callback mechanism. This is still the case if the caller, e.g. by a user action, processes a branch list which was not formatted by ALV (e.g. a popup with additional information about the list record selected and displayed by ALV).
    In this case, top-of-page cannot be formatted by ALV analogously to the basic list, it must be handled completely by the caller. The event top-of-page still occurs in ALV. When ALV notices a top-of-page which was not caused by an ALV output, the form routine in FOREIGN_TOP_OF_PAGE is called.
    9.     Slis_ev_foreign_end_of_page TYPE slis_formname VALUE 'FOREIGN_END_OF_PAGE'.  
    The event end-of-page is always processed in ALV and only passed to the caller via callback. This is still the case, e.g. when the caller processes a details list which was not formatted by ALV (e.g. a popup with further information about selected list records which were displayed by ALV).
    In this case, end-of-page cannot be formatted by ALV analogously to the basic list, it must be handled completely by the caller. The event end-of-page still occurs in ALV. When ALV notices an end-of-page that was not caused by an ALV output, the form routine in FOREIGN_END_OF_PAGE is called.                             
    10.     Slis_ev_pf_status_set TYPE slis_formname VALUE 'PF_STATUS_SET'.
    If a user list status is to be set, it must be done in the form routine assigned to this event. The ALV function codes, which must not be active, are in the Parameter RT_EXTAB. This table must be passed with the SET PF-STATUS command (with inactive user function codes as well, if necessary).
    The STANDARD status of the function group SALV should be used as a          template for a user-specific status. As this is a frequently used Callback event, its form routine can also be passed directly in the interface in the IMPORTING parameter I_CALLBACK_PF_STATUS_SET.
    11.     Slis_ev_list_modify TYPE slis_formname VALUE 'LIST_MODIFY'.     
    LIST_MODIFY USING R_TABNAME TYPE SLIS_TABNAME
                                             R_INDEX LIKE SY-TABIX
                                             R_INDEX_ITEM LIKE SY-TABIX
                                             R_INDEX_SUM LIKE SY-TABIX.
    12.     Slis_ev_top_of_list TYPE slis_formname VALUE 'TOP_OF_LIST'.  
    Information output at the start of the list     
    13.     Slis_ev_end_of_page TYPE slis_formname VALUE 'END_OF_PAGE'.
    Information output at the end of a page. This is only called for printing.
    14.     Slis_ev_end_of_list TYPE slis_formname VALUE 'END_OF_LIST'.     
    Information output at the end of the list
    15.     Slis_ev_after_line_output TYPE slis_formname VALUE 'AFTER_LINE_OUTPUT'.
    Output information after each output line. Should only be used in justified cases because it costs a lot of performance.
    16.     Slis_ev_before_line_output TYPE slis_formname VALUE   'BEFORE_LINE_OUTPUT'.       
    Output information before each output line. Should only be used in justified cases because it costs a lot of performance.         
    17.     Slis_ev_subtotal_text TYPE slis_formname VALUE  'SUBTOTAL_TEXT'.                        
    This event table (I_EVENTS) is now checked with the desired constants. If the desired constant is found, then the corresponding field for the FORM NAME is populated with the name of the routine containing the corresponding event.

  • Need information regarding Technical Content

    Hi
    What is the work involved in activating Technical content ( not BI Content ).
    How to do the testing on Technical Content ?
    Please provide me some links or documents regarding Technical Content.
    Thanks in Advance.
    <Moderator Message: Please search the [help|http://help.sap.com] for the information you are looking for>
    Edited by: Siegfried Szameitat on Jun 1, 2011 1:58 PM

    Hello,
    ODI is an ELT product and not a Reporting one.
    To work correctly with this tool you need good knowledge about Databases ans SQL.
    About the market I can't answer you, I know that a new ODI major release will go out in 2009 and i think that all will depend on, this release is announced as totally different of the last one.
    Essbase is one of the technology which is managed by the product, I don't really see the need for planning knowledge...
    In ODI you can work with different DB, coding in SQl or directly in OS language, Java or Jython which are the only accepted language (if i'm right).
    Hope to be helpfull,

  • Read contents of file

    hello,
    i want to read the contents of an image file without really opening it. i know this can be achieved by reading the header and footer of the file. this header and footer contain details regarding the contents of the image file. with this i can know the pixel arrangement of the image. how can i acieve this?
    asrar

    You could use a RandomAccessFile object if you know the size in bytes of the header and footer. For the header you would read the first X number of bytes where X is the length of the header. For the footer you'd use the "seek" method to seek to the L - Y point in the file where L is the length of the file obtained using File.length() and Y is the length of the footer. Then read the remainder of the file.
    You could also use the new Java NIO package to read the various parts of the image file directly into byte buffers. You'd create two ByteBuffers big enough to hold the header and footer and a third that contains the rest of the file. Check out the java.nio.channels.FileChannel class.
    But the guy who posted before is right in that you have to open the file if the header and footer are part of the file.

  • Classical ALV

    How to display ALV GRID in the middle of the screen.I am using classical ALV not OOP's concept.
    Thanks in Advance,
    Sumithra

    Hi,
    If you are using reuse_alv_grid_display, have a look at the parameters.
    I_SCREEN_START_COLUMN        
    I_SCREEN_START_LINE          
    I_SCREEN_END_COLUMN          
    I_SCREEN_END_LINE            
    Fill the necessary values and try the output.

  • Save contents of editable alv into dbtable

    Hi All,
    I have an alv output with editable fields. This output has the contents some from an itab and some are hardcoded in the program. Now I have edited the contents in the alv o/p.
    Now I want to save the contents of the alv o/p fully into the dbtable.
    Please suggest how to do this.

    Hi,
    STEP :1.
    In the PBO of the Screen in Which you are  designed your container for output - SET the PF-STATUS.
    Example : SET PF-STATUS '1500'.
    In this PF Status you activate the SAVE Button.
    I think for SAVE Button the sy-ucomm = 'SPOS'.
    STEP 2:
    In the PAI of the Screen in Which you are  designed your container for output.
    Write the below code.
    IF SY-UCOMM = 'SPOS'.
        CALL METHOD G_GRID->CHECK_CHANGED_DATA
          IMPORTING
            E_VALID = L_VALID.
        IF L_VALID EQ 'X'.
          CALL METHOD G_GRID->GET_SELECTED_ROWS
            IMPORTING
              ET_ROW_NO = LT_ROW_NO[].
        ENDIF.
    At this Point your output table will have the modified values.
    Now you can proceed it to update the database table.
    ENDIF.
    Regards
    Amir

Maybe you are looking for

  • [SOLVED] Problem building php 5.3 with openssl

    Hi, I stuck with this issue and don't really know what's wrong and what to do: $ pacman -Qs openssl local/lib32-openssl 1.0.1.i-1 The Open Source toolkit for Secure Sockets Layer and Transport Layer Security (32-bit) local/openssl 1.0.1.i-1 The Open

  • UPDATING SUPPLIERS in R12 using APIs

    Hi , For Updating the Existing Customers/sites,we have the following APIs AP_PO_VENDORS_APIS_PKG.update_vendor, AP_PO_VENDORS_APIS_PKG.update_vendor_site In R12 ,API "AP_PO_VENDORS_APIS_PKG" is missing.Can anybody tell me what relpaced this API in R1

  • Dataguard with 11g Standard Edition

    Hi, We have 11g standard edition. I wish to provide high availability. From the license document We are able to setup Basic Standby Database(Manually Managed). What is difference between Data guard and Basic standby? Hw can i configure? What r all th

  • IR Error Message

    Have been making some develpment changes.  System used to run.  Since my changes I'm getting a fatal error message: On Post Process () Event Script Error Under detail is says : System Stack Trace Unavailable What does any of this mean? How do I resol

  • Saving edited photos in original album

    When I edit a photo in an album ie.rotate it, it will only save the edited photo in camera roll and not in the original album, how do I stop it from saving in camera roll?