2009-07-13 63 views
11

我想從Crystal XI報表中刪除所有對錶的引用。 Crystal告訴我目前正在使用該表中的一列,因爲字段查看器中的字段上有一個綠色的複選標記。另外,如果我嘗試刪除整個表格,則會收到警告。這個警告幾乎是無用的,因爲它沒有告訴我這個字段被使用在哪個。現在,當程序員是真正的程序員,老鼠是被追趕的東西時,我可以只搜索一個目錄或文件,並找到所有對我感興趣的變量的引用。但是,我如何在Crystal中執行此操作?我已經嘗試將報告導出到報告定義中,這有助於查找一些令人頭疼的領域的實例。不幸的是,這種格式不包括所有的公式,只是一些。請告訴我,我不必購買第三方應用程序(或寫自己的COM東西)只是爲了做這個看似簡單的事情。如何爲列的所有用途grep(搜索)Crystal報表?

編輯添加有關切點的細節: 如果有人想知道,我並不瘋狂 - 我重複了公式的定義沒有顯示在導出的報告定義中的問題。我創建了一個新的空白報告,創建了一個名爲stealth的公式,返回1234.然後,我在Section Expert的Section Expert中使用該公式,在「suppress」公式中將其設置爲{@stealth} == 0.使用的公式顯示出來,但不是定義。所以當我在公式中使用不需要的列時,我無法找到它!這裏的RPT DEF是什麼樣子(刪除一些空行之後):

 
    Crystal Report Professional v11.0 (32-bit) - Report Definition 
    1.0 File Information 
    Report File: 
    Version: 11.0 
    2.0 Record Sort Fields 
    3.0 Group Sort Fields 
    4.0 Formulas 
    4.1 Record Selection Formula 

    4.2 Group Selection Formula 

    4.3 Other Formulas 
    5.0 Sectional Information 
    5.1 Page Header Section 
    Visible, Keep Together 
    5.2 Page Footer Section 
    Visible, New Page After, Keep Together, Print At Bottom of Page 
    5.3 Report Header Section 
    Visible, New Page Before 
    5.4 Report Footer Section 
    Visible, New Page After 
    5.5 Details Section 
    Visible 
    Subsection.1 
     Visible, Keep Together 
     Format Formulas 
     Visible: {@stealth}= 0 

+0

根據我在下面我的(非)答案中的對話,我會說你的選擇不限於1)「升級」到R2,2)購買第三方工具(是否存在?),3)自行反向設計二進制格式或4)重新創建報告。記住「損壞的保存」錯誤?我從頭開始不止一次地重新創建。 – Adrien 2009-07-14 17:24:03

回答

5

如果右鍵在字段資源管理器領域單擊並選擇在公式中查找,它應該彈出一個對話框,列出所有的地方它正在用於公式。在對話框的左邊是一個包含所有可能位置的樹,包括古怪的地方,如記錄選擇器和頁面格式化功能。不幸的是,它似乎沒有列出運行總字段。

編輯:哎呀,它存在的所有地方都列在對話框的底部;樹視圖是報告的整個「DOM」。

+1

