2017-05-23 3 views
1

カスタムフィルタをルックアップフィールドに適用する方法に関するオンライン記事がいくつかあります。私は、親アカウントが特定のアカウントに設定されていることを占めている私は、ルックアップクイック検索ビューに表示するルックアップビューのダイナミックCRMカスタムフィルタが機能しない

function addFilter(accountId) { 
//create a filter xml 
var filter = "<filter type='and'>" + 
    "<condition attribute='parentaccountid' operator='eq' value='"+accountId+"'/>" + 
    "</filter>"; 

//add filter 
Xrm.Page.getControl("my_lookup_field").addCustomFilter(filter); 
} 

...単純でまだ何もあり得ないと考えていました。ただし、このフィルタを適用すると、ビューにアカウントは表示されません。私は本当に失われています。

+0

どのバージョンのCRMを使用していますか? –

+1

'accountId'の値をデバッグして検査しましたか?あなたは* Advanced Find *を期待値で試しましたか? – Filburt

答えて

1

また、addFilter(accountId)関数を呼び出すフォームの読み込み時に関数を実行する必要があります。次のようなものがあります。

function preFilterLookup() { 
    var accountId = Xrm.Page.getAttribute("parentaccountid").getValue(); 

    Xrm.Page.getControl("my_lookup_field").addPreSearch(function() { 
     addFilter(accountId); 
    }); 
} 

これはCRM 2013以上でのみ機能します。

0

まず、このaddPreSearch & addCustomFilterの動作を理解する必要があります。どんなフィルタxmlを渡しても、実行時に定義済みのルックアップビュー定義に追加されます。正しい親アカウントIDの連絡先レコードを確認し、フィルタ&にハードコードしてください。

これは、CRMバージョンに基づいてさまざまな方法で達成できます。 2015年に、MSは「関連レコードフィルタリング」としてコードソリューションを導入しなかった。このオプションが表示されたら、これを試してみてください。

enter image description here

関連する問題