DetailPage-MSS-KB

Microsoft Knowledge Base

Identificativo articolo: 2739928 - Ultima modifica: martedì 25 settembre 2012 - Revisione: 1.0

 

In questa pagina

Sintomi

Quando si tenta di eseguire una query di espressioni MDX in Microsoft SQL Server 2012 Analysis Services (SSAS), è possibile che venga visualizzato un messaggio di errore analogo al seguente:
La dimensione '<named set="" alias=""></named>' non trovato nel cubo quando la stringa <named set="" alias=""> </named>, è stato analizzato.

Note
  • "Alias set denominato"è un segnaposto per il nome dinamico definito per la dimensione.
  • La query MDX viene eseguita correttamente in SSAS 2008 R2.

Ad esempio, viene visualizzato il messaggio di errore quando si esegue la query seguente nel database AdventureWorks SQL Server 2008 R2 in SSAS 2012:
WITH 
SET XQE_NS10 AS
Filter
(
[Product].[Product Categories].[Category].MEMBERS
,
Count
(
Filter
(
CrossJoin
(
[Product].[Product Categories].[Category].MEMBERS
,[Product].[Status].[Status].MEMBERS
)
,
(
[Measures].[Reseller Freight Cost]
,[Date].[Fiscal].[XQE_MDF_CM0]
)
> 20000
)
,IncludeEmpty
)
> 0
)


/* The named set [XQE_SA0] is defined in context of the COUNT operation */

MEMBER [Date].[Fiscal].[XQE_MDF_CM0] AS
IIF
(
Count
(
Descendants
(
[Geography].[Geography].CurrentMember
,[Geography].[Geography].[Country]
) AS [XQE_SA0]
,IncludeEmpty
)
> 0
,Aggregate

/* [XQE_SA0] is subsequently used in AGGREGATE */
(
[XQE_SA0]
,[Date].[Fiscal].DefaultMember
)
,NULL
)
SET XQE_NS0 AS
[Geography].[Geography].[Country].&[Canada]
SELECT
{XQE_NS0} ON 0
FROM [AdventureWorks]
WHERE
[Measures].[Reseller Freight Cost];

Cause

Questo problema si verifica perché un alias definito in un ambito specifico Impossibile fare riferimento all'esterno dell'ambito di SSAS 2012.

Nota La perdita di ambito viene attivata in SSAS 2008 R2. Tuttavia, è disabilitato in SSAS 2012.

Status

Microsoft ha confermato che questo è un problema nei prodotti Microsoft elencati nella sezione "Si applica a".

Workaround

Per aggirare questo problema, utilizzare uno dei seguenti metodi per evitare di fare riferimento a un alias di fuori dell'ambito definito in una query MDX in SSAS 2012.

Metodo 1

Riferimento alias all'interno dell'ambito definito.

Metodo 2

Utilizzare un'espressione MDX duplicata che rappresenta l'alias. Per aggirare il problema nella situazione descritta nella sezione "Sintomi", ad esempio, è possibile sostituire l'alias [XQE_SA0] con la seguente espressione:
([Geography].[Geography].CurrentMember,[Geography].[Geography].[Country])
Ora, il codice seguente verrà eseguita correttamente:
WITH 
SET XQE_NS10 AS
Filter
(
[Product].[Product Categories].[Category].MEMBERS
,
Count
(
Filter
(
CrossJoin
(
[Product].[Product Categories].[Category].MEMBERS
,[Product].[Status].[Status].MEMBERS
)
,
(
[Measures].[Reseller Freight Cost]
,[Date].[Fiscal].[XQE_MDF_CM0]
)
> 20000
)
,IncludeEmpty
)
> 0
)
MEMBER [Date].[Fiscal].[XQE_MDF_CM0] AS
IIF
(
Count
(
Descendants
(
[Geography].[Geography].CurrentMember
,[Geography].[Geography].[Country]
) AS [XQE_SA0]
,IncludeEmpty
)
> 0
,Aggregate
(
Descendants
/* instead of referencing [XQE_SA0], substitute the MDX upon which it is based */
(
[Geography].[Geography].CurrentMember
,[Geography].[Geography].[Country]
)
,[Date].[Fiscal].DefaultMember
)
,NULL
)
SET XQE_NS0 AS
[Geography].[Geography].[Country].&[Canada]
SELECT
{XQE_NS0} ON 0
FROM [AdventureWorks]
WHERE
[Measures].[Reseller Freight Cost];

Riferimenti

Per ulteriori informazioni sul database AdventureWorks per SQL Server 2008 R2, visitare il seguente sito Web Microsoft CodePlex:
Esempi di prodotti Microsoft SQL Server (http://msftdbprodsamples.codeplex.com)

Le informazioni in questo articolo si applicano a:
  • Microsoft SQL Server 2012 Developer
  • Microsoft SQL Server 2012 Enterprise
  • Microsoft SQL Server 2012 Standard
  • Microsoft SQL Server 2012 Business Intelligence
  • Microsoft SQL Server 2012 Web
Chiavi: 
kbsurveynew kbtshoot kbexpertiseadvanced kbmt KB2739928 KbMtit
Traduzione automatica articoliTraduzione automatica articoli
Il presente articolo è stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell’utente. Tuttavia, un articolo tradotto in modo automatico non è sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, più o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non è la sua. Microsoft non è responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell’utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica.
Clicca qui per visualizzare la versione originale in inglese dell’articolo: 2739928  (http://support.microsoft.com/kb/2739928/en-us/ )
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO.
Condividi
Altre opzioni per il supporto
Forum del supporto di Microsoft Community
Contattaci direttamente
Ricerca di un partner certificato Microsoft
Microsoft Store