[解説10]
画面を切り替えるたびに、SFL01,CTL01 と SFL02,CTL02を交互に表示しますので、サブファイルのレコード定義は2個です。但し、データ1つに対して、SFL01,SFL02に同時に書き込むので、相対レコード番号(RRN)は1つで制御できます。各々RRN01,RRN02にしてもいいのですが、面倒です。それから、画面でSFL01を表示していても、SFL02も同じ量のデータをもっていることになり、CPUの負荷がかかっています。3、4画面くらいなら大丈夫でしょう(実際、作成して業務で使っています)が、10画面も作ったりしない方がいいです。

[解説20]
F9は、画面の切り替えキーです。(F9でなくても、なんでもいいのです。)W1VIEWは、表示すべき画面がSFL01かSFL02かを制御しています。W1VIEW=1ならSFL01,W1VIEW=2ならSFL02を表示します。F9でW1VIEWの値を切り替えています。

[解説30]
W1VIEWは、表示すべき画面の制御フィールドです。値は1か2しか入りません。

[解説40]
サブファイルSFL01,SFL02の消去のタイミングも同じです。また、*IN62はCTL01,CTL02の両方に同じ標識で定義されています。

[解説50]
RRN01はSFL01,SFL02共通のRRNとF仕様書で定義しています。そして、SFL01,SFL02へのデータのセットのタイミングはこのように同時です。

[解説60]
表示すべき画面の制御フィールドW1VIEWが1ならば、CTL01,W1VIEWが2ならば、CTL02を表示します。*IN60,*IN61もCTL01,CTL02で共通の標識としてDDSに定義しています。

SEO [PR] 爆速!無料ブログ 無料ホームページ開設 無料ライブ放送