みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
FM19Pro Macです。
作業者の一覧が表示されるドロップダウンリストにおいて、すでに選ばれている作業者名をドロップダウンの値一覧に表示しないドロップダウンリストの作成に悩んでいます。
テーブルを[]
フィールドを「」で括り表しております(わかりにくくければすみません)
下記詳細です。
<テーブル構成>
[作業員テーブル]
[作業員_スケジュールテーブル]
[作業場所テーブル]
※[作業員テーブル]と[作業員_スケジュールテーブル]は、前者の「作業員コード」、後者にも同じく「作業員コード」でリレーションがあります。
※[作業場所テーブル]と[作業員_スケジュールテーブル]は、前者の「作業場所コード」とグローバルフィールドの「g作業日付」、後者の「作業場所コード」と「作業日付」でリレーションがあります。
[作業場所テーブル]のレイアウトには、[作業員_スケジュールテーブル]のポータルがあり、作業者を選んで関連レコードを作成するようになっています。[作業員_スケジュールテーブル]のレコードには、「作業日付」フィールド、「作業場所」フィールドがリレーションで自動入力されます。
作業者を選ぶドロップダウンは、[作業員テーブル]から「作業員名」の一覧を表示しますが、その際に、同じそのポータルに登録されている作業員名は、ドロップダウンに表示しないようにしたいです。
拙い説明で申し訳ないですが、お力をいただけたらと思います。
Last edited by hoshi11 (2023-09-06 17:04:29)
Offline
作業員_スケジュールテーブルで
「作業場所コード」と「作業日付」で自己リレーション。
計算フィールド「リスト」
List ( "XXX" ; 作業員_スケジュール2 :: 作業員名 )
↑
作業員名に絶対使われない適当な値(最初の照合用に必須です)
を作ります。
作業員_スケジュールテーブルと作業員テーブル
でリレーション
作業員_スケジュール::リスト ≠ 作業員::作業員名
として、
このリレーションの動的値一覧を
作業員::作業員名
でつくります。
Last edited by チポ (2023-09-07 09:12:09)
Offline
同じような方法ですが、、このQ&Aサイトの前にあったサイトで質問し回答を得たときの記憶を元に書いていますの使えるか分かりませんが参考まで
既出の値をドロップダウンの値一覧から除外するには例えばテーブルを
都道府県(codeと名称フィールドで構成)
作業シートテーブルにドロップダウンリストを表示するa1フィールドと既出の値を表示するテキストグローバルフィールドG(表示しない)
名称フィールドによる値一覧(作業シートの値を含めるようにする)
を用意してGとと名称をノットイコール記号「≠」でリレーションすればいいだけですが
フィールドGの設定で既出データを得るためオプションで次の式「Case ( Get ( レコード番号 ) = 1;1;ExecuteSQL ( "select \"a1\" from \"作業シート\" ";"";""))」で計算値を既存値の置換えチェックで設定・・・ここでポイントは、最初の新規レコード作成時にはダミーとして1を入力させることです。
全くアプローチの違う考え方です。
作業場所のレイアウトに、作業員一覧(全員)のポータルを表示しておき、その各行にチェックボックスをおきます。それをチェックすれば、その作業場所のスケジュールが入力できる、という動きです。ちょうど、焼き鳥屋さんのオーダー用紙みたいな感じです。
作業員がある程度多くなると、この方が作業は楽でしょう。
https://www.dropbox.com/scl/fi/7sr0xplt … zifme&dl=0
Offline
チポ様
koko009様
Shin様
皆様ありがとうございます。
選択する作業員は20人強です。サンプルも確認いたします!全て試してみたいと思います。
Offline
[ Generated in 0.006 seconds, 9 queries executed - Memory usage: 556.48 KiB (Peak: 579.35 KiB) ]