При попытке пользователя запустить анализ Oracle Analytics вызывает функцию validateAnalysisCriteria Можно настроить функцию validateAnalysisCriteria для проверки и блокировки запросов на основе определенных критериев. Если функция возвращает значение true, запрос запускается. Если функция возвращает значение false или отображает сообщение, запрос блокируется.
Например, ниже приведен пример кода для программы JavaScript под названием myblocking.js.
// This is a blocking function. It ensures that users select what
// the designer wants them to.
function validateAnalysisCriteria(analysisXml)
{
// Create the helper object
var tValidator = new CriteriaValidator(analysisXml);
// Validation Logic
if (tValidator.getSubjectArea() != "Sample Sales")
return "Try Sample Sales?";
if (!tValidator.dependentColumnExists("Markets","Region","Markets","District"))
{
// If validation script notifies user, then return false
alert("Region and District are well suited, do you think?");
return false;
}
if (!tValidator.dependentColumnExists("Sales Measures","","Periods","Year"))
return "You selected a measure so pick Year!";
if (!tValidator.filterExists("Sales Measures","Dollars"))
return "Maybe filter on Dollars?";
if (!tValidator.dependentFilterExists("Markets","Market","Markets"))
return "Since you are showing specific Markets, filter the markets.";
var n = tValidator.filterCount("Markets","Region");
if ((n <= 0) || (n > 3))
return "Select 3 or fewer specific Regions";
return true;
}
Если функция возвращает любое другое значение, кроме false, критерии считаются допустимыми и анализ запускается. Функция также используется для проверки критериев для операций предварительного просмотра и сохранения.