過去の桐井戸端BBS (桐ver.9)
24355 フォームの編集対象表を変更するとき「○○.TBLは更新されています保存しますか」というコメントを出ないようにしたい もさく 2004/01/21-19:38
Aフォームの入力時Bフォームを表引きふうに参照使用しています。
Bフォームの編集対象表(参照.TBL)を変更したところ、参照入力時に
「参照.TBLは更新されています、保存しますか』というコメントがでるようになりました。
保存するとして処理を終わっても次の時また同じコメントがでます。
参照.TBLを変更しましたがBフォームに表示している項目は元のままです。
編集対象表を変更するとフォームで表示する対象項目に変更がなくても影響がありますか。
どこの設定記述を変更すれば上記コメントが出ないようにできますか。よろしくお願いします。
24359 Re:フォームの編集対象表の変更 佐田 守弘 2004/01/21-22:10
記事番号24355へのコメント
もさくさん
書かれている意味が解らない部分があって、充分に理解し切れていないのですが、

●表引きふうとは
 >Aフォームの入力時Bフォームを表引きふうに参照使用しています。
に書かれている「表引きふうに参照入力」とは、具体的にどの様な方法を
言っておられるでしょうか。これは普通の表引きとは違うのですか?
そして参照するときに、フォームBの値を編集するような操作が入るのでしょうか。

●編集対象表の変更
>参照.TBLを変更しましたがBフォームに表示している項目は元のままです。
の状況から見ると、フォームBで表示している編集対象表とは別の表に対して何らかの変更を行っている様に思えます。
そしてそれが編集対象表を変更した事と何らかの関係がありそうに見えますが、
それ以上は書かれている事からは推定できません。

そこで、以下を確認して下さい。
@フォームBの対象表は何になっているか。参照表と編集対象表のそれぞれを調べてみて下さい。
(参照表は編集時には特に関係ないのですが)
AフォームBを開き、次いで表編集に変えて、何の表が開かれているかも調べてみて下さい。
B実際に上書き保存された表
処理が終ってメッセージ通りに保存した後、Explorerなどでそのフォルダを開き、
タイムスタンプから何の表が更新されたかを調べてみて下さい。

おそらく以上で何らかの情報が得られるかと思います。

佐田守弘(KS-00119)
24362 Re:フォームの編集対象表の変更 もさく 2004/01/22-13:08
記事番号24359へのコメント
佐田 守弘さん

>もさくさん
>書かれている意味が解らない部分があって、充分に理解し切れていないのですが、

表引きふうとはAフォームに入力する際Bフォームの値を表示し左クリックすることで
Aフォームに入力出来るようにしております。
今度の変更に先立ちこんなこともあろうかと事前に旧のTBLを保存しておきました。
フォームイベント中に関係するすべての項目について新旧比較したところBフォームの
イベント中で参照用TBLの項目値を変数にセットする部分が有りましたが、
この項目が旧TBLでは非計算項目であったのが新TBLでは計算項目に変更しておりました。
そこで一旦項目計算式を削除してイベントを走らせたところ現象が改善しましたので、
その後再び項目計算式を書き入れました。
こうした操作で問題の現象は改善され解決できました。
こういう事が発生する理由根拠は理解できておりませんが解決できてよかつたです。
お手数をおかけしました。どうも有難うございました。
24466 Re:フォームの編集対象表の変更 もさく 2004/01/28-21:12
記事番号24362へのコメント

追記
また編集対象表の変更をしたところ今度は前記操作では解消しないのでいろいろ試してみたところ
Bフォームのイベント中に記述していた検索条件登録が原因のようでした。
同じ検索条件名、同じ内容でも検索条件登録をすればその都度変更と見なされるのか更新注意コメントが出るようです。
一旦登録した検索条件がどんな場合に削除されることがあるのか私には理解できていないので
毎回登録するようにしていましたが、
どうもこれがいけないようでした。
確かDOS版では表の再定義をすると登録済み検索条件は削除されたと記憶しています。
そんなことで毎回検索条件登録を繰り返すようにしましたが、よくないようです。
ご意見を頂ければ幸いです。
24469 Re:フォームの編集対象表の変更 佐田 守弘 2004/01/29-01:06
記事番号24466へのコメント
もさくさん
原因は検索条件の登録でしたか。
検索条件登録コマンドを実行すれば、例え同じ中身の条件でも、登録され直されるので表ファイルを書き換えた事になります。
(表データのどこかを同じ値で書き換えた場合と同じ)
従って、更新されたファイルになり、保存するかどうかが求められます。

●検索条件をコマンドで登録すべきかどうか
状況次第でしょうね。
私は登録する場合としない場合の両方です。
コマンドで登録する条件は、標準的なもので、仮に手作業で条件を書き直した場合でも、
標準に戻すように登録したい場合には、コマンドに検索条件登録を入れてあります。
一方、手作業で書き換えた新しい条件の方を重要とするなら、入れません。

●確認を出さない様にするなら
参照のために開いた表を保存終了するなら「終了 表」コマンドで閉じる様にすれば良いと思います。
破棄するなら「中止 表」で破棄終了します。
多分これを行ってないのではないかと思います。
開いた表を閉じないまま、フォームを終了しようとするので、終了時に開かれている表が残っていて、
これを更新されているからどうするかの確認が求められるわけです。

あるいは、これが適切な方法であるかどうかは別にして、バックアップなしに設定しておく、
(ないしはバックアップありの設定でも共有で開く)様にすれば、検索条件を登録した時点で、
元の表ファイルが書き換えられていますから、保存するかどうかの確認はなくなると思います。
その代わり、ミスによる書き換え対策や、ファイル破損に備えてのバックアップの作成は欠かせません。

佐田守弘(KS-00119)

戻る