onchangeイベントを“ locked”に追加しますDynamics CRM 4のフィールド

StackOverflow https://stackoverflow.com/questions/1209845

質問

Dynamics CRM 4をカスタマイズしています。ケースエンティティのフォームを変更して、ナレッジベース記事の参照フィールド(kbarticleid_ledit)のonchangeイベントにJavaScriptを追加したいと思います。ただし、そのフィールドの[プロパティの変更]をクリックすると、エラーメッセージが表示されます。

このフィールドはロックされたセクションに属し、プロパティを変更できません。

どうすればこれを回避して編集できますか? 記事ビューのカスタマイズに類似した回避策がありますか?または、何らかの方法でDBをハッキングして「ロック解除」することもできます。そのフィールド?

役に立ちましたか?

解決 2

OK、私はそれを考え出した-他の誰かが同じ問題に遭遇した場合に備えてここに投稿する。 CaseエンティティのカスタマイズをXMLにエクスポートし、XMLを編集する必要があります。 「ロック解除」できます。セクションをXMLで対応する要素を見つけて、属性 locklevel =" 1" locklevel =" 0" に変更します。

ただし、ロックを解除しても、onchangeイベントコードの編集には役立ちませんでした。 CRMにはそのイベント用のコードが既にあり、UIにコードを追加すると、2番目の「onchange」が追加されました。 XMLのイベント!そのため、XMLのコードを(適切なXMLエンコードを使用して)手動で編集し、カスタマイズを再インポートして公開する必要がありました。

他のヒント

onloadイベントからonchangeコードを追加することもできます。たとえば、ロックされたフィールドのIDがlockedFieldだった場合、次のようなことができます。

var field = crmForm.all.lockedField;
if (field)
    field.attachEvent('onchange', onChangeEventHandler);

function onChangeEventHandler()
{
    // do something 
}
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top