Funzioni vista analitica

La classe Adp.Analytics fornisce la sintassi e le descrizioni delle classi, dei metodi, degli attributi e dei parametri dell'interfaccia di programmazione dell'applicazione allo strumento Viste analitiche della suite di strumenti Data Studio. Se la vista analitica richiesta non esiste (eccetto la creazione), tutte le funzioni restituiscono il messaggio Analytic view does not exist.

Procedura elenco di nomi vista analitica

Restituisce l'elenco dei nomi delle viste analitiche.

Analytics.get_list(owner)

Parametri:

  • Proprietario: questo campo visualizza il proprietario del database link. Se manca questo campo, lo strumento utilizza il proprietario dello schema corrente.

Esempio

In questo esempio è possibile visualizzare l'elenco delle viste analitiche.

Analytics.get_list()
 
{
  "nodes": [
    {
      "label": "ANALYTIC_VIEW1",
      "type": "ANALYTIC_VIEW",
      "id": "\"ADMIN\".\"DB\".\"ANALYTIC_VIEW1\"",
      "data": {
        "name": "ANALYTIC_VIEW1",
        "namespace": "DB",
        "path": "\"DB\".\"ANALYTIC_VIEW1\"",
        "schema": "ADMIN",
        "classifications": {
          "CAPTION": "Analytic View1",
          "DESCRIPTION": "Analytic View1"
        },
        "application": "DATABASE",
        "created": "2021-06-09T14:19:06Z",
        "updated": "2021-06-15T10:23:07Z"
      }
    },...
    ]
}

Procedura di creazione della vista analitica

Creare la vista analitica in base all'elenco di tabelle dimensione e all'elenco di misure.

Sintassi

Analytics.create(fact_table, dimensions, measures, av_name,
                        owner)

Parametri:

  • fact_table: il nome della tabella fact.
  • dimensioni è la lista di nomi di tabella delle dimensioni. Se la tabella dimensioni non dispone di join con alcuna tabella fact, restituisce l'errore.
  • misure: questo campo specifica la lista delle colonne della fact table che verranno utilizzate per l'aggregazione.
  • av_name: questo campo è un nome di vista analitica. Se questo parametro non è presente, utilizzare il nome predefinito della vista analitica in base al nome della tabella fact "<fact_table>_AV".
  • Proprietario: questo campo visualizza il proprietario della vista analitica. Se manca questo campo, lo strumento utilizza il proprietario dello schema corrente.

Esempio

In questo esempio è possibile creare la vista analitica in base a quattro dimensioni e due misure:

tables = ["CHANNELS","PRODUCTS","PROMOTIONS","TIMES"]
measures = [ 'UNIT_COST', 'UNIT_PRICE']
adp.Analytics.create('COSTS', tables, measures)
 
// Output
 
success

Procedura di creazione automatica della vista analitica

Creare la vista analitica in base alla fact table. Le misure vengono selezionate automaticamente in base alle colonne della fact table. Le dimensioni vengono selezionate dalle tabelle dimensioni appropriate.

La funzione utilizza il nome predefinito della vista analitica basato sul nome della tabella fact: "<fact_table>_AV".

Sintassi

Analytics.create_auto(fact_table, skip_dimensions,
                      owner)

Parametri:

  • fact_table: il nome della tabella fact.
  • skip_dimensions: se il valore del campo è True, le colonne della tabella fact vengono selezionate come dimensioni. Il valore predefinito è False.
  • Proprietario: questo campo visualizza il proprietario della vista analitica. Se manca questo campo, lo strumento utilizza il proprietario dello schema corrente.

Esempio

In questo esempio è possibile creare la vista analitica.
Analytics.create_auto('COSTS', False) // Output success

Procedura di eliminazione della vista analitica

Elimina la vista analitica con il nome specificato

Sintassi

Analytics.drop(model_name, delete_objects)

Parametri:

  • nome_modello: il nome della vista analitica.
  • delete_objects: se il valore del campo è True, tutti gli oggetti correlati (dimensioni e misure) verranno eliminati. Il valore predefinito è False.

Esempio

In questo esempio è possibile eliminare la vista analitica:

adp.Analytics.drop('COSTS_AV', True)

Procedura di compilazione della vista analitica

Compilare la vista analitica. Ottimizza la query per recuperare in modo efficiente i dati dalle tabelle fact.

Sintassi
Analytics.compile(av_name, owner)

Parametri:

  • av_name: il nome della vista analitica.
  • Proprietario: questo campo visualizza il proprietario della vista analitica. Se manca questo campo, lo strumento utilizza il proprietario dello schema corrente.

Esempio

In questo esempio è possibile compilare la vista analitica:

adp.Analytics.compile('COSTS_AV')

Procedura di recupero elenco misure

Recupera l'elenco delle misure dalla vista analitica specificata.

Sintassi

Analytics.get_measures_list(av_name, owner)

