BEA Logo BEA Tuxedo Release 8.0

  BEA ホーム  |  イベント  |  ソリューション  |  パートナ  |  製品  |  サービス  |  ダウンロード  |  ディベロッパ・センタ  |  WebSUPPORT

 

   Tuxedo ホーム   |   BEA Tuxedo FML リファレンス   |   先頭へ   |   前へ   |   次へ   |   目次

 


Fdelete、Fdelete32(3fml)

名前

Fdelete()Fdelete32() - バッファからフィールドのリストを削除

形式

#include <stdio.h>  
#include "fml.h"
int
Fdelete(FBFR *fbfr, FLDID *fieldid)
#include "fml32.h"
int
Fdelete32(FBFR32 *fbfr, FLDID32 *fieldid)

機能説明

Fdelete() は、フィールド識別子の配列 (fieldid[]) にリストされているすべてのフィールドのすべてのオカレンスを削除します。配列の最後のエントリは、BADFLDID である必要があります。fbfr は、フィールド化バッファを指すポインタです。fieldid は、フィールド識別子の配列を指すポインタです。これは、バッファからいくつものフィールドを削除する場合、Fdelall() を数回呼び出すより有効な方法です。更新は、その場所で行われます。フィールド識別子の配列は、Fdelete() によって再配列されます (それらがソートされていない場合はソートされ、番号順になります)。

FLD_PTR 型の値の場合、Fdelete32() によって FLD_PTR フィールド・オカレンスが削除されても、参照されるバッファは変更されないか、ポインタは解放されません。データ・バッファは、オペークなポインタとして扱われます。

Fdelete() は、削除するフィールドがフィールド化バッファにない場合も正常終了で返ります。

Fdelete32() は 32 ビット FML で使用されます。

マルチスレッドのアプリケーション内のスレッドは、TPINVALIDCONTEXT を含め、どのようなコンテキスト状態で実行している場合でも、Fdelete() または Fdelete32() を呼び出すことができます。

戻り値

この関数は、エラー発生時に -1 を返し、Ferror を設定してエラー条件を示します。

エラー

次の条件の場合、Fdelete() は異常終了し、Ferror を次の値に設定します。

[FALIGNERR]

"fielded buffer not aligned"
バッファが適切なバウンダリで開始していません。

[FNOTFLD]

"buffer not fielded"
バッファがフィールド化されていないか、または Finit() で初期化されていません。

[FBADFLD]

"unknown field number or type"
指定されたフィールド識別子は無効です。

関連項目

FML 関数の紹介」、Fdel、Fdel32(3fml)Fdelall、Fdelall32(3fml)

 

先頭へ戻る 前のトピックへ 次のトピックへ