【Dynamics CRM】【7.1】IMEモードの入力制御が行われないバグ
Dynamics CRM 2015 Update1(7.1)よりターボフォームが採用されました。 レンダリングが何やら早くなっているようですが、個人的にあまり恩恵を感じられていません……。
そんな中、このターボフォームでバグを発見してしまいました。
概要
Dynamics CRMの入力フィールドには、IME制御を施すことができます。
フォーム上でフィールドにフォーカスが合った際、 アクティブであれば、IMEが日本語入力モードに、 無効であれば、日本語入力はできず、英数字しか入力を受け付けない、などですね。
ただ、これがターボフォームに変わってから、正常に動作しないのです。
無効のフィールドでも、IMEを日本語入力モードにすることができ、 あまつさえ、保存もできてしまうという……。
郵便番号や電話番号などのフィールドでは結構致命的です。
現状の対応方法
一応現状の対応方法としては、レガシーフォームに切り替えることが挙げられます。 この設定にしますと、
[設定]→[管理]→[システムの設定] [全般]タブの[レガシーフォームのレンダリングを使用する]で[はい]にチェックを入れると、IMEが制御される状態になります。
ただ、フォームのレンダリング速度は下がると思われます。
雑感
たぶん、ターボフォームに変わった際に、一部JavaScriptをサポートしません、とMSがおっしゃっていたので、 その一部のJavaScriptにIME制御が入っていた模様ですね。
自ら首を絞めたみたいな感じですが、アメリカとかでは発生しようがないのかなぁと思うので、なんとも言えないところです。