Show TOC

HintergrundCodepage im ICF Dieses Dokument in der Navigationsstruktur finden

 

Grundsätzlich muss jede Anwendung die Repräsentation der Texte, die in ihrem Response-Dokument beinhaltet sind (als Teil des Bodys) in Bezug zu einer geeigneten Codepage bringen. Im folgenden Beispiel zeigen wir, wie Sie einen Text in die UTF-8 Codepage konvertieren und als Teil einer HTML-Seite präsentieren können. Zu diesem Zweck wird das Headerfeld Content-Type auf 'text/html' und character set auf utf-8 gesetzt. Damit wird dem Partner die Repräsentation des HTML-Textes mitgeteilt.

Syntax Syntax

  1.  DATA: cvto_utf8 TYPE REF TO cl_abap_conv_out_ce.
  2.  DATA: codepage  TYPE string.
  3.  DATA: html_text TYPE string.
  4.  DATA: html_utf8 TYPE xstring
  5.  …
  6.  codepage = server->request->get_form_field( 'codepage' ).
  7.  …
  8.      IF codepage = '1'.
  9.       TRY.
  10.           CALL METHOD cl_abap_conv_out_ce=>create
  11.             EXPORTING
  12.               encoding = 'UTF-8'
  13.             RECEIVING
  14.               conv     = cvto_utf8.
  15.         CATCH cx_parameter_invalid_range .
  16.         CATCH cx_sy_codepage_converter_init .
  17.       ENDTRY.
  18.       CALL METHOD server->response->set_header_field(
  19.              name  = 'Content-Type'                         "#EC NOTEXT
  20.               value = 'text/html; charset=utf-8' ).
  21.       TRY.
  22.           CALL METHOD cvto_utf8->write
  23.             EXPORTING
  24.               data = html_text.
  25.         CATCH cx_sy_codepage_converter_init .
  26.         CATCH cx_sy_conversion_codepage .
  27.         CATCH cx_parameter_invalid_type .
  28.         CATCH cx_parameter_invalid_range .
  29.       ENDTRY.
  30. * conversion into UTF-8 unicode code page
  31.       html_utf8 = cvto_utf8->get_buffer( ).
  32. * set body as hexadecimal string
  33.       CALL METHOD server->response->set_data( data = html_utf8 ).
  34.     ELSE.
  35. *   automatic conversion of SAP_UC to utf-8 in a unicode system
  36.       CALL METHOD server->response->set_header_field(
  37.          name  = 'Content-Type' 
  38.          value = 'text/html' ).
  39.       CALL METHOD server->response->set_cdata( data = html_text ).
  40.     ENDIF.
Ende des Codes

Weitere Informationen

Allgemeine Informationen zu Codepages finden Sie unter: