2011-03-09 87 views
1

我正在尋找打印發票和聲明的最佳解決方案,當用戶可以在打印表單上編寫和製作選擇(如日期)時。我已經測試了Delphi的所有打印組件,但是沒有人允許最終用戶(例如)在打印時檢查複選框,而無需從他身邊編輯任何內容 - 只需簡單點擊即可。也許我錯過了什麼,你建議什麼?Delphi報表組件和最終用戶的可視化控件

回答

7

使用快速報告,你有幾種選擇這樣做......

首先,快速報告可以讓你有使用表單設計的報告裏面互動形式,並使用其腳本引擎將它們編碼。

它還允許您將事件處理程序分配給爲每個控件定義的某些事件;例如,它具有用於frxCheckBox控件的OnPreviewClick事件,只要最終用戶單擊預覽窗格中的複選框,就會觸發該事件。

另一種選擇是允許最終用戶修改他/她自己的報告;快速報告爲最終用戶提供了兩種類型的報告編輯,一種方法是讓最終用戶修改生成的報告。使用此功能,最終用戶將在「快速報告」編輯器中看到生成的報告和所有頁面,並可以更改某些值或重新排列控件。 另一種方式是讓最終用戶從頭開始設計報告,因此您必須在Fast Report中使用設計器組件;這將提供用於在IDE中爲最終用戶設計報告的標準編輯器,並且最終用戶可以按照您的要求設計報告。

+0

但是,超過99%的用戶不會使用設計師。他們想要簡單的解決方案 - 選中一個有趣的複選框並點擊打印。在Fast Report中使用腳本引擎是可能的嗎? – JustMe 2011-03-09 09:14:58

+1

@JustMe,你剛剛得到Fast Report的第二個建議。你試過了嗎?如果您認爲最終用戶不會使用報表設計器,請不要給他們這個選項。 – 2011-03-09 09:22:44

+0

我發現即使我可能打包報表設計器,最終用戶也很少使用它。但有時候,當他們想要足夠使用它時,甚至有時他們想要它足以支付我使用它們。你是你的應用程序的潛在用戶,對吧?升級代碼以添加報告可能會引入迴歸,但是自己使用報告編輯器的可能性較小,對嗎? – 2011-03-09 13:57:46

3

對於Delphi解決方案,我使用Fast Report的腳本支持在報告中做一些奇特的事情(當用戶在報告預覽中點擊某些內容時彈出窗口)。我也用它來創建向下鑽取報告,因此有一些支持在報告呈現到預覽後更改報告。但我確定它不支持真正的Windows控件,因爲它畢竟是一個REPORT生成解決方案。我沒有真正關注這個,所以有可能我錯了。

對於非Delphi解決方案,您可能需要查看一些Adobe Acrobat(PDF)解決方案,它們允許您執行令人驚歎的任務。

我的看法:除非交互非常簡單(一個複選框和一些輸入字段),否則我不會在報表生成器中執行此操作。儘管這樣做似乎更直觀,但它有太多限制。沒有什麼比編輯文本真正的文本編輯器更勝一籌,但真正的文本編輯器在報告中看起來不合適。

+0

我遇到了使用(如你所說)PDF解決方案的應用程序 - 我必須說這是我正在尋找的。並且非常感謝您在最後一段提供建議。 – JustMe 2011-03-09 09:06:47