Svaki put kad korisnik pokuša pokrenuti analizu, Oracle Analytics pozvat će funkciju validateAnalysisCriteria. Možete prilagoditi validateAnalysisCriteria radi provjere valjanosti i blokiranja upita temeljem vlastitih specifičnih kriterija. Ako funkcija vrati vrijednost true, upit će se izvršiti. Ako funkcija vrati false ili prikaže poruku, upit će biti blokiran.
Npr., u nastavku je ogledni kôd JavaScript programa po nazivu 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;
}
Ako funkcija vrati bilo što drugo osim false, kriteriji će se smatrati valjanima i analiza će se izvršiti. Funkcija služi i za provjeru valjanosti kriterija operacija za pregled i spremanje.