Japan
サイト内の現在位置を表示しています。
SORTKIT - FAQ(機能)
2.機能について
Q2-7:【SORTKIT】【Enterprise】 SORTKITのエラーメッセージをファイルにリダイレクトできますか? |
A2-7: 【SORTKIT】【Enterprise】 SORTKITでは、エラーメッセージは標準エラー出力に出力しています。Windows NT/Windows2000の場合、 nsort ~ 2> errorfile とすることによりエラーメッセージをファイルにリダイレクトできます。ただし、Windows95/98ではリダイレクトできません。 また、SORTKIT Ver5.5以降およびSORTKIT/Enterpriseではエラーメッセージをファイルに出力する機能をサポートしています。機能についての詳細は「SORTKIT説明書」を参照してください。 |
Q2-9:【全製品】 作業ファイルはどこに作成されますか? |
A2-9: 【SORTKIT】【Enterprise】
次の順序で作成する位置が決まります。 SORTKIT Ver7.1、SORTKIT/Enterprise Ver3.1以上の場合 オプションを指定しない場合は次の順序で作成する位置が決まります。
ディレクトリ名を指定した場合は次の順序で作成する位置が決まります。
環境変数TMP、TEMPが両方指定されている場合は、TMPの指定を使用します。 SORTKIT Ver7.0、SORTKIT/Enterprise Ver3.0以下の場合 オプションを指定しない場合は次の順序で作成する位置が決まります。
ディレクトリ名を指定した場合は次の順序で作成する位置が決まります。
A2-9: 【UNIX版】【Linux版】 次の順序で作成する位置が決まります。 オプションを指定しない場合は次の順序で作成する位置が決まります。
ディレクトリ名を指定した場合は次の順序で作成する位置が決まります。
|
Q2-10:【SORTKIT】【Enterprise】 SORTKITで出力した順編成ファイルをCOBOL85 Proで作成したアプリケーションでアクセスする際の注意点はありますか? |
A2-10: 【SORTKIT】【Enterprise】 COBOL85 Proでのコンパイラ動作既定値(マシン単位)に注意してください。アプリケーションをメイクする時は、コンパイラ動作既定値(マシン単位)をCOBOL85(Windows95/WindowsNT版)互換に設定する必要があります。コンパイラ動作既定値がデフォルトのままになっていると、COBOLの順編成ファイルはIFAS順編成ファイルとして扱われます。SORTKITの順編成ファイルとして扱われるようにするためには、COBOLアプリケーションをメイクする時に、コンパイラ動作既定値(マシン単位)を COBOL85(Windows95/WindowsNT版)互換に設定する必要があります。 |
Q2-12:【SORTKIT】【Enterprise】 ファイルマッパーでファイル情報を設定しているのに、内部ファイル名が有効になりません。 |
A2-12: 【SORTKIT】【Enterprise】 次の各項目を確認してください。
|
Q2-15:【全製品】 ASCIIコード文字列を昇順にソートする時、EBCDICコード文字列のように英字(A~Z)を数字(0~9)よりも前になるようにソートできますか? |
A2-15: 【全製品】 文字列の比較順序変更機能を使用することで英字、数字の順にソートできます。SORTKIT Ver5.0以降、SORTKIT/EnterpriseおよびUNIX版SORTKIT R4.1以降では標準で変換表を持っていますので、文字の比較順序変更機能の指定で"ATOE"(ASCII→EBCDICのコード変換を行う)または"JTEK"(1バイトJIS→EBCDICカタカナのコード変換を行う)と指定してください。ただし、文字の比較順序変更機能で標準のコード変換表を指定した場合は、日付ソート機能が使用できないので注意してください。 |
Q2-16:【全製品】 C言語インターフェースで、キーフィールドテーブルのnumcharに設定する値は? |
A2-16: 【全製品】 キータイプがSJIS(1/2バイト混在シフトJISコード文字)、もしくはEUC(1/2/3バイト混在EUCコード文字)(注)の時に、numcharで指定された文字数をもとに比較します。 例えば、EUCでフィールドサイズ4バイト、numcharが3の場合、
という2レコードは、
つまり、このほかに[abce]というレコードが存在する場合、 [abcd]と[abce]は最初の3文字で比較結果を出すため、同値とみなされます。 逆に、numcharを4と指定すると、[abcd]、[abce]は4文字目まで比較され、[abcd]->[abce]の順序付けが行われますが、 [abあx]のようにフィールド内に2バイト文字が存在すると、フィールドサイズ(上記例では4バイト)を超えた[x]まで比較対象になります。 上記のような結果では問題がある場合、単純な1バイト文字比較(CHタイプ)を行なうことをお勧めします。ただし、この場合、SJIS/EUCで指定した結果と順序が異なるケースがあります。 SJISとCH SJIS: ASCII -> 半角カタカナ -> 2バイト漢字 CH: ASCII -> 2バイト漢字(8140-9FFC) -> 半角カタカナ -> 2バイト漢字(E040-) EUCとCH EUC: ASCII -> 半角カタカナ -> 2バイト漢字 -> 補助漢字 CH: ASCII -> 半角カタカナ -> 補助漢字 -> 2バイト漢字 いずれのタイプでも問題があるようでしたら、利用者キー比較コーディングを利用してください。オプションテーブルのuser_keycompで指定できます。 (注)EUCはUNIX版・Linux版のみサポート |
Q2-17:【全製品】 C言語インターフェースで、nsort_endを呼び出す前にエラーとなった場合、nsort_endを呼び出す必要がありますか? |
A2-17: 【全製品】 ステータス(intftbl.errinfo->status)に0以外の値が返却された場合は、SORTKIT内部で後処理(つまりnsort_endと同じような処理)を行なっていますので、異常終了時はnsort_endを呼び出す必要はありません。逆に呼び出すと、エラーになります(ステータスに値が入ったままでも、クリアされていてもエラー)。なお、nsort_rgetは関数のリターン値がありますが、異常終了時は0で返り、ステータスにエラー番号が入ります。 また、正常に動いているけれど途中でソートを止めたいとき(例えば、先頭5レコードだけソート結果を得られれば、後のレコードは必要ないようなとき)は、nsort_endを呼び出せば、その時点で正常終了します。 |
Q2-19:【UNIX版】 NX7000シリーズ用SORTKITで、C-ISAM(V7)のNCHARタイプは使用できますか? |
A2-19: 【UNIX版】 SORTKIT R7.2以前では、対応していません。SORTKIT R7.3以降では、ソート/マージキーとしては対応していませんが、C-ISAM(V7)ファイルのインデックスとしては対応しています。C-ISAM(V7)の入力ファイルのインデックスにNCHARタイプがあってもSORTKITはそのインデックスに従ってレコードを入力します。C-ISAM(V7)の出力ファイルのインデックスをNCHARタイプとしたい場合は、ディレクティブファイルでPRMKEYまたはSNDKEYパラメータにより指定します。 |
Q2-21:【UNIX版】【Linux版】 ファイル形式が固定長のUNIX標準ファイルの場合、ファイル形式の設定値は、"STM"でしょうか?固定長ということで"SEQ"でしょうか? | ||||
A2-21: 【UNIX版】【Linux版】 どちらでもよいですが、どちらかといえばSEQにすることをお勧めします。
|
Q2-23:【SORTKIT】【Enterprise】 サーバコンポーネント(COM)実行時に次のメッセージを表示してエラー終了します。「997:関連製品エラー:(SORTKIT) [122]」 |
A2-23: 【SORTKIT】【Enterprise】 このエラーは作業ファイルの割り当て動作で、書き込み・読み込み可能なディレクトリがないときに発生します(作業ファイルの割り当て動作の詳細は「SORTKIT 説明書」を参照して下さい)。作業ファイルの割り当てを行うディレクトリを有効にするため、以下を設定して下さい。
|
Q2-24:【SORTKIT】【Enterprise】 SGファイル(sortkit.ini)の設定が有効になりません。 |
A2-24: 【SORTKIT】【Enterprise】 SGファイル(sortkit.ini)をサーチパスが設定されているディレクトリに置いてください。以下の順序でsortkit.iniをサーチします。
|
3.GUIについて
4.ActiveXコントロールについて
Q4-1:【SORTKIT】【Enterprise】 MS VisualBasicで、ActiveXコントロールを利用するアプリケーションを作成しているのですが、利用者入力機能を使用して文字列型(String)データのソートを行うと、 ソート結果がシフトJISのコード順になりません。 |
A4-1: 【SORTKIT】【Enterprise】 MS VisualBasicの文字列型(String)データは通常UNICODE文字列です。利用者入力機能でSORTKITに渡されるデータは、UNICODEのコード値になります。 シフトJISのコード順でソートしたい場合は、StrConv関数でシステム規定のコードページに変換するなど、シフトJISに変換後、SORTKITに渡すようにしてください。 |