製品最新情報, 技術記事
OvercastのAPI管理のご紹介
2022年夏のリリースでは、SAP BAPIやテーブル、さらにはSAP以外のバックエンドをWebサービスとして公開する簡単な方法であるOvercast API Managementを導入しました。 これにより、Overcastを使用する組織は、あらゆるバックエンドをSalesforceに統合できるだけでなく、他のプラットフォームにも統合できる。 使用例としては、ショップやポータルなどのウェブアプリケーション、モバイルアプリケーション、その他のオンプレミスシステムとの連携が挙げられます。 Overcast API Managementは、パートナーやサードパーティに安全な方法でAPIへのアクセスを許可することもできます。 このブログでは、APIマネジメントの仕組みと簡単な設定方法をご紹介します。
Overcastの統合シナリオとコンポーネント
Overcastには統合シナリオとコンポーネントという概念があります。 どちらもAPIマネジメントを行う上で重要になります。
Overcastの統合シナリオ
インテグレーションシナリオには、どのバックエンドソースを連携したいかが記述されています。 その中には、(1)レコードタイプ(リアルタイムまたはデータ同期)、(2)接続文字列で定義されるバックエンドタイプ(BAPI、SAPテーブル、OData、SOAPなど)、(3)特定のオブジェクトまたはテーブル、が含まれます。 その上に、(4)どのオブジェクトのどの項目を連携したいか、も記述されます。 インテグレーションシナリオの一例をご覧ください。
取引先マスターデータのSAPテーブル「KNA1」を読み込むためのインテグレーションシナリオです。
Overcastコンポーネント
Overcast Componentsは、コードではなくコンフィギュレーションを使用して、Salesforceのユーザ向けに外部システムやバックエンドシステムとの統合を構築する方法です。 リアルタイムのシナリオをベースに、それに対応するデータを表示するためのユーザインターフェースを提供します。 Overcastコンポーネントは、Overcast Component Builderを使用することで、コーディングなしで構築できます。
インテグレーションシナリオをRESTウェブサービスとして公開
この例では、BAPI_SALESORDER_GETLIST を使用して、SAP Sales Orders のリストを REST Web サービスとして公開したいと思います。 Postman https://www.postman.com を使って、APIがどのように消費されるかを紹介します。
インテグレーションシナリオの作成
RESTfulなWebサービスのベースとして、まずインテグレーションシナリオを作成するか、既存のシナリオを使用する必要があります。 Overcastは、SAP、Microsoft Business Central/Dynamics、Oracle NetSuiteの最も一般的なユースケースに対して150以上の事前定義された統合を提供しているため、すでに多くの選択肢から選ぶことができる。 独自のシナリオを作成する方法についてのステップバイステップのガイドは
Overcastヘルプ
.
APIアクセスを許可するためのカスタム権限
明らかな理由により、すべてのOvercast統合シナリオが自動的に公開されるわけではありません。
に自動的に公開されるわけではありません。
API管理
. これを許可するには、カスタム権限を作成しなければなりません。 カスタム権限は、この命名規則に従う必要があります。
オーバーキャスト
したがって、この例ではOvercast_Rest_sapSalesOrderListという名前になります。 この権限は、APIを呼び出したいすべてのユーザに追加する必要があります。
sapSalesOrderListシナリオを呼び出すためのカスタム権限
認証
認証には、Salesforce OAuth 2.0プロトコルを使用しています。 詳細はこちらをご覧ください。
サービスの呼出
URL: /services/apexrest/overcast/integration/v1/
ほとんどのシナリオでは、何らかの入力パラメータが必要になります。 これらは、様々な方法でAPIに渡すことができます。
URLクエリパラメータ
パラメータは、キーと値のペアとしてURLに追加されます。 受注伝票のリストを取引先番号でフィルタリングする場合、次のようになります。
/services/apexrest/overcast/integration/vi/sapSalesOrderList?CUSTOMER_NUMBER=0000001001
URLの一部としてのパラメータ
また、パラメータを / で区切って URL に追加することもできます。 この場合、パラメータはシナリオと同じ順番で使用します。
/services/apexrest/overcast/integration/vi/sapSalesOrderList/0000001001
ボディ付きリクエスト
リクエストのボディは、より複雑な構造をサービスへ入力するために使用することができます。 1つまたは複数のレコードや構造体をJSONとして渡すことができます。 例えば、次のようにBAPIに入力し、受注明細を取得します。
{ "SALES_DOCUMENTS": [ { "VBELN": "0000020874" } ], "I_BAPI_VIEW": { "INCOMP_LOG": "", "CREDCARD": "", "CONFIGURE": "", "BILLPLAN": "", "FLOW": "", "TEXT": "", "CONTRACT": "", "SDCOND_ADD": "", "SDCOND": "", "STATUS_I": "", "STATUS_H": "", "ADDRESS": "X", "PARTNER": "X", "BUSINESS": "", "SDSCHEDULE": "", "ITEM": "X", "HEADER": "X" } }
Overcastからの回答
結果はJSON形式で返されます。
Postmanで表示されるAPI呼び出しの結果
JSONは、Amazon AWS、Microsoft Azure、Google Cloud、または独自のサービスなどのオンプレミスまたはクラウド上で動作するJ2EEや.Netなどの最新のプラットフォームで読み取り、変換することが可能です。
まとめ
オーバーキャスト
API管理
を使用すると、コードを記述する必要なく、あらゆるSAPおよび非SAPバックエンドデータソースをWebサービスに変換できます。 Overcastと弊社のREST APIが、SAPとSAP以外のデータの公開にどのように役立つかをお知りになりたい場合は、弊社までご連絡ください。
著者
Alexander Ilg