Cmdlet Invoke-ASCmd
Consente a un amministratore del database di eseguire uno script XMLA, una query MDX (Multidimensional Expressions) o istruzioni DMX (Data Mining Extensions).
Sintassi
Invoke-ASCmd –Query <string> [-Server <string>] [-Database <string>] [-Credential <PSCredential>] [-ConnectionTimeout <int>] [-QueryTimeout <int>] [-Variable <string[]>] [-TraceFile <string>] [-TraceFileFormat <TraceFileFormatOption>] [-TraceFileDelimiter <string>] [-TraceTimeout <int>] [-TraceLevel <TraceLevelOption>] [<CommonParameters>]
Invoke-ASCmd –InputFile <string> [-Server <string>] [-Database <string>] [-Credential <PSCredential>] [-ConnectionTimeout <int>] [-QueryTimeout <int>] [-Variable <string[]>] [-TraceFile <string>] [-TraceFileFormat <TraceFileFormatOption>] [-TraceFileDelimiter <string>] [-TraceTimeout <int>] [-TraceLevel <TraceLevelOption>] [<CommonParameters>]
Descrizione
Il cmdlet Invoke-ASCmd può eseguire query o script contenuti nei file di input. Sono supportati i comandi seguenti: Alter, Backup, Batch, BeginTransaction, Cancel, ClearCache, CommitTransaction, Create, Delete, DesignAggregations, Drop, Insert, Lock, MergePartitions, NotifyTableChange, Process, Restore, RollbackTransaction, Statement (utilizzato per eseguire query MDX e istruzioni DMX), Subscribe, Synchronize, Unlock, Update, UpdateCells.
Questo cmdlet supporta il parametro -Credential, che può essere utilizzato se è stata configurata l'istanza di Analysis Services per l'accesso HTTP. Il parametro -Credential accetta un oggetto PSCredential che fornisce un'identità utente di Windows. In IIS verrà quindi rappresentato questo utente durante la connessione ad Analysis Services. Per eseguire lo script, è necessario che l'identità disponga delle autorizzazioni di amministratore di sistema nell'istanza di Analysis Services.
Parametri
-Query <string>
Specifica la query, l'istruzione o lo script effettivo direttamente nella riga di comando anziché in un file. È possibile specificare anche una query come input della pipeline. Quando si utilizza Invoke-AsCmd, è necessario specificare il valore per il parametro –InputFile o –Query.
Obbligatorio? |
true |
Posizione? |
named |
Valore predefinito |
|
Accettare input da pipeline? |
True (ByValue) |
Accettare caratteri jolly? |
false |
-InputFile <string>
Identifica il file contenente lo script XMLA, la query MDX o l'istruzione DMX. Quando si utilizza Invoke-AsCmd, è necessario specificare il valore per il parametro –InputFile o –Query.
Obbligatorio? |
true |
Posizione? |
named |
Valore predefinito |
|
Accettare input da pipeline? |
false |
Accettare caratteri jolly? |
false |
-Server <string>
Specifica l'istanza di Analysis Services a cui il cmdlet deve connettersi per l'esecuzione. Se non viene fornito alcun nome del server, la connessione verrà effettuata a localhost. Per le istanze predefinite è sufficiente specificare il nome del server, mentre per quelle denominate, utilizzare il formato nomeserver\nomeistanza. Per le connessioni HTTP, utilizzare il formato http[s]://server[:porta]/virtualdirectory/msmdpump.dll.
Obbligatorio? |
false |
Posizione? |
named |
Valore predefinito |
localhost |
Accettare input da pipeline? |
false |
Accettare caratteri jolly? |
false |
-Database <string>
Specifica il database su cui deve essere eseguita una query MDX o un'istruzione DMX. Il parametro del database viene ignorato se tramite il cmdlet viene eseguito uno script XMLA, poiché il nome del database viene incorporato nello script stesso.
Obbligatorio? |
false |
Posizione? |
named |
Valore predefinito |
|
Accettare input da pipeline? |
false |
Accettare caratteri jolly? |
false |
-Credential <PSCredential>
Specifica un oggetto PSCredential che fornisce un nome utente e una password di Windows. Specificare questo parametro solo se l'istanza di Analysis Services viene configurata per l'accesso HTTP, utilizzando l'autenticazione di base. Per le connessioni native in cui viene utilizzata la sicurezza integrata, questo parametro viene ignorato.
Se questo parametro è presente, le credenziali fornite vengono accodate alla stringa di connessione. In IIS verrà quindi rappresentata questa identità utente durante la connessione ad Analysis Services. Se non vengono specificate credenziali, verrà utilizzato l'account di Windows predefinito dell'utente che esegue lo strumento.
Per utilizzare questo parametro, creare innanzitutto un oggetto PSCredential utilizzando Get-Credential per specificare il nome utente e la password, ad esempio $Cred=Get-Credential “adventure-works\admin”. Successivamente è possibile inoltrare tramite pipe questo oggetto al parametro -Credential (-Credential:$Cred.
Per ulteriori informazioni sull'utilizzo di autenticazione e credenziali, vedere PowerShell per Analysis Services. Per ulteriori informazioni sull'accesso HTTP, vedere Configurare l'accesso HTTP ad Analysis Services in Internet Information Services (IIS) 7.0.
Obbligatorio? |
false |
Posizione? |
named |
Valore predefinito |
|
Accettare input da pipeline? |
True (ByValue) |
Accettare caratteri jolly? |
false |
-ConnectionTimeout <int>
Specifica il numero di secondi prima del timeout della connessione all'istanza di Analysis Services. Il valore del timeout deve essere un intero compreso tra 0 e 65534. Se si specifica 0, ai tentativi di connessione non viene associato alcun timeout.
Obbligatorio? |
false |
Posizione? |
named |
Valore predefinito |
30 |
Accettare input da pipeline? |
false |
Accettare caratteri jolly? |
false |
-QueryTimeout <int>
Specifica il numero di secondi prima del timeout delle query. Se non si specifica nessun valore di timeout, alle query non viene associato alcun timeout. Il timeout deve essere un intero compreso tra 1 e 65535.
Obbligatorio? |
false |
Posizione? |
named |
Valore predefinito |
30 |
Accettare input da pipeline? |
false |
Accettare caratteri jolly? |
false |
-Variable <string[]>
Specifica ulteriori variabili di scripting. Ogni variabile è una coppia nome-valore. Se nel valore sono contenuti spazi o caratteri di controllo incorporati, è necessario racchiuderlo tra virgolette doppie Utilizzare una matrice di PowerShell per specificare più variabili e i relativi valori.
Obbligatorio? |
false |
Posizione? |
named |
Valore predefinito |
|
Accettare input da pipeline? |
false |
Accettare caratteri jolly? |
false |
-TraceFile <string>
Identifica il file a cui vengono inviati gli eventi di traccia di Analysis Services durante l'esecuzione dello script XMLA, della query MDX o dell'istruzione DMX. Se il file è già esistente, viene automaticamente sovrascritto, a meno che non si tratti di un file di traccia creato con le impostazioni dei parametri -TraceLevel:Duration e –TraceLevel:DurationResult. È necessario racchiudere tra virgolette i nomi di file contenenti spazi (" "). Se il nome file non è valido, viene generato un messaggio di errore.
Obbligatorio? |
false |
Posizione? |
named |
Valore predefinito |
|
Accettare input da pipeline? |
false |
Accettare caratteri jolly? |
false |
-TraceFileFormat <string>
Specifica il formato file per il parametro –TraceFile, se quest'ultimo è specificato. Le opzioni disponibili sono testo o csv. Il valore predefinito è "csv".
Obbligatorio? |
false |
Posizione? |
named |
Valore predefinito |
csv |
Accettare input da pipeline? |
false |
Accettare caratteri jolly? |
false |
-TraceFileDelimiter <string>
Specifica il carattere da utilizzare come delimitatore del file di traccia se viene specificato csv come formato di questo file. Il carattere predefinito è | (barra verticale).
Obbligatorio? |
false |
Posizione? |
named |
Valore predefinito |
|
Accettare input da pipeline? |
false |
Accettare caratteri jolly? |
false |
-TraceTimeout <int>
Specifica il numero di secondi di attesa del motore di Analysis Services prima di terminare la traccia, nel caso in cui si specifichi il parametro –TraceFile. La traccia viene considerata conclusa se non viene registrato alcun messaggio durante il periodo di tempo specificato. Il valore di timeout di traccia predefinito è di 5 secondi.
Obbligatorio? |
false |
Posizione? |
named |
Valore predefinito |
5 |
Accettare input da pipeline? |
false |
Accettare caratteri jolly? |
false |
-TraceLevel <TraceLevelOption>
Specifica quali dati vengono raccolti e registrati nel file di traccia. I valori possibili sono High, Medium, Low, Duration, DurationResult.
Obbligatorio? |
false |
Posizione? |
named |
Valore predefinito |
High |
Accettare input da pipeline? |
false |
Accettare caratteri jolly? |
false |
<CommonParameters>
Questo cmdlet supporta i parametri comuni, ovvero -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer e -OutVariable. Per ulteriori informazioni, vedere About_CommonParameters.
Input e output
Il tipo di input è il tipo degli oggetti che è possibile inoltrare tramite pipe al cmdlet. Il tipo restituito è il tipo di oggetti restituito dal cmdlet.
Input |
PSObject |
Output |
String |
Esempio 1
Invoke-ASCmd –InputFile:”C:\MyFolder\DiscoverConnections.xmla”
Questo comando esegue uno script XMLA tramite cui viene restituito l'elenco di connessioni attive nel server. Nel file DiscoverConnections.xmla è contenuto lo script XMLA seguente:
<Discover xmlns="urn:schemas-microsoft-com:xml-analysis">
<RequestType>DISCOVER_CONNECTIONS</RequestType>
<Restrictions />
<Properties>
<PropertyList>
<Content>Data</Content>
</PropertyList>
</Properties>
</Discover>
Esempio 2
Invoke-ASCmd -Database:"Adventure Works DW" -Query:"<Discover xmlns='urn:schemas-microsoft-com:xml analysis'><RequestType>DISCOVER_DATASOURCES</RequestType><Restrictions></Restrictions><Properties></Properties></Discover>"
Tramite la query Discover XMLA vengono restituite le origini dati disponibili per Analysis Server e le informazioni richieste per connettersi a esse. I risultati sono in XML. Per una migliore leggibilità, è possibile inoltrare tramite pipe l'output a un file XML (ad esempio accodare | Out-file C:\Results\XMLAQueryOutput.xml al comando) e visualizzare i risultati in un browser o in un'altra applicazione che supporta l'XML strutturato.
Vedere anche
Concetti
PowerShell per Analysis Services