みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
一つの顧客に対して、複数の売上データが存在します。
その売上データを年月によって絞り込みをしてポータルで表示しています。
このポータル行に削除ボタンを配置して、ボタンが押されたら、その売上データの顧客IDと同じ顧客IDをもつ売上データを全て削除したいのです。
顧客の情報は残したままで、売上データだけを削除したいのですが、別にレイアウトを作成し、同じ顧客IDをもつ売上データを検索し削除となるのでしょうか?
売上データテーブルに顧客ID=顧客IDの自己リレーションをかけて自己リレーション先のテーブルの「他方のテーブルでレコードが削除されたときにこのテーブルの関連レコードを削除する」にチェックを入れる。
思うような動作になっているかコピーファイルなど作ってそちらで十分に検証をしていただいた方が良さそうです。
しかしわざわざ打ち込んだデータをまとめて消すというのも不自然なようにも思いますが・・・
ポータル行に削除ボタンがある場合、
その1行だけ削除だと考える人が多いんじゃないかと思いますが、
それで全件削除でいいんでしょうか……?
思わぬ操作をされてしまいそうな気がします。
削除するよりは売上テーブルに削除フラグのフィールドを作って、
表示や集計で除外した方がいいと思いますよ。
Offline
holi さま、にしなな さま
データを削除するのではなく、フラグを作って非表示にする方法にしたいと思います。
その場合、売上データを顧客IDで自己リレーションさせて、別レイアウトで関連レコードを表示し、削除フラグをセットする方法になりますでしょうか?
それで良いと思います。
リレーションに削除フラグ≠1の形のものを追加するかフィルタに条件を追加すればポータル上は非表示にできます。
今のポータルを表示しているリレーションで
関連レコードへ移動
とすれば、
ポータルに表示されているレコードのみが対象レコードとなります。
新たなリレーションは不要ですね。
ポータルフィルタで非表示にすると、
次回同じことをしたとき、削除フラグのレコードも対象レコードとなりますよ。
しかし、なぜそのような要求になるんでしょう・・
Offline
ポータルフィルタで非表示にすると、
次回同じことをしたとき、削除フラグのレコードも対象レコードとなりますよ。
その通りですね、失礼しました。
ご指摘ありがとうございます。
削除フラグが上書きされるだけですから、、
レコード数が多いと、余計な時間がかかるかも
程度ですね。
Offline
holi さま、チポ さま
ありがとうございます。
その方法で作ってみます。
Pages: 1
[ Generated in 0.004 seconds, 7 queries executed - Memory usage: 515.58 KiB (Peak: 520.12 KiB) ]