web dynpro abap- file window

Upload: ganeeilu

Post on 04-Apr-2018

243 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/31/2019 Web Dynpro Abap- File Window

    1/6

    Web Dynpro abap file download

    Example to achieve the functionality

    Create Web Dynpro Component and Save it a local object.

    When we specify Window name and View name when we create web dynpro component,View is embedded in Window.

    Go to Component Controllero Context tab->Create node EMP_DET with cardinality 0..n

    o Method tab->Create GET_DATA method to prepare data for EMP_DET node.

    http://1.bp.blogspot.com/-Nw0GlTYNqTo/T2DE2EaQroI/AAAAAAAAAro/ZJjREBDS8fE/s1600/2+-+context.jpghttp://3.bp.blogspot.com/-J6PFQID6HOo/T2DEjyRtL4I/AAAAAAAAArg/auqRokx-q4U/s1600/1.jpghttp://1.bp.blogspot.com/-Nw0GlTYNqTo/T2DE2EaQroI/AAAAAAAAAro/ZJjREBDS8fE/s1600/2+-+context.jpghttp://3.bp.blogspot.com/-J6PFQID6HOo/T2DEjyRtL4I/AAAAAAAAArg/auqRokx-q4U/s1600/1.jpghttp://1.bp.blogspot.com/-Nw0GlTYNqTo/T2DE2EaQroI/AAAAAAAAAro/ZJjREBDS8fE/s1600/2+-+context.jpg
  • 7/31/2019 Web Dynpro Abap- File Window

    2/6

    o CodeMETHOD get_data .

    DATA lo_nd_emp_det TYPE REF TO if_wd_context_node.

    DATA lt_emp_det TYPE wd_this->elements_emp_det.

    * navigate from to via lead selection

    lo_nd_emp_det = wd_context->get_child_node( name = wd_this->wdctx_emp_det ).

    SELECT *

    FROM pa0002

    INTO CORRESPONDING FIELDS OF TABLE lt_emp_det UP TO 30 ROWS.

    lo_nd_emp_det->bind_table( new_items = lt_emp_detset_initial_elements = abap_true ).

    ENDMETHOD.

    Go to view DOWNLOAD_Vo Context tab->Map Component Controller context to View Context.

    o Layout tab->Change layout property of ROOTUIELEMENTCONTAINER toMatrixLayout.

    http://4.bp.blogspot.com/-7lHxGRMZtNA/T2DFFymAPqI/AAAAAAAAArw/KmcMninWotg/s1600/2.1+-+Get+data.jpghttp://2.bp.blogspot.com/-50CEfMru3jM/T2DFdy_I_JI/AAAAAAAAAr4/KmRXobyIPqw/s1600/3+context+mapping.jpghttp://4.bp.blogspot.com/-7lHxGRMZtNA/T2DFFymAPqI/AAAAAAAAArw/KmcMninWotg/s1600/2.1+-+Get+data.jpghttp://2.bp.blogspot.com/-50CEfMru3jM/T2DFdy_I_JI/AAAAAAAAAr4/KmRXobyIPqw/s1600/3+context+mapping.jpghttp://4.bp.blogspot.com/-7lHxGRMZtNA/T2DFFymAPqI/AAAAAAAAArw/KmcMninWotg/s1600/2.1+-+Get+data.jpghttp://2.bp.blogspot.com/-50CEfMru3jM/T2DFdy_I_JI/AAAAAAAAAr4/KmRXobyIPqw/s1600/3+context+mapping.jpghttp://4.bp.blogspot.com/-7lHxGRMZtNA/T2DFFymAPqI/AAAAAAAAArw/KmcMninWotg/s1600/2.1+-+Get+data.jpg
  • 7/31/2019 Web Dynpro Abap- File Window

    3/6

    o Layout tab->Create Table UI element ->Bind EMP_DET context node to tableelement->Set Layout data property to MatrixHeadData

    o Layout tab-> Create Button UI element for downloading file-> Create OnActionevent DOWNLOAD_DATA for the button.

    http://3.bp.blogspot.com/-YSnvj64wJtk/T2DGUxFeJVI/AAAAAAAAAsQ/7LHQjCAIhn8/s1600/6+-+button.jpghttp://1.bp.blogspot.com/-HflFu3y9Lxw/T2DFyrrU3mI/AAAAAAAAAsI/30NEET0Q-Sk/s1600/5+-+table+binding.jpghttp://1.bp.blogspot.com/-zHfPqXPM2NE/T2DFs4gQB1I/AAAAAAAAAsA/Ja6dQs6Wu5U/s1600/4+-+table.jpghttp://3.bp.blogspot.com/-YSnvj64wJtk/T2DGUxFeJVI/AAAAAAAAAsQ/7LHQjCAIhn8/s1600/6+-+button.jpghttp://1.bp.blogspot.com/-HflFu3y9Lxw/T2DFyrrU3mI/AAAAAAAAAsI/30NEET0Q-Sk/s1600/5+-+table+binding.jpghttp://1.bp.blogspot.com/-zHfPqXPM2NE/T2DFs4gQB1I/AAAAAAAAAsA/Ja6dQs6Wu5U/s1600/4+-+table.jpghttp://3.bp.blogspot.com/-YSnvj64wJtk/T2DGUxFeJVI/AAAAAAAAAsQ/7LHQjCAIhn8/s1600/6+-+button.jpghttp://1.bp.blogspot.com/-HflFu3y9Lxw/T2DFyrrU3mI/AAAAAAAAAsI/30NEET0Q-Sk/s1600/5+-+table+binding.jpghttp://1.bp.blogspot.com/-zHfPqXPM2NE/T2DFs4gQB1I/AAAAAAAAAsA/Ja6dQs6Wu5U/s1600/4+-+table.jpghttp://1.bp.blogspot.com/-zHfPqXPM2NE/T2DFs4gQB1I/AAAAAAAAAsA/Ja6dQs6Wu5U/s1600/4+-+table.jpg
  • 7/31/2019 Web Dynpro Abap- File Window

    4/6

    o Code for the ONACTIONDOWNLOAD_DATA method.

    o CodeMETHOD onactiondownload_data .

    DATA lo_nd_emp_det TYPE REF TO if_wd_context_node.

    DATA:

    lt_emp_det TYPE wd_this->elements_emp_det,

    ls_emp_det TYPE wd_this->element_emp_det.

    DATA:

    str TYPE string,

    xstr TYPE xstring.

    * navigate from to via lead selection

    lo_nd_emp_det = wd_context->get_child_node( name = wd_this->wdctx_emp_det ).

    lo_nd_emp_det->get_static_attributes_table( IMPORTING table =lt_emp_det ).

    "Prepare download file.

    LOOP AT lt_emp_det INTO ls_emp_det.

    CONCATENATE str

    ls_emp_det-pernr

    ls_emp_det-nachn

    ls_emp_det-vorna

    http://2.bp.blogspot.com/-oS3gJ1l67R8/T2DIMuuWUhI/AAAAAAAAAso/jGlsus0SU60/s1600/9+-+download+function.jpghttp://3.bp.blogspot.com/-0LgPv4Mzicc/T2DGbDfXQuI/AAAAAAAAAsY/akADQnwnDP0/s1600/7-+button+action.jpghttp://2.bp.blogspot.com/-oS3gJ1l67R8/T2DIMuuWUhI/AAAAAAAAAso/jGlsus0SU60/s1600/9+-+download+function.jpghttp://3.bp.blogspot.com/-0LgPv4Mzicc/T2DGbDfXQuI/AAAAAAAAAsY/akADQnwnDP0/s1600/7-+button+action.jpg
  • 7/31/2019 Web Dynpro Abap- File Window

    5/6

    ls_emp_det-gbdat

    cl_abap_char_utilities=>newline

    INTO str

    SEPARATED BY cl_abap_char_utilities=>horizontal_tab.

    ENDLOOP.

    CALL FUNCTION 'SCMS_STRING_TO_XSTRING'

    EXPORTING

    text = str

    IMPORTING

    buffer = xstr

    EXCEPTIONS

    failed = 1.

    "Attach file

    CALL METHOD cl_wd_runtime_services=>attach_file_to_response

    EXPORTING

    i_filename = 'Download.xls'

    i_content = xstr

    i_mime_type = 'EXCEL'

    i_in_new_window = abap_false

    i_inplace = abap_false.

    ENDMETHOD.

    o Methods tab->Call GET_DATA method in WDDOINIT method to getEMP_DET node elements to display in Table.

    method WDDOINIT .

    DATA lo_componentcontroller TYPE REF TO ig_componentcontroller .

    lo_componentcontroller = wd_this->get_componentcontroller_ctr( ).

    lo_componentcontroller->get_data( ).

    endmethod.

    Save and Activate Web Dynpro component. Create Web Dynpro Application and Save it as local object.

    http://3.bp.blogspot.com/-f4XrJ1HCEtg/T2DGdM3pQjI/AAAAAAAAAsg/CoNMnEwmf3s/s1600/8.+Call+GET_DATA+method+data+display.jpg
  • 7/31/2019 Web Dynpro Abap- File Window

    6/6

    Run Web Dynpro Application.

    http://1.bp.blogspot.com/-bn-LgYdbSx4/T2DJHQe4pFI/AAAAAAAAAtI/--9PVrZkjeU/s1600/13.jpghttp://1.bp.blogspot.com/-kD7LRTna4As/T2DJF5m5m6I/AAAAAAAAAtA/rmfcrVOWcQs/s1600/12+output.jpghttp://3.bp.blogspot.com/-2-TejgmItKs/T2DI7dXwPxI/AAAAAAAAAs4/pzWc2uzyl1E/s1600/11+appln.jpghttp://3.bp.blogspot.com/-aT2FHoK5wnE/T2DI4XFpagI/AAAAAAAAAsw/3BN39FFPLac/s1600/10+wda+appln.jpghttp://1.bp.blogspot.com/-bn-LgYdbSx4/T2DJHQe4pFI/AAAAAAAAAtI/--9PVrZkjeU/s1600/13.jpghttp://1.bp.blogspot.com/-kD7LRTna4As/T2DJF5m5m6I/AAAAAAAAAtA/rmfcrVOWcQs/s1600/12+output.jpghttp://3.bp.blogspot.com/-2-TejgmItKs/T2DI7dXwPxI/AAAAAAAAAs4/pzWc2uzyl1E/s1600/11+appln.jpghttp://3.bp.blogspot.com/-aT2FHoK5wnE/T2DI4XFpagI/AAAAAAAAAsw/3BN39FFPLac/s1600/10+wda+appln.jpghttp://1.bp.blogspot.com/-bn-LgYdbSx4/T2DJHQe4pFI/AAAAAAAAAtI/--9PVrZkjeU/s1600/13.jpghttp://1.bp.blogspot.com/-kD7LRTna4As/T2DJF5m5m6I/AAAAAAAAAtA/rmfcrVOWcQs/s1600/12+output.jpghttp://3.bp.blogspot.com/-2-TejgmItKs/T2DI7dXwPxI/AAAAAAAAAs4/pzWc2uzyl1E/s1600/11+appln.jpghttp://3.bp.blogspot.com/-aT2FHoK5wnE/T2DI4XFpagI/AAAAAAAAAsw/3BN39FFPLac/s1600/10+wda+appln.jpghttp://1.bp.blogspot.com/-bn-LgYdbSx4/T2DJHQe4pFI/AAAAAAAAAtI/--9PVrZkjeU/s1600/13.jpghttp://1.bp.blogspot.com/-kD7LRTna4As/T2DJF5m5m6I/AAAAAAAAAtA/rmfcrVOWcQs/s1600/12+output.jpghttp://3.bp.blogspot.com/-2-TejgmItKs/T2DI7dXwPxI/AAAAAAAAAs4/pzWc2uzyl1E/s1600/11+appln.jpghttp://3.bp.blogspot.com/-aT2FHoK5wnE/T2DI4XFpagI/AAAAAAAAAsw/3BN39FFPLac/s1600/10+wda+appln.jpg