Google
オフコン練習帳内を検索
インターネット全体を検索

NECオフコン関連
オフコン一般
情報

ソート実行例3

●昇順でソート&出力フィールドの構成変更

最初の4桁の数字(品番)を元に昇順にソートして、レコードの構成を({品番、品名、値段、何かのコード1、何かのコード2、FILLER}から{品名、FILLER、品番、値段、何かのコード1、何かのコード2}の順番に)変更して出力してみます。

ソート前(ファイル名:DATA80)

0005カラーテレビ                            00500000A0005                       
0850ラジオ                                  00001800A0100                       
0003ステレオ                                00045000A0015                       
0010簡易掃除機                              00000300B0250                       
1000洗濯機                                  00180000B0008                       
0500トースター                              00005000C0040                       
0006テレビ                                  00010000A0009                       
ソート後(ファイル名:DATA10)

ステレオ                                                       000300045000A0015
カラーテレビ                                                   000500500000A0005
テレビ                                                         000600010000A0009
簡易掃除機                                                     001000000300B0250
トースター                                                     050000005000C0040
ラジオ                                                         085000001800A0100
洗濯機                                                         100000180000B0008
                                                                                 
                                                                     

●操作方法

実行例1とほとんど同じで、SELパラメータが異なるだけです。
実行例1でも説明した部分は簡略していますので、必要に応じて実行例1も参照してください。

RUNコマンド入力行で、「#SORT;」と入力して「ENTERキー」を押します。



ユーティリティ#SORTが起動されました。

SRTパラメータは、バッチ化する時に利用します。今回はバッチ化しないので、何も入力せずに「ENTER」キーを押します。



最初は入出力ファイルや使用する作業ファイルなどを入力します。
今回の例では、入力ファイル側のパラメータのIDEはMSD002、ICIは何も入力しない、IFIはDATA80、出力ファイル側のパラメータのODEはMSD002、OCIは何も入力しない、OFIはDATA10、作業ファイルのパラメータのIFOはPROTECT、WKDはTEMPORARYとしました。
WSZパラメータは、WKD=TEMPORARYとした時にだけ表示されるパラメータです。
今回の例のようなデータの場合は省略可能なので、何も入力せずに「ENTER」キーを押します。

LSTパラメータは、今回の例ではNOを選択しました。



SAVパラメータは、NOとしました。



NXTパラメータは、何も入力せずに「ENTER」キーを押します。



今回の例では、フロッピーディスクは使用しないのでNOVパラメータは省略、同一キーは無いのでDKYパラメータはNOとします。

ここがこの例で重要なところです。
ソートに使用するキーを入力します。
ソートするキーは1つで、1バイト目から4バイト分の数字項目で昇順なので、(1,4,N)と入力します。



ここも重要なところです。
OUTパラメータには、レコードに出力したい順番に(何バイト目から,何バイト分)と入力していきます。
今回の例では「(5,40),(58,23),(1,4),(45,8),(53,1),(54,4)」と入力しています。レコードの先頭に5バイト目から40バイト分のフィールドの情報(即ち品名)、次に58バイト目から23バイト分(FILLER)、次に1バイト目から4バイト分(品番)・・・という順番で、レコード出力します。



SUMパラメータ、TOTパラメータ、SELパラメータ、ALTパラメータは、今回は特に変更しません。何も入力せずに「ENTER」キーを押します。



ここまで入力は終了です。自動的にソートが開始されます。
そしてソートが終了すると「ソート処理が終了しました」と一瞬表示されて、#SORTが終了します。