固定長テキストから、「桐」表(tbl)への変換

◎ テキストファイルから、桐の表(tbl)を作成する方法として、そのまま読み込む方法や、コンマ・タブ等の区切り文字を利用する方法、また、拡張子により、桐が自動判断して読み込み処理を行う、その他あると思いますが、今回は、一般に固定長と呼ばれているファイルから、フォーム上で設定を行う変換処理を、ご紹介いたします


今回対象の「固定長ファイル」とは、普通のテキスト文字だけで構成されており、一定のルールで分割可能なデータが、繰り返し(1行以上)保存されているものを対象としています。(このプログラムでは処理していませんが、ヘッダー・フッタ等を含む場合もデーター行の処理は可能です。)

例:全銀フォーマット(注:勤務先で実際に利用しているファイルで調査いたしましたが、他の形式もあるかも知れません) 以上を120バイト固定で、<ヘッダー><データ><データ><データ>・・・・・・・<トレーラー><エンド>のように改行なく、1行で構成されています。


◎ 固定長テキストファイルからの、変換読み込み方法 今回のフォームでは以上3種類に対応いたしております。


◎起動方法
 「固定長変換.wfm」を、起動してください。


◎操作説明


◎その他・・・・・・

1.実は解析不明個所があります。定義(cnv)で書き出しされた「ConvOption=0,0,1」の内容で、3個の因数の内最初の数字が不明です
 「0・1」のどちらでも、動くようですが、なんでしょう?

2.下記「変換定義内容」のなかで、変換のタイプ「固定長」が、くぼみ罫線で囲われていますが、その他になにがあるのか不明です
 そのため表示は「固定長」に固定してあります。ご了承ください。

3.項目名の判定で、#文字位置で、半角空白の判断をしています。空白文字や/(スラッシュ)は使用しないでください。


◎サンプルの内容


固定長ファイル変換とは関係ないのですが・・・おまけです。
 余分なフォームは作成したくなかったのですが・・・どうもメッセージボックスがうまく使えません
 上段の「メッセージボックス」を利用しての表示と、下段の「フォーム」を利用しての表示では一目瞭然です。
 
メッセージボックス仕様
内容   メッセージボックス "変換定義内容の確認",\
    "変換定義ファイル名  "+&CnvFile+"\n"+\
    "変換のタイプ     "+"固定長"+"\n"+\
    "FIXファイル    "+&SrcFile+"\n"+\
    "桐の表名       "+&TblName+"\n"+\
    "定義されてる項目数  "+#文字列(&ItemCount)+"\n"+\
    "項目名の指定方法   "+#条件選択(&ConvOption[1]=0,"ユーザー指定",1,"★不明★")+"\n"+\
    "データ型の指定方法  "+#条件選択(&ConvOption[2]=0,"ユーザー指定",1,"自動設定")+"\n"+\
    "改行コード      "+#条件選択(&ConvOption[3]=0,"改行なし",1,"改行あり"),\
    制御文字展開=する
  
フォーム形式表示(実際のフォームとは異なります)
内容 上記メッセージボックスに使用されてる変数を、テキストオブジェクトを作成し、ソースに変数として設定


追伸。一応テストはしたつもりですが、異常やエラー等がございましたら、連絡いただけましたらさいわいです。  【多遊】