AnsweredAssumed Answered

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

Question asked by ねこ吉 on Oct 17, 2011
Latest reply on Dec 5, 2011 by 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)で、「あいう」が赤文字、「えお」が青文字になるべき。

実際の結果

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

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

特になし。

設定情報

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

対処方法

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

Outcomes