Skip to Content
0
Former Member
Dec 04, 2009 at 01:56 AM

Download data into WordDocument

53 Views

Hi Experts,

Can anyone guide me how to create a table with 10 * 2 (Rows * 2 Columns) at a particular postion in the worddocument.

Here the code what I knew how to create a table. Your reply will be greatly appreciated.


INCLUDE ole2incl.
DATA:  gv_word                  TYPE ole2_object,
       gv_documents             TYPE ole2_object,
       gv_activedocument        TYPE ole2_object,
       gv_styles                TYPE ole2_object,
       gv_font                  TYPE ole2_object,
       gv_pagesetup             TYPE ole2_object,
       gv_linenumbering         TYPE ole2_object,
       gv_activewindow          TYPE ole2_object,
       gv_options               TYPE ole2_object,
       gv_tables                TYPE ole2_object,
       gv_selection             TYPE ole2_object,
       gv_range                 TYPE ole2_object,
       gv_rows                  TYPE ole2_object,
       gv_columns               TYPE ole2_object,
       gv_app                   TYPE char1,
       gv_parformat             TYPE ole2_object, "Paragraph format
       gv_paragraphformat       TYPE ole2_object.

DATA: lv_updown TYPE REF TO cl_gui_frontend_services,
      lv_path1 TYPE string,
      lv_file TYPE string,
      lv_flag,
      lv_action TYPE i,
      gv_down                   TYPE string.


*PARAMETERS: lv_path TYPE string.







START-OF-SELECTION.

  IF lv_updown IS INITIAL.
    CREATE OBJECT lv_updown.
  ENDIF.
  CALL METHOD lv_updown->file_save_dialog
    EXPORTING
      file_filter          = lv_updown->filetype_all
    CHANGING
      user_action          = lv_action
      filename             = lv_file
      path                 = lv_path1
      fullpath             = gv_down
    EXCEPTIONS
      cntl_error           = 1
      error_no_gui         = 2
      not_supported_by_gui = 3
      OTHERS               = 4.
  IF lv_action EQ 9.
*user cancel/terminate
    LEAVE TO SCREEN 0.
  ENDIF.



  CREATE OBJECT gv_word 'WORD.APPLICATION'.

  GET PROPERTY OF gv_word 'Documents' = gv_documents.
  CALL METHOD OF gv_documents 'Add'.

  GET PROPERTY OF gv_word 'Options' = gv_options.
  SET PROPERTY OF gv_options 'MeasurementUnit' = 1.

  GET PROPERTY OF gv_word 'Selection' = gv_selection.
  "Paragraph style
  GET PROPERTY OF gv_selection 'ParagraphFormat' = gv_parformat .
  SET PROPERTY OF gv_parformat 'Alignment'       = '1' . "Centered
  "Font style
  GET PROPERTY OF gv_selection 'Font' = gv_font.
  SET PROPERTY OF gv_font 'Name' = 'Arial'.
  SET PROPERTY OF gv_font 'Size' = 10.
*"Setting object's visibility property
  SET PROPERTY OF gv_word 'Visible'   = 1 .       "No Display

  GET PROPERTY OF gv_word 'ActiveDocument' = gv_activedocument.

  GET PROPERTY OF gv_activedocument 'PageSetup' = gv_pagesetup.
  SET PROPERTY OF gv_pagesetup 'TopMargin'    = 114.
  SET PROPERTY OF gv_pagesetup 'BottomMargin' = 114.
  SET PROPERTY OF gv_pagesetup 'RightMargin'  = 57.
  SET PROPERTY OF gv_pagesetup 'LeftMargin'   = 57.
  SET PROPERTY OF gv_pagesetup 'PageWidth'    = 596.
  SET PROPERTY OF gv_pagesetup 'PageHeight'   = 844.

  GET PROPERTY OF gv_word 'ActiveDocument' = gv_activedocument.
  GET PROPERTY OF gv_activedocument 'Tables' = gv_tables.
  GET PROPERTY OF gv_selection 'Range' = gv_range.

  "Table properties
  CALL METHOD OF gv_tables 'Add'
    EXPORTING
    #1 = gv_range
    #2 = 10   " No of rows
    #3 = 3.  " no of columns.
  GET PROPERTY OF gv_selection 'Tables' = gv_tables
  exporting
    #1 = 1.
  "Table rows properties
  GET PROPERTY OF gv_tables 'Rows' = gv_rows.
  SET PROPERTY OF gv_rows 'HeightRule' = 1.
  SET PROPERTY OF gv_rows 'Height' = 4.


  GET PROPERTY OF gv_tables 'Columns' = gv_columns
  exporting
    #1 = 1.
  SET PROPERTY OF gv_columns 'PreferredWidthType' = 3.
  SET PROPERTY OF gv_columns 'PreferredWidth' = 120.
  CALL METHOD OF gv_selection 'Move'
    EXPORTING
    #1 = 9
    #2 = 1.


  GET PROPERTY OF gv_tables 'Columns' = gv_columns
   exporting
      #1 = 2.
  SET PROPERTY OF gv_columns 'PreferredWidthType' = 3.
  SET PROPERTY OF gv_columns 'PreferredWidth' = 100.
  CALL METHOD OF gv_selection 'Move'
    EXPORTING
    #1 = 9
    #2 = 1.

  GET PROPERTY OF gv_tables 'Columns' = gv_columns
   exporting
      #1 = 3.
  SET PROPERTY OF gv_columns 'PreferredWidthType' = 3.
  SET PROPERTY OF gv_columns 'PreferredWidth' = 80.
  CALL METHOD OF gv_selection 'Move'
    EXPORTING
    #1 = 9
    #2 = 1.

  CALL METHOD OF gv_selection 'TypeParagraph' .

  CALL METHOD OF gv_selection 'MoveLeft'
    EXPORTING
    #1 = 1
    #2 = 1.
  CALL METHOD OF gv_selection 'TypeText'
    EXPORTING
    #1 = 'Hi.......'.

  CALL METHOD OF gv_activedocument 'SaveAs'
    EXPORTING
    #1 = gv_down.
  GET PROPERTY OF gv_word 'ActiveWindow' = gv_activewindow.
  CALL METHOD OF gv_activewindow 'Close'.