This quickstart shows you how
to create a program that translates text from English to German by using the
Cloud Translation API v2
through the SAP BTP edition of ABAP SDK for Google Cloud.
Before you begin
Before you run this quickstart, make sure that you or your administrators have
completed the following prerequisites:
Right-click the package ZLOCAL, and select
New > ABAP Package.
Enter the following details for your package:
Name: enter ZABAPSDK_TEST.
Description: enter ABAP SDK Test Package.
Click Next.
In the Select a Transport Request dialog, select the
Create a new request checkbox.
Enter a description for the transport request.
Click Finish.
Create an ABAP class to call the Cloud Translation API:
Right-click your ABAP package and select New > ABAP Class.
Enter the following details for your ABAP class:
Name: enter ZGOOG_CL_QS_TRANSLATION.
Description: enter Quick start for Translation API.
Click Next.
Select a transport request and click Finish.
In the code editor, replace the default code with the following code snippet:
" --------------------------------------------------------------------
" 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.
" Open HTTP Connection
" The client key DEMO_TRANSLATE is an example, replace this with actual value
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.
Replace DEMO_TRANSLATE with the client key name.
Save and activate the changes.
Run your application:
Select the ABAP class ZGOOG_CL_QS_TRANSLATION.
Click Run > Run As > ABAP Application (Console).
Alternatively, press F9.
If successful, the following output displays:
'Translation Successful'
'Translated Text is: Die Erde ist der dritte Planet von der Sonne'
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-29 UTC."],[],[],null,["# Translate text\n\n\u003cbr /\u003e\n\nThis quickstart shows you how\nto create a program that translates text from English to German by using the\n[Cloud Translation API v2](/translate/docs/basic/translating-text)\nthrough the SAP BTP edition of ABAP SDK for Google Cloud.\n\nBefore you begin\n----------------\n\n\nBefore you run this quickstart, make sure that you or your administrators have\ncompleted the following prerequisites:\n\n- You have a Google Cloud account and project.\n\n- Billing is enabled for your project. [See how to confirm that billing is enabled for your project](/billing/docs/how-to/verify-billing-enabled).\n\n- The SAP BTP edition of ABAP SDK for Google Cloud is installed and configured. [See how to install and configure the SAP BTP edition of ABAP SDK for Google Cloud](/sap/docs/abap-sdk/btp/latest/install-config).\n\n- Authentication to access Google Cloud APIs is set up. [See how to set up authentication](/sap/docs/abap-sdk/btp/latest/authentication).\n\n- You have access to the [SAP BTP, ABAP environment](https://www.sap.com/india/products/technology-platform/abap.html#overview).\n\n- You have downloaded and installed the latest [ABAP Development Tools (ADT)](https://tools.hana.ondemand.com/#abap) on the latest\n Eclipse platform.\n\n- You have created an [ABAP Cloud Project](https://developers.sap.com/tutorials/abap-environment-create-abap-cloud-project.html).\n\n\u003cbr /\u003e\n\n- Make sure the Cloud Translation API is enabled in your Google Cloud project.\n\n [Go to API library](https://console.cloud.google.com/project/_/apis/library/translate.googleapis.com)\n\nCreate an ABAP class to translate text\n--------------------------------------\n\n1. Create a package:\n\n | **Note:** If you already have a package, then you can use your existing package. Skip step 1.\n 1. In ADT, go to the Project Explorer.\n 2. Right-click the package `ZLOCAL`, and select **New \\\u003e ABAP Package**.\n 3. Enter the following details for your package:\n\n - **Name** : enter `ZABAPSDK_TEST`.\n - **Description** : enter `ABAP SDK Test Package`.\n 4. Click **Next**.\n\n 5. In the **Select a Transport Request** dialog, select the\n **Create a new request** checkbox.\n\n 6. Enter a description for the transport request.\n\n 7. Click **Finish**.\n\n2. Create an ABAP class to call the Cloud Translation API:\n\n 1. Right-click your ABAP package and select **New \\\u003e ABAP Class**.\n 2. Enter the following details for your ABAP class:\n\n - **Name** : enter `ZGOOG_CL_QS_TRANSLATION`.\n - **Description** : enter `Quick start for Translation API`.\n 3. Click **Next**.\n\n 4. Select a transport request and click **Finish**.\n\n3. In the code editor, replace the default code with the following code snippet:\n\n \" --------------------------------------------------------------------\n \" Copyright 2024 Google LLC -\n \" -\n \" Licensed under the Apache License, Version 2.0 (the \"License\"); -\n \" you may not use this file except in compliance with the License. -\n \" You may obtain a copy of the License at -\n \" https://www.apache.org/licenses/LICENSE-2.0 -\n \" Unless required by applicable law or agreed to in writing, -\n \" software distributed under the License is distributed on an -\n \" \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, -\n \" either express or implied. -\n \" See the License for the specific language governing permissions -\n \" and limitations under the License. -\n \" --------------------------------------------------------------------\n class ZCL_QS_TRANSLATE_TEXT definition\n public\n final\n create public .\n\n public section.\n\n interfaces IF_OO_ADT_CLASSRUN .\n ENDCLASS.\n\n\n\n CLASS ZCL_QS_TRANSLATE_TEXT IMPLEMENTATION.\n\n\n METHOD IF_OO_ADT_CLASSRUN~MAIN.\n DATA ls_input TYPE /goog/cl_translation_v2=\u003ety_006.\n DATA lt_translations TYPE /goog/cl_translation_v2=\u003ety_translations.\n DATA ls_texts TYPE /goog/cl_translation_v2=\u003ety_008.\n DATA lo_translate TYPE REF TO /goog/cl_translation_v2.\n\n TRY.\n \" Open HTTP Connection\n \" The client key \u003cvar translate=\"no\"\u003eDEMO_TRANSLATE\u003c/var\u003e is an example, replace this with actual value\n lo_translate = NEW #( iv_key_name = '\u003cvar translate=\"no\"\u003eDEMO_TRANSLATE\u003c/var\u003e' ).\n\n \" Pass the text to be translated to the required parameter\n ls_input = VALUE #( format = 'text'\n source = 'en'\n target = 'de'\n q = VALUE #( ( |The Earth is the third planet from the Sun| ) ) ).\n\n \" Call the API method to translate text\n lo_translate-\u003etranslate_translations( EXPORTING is_input = ls_input\n IMPORTING es_output = DATA(ls_output)\n ev_ret_code = DATA(lv_ret_code)\n ev_err_text = DATA(lv_err_text)\n es_err_resp = DATA(ls_err_resp) ).\n IF lo_translate-\u003eis_success( lv_ret_code ) = abap_true.\n lt_translations = ls_output-data.\n TRY.\n ls_texts = lt_translations-translations[ 1 ].\n out-\u003ewrite( |Translation Successful| ).\n out-\u003ewrite( |Translated Text is: { ls_texts-translated_text }| ).\n CATCH cx_sy_itab_line_not_found.\n out-\u003ewrite( |Translation not fetched| ).\n ENDTRY.\n ENDIF.\n\n \" Close HTTP connection\n lo_translate-\u003eclose( ).\n\n CATCH /goog/cx_sdk INTO DATA(lo_exception).\n \" Handle exception here\n ENDTRY.\n ENDMETHOD.\n ENDCLASS.\n\n Replace \u003cvar translate=\"no\"\u003eDEMO_TRANSLATE\u003c/var\u003e with the client key name.\n4. Save and activate the changes.\n\n5. Run your application:\n\n 1. Select the ABAP class `ZGOOG_CL_QS_TRANSLATION`.\n 2. Click **Run \\\u003e Run As \\\u003e ABAP Application (Console)** . Alternatively, press `F9`. If successful, the following output displays: \n\n ```\n 'Translation Successful'\n 'Translated Text is: Die Erde ist der dritte Planet von der Sonne'\n ```\n\nWhat's next\n-----------\n\n\n- Read the guide [Application development with the SAP BTP edition of ABAP SDK for Google Cloud](/sap/docs/abap-sdk/btp/latest/developer).\n- View the [code samples](/sap/docs/abap-sdk/samples/all-samples#sap-btp-edition).\n- Ask your questions and discuss ABAP SDK for Google Cloud with the community on [Cloud Forums](https://discuss.google.dev/tags/c/google-cloud/14/abap-sdk).\n\n\u003cbr /\u003e"]]