ページの先頭行へ戻る
PowerSORT Workstation (32bit) V8.0 ユーザーズガイド
FUJITSU Software

A.2.9 レコード集約機能を使った例

次のプログラムは、既に存在するレコード長15バイトのテキストファイル "c:\sortin.txt" を、レコードの9バイト目から4バイトをキーフィールドとしてASCIIコードの昇順に並べます。同値のキーフィールドを持つレコードが複数存在した場合、4バイト目から4バイトのASCIIコードのフィールドを集約し、その結果をテキストファイル "c:\sortout.txt" に出力するコードの記述例です。

Private Sub Command1_Click()
    'エラーメッセージを表示しない旨を指定します。
    PowerSORT1.DispMessage = False
    'ソート処理を指定します。
    PowerSORT1.DisposalNumber = 0
    'フィールドはカラム位置で指定します。
    PowerSORT1.FieldDefinition = 1
    'キーフィールドとしてレコードの9バイト目から4バイトのASCIIコードを昇順で並べるように指定します。
    PowerSORT1.KeyCmdStr = "8.4asca"
    '集約フィールドとしてレコードの4バイト目から4バイトのASCIIコードを集約するように指定します。
    PowerSORT1.SumCmdStr = "3.4asc"
    '指定したキーフィールドが同じ内容だった場合、レコード集約機能を用いて、集約フィールドを加算します。
    PowerSORT1.HandlingSameKey = 3
    '入力ファイル名を指定します。
    PowerSORT1.InputFiles = "c:\sortin.txt"
    '入力ファイル種別にテキストを指定します。
    PowerSORT1.InputFileType = 0
    '出力ファイル名を指定します。
    PowerSORT1.OutputFile = "c:\sortout.txt"
    '出力ファイル種別にテキストを指定します。
    PowerSORT1.OutputFileType = 0
    '最大レコード長は15バイトです。
    PowerSORT1.MaxRecordLength = 15
    'PowerSORTのDLLを呼出し実行します。
    PowerSORT1.Action
    'エラー検出時の処理。
    If PowerSORT1.ErrorCode <> 0 Then
        Msgbox "PowerSORTでエラーを検出しました。" & " ErrorDetail=" & PowerSORT1.ErrorDetail
        Exit Sub
    End If
End Sub