2014-09-02 55 views
0

有沒有什麼邏輯可以通過powerbuilder對象名稱,大小來獲取報表.. 當我們正在遷移PB項目時,另一個團隊要求我們生成上述列表,因爲我們有大量的3000左右的對象,我們無法手動完成。請分享,如果有什麼辦法做同樣的事情。我想用每個powerbuilder對象名稱生成報表,大小

回答

1

您可以使用「打印目錄」功能,可以打印在PBL與PDF打印機的幫助對象(按對象類型細分電子郵件)的列表。

如果存在的PBL大量可能不是很方便,而且PBL Peeper reports可能是一個更好的解決方案。

+0

感謝您的PP建議。 – Terry 2014-09-02 13:27:52

2

PBL Peeper(如關提到的)可以讓你的各種列表的數據窗口(關指出你的報告頁面,但在列表頁面也可能是有用的),但你用的是「報告」。 DataWindows可以用作打印報告,用戶界面,這兩個組件,甚至是非可視化商店(以及更多)。如果他們正在尋找打印報告的描述,這將變得更加複雜。您可以使用PP來搜索Print()或PrintDataWindow()命令(儘管它們可能會引用函數參數,這些參數必須追溯到調用堆棧,或者它們可能會引用可能在其動態修改的DataWindow對象引用的控件運行)。另外請記住,即使您找到受Print命令控制的DataWindow對象,DataWindows也可以包含其他DataWindow,因此您可能必須鏈接引用(這也可以在運行時修改)。

你提到 「遷移」。如果意圖遷移到其他技術,請記住DataWindows不是簡單的數據轉儲。 DataWindows可以利用嵌入,動態定位,數據驅動的屬性修改和幾乎所有的運行時修改(包括整個對象的運行時生成);這是遷移DataWindows的冰山一角。如果有人想要獲得報告中的SQL,以及一些UI元素的靜態屬性(例如X,Y,寬度,高度),那麼可以通過建議可能有更多的任務來爲他們提供服務。

好運。

1

再說什麼關和特里剛纔提到了在PBL偷窺其他報告,這將是一個團隊在做遷移,包括數據庫列中使用有用和對象交叉參考。爲了增加Terry關於DataWindow的評論,除了Create和Modify方法外,還有Evaluate可以執行動態創建的代碼。捕捉試圖將DataWindow移動到不同技術的人的另一個因素是PBSELECT,它是DataWindows中的默認值。在運行時,Transaction對象將您連接到的特定數據庫的PBSELECT轉換爲SQL。 PBL Peeper DataWindow SQL報告將爲您提供您指向的數據庫版本的SQL,但除非您針對與應用程序具有完全相同的連接設置的完全相同的數據庫版本運行,否則它不一定是應用程序的SQL生成。

0

您的項目是否在源代碼管理下?如果是這樣,您可以查看源代碼管理文件夾並運行報告。每個對象都被導出到一個帶有特定於對象類型的擴展名的文本文件。只是在這裏考慮......這可能會有所幫助。我想不出別的方法,除了得到一些人已經寫過的工具,比如其他人正在談論的偷窺。

我幾乎可以看到爲什麼有人問你這個問題,不管他們使用哪種方法,都不能準確表示應用程序的大小/對象/代碼。一個數據窗口對象可以有很多計算字段,每個字段都像它自己的函數一樣。我知道市場上沒有什麼能夠深入到這種細節水平。所以一個數據對象可能等於五十個單元的編程工作vs.另一個可能等於一個單位的編程工作。

使用對象來衡量代碼的另一個問題是,PB是面向對象的,所以祖先對象可能永遠不會被自己使用。或者一個複雜的用戶對象可能會在應用程序中的數百個地方實例化,因此將它計爲一個「單位」是完全誤導的。簡而言之,沒有快速和骯髒的方式來衡量替代PB應用程序所需或將需要付出的努力。

另一個簡單的例子,一個窗口不等於一個窗口。一個窗口可能有五十個實例化的控件,每個窗口都有許多事件或函數的代碼。所以一個窗口可能等於一個編程工作單位,另一個窗口可能等於一百個單位。

然後你有後端。那裏正在做多少。我一直沿着這條路走下去,當管理層要求這些事情時,他們不知道他們正在進入什麼,他們應該被警告。