2013-04-19 16 views
0

我正在嘗試使用SSDT來部署一個報告,該報告將允許輸入2個可用於日誌文件開始和結束的參數。報表數據下的參數下拉列表中我的參數被聲明爲日期時間。數據集也具有包含在其屬性中的參數。這是我的SQL語句和錯誤。在解析SQL窗格中的內容時遇到在報告中傳遞參數時出錯

[Declare] @StartTime DateTime 
[Declare] @EndTime Datetime 
SELECT RecordID, AnalysisID, HeatName, NewHeatName, AnalysisTime, SampleType, Grade, NewGrade, ProductID, RecordChangeTime, ChangesMade, LoggedUser 
FROM Chemistry_Log 
WHERE (RecordChangeTime >= @ StartTime) AND (RecordChangeTime <= @ EndTime) 

以下錯誤:

無法分析查詢文本。

我不知道在哪裏可以從這裏走,因爲這不是非常翔實的錯誤消息的...

+0

你能告訴你變量聲明嗎?這可能是問題的原因 – phadaphunk

+0

這是我的整個查詢...我從來沒有創建過一個報告,所以我正在學習。所以我猜我的變量需要一個聲明呢?我應該怎麼做呢? –

+0

看看我的答案。我會用更多的信息更新它 – phadaphunk

回答

0

您的查詢看起來是正確的。我不認爲問題在那裏。報告中是否定義了參數?也就是說,它們是否顯示在報告項目的參數部分?它們是否也在數據集的屬性中定義?通常這些應該自動選取任何未聲明的參數,但我已經看到自動創建不起作用的時間。

我看到您的報告定義中的參數,請確保它們設置爲DateTime參數。另外,運行示例查詢時不要留空:提供有效的日期值。即使您單擊確定,並出現提示詢問參數值。只需填寫任何有效的日期:SSRS有時需要它來運行查詢一次,並確定查詢將返回的列。

+0

我想技術上我使用SSDT,但它幾乎是一樣的東西。我可以運行沒有參數的報告,但是一旦我把參數放入,我有一個問題。我有在報表數據窗口的參數下拉列表中聲明的參數...它們也被指定爲DateTime。 –

0

Unable to parse query text

您的查詢與所提供的信息進行工作。唯一缺少的部分是你的variables聲明。在這種情況下,我沒有看到:

Declare @StartTime DateTime 
Declare @EndTime Datetime 

這將申報準備存儲DateTime變量。至於如何將值分配給變量,這完全取決於您將如何處理查詢。

  • 使用它在Stored Procedure
  • 打電話給你的查詢直接在你的數據庫管理系統
  • 從應用程序中調用它,並通過他們爲Sql Parameters

你沒有爲我提供足夠的信息去更多的細節。

+0

我試過這個,但它仍然給我錯誤:無法解析查詢文本。它讓我沒有更多的信息.​​.....任何想法?它仍然要求我聲明變量「@」。我使用ODBC有什麼不同? –

+0

什麼,在哪裏,如何,何時使用此查詢? – phadaphunk

+0

您應該閱讀我提供的鏈接中的變量。他們沒有在我給你的例子中初始化,所以他們是空的。閱讀文章,如果您以後需要更多幫助,請提供有關您使用此查詢的位置的更多信息。 – phadaphunk