cniSqlNavigatePath

cniSqlCreateReadOnlyPathExpression または cniSqlCreateModifiablePathExpression ユーティリティー関数を使用して以前に作成された SQLPathExpression を、sqlPathExpression 引数で定義されたとおりに実行します。

構文

CciElement* cniSqlNavigatePath(
int* returnCode,
CciSqlPathExpression* sqlPathExpression,
CciMessage* inputMessageRoot,
CciMessage* inputLocalEnvironment,
CciMessage* inputExceptionList,
	CciMessage*           outputMessageRoot
CciMessage* outputLocalEnvironment,
CciMessage* outputExceptionList);

パラメーター

returnCode (出力)
NULL ポインターを入力すると、ユーザー定義ノードがエラーを処理しないことを示します。この呼び出しの実行時にスローされた例外は、フロー内の次のアップストリーム・ノードに対して再度スローされます。 入力が NULL でない場合、出力は呼び出しの成功状況を示します。 実行時に例外が発生する場合、出力時に *returnCode が CCI_EXCEPTION に設定されます。 cciGetLastExceptionData を呼び出すと、例外の詳細が提供されます。 無効な sqlPathExpression パラメーターが渡された場合、returnCode は CCI_INV_SQL_EXPR_OBJECT に設定されます。無効な CciMessage* 値が渡された場合、returnCode は CCI_INV_MESSAGE_OBJECT に設定されます。エレメントへのナビゲートまたはその作成ができなかった場合、returnCode は CCI_PATH_NOT_NAVIGABLE に設定されます。
sqlPathExpression (入力)
cniCreateReadOnlyPathExpression または cniCreateModifyablePathExpression 関数のいずれかにより戻されたら実行される、SQLPathExpression オブジェクトを指定します。 このパラメーターは NULL にはできません。
inputMessageRoot (入力)
入力メッセージを表すメッセージ。このパラメーターは NULL にはできません。
inputLocalEnvironment (入力)
入力ローカル環境を表すメッセージ。このパラメーターは NULL にはできません。
inputExceptionList (入力)
入力例外リストを表すメッセージ。このパラメーターは NULL にはできません。
outputMessageRoot (入力)
出力メッセージを表すメッセージ。このパラメーターは NULL に設定可能です。
outputLocalEnvironment (入力)
出力ローカル環境を表すメッセージ。このパラメーターは NULL に設定可能です。
outputExceptionList (入力)
出力例外リストを表すメッセージ。このパラメーターは NULL に設定可能です。

以下の表は、ESQL パス式が受け入れる相関名と、アクセスされるデータとの間のマッピングを示しています。

相関名 アクセスされるデータ
Environment フローの単一の Environment ツリー。これはブローカーにより決定され、この API を使用して指定する必要はありません。
InputLocalEnvironment cniSqlNavigatePath への inputLocalEnvironment パラメーター
OutputLocalEnvironment cniSqlNavigatePath への outputLocalEnvironment パラメーター
InputRoot cniSqlNavigatePath への inputMessageRoot パラメーター
InputBody InputRoot の最後の子
InputProperties InputRoot.Properties
注: InputRoot.Properties は InputRoot の最初の子であり、「Properties」という名前です
OutputRoot cniSqlNavigatePath への outputMessageRoot パラメーター
InputExceptionList cniSqlNavigatePath への inputExceptionList パラメーター
OutputExceptionList cniSqlNavigatePath への outputExceptionList パラメーター
Database cniCreateReadOnlyPathExpression または cniCreateModifyablePathExpression への dataSourceName により識別される ODBC データ・ソース
InputDestinationList InputLocalEnvironment の同義語
OutputDestinationList OutputLocalEnvironment の同義語

パスの実際のナビゲート性および妥当性に関する他のすべての規則は、「ESQL フィールド参照」文書に従います。

戻り値

パスのナビゲートに成功した場合、構文エレメントのアドレスが戻されます。 . しかしパスのナビゲートができない場合、ゼロの値 (CCI_NULL_ADDR) が戻され、returnCode パラメーターがエラーの理由を示します。

以前に SQLPathExpression (cniSqlCreateReadOnlyPathExpression または cniSqlCreateModifiablePathExpression の例を参照) を作成してあるなら、以下のコードを使用してターゲット・エレメントにナビゲートできます。

 CciElement* targetElement = cniSqlNavigatePath(
                           NULL,
                          ((NODE_CONTEXT_ST *)context)->pathExpression,
                           message,
                           destinationList,
                           exceptionList,
                           NULL, /*we do not reference any output trees*/
                           NULL,
                           NULL);
特記事項 | 商標 | ダウンロード | ライブラリー | サポート | フィードバック
Copyright IBM Corporation 1999, 2006 最終更新: 08/21/2006
as08033_