Condividi tramite


Utilizzo di proprietà di campo estese per un database di Analysis Services

Data aggiornamento: 14 aprile 2006

L'estensione per l'elaborazione dati di SQL Server Analysis Services supporta le proprietà di campo estese. Le proprietà di campo estese sono proprietà aggiuntive rispetto alle proprietà di campo Value e IsMissing, disponibili nell'origine dei dati e supportate dall'estensione per l'elaborazione dati. Le proprietà estese non vengono visualizzate nel riquadro Set di dati all'interno dell'insieme di campi di un set di dati del report. È possibile includere valori di proprietà di campo estese in un report scrivendo espressioni mediante l'insieme globale Fields nelle quali essi sono specificati per nome.

Le proprietà estese includono proprietà predefinite e proprietà personalizzate. Le proprietà predefinite sono comuni a più origini dei dati, le quali sono mappate a nomi di proprietà di campo specifiche e risultano accessibili per nome tramite l'insieme globale Fields. Le proprietà personalizzate vengono definite per ogni provider di dati ed è possibile accedervi tramite l'insieme globale Fields solo tramite la sintassi che utilizza il nome della proprietà estesa come stringa.

Quando si utilizza l'interfaccia grafica di Progettazione query MDX di Analysis Services per definire la query, a quest'ultima viene automaticamente aggiunto un insieme di proprietà delle celle e delle dimensioni. Nel report è possibile utilizzare solo le proprietà estese specificatamente elencate nella query MDX. A seconda del report, potrebbe essere opportuno modificare il testo del comando MDX in modo che includa altre proprietà personalizzate o delle dimensioni definite nel cubo. Per ulteriori informazioni sui campi estesi disponibili nelle origini dei dati di Analysis Services, vedere Creazione e utilizzo di valori di proprietà (MDX).

Utilizzo delle proprietà di campo in un report

Le proprietà di campo estese includono proprietà predefinite e proprietà specifiche del provider di dati. Le proprietà di campo non vengono visualizzate nell'elenco dei campi della finestra Set di dati, anche se sono incluse nella query generata per un set di dati e pertanto non è possibile trascinarle nel layout del report. È invece possibile trascinare il campo nel report e quindi modificare la proprietà Value del campo impostando la proprietà che si desidera utilizzare.

Per fare riferimento a una proprietà estesa non predefinita, utilizzare la sintassi seguente in un'espressione:

  • Fields!FieldName("PropertyName")

Proprietà dei campi predefinite

Nella maggior parte dei casi, le proprietà di campo predefinite si applicano a misure, livelli o dimensioni. Una proprietà dei campi predefinita deve avere un valore corrispondente archiviato nell'origine dei dati di Analysis Services. Se non esiste un valore o se si specifica una proprietà dei campi solo di misura, ad esempio per un livello, la proprietà restituisce un valore Null.

Per fare riferimento a una proprietà predefinita da un'espressione, utilizzare uno dei due tipi di sintassi seguenti:

  • Fields!FieldName.PropertyName
  • Fields!FieldName("PropertyName")

Nella tabella seguente viene illustrato un elenco di proprietà di campo predefinite che è possibile utilizzare.

Proprietà Tipo Descrizione o valore previsto

Value

Object

Specifica il valore dei dati del campo.

IsMissing

Boolean

Indica se il campo è stato trovato nel set di dati risultante.

UniqueName

String

Restituisce il nome completo di un livello. Il valore della proprietà UniqueName per un dipendente potrebbe ad esempio essere [Employee].[Employee Department].[Department].&[Sales].&[North American Sales Manager].&[272].

BackgroundColor

String

Restituisce il colore di sfondo definito nel database per il campo.

Color

String

Restituisce il colore di primo piano definito nel database per l'elemento.

FontFamily

String

Restituisce il nome del tipo di carattere definito nel database per l'elemento.

FontSize

String

Restituisce le dimensioni in punti del tipo di carattere definito nel database per l'elemento.

