با ارائه Rollup 1 مربوط به محصول Microsoft CRM 2015، امکان استفاده از JavaScriptهای پشتیبانی شده برای Sub-Grid ها نیز به وجود آمد. پیش از آپدیت جدید، تنها روش قابل استفاده Refresh کردن بود، که در نسخه جدید در کنار آن متدهای دیگری نیز به Xrm.Page.ui اضافه شده است. متدهایی مانند getControlType، getParent، Visible، setFocus و Notification از جمله متدهای جدید هستند.
OnLoad Event
در زمان بارگذاری اطلاعات، فیلتر کردن، مرتب کردن و نیز بهشکل دستی قابل فراخوانی است. همچنی میتوان به کمک متدهای addOnLoad و removeOnLoad توابعی را بهشکل پویا کم و زیاد نمود. برای مثال:
Xrm.Page.getControl("Contacts").addOnLoad(<functionname>);
getEntityName
برای به دست آوردن نام موجودیت در Sub-Grid استفاده میشود.
getViewSelector
تمامی Objectهای موجود در بخش انتخاب نما را به دست میدهد.
getSelectedRows
از اینگونه روشها قبلاً در راهکارهایی مانند Ribbon Workbench برای تعریف دکمههای جدید استفاده میشد، که با معرفی متد جدید تعریف دکمهها نیز بسیار راحتتر خواهد شد. به کمک این متد رکوردهای انتخاب شده در Sub-Grid قابل دسترسی خواهند بود.
getTotalRecordCount
از این متد برای به دست آوردن تعداد کل رکوردها در نمای فعلی استفاده نمایید. مثال:
var filteredRecordCount = Xrm.Page.getControl("Contacts").getGrid().getTotalRecordCount();
getId
برای به دست آوردن Id رکود انتخاب شده استفاده نمایید. مثال:
var firstEntityId = Xrm.Page.getControl("Contacts").getGrid().getRows().get(0).getData().getEntity().getId();
setCurrentView
برای تنظیم نما بر روی یک Sub-Grid استفاده میشود. مثال:
var ContactsIFollow = {
entityType: 1039,
id:"{3A282DA1-5D90-E011-95AE-00155D9CFA02}",
name: "Contacts I Follow"
}
Xrm.Page.getControl("Contacts").getViewSelector().setCurrentView(ContactsIFollow);
برای مطالعه سایر متدها میتوانید به این پیوند مراجعه نمایید.