フォームで、[オプション セット] フィールドの [決定] の値が [却下] に選択されている場合、[却下の理由] を [必須] に設定します。フィールド Decision の OnChange に関連付けられる JS 関数を作成し、Reject Reason フィールドを Required に設定しました。
if (decisionOptionSetValue == 100000006 && decisionOptionSetText == "Reject") {
Xrm.Page.getAttribute("new_rejectionreason").setRequiredLevel("required");
}
これで、上記は問題なく正常に機能しました。
問題は、同じレコードを開いた場合、Reject Reason フィールド (new_rejectionreason) から値を喜んで削除でき、エラーをスローしないことです。なぜなら、私のコードは、Decision オプション セットの値の変更が設定されている場合にのみ起動するからです。 、この場合は発生していません。
では、これらを防ぐためにどこをチェックすればよいでしょうか。
オプション 1 : new_rejectionreason フィールドに OnChange を設定して、値が変更されたかどうかを確認できますか?
オプション 2 : フォームを保存する前に OnSave の一部としてチェックを行い、フォームが保存されないようにし (?)、このフィールドを必須として設定しますか?
オプション 3 : チェックを OnLoad として実行し、フィールド new_rejectionreason を Required に設定しますか
他のオプションはありますか?