GraphQL 照会タイプ
組織にインポートしたデータは、 GraphQL クエリーを使用して検査できます。 クエリーを手動で実行したり、クエリーを自動化したり、自動化されたルールを使用してクエリーを実行したりすることができます。
Supply Chain Intelligence Suite データの照会には、 GraphQL 照会命令が使用されます。 照会命令のフォーマットには、照会タイプ、括弧で囲まれた入力パラメーター、およびその後に、中括弧で囲まれた、返されるオブジェクトの出力フォーマットが含まれます。
query type (input paramters){output parameters}
照会タイプは、どのタイプのデータ (ビジネス・イベントまたはビジネス・オブジェクト) を照会するか、およびどのデータウェアハウス (イベント・ウェアハウスまたはオブジェクト・ウェアハウス) をターゲットにするかを示します。 入力パラメーターは照会対象を示し、出力形式は結果のオブジェクトを表示する方法を示します。
- イベント・ウェアハウス
- errorEvents
- エラー・イベントの詳細に基づいてエラー・イベントのリストを返します。これは、照会するエラーのタイプ (取り込みまたは処理) を指定します。
ErrorEventsCursorを返します。
- businessObjectEvents
- ビジネス・オブジェクトに影響を与えているイベントからの詳細入力に基づいて、ビジネス・オブジェクト・イベントのリストを返します。
BusinessEventsCursorを返します。
- businessRuleEvents
- ルールの実行結果のイベントからの詳細入力に基づいて、ビジネス・ルール・イベントのリストを返します。
BusinessRulesCursorを返します。
- オブジェクト・ウェアハウス
- businessObjects
- ビジネス・オブジェクト識別情報と、照会の実行に使用されるシリアライズド・ビューの名前に基づいて、ビジネス・オブジェクトのリストを返します。
BusinessObjectsCursorを返します。
以下のサンプル照会は、特定の ID によって単一のビジネス・オブジェクト・イベントを返します。{ businessObjectEvents( simpleFilter: { businessObject: { type: Order id: "372c9cdb-1077-464e-9132-b29fa25544d2" }, tenantId: "e2_aRj_3np92C2Tl9uWIyh0vQP8N8" }, cursorParams: { first: 1 # Maximum number of items to return } ) { totalCount pageInfo { endCursor hasNextPage } edges { cursor object { eventCode infoHubObjectId objectType tenantId timestampEventOccurred timestampEventReceived eventDetails { ... on BusinessObjectEventDetails { businessObject { id type } eventSource { type EDI { transactionType size } } } } } } } }
照会入力パラメーター
必須入力パラメーターは、実行される照会のタイプによって異なります。 ただし、いくつかの入力パラメーターは、照会タイプ間で共通です。
- businessObjectEvents
businessObjectEvents照会タイプは、指定された入力パラメーター値に基づいて、イベント・ウェアハウスからビジネス・イベントのリストを返します。この照会の入力パラメーターは以下のとおりです。
- eventParams
BusinessEventInputを指します。
- simpleFilter
BusinessObjectEventDetailsInputを指します。
- advancedFilter
BooleanExpを指します。
- savedFilter
SavedFilterを指します。
- cursorParams
CursorInputを指します。
BusinessObjectEventDetailsInput- このタイプは、イベントに関係するビジネス・オブジェクト操作の入力を提供し、以下の属性を含みます。
- tenantId
- イベントの生成を担当しているテナントのグローバル ID。
- businessObjectEventCode
- このイベントに関係するビジネス・オブジェクト操作のタイプ (アップサートまたはアーカイブのいずれか)。
- businessObject
BusinessObjectInputを指します。
BusinessObjectInput- このタイプは、含まれているビジネス・オブジェクト自体に対する入力を提供し、以下の属性を含みます。
- id
- ビジネス・オブジェクトのグローバル固有 ID。オブジェクトの作成時に生成されます。
- type
BusinessObjectType列挙値を指します。これは、ビジネス・オブジェクトのタイプを示します。
- globalIdentifiers
- 同じタイプの他のビジネス・オブジェクトから、同じテナント内でこのビジネス・オブジェクトを一意的に識別する必要があるオブジェクト属性の名前または値のペアの配列。 Supply Chain Intelligence
Suite は、
globalIdentifiers、テナント、およびオブジェクト・タイプの固有の組み合わせごとに固有 ID を生成します。
- localIdentifiers
- ビジネス・オブジェクト自体の中でローカル参照用にこのオブジェクトを一意的に識別する、オブジェクト属性の名前または値のペアの順序付き配列。 特定のビジネス・オブジェクトには、オーダー内のオーダー明細やサブラインなど、親オブジェクトを参照できるネストされたオブジェクトがあります。
businessRuleEventsbusinessRuleEvents照会タイプは、指定された入力パラメーター値に基づいてビジネス・ルールによって生成された、イベント・ウェアハウスからのビジネス・イベントのリストを返します。この照会の入力パラメーターは以下のとおりです。
- eventParams
BusinessEventInputを指します。
- simpleFilter
BusinessRuleEventDetailsInputを指します。
- advancedFilter
BooleanExpを指します。
- savedFilter
SavedFilterを指します。
- cursorParams
CursorInputを指します。
- aggregationParams
AggregationParamsを指します。
BusinessRuleEventDetailsInput- このタイプは、ビジネス・イベントを生成したビジネス・ルールの詳細を提供し、以下の属性を含みます。
- tenantId
- イベントの生成を担当しているテナントのグローバル ID。
- rule
- ID、名前、およびソースを使用してルールを指定できる RuleInput タイプを指します。
- dimensionValues
- クエリーを制限するディメンション値を指定する名前/値のペアの配列。 ディメンションは、基礎となるビジネス・オブジェクトの属性であり、その属性のすべての固有値によって異なるビジネス・イベントが生成されます。
AggregationParams- このタイプを使用すると、照会で返される値を集約、要約、およびソートできます。このタイプには、以下の属性が含まれます。
- dimension
- 集約が行われる基礎となるビジネス・オブジェクト属性およびデータ型。 指定された属性に対して検出された固有値ごとに、異なる集約が実行されます。
- reduce
- オプションで、照会で返されるデータに対して削減操作を実行できます。この操作は
AggregationReduceを指します。
- paginationParams
- オプションで、照会で返す値の数、結果をソートするために使用する属性、および結果を昇順または降順でソートするかどうかを指定できます。
AggregationReduce- このタイプには、どのタイプの削減操作を実行するか、およびその削減の出力をどのように表現するかについての指示が含まれ、以下の属性が含まれます。
- expression
AggregationReduceExpressionを指します。
- output
- 式出力の結果およびデータ・タイプを保持するために使用する新規属性
resultAliasを示します。
AggregationReduceExpression- このタイプは、縮約アルゴリズムを定義する数学演算を保持します。このタイプには、以下の属性が含まれます。
- operator
AggregationReduceOperatorを指し、実行される数学演算を指定します。
- fieldPath
- 操作への入力として機能するビジネス・オブジェクトまたはイベント属性。
- type
ScalarTypeを指し、fieldPath値のデータ・タイプを示します。
errorEventserrorEvents照会タイプは、指定された入力パラメーター値に基づいて、イベント・ウェアハウスからエラー・イベントのリストを返します。 エラー・イベントは、ビジネス・オブジェクトの処理中にエラーが発生すると、 Supply Chain Intelligence Suite によって生成されます。 データ処理はバックグラウンドで非同期的に行われる可能性があるため、エラーが発生したかどうかを判別する唯一の方法は、エラー・イベントを照会することです。この照会の入力パラメーターは以下のとおりです。
- eventParams
BusinessEventInputを指します。
- simpleFilter
ErrorEventDetailsInputを指します。
- advancedFilter
BooleanExpを指します。
- savedFilter
SavedFilterを指します。
- cursorParams
CursorInputを指します。
ErrorEventDetailsInput- このタイプは、エラー・イベントの性質の詳細を提供し、以下の属性を含みます。
- tenantId
- イベントの生成を担当しているテナントのグローバル ID。
- type
- エラー・イベントのタイプ。データの取り込み中にイベントが発生したか、
IngestionErrorEventDetailsまたはデータのバックグラウンド処理中にイベントが発生したか、ProcessingErrorEventDetailsを示します。
businessObjectsbusinessObjects照会タイプは、指定された入力パラメーター値に基づいて、オブジェクト・ウェアハウスからビジネス・オブジェクトのリストを返します。この照会の入力パラメーターは以下のとおりです。
- hint
Hintタイプを指します。これには、以前に保存されたマテリアライズ・ビューを指定するviewId属性が含まれます。 ビューは、照会の結果で返される内容を定義します。
- simpleFilter
BusinessObjectInputを指します。
- advancedFilter
BooleanExpを指します。
- savedFilter
SavedFilterを指します。
- cursorParams
CursorInputを指します。
共通入力パラメーター・タイプ
BooleanExp- ブール式は、結果がブール値の true または false の結果になる演算子とリンクされる一連の比較です。 比較では、明示的な値を Supply Chain Intelligence
Suite ビジネス・オブジェクトまたはビジネス・イベントの属性と比較します。 演算には、論理演算子 AND、OR、NOT、および比較演算子 (GREATER_THAN や EQUALS など) が含まれます。 論理演算子は、
BooleanExp型でもあります。これにより、BooleanExpステートメントを任意にネストすることができる再帰が可能になります。その他の参照タイプには次のものがあります- ComparisonOp
- 特定のタイプの値を、SELECT 属性によって示されるビジネス・オブジェクトまたはイベントの属性と比較します。
- ComparisonListOp
- 特定のタイプの値のリストを、SELECT 属性によって示されるビジネス・オブジェクトまたはイベントの属性と比較します。 ビジネス・オブジェクトまたはイベント属性もリストであると想定されるため、比較が true を返すためには、VALUE によって指定されるすべての項目が、SELECT によって返されるすべての項目と一致する必要があります。
- ComparisonOperandType
- 比較で使用される値データ・タイプの列挙。
- その他の一般的なタイプ
- BusinessEventInput
- すべてのタイプのビジネス・イベント照会は、イベント自体に関する属性の共通セット (イベントのタイム・スタンプ、イベントの固有 ID、イベントに関係するオブジェクトのタイプなど) をサポートします。
- SavedFilter
- 照会の結果を絞り込むためのフィルターは、フィルター・サービスを使用して事前定義でき、代わりに
filterId属性を使用して参照できます。これにより、照会では常にフィルターの詳細が表現されます。
- CursorInput
- どのビジネス・オブジェクトまたはイベントの後に、ページ編集の目的でそのオブジェクトまたはイベントのカーソル値を使用して結果を開始する必要があるかを示します。 また、照会で返す数も示します。
- AggregationReduceOperator
- ビジネス・ルール・イベント照会で結果を集約する際に、削減操作中に可能な操作の列挙。
- ScalarType
- 集約操作中に属性に関連付けられた値のデータ・タイプを参照します。
- SortOrder
- 返される結果をソートする方法と、ソートするビジネス・オブジェクトまたはイベントのソース・フィールドを指定します。
- BusinessObjectType
- Supply Chain Intelligence Suiteでサポートされるすべてのビジネス・オブジェクト・タイプをリストします。
照会出力フォーマット
照会によって返されるデータは、実行中の照会のタイプによって異なります。 同様に、照会自体に指定されている出力形式も、照会のタイプによって異なります。 4 つの照会タイプがあるため、返される可能性のある 4 つのオブジェクトと、関連する出力形式があります。
errorEvents: ErrorEventsCursorbusinessObjectEvents: BusinessEventsCursorbusinessRuleEvents: BusinessRulesCursorbusinessObjects: BusinessObjectsCursor
返される各タイプは、カーソル・インターフェースを実装します。これは、結果が索引可能かつページ編集されたオブジェクトのリストであることを意味します。
- カーソル
- Cursor インターフェースには、以下の 3 つの基本属性があります。
- edges
- Edge インターフェースを実装するオブジェクト・タイプの配列。
- pageInfo
- 現行ページのデータの詳細。これには、
edges配列内の最後のデータ・オブジェクト (endCursor) のカーソル値 (ポインター)、および次のページ (hasNextPage) があるかどうかが含まれます。
- totalCount
- 照会に一致するデータ・オブジェクトの総数。
4 つの照会結果カーソル
ErrorEventsCursor、BusinessEventsCurs、およびBusinessObjectsCursorのうち 3 つは、カーソル・インターフェース定義によく似ており、エッジ・オブジェクトに実装されているオブジェクトのみをオンに変更します。BusinessRulesCursor、 ただし、集約結果のレンディングを処理するためにカーソル実装により多くの属性を組み込むことによって異なります。注:'Supply Chain Intelligence Suiteによって実装されるビジネスオブジェクトとイベントのさまざまなタイプに応じて、Edgeタイプのオブジェクトの実装は多種多様であるため、それらのオプションについて詳しく知る最善の方法は、GraphQLIntrospection Tutorialで説明されているように、'Supply Chain Intelligence Suiteデータモデルをイントロスペクトすることです
Edge- Edge インターフェースは、照会への入力パラメーターとして指定された照会基準に一致する、カーソルが設定された (索引が付けられた) データ・オブジェクトを表します。 実際の実装は、照会によって返されるデータのタイプによって異なります。 すべての実装には、インターフェースによって定義される以下の 2 つの属性があります。
- cursor
- このエッジによって表されるビジネス・オブジェクトまたはイベントの固有索引 ID。
- object
- インターフェースを実装するビジネス・オブジェクトまたはイベントを指します。 インターフェースには、
id属性のみが含まれます。 実装は、照会によって返されるデータのタイプによって大きく異なります。
BusinessRulesCursorCursorインターフェースの 3 つの属性 (edges、pageInfo、およびtotalCount) の実装に加えて、BusinessRulesCursorは、ビジネス・ルールから集約結果をレンダリングするための以下の 2 つの属性も実装します。- aggregationResults
AggregationResultを指します。
- aggregationResultsTotalCount
- 一致したディメンションに従って返された集計結果の総数。
AggregationResult集計は、複数のディメンションに対して実行される削減計算を定義します。 ディメンションとは、基礎となるビジネス・オブジェクトの属性であり、その属性の固有値ごとに異なる集計が生成されます。 このタイプには、以下の 2 つの属性があります。
- dimensionValues
- 生成された各集計値のディメンション値をリストする名前と値のペアの配列。
- values
- 名前と値のペアの配列。名前属性は、照会の集約定義から
resultAliasを指定し、値は結果の計算 (削減) になります。 値は、縮小操作の性質に応じて、ストリング (value) タイプまたは浮動 (numValue) タイプのいずれかになります。 配列内の値の指標は、dimensionValues配列内の関連する次元の指標に対応します。