Compute Engine VM पर होस्ट किए गए SAP के टोकन का इस्तेमाल करके, ABAP SDK टूल की पुष्टि करने की सुविधा को कॉन्फ़िगर करें. साथ ही, पते की पुष्टि करने वाले एपीआई को एक्ज़ीक्यूट करें

1. परिचय

इस कोडलैब में, जब आपका SAP सिस्टम Compute Engine VM इंस्टेंस पर होस्ट किया गया हो, तब आपको टोकन का इस्तेमाल करके Google Cloud API ऐक्सेस करने के लिए, पुष्टि करने की सुविधा सेट अप करनी होगी.

यहां इस्तेमाल की जाने वाली सेवाओं की सूची दी गई है:

  • Compute Engine
  • नेटवर्क सेवाएं
  • Cloud Shell

आपको क्या बनाना होगा

आपको ये काम करने होंगे:

  • Google API से कनेक्ट करने के लिए, SAP सिस्टम पर इंस्टॉल किए गए ABAP SDK टूल को कॉन्फ़िगर करें.
  • Address Validation API को कॉल करने के लिए उदाहरण के तौर पर एक रिपोर्ट प्रोग्राम बनाएं.

2. ज़रूरी शर्तें

  • Chrome या Firefox जैसा ब्राउज़र.
  • आपके पास ऐसा Google Cloud प्रोजेक्ट होना चाहिए जिसमें बिलिंग की सुविधा चालू हो या Google Cloud Platform के लिए, 90 दिनों तक मुफ़्त में आज़माने की सुविधा वाला खाता बनाएं.
  • आपके सिस्टम में SAP GUI (Windows या Java) इंस्टॉल किया गया है. अगर आपके सिस्टम पर SAP GUI पहले से इंस्टॉल है, तो ऐप्लिकेशन सर्वर आईपी के तौर पर वीएम के बाहरी आईपी पते का इस्तेमाल करके, SAP से कनेक्ट करें. अगर आप Mac पर हैं, तो इस लिंक में उपलब्ध Java के लिए SAP GUI भी इंस्टॉल किया जा सकता है.

3. शुरू करने से पहले

6757b2fb50ddcc2d.png

  • पक्का करें कि सभी ज़रूरी एपीआई (IAM सेवा खाते के क्रेडेंशियल एपीआई और पते की पुष्टि करने वाला एपीआई) चालू हों.
  • अपने खाते की पुष्टि करने के लिए, नीचे दिए गए निर्देशों का पालन करें और डिफ़ॉल्ट प्रोजेक्ट को abap-sdk-poc पर सेट करें. उदाहरण के तौर पर, ज़ोन us-west4-b का इस्तेमाल किया गया है. अगर ज़रूरत हो, तो कृपया अपनी पसंद के मुताबिक नीचे दिए गए निर्देशों में प्रोजेक्ट और ज़ोन बदलें.
gcloud auth login
gcloud config set project abap-sdk-poc
gcloud config set compute/zone us-west4-b
PROJECT_NAME=abap-sdk-poc
REGION=us-west4
ZONE=us-west4-b

4. सेवा खाता बनाना और सेवा खाते के टोकन क्रिएटर की भूमिका सेट करना

ज़रूरी भूमिका वाला सेवा खाता बनाने के लिए, यह तरीका अपनाएं:

  1. सेवा खाता बनाने के लिए, नीचे दिया गया निर्देश चलाएं: (अगर सेवा खाता पहले से मौजूद है, तो कृपया इस चरण को छोड़ दें)
gcloud iam service-accounts create abap-sdk-dev \
    --description="ABAP SDK Dev Account" \
    --display-name="ABAP SDK Dev Account"
  1. सेवा खाता टोकन क्रिएटर की भूमिका सेट करने के लिए, नीचे दिया गया कमांड चलाएं:
gcloud projects add-iam-policy-binding $PROJECT_NAME \
    --member=serviceAccount:abap-sdk-dev@$PROJECT_NAME.iam.gserviceaccount.com \
    --role=roles/iam.serviceAccountTokenCreator

5. क्लाइंट कुंजी कॉन्फ़िगर करें

उपयोगकर्ता नाम DEVELOPER और पासवर्ड Htods70334 के साथ SAP सिस्टम में लॉग इन करें और क्लाइंट कुंजी कॉन्फ़िगर करने के लिए यह तरीका अपनाएं:

  1. SAP GUI में, लेन-देन कोड SPRO डालें.
  2. SAP रेफ़रंस IM पर क्लिक करें.
  3. Google Cloud के लिए ABAP SDK टूल > बुनियादी सेटिंग > क्लाइंट कुंजी कॉन्फ़िगर करें.
  4. नई एंट्री पर क्लिक करें.
  5. इन फ़ील्ड के लिए वैल्यू डालें:

