Я заметил, что вы пытаетесь использовать getElementById
;это не поддерживается для клиентского JavaScript.Вместо этого есть пользовательский API, который вы должны использовать
. Вы можете получить текущий Grid Control view
, используя следующее
// Remember when configuring this webresource to enable passing Execution Context
function myCustomGridAction(executionContext)
{
// Use executionContext to retrieve FormContext
var formContext = executionContext.getFormContext();
// use the formContext to access the particular Grid
var gridContext = formContext.getControl("myGridId");
// use the gridContext to get the current View
var viewSelector = gridContext.getViewSelector();
// use the viewSelector to get the current view
var view = viewSelector.getCurrentView();
// view contains the following properties
// the View's object type code (Saved Query = 1039) or (User Query (4230)
console.log(view.entityType);
// the ID of the view
console.log(view.id);
// the Name of the view
console.log(view.name)
}
Дополнительная информация здесь
ПРИМЕЧАНИЕ : если элемент управления подсетки не настроен для отображения селектора представления, вызов этого метода для объекта viewSelector вызовет ошибку.
ЕслиВы хотите, чтобы XML, который использует представление, немного отличался
// Remember when configuring this webresource to enable passing Execution Context
function myCustomGridAction(executionContext)
{
// Use executionContext to retrieve FormContext
var formContext = executionContext.getFormContext();
// use the formContext to access the particular Grid
var gridContext = formContext.getControl("myGridId");
// get the XML used to query records displayed in Grid
var xml = gridContext.getFetchXml();
}