みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
Mac10.14.5
FileMaker19
顧客リストテーブル 受注明細テーブル
受注番号 = 受注番号
上記2テーブルを受注番号でリレーションし関連レコードに移動で各納品書を表示しております
受注番号を新たに1番から受注日昇順で振り直す方法を教えて下さい。
宜しくお願いいたします。
リレーションキーを貼り直す作業は、非常に厄介です。
今の受注番号をキーとして残しておき、別に受注番号フィールドを作ればいかがでしょう。
Offline
Shin様 いつもありがとう御座います。
手動でする事を置き換えてやってみました。
計算フィールドでgetレコード番号
数字フィールドに変更
以下スクリプトステップ
全レコード表示
9桁以上を検索
受注番号 昇順ソート
最初のレコードに移動
変数に格納 $新番号
変数に格納 $一番小さいの受注番号
明細テーブルにレイアウト切り替え
最少の受注番号を検索実行
フィールド内容の全置換で$新番号に置き換え
顧客リストテーブルにレイアウト切り替え
検索実行 $一番小さいの受注番号
フィールド設定 $新番号
ループの使い方がよく分かってないですが、以上をループすれば出来そうです。
Serverを移動しましたら、受注番号が8桁までしか設定できず
phpmyadominでデータベースの数値を変更すれば可能みたいですが稼働中のサイトですので
変更するのは危険かなと思いFileMaker側で変更しようと考えた次第です。
ありがとうございました。
ファイルメーカーProを使用しています。
開いた際に、『〇〇〇』が見つからなかったため、処理を完了できません。 と表示されています。
以前はこのようなメッセージはなかったのですが、現れるようになり、ファイルを見つけて開くとできるようになります。
また設定がおかしくなったのか、検索すると違う人の情報も出てきてしまいます。
スクリプトの定義?も変になってしまったのでしょうか。
一度このファイルを更新したため、破壊されたとメッセージがでて、復元したものになります。
その作業のせいでしょうか。
ファイルメーカーについて全くわからない初心者ですので、分かりやすく教えていただければ幸いです。
他の質問に関係のないトピックで質問をしていますから新たなトピックとして質問しましょう。
その際には使用しているバージョンやOSなどの環境を書かれることをおすすめします。
併せて質問に含めるダイアログの内容は正しく書きましょう。
Offline
具体的に、どのように変更したいのかわかりませんが、次の方法が比較的楽でしょう。
顧客リストテーブル側に、新しい番号を設定するフィールドを作ります。(仮のフィールドでもいいです)そのフィールドに新しい番号を設定します。計算式で設定できるのでしたら、全置換でもいいでしょう。
受注明細テーブルにも同じようなフィールドを作り、顧客リストの新フィールドをルックアップする設定にしておきます。旧の受注番号でルックアップします。(顧客リストの新フィールドを自動入力の計算式とか、計算式の全置換でもいいでしょう)
新フィールドへリレーションを変更して旧番号フィールドを削除する、または、両方のテーブルで旧フィールドに新フィールドの内容を全置換して仮フィールドを削除する
どちらにしても、リレーションの根幹を触るので、バックアップを取って元に戻せるようにしてから作業してください。
Last edited by Shin (2022-05-16 15:35:20)
Offline
Shin様 お忙しい中、ご丁寧に解説ありがとうございました。
今まで契約していたECサイトの受注番号はECサイト全体での受注番号ですので数値が連番ではありません
新たに契約したサーバーの受注番号は00001000スタートでした
旧受注番号9桁 受注日
154373962 2022/04/20
154854668 2022/04/21
155094820 2022/04/22
新受注番号8桁 受注日
00001000 2022/05/01
00001001 2022/05/02
00001002 2022/05/03
この順番で明細が並んでほしいが、実際は
00001000 2022/05/01
00001001 2022/05/02
00001002 2022/05/03
154373962 2022/04/20
154854668 2022/04/21
155094820 2022/04/22
この様な順番になってしまい日付でソートしましたが、関連レコードに移動の私のやり方が悪いようで、希望の順番には変更されませんでしたので
受注番号を並べ替えようと思いました。
Loopで少し悩みましたが、Exit Loop If [ $カウント >= $終了値 ] で無限ループにもならず
なんとか自作のスクリプトステップで移行作業も無事完成しております。
ありがとうございました。
Pages: 1
[ Generated in 0.007 seconds, 11 queries executed - Memory usage: 516.1 KiB (Peak: 520.64 KiB) ]