機械翻訳について

品目ルール・サービスおよびREST関数

これらの関数を使用して、webサービスおよびREST APIにアクセスできます。

InvokeRestGet

構文:

InvokeRestGet(
rest_service_name, 
map_of_query_parameters, 
return_value_expression, 
http_header_map)

この関数は、RESTサービスで使用します。

rest_service_nameとして登録されたRESTサービスをコールし、map_of_query_parametersをGETアクションに渡して値を返します。 戻り値は、アサイメントと検証の両方に使用できます。

RESTサービスがアプリケーション・コンポーザでURLにトークンなしで登録されている場合は、InvokeRestGet()を使用します。

引数:

  • rest_service_name - アプリケーション・コンポーザでRESTサービスを登録するときに使用する名前。

  • map_of_query_parameters - GET操作に渡される名前と値のペアを含むマップ。 この引数のペアを作成するには、ToMap()関数を使用する必要があります。 たとえば、https://api.vision.com/products?id=CN97774などのサービス・パラメータを渡すには、ToMap("id","CN97774")を指定します。

  • return_value_expression - InvokeRestGet関数の値として返されるRESTレスポンスからのフィールドへのパス。 この値にはスペースとセミコロンは使用できません。

  • http_header_map - (オプション)リクエストに使用するHTTPヘッダーの名前と値のペアを含むマップ。

例(HTTPヘッダーなし):

次の例では、問合せパラメータq=ItemNumber=Vision_root_01をwebサービスitem_restのGETアクションに渡し、最初の品目のItemDescription属性に値を返します:

InvokeRestGet("item_rest", ToMap("q", "ItemNumber=Vision_root_01"), "items[0].ItemDescription")

例(HTTPヘッダー付き):

次の例では、同じサービス・コールを実行しますが、言語コードKOを指定します:

InvokeRestGet("item_rest", ToMap("q", "ItemNumber=Vision_root_01"), "items[0].ItemDescription", ToMap("Accept-Language", "KO"))

Oracle RESTサービスでサポートされるqパラメータには、特定の文字および語句に対する特定のエスケープおよび書式設定が必要です。 この詳細は、Oracle Cloud REST APIを使用したビジネス・オブジェクトへのアクセス・ガイドのGETメソッド・エンドポイントに関するトピックを参照してください。 この要件は、InvokeRestGet()をコールするときにqパラメータの値を作成するときに注意する必要があります。 Replace()関数を使用すると、属性値内の""に置換するなど、文字エスケープを実行できます。

ToMap

ノート: この関数を単独で使用することはサポートされていません。 これは、InvokeRestGet()updateCustomObjectValues()などの関数のスコープ内で使用されます。

構文:

ToMap(key_1, value_1, key_2, value_2, ..., key_n, value_n)

別の関数のスコープ内で、関数に引数として渡すことができる一連の名前と値のペアを作成します。 各ペアは、キーと値で構成されます。

例:

この名前と値のペアのセットの場合:

ObjectName=Item
Principal=Person
Name=wilson.smith
OrganizationCode=V1
ItemClass=Root Item Class

次の例では、単一の引数として渡すことができるペアのマップを作成します:

ToMap("ObjectName", "Item", "Principal", "Person", "Name", "wilson.smith", "OrganizationCode", "V1", "ItemClass", "Root Item Class")

InvokeRestGetWithTokens

構文:

InvokeRestGetWithTokens(
rest_service_name, 
token_value1, token_value2, ... , token_value_n, 
return_value_expression)

この関数は、RESTサービスで使用します。

rest_service_nameとして登録されたRESTサービスをコールし、token_value1およびRESTサービスURLのトークンに渡される他のすべての値をGETアクションに渡し、return_value_expressionで識別されるフィールドに値を戻します。

RESTサービスがアプリケーション・コンポーザでURLのトークンを使用して登録されている場合は、InvokeRestGetWithTokens()を使用します。

引数:

  • rest_service_name - アプリケーション・コンポーザでRESTサービスを登録するときに使用する名前。

  • token_value1, ... , token_value_n - RESTサービスURLのトークンに渡される値。 トークン値は、URLで発生する順序と同じ順序で渡す必要があります

  • return_value_expression - InvokeRestGet関数の値として返されるRESTレスポンスからのフィールドへのパス。 この値にはスペースとセミコロンは使用できません。

例:

次の例では、値wilson.smithRoot Item ClassおよびV1をwebサービスdata_security_rest_paramsのトークンに渡し、最初の品目のGrantId属性に値を返します:

InvokeRestGetWithTokens("data_security_rest_params", "wilson.smith", "Root Item Class", "V1", "items[0].GrantId")

InvokeWebService

構文:

InvokeWebService("service_name", "function_name", input_argument1, input_argument2,...)

この関数は、SOAPサービスで使用します。

SOAP webサービスとそのカスタム関数の名前は、空白文字を含めることができない引用符付き文字列として渡されます。 品目ルールは単純タイプ・パラメータのみをサポートし、この関数に渡される複合タイプ・パラメータはサポートしません。

webサービスを介して呼び出されるカスタム関数によって生成された値を返します。 この関数では複数の値が受け入れられないため、webサービス関数は単一の値を返す必要があります。

例:

InvokeWebService("ValidateSLN_Digit", "execute", [Item].[Tag AG].[SL No])

InvokeWebService()を使用するルール式が実行時に実行されると、InvokeWebService()はwebサービスservice_nameをコールし、input_argument1などの入力ペイロードを関数function_nameに渡します。 function_nameから戻された値は、InvokeWebService()によってルール式に返されます。

ルール式で関数function_nameをコールする前に、webサービスservice_nameを、サービスのコールに使用される資格証明とともに登録する必要があります。

Webサービスのカスタム関数コール

カスタム関数をルール式で使用するには、まず関数を記述し、カスタム関数を含むパブリックwebサービスを作成してから、InvokeWebService()を使用してカスタム関数をコールします。