JavaScript zum Blockieren von Analysen auf Kriterienbasis entwickeln

Wenn ein Benutzer eine Analyse ausführt, ruft Oracle Analytics die Funktion validateAnalysisCriteria auf. Sie können validateAnalysisCriteria anpassen, um Abfragen basierend auf Ihren eigenen spezifischen Kriterien zu validieren und zu blockieren. Wenn die Funktion true zurückgibt, wird die Abfrage ausgeführt. Wenn die Funktion false zurückgibt oder eine Meldung anzeigt, wird die Abfrage blockiert.

Der folgende Beispielcode ist für ein JavaScript-Programm namens 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;
}

Wenn die Funktion eine andere Antwort als false zurückgibt, gelten die Kriterien als gültig, und die Analyse wird ausgeführt. Die Funktion wird auch zum Validieren von Kriterien für Vorschau- und Speichervorgänge verwendet.