फ़ील्ड

ब्यौरा

Google क्लाउड कुंजी का नाम

ABAP_SDK_DEMO

Google Cloud सेवा खाते का नाम

abap-sdk-dev@abap-sdk-poc.iam.gserviceaccount.com

Google Cloud का दायरा

https://www.googleapis.com/auth/cloud-platform

Google Cloud प्रोजेक्ट आइडेंटिफ़ायर

abap-sdk-poc

अनुमति देने की कैटगरी

/GOOGLE/CL_AUTH_GOOGLE

अन्य फ़ील्ड को खाली छोड़ना

c72e71da6fd75b29.png

6. RFC गंतव्य बनाएं

IAM क्रेडेंशियल और पते की पुष्टि करने वाले एपीआई के लिए, आरएफ़सी डेस्टिनेशन बनाएं.

आरएफ़सी डेस्टिनेशन का नाम

टारगेट होस्ट (एपीआई एंडपॉइंट)

नोट

ZGOOG_IAMCREDENTIALS

होस्ट: iamCredentials.googleapis.comपाथ: प्रीफ़िक्स: /v1/पोर्ट: 443एसएसएल: चालू है

यह आरएफ़सी डेस्टिनेशन, IAM एपीआई को टारगेट करता है.

ZGOOG_ADDRESSVALIDATION_V1

होस्ट: addressvalidation.googleapis.comपोर्ट: 443एसएसएल: ऐक्टिव

यह आरएफ़सी डेस्टिनेशन, पते की पुष्टि करने वाले एपीआई को टारगेट करता है

  • तकनीकी सेटिंग टैब में, ZGOOGLE_IAMCREDENTIALS के डेस्टिनेशन के लिए, यहां दी गई जानकारी डालें.

e670c6a91acba40f.png

  • तकनीकी सेटिंग टैब के अंतर्गत, ZGOOGLE_ADDRESSठीकATION_V1 गंतव्य के लिए नीचे दी गई जानकारी डालें.

fcf92530ece612ea.png

  • पक्का करें कि एसएसएल सर्टिफ़िकेट फ़ील्ड में, दोनों आरएफ़सी डेस्टिनेशन के लिए, डिफ़ॉल्ट एसएसएल क्लाइंट (स्टैंडर्ड) विकल्प चुना गया हो.

b6370d12bd332318.png

7. सेवा मैपिंग कॉन्फ़िगर करें

अगर आपको IAM API और पते की पुष्टि करने वाले एपीआई के लिए सर्विस मैपिंग टेबल को कॉन्फ़िगर करना है, तो यह तरीका अपनाएं:

  1. SAP GUI में, लेन-देन कोड SPRO डालें.
  2. SAP रेफ़रंस FCM पर क्लिक करें.
  3. Google Cloud के लिए ABAP SDK टूल > बुनियादी सेटिंग > सेवा मैपिंग कॉन्फ़िगर करें.
  4. आरएफ़सी डेस्टिनेशन से लिंक किए गए IAM क्रेडेंशियल और पते की पुष्टि करने वाले एपीआई के लिए, नई एंट्री पर क्लिक करें.

e227316b0f249823.png

8. कॉन्फ़िगरेशन की पुष्टि करें

पुष्टि करने के कॉन्फ़िगरेशन की पुष्टि करने के लिए, यह तरीका अपनाएं:

  1. SAP GUI में, लेन-देन कोड SPRO डालें.
  2. SAP रेफ़रंस IM पर क्लिक करें.
  3. Google Cloud के लिए ABAP SDK टूल > सुविधाएं > पुष्टि करने के कॉन्फ़िगरेशन की पुष्टि करें.
  4. क्लाइंट कुंजी का नाम ABAP_SDK_DEMO के तौर पर डालें.
  5. पूरा फ़्लो कॉन्फ़िगर हो गया है या नहीं, यह देखने के लिए लागू करें पर क्लिक करें.
  6. नतीजे के कॉलम में हरे रंग का सही का निशान दिखने का मतलब है कि कॉन्फ़िगरेशन के सभी चरण पूरे हो गए हैं.

d7285e64e22c25b6.png