嘿。如果它像右鍵點擊一樣簡單,那麼我會在幾個小時前完成這件事!現在我知道要尋找什麼,很容易瞭解到我想要的功能和您描述的功能僅在XI Release 2中引入(http://help.sap.com/businessobject/product_guides/boexir2/en /xir2_cr_whatsnew_en.pdf)我會明天嘗試升級我的工作站,假設我們得到水晶的供應商可以爲我提供新版本。謝謝! (現在是upvote,如果沒有人可以在舊版本中做到這一點,那麼明天是最好的答案) – 2009-07-13 22:18:10

+0

嘿,我甚至沒有意識到這是R2的唯一特徵。 BusinessObjects表示R2只是爲.NET 2.0兼容而設計的,並沒有增加任何新功能...... XIR2可作爲下載...您只需要您的許可證號(您應該可以從Help-> About http://resources.businessobjects.com/support/additional_downloads/service_packs/crystal_reports_en.asp#CRXIR2(service pack 2 full build)。 – 2009-07-13 22:48:10

+0

如果你有XIr1,我認爲R2是免費升級的。當然,既然SAP比Business Objects更糟糕,發現下載可能很困難,但它不應該是不可能的,它應該是合法的。這可能會有所幫助:http://resources.businessobjects.com/support/additional_downloads /service_packs/crystal_reports_en.asp#CRXIR2 – Adrien 2009-07-13 22:48:20

8

如果一切都失敗...

File -> Export -> Export Report,然後選擇Report Definition (TXT)選項。

這將爲您提供報告每個元素的純文本表示。您可以通過grepCTRL-F或(插入您選擇的搜索工具)。 「在配方中查找」通常是可行的,但我不得不多次出口出口路線,因爲沒有明顯的原因。

編輯:當然,如果我打擾到完全閱讀你的文章,我會看到你已經做到了。

非常好奇。

1

這是在測試XIR2 ...

您通過「設置數據源位置」對話框中更改表的數據源。現在,當它進入列映射模式時,取消選中匹配類型並選擇一個可能會在公式中導致錯誤的新列。 (即如果您正在查找的列是一個字符串,則將其替換爲日期時間列)。轉到預覽,你應該得到一個錯誤框,如「這裏需要一個字符串」,關閉該錯誤並彈出違規公式!

4

我知道這是一箇舊帖子,但...

不是敲開Find in Formulas,它今天一直在救我,但是我很難找到該領域的最後一個實例。即使在報告中的所有公式和排泄都被照顧之後,我仍然有一個唯一的用途隱藏在某個地方。

我發現它隱藏爲子報表鏈接。右鍵單擊子報表 - >「更改子報表鏈接...」,並有罪魁禍首。放在這篇文章中,因爲我覺得別人也可能有這個問題。

字段有時也可以是「記錄排序專家」

0

一個建議中藏匿。在聽了這裏的很多建議之後,我的報告還在告訴我這個公式正在使用中。我不得不關閉報告。當我再次打開它時,複選標記消失了,它讓我刪除它。這是在水晶v 11.0.0.1282

2

應對舊的文章,但遇到了類似的問題。我有一個基於我想刪除具有特定順序的公式的組。當我將分組更改爲其他字段時,指定的順序依然存在。當我刪除指定的訂單時,我的公式可能會被刪除。

0

儘管這是一個老帖子,但這個功能差距在Crystal Reports本身中仍然存在。我們對第三方軟件進行了功能全面的14天試用,它使用最新的Crystal.net API在Crystal RPT文件庫中一次搜索純文本。還可以搜索報告中保存的數據以及標籤內的文本......以及支持SQL Server,SQL Azure,MySQL,Oracle,Amazon RDS,DB2的所有報告(存儲過程,視圖和表數據)後面的數據源和訪問。

更多信息和試用版下載在http://www.finditez.com

注意,你需要下載並安裝兼容的SAP Crystal.net運行連接器搜索您的RPT文件庫。

0

在我的情況下,公式字段碰巧是舊的運行總字段的一部分,該字段本身未包含在報告中。一旦我刪除了這個舊的運行總計字段,我可以刪除未使用的公式字段。

0

很晚,但我使用CR 2008(12.3.0.601),就在今天(6/16/2015)我正在嘗試僅記錄我的報告的公式。我知道導出報告定義和查找所有公式中的公式。但有大約50個公式。我發現導出的報告定義並沒有記錄我所有的公式,但我沒有打算髮現它背後的邏輯;相反,我把所有的公式放入一個部分,然後導出報告定義。瞧。當然,我仍然需要挑選所有不必要的定義元素。但至少我有所有的公式。

0

因此,與所有偉大的選擇。我仍然有一個實例從我藏了起來。通過創建數據表的克隆並重命名\刪除字段,我找到了它的位置。

然後我使用上面建議的「Set Database Location」來指向我的新表格。當它找不到這個字段時,它做出了錯誤,但仍然沒有告訴我它到底在哪裏(它只是說報告字段)。

我沒有地圖,並點擊繼續從報告中刪除字段。然後我把它映射回真正的桌子,我很好。

在我的情況下,有一個圖表,該字段被用作「更改」字段之一。