初心者のFileMaker pro Q&A (旧掲示板)

みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。

1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)

You are not logged in.

Announcement

新しい掲示板は、こちら:https://fm-aid.com/forum/t/filemaker


#1 2017-10-14 17:01:32

さと
Member

値一覧でフィールドの値を制限したい

いつもお世話になっております。

値リストを作成したいのですが、フィールドの値を使用 でデータの制限を
かける方法はないでしょうか?

○構成
テーブル:伝票(日付、ユーザーID、部門コード、部門名、品名コード、品名・・・)
      ユーザー(ID、権限、品名表示・・・)
      品名 (部門コード、部門名、品名コード、品名、表示flg・・・)

<品名>テーブルの中には
部門コード、部門名、品名コード、品名、   表示flg
0001    営業  0001   商品1     1
0001    営業  0002   商品2     1
0001    営業  0003   商品3
0001    営業  0004   商品4
0002    製造  0001   品名1
0002    製造  0002   品名2     1
0002    製造  0003   品名3     1
0002    製造  0004   品名4
0003    その他  0001  交通費
0003    その他  0002  経費
0003    その他  0003  その他
0003    その他  0004  打ち合わせ

ここで<伝票>にデータを作成する際に、ログインユーザーの品名表示「1」だった場合は
部門コードのところで値リストを設定して2件のみ表示させたいのです。
<ユーザー><品名>に表示flgでリレーションをしてみたのですがうまくいきません。(すべて表示されます)
リレーションは<伝票><ユーザー>にも張っています。

最終形は、ユーザーによって4パターンの表示をさせたいのですが、1パターンでもうまくいきませんので
表示方法をご教授いただきますようお願いいたします。

Offline

#2 2017-10-14 18:10:16

Shin
Member

Re: 値一覧でフィールドの値を制限したい

説明が全く理解できませんね。
品名表示とは何の事?ユーザー毎に設定してあるという事は、別のユーザーでは同じ商品は表示させない、という意味?
ユーザーは、部門に所属していない?
部門マスター、商品マスターは存在させない?(普通は、それらのマスターを作り、コードだけで管理していく)

各テーブルと各フィールドの説明、運用の内容がもっと必要でしょう。

Offline

#3 2017-10-15 02:48:20

さと
Member

Re: 値一覧でフィールドの値を制限したい

前回の投稿、支離滅裂な文章で申し訳ありません。
リレーション、flgなどは試行錯誤のものなので忘れてください。

現状
・既システム(fmpではない)に取り込むための伝票データをfmpで作成
   (伝票データを作成して、csvにして既システムに取り込み予定)
・現状のテーブル構成(一部)は
            伝票(日付、ユーザーID、部門コード、品名コード、・・・)
            ユーザー(ID、権限、・・・)
            品名 (部門コード、部門名、品名コード、品名、・・・)
               ※前回と変わっている点は、私が勝手にフィールドを作ったものだったので外しました。

       ご指摘の通り、<品名>に関して、部門マスター、商品マスターに分けるべきとは思いますが
       既システムからエクスポートし取り込んだもので、そのままの方が良いかと思い、この構成と
       なっています。もしインポート時に簡単に部門マスター、商品マスターに振り分けられる、そのほうが
       うまく動くようになるのであれば変更してもかまいません。
       それから、<品名>の部門コードはあくまでも伝票上のものであり、ユーザーの組織とは関係はありません。
       部門という名称でややこしくしてしまい申し訳ありません。

・伝票データを作成するレイアウトを作っている。

やりたいこと
1.伝票データを作成するレイアウトのところで、部門コードを入力するフィールドをドロップダウンリストで設定
2.ドロップダウンリストで値一覧を設定(<品名>の部門名を表示)
3.ここで、通常では「営業、製造、その他」と表示されると思うのですが、「営業、製造」とだけ表示させたい。
    (最終的には、ユーザーの権限(「1、2、3」というデータ入っています)で、「営業、製造」「営業、製造、その他」「その他」と表示できるようにしたい。)
4.部門を入力したら、品名についてもドロップダウンリストで設定

上記3のところで止まってしまっています。4については3をクリアできれば動的値一覧の仕組みを見てどうにかなるのではないかと
思っているのですが、3でうまくいかないため先に進めません。

前回よりも色々と考えて文章にしましたが、わかりずらい箇所等ありましたらご指摘ください。
自分の能力では限界なのですが、良い方法があるのではと思っていますので、よろしくお願いいたします。

Offline

#4 2017-10-15 08:51:15

Shin
Member

Re: 値一覧でフィールドの値を制限したい

部門マスターを作って、ユーザー権限を追加します。ユーザーとリレーションを張り、動的な値一覧を作ればいいでしょう。
もっと手を抜くなら、ユーザーテーブルに部門という計算フィールドを作り、表示させる部門のテキストを設定します。それを参照し、表示対象にすればいいでしょうね。

一つ疑問は、上の例で、表示フラグが部門を一致していませんが。

Last edited by Shin (2017-10-16 05:52:03)

Offline

#5 2017-10-16 15:00:47

さと
Member

Re: 値一覧でフィールドの値を制限したい

Shin様

回答ありがとうございます。
時間的制約もあり、ユーザーテーブルに計算フィールドを作る方法で作成したところ
表示できました。
ただ、あれもダメこれもダメでぐちゃぐちゃになった結果、偶然に表示されたような
感じですので、Shin様の助言通りなのかは自信がありませんが・・・。

焦っていたこともあるのですが、表示フラグ、読み返すとおかしいですね。
反省します。

まだ先は長いのですが進めていきたいと思います。
ありがとうございました。

Offline

#6 2017-10-16 23:07:08

Shin
Member

Re: 値一覧でフィールドの値を制限したい

Offline

#7 2017-10-17 13:08:13

さと
Member

Re: 値一覧でフィールドの値を制限したい

Shin様

サンプルありがとうございます。
権限と値リストの表示、すごくシンプルなのに考えている通りの動きをしているので
驚きました。
私がやろうとしていたやり方だと複雑かつ無駄にリレーション作成してしまっているので
こちらも参考にさせていただきます。

どうもありがとうございました。

Offline

Registered users online in this topic: 0, guests: 1
[Bot] ClaudeBot

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.008 seconds, 9 queries executed - Memory usage: 566.18 KiB (Peak: 581.2 KiB) ]