過去の桐井戸端BBS (桐ver.8) |
5390 | 桐v8一括処理内でv5を実行 | 幅田 | 2000/04/03-04:33 |
ある業務の中で、不定形の郵便振替用紙に表のデータを印刷し、またそのデータで A4の請求書も発行するというのがあって、郵便振替用紙の方はプリンタがタコなのか 賢すぎるのかどうかわかりませんが、v5の帳票ではちゃんと枠内にあてはめて印刷できるのに、 v8レポートではいくらやってもできません。 しかし、請求書は見栄えの関係でどうしてもv8レポートを使いたいのです。 そこで考えたのが、以前このHPにもあるv8→v5表ファイル変換一括処理でも 使った「v8一括処理の中でv5を実行する」というやり方。 まずこのHPの中で説明してあるようにwin95/98でv5を組み込んで使う時に作っ た桐v5のショートカットを”kiridos.pif”という名前で一括処理のフォルダに 作っておきます。v8の一括処理は印刷したいデータを絞り込んでk3フォーマット で書き出し、システムコマンドで下記のv5の一括処理”注文DOS.CMD”を実行します。 変数宣言 文字列{&パス名,&パラメータ} &パス名=#データパス名 &パラメータ="="+&パス名+"注文DOS" システム &パス名+"kiridos.pif",&パラメータ v5の一括処理”注文DOS.CMD”の内容は、v8の表と同じ定義内容であらかじめ 用意して置いたv5の作業用の表にv8で書き出されたk3フォーマットのデータ を読み込み、単に帳票印刷して終了するだけのものが書かれています。 v8で実行するといったん画面が真っ黒になりますが、ちゃんとv5の一括処理が 実行されて帳票が印刷されv8一括処理に戻ります。 この考え方を使えば、以前v8一括処理内で一覧表定義ができないという質問がありましたが、 それに応用できそうです。 実際に試していませんが、考え方だけ。 一括処理内で一覧表定義をしたいのは、例えば転置集計をした場合等あらかじめ会話処理で 一覧表定義をしておくことができない場合に多いと思います。 v5では表作成コマンドもあり、作業用の表もあらかじめ作っておく必要もありません。 v8で表作成コマンドに必要な定義ファイルやデータファイルを作成しておいてから システムコマンドでv5一括処理を実行して、v5の中で表作成をして さらに一覧表定義、一覧表印刷までしてv8一括処理に戻ります。 どうしてもv8の一覧表印刷をしたいときには使えませんが、一覧表印刷の必要とされる場面は、 チェックリストや内部的な資料用等、見栄えとかにあまりこだわらないことが多いと思います。 見栄えを気にするならレポートを使えばいいのですから。 昨日一括処理を組んでいてちょっと気づいたことでした。 v9が出るまではまだまだ過渡期でv5を手放せないようです。 |