Translation of heading in Excel file.

Hi frnd,
My requirment is to send a report in excel format to the customer in customer language.
The headings of each coulmns are translated to customer language format.
I defined the column heading in Text symbols.
Goto>text elements->text symbols.
I have maintained the translation for each countries using:
se63>translation->R3 enterprise->short text->S3 abap text---->REPT text elements.
Here i give the object name as my report name and my desired languages.
i could able to maintain the laguage.
I am reading the heading using CALL FUNCTION 'LXE_OBJ_TEXT_PAIR_READ_RPT4'.
My code:-
y_lv_lang = y_wa_cust-LANGU.
  refresh y_it_label.
  CALL FUNCTION 'LXE_OBJ_TEXT_PAIR_READ_RPT4'
    EXPORTING
      t_r3_lang       = y_lv_lang
      s_r3_lang       = y_lv_lang
      o_r3_lang       = y_lv_lang
      objtype         = y_k_obtyp
      objname         = y_k_objn
     READ_ONLY       = 'X'
  IMPORTING
    PSTATUS         =
    tables
      lt_pcx_s1       = y_it_label
Here the y_it_label will contain the translated colomn heading where as y_k_objn is the prog name ,y_k_obtyp is the object type which contain 'RPT4' and y_lv_lang contain the language.
I am able to send report in excel format in customer language via mail. But when the customer is of Russia and ukrane the columns hedaing are printed as
Ex:-
'Material' is printed as    > 4  8 7 4 5 ; 8 O insted of of the russian language 'Код изделия'
when my customer recieves the report as an excel file it gets the coulmn heading as this type wong character.

