みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
いつもお世話になっております。
案件テーブルの中にフリーワードというフィールド
商品テーブルの中に商品名というフィールドがあり、商品名とフリーワードでリレーションをしています。
商品テーブルのフィールドの数は
営業所Aのカテゴリ
営業所Bのカテゴリ
営業所Cのカテゴリ
商品名
営業所Aのコード
営業所Bのコード
営業所Cのコード
と合計7個
各営業所ごとに案件レイアウトを分けており、
営業所Aのレイアウトでは
営業所Aのカテゴリ
営業所Aのコード
フリーワード
営業所Bでは
営業所Bのカテゴリ
営業所Bのコード
フリーワード
といった具合です。
フリーワードの値一覧をドロップダウンリスト、商品テーブルの商品名を設定し、値一覧を使用してオートコンプリートを使用して、文字を入力したら自動で候補が出てくるようにしているのですが、当然ですが現状は全ての商品名が出てきます。
各営業所ごとに似たような商品でも少し商品名が異なっており、営業所Aのレイアウトのフリーワードの値一覧には営業所Aの商品名のみ、といった動作ができればと思っております。
各営業所ごとに商品名のフィールドを作成すれば可能だと思うのですが、作業が進んでしまっており、リレーションの設定などで解決できればと思っております。
何卒、宜しくお願い致します。
同じ商品なのに営業所によってカテゴリやコードが違う、というのが、おかしい気がしますが...
関連付けをおこない、動的値一覧という手法を使います。
動的値一覧はカテゴリ毎に選択できる値を変化させることが出来ます。
リレーションは通常のリレーションとは別に動的値一覧用にテーブルオカレンスを組み、ドロップダウンリストなどを用いて関連フィールドから値を呼び出すことになります。
動的値一覧を扱ったことがない人は非常に混乱する作業になります。
https://support.claris.com/s/article/%E … anguage=ja
最初のうちは解らないと思います。それでも繰り返し読み直し理解を深めて下さい。
動的値一覧は非常に癖強めです。一度理解してしまうと様々な場面で使えるとても便利なものです。
よく読みながら、習うより慣れろという気持ちで取り掛かってみたら良いと思います。
応用ができるようになると、値一覧に含まれていないものを商品名に直接入力することで、自動で値一覧に追加するようなことも出来るようになります。(条件分岐で値が含まれていなければレコードに追加などのスクリプトを組む必要あり)
Last edited by ウィン (2021-06-02 00:11:07)
Offline
作業が進んでしまっているソリューションでも置き換えは可能なので諦めずに頑張って下さい。
FileMakerやその他データベースの書籍の多くはデータベースの設計をしっかりさせないと後で後で泣きをみる事になると多く書かれていますが、最初からしっかりした設計のものが出来るはずもなく、後からになって実装するものも少なくありません。
UIデザイン部とデータベースを同時製作出来る最強のツールです。データベースアプリとしてのアップデートを繰り返していくうちに良いものが出来上がっていきます。他のデータベース開発ツールと比較するとFileMakerは圧倒的にアジャイル開発に向いていると言えるでしょう。
Offline
ファイルの構造を変更しないと無理でしょう。
商品テーブルは、商品ID と商品名を持たせておきます。それと別に、商品明細みたいなテーブルを作り、商品ID、商品名_個別、営業所名、カテゴリー名、コード、を持たせておきます。
入力用のテーブルには商品IDを入力させるようにしておきます。また、そのテーブルに、営業所名をグローバルフィールドで持たせておきます。
営業所名で商品明細へリレーションを張り、そのリレーション先のみを表示させる値一覧を作ります。第1フィールドは商品ID、第2フィールドは商品名にして、第2フィールドのみを表示させればいいでしょう。
Offline
全体に何をしたいのかよく理解できませんが、、
> 商品名とフリーワードでリレーション
このリレーションは何のために?
フリーワードの入力のためなら、照合フィールドが違いますよ。
案件テーブルのフィールドの説明が有りません。
> 営業所Aのレイアウトでは
> 営業所Aのカテゴリ
> 営業所Aのコード
> フリーワード
>
> 営業所Bでは
> 営業所Bのカテゴリ
> 営業所Bのコード
> フリーワード
営業所ごとのフィールドが有るのでしょうか?
また、フリーワードフィールドは一つ?
Offline
大変返信が遅くなり申し訳ありません。
商品テーブルオカレンスを複製して作成、案件テーブルと営業所コードでリレーションをし、フリーワードの値一覧のフィールドの値をこのテーブルオカレンスの値、案件テーブルに関連する値のみ。に設定したところ、希望の動作をするようになりました。
ありがとうございました。
Pages: 1
[ Generated in 0.012 seconds, 10 queries executed - Memory usage: 519.89 KiB (Peak: 524.8 KiB) ]