7 返信 最新の回答 日時: Jan 6, 2014 11:42 AM ユーザー:zou8uzo

    大中小分類の別テーブルでの表示(動的な値一覧)

    zou8uzo

      タイトル

      大中小分類の別テーブルでの表示(動的な値一覧)

      フォーラムに投稿

           持ち物リストを作っています。
           閲覧用テーブルと、分類用テーブルが有り、閲覧用と分類用には大中小分類のフィールドを作り、大を部屋、中を家具、小を家具の何段目として整理してます。
           閲覧用と分類用を部屋フィールドでリレーションでつないでます。実際のデータを分類用テーブルに入力して管理します。
            
           分類用テーブルにテーブルオカレンスを2つ作りリレーションで繋いでいます。分類用2と分類用3になります。
           値一覧として、家具、何段目をつくり、フィールドの値を使用して、次のテーブルから関連レコードの値のみ含めるで指定しています。
           値一覧の家具には、分類用::家具として、関連レコードの値は分類2にしてます。値一覧の何段目には、分類用::何段目として、関連レコードの値は分類3にしてます。
            
           分類用テーブルのレイアウトの表形式表示では、大中小分類のフィールドに入れた内容が意図通りに表示されます。
           例えば、リビングにカラーボックスとスチールラックがあり、カラーボックスには上段、中断、下段と設定。スチールラックは一段目、二段目、三段目と設定。それぞれの設定あるほうしか表示されません。
            
           閲覧用のレイアウトで、大(部屋)、中(家具)、小(何段目)分類を表示していくと、部屋に対して、家具は表示されるのですが、家具に対しての何段目かが意図通りに表示されません。
           部屋に対しての家具が表示されるのは、閲覧用テーブルと分類用テーブルが、部屋でリレーションしてて部屋を参照しあってるから。って理解でいます。
           だから、閲覧用テーブルと分類用テーブルが、家具でも参照しあえば表示が上手くいくのかな?と考えました。そうすると、分類用テーブルでは意図通り表示できるのが、分類用テーブル(2013/12/26訂正) 閲覧用テーブルでは正しく家具が選べなくなります。
           部屋 = 部屋
           家具 = 家具
           になっています。
           最初は
           部屋 = 部屋
           だけでした。
            
           以上でおかしなところはわかりませんか?
           2013/12/25(水) 06:19
           <訂正>
           (誤)分類用テーブル →(正)閲覧用テーブルでは正しく家具が選べなくなります。
                2013/12/26(木) 05:01

            

      %E5%A4%A7%E4%B8%AD%E5%B0%8F%E5%88%86%E9%A1%9E%E3%81%AE%E3%83%AA%E3%83%AC%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3.png

        • 1. Re: 大中小分類の別テーブルでの表示(動的な値一覧)
          Shin

               閲覧用のテーブルから、分類用テーブルで、それぞれリレーションを貼っていくといいのでは。

               家具用には、

                閲覧用::部屋=分類用::部屋

               のリレーションでいいですが、何段目には、

                閲覧用::家具=分類用::家具

               または、

                閲覧用::部屋=分類用2::部屋
                閲覧用::家具=分類用2::家具

               という別のリレーションが必要でしょう。

          • 2. Re: 大中小分類の別テーブルでの表示(動的な値一覧)
            zou8uzo
                 お返事ありがとうございます。
                  
                 大事なことを忘れていました。環境は、MacのFMP12です。
                  
                 その方法では、やりたいことができません。最初に私の書いた質問の一部が間違っていたので、そのせいかと思われます。
                 正しくは、
                 >だから、閲覧用テーブルと分類用テーブルが、家具でも参照しあえば表示が上手くいくのかな?と考えました。そうすると、分類用テーブルでは意図通り表示できるのが、閲覧用テーブルでは正しく家具が選べなくなります。
                  
                 画面ショットのように繋いで、今回の質問本文中の値一覧の設定で作ると、そうなるのです。
                  
                 教えていただいた方法だと、リレーションシップの編集では
                           閲覧用::部屋=分類用::部屋
                 AND 閲覧用::家具=分類用::家具
                 で、以下は今までの設定を残して
                         分類用::部屋  =分類用2::部屋
                         分類用2::家具=分類用3::家具
                 となりますよね?。そうつなぐと、それまで閲覧用テーブルで見れていた、家具ですら選択肢に値が出なくなります。
                  
                 または、の提案では、
                         閲覧用::部屋=分類用::部屋
                 のまま、
                           閲覧用::部屋=分類用2::部屋
                 AND 閲覧用::家具=分類用2::家具
                 で、以下は今までの設定を残して
                         分類用2::家具=分類用3::部屋
                 という意味だと理解しました。このとおりだとすれば、閲覧用テーブルの家具は空白になりみれません。分類用テーブルですら、家具の値一覧が空白になります。
                  
                 何が間違ってるのでしょう?
                 また、内容を検証する際は、作りかけのデータを引き継いで直さない方がいいでしょうか?
                  
                 今回、作りかけのデータベースでリレーションと値一覧の設定をいじって色々試してるのですが、一部のレコードでは表示されるが、一部のレコードでは表示されない。という現象が起きています。
                 画面上では確認できない内容が、内部的に保持されていて表示されてしまう?とかあるのでしょうか?。
                 新しく、新規データベースを作って、そこに今回の条件を与えて、レコードにデータを入れるのがいいのでしょうか?。データが多いほうが色々試せていいかと思っています。新たに作り直すのは面倒臭いのですが、どうなんでしょう?。
                  
                 よろしくお願いします。
                 2013/12/26(木) 05:50
            • 3. Re: 大中小分類の別テーブルでの表示(動的な値一覧)
              sago350@未来Switch

                   すいません。あまり内容を読んでないのですが、こんな感じですかね。

              https://www.dropbox.com/s/1i7il9o1nyyyr23/%E5%8B%95%E7%9A%84%E5%80%A4%E4%B8%80%E8%A6%A7.fmp12

              • 4. Re: 大中小分類の別テーブルでの表示(動的な値一覧)
                zou8uzo
                     お返事ありがとうございます。
                      
                     やりたいことができました。
                     参考にした情報とは全然違う、リレーションの繋がれかたに度肝を抜かれました。
                     形をよく見てるうちに、最初に回答いただいた説明も、こうだったのでは?理解できてなかったのでは?とか思いました。違うのかも?。
                     単に色々知らないだけなのでしょうが、意味まではまだわかっていません。
                     ひとまず手持ちのデータをインポートして、希望通りに表示されるのを確認しました。
                      
                     本フォーラムの 大分類、中分類、小分類と下の階層には上の階層で選択した項目に関連し... を参考に、理解しきれない分を検索で、【Filemaker】動的値一覧: もしのまメモ を参考にリレーションや値一覧の設定をしました。
                      
                     じっくり中を見る時間がすぐには取れなさそうなので、後日色々質問の続きをすると思います。その際は、どうかおつきあい願いませんか?。
                     よろしくお願いします。
                     2013/12/26(木) 22:57
                • 5. Re: 大中小分類の別テーブルでの表示(動的な値一覧)
                  zou8uzo
                       改めてありがとうございます。
                        
                       作業するにあたり、分類用テーブルでの作業がしやすいという理由で、最初のリレーションに固執してました。他の方法が考えつかなかったです。
                       あのように繋いでおけば、分類用テーブルでは部屋に対しての、家具、家具に対しての何段目が、分類用テーブル内ではドロップダウンには出て、追加してもそのまま表示され編集しやすかったです。
                       しかし、この方法では、肝心の閲覧用テーブルで表示が出来ませんでした。リレーションと値一覧の理解度合いによると思うのですが、数をこなせば分かってくるものでしょうか?。
                       ポータルの使い方なんかにも関係してくるような気がするのですが、わかってれば悩まずできますか?。
                        
                       いただいたファイルで、idをxでつなぐのは、照合対象を全部からと宣言してるのでしょうか?。管理上のしやすさからですか?。
                       また、このリレーションを外しても希望の動作はしてるようなのですが、規模が大きくなる等の場合、あったほうが作業がしやすくなるといった理由でしょうか?。
                       あるいは動いてるように見えてるけど、ないと不都合がありますか?。この部分が私の頭にはまったく無くて、理由が知りたいのです。
                        
                       私は今後、データベースの管理のリレーションシップの画面にて表示される各々のテーブルの絵を、全てテーブルオカレンス(TO)だと思い、そう呼びたいのですが合ってますか?。理解としてはそうですよね?。
                       値一覧のフィールドの値を指定する画面で出てくるテーブルというのが、データベースの管理のリレーションシップの画面にて表示させてる名前です。
                       名前は違えどテーブル構成は同じです。混乱してるのですが、テーブル定義画面では、リレーションシップ編集画面の名前は出てきません。その同じ画面でテーブルオカレンスのテーブル指定画面でも、当然だと思うのですがテーブル定義したものしか出てきません。
                       このテーブルの指定を間違えると希望通りの表示になりません。だから必要なのでしょうが、どう自分の頭の中で整理してやると分かりやすいのでしょう?。
                        
                       ひとまず。
                       2013/12/31(火) 09:14
                  • 6. Re: 大中小分類の別テーブルでの表示(動的な値一覧)
                    sago350@未来Switch
                         いくつ数をこなせば解ってくるかは解りませんが、何回もやればいつか解ると思います。
                          
                         idをxで繋いでいたのは説明しやすいようにポータルで全データを出したかったからです。
                         ですので、今回のご質問には特に必要ではありません。
                          
                          
                         テーブルについては「ソーステーブル」「テーブルオカレンス」と2つの呼び方があります。
                         リレーションの画面で出てくるテーブルは「テーブルオカレンス」でOKです。
                         テーブルを定義する画面で出てくるのが「ソーステーブル」です。
                         「テーブルオカレンス」は「ソーステーブル」の仮の姿と言うか、ビューというかクエリみたいなものというか、実態の無い存在というか、そういう存在です。
                         FileMakerのリレーションについて説明ついて学習するにあたっては下記書籍が参考になると思います。
                         『FileMaker as a Relational Database リレーショナルデータベースを徹底活用』
                          
                         リレーションを見るときは自分の立ち位置がどこにあるかを考えることが重要かと思います。
                         立ち位置とは、どのテーブルオカレンスが設定されたレイアウトから、どのテーブルオカレンスを見ようとしているか。
                         と、、、どのテーブルオカレンスを起点としているか。です。
                    • 7. Re: 大中小分類の別テーブルでの表示(動的な値一覧)
                      zou8uzo

                           遅くなりましたが、お返事ありがとうございます。

                           紹介いただいた本を読んでるところです。
                           知っとくべきことを知って、ある程度リレーションシップが使いこなせるようになりたいと思います。

                           今回の質問はこれにて終わりとさせていただきます。