9 返信 最新の回答 日時: Jul 9, 2014 2:35 AM ユーザー:ゆう217

    ポータル内のフィールド内容更新について

    ゆう217

      タイトル

      ポータル内のフィールド内容更新について

      フォーラムに投稿

           FMP13初心者です。

           約100レコードあるエクセルデータをインポート。フィルタをかけて使用するレコードのみポータル画面に表示

           しました。

           そのポータル画面中の1つのフィールドだけドロップダウンリストで内容更新したいのですが、ドロップダウンリストが出て

           きません(矢印表示は出ている)。リスト表示タイプの画面では各レコードごとにドロップダウンリストが出たのですが・・・。

           初歩的な質問で申し訳ありませんがご指導お願いいたします。

            

        • 1. Re: ポータル内のフィールド内容更新について
          Shin

               その値一覧は、カスタム値です動的な物でしたら、出てこない時もあり得ます。

          • 2. Re: ポータル内のフィールド内容更新について
            ゆう217

                 shinさん回答ありがとうございます。

                 値一覧はカスタムでテキストを入れてあります。

                 試しに値一覧を外して、普通の入力フィールドにしたのですが、カーソルが出てきません。

                 ポータル画面内での更新の方法をご指導お願いいたします。

            • 3. Re: ポータル内のフィールド内容更新について
              Shin

                   カーソルが入らないのは変ですね。

                   フィールドの指定が正しいか、また、リレーションを通しての内容の変更が可能か、インスペクターの中でフィールに入れる設定になっているか、などの基本設定を見直されては如何でしょう。

              • 4. Re: ポータル内のフィールド内容更新について
                ゆう217

                     shin様、引き続きご回答ありがとうございます。

                     まず、インスペクタはフィールド入力がブラウズ、検索で有効になるようにしています。

                     フィールドのオプションはデータ入力時のみ、と、上書きを許可、にチェックを入れてます。

                     ポータル設定画面では入力の制限項目はない?と思ったので何もしていません。

                     (ポータル画面にはフィルタでヒットした1レコードが正常に表示されています)。

                      

                     で、少し引っかかったのがリレーションです。

                     テーブルA はエクセルの全データを含むものです。

                     ポータル画面を出すために、テーブルB を作成したのですがキーとなる「コード」のみの

                     テーブルです(某マニュアルに記載されていた方法)。

                     A、B 間のリレーションは「コード」間をXです。Xで全レコードを対象にして、ポータルのフィルタで候補

                     を絞りました。Xだと「レコードの作成を許可する」にチェックできません。既存フィールドの更新であれば

                     このリレーションでのチェックは関係ないのでしょうか?

                     また、もしかしてテーブルA をコピーしたダミーのテーブルB を使ってポータルを表示させないといけな

                     いのでしょうか?

                • 5. Re: ポータル内のフィールド内容更新について
                  Shin
                       

                            Xだと「レコードの作成を許可する」にチェックできません。

                       これはその通りで、仕組み上仕方ないでしょう。

                       

                            既存フィールドの更新であれば、このリレーションでのチェックは関係ないのでしょうか?

                       更新は可能です。(検証済み)

                       テーブルAに、更新できない何らかの制限が有るのではないでしょうか。

                       

                            テーブルA はエクセルの全データを含むものです。

                       とは、どういう事でしょうか。

                  • 6. Re: ポータル内のフィールド内容更新について
                    ゆう217

                         shin様、毎回のご回答ありがとうございます。

                         エクセルの全データを含むものです。

                         ↓

                         エクセルの項目を全てフィールドに対応させたものがテーブルA 、としました。

                         に訂正します。丁寧に文章を書くようにします。

                         テーブルB はリレーションしている「コード」のみのテーブルです。

                          

                         入力制限をかけていそうな場所を探しているのですが、まだ見つけられません。

                         ただブラウズ画面の左上に表示されている「レコード」が0になっているのに気がつきました。

                         0レコードなら入力出来なくて当然かもしれません。しかしフォーム画面に設定したポータル画面内には

                         1レコードが表示されています。

                          

                         説明不足あるかもしれませんが、ご指導お願いいたします。

                    • 7. Re: ポータル内のフィールド内容更新について
                      ゆう217

                           shin様。

                           テストでテーブルA をコピーしたテーブルB(自己連結と言うのですか?)でリレーションしてテストしたところ、

                           正常に表示され、正常に入力、更新出来ました。

                           左上のレコード数表示はテーブルAのレコード数が表示されています。フィルタを通した結果のレコード数が表示され

                           るのかと思っていました。

                            

                           しかしshin様の検証済みが気になります。0レコードになった原因、など推測できる点がございましたらご指導をお願い

                           いたします。

                      • 8. Re: ポータル内のフィールド内容更新について
                        Shin

                             ブラウズ画面の左上に表示されている「レコード」が0

                             が原因でしょう。対象レコードが0の場合にでも、Xリレーションのポータルは表示されていますが、内部の編集は出来ません。

                        • 9. Re: ポータル内のフィールド内容更新について
                          ゆう217

                               shin様

                               毎回ご回答ありがとうございました。

                               ご指導の内容を参考に、現状、ポータル画面表示は自己連結で進めていきます。

                               入力させたくない場合はインスペクタで入力制限かけるようにします。

                               ご回答、誠にありがとうございました。

                                

                               また質問したいこともあるので、見かけましたらよろしくお願い致します。