Parametri:

  • av_name: il nome della vista analitica.
  • Proprietario: questo campo visualizza il proprietario della vista analitica. Se manca questo campo, lo strumento utilizza il proprietario dello schema corrente.

Esempio

In questo esempio è possibile ottenere l'elenco delle misure della vista analitica.

adp.Analytics.get_measures_list('COSTS_AV')
 
// Output
 
{
  "nodes": [
    {
      "label": "UNIT_COST",
      "type": "MEASURE",
      "id": "\"ADMIN\".\"DB\".\"COSTS_AV\".\"MEASURE\".\"UNIT_COST\"",
      "data": {
        "name": "UNIT_COST",
        "namespace": "MEASURE",
        "path": "\"DB\".\"COSTS_AV\".\"MEASURE\".\"UNIT_COST\"",
        "schema": "ADMIN",
        "application": "DATABASE",
        "created": "2022-08-16T17:04:08Z",
        "updated": "2022-08-16T17:04:08Z"
      }
    },...
    ]
}

Ottieni procedura anteprima

Restituisce i metadati della vista analitica (gerarchie (nome e didascalia) e delle misure), i dati aggregati e la query SQL per la selezione dei dati dalla vista analitica.

Sintassi

Analytics.get_data_preview(entity_name, owner)

Parametri:

  • nome_entità: il nome della vista analitica.
  • Proprietario: questo campo visualizza il proprietario della vista analitica. Se manca questo campo, lo strumento utilizza il proprietario dello schema corrente.

Esempio

In questo esempio è possibile ottenere i dati di anteprima della vista analitica:

adp.Analytics.get_data_preview('COSTS_AV')
 
// Output
 
{
  "av": "COSTS_AV",
  "caption": null,
  "description": null,
  "metadata": {
    "hierarchies": [
      {
        "name": "CHANNEL_ID",
        "caption": "CHANNEL_ID"
      },
      {
        "name": "PROD_ID",
        "caption": "PROD_ID"
      }
    ],
    "measures": [
      {
        "name": "UNIT_COST",
        "caption": "UNIT_COST"
      },
      {
        "name": "UNIT_PRICE",
        "caption": "UNIT_PRICE"
      }
    ]
  },
  "data": [...],
  "SQL": "..."
}

Procedura recupero metadati

Restituisce i metadati dettagliati della vista analitica.

Sintassi

Analytics.get_metadata(av_name, owner)

Parametri:

  • av_name: il nome della vista analitica.
  • Proprietario: questo campo visualizza il proprietario della vista analitica. Se manca questo campo, lo strumento utilizza il proprietario dello schema corrente.

Restituisce i metadati dettagliati della vista analitica nello schema del proprietario (se manca o è impostato su Nessuno, utilizzare lo schema corrente).

Esempio

In questo esempio è possibile ottenere i metadati della vista analitica.

adp.Analytics.get_metadata('COSTS_AV')

Procedura nomi dimensione

Restituisce l'array dei nomi delle dimensioni della vista analitica

Sintassi

Analytics.get_dimension_names(av_name)

Parametri:

  • av_name: il nome della vista analitica.

Esempio

In questo esempio è possibile ottenere i nomi delle dimensioni della vista analitica.

adp.Analytics.get_dimension_names('COSTS_AV')

Procedura nome tabella fact

Restituisce il nome della fact table della vista analitica.

Sintassi
Analytics.get_fact_table_name(av_name)

Parametri:

  • av_name: il nome della vista analitica.

Esempio

In questo esempio è possibile ottenere il nome della fact table della vista analitica.

adp.Analytics.get_fact_table_name('COSTS_AV')

Procedura di recupero delle classi di errore dalle dimensioni

Restituisce le informazioni sugli errori nella dimensione specificata durante l'analisi della vista analitica. Questo metodo viene utilizzato per verificare che la dimensione della vista analitica non contenga errori. In caso di errore ERROR_COUNT non è 0 e errorData non è vuoto e contiene ERROR_MESSAGE (rappresentazione del testo dell'errore), ERROR_NUMBER (codice di errore Oracle).

Sintassi

Analytics.get_error_classes_from_dim(av_name,
                      dimension)

Parametri:

  • av_name: il nome della vista analitica.
  • dimensione: nome della dimensione.

Esempio

In questo esempio è possibile ottenere il nome delle classi di errore delle dimensioni della vista analitica.

adp.Analytics.get_error_classes_from_dim('COSTS_AV', 'CHANNELS')

Procedura Recupera classi di errore da tabella fatti

Restituisce le informazioni sugli errori nella fact table specificata durante l'analisi della vista analitica. Questo metodo viene utilizzato per verificare che la fact table della vista analitica non contenga errori. In caso di errore, ERROR_COUNT non è 0 e errorData non è vuoto e contiene ERROR_MESSAGE (rappresentazione del testo dell'errore) e ERROR_NUMBER (codice di errore Oracle).

Sintassi

