9 返信 最新の回答 日時: Jul 16, 2014 11:22 AM ユーザー:goo

    小数点以下の0標示(条件付き)

    goo

      タイトル

      小数点以下の0標示(条件付き)

      フォーラムに投稿

           お世話になっております。

           早速ですが宜しくお願い致します。

            

           「0.10」と入力した場合「0.10」と、標示させたいです。尚かつ小数点第二位までの表示なのか小数点第三位までの表示なのか、この二選択をボタンか何かで入力する人が選択できる様にしたいです。

           【具体的には】

           「小数点以下桁数」というプルダウンフィールドが1つ有り、値一覧には「0.01」「0.001」の2つが入っています。

           同じテーブル内に数字フィールドが60個近く有ります。

            

           「小数点以下桁数」フィールドの選択が「0.01」のとき

           数字フィールドに「0.01」と表記されている場合は「0.01」

           そして

           「小数点以下桁数」フィールドの選択を「0.001」に変えたとき

           数字フィールドが「0.010」

           と変わるようにしたいのですがどのようにしたら良いでしょうか。逆の場合は切り捨てで桁数を「小数点以下桁数」フィールドと同じにしたいです。

            

           ご教示の程宜しくお願い致します。

        • 1. Re: 小数点以下の0標示(条件付き)
          sago350@未来Switch

               レイアウトにそれぞれに設定されたフィールドを置いて、「次の場合にオブジェクトを隠す」の設定で表示/非表示を切り替えればいいかと。
               (Ver13限定ですが)

               2パターンなら、この方法が楽そうですが、パターンが多いと計算フィールドで作った方が楽の場合もありますね。

          サンプルファイル

          • 2. Re: 小数点以下の0標示(条件付き)
            Shin

                 Int ( 数値 ) & "." & Right ( "0000" & Int ( Mod ( 数値 ; 1 ) / 桁数 ) ;  - Log ( 桁数 ) )

                 という計算フィールドで可能です。

            • 3. Re: 小数点以下の0標示(条件付き)
              goo

                   sago35さん

                   御連絡有り難うございます。

                   サンプルファイル拝見させて頂きました。

                   とても参考になります!

                    

                   shinさん

                   御連絡有り難うございます。

                   頂いたアドバイスを試してみたのですが、上手く行かずもう少しアドバイスを頂ければ助かります。

                   初歩的な質問で申し訳ないのですが、

              Int ( 数値 ) & "." & Right ( "0000" & Int ( Mod ( 数値 ; 1 ) / 桁数 ) ;  - Log ( 桁数 ) )

              数値→フィールド

              桁数→0.001であれば「3」

              ということで宜しいのでしょうか?

                   また、「0.001」「0.01」の桁数の変更はどのように行うことになるのでしょうか?。

                   どうぞ引き続きアドバイスの方を宜しくお願い致します。

              • 4. Re: 小数点以下の0標示(条件付き)
                sago350@未来Switch

                     そのまま入れればOK

                • 5. Re: 小数点以下の0標示(条件付き)
                  goo

                       sagoさん(shinさん)

                        

                       なるほど!まったく見当違いな事をしていました!

                       ありがとうございます!

                       ちなみに、計算フィールドを使用する場合は「結果」を表示するフィールドと実際に入力する「数値」の2フィールドは必ず必要になってしまうものでしょうか?

                       可能であればふぃ「結果」がでるフィールドに実際にて入力をしたいのですが、その際はsagoさんが教えて下さった方法の方でやるのが良いのでしょうか?

                  • 6. Re: 小数点以下の0標示(条件付き)
                    sago350@未来Switch

                         2フィールド必要になるので、画面的に作るのがラクな方を選べばいいと思います。


                         サンプルファイルのようにすれば出来ますけど、入力したデータの桁が切れてしまうので、状況によってはまずいかも
                         数値が3.1413で、桁が0.001の時には3.141となってしまいます。

                         それでOKならばサンプルファイルの例でいいんじゃないかと。
                         個人的にはデータと表示は分けて考えたいので、計算フィールドを作るか、フィールドをもう一つレイアウトに置くかな。

                    サンプルファイル

                    • 7. Re: 小数点以下の0標示(条件付き)
                      goo

                           sagoさん

                           またまたサンプルを有り難うございます。

                           サンプルでとても助かっております。;;

                           なるほど。そういったことがおきてしまうのですね。

                           どの方法がいいか、いろいろ検討してみます!

                           とても理解しやすかったです!有り難うございます!

                      • 8. Re: 小数点以下の0標示(条件付き)
                        Shin

                             元データを触る事は、可能な限り避けた方が良いと思います。

                             その意味で、表示用の計算フィールドを別に作れば良いのでは。

                             ややこしい事しないで、単に計算フィールドにすれば良いのでは。そのフィールドをクリックすれば、データフィールドに移動する用意しかけておけば宜しいかと思います。

                             https://dl.dropboxusercontent.com/u/9260632/FileMaker/FMTips/forum/forums2ec6668dfe.fp7.zip

                        • 9. Re: 小数点以下の0標示(条件付き)
                          goo

                               shinさん

                               有り難うございます。

                               頂いたサンプルにていろいろと検証させて頂きました。

                               ボタン機能にて入力フィールドに移る、という発想が無かったもので本当に目から鱗で、尚メリットとして元データが残るのはお二人のおっしゃる通りかなり安心感があります。自分がつくっていた他のテーブルにも適用していこうと思います。

                               とても勉強になりました!有り難うございます!