みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
FM13を使用しています、頻繁に質問し申し訳有りません。
ID ID別シリアル
1 1
1 2
1 3
2 1
2 2
という様にID入力に対して、ID別シリアルを自動入力したいです。
過去のスレッドにあるこちらの方法でひとまずできたのですが
https://fm-aid.com/bbs2/viewtopic.php?pid=4655#p4655
ID変更、もしくは、レコードを削除した場合に対応できませんでした。
対応方法あればご教示お願い致します。
Offline
的外れな回答だったら申し訳ないですが、IDとかシリアルとか言うと私はついそれ自体をリレーションキーとして使っていましたが、ohlgさんと同じような問題があったので、リーレーションキーとohlgさんの言うID別シリアルは別に考えることにしたらすっきりしました。
こんな答えを求めていないかもしれませんが、最近あった事案だったので書き込んでみました。
Offline
nyoro様
回答ありがとうございます。
えと、すいません具体的なところがよくわかりませんでした。
参照できる過去ログがあればおしえていただけないでしょうか。
Offline
ID変更、もしくは、レコードを削除した場合に対応できませんでした
削除は
欠番にしないで、以降をつめて振り直し。
ですか?
ID変更は
変更後のIDのグループのどこに入るのですか?
一番最後
並び順の位置(並び順はレコードIDでいいのでしょうか?)
Offline
チポ様
>削除は欠番にしないで、以降をつめて振り直し。ですか?
はい、欠番無しで。ただしその実装方法はつめて振り直しでなくとも限りません。
>ID変更は
変更後のIDのグループとして、変更後のグループID内でシリアルを割り振ります。
本件でのID別シリアルはいわゆるシリアルの意味ではないですかね、すいません。
ID別シリアルの順番に絶対的な意味は無いので、数え上げとして矛盾が無ければOKです。
要するに最終的に下記のどちらでもかまわないです。
ID ID別シリアル
1 1
1 2
ID ID別シリアル
1 2
1 1
Offline
IDごとの数さえ分かればいいのならIDでリレーションして
Countしたらいいのでは、
Offline
旅人様
それぞれにナンバリングすることが目的で、
ID別の数え上げが目的ではないのです。
Offline
でしたらIDと ≥ Get(レコードID)の両方でリレーションして::IDのCount
ではだめなのですか。
Offline
できるだけ作業列を作らずに済ませたいのですが可能でしょうか。
Offline
作業列というのが分かりませんが
変更したIDと変更されたIDの両方に関連レコード移動して(ソートして?)
元のSerialIncrementの式で全置換するとか・・
Offline
Pages: 1
[ Generated in 0.010 seconds, 9 queries executed - Memory usage: 517.16 KiB (Peak: 522.07 KiB) ]