PowerSORT Workstation V5.0 使用手引書
目次 索引 前ページ次ページ

第6章 C言語プログラムからPowerSORTを使用する> 6.4 BSORT関数で使用する構造体

6.4.11 BSIDXKEY構造体

BSIDXKEY構造体は、出力ファイルが富士通COBOLファイルシステムの索引ファイルの場合に、インデックスを指定するための構造体です。

typedef struct {
  unsigned long   idx_position;
  unsigned long   idx_length;
  unsigned char   idx_type;
  unsigned char   idx_order;
  unsigned char   idx_msub;
  unsigned char   idx_comp;
} BSIDXKEY;

■BSIDXKEY構造体のメンバ

unsigned long  idx_position

インデックスフィールドの位置を、レコードの先頭を0としたバイト位置で指定します。

unsigned long  idx_length

インデックスフィールドの長さをバイト数で指定します。

unsigned char  idx_type

インデックスフィールドのデータ形式を指定します。
指定可能なデータ形式と長さを以下に示します。

種類

データ形式

定義値

長さ
(バイト)

意味

文字

ASCIIコード

BSKEY_ASC

1〜254

富士通COBOLのCHARTYPE

Unicode UCS-2形式(注)

BSKEY_UCS2

2〜254
(2の倍数)

富士通COBOLのCHARTYPE

Unicode UTF-8形式

BSKEY_UTF8

1〜254

富士通COBOLのCHARTYPE

注) Unicode UCS-2形式のバイトオーダはLittle endianとなります。

unsigned char  idx_order

インデックスフィールドの並びを指定します。
富士通COBOLファイルシステムの索引ファイルの場合は、昇順を指定します。

定義値

並び

BS_ASCND

昇順を示します。

unsigned char  idx_msub

出力ファイルが富士通COBOLファイルシステムの索引ファイルの場合に、インデックスフィールドの作成方法を指定します。必要に応じて、以下を指定します。最終セグメントには、必ずBS_ISEGENDを指定します。

定義値

意味

BSIF_DUPS

インデックスに重複キー指定を示します。

BS_IMAIN

主キー指定を示します。
BS_ISUBとは排他関係にあります。

BS_ISUB

副キー指定を示します。
BS_IMAINとは排他関係にあります。

BS_ISEGEND

セグメントの終わりを示します。

unsigned char  idx_comp

現在サポートしていないメンバです。<NULL>を設定します。


目次 索引 前ページ次ページ

All Rights Reserved, Copyright(C) 富士通株式会社 2004-2006