ページの先頭行へ戻る
Interstage Charset ManagerStandard Edition V9 使用手引書 拡張データ変換機能編
FUJITSU Software

2.4.2 wconv_setnumsignchk

wconv_setnumsignchkについて説明します。

名前

wconv_setnumsignchk -  数値データ項目の符号チェックの有効/無効を指定する

形式

int wconv_setnumsignchk(wconv_t wd, 
                        int     fcheck, 
                        FLDTYPE type ); 

wd wconv_open、またはwconv_openExが返却した変換情報テーブルの値を指定します。
fcheck 数値データ項目の符号チェックの有効/無効を指定します。
type 符号チェックの有効/無効を指定する数値データ型を指定します。

機能説明

wconv_setnumsignchk は、数値データ変換において項目書式のデータ型と一致しない符号のデータが入力された場合にエラーにするかどうかを指定します。

符号チェックを無効にすることで、データ型が符号つきの場合に符号なしのデータが入力された場合、符号なしのデータを正の値として変換を続行します。

また、データ型が符号なしの場合に符号つきのデータが入力された場合、符号を無視して変換を続行します。

fcheckには、以下のいずれかを指定します。

[CONV_CONTINUE]:

符号チェックを無効にします。

[CONV_STOP]:

符号チェックを有効にします。

fcheckにCONV_CONTINUEを指定した場合、符号のチェックを無効にし、項目のデータ型と符号つき/なしが異なる場合でも変換を続行します。

wconv_setnumsignchkを呼び出さない場合は、fpaddingにCONV_STOPが指定されたのと同じ変換を行います。

戻り値

カスタマイズに成功した場合は、0を返却します。

カスタマイズに失敗した場合は、-1を返却します。

エラー

エラー情報は、wconv_error ()で取得します。

【エラーコード】

EINVAL:

変換情報テーブルが異常です。または、fcheckの値が不当です。

wconv_setnumsignchk関数の例

/* wconv_convert関数呼び出しまではwconv_open関数の例と同様の処理 */
wconv_setnumsignchk( wd, CONV_CONTINUE, FLD_DECIMAL_SIGNED_O );
if ( ( wconv_convert( wd, &fromrecdata, &torecdata ) ) != 0x00 )
{
    wconv_error( wd, 1, &error );
}
wconv_close( wd );