Loading

Utilizzo di un campo aggregato per definire il livello di dettaglio in un calcolo tabella

Data pubblicazione: Jul 20, 2023
Descrizione
Quando le partizioni in una vista vengono create tramite un campo aggregato, come un calcolo tabella o un'istruzione IF, e un altro calcolo tabella deve restituire risultati diversi per ciascuna partizione, il campo aggregato non viene visualizzato nelle opzioni Calcola utilizzando per il calcolo tabella.

Ad esempio, se i clienti rientrano in una delle tre categorie "Alto", "Medio" o "Basso", definite dal calcolo seguente:

IF SUM([Vendite]) < 500
THEN "Basso"
ELSEIF SUM([Vendite]) < 5000
THEN "Medio"
ELSE "Alto"
END

[Nome cliente] dovrà essere nella vista affinché questi contenitori vengano calcolati correttamente. Tuttavia, se [Nome cliente] è nella vista, gli indicatori nella vista sono suddivisi per [Nome cliente], il che significa che non avremo un totale delle vendite per ogni categoria.
Risoluzione

Opzione 1:


Racchiudi il calcolo aggregato nell'espressione LOD (Level of Detail) FIXED. Le espressioni FIXED restituiscono sempre risultati non aggregati che possono essere convertiti in dimensioni. La cartella di lavoro di esempio in allegato utilizza l'insieme di dati di esempio di Superstore per illustrare i seguenti passaggi:

  1. Crea un campo calcolato con un nome come "Categorie vendite FIXED" e un calcolo simile al seguente:

    { FIXED [Nome cliente] : [Categorie vendite] }

  2. Sostituisci [Categorie vendite] con [Categorie vendite FIXED] nella vista
  3. Rimuovi [Nome cliente] dalla scheda Indicatori

Opzione 2:


Crea un calcolo che utilizzi la logica originale all'interno e all'esterno del calcolo tabella. La cartella di lavoro di esempio in allegato utilizza l'insieme di dati di esempio di Superstore per illustrare i seguenti passaggi:
 

  1. Crea un campo calcolato con un nome come "Vendite per categorie vendite" e un calcolo simile al seguente:

    IF SUM([Vendite]) < 500
    THEN
    WINDOW_SUM(
    IF SUM([Vendite]) < 500
    THEN SUM([Vendite])
    END
    )
     
    ELSEIF SUM([Vendite]) < 5000
    THEN
     
    WINDOW_SUM(
    IF SUM([Vendite]) < 5000
    THEN SUM([Vendite])
    END
    )
     
    ELSE
     
    WINDOW_SUM(
    IF SUM([Vendite]) >= 5000
    THEN SUM([Vendite])
    END
    )
    END

  2. Trascina [Categorie vendite] nello spazio Righe
  3. Trascina [Nome cliente] in Dettagli sulla scheda Indicatori
  4. Trascina [Vendite per categoria vendite] nello spazio Colonne
  5. Fai clic con il pulsante destro del mouse su [Vendite per categoria vendite] e seleziona Calcola utilizzando > Nome cliente
  6. Tieni premuto CTRL e trascina [Vendite per categoria vendite] dallo spazio Colonne su Etichetta nella scheda Indicatori
  7. Passa a Analisi > Impila indicatori > Disattivato.
Risorse aggiuntive
Il calcolo nell'opzione 2 può sembrare ridondante, ma ogni istruzione IF è necessaria. L'istruzione IF all'interno dell'espressione WINDOW_SUM() limita i dati che vengono sommati in WINDOW_SUM(). In ogni categoria verrà visualizzato il risultato WINDOW_SUM() per qualsiasi categoria. Pertanto, è necessario inserire l'espressione WINDOW_SUM() all'interno di un'altra istruzione IF che restituirà solo il risultato desiderato nella categoria desiderata.


Numero articolo Knowledge

001473424

Allegati

using aggregation as bins.twbx

1205 KB

 
Caricamento
Salesforce Help | Article