症狀
假設您在 PowerShell 和 XML 中使用 Invoke-AsCmd Cmdlet 進行分析, (SSMS) 中的 Microsoft SQL Server 2012 Analysis Services (SSAS 2012) 或 SQL Server 2014 Analysis Services (SSAS 2014 SQL Server Management Studio () 處理中的 XMLA) 。 在此情況下,您會遇到傳回輸出的以下行為差異:
- 使用下列 PowerShell 命令來擷取警告訊息時:Invoke-Ascmd -InputFile:“<input.xmla>” -Server:“<servername>” -OutVariable out -WarningVariable w 如果命令收到任何警告訊息,則不會在傳回碼中擷取警告訊息。 不過,如果您從 SSMS 執行相同的 XMLA 命令,則會擷取警告訊息。
- 使用下列 PowerShell 命令來擷取錯誤訊息時:Invoke-Ascmd -InputFile: :“<input.xmla>” -Server:“<servername>” -ErrorVariable e -OutVariable out -WarningVariable w 如果命令收到任何錯誤訊息,則錯誤訊息會包含在 [警告] 標籤中,但不會擷取在傳回碼中。 不過,如果您從 SSMS 執行相同的 XMLA 命令,則錯誤訊息會包含在錯誤標籤中,且會在傳回碼中擷取。
原因
發生此問題的原因是 Invoke-AsCmd Cmdlet 忽略警告訊息但會擷取錯誤訊息,並且使用錯誤的範本來產生傳回輸出。
解決方式
此問題已先在下列 SQL Server 累積更新中修正。
適用於 SQL Server 2014 的累積更新 5 /zh-tw/help/3011055
SQL Server 2012 SP2 的累積更新 2 /zh-tw/help/2983175
關於 SQL Server 的累積更新
SQL Server 的每個新累積更新都包含所有 Hotfix 和先前累積更新的所有安全性修正程式。 查看 SQL Server 的最新累積更新:
狀態
Microsoft 已確認這是「適用對象」一節中列出的 Microsoft 產品中的問題。