| ■No571に返信(手塚さんの記事)
参考にはならんかもしれませんが、私が以前やっていた方法。
月次処理と年次処理があったので、(「年度」ではなく「年」で分ける
として)1月の月次処理を実行する際に、年次更新処理の有無を確認す
るメッセージを出す。
その訳は、前月(12月)のデータを今月(1月)に入力することも少な
くなかったこと。で、少なくとも当月(1月)の月次処理を行う時点で
はもう前月(12月)分の入力はさすがに終わっていること。月次の締め
が当月(1月)の途中(例えば25日)であったこと等によっています。
if(&月=1)
メッセージボックス \
"1月の月次処理に先だって、年次更新処理は済んでまっか?",・・・・
if(まだの場合) ※
確認 "年次更新処理を実行しますか?",・・・・
条件(する場合) 手続き実行 年次更新処理()
・・・・・・
年次処理の中で、前年のデータを絞り込んで保存表に書き出してから、
前年データを削除・圧縮等おこなう。
この時の保存表名は #str(&年-1)+"某.tbl"。
なお、年に一度しか行わないことによる詰めの甘さで、宮城さんが仰る
とおり、予想外のハプニングが結構おこるので、処理前に別フォルダ等
に丸ごとバックアップしておいた方が激しく無難です。
※年次更新処理が済んでいるか否かの判断には、前年のデータを絞り込
んで、&選択件数が0かどうか辺りも使えます。
|