Analytics.get_error_classes_from_fact_tab(av_name,
                      fact_tab)

Parametri:

  • av_name: il nome della vista analitica.
  • fact_table: il nome della tabella fact.

Esempio

In questo esempio è possibile ottenere le classi di errore del nome della fact table della vista analitica.
adp.Analytics.get_error_classes_from_fact_tab('COSTS_AV', 'COSTS')

Restituisce le informazioni sugli errori nella fact table specificata durante l'analisi della vista analitica. Questo metodo viene utilizzato per verificare che la fact table della vista analitica non contenga errori. In caso di errore ERROR_COUNT non è 0 e errorData non è vuoto e contiene ERROR_MESSAGE (rappresentazione del testo dell'errore) e ERROR_NUMBER (codice di errore Oracle).

Procedura report qualità

Restituisce le informazioni sugli errori nella vista analitica specificata da av_name. Questo metodo controlla la tabella dei fatti e le dimensioni della vista analitica. In caso di errore, la rappresentazione del testo degli errori è inclusa nel report.

Sintassi

Analytics.quality_report(av_name)

Parametri:

  • av_name: il nome della vista analitica.

Esempio

In questo esempio è possibile ottenere il report qualità della vista analitica.

adp.Analytics.quality_report('COSTS_AV')
 
// Output
 
[
    "Fact table COSTS has no errors",
    "Dimension COSTS_AV_CHANNELS_AD has no errors",
    "Dimension COSTS_AV_PRODUCTS_AD has no errors",
    "Dimension COSTS_AV_PROMOTIONS_AD has no errors",
    "Dimension COSTS_AV_TIMES_AD has no errors"
]

Procedura recupero dati

Restituisce i dati aggregati dalla vista analitica. Il valore restituito è l'elenco dei risultati della query.

Sintassi

Analytics.get_data(levels, column_names, entity_name, hierarchies,
                          measures, where_condition, owner)

Parametri:

  • livelli: il livello della vista analitica.
  • nomi_colonna: l'array di colonne.
  • nome_entità: il nome della vista analitica.
  • gerarchie: l'array delle gerarchie selezionate.
  • misure: l'array di misure.
  • where_condition: è l'array di condizioni, ogni condizione dispone di 4 campi: gerarchia, colonna, operatore e valore.
  • Proprietario: questo campo visualizza il proprietario della vista analitica. Se manca questo campo, lo strumento utilizza il proprietario dello schema corrente.

Esempio

In questo esempio è possibile ottenere il report qualità della vista analitica.

adp.Analytics.get_data(True,
    ["COSTS_AV_PROD_HIER_PROD_ID_ATTR",
     "UNIT_COST",
     "COSTS_AV_PROD_HIER_DEPTH"], 'COSTS_AV',
     ["COSTS_AV_PROD_ID_HIER"],
     ["UNIT_COST", "UNIT_PRICE"],
    [{"hierarchy": "COSTS_AV_PROD_ID_HIER", "column": "LEVEL_NAME", "operator": "=", "value": "ALL:PROD_ID"}])
 
//Output
 
[{"UNIT_COST":808685.68},{"UNIT_COST":213170.06},{"UNIT_COST":16778.02},...},

Procedura query SQL

Restituisce la query SQL utilizzata in get_data.

Sintassi

Analytics.get_sql(levels, column_names, entity_name, hierarchies,
                          measures, where_condition, owner)

Parametri:

  • livelli: il livello della vista analitica.
  • nomi_colonna: l'array di colonne.
  • nome_entità: il nome della vista analitica.
  • gerarchie: l'array delle gerarchie selezionate.
  • misure: l'array di misure.
  • where_condition: è l'array di condizioni, ogni condizione dispone di 4 campi: gerarchia, colonna, operatore e valore.
  • Proprietario: questo campo visualizza il proprietario della vista analitica. Se manca questo campo, lo strumento utilizza il proprietario dello schema corrente.

Esempio

In questo esempio è possibile ottenere SQL per i dati aggregati della vista analitica.

adp.Analytics.get_sql(True,
    ["COSTS_AV_PROD_HIER_PROD_ID_ATTR",
     "UNIT_COST",
     "COSTS_AV_PROD_HIER_DEPTH"], 'COSTS_AV',
     ["COSTS_AV_PROD_ID_HIER"],
     ["UNIT_COST", "UNIT_PRICE"],
    [{"hierarchy": "COSTS_AV_PROD_ID_HIER", "column": "LEVEL_NAME", "operator": "=", "value": "ALL:PROD_ID"})
 
//Output
 
SELECT
  "MEASURES"."UNIT_COST" AS "UNIT_COST"
FROM "ADMIN"."COSTS_AV" HIERARCHIES(
    "PROD_ID"."PROD_ID")
WHERE
  (
    (
      "PROD_ID"."PROD_ID"."LEVEL_NAME" IN ('ALL', 'PROD_ID')
    )
  )