みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
Filemaker初心者です。
まず、テーブルAに、1ヶ月前の約100点の商品データ(部品や場所、シリアルナンバーなど)をCSVファイルで、インポートします。そして、現時点での商品データをテーブルBにインポートします。そうすると、必然的に、「Before」と「After」の状態ができます。ここで、これらを比較し、なくなったデータや追加されたデータ、場所が変更されたデータ等の、データが更新された商品のみを抽出し、テーブルCに「変更された商品」といった一覧を作成したいです。
現状としては、スクリプトを使ったインポート方法はクリアしたのですが、比較方法や抽出方法をスクリプト上でどう書いたら良いのかで、困っています。
ご教授のほど、よろしくお願いいたします。
インポートしたファイルの名前をフィールドに残す事はできますか。
Excelファイルをインポートするスクリプトを書きました。インポートしてテーブルに一覧として表示させます。その際の、ファイルの名前をテーブルのフィールドに保存し、レイアウト上に表示させたいです。可能でしょうか。現在は、テーブルは一つしか用意していません。この場合、もう一つデータを格納したりするようのテーブルを用意する必要はありますか。ファイルについては、ファイルとその名前は保存しておくつもりはありません。新しいファイルを読み込む際に全てレコード削除を行なっています。読み込んでいる間だけ、表示できれば問題ないです。
以下、書いたスクリプトです。ここに追加する形で何かいい方法はありますか。ご教授お願いいたします。(2〜4行目はほとんど関係ないと思います。)
レコードのインポート[ダイアログ: テーブル: 追加]
検索実行する[記憶する]
対象レコード[ダイアログ]
全レコード表示
FileMaker Pro 18 Advanced、Macです。
よろしくお願いいたします。
なくなったデータや追加されたデータ、は、簡単に求められます。商品ごとの状態を示すフラグフィールドを、インポート元、インポート先に追加しておき、デフォルトを0にしておきます。
インポート元がどこで作成されているかわかりませんが、そちらで変更された場合には、そのflagを1にしておきます。削除予定のものは9にしておきます。インポートの際に、インポート先の0のflagを9に置換して、照合インポートします。インポートされなかったレコード(削除されたレコード)はflagが9のままで、それ以外は、インポート元のデータに書き換わります。作成日付を見てその時に作成されたレコードが新規作成レコードです。
場所が変更されたデータは、ちょっと難しいです。元のファイルが FIleMaker で作られているのでしたら、場所を触ったタイムスタンプを記録していき、同時にflagを5などに設定するようにしておけば、インポート後に判別可能でしょう。
または、場所も照合条件にいれたインポートを最初に追加して、インポート関係ない別のflagを立てておき、インポート処理後にflagへ反映させてもいいかもしれませんね。
Last edited by Shin (2020-04-19 08:50:11)
Offline
リレーションを二つ
商品
商品 and 場所
商品の関連レコードで
商品 and 場所
で照合しないレコードが、場所が異なるレコードです。
他の要素も同様に考えればいいでしょう。
「異なる」
だけが分かればいいのなら、そのフィールドを全部 and
で照合させればいいですね。
Offline
Pages: 1
[ Generated in 0.006 seconds, 10 queries executed - Memory usage: 509.04 KiB (Peak: 513.58 KiB) ]