Příznaky
Předpokládejme, že používáte rutinu Invoke-AsCmd v PowerShellu a XML pro analýzu (XMLA) v SQL Server Management Studio (SSMS) pro Microsoft sql Server 2012 Analysis Services (SSAS 2012) nebo sql Server 2014 Analysis Services (SSAS 2014). V této situaci se při vráceném výstupu setkáte s následujícím rozdílem chování:
-
Když ke shromažďování varovných zpráv použijete tento příkaz PowerShellu:Invoke-Ascmd -InputFile:"<input.xmla>" -Server:"<servername>" -OutVariable out -WarningVariable w Pokud příkaz obdrží jakékoli upozornění, zpráva upozornění není zachycena v návratovém kódu. Zpráva upozornění se ale zaznamená, když spustíte stejný příkaz XMLA z SSMS.
-
Když k zachycování chybových zpráv použijete tento příkaz PowerShellu:Invoke-Ascmd -InputFile: :"<input.xmla>" -Server:"<servername>" -ErrorVariable e -OutVariable out -WarningVariable w Pokud příkaz obdrží nějakou chybovou zprávu, zobrazí se chybová zpráva ve značce Upozornění , ale v návratovém kódu není zachycená. Chybová zpráva je však součástí chybové značky a je zachycena v návratovém kódu, pokud spustíte stejný příkaz XMLA z SSMS.
Příčina
K tomuto problému dochází, protože rutina Invoke-AsCmd ignoruje varovné zprávy, ale zachytává chybové zprávy a vygeneruje návratový výstup pomocí nesprávných šablon.
Řešení
Tento problém byl poprvé opraven následující kumulativní aktualizací SQL serveru.
Kumulativní aktualizace 5 pro SQL Server 2014 /en-us/help/3011055
Kumulativní aktualizace 2 pro SQL Server 2012 SP2 /en-us/help/2983175
Každá nová kumulativní aktualizace pro SQL Server obsahuje všechny opravy hotfix a všechny opravy zabezpečení, které byly součástí předchozí kumulativní aktualizace. Podívejte se na nejnovější kumulativní aktualizace SQL serveru:
Stav
Společnost Microsoft potvrzuje, že se jedná o problém v produktech této společnosti, které jsou uvedeny v části Informace v tomto článku jsou určeny pro produkt.