翻译文本

本快速入门介绍了如何使用 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'
    

后续步骤