9. पते की पुष्टि करने वाली सेवा को कॉल करने के लिए, रिपोर्ट प्रोग्राम बनाएं

  1. अपने SAP सिस्टम में लॉग इन करें.
  2. ट्रांज़ैक्शन कोड SE38 पर जाएं और ZDEMO_ADDRESS_ENDATION नाम का एक रिपोर्ट प्रोग्राम बनाएं.
  3. स्क्रीन पर खुलने वाले पॉप-अप में नीचे बताई गई जानकारी डालें. इसके बाद, सेव करें पर क्लिक करें.

d8aac0f9e0bc5f9d.png

  1. अगले पॉप-अप में, लोकल ऑब्जेक्ट चुनें या ज़रूरत के हिसाब से पैकेज का नाम डालें.
  2. एबीएपी एडिटर में, यह कोड जोड़ें:
" data declarations
DATA lv_ret_code          TYPE i.
DATA lv_err_text          TYPE string.
DATA ls_input             TYPE /goog/cl_addrvaldn_v1=>ty_012.
DATA ls_output            TYPE /goog/cl_addrvaldn_v1=>ty_013.
DATA ls_err_resp          TYPE /goog/err_resp.
DATA lo_exception         TYPE REF TO /goog/cx_sdk.
DATA lo_address_validator TYPE REF TO /goog/cl_addrvaldn_v1.

" instantiate api client stub
TRY.
    lo_address_validator = NEW #( iv_key_name = 'ABAP_SDK_DEV' ).

    " Pass the address to be validated and corrected.
    " Mountain misspelled as  Moutain
    " Amphitheatre misspelled as Amphithetre
    ls_input-address-region_code = 'US'.
    ls_input-address-locality    = 'Moutain View'.
    APPEND '1600, Amphithetre, 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   = ls_output
                                                      ev_ret_code = lv_ret_code
                                                      ev_err_text = lv_err_text
                                                      es_err_resp = ls_err_resp ).
    IF     lo_address_validator->is_success( lv_ret_code ) = abap_true
       AND ls_output-result-verdict-address_complete       = abap_true.
      cl_demo_output=>new(
        )->begin_section( `Original Address`
        )->write_data( ls_input-address-region_code
        )->write_data( ls_input-address-locality
        )->write_data( ls_input-address-address_lines
        )->next_section( `Validated & Corrected Address`
        )->begin_section( `Elementary Object`
        )->write_data( ls_output-result-address-formatted_address
        )->display( ).
    ENDIF.

  CATCH /goog/cx_sdk INTO lo_exception.
    " write code here to handle exceptions
    cl_demo_output=>display( lo_exception->get_text( ) ).
ENDTRY.
  1. रिपोर्ट को सेव करें और उसे चालू करें.
  2. रिपोर्ट चलाएं (F8).

प्लान लागू करने के बाद, आपको रिपोर्ट का आउटपुट इस तरह से दिखेगा:

8b0aed97320f4ef.png

10. बधाई हो

बधाई हो! आपने पते की पुष्टि करने वाली सेवा को कॉल करने के लिए, एबीएपी SDK टूल को कॉन्फ़िगर कर लिया है.

अब अन्य ABAP SDK कोड लैब का इस्तेमाल करके, Google Cloud की अलग-अलग सेवाओं को ऐक्सेस करने के लिए ABAP SDK टूल का इस्तेमाल करना जारी रखा जा सकता है.

11. व्यवस्थित करें

अगर आपको Google Cloud के लिए, ABAP SDK टूल से जुड़े अतिरिक्त कोडलैब का इस्तेमाल नहीं करना है, तो कृपया क्लीनअप की प्रोसेस पूरी करें.

प्रोजेक्ट मिटाएं

  • Google Cloud प्रोजेक्ट मिटाने के लिए:
gcloud projects delete abap-sdk-poc

अलग-अलग संसाधनों को मिटाना

  1. img > में जाकर क्लाइंट कुंजी कॉन्फ़िगरेशन प्रविष्टियां हटाएं Google क्लाउड > बुनियादी सेटिंग > क्लाइंट कुंजी कॉन्फ़िगर करें.
  2. IM > ] में जाकर सेवा मैपिंग कॉन्फ़िगरेशन प्रविष्टियाँ हटाएं Google क्लाउड > बुनियादी सेटिंग > क्लाइंट कुंजी कॉन्फ़िगर करें.
  3. आरएफ़सी डेस्टिनेशन ZGOOG_IAMCREDENTIALS और ZGOOG_IAMCREDENTIALS मिटाएं.
  4. सेवा खाता मिटाने के लिए:
gcloud iam service-accounts delete \
    abap-sdk-dev@abap-sdk-poc.iam.gserviceaccount.com