0
私は、変更された内容とブラウザコンソールに保存する必要がある内容を判断するために、CRMフォームのすべてのダーティフィールドのリストを取得する方法を探していました。これはjavascriptやその他のCRM関連の問題を一般的にデバッグするのに役立ちますコンソールに汚れているCRMフィールドをすべて一覧表示するにはどうすればよいですか?
私はこれをどのように達成できますか?
私は、変更された内容とブラウザコンソールに保存する必要がある内容を判断するために、CRMフォームのすべてのダーティフィールドのリストを取得する方法を探していました。これはjavascriptやその他のCRM関連の問題を一般的にデバッグするのに役立ちますコンソールに汚れているCRMフィールドをすべて一覧表示するにはどうすればよいですか?
私はこれをどのように達成できますか?
あなたは
var attribs = Xrm.Page.data.entity.attributes.get();
からのすべてのフィールドのリストを取得し、今
var filterDirty = attribs.filter(function(elem,index,attribs){
var name = elem.getName();
return (Xrm.Page.getAttribute(name).getIsDirty() === true);
});
filterDirty
としてそれのための機能getIsDirty()
を呼び出すためにあなたの参考のために、次のコードを使用することができますすべての汚れたフィールドの配列を保持し、マップと一緒に印刷することができます。
filterDirty.map(function(e){ console.log(e.getName()); });
注:私はhere
から、上記のどのようなコード全体があなた
// get the correct frame
for(var i=0;i<5;i++) //loop through 0 to 4
if(frames[i].Xrm.Page.ui != undefined) //check if undefined
{
Xrm = frames[i].Xrm; //assign Xrm
console.info("~: Xrm updated with frame " + i + " :~"); //show info
break; //breakout the loop
}
//Query
var attribs = Xrm.Page.data.entity.attributes.get();
//Filter
var filterDirty = attribs.filter(function(elem,index,attribs){
var name = elem.getName();
return (Xrm.Page.getAttribute(name).getIsDirty() === true);
});
//print
filterDirty.map(function(e){
console.log(e.getName());
});
のために、このようになります前には、単にコードの追加ビットがある理由XRMが利用可能であるあなたが見ることができることを確認してください