Validate addresses

This quickstart shows you how to create a program that validates business addresses stored in SAP database by using the Address Validation API, 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:

  • Make sure the Address Validation API is enabled in your Google Cloud project.

    Go to API library

Create an ABAP class to validate addresses

  1. Create a package:

    1. In ADT, go to the Project Explorer.
    2. Right-click the package ZLOCAL, and select New > ABAP Package.
    3. Enter the following details for your package:

      • Name: enter ZABAPSDK_TEST.
      • Description: enter ABAP SDK Test Package.
    4. Click Next.

    5. In the Select a Transport Request dialog, select the Create a new request checkbox.

    6. Enter a description for the transport request.

    7. Click Finish.

  2. Create an ABAP class to call the Address Validation API:

    1. Right-click your ABAP package and select New > ABAP Class.
    2. Enter the following details for your ABAP class:

      • Name: enter ZGOOG_CL_QS_ADDRESS_VALIDATION.
      • Description: enter Quick start for Address Validation API.
    3. Click Next.

    4. Select a transport request and click Finish.

  3. In the code editor, replace the default code with the following code snippet:

     CLASS zcl_qs_validate_address DEFINITION
     PUBLIC FINAL
     CREATE PUBLIC.
    
     PUBLIC SECTION.
       INTERFACES if_oo_adt_classrun.
     ENDCLASS.
    
     CLASS zcl_qs_validate_address IMPLEMENTATION.
      METHOD if_oo_adt_classrun~main.
    
       DATA ls_input             TYPE /goog/cl_addrvaldn_v1=>ty_012.
       DATA lo_address_validator TYPE REF TO /goog/cl_addrvaldn_v1.
    
       TRY.
           " Open HTTP connection
           lo_address_validator = NEW #( iv_key_name = 'DEMO_ADDR_VAL' ).
    
           " Pass the address to be validated
           ls_input-address-region_code = 'US'.
           ls_input-address-locality    = 'Mountain View'.
           APPEND '1600, Amphitheatre, Parkway' TO ls_input-address-address_lines.
    
           " Call the API Method to validate address
           lo_address_validator->validate_address( 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_address_validator->is_success( lv_ret_code ) = abap_true
              AND ls_output-result-verdict-address_complete       = abap_true.
             out->write( 'Address is complete' ).
           ENDIF.
    
         CATCH /goog/cx_sdk INTO DATA(lo_exception).
           " Handle exception here
       ENDTRY.
      ENDMETHOD.
     ENDCLASS.
    

    Replace DEMO_ADDR_VAL with the client key name.

  4. Save and activate the changes.

  5. Run your application:

    1. Select the ABAP class ZGOOG_CL_QS_ADDRESS_VALIDATION.
    2. Click Run > Run As > ABAP Application (Console). Alternatively, press F9. If successful, the following output displays:
      'Address is complete'
      

What's next