Traduire du texte

Ce guide de démarrage rapide explique comment créer un programme qui traduit du texte de l'anglais vers l'allemand à l'aide de l'API Cloud Translation v2 via l'édition SAP BTP du SDK ABAP pour Google Cloud.

Avant de commencer

Avant d'exécuter ce guide de démarrage rapide, assurez-vous que vous ou vos administrateurs avez rempli les conditions préalables suivantes :

Créer une classe ABAP pour traduire du texte

  1. Créer un package :

    1. Dans ADT, accédez à l'explorateur de projets.
    2. Effectuez un clic droit sur le package ZLOCAL, puis sélectionnez Nouveau > Package ABAP.
    3. Saisissez les informations suivantes pour votre package :

      • Nom : saisissez ZABAPSDK_TEST.
      • Description : saisissez ABAP SDK Test Package.
    4. Cliquez sur Suivant.

    5. Dans la boîte de dialogue Sélectionner une requête de transport, cochez la case Créer une requête.

    6. Saisissez une description pour la requête de transport.

    7. Cliquez sur Terminer.

  2. Créez une classe ABAP pour appeler l'API Cloud Translation :

    1. Effectuez un clic droit sur votre package ABAP, puis sélectionnez Nouveau > Classe ABAP.
    2. Saisissez les informations suivantes pour votre classe ABAP :

      • Nom : saisissez ZGOOG_CL_QS_TRANSLATION.
      • Description : saisissez Quick start for Translation API.
    3. Cliquez sur Suivant.

    4. Sélectionnez une demande de transport, puis cliquez sur Terminer.

  3. Dans l'éditeur de code, remplacez le code par défaut par l'extrait de code suivant :

    " --------------------------------------------------------------------
    "  Copyright 2024 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.                                -
    " --------------------------------------------------------------------
    class ZCL_QS_TRANSLATE_TEXT definition
      public
      final
      create public .
    
    public section.
    
      interfaces IF_OO_ADT_CLASSRUN .
    ENDCLASS.
    
    
    
    CLASS ZCL_QS_TRANSLATE_TEXT IMPLEMENTATION.
    
    
      METHOD IF_OO_ADT_CLASSRUN~MAIN.
        DATA ls_input        TYPE /goog/cl_translation_v2=>ty_006.
        DATA lt_translations TYPE /goog/cl_translation_v2=>ty_translations.
        DATA ls_texts        TYPE /goog/cl_translation_v2=>ty_008.
        DATA lo_translate    TYPE REF TO /goog/cl_translation_v2.
    
        TRY.
            " Instantiate API client stub
            lo_translate = NEW #( iv_key_name = 'DEMO_TRANSLATE' ).
    
            " Pass the text to be translated to the required parameter
            ls_input = VALUE #( format = 'text'
                                source = 'en'
                                target = 'de'
                                q      = VALUE #( ( |The Earth is the third planet from the Sun| ) ) ).
    
            " Call the API method to translate text
            lo_translate->translate_translations( EXPORTING is_input    = ls_input
                                                  IMPORTING es_output   = DATA(ls_output)
                                                            ev_ret_code = DATA(lv_ret_code)
                                                            ev_err_text = DATA(lv_err_text)
                                                            es_err_resp = DATA(ls_err_resp) ).
            IF lo_translate->is_success( lv_ret_code ) = abap_true.
              lt_translations = ls_output-data.
              TRY.
                  ls_texts = lt_translations-translations[ 1 ].
                  out->write( |Translation Successful| ).
                  out->write( |Translated Text is:  { ls_texts-translated_text }| ).
                CATCH cx_sy_itab_line_not_found.
                  out->write( |Translation not fetched| ).
              ENDTRY.
            ENDIF.
    
            " Close HTTP connection
            lo_translate->close( ).
    
          CATCH /goog/cx_sdk INTO DATA(lo_exception).
            " Handle exception here
        ENDTRY.
      ENDMETHOD.
    ENDCLASS.
    

    Remplacez DEMO_TRANSLATE par le nom de la clé client.

  4. Enregistrez et activez les modifications.

  5. Exécuter votre application :

    1. Sélectionnez la classe ABAP ZGOOG_CL_QS_TRANSLATION.
    2. Cliquez sur Exécuter > Exécuter en tant que > Application ABAP (console). Vous pouvez également appuyer sur F9. Si l'opération réussit, le résultat suivant s'affiche :
      'Translation Successful'
      'Translated Text is: Die Erde ist der dritte Planet von der Sonne'
      

Étapes suivantes