8 返信 最新の回答 日時: Jun 27, 2010 7:31 PM ユーザー:youkazu7777

    レイアウト上の表示に関して

    youkazu7777

      タイトル

      レイアウト上の表示に関して

      フォーラムに投稿

      [生徒テーブル]・氏名,・住所,・選択ID,・…

      [選択テーブル]・ID ,・選択コース ,・価格,・…

       というテーブルがあり,生徒テーブル::選択ID と 選択テーブル;;ID を関連させています

       

      生徒は何を選択するかは特定できないので,選択しているものの明細を別途テーブルにし,

      IDでリレーションして,ポータルで表示するようにしています. 

      当然ながら,表示のイメージは下記の図のようになります.

       

       

       

      しかし,この形式だけだと,だれが「基本コース」や「オプションA」を選択しているかということを

      一覧で見るには適していません.

      そこで,次の図のようなレイアウトを作りたいと思うのですが,ポータルの制約上,横に並べるというのは不可能ですし,

      そもそも,何件関連レコードが発生するかが分からないのだから,レイアウトを用意するのもムリだと自分的には考えました.

      ですが,やはり現場ではこういう要求が発生する場面もある考え,もしかしたら何らかの方法はあるのかと思った次第です.

       

       

      なにかいい方法はないでしょうか.

      もし,ムリならばムリということで,別の方法を考えようと思いますが,その場合は,生徒テーブル自体に選択しているものを記録する別のフィールドを用意する必要が出てきそうであまりスマートではなくなってしまいます..

       

      できれば,データの構造はこのまま行きたいというのがあります・・・

      よろしくお願いします. 

       

      にyoukazu7777により編集されたメッセージ

        • 1. Re: レイアウト上の表示に関して
          Hiro
            

          生徒テーブル側で、繰り返し計算フィールドにその関連・選択コースを算出、

          これを表形式で表示されては如何でしょう。

           

          例えば、

          aaaさんの関連・選択コースは、

            [基本コース]、[オプションA]

          List(選択テーブル::選択コース)の結果は、

            [基本コース]

            [オプションA]

          なので、

          GetValue(List(選択テーブル::選択コース); Get(計算式繰り返し位置番号))の繰り返し計算フィールドの結果、

            |[基本コース]|[オプションA]|||

          を得て、これを表形式で表示します。

          にHiroにより編集されたメッセージにHiroにより編集されたメッセージ
          • 2. Re: レイアウト上の表示に関して
            youkazu7777
              

            Hiro様

             

            ありがとうございます.

            マップの件が終わってないのに次から次へと質問して恐縮です^^;(やってると次々と問題にぶちあたるもんで・・)

             

            おっしゃる件はすぐに理解できました.

            ありがとうございます.

             

            ところで, これは関連レコードを作成した順にしたがって,繰り返しフィールドに表示されるわけですが,

            これを,特定の何番目かに,特定の項目が表示されるようにすることはできるのでしょうか. 

            • 3. Re: レイアウト上の表示に関して
              Hiro
                

              > 特定の何番目かに,特定の項目が表示されるようにすることはできるのでしょうか

               

              時間割などによく利用するやり方が良さそうです、

              表題一覧を表示する繰り返しフィールドを別途作り、

              選択コースと表題を比較して、あればその項目にその表題=コース名を書き込みます。

               

              例えば、コース選択はカスタム値一覧から入力しているとすれば、

              表題一覧を繰り返し計算グローバルフィールドにして、(dddさんは)

              ・表題一覧=GetValue(ValueListItems(Get(ファイル名);"値一覧名");Get(計算式繰り返し位置番号))

                計算値: |基本コース|オプションA|オプションB|オプションC|オプションD|・・・|オプションN|

              ・選択一覧=Case(ValueCount(FilterValues(List(選択テーブル::選択コース);表題一覧));表題一覧)

                計算値: |基本コースオプションAオプションB|オプションC|オプションD|・・|オプションN

              • 4. Re: レイアウト上の表示に関して
                youkazu7777
                  

                Hiro様

                 

                ありがとうございます.

                試してみたのですがうまくいきませんでした.

                 

                GetValue(ValueListItems(Get(ファイル名);"コース一覧");Get(計算式繰り返し位置番号))

                 

                式を監視すると,この関数が”00"と返しているようです.

                なぜでしょうか? 

                • 5. Re: レイアウト上の表示に関して
                  Hiro
                    

                  あれ、出来ませんか?

                  単に、値一覧の内容を繰り返しフィールドの各項目に入れているだけなのですが、

                   

                  折り合えずダメなら、単純にテキストフィールド(グローバル)に変更して、計算値と同じ一覧を手入力して貰っても良いです。

                   入力値: |基本コース|オプションA|オプションB|オプションC|オプションD|・・・|オプションN|

                  • 6. Re: レイアウト上の表示に関して
                    youkazu7777
                      

                    Hiro様

                     

                     

                    できました.値一覧の名前が間違っていたみたいです^^;

                     

                    ・・・しかし,どうもグローバルフィールドの挙動に納得がいかない部分が.

                    最初に設定したとき,コース名の並び順がむちゃくちゃだったので,これを番号順に並べようとして

                    値一覧をコードの値でソートしたりいろいろ指定するも,指定の番号にならない.

                    ならば,コードそのものの値一覧を使えばとおもって,別の値一覧をせっていするも先頭の「001」だけしか

                    代入されず,2番目以降がうんともすんとも・・

                     

                    サーバーを再起動などごちゃごちゃやってるうちに,最初に設定した値一覧の並べ替えが反映されたのか,希望した並び順にいつの間にかなっていましたが,全く原因が分かりませんでした.

                     

                    もひとつ腑に落ちないところはありますが,とりあえずできました.ありがとうございました. 

                    • 7. Re: レイアウト上の表示に関して
                      youkazu7777
                        

                      うーん・・・もしかしたらバグなのかもしれないです.

                       

                      数式の監視では,結果はちゃんと帰っているのですが,

                      フィールドに入れた数式の挙動が変です. 

                      • 8. Re: レイアウト上の表示に関して
                        youkazu7777
                           サーバースクリプトでフィールド内容を書き換えることにしました.