Wanneer een gebruiker een analyse probeert uit te voeren, roept Oracle Analytics de functie validateAnalysisCriteria aan. U kunt validateAnalysisCriteria aanpassen zodat er query's worden gevalideerd en geblokkeerd op basis van uw eigen specifieke criteria. Als de functie true retourneert, wordt de query uitgevoerd. Als de functie false retourneert of er een bericht verschijnt, wordt de query geblokkeerd.
Een voorbeeld: het onderstaande is een voorbeeldcode voor een JavaScript-programma genaamd 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;
}
Als de functie iets anders dan false retourneert, worden de criteria als geldig beschouwd en wordt de analyse uitgevoerd. De functie wordt ook gebruikt om criteria voor voorbeeld- en opslagbewerkingen te valideren.