FontWeight

String

Restituisce lo spessore del carattere definito nel database per l'elemento.

FontStyle

String

Restituisce lo stile del tipo di carattere definito nel database per l'elemento.

TextDecoration

String

Restituisce la formattazione di testo speciale definita nel database per l'elemento.

FormattedValue

String

Restituisce un valore formattato per una misura o una cifra chiave. La proprietà FormattedValue della misura Sales Amount Quota restituisce, ad esempio, un formato valuta come $1,124,400.00.

Key

Object

Restituisce la chiave per un livello.

LevelNumber

Integer

Per gerarchie padre-figlio, restituisce il numero del livello o della dimensione.

ParentUniqueName

String

Per gerarchie padre-figlio, questa proprietà restituisce un nome completo del livello padre.

Le proprietà di campo predefinite vengono visualizzate in IntelliSense nell'editor di espressioni quando si immette la sintassi di un campo. Per ulteriori informazioni, vedere Utilizzo di insiemi Global nelle espressioni (Reporting Services).

[!NOTA] Sono disponibili valori per queste proprietà di campo solo se l'origine dei dati, ad esempio il cubo di Analysis Services, fornisce tali valori quando il report viene eseguito e vengono recuperati i dati per i relativi set di dati. È quindi possibile fare riferimento a tali valori delle proprietà di campo in qualsiasi espressione utilizzando la sintassi descritta di seguito. Poiché, tuttavia, questi campi sono specifici del provider di dati in uso, eventuali modifiche apportate a tali valori non vengono salvate con la definizione del report.

Proprietà estese di esempio

Per illustrare le proprietà estese, la query MDX seguente e il relativo set di risultati includono diverse proprietà del membro disponibili da un attributo delle dimensioni definito per un cubo. Le proprietà del membro incluse sono MEMBER_CAPTION, UNIQUENAME, Properties("Day Name"), MEMBER_VALUE, PARENT_UNIQUE_NAME e MEMBER_KEY.

La query MDX viene eseguita sul cubo AdventureWorks nel database AdventureWorks DW disponibile tra i database di esempio AdventureWorks.

WITH MEMBER [Measures].[DateCaption] 
      AS '[Date].[Date].CURRENTMEMBER.MEMBER_CAPTION' 
   MEMBER [Measures].[DateUniqueName] 
      AS '[Date].[Date].CURRENTMEMBER.UNIQUENAME' 
   MEMBER [Measures].[DateDayName] 
      AS '[Date].[Date].Properties("Day Name")' 
   MEMBER [Measures].[DateValueinOriginalDatatype] 
      AS '[Date].[Date].CURRENTMEMBER.MEMBER_VALUE' 
   MEMBER [Measures].[DateParentUniqueName] 
      AS '[Date].[Date].CURRENTMEMBER.PARENT_UNIQUE_NAME' 
   MEMBER [Measures].[DateMemberKeyinOriginalDatatype] 
      AS '[Date].[Date].CURRENTMEMBER.MEMBER_KEY' 
SELECT {
   [Measures].[DateCaption], 
   [Measures].[DateUniqueName], 
   [Measures].[DateDayName], 
   [Measures].[DateValueinOriginalDatatype],
   [Measures].[DateParentUniqueName],
   [Measures].[DateMemberKeyinOriginalDatatype]
   } ON COLUMNS , [Date].[Date].ALLMEMBERS ON ROWS 
FROM [Adventure Works]

Quando si esegue la query in un riquadro di query MDX, si ottiene un set di risultati costituito da 1158 righe. Le prime quattro righe sono illustrate nella tabella sottostante.

DateCaption DateUniqueName DateDayName DateValueinOriginalDatatype DateParentUniqueName DateMemberKeyinOriginalDatatype

All Periods

[Date].[Date].[All Periods]

(null)

(null)

(null)

0

01.07.01

[Date].[Date].&[1]

Sunday

7/1/2001

