テキストを翻訳する

このクイックスタートでは、Cloud Translation API v2 を使用して、英語からドイツ語にテキストを翻訳するプログラムの作成方法について説明します。

始める前に

このクイックスタートを実行する前に、自身または管理者によって次の事前準備が完了していることを確認してください。

テキストを翻訳するプログラムを作成する

  1. SAP システムで、トランザクション SE38 を使用して、カスタム名前空間(Z や Y など)に実行可能プログラムを作成します。

    1. SAP GUI で、トランザクション コード SE38 を入力します。

    2. [プログラム] フィールドに、プログラムの名前を入力します(例: ZDEMO_TRANSLATE)。

    3. [登録] をクリックします。

    4. プログラムの属性を指定します。

      1. [表題] フィールドに、プログラムのタイトル(例: Translate from English to German)を入力します。

      2. [タイプ] フィールドで Executable Program を選択します。

      3. [保存] をクリックします。

    5. プログラムをローカル オブジェクトとして保存します。

    6. ABAP エディタで、次のコードを追加します。

      **********************************************************************
      *  Copyright 2023 Google LLC                                         *
      *                                                                    *
      *  Licensed under the Apache License, Version 2.0 (the "License");   *
      *  you may not use this file except in compliance with the License.  *
      *  You may obtain a copy of the License at                           *
      *      https://www.apache.org/licenses/LICENSE-2.0                   *
      *  Unless required by applicable law or agreed to in writing,        *
      *  software distributed under the License is distributed on an       *
      *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,      *
      *  either express or implied.                                        *
      *  See the License for the specific language governing permissions   *
      *  and limitations under the License.                                *
      **********************************************************************
      
      REPORT zr_qs_translate_texts.
      
      * data declarations
            data: lv_text         type string,
                  lv_msg          type string,
                  lv_ret_code     type i,
                  lv_err_text     type string,
                  ls_err_resp     type /goog/err_resp,
                  ls_input        type /goog/cl_translation_v2=>ty_006,
                  ls_output       type /goog/cl_translation_v2=>ty_007,
                  lt_translations type /goog/cl_translation_v2=>ty_translations,
                  ls_texts        type /goog/cl_translation_v2=>ty_008,
                  lo_translate    type ref to /goog/cl_translation_v2,
                  lo_exception    type ref to /goog/cx_sdk.
      
      TRY.
      * instantiate api client stub
                create object lo_translate
                  exporting
                    iv_key_name = 'DEMO_TRANSLATE'.
      
      * pass the text to be translated to the required parameter
                lv_text = 'The Earth is the third planet from the Sun'.
          APPEND lv_text TO ls_input-q.
      
          ls_input-format = 'text'.
          ls_input-source = 'en'.
          ls_input-target = 'de'.
      
      * call the api method to translate text
                call method lo_translate->translate_translations
                  exporting
                    is_input    = ls_input
                  importing
                    es_output   = ls_output
                    ev_ret_code = lv_ret_code
                    ev_err_text = lv_err_text
                    es_err_resp = ls_err_resp.
          IF lo_translate->is_success( lv_ret_code ) = abap_true.
            lt_translations = ls_output-data.
            READ TABLE lt_translations-translations INTO ls_texts INDEX 1.
            WRITE: / 'Translation Successful'.
            WRITE: / 'Translated Text is: ', ls_texts-translated_text.
          ENDIF.
      
      * close the http connection
                lo_translate->close( ).
      
        CATCH /goog/cx_sdk INTO lo_exception.
      * write code here to handle exceptions
                endtry.
      

      DEMO_TRANSLATE はクライアント キー名に置き換えます。

  2. SE38 でアプリを実行します。成功すると、次の出力が表示されます。

    'Translation Successful'
    'Translated Text is: Die Erde ist der dritte Planet von der Sonne'
    

次のステップ