1 返信 最新の回答 日時: Dec 5, 2011 8:39 PM ユーザー:TSGalJ

    スクリプト変数に対する書式(色)の設定

    ねこ吉

      概要

      スクリプト変数に対する書式(色)の設定

      製品

      FileMaker Pro

      バージョン

      Pro Advanced 11.0v4

      オペレーティングシステムのバージョン

      MacOS X 10.6.8

      問題の内容

      スクリプト変数に対して、着色する関数を実行したときの結果が、フィールドに対して実行したときの結果と違う。

      問題の再現方法

      (1) グローバールフィールドとして、テーブル::テスト文字列 を作成しておく。
      (2) 以下のようなスクリプトAを実行する。
      フィールド設定[テーブル::テスト文字列;"あいうえおかきくけこ" ]
      フィールド設定[テーブル::テスト文字列;Replace(テーブル::テスト文字列;1;5; TextColor(Middle(テーブル::テスト文字列;1; 5);RGB(0;66;255)))]
      フィールド設定[テーブル::テスト文字列;Replace(テーブル::テスト文字列;1;3; TextColor(Middle(テーブル::テスト文字列;1; 3);RGB(255;0;0)))]
      (3) スクリプトAの2行目で「あいうえお」が青い文字になる。スクリプトの3行目で「あいう」だけが赤い文字になり、「えお」は青いまま。
      (4) 以下のようなスクリプトBを実行する。
      変数を設定[$テスト文字列;値:"あいうえおかきくけこ"]
      変数を設定[$テスト文字列;値:;Replace($テスト文字列;1;5; TextColor(Middle($テスト文字列;1; 5);RGB(0;66;255)))]
      変数を設定[$テスト文字列;値:;Replace($テスト文字列;1;3; TextColor(Middle($テスト文字列;1; 3);RGB(255;0;0)))]
      フィールド設定[テーブル::テスト文字列;$テスト文字列]
      (5) 「あいうえお」が赤くなる。

      予想された結果

      スクリプト変数で実行したときの結果が、フィールドで実行したときと同じになってほしい。
      すなわち、再現手順(5)で、「あいう」が赤文字、「えお」が青文字になるべき。

      実際の結果

      スクリプト変数での動作が不自然に思われる。

      表示されたエラーメッセージの正確な内容

      特になし。

      設定情報

      文字列を着色する始点が一致するときのみ発生するようです。
      つまり、
      「あいうえおかきくけこ」で、「あいうえお」を青、「えお」を赤、というように実行したときは期待通りの動作をします。

      対処方法

      書式設定をする場合は、スクリプト変数を使わず、フィールド上で計算するようにしています。

        • 1. Re: スクリプト変数に対する書式(色)の設定
          TSGalJ

          ねこ吉 樣

          拝啓

          このたびは不具合をご報告いただきましてありがとうございました。

          ご投稿いただいた内容にて問題が再現することを確認いたしました。

          Replece 関数の置換文字列の始点が一致されていて、特に1文字目からの場合に再現するようです。

          この情報を開発部門に報告し、改善の参考とさせていただきます。

          現状では、ご投稿のように計算時にフィールドをご利用いただくことが確実かと思われます。

          今後ともファイルメーカー社製品をよろしくお願い申し上げます。

                                            敬具

          TSGalJ

          FileMaker, KK.