2014-04-24 23 views
1

我的客戶已決定要重命名一個非常常用的數據項名稱。 因此,例如,數據庫有一個名爲「成本」的列,他們在一堆報告中看到「成本」。 客戶現在希望看到「淨成本」無處不在。 所以我們需要改變每次出現的'成本'並將其更改爲'淨成本'IBM Cognos 10 - Smple方式全局重命名錶列?

我可以在Framework Manager中輕鬆做到這一點,甚至可以運行「工具」>「報告依賴關係」來查找所有使用的報告'成本'欄。但如果有4,000個,那麼更新它們的工作量會很大。

一個想法是將整個內容存儲庫部署到Cognos Deployment zip文件,提取該文件,執行全局搜索& &替換爲XML。但是這會很危險的&。

選項2是使用MotioPI來執行搜索&替換。我不認爲客戶會爲了這項任務而購買此產品。

還有其他選擇嗎?

  • 有沒有人在Cognos SDK中編寫過任何可以重命名的東西?
  • 有人調查了內容存儲數據庫的程度爲 ,他們可以對SQL中的所有報表規格進行重命名?
  • 有沒有其他的選擇,我忽略了?

任何想法將受到極大的歡迎...

回答

0

你的第一個選項是要走的路。這基本上歸結爲一個XML查找和替換場景。您需要隔離與您相關的單詞「費用」的實例。這可能涉及開始和結束標記。

要更改報告中的數據源參考,您需要查找並替換三個零件名稱[Presentation Layer].[Namespace].[Cost]。如果項目上有過濾器,則它們可能只是引用查詢中的一個部件名稱。同樣,任何派生查詢都會引用這兩個部分的名稱。通過查看XML報告規範並確定如何隔離文本來處理這些問題。

我假設您的列名稱設置爲從模型繼承業務名稱,而不是硬編碼(Source Type應該是Data Item Label,而不是Text)。如果沒有,你也需要處理這些。看看XML,你會看到這些爲<staticValue>Cost</staticValue>

因爲您有備份,所以這並不是很危險。只需進行多次傳球,每次傳球都儘可能細緻地進行查找和替換。

Motio只會查看標籤內的值,所以您將無法隔離Cost,因此它不能用於此目的。但是,在查找和替換之後,它可以用於批量驗證報告。這一年的一個座位許可可以通過它在這裏可以節省的開發時間來證明是合理的。

+0

這裏有一個真的很大。如果您在FM模型中使用文件夾,則這些文件夾不會顯示在路徑中。 – Andrew