2011-07-26 48 views
1

希望你能幫助我。我有一個Crystal Report文件,我想知道在報告中使用的存儲過程的名稱是什麼。我怎樣才能通過後面的代碼來檢索它。這可能嗎?檢索水晶報告條形過程

C#代碼會更好,因爲我在c#中編寫代碼。

TIA!

回答

1

假設你在獲取SP的名稱只是有興趣,然後有來解決這個幾種不同的方法:

如果有水晶報表...

  1. 打開設置數據源位置對話框。底部窗格中將顯示可用數據庫對象的樹視圖,其中包括存儲過程列表。突出顯示的SP將是它調用來檢索報告數據的那個SP。

  2. 如果這沒有幫助(即:沒有突出顯示的存儲過程),那麼在報告設計器區域中單擊,選擇Database -> Show SQL Query。這將顯示用於從數據庫檢索數據的查詢。它可能會有一個存儲過程的名稱。

如果你沒有水晶報表...

0

Unfortuna確實沒有辦法通過編程來實現這一點。您可以看到數據源,設置數據源,但不能通過Crystal Reports設計器檢索用於生成報告的實際SQL。

+2

實際上,您可以通過編程方式獲得用於使用CrystalDecisions.CrystalReports.Engine命名空間生成報表的實際SQL。查看'SQLExpressionFieldDefinition'類,它包含了所有需要的信息,包括實際的SQL表達式文本。 http://msdn.microsoft.com/en-us/library/ms226202(v=VS.90).aspx。 – CobaltBlue

+0

Doh,我的錯!謝謝,我其實也需要這樣做:) –

+0

:)水晶報告是非常棘手的東西。我大部分時間都在努力製作他們的API的正面或反面,他們似乎改變了每一個版本。呵呵。 – CobaltBlue