このライブラリ関数は、現在のトランザクションおよびリクエストにテーブル関数のどのコピーが参加するかを問わない場合に使用します。
テーブル関数のすべてのコピーがFNC_TblFirstParticipantを呼び出すので、各コピーは戻り値を検査して、処理の進め方を判別する必要があります。
戻り値 | 結果 |
---|---|
1 | テーブル関数のこのコピーが現在のトランザクションおよびリクエストに参加します。 |
0 | テーブル関数の別のコピーが現在のトランザクションおよびリクエストに参加します。 FNC_TblFirstParticipantの呼び出しから戻った時点で、テーブル関数のこのコピーは以下のステップを実行する必要があります。 FNC_TblOptOutを呼び出します。 戻ります。 |
この関数は、テーブル関数内からのみ呼び出すことができます。この関数をスカラー関数、集約関数、UDM、または外部ストアド プロシージャで呼び出すと、トランザクションで例外が発生します。
この関数は一度だけしか呼び出すことができません。
FNC_TblFirstParticipantを呼び出すテーブル関数は、FNC_TblControlを呼び出せません。
この関数の呼び出しは、テーブル関数がFNC_GetPhaseを呼び出して以下の値を取得する場合に有効です。
- 処理フェーズとしてTBL_PRE_INITの値
- TBL_MODE_CONSTの戻り値
テーブル関数の1コピーがFNC_TblFirstParticipantを呼び出す場合、テーブル関数のすべてのコピーもFNC_TblFirstParticipantを呼び出す必要があります。