Hi Sowmya,
when you refer to my Excel Export tutorial on SDN: <a href="https://wiki.sdn.sap.com/wiki/x/0mQ">Exporting Table Data Using On-Demand Streams - SAP NetWeaver 7.0</a>:
use <b>LinkedHashMap</b> instead of <i>HashMap</i>:
  private Map getProductColumnInfos() {
    Map columnInfosMap = new LinkedHashMap();
    columnInfosMap.put(IPrivateTableCompBasketView.IProductsElement.QUANTITY, "Quantity");
    columnInfosMap.put(IPrivateTableCompBasketView.IProductsElement.ARTICLE, "Article");
    columnInfosMap.put(IPrivateTableCompBasketView.IProductsElement.COLOR, "Color");
    columnInfosMap.put(IPrivateTableCompBasketView.IProductsElement.PRICE, "Price in EURO");
    columnInfosMap.put(
      IPrivateTableCompBasketView.IProductsElement.TOTAL__PER__ARTICLE,
      "Total Per Article In Euro");
    return columnInfosMap;
This keeps the order of key-displaytext-pairs passed by the client (table component) to the service (excel export component) stable.
Regards, Bertram

Similar Messages

  • How to put the header in excel file in GUI_DOWNLOAD

    Hi,
    I have a requirement , Which I m downloading the contents of internal table using the GUI_DOWNLOAD  in excel format, I need to keep the first line of the excel sheet as a header, Can any one suggest how to go for this,

    Hello,
    You can have the data in the data tab & field name in the field tab. And so you can download both the field name and the value for the same using the FM u2013 GUI_DOWNLOAD (File type should be u2018ASCu2019).
    Hope, you need additional information to be added as the header.
    One option: You can call the GUI_UPLOAD twice.
    First one with the header in the data tab.
    Second one with the option append = u2018Xu2019 with the actual data and header and pass the same above file name as input.
    Also, there is a solved forum already exists but with a different solution. You can go through the below link also:
    Re: GUI_DOWNLOAD with Header
    Regards,
    Selva K.

  • Saving column header in excel file

    Hi,
    I'm trying to save a table as an excel/.txt file. I'm using the standard "write-to-spread-sheet.vi" to save.
    The problem right now is that I can't save the column headers in the file. Any idea how I can do that?
    Also I noticed when you save using "write-to-spread-sheet.vi" the saved file is not recognized by Windows. Is there a way to automatically save the file as a text file?
    Here's what I have right now (attached)
    Thanx!
    Attachments:
    Table_Good.vi ‏77 KB

    The reason you don't have column headers is that you are converting everything to numerics. Your column headers aren't numbers so they can't be converted. Modify Write to Spreadsheet to accept string arrays as inputs per the directions on the block diagram.
    If you give a filename with a .txt extension, that's how it will be saved. If you save it with a .xls extension, then that's how it will be saved.

  • : Error message whendownloading excel file

    When we are trying to download report to excel, we are getting following error.
    Earlier this functionality was working ok, after application of support pack sp10 on portal and reapplying SSO on SAP HR side, we started getting following error..
    Any help on this is appreciated
    Thanks
    Note
    Following error text processed in system:
    BSP Exception: Das Objekt 463BD5128FE15B2CE10000000AE4B24F.xls in der URL /sap(bD1lbiZjPTIyNiZkPW1pbiZwPTMyNjI5JnY9NyUyZTAwJmk9MQ==)/bc/bsp/sap/ZHR_EC/463BD5128FE15B2CE10000000AE4B24F.xls ist nicht gültig.

    Following is some of the code..
    method provide_excel_file .
      data: l_cl_comp_select      type ref to zcl_hr_ec_comp_select
          , l_cl_error_handler    type ref to zcl_hr_bc_error_handler
          , l_cl_employee         type ref to zcl_hr_bc_employee
          , l_cl_empl_error       type ref to zcx_hr_bc_hraccess
          , l_cl_salary_data      type ref to zcl_hr_ec_salary_details_data
          , l_carea               type ecm_carea
          , l_orgunit             type hrobjid
          , l_t_excel             type zhrtt_ec_excel
          , l_t_ids               type zhrtt_ec_ids
          , l_s_id                type zhrlt_ec_ids
          , l_process             type zhr_ec_process
          , l_cl_orgunit          type ref to zcl_hr_bc_orgunit
          , l_pernr               type pernr_d
      field-symbols <l_fs_id> type zhrlt_ec_ids.
    Get an instance of the error handler class
      l_cl_error_handler = zcl_hr_bc_error_handler=>get_instance( ).
    Fill table l_t_ids
      if i_id is not initial.
    Get an instance of the central employee class
        try.
            l_cl_employee  = zcl_hr_bc_employee=>get_instance_for_pernr_pos( i_id(8) ).
            l_orgunit = l_cl_employee->get_orgunit( ).
       CATCH cx_hrpa_missing_infty_data .
          catch zcx_hr_bc_missing_infty_data . "BROOKSS Y47K900294
        endtry.
      Read org units and itz pernrs except Chief            "Y47K900175 #374 -Start
        create object l_cl_orgunit
          exporting
            i_orgunit = l_orgunit
            i_keydt   = sy-datum.  "ins CSC 2007-04-24 Y47K900264 #394
        try.
            call method l_cl_orgunit->get_employees_of_mgr
              receiving
                r_t_employees = l_t_ids.
          catch zcx_hr_bc_om_error .
        endtry.
    *Get position and add to pernr
        loop at l_t_ids assigning <l_fs_id>.
          l_pernr =  <l_fs_id>(8).
          try.
              call method zcl_hr_bc_employee=>get_instance_for_pernr_pos
                exporting
                  i_pernr       = l_pernr
                receiving
                  r_cl_instance = l_cl_employee.
              call method l_cl_employee->get_position
                receiving
                  r_plans = <l_fs_id>+8(8).
       CATCH cx_hrpa_missing_infty_data .
            catch zcx_hr_bc_missing_infty_data . "BROOKSS Y47K900294
          endtry.
        endloop.                                                "Y47K900175 #374 -End
      elseif i_pernr is not initial.
    Get an instance of the central employee class
        try.  "ins CSC 2007-05-02 Y47K900294 #457
            l_cl_employee  = zcl_hr_bc_employee=>get_instance_for_pernr_pos( i_pernr ).
            l_s_id-id(8)   = i_pernr.
            l_s_id-id+8(8) = l_cl_employee->get_position( ).
            append l_s_id to l_t_ids.
          catch zcx_hr_bc_missing_infty_data. "ins CSC 2007-05-02 Y47K900294 #457
        endtry. "ins CSC 2007-05-02 Y47K900294 #457
      endif.
    Create an instance of the compensation selection class
      create object l_cl_comp_select.
    Get selected compensation process
      call method l_cl_comp_select->get_current_selection
        importing
          e_carea   = l_carea
          e_process = l_process.
      if not ( l_carea   is initial and
               l_process is initial ).
      Create an instance of the central class zcl_hr_ec_salary_details_data
        create object l_cl_salary_data
          exporting
            i_carea   = l_carea
            i_process = l_process.
      Fill excel table
        try.
            call method l_cl_salary_data->get_excel_table
              exporting
                i_t_ids         = l_t_ids
                i_currency      = i_currency
              importing
                e_t_excel_table = l_t_excel.
          catch zcx_hr_bc_hraccess into l_cl_empl_error.
            call method l_cl_error_handler->set_exception_msg
              exporting
                i_cl_exception = l_cl_empl_error
                i_type         = 'E'.
            return.
        endtry.
      Get cached URL of the excel file
        r_url = me->cache_excel( i_t_excel     = l_t_excel
                                 i_runtime_url = i_runtime_url ).
      else.
       RAISE EXCEPTION TYPE cx_hrpa_invalid_customization
        raise exception type zcx_hr_bc_invalid_customizatio     "BROOKSS Y47K900292
          exporting
            textid = text-e01.
      endif.
    endmethod.
    method cache_excel .
      data: l_cached_response     type ref to if_http_response
          , l_cl_abap_type        type ref to cl_abap_typedescr
          , l_filename            type string
          , l_guid32              type guid_32
          , l_string              type string
          , l_xstring             type xstring
          , l_help_field(1024)    type c
          , l_length              type i
          , l_s_excel             type zhrlt_ec_excel
          , l_cl_element          type ref to cl_abap_elemdescr
          , l_s_dfies             type dfies.
      field-symbols
          : <l_excel>            type any.
    create 'good' filename with appraisee information
      concatenate 'attachment; filename=salary_' sy-datum '_' sy-uzeit '.xls'
             into l_filename.
    Fill cached HTTP response
      create object l_cached_response
               type cl_http_response
          exporting add_c_msg = 1.
    Some Browsers have caching problems when loading PDF format
    mime type of page is set to application/pdf
      l_cached_response->set_header_field(
                         name   = 'cache-control'
                         value  = 'max-age=0' ).
      l_cached_response->set_header_field(
                         name   = 'content-disposition'
                         value  = l_filename ).
      l_cached_response->set_header_field(
                         name   = if_http_header_fields=>content_type
                         value  = 'application/msexcel'  ).
      l_cached_response->set_status(
                         code   = 200
                         reason = 'OK' ).
    expire after 5 minutes
      l_cached_response->server_cache_expire_rel(
                         expires_rel = 300 ).
    Convert table type i_t_excel in a string
      loop at i_t_excel into l_s_excel.
    *Header for excel file
        if sy-tabix = 1.
          do.
        Set all fields of structure l_s_excel
            assign component sy-index of structure l_s_excel to <l_excel>.
            if sy-subrc <> 0.
              exit.
            endif.
            l_cl_abap_type = cl_abap_typedescr=>describe_by_data( <l_excel> ).
            l_cl_element ?= l_cl_abap_type.
            if l_cl_abap_type->get_relative_name( )  = 'ZHR_BC_AMNTPCT'
            or l_cl_abap_type->get_relative_name( )  = 'ZHR_EC_SAVED'
            or l_cl_abap_type->get_relative_name( )  = 'ZHR_EC_MARK'
            or l_cl_abap_type->get_relative_name( )  = 'ZHR_EC_MERITA_A'"Y47K900108
            or l_cl_abap_type->get_relative_name( )  = 'ZHR_EC_MERITP_A'"Y47K900108
            or l_cl_abap_type->get_relative_name( )  = 'ZHR_EC_LUMPSUMA'"Y47K900108
            or l_cl_abap_type->get_relative_name( )  = 'ZHR_EC_LUMPSUMP'"Y47K900108
            or l_cl_abap_type->get_relative_name( )  = 'ZHR_EC_MRAAMOUNT'"Y47K900108
            or l_cl_abap_type->get_relative_name( )  = 'ZHR_EC_MRAPERCENT'"Y47K900108
            or l_cl_abap_type->get_relative_name( )  = 'ZHR_EC_PROAMOUNT'"Y47K900108
            or l_cl_abap_type->get_relative_name( )  = 'ZHR_EC_PROPERCENT'"Y47K900108
            or l_cl_abap_type->get_relative_name( )  = 'ZHR_EC_TOTALA_A'"Y47K900108
            or l_cl_abap_type->get_relative_name( )  = 'ZHR_EC_TOTALP_A'"Y47K900108
            or l_cl_abap_type->get_relative_name( )  = 'INT4'.  "Y47K900108
            else.
              call method l_cl_element->get_ddic_field
                exporting
                  p_langu      = sy-langu
                receiving
                  p_flddescr   = l_s_dfies
                exceptions
                  not_found    = 1
                  no_ddic_type = 2
                  others       = 3.
              if sy-subrc <> 0.
                clear l_s_dfies-scrtext_l.
              else.
                write:/ l_s_dfies-scrtext_l.
              endif.
              concatenate l_string  l_s_dfies-scrtext_l cl_abap_char_utilities=>horizontal_tab
                     into l_string.
              clear: l_s_dfies.
            endif.
          enddo.
      Set a new line
          concatenate l_string cl_abap_char_utilities=>newline
                 into l_string.
        endif.
        do.
        Set all fields of structure l_s_excel
          assign component sy-index of structure l_s_excel to <l_excel>.
          if sy-subrc <> 0.
            exit.
          endif.
         l_help_field = <fs_excel>.
          write <l_excel> to l_help_field.
          condense l_help_field.
          l_cl_abap_type = cl_abap_typedescr=>describe_by_data( <l_excel> ).
          if        l_cl_abap_type->get_relative_name( )  = 'ZHR_BC_AMNTPCT'
                  or l_cl_abap_type->get_relative_name( )  = 'ZHR_EC_SAVED'
                  or l_cl_abap_type->get_relative_name( )  = 'ZHR_EC_MARK'
                  or l_cl_abap_type->get_relative_name( )  = 'ZHR_EC_MERITA_A'"Y47K900108
                  or l_cl_abap_type->get_relative_name( )  = 'ZHR_EC_MERITP_A'"Y47K900108
                  or l_cl_abap_type->get_relative_name( )  = 'ZHR_EC_LUMPSUMA'"Y47K900108
                  or l_cl_abap_type->get_relative_name( )  = 'ZHR_EC_LUMPSUMP'"Y47K900108
                  or l_cl_abap_type->get_relative_name( )  = 'ZHR_EC_MRAAMOUNT'"Y47K900108
                  or l_cl_abap_type->get_relative_name( )  = 'ZHR_EC_MRAPERCENT'"Y47K900108
                  or l_cl_abap_type->get_relative_name( )  = 'ZHR_EC_PROAMOUNT'"Y47K900108
                  or l_cl_abap_type->get_relative_name( )  = 'ZHR_EC_PROPERCENT'"Y47K900108
                  or l_cl_abap_type->get_relative_name( )  = 'ZHR_EC_TOTALA_A'"Y47K900108
                  or l_cl_abap_type->get_relative_name( )  = 'ZHR_EC_TOTALP_A'"Y47K900108
                  or l_cl_abap_type->get_relative_name( )  = 'INT4'."Y47K900108
          elseif l_cl_abap_type->get_relative_name( )  = 'ZHR_BC_ID'.      " ins Y47K900245 #414 -Start
            concatenate l_string l_help_field+0(8) cl_abap_char_utilities=>horizontal_tab
                 into l_string.
          else.                                                            " ins Y47K900245 #414 -End
            concatenate l_string l_help_field cl_abap_char_utilities=>horizontal_tab
                   into l_string.
          endif.
          clear: l_help_field.
        enddo.
      Set a new line
        concatenate l_string  cl_abap_char_utilities=>newline
               into l_string.
      endloop.
    Convert string to xstring
      call function 'SCMS_STRING_TO_XSTRING'
        exporting
          text   = l_string
        importing
          buffer = l_xstring
        exceptions
          failed = 1
          others = 2.
      if sy-subrc = 0.
    Get the length of the xstring
        l_length = xstrlen( l_xstring ).
    Pump excel data to browser
        l_cached_response->set_data( data   = l_xstring
                                     length = l_length ).
    Create URL
        call function 'GUID_CREATE'
          importing
            ev_guid_32 = l_guid32.
        concatenate i_runtime_url '/' l_guid32 '.xls' into r_url.
        cl_http_server=>server_cache_upload(
            url      = r_url
            response = l_cached_response ).
      endif.
    endmethod.

  • No column heading in second page in alv report when save in excel file

    Hi Expert,
    How can i remove the column header from Alv report when program execute in background and save in excel file right now
    its comming column header in each page. Client dont want header column in excel from second page. is this possible?
    with regards
    chandan_viji

    Hi Ravi,
    thanks for reply i have solved this problm throug line count and NEW-PAGE LINE COUNT 10000 bcoz client want output in excel file only one page header.
    with regards
    chandan_viji

  • Need to extend header length in Excel file being downloaded by GUI_DOWNLOAD

    hello Experts,
    I have written a program where the data from DSO is downloaded into Excel File which is being saved on my desktop.
    Now, i am facing one problem with the length of header and the values.
    For eg:
    I have 15 cloumns and i have given description for each column ie header name. This header is being displayed only upto 255 characters. If the total length of all the columns header desc exceeds 255 char, then blank header is displayed further.
    Same is the case with the values of the columns.
    I am pasting the relevant code.
    The code for displaying header and fields is:
    Concatenate
    'Sales Org'
    'Sales Org Desc'
    'Sales Dist'
    'Sales Dist Desc'
    'Sales Rep'
    'Sales Rep Desc'
    'Customer Number'
    'Customer Desc'
    'Billing Document'
    'AGI Code No'
    'AgiCode Desc'
    'UCAGI Code No'
    'UCAGI Code Desc'
    'Design Code'
    'CalMonth'
    'CalYear'
    'Billing Qty'
    'ZDIF'
    'ZE01'
    'ZE13'
    Into ls_contents-line SEPARATED BY lc_tab.
    APPEND ls_contents TO lt_contents.
    CLEAR ls_contents.
    Loop at i_t_Table into wa_i_t_t_Table.
    concatenate
          wa_i_t_t_Table-/BIC/G00000574
          wa_i_t_t_Table-salesorg_name
          wa_i_t_t_Table-/BIC/G00000514
          wa_i_t_t_Table-salesdist_name
          wa_i_t_t_Table-/BIC/G00009361
          wa_i_t_t_Table-SalesRep_name
          wa_i_t_t_Table-/BIC/G00000466
          wa_i_t_t_Table-Customer_name
          wa_i_t_t_Table-/BIC/G00000464
          wa_i_t_t_Table-/BIC/G00000001
          wa_i_t_t_Table-agicode_name
          wa_i_t_t_Table-/BIC/G00000002
          wa_i_t_t_Table-UCagicode_name
          wa_i_t_t_Table-/BIC/G00000005
          wa_i_t_t_Table-CALMONTH2
          wa_i_t_t_Table-CALYEAR
          wa_i_t_t_Table-/BIC/G00001108
          wa_i_t_t_Table-/BIC/G00021022
          wa_i_t_t_Table-/BIC/G00021023
          wa_i_t_t_Table-/BIC/G00021024
    INTO ls_contents-line SEPARATED BY lc_tab.
    *CONCATENATE ls_contents lv_hex1 INTO ls_contents.
              APPEND ls_contents TO lt_contents.
              CLEAR ls_contents.
    ENDLOOP.
    CALL FUNCTION 'GUI_DOWNLOAD'
      EXPORTING
      BIN_FILESIZE                    =
       FILENAME                        = c_filename
    FILETYPE                        = 'DAT'
      APPEND                          = ' '
       WRITE_FIELD_SEPARATOR           = ' '
    HEADER                          = '01'
      TRUNC_TRAILING_BLANKS           = ' '
      WRITE_LF                        = 'X'
      COL_SELECT                      = ' '
      COL_SELECT_MASK                 = ' '
      DAT_MODE                        = ' '
      CONFIRM_OVERWRITE               = ' '
      NO_AUTH_CHECK                   = ' '
      CODEPAGE                        = ' '
      IGNORE_CERR                     = ABAP_TRUE
      REPLACEMENT                     = '#'
      WRITE_BOM                       = ' '
      TRUNC_TRAILING_BLANKS_EOL       = 'X'
      WK1_N_FORMAT                    = '0'
      WK1_N_SIZE                      = '20'
      WK1_T_FORMAT                    = '0'
      WK1_T_SIZE                      = '20'
      WRITE_LF_AFTER_LAST_LINE        = ABAP_TRUE
      SHOW_TRANSFER_STATUS            = ABAP_TRUE
    IMPORTING
      FILELENGTH                      =
      TABLES
        DATA_TAB                        = lt_contents
      FIELDNAMES                      =
    EXCEPTIONS
      FILE_WRITE_ERROR                = 1
      NO_BATCH                        = 2
      GUI_REFUSE_FILETRANSFER         = 3
      INVALID_TYPE                    = 4
      NO_AUTHORITY                    = 5
      UNKNOWN_ERROR                   = 6
      HEADER_NOT_ALLOWED              = 7
      SEPARATOR_NOT_ALLOWED           = 8
      FILESIZE_NOT_ALLOWED            = 9
      HEADER_TOO_LONG                 = 10
      DP_ERROR_CREATE                 = 11
      DP_ERROR_SEND                   = 12
      DP_ERROR_WRITE                  = 13
      UNKNOWN_DP_ERROR                = 14
      ACCESS_DENIED                   = 15
      DP_OUT_OF_MEMORY                = 16
      DISK_FULL                       = 17
      DP_TIMEOUT                      = 18
      FILE_NOT_FOUND                  = 19
      DATAPROVIDER_EXCEPTION          = 20
      CONTROL_FLUSH_ERROR             = 21
      OTHERS                          = 22
    IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    Note:  Gone through SDN where many things are suggested like to use parameter of GUI_DOWNLAOD ie "FIELDNAMES " which is disabled in my SAP version.
    Please suggest how to make all the headers and the values of the fields properly.
    Would appreciate immediate help.
    Thanks in advance.
    Regards
    Lavanya

    solved.

  • How to read the contents in the excel file on the basis of colunm heading?

    Hi,
    Here is my requirement like that  in excel file i got the customer number , amount etc....
    And my required fields are customer and amount. In file customer nr is under the heading 'CUSTOMER' and amount is under the heading 'AMOUNT'.
    Is there any FM for reading the contents under the colunm heading of excel?
    Please suggest me.
    Thanks,
    Harshal kulkarni

    Hi Harshal ,
    I dont think there is such function module /BAPI/Class-Method .
    but if your excel file is dynamic you can write your own logic using field - symbols.
    Regards ,
    Praveen

  • How to set the header of the file to excel type when writing it?

    Hello,
    I am using POI API to read an excel file that I have previously written using Java, but not using POI (I've written the file using Microsoft office xml and then writing it using FileOutputStream with an xls extension).
    The problem is that when I read back the file I am getting this error:
    The system was unable to upload the file: Invalid header signature; read 7311066695147732796, expected -2226271756974174256.
    which means that the header of the file is not excel typed.
    If I manually open the file and save it as excel POI is able to read it but I don't want to do this as this entire process of writing/reading the file should be automated. I don't want to use POI for writing the file because POI cannot provide me everything that I need when Microsoft office xml can.
    So, my question is simple: Is there a way, using java, to set the header of a file to excel so that POI will recognize it as such?

    hi roy,
    @see: http://poi.apache.org/hssf/index.html
    "HSSF is the POI Project's pure Java implementation of the Excel '97(-2007) file format. It does not support the new Excel 2007 .xlsx OOXML file format, which is not OLE2 based."
    maybe jexcelapi supports you in writing your xls:
    http://jexcelapi.sourceforge.net/
    hth, jens

  • Exporting pdfs to word and excel file formats  and translating

    Hello, I am new to this forum and came here because I am a professional translator. Although we should be given documents in their original file format, in the real world translators have to convert pdfs such as manuals or annual reports into word or excel files. Given the fact we often work for agencies, and/or do not work directly with the people who created the original files inthe first place, with the best will in the world we normally have to make do with converting the pdf file, or lose the job.
    I would like advice on the best way to learn more about  pdf to word and excel conversion and ways of keeping formatting when it is helpful and removing what is not.
    The general problem is (well the problem is really ignorance on my part!) of course getting the "look and feel" similar in the converted document and knowing more about manipulating the formating and elements which get converted.
    Any help or pointers to online tutorials whether multimedia or text much appreciated.
    David Hardisty (david1610)

    Thank you Lori, this is so clear! I am a teacher as well and there are clear presentations and wonderfully clear presentations and this is in the latter category.
    A tiny suggestion. You would not believe how many pdf files exported to word I have received that are Portuguese content and the sender has not set the language to Portuguese! So in your text entry you might want to mention the language setting. I know it is obvious, but as we know sometimes we cannot see the obvious!
    I will need to look far more carefully at the final things in your video.
    Are there any special considerations for exporting pdf files as Excel? My original doubt was I had to translate some accounting documents. 95% of the document was numbers which did not changing (except for commas to periods and vice versa due to different separator conventions). I did not now how to just select e.g. the vertical column with text. I will go back and try with this suggestion because in this case the look and feel of the numbers was important and the precise fonts etc. seemed to cause problems. But now I am getting out of my depth!
    Thank you again!
    DavidHardisty

  • Is there a way to check whether an Excel file has a header or not?

    Hi!
    I'm currently using POI Utility to read and write Excel files.
    You normally use the HasHeaderRow = true / false to specify whether the file has a header or not.
    Now, let's say I have a program that needs to read Excel files from a directory, some have headers, some don't.
    Is there a way to know dynamically whether a header has been defined or not?
    Then, for those having headers, the flag will be set as true, while for those which don't have any header, the flag will be set as false.
    E.g.
    <!--- Create an instance of the POIUtility.cfc. --->
        <cfset objPOI = CreateObject(
            "component",
            "POIUtility"
            ).Init()
            />
    <!--- Set directory --->
    <cfset currentDirectory = GetDirectoryFromPath(GetTemplatePath()) & "newDir">
    <!--- Check whether the directory exists. --->
    <cfif DirectoryExists(variables.currentDirectory)>
         <!--- Read files from the specified directory --->
         <cfdirectory action="list" directory="#variables.currentDirectory#" type="file" filter="*.xls" name="qDirectory">
         <!--- Check if the directory has any Excel file --->
         <cfif variables.qDirectory.recordcount gt 0>
              <!--- Loop query --->
         <cfloop query="variables.qDirectory">
                   <!--- Check if header is present in each of the file --->
                        IF headerExists THEN
                             headerFlag = true
                        ELSE
                             headerFlag = false
                        END IF
                   <!--- Read Excel File --->
                <cfset objSheet = objPOI.ReadExcel(FilePath = #variables.qDirectory.name#, HasHeaderRow = #variables.headerFlag#, SheetIndex = 0) />
              </cfloop>
         </cfif>
    </cfif>
    Any help would be most welcome.
    Thanks and regards,
    Yogesh Mahadnac  

    Hi cfSearching,
    Many thanks for your reply! I really do appreciate!
    However, I've still got 1 more question for you.
    At the moment, I'm using POI and sometimes cfx_Excel2Query to read Excel files.
    In both cases, you have to specify whether the first row is a header.
    How would you read the Excel file to check whether the 1st row is the header?
    I've tried using cffile, but I get all sorts of "garbage"
            <cffile action="read" file="#variables.filename#" variable="xlsResult">
            <cfloop index="i" list="#variables.xlsResult#" delimiters="#chr(13)#&#chr(10)#">
                <cfif variables.i eq 1>
                    <cfoutput>
                        Test 1st Row: #trim(replacenocase(listgetat(variables.i,1,","),'"',"","All"))#
                    </cfoutput>
                </cfif>
            </cfloop>
    I get the following output:
    ÐÏ à¡± á����.... etc etc
    I'd be very much grateful if you could please advise on the latter at your earliest convenience.
    Thanks and best regards,
    Yogesh Mahadnac

  • Translation of excel file to an xml file

    hello
    does any one know how do I translate an Excel File to enter to the XI as XML file?
    (XI 3.0 version, SP21)
    Thanks
    Kfir

    Module acts as a special function that is used by an Adapter to provide the additional functionality to the Adapter.
    By using File Adapter we can only read .xml files and .txt files (using File Content Conversion). 
    If we want to read an excel sheet, it is not possible by using the normal File Adapter.
    For this purpose we are developing a module & Deploying it into the sap j2ee server and we will specify the module name in module tab of Communication channel.
    Then this module will read excel sheet and convert that into an xml format which XI can understand.
    Thanks.

  • I'm trying to import raw data from excel file to diadem, how can i do that, and also i want to know if i can put header for it or not?

    i'm using diadem version 8.1, and my operating system is windows Me.
    i'm also want to know if the diadem hae an "undo button" or not??
    Thansk.

    Hi,
    To import EXCEL files you can open the device DATA and then go to the menu FILE->OPEN. In the following dialog you must set the FILE TYPE to Excel. If you open an Excel file with that settings the Excel-file-import-wizard will be launched. With the wizard you configure the parameters which should be imported (that includes header parameter too). Please refer to the NI-Web page to get the latest service pack "SP1d" for the Excel import filter (http://digital.ni.com/softlib.nsf/webcategories/85256410006C055586256BBB002C104B?opendocument&node=132070_US)
    Yes, in DIAdem 8.1 we support undo for displacements in the device GRAPH. For DIAdem 9 we expand this functionality.
    I hope this information will help you.
    Greetings
    Walter Rick

  • Translation - XLF file with the UTF-8 BOM at the head of the file

    Using APEX 3.2, I'm trying to get translations loaded for an application that I'm working on. We are going through the process of generating XLIFF files, sending them to a translator to translate, and then importing the data back in rather than manually editing the translations.
    This works perfectly when I use my text editor to enter the (very poor) translations in the file. Our translator, however, uses a tool that adds a byte-order mask BOM at the head of the XLIFF file when it saves it in order to identify it as a UTF-8 encoded file. This appears to be a valid way for the tool to indicate the encoding being used though, obviously, the encoding in the header overrides it and the BOM is not the preferred method of specifying the encoding of an XML file. However, when we import the file in APEX, and hit the Apply XLIFF button, we get an error
    ORA-31011: XML parsing failed ORA-19202: Error occurred in XML processing LPX-00210: expected '<' instead of '¿' Error at line 1
    The third byte of the UTF-8 BOM (0xEF,0xBB,0xBF), if interpreted as an ISO-8859-1, would be the upside down question mark character in the error message. So it appears that the APEX importer is interpreting the BOM using the ISO-8859-1 character set and throwing an error that the file is not valid. That is not my reading of the proper XML parser behavior.
    Obviously, we can work around the problem either by asking our translator to use a different tool or by opening up the files we get back in a hex editor and removing the BOM. Is there anything we can do to resolve the issue that doesn't involve adding an additional manual step to the process or the translator changing the tool being used? Or is there something I'm missing that would indicate that a file with the BOM in the first three bytes should not be considered a valid XML file?
    Justin

    Hello Justine,
    >> Are you stating that that APEX translation engine more or less requires the database character set to be AL32UTF8 in order to work properly …
    Not exactly.
    The APEX translation engine uses the XML DB parser, and this one needs a legal XML file. The problem is that in your specific case, the encoding of the XLIFF file doesn’t match the database character set, hence a character set conversion process is involved in the middle. This conversion process – from UTF-8 to WE8MSWIN1252 embeds illegal XML characters in your stored XML file, right where the BOM is. If, for example, your XLIFF file were encoded in Windows-1252, no character conversion would be necessary and the final (database stored) version of the XLIFF would have been remained legal (assuming it started this way). In this case, the APEX translation mechanism will work just fine, even with a database character set of WE8MSWIN1252 (as you can see when you are using your own XLIFF files, which don’t include the (offending) BOM byte).
    >> … even if an alternate character set encodes all the characters we need?
    With your current database configuration, it seems that the alternate character set you are talking about can’t really encode all the characters that you need, as it can’t cope with the UTF-8 BOM conversion. It very well may be the only character it can’t handle, but that is enough.
    As we need to be practical, and a database character set conversion is most likely out of the question, the simple solution is probably asking your translator to save your XLIFF files without including the BOM. I’m not familiar with the professional XLIFF editors you mentioned, however, as UTF-8 encoding doesn’t really need a BOM, saving a UTF-8 file without it should be an option (just like Keith mentioned with regards to very simple editors like the windows’ Notepad, or Notepad++).
    Regards,
    Arie.
    &diams; Please remember to mark appropriate posts as correct/helpful. For the long run, it will benefit us all.
    &diams; Author of Oracle Application Express 3.2 – The Essentials and More

  • Excel file header

    hi all,
    I need to convert internal table to excel file. I am using GUI-upload for that.
    i used FILEDNAMES import parameter (undertables) to give file header but thats displays only single lineof header.
    And i need to have a file header of 3 rows. please help me how can i get that.

    hi,
    1.
    Try using the FM " SAP_CONVERT_TO_XLS_FORMAT "
    This FM directly downloads the Internal Table data into the Excel File.
    Sample Report
    REPORT Z_R_TEST_FILE.
    tables: vbak.
    parameters: p_vkorg like vbak-vkorg,
    p_file like rlgrap-filename default 'My Documents\TEST_SALE.xls'.
    data: begin of itab occurs 0,
    vbeln like vbak-vbeln,
    vkorg like vbak-vkorg,
    end of itab.
    start-of-selection.
    select vbeln vkorg from vbak into table itab
    where vkorg = p_vkorg.
    CALL FUNCTION 'SAP_CONVERT_TO_XLS_FORMAT'
    EXPORTING
    I_FIELD_SEPERATOR =
    I_LINE_HEADER =
    I_FILENAME = p_file
    I_APPL_KEEP = ' '
    TABLES
    I_TAB_SAP_DATA = itab
    CHANGING
    I_TAB_CONVERTED_DATA =
    EXCEPTIONS
    CONVERSION_FAILED = 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.
    write:/ 'Error while downloading'.
    else.
    write:/ 'Successful '.
    ENDIF.
    For headings to appear in the Excel file, APPEND the fieldname to the first line of the Internal Table and pass the table to the FM.
    2. TYPES:
      BEGIN OF type_final,
        string(50) TYPE c,                 " String Value for Title
      END OF type_final.
    data:
    wa_final     TYPE type_final.     " Work Area to hold Title Data
    Internal table to hold Title Data                                   *
    DATA:
      i_final    TYPE STANDARD TABLE OF type_final.
    FORM f400_dwnloadplantdata USING p_filepath TYPE any
                                 p_table TYPE STANDARD TABLE.
      DATA:
          lw_file2 TYPE string .           " File Path
      lw_file2 = p_filepath.
    *&      Form  header
    This Subroutine gets data for displaying title                     *
    There are no interface parameters to be passed to this subroutine. *
    FORM header .
      wa_final-string = text-021.
      APPEND wa_final TO i_final.
      wa_final-string = text-022.
      APPEND wa_final TO i_final.
      wa_final-string = text-023.
      APPEND wa_final TO i_final.
      wa_final-string = text-024.
      APPEND wa_final TO i_final.
      wa_final-string = text-025.
      APPEND wa_final TO i_final.
      wa_final-string = text-026.
      APPEND wa_final TO i_final.
      wa_final-string = 'Sr.No'.
      APPEND wa_final TO i_final.
    ENDFORM.                               " header
      CALL FUNCTION 'GUI_DOWNLOAD'
         EXPORTING
      BIN_FILESIZE                    = BIN_FILESIZE
           filename                        = lw_file2
           filetype                        = 'DBF'
      APPEND                          = ' '
        write_field_separator           = con_tab
      HEADER                          = '00'
      TRUNC_TRAILING_BLANKS           = 'X'
      WRITE_LF                        = 'X'
       COL_SELECT                      = 'X'
       COL_SELECT_MASK                 = w_col_sel
      DAT_MODE                        = ' '
      CONFIRM_OVERWRITE               = ' '
      NO_AUTH_CHECK                   = ' '
      CODEPAGE                        = ' '
      IGNORE_CERR                     = ABAP_TRUE
      REPLACEMENT                     = '#'
      WRITE_BOM                       = ' '
      TRUNC_TRAILING_BLANKS_EOL       = 'X'
      WK1_N_FORMAT                    = '0'
      WK1_N_SIZE                      = ' '
      WK1_T_FORMAT                    = ' '
      WK1_T_SIZE                      = ' '
    IMPORTING
      FILELENGTH                      = FILELENGTH
         TABLES
           data_tab                        = i_output3
           fieldnames                      = i_final
         EXCEPTIONS
           file_write_error                = 1
           no_batch                        = 2
           gui_refuse_filetransfer         = 3
           invalid_type                    = 4
           no_authority                    = 5
           unknown_error                   = 6
           header_not_allowed              = 7
           separator_not_allowed           = 8
           filesize_not_allowed            = 9
           header_too_long                 = 10
           dp_error_create                 = 11
           dp_error_send                   = 12
           dp_error_write                  = 13
           unknown_dp_error                = 14
           access_denied                   = 15
           dp_out_of_memory                = 16
           disk_full                       = 17
           dp_timeout                      = 18
           file_not_found                  = 19
           dataprovider_exception          = 20
           control_flush_error             = 21
      IF sy-subrc  0.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ENDIF.                               " IF sy-subrc EQ 0
    ENDFORM.                               " f400_dwnloadplantdata
    see i_final is a header table...where i have given header in text elements.& have passes in FM gui...
    3.
    DATA : BEGIN OF it_join_fields OCCURS 0,
    field_name(20),
    END OF it_join_fields.
    CLEAR it_join_fields.
    it_join_fields-field_name = 'pernr'.
    APPEND it_join_fields.
    CLEAR it_join_fields.
    it_join_fields-field_name = 'empname'.
    APPEND it_join_fields.
    CLEAR it_join_fields.
    it_join_fields-field_name = 'new_joinee'.
    APPEND it_join_fields.
    CLEAR it_join_fields.
    it_join_fields-field_name = 'begda'.
    APPEND it_join_fields.
    CLEAR it_join_fields.
    it_join_fields-field_name = 'fath_name'.
    APPEND it_join_fields.
    CLEAR it_join_fields.
    CALL FUNCTION 'GUI_DOWNLOAD'
    EXPORTING
    BIN_FILESIZE =
    filename = file_name
    filetype = 'ASC'
    append = 'X'
    write_field_separator = 'X'
    HEADER = '00'
    TRUNC_TRAILING_BLANKS = ' '
    WRITE_LF = 'X'
    COL_SELECT = ' '
    COL_SELECT_MASK = ' '
    DAT_MODE = ' '
    CONFIRM_OVERWRITE = ' '
    NO_AUTH_CHECK = ' '
    CODEPAGE = ' '
    IGNORE_CERR = ABAP_TRUE
    REPLACEMENT = '#'
    WRITE_BOM = ' '
    TRUNC_TRAILING_BLANKS_EOL = 'X'
    WK1_N_FORMAT = ' '
    WK1_N_SIZE = ' '
    WK1_T_FORMAT = ' '
    WK1_T_SIZE = ' '
    WRITE_LF_AFTER_LAST_LINE = ABAP_TRUE
    SHOW_TRANSFER_STATUS = ABAP_TRUE
    IMPORTING
    FILELENGTH =
    TABLES
    data_tab = it_join_det_new
    fieldnames = it_join_fields
    EXCEPTIONS
    FILE_WRITE_ERROR = 1
    NO_BATCH = 2
    GUI_REFUSE_FILETRANSFER = 3
    INVALID_TYPE = 4
    NO_AUTHORITY = 5
    UNKNOWN_ERROR = 6
    HEADER_NOT_ALLOWED = 7
    SEPARATOR_NOT_ALLOWED
    FILESIZE_NOT_ALLOWED = 9
    HEADER_TOO_LONG = 10
    DP_ERROR_CREATE = 11
    DP_ERROR_SEND = 12
    DP_ERROR_WRITE = 13
    UNKNOWN_DP_ERROR = 14
    ACCESS_DENIED = 15
    DP_OUT_OF_MEMORY = 16
    DISK_FULL = 17
    DP_TIMEOUT = 18
    FILE_NOT_FOUND = 19
    DATAPROVIDER_EXCEPTION = 20
    CONTROL_FLUSH_ERROR = 21
    OTHERS = 22
    IF sy-subrc 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    it_join_det_new is ur internal table with data.
    4. WS_EXCEL   FM.
    Regards,
    deepthi.

  • DOWNLOAD HEADER & ITEM RECORD INTO EXCEL FILE

    I WANT TO KNOW THE LOGIC TO POPULATE HEADER DATA AND ITEM DATA INTO SAME INTERNAL TABLE AND AGAIN DOWNLOAD THE SAME TO EXCEL FILE .
    Header structure : rectyp ,hdnum ,sbank ,bankl ,accnr , paytp , crda ,iso.
    Item  structure    : rectyp ,valut ,cknum ,amount,bankl,accnr,pdate,bnktc.
    Final internal table : Combination of these 2 fields. i need to populate these and download.

    Hi,
    fill at first your ITAB with header-date and append it. Then append your items.
    Do not SORT after appending.
    Regards Mario

Maybe you are looking for

  • Trying to get Pivot table drop down list to affect bar chart below it

    Hi, In BI Answers I have a pivot table and a bar chart below it. At run time, I can choose a value from the drop down list for the pivot table, but the bar chart below it doesn't react to the new value chosen from the pivot table. Does anyone know a

  • Attachment interupts message in body

    When my attachment is displayed in the body it breaks up my text message. Half the message will be above the attachment and part will be below. Sometimes the attachment deletes part of my text message. Does anyone know how to correct this.

  • PI 7.0 settings to avoid IDOC conversion to XML

    Hi Experts, In order to have idoc tunneling in PI 7.0 I know I have to: --set the parameter in IE: XML_CONVERSION = 2. --add entry in the exception table IDXIDOCINB using the report IDX_SELECT_IDOCTYP_WITHOUT_IS Actually performing the 2nd step I can

  • Re: Filters in Weblogic 5.1?

    No, I seriously doubt that 5.1 will ever support Servlet 2.3 spec, so,           you will not be able to use filters. On the bright side, 6.x doesn't support           final Servlet 2.3 spec either, so, if you really want to use filters you can      

  • Automator Problem

    Hi there, I have been trying to figure this out today and yesterday and have had no luck, please help if you can! I have an excel sheet of 15,000 image file names: eg 10010001.jpg, 10010002.jpg etc I also have a folder of 42,000 images named using th