[Date].[Date].[All Periods]

1

02.07.01

[Date].[Date].&[2]

Monday

7/2/2001

[Date].[Date].[All Periods]

2

03.07.01

[Date].[Date].&[3]

7/3/2001

[Date].[Date].[All Periods]

3

Le query MDX predefinite generate mediante Progettazione query MDX in modalità grafica includono solo MEMBER_CAPTION e UNIQUENAME per le proprietà delle dimensioni. Per impostazione predefinita, tali valori sono sempre di tipo String.

Se è necessaria una proprietà del membro nel tipo di dati originale, è possibile includere un'ulteriore proprietà MEMBER_VALUE modificando l'istruzione MDX predefinita in Progettazione query standard. Nella semplice istruzione MDX seguente, MEMBER_VALUE è stata aggiunta all'elenco delle proprietà delle dimensioni da recuperare.

SELECT NON EMPTY {[Measures].[Order Count]} ON COLUMNS, 
NON EMPTY { ([Date].[Month of Year].[Month of Year] ) } 
DIMENSION PROPERTIES 
  MEMBER_CAPTION, MEMBER_UNIQUE_NAME, MEMBER_VALUE ON ROWS 
FROM [Adventure Works]
CELL PROPERTIES 
  VALUE, BACK_COLOR, FORE_COLOR, 
  FORMATTED_VALUE, FORMAT_STRING, 
  FONT_NAME, FONT_SIZE, FONT_FLAGS

Le prime quattro righe visualizzate nel riquadro risultati MDX sono illustrate nella tabella seguente.

Month of Year Order Count

January

2,481

February

2,684

March

2,749

April

2,739

Sebbene le proprietà facciano parte dell'istruzione MDX SELECT, non sono incluse nelle colonne del set di risultati. I dati sono tuttavia disponibili per un report mediante la funzionalità delle proprietà estese. Nel riquadro risultati di una query MDX di SQL Server Management Studio è possibile fare doppio clic sulla cella per visualizzarne i relativi valori delle proprietà, se impostati nel cubo. Se si fa doppio clic sulla prima cella Order Count contenente 1,379, verrà visualizzata una finestra popup con le proprietà della cella seguenti:

Proprietà Valore

CellOrdinal

0

VALUE

2481

BACK_COLOR

(null)

FORE_COLOR

(null)

FORMATTED_VALUE

2,481

FORMAT_STRING

#,#

FONT_NAME

(null)

FONT_SIZE

(null)

FONT_FLAGS

(null)

Se si crea un set di dati del report con questa query e lo si associa a una tabella, sarà possibile visualizzare la proprietà VALUE predefinita per un campo, ad esempio =Fields!Month_of_Year!Value. Se si imposta questa espressione come espressione di ordinamento per la tabella, la tabella verrà ordinata alfabeticamente in base al mese poiché il tipo di dati predefinito del campo Value è String. Per ordinare la tabella in modo che i mesi si trovino nell'ordine di successione nell'anno, con gennaio primo e dicembre ultimo, utilizzare l'espressione seguente:

=Fields!Month_of_Year("MEMBER_VALUE")

In questo modo i valori del campo verranno ordinati in base al tipo di dati integer originale dell'origine dei dati.

Vedere anche

Riferimento

Utilizzo di insiemi Global nelle espressioni (Reporting Services)

Concetti

Definizione di set di dati del report per dati multidimensionali e di stima di data mining di Analysis Services
Definizione di set di dati del report per dati multidimensionali da un sistema SAP NetWeaver BI

Altre risorse

Espressioni di Reporting Services

Guida in linea e informazioni

Assistenza su SQL Server 2005

Cronologia modifiche

Versione Cronologia

12 dicembre 2006

Nuovo contenuto:
  • Aggiunta dell'esempio relativo a MEMBER_VALUE.

14 aprile 2006

Contenuto modificato:
  • Aggiunta di esempi e aggiornamento del contenuto.