在FastReport.Net 2018.4中處理“Division by Zero”異常
在FastReport 2018.4的更新中,有一個(gè)零除錯(cuò)誤的解決方案。以前,報(bào)表開(kāi)發(fā)人員必須自己處理此異常。畢竟,我們無(wú)法保證因?yàn)閿?shù)據(jù)不會(huì)發(fā)生此錯(cuò)誤。如果你沒(méi)有通過(guò)零處理進(jìn)行除法,你將得到一個(gè)異常,它將中斷報(bào)表的構(gòu)造。因此,您仍需要優(yōu)化報(bào)表,這是額外的時(shí)間成本。
現(xiàn)在,您不需要考慮這個(gè)問(wèn)題,在出現(xiàn)除法錯(cuò)誤的表達(dá)式中,將顯示消息“Division by zero”。在這種情況下,構(gòu)建報(bào)表。讓我們比較除以零時(shí)的內(nèi)容和內(nèi)容。 在報(bào)表中添加文本字段,然后輸入以下表達(dá)式:[2018/0]。這是兩個(gè)整數(shù)。 這就是以前版本的FastReport.Net中的情況。嘗試在設(shè)計(jì)器中運(yùn)行報(bào)表時(shí):
從用戶(hù)應(yīng)用程序運(yùn)行報(bào)表時(shí):
因?yàn)樗殉蔀椋?/p>
該報(bào)表已構(gòu)建,但帶有錯(cuò)誤的字段以紅色背景突出顯示,由文本DIVISION BY ZERO取代! 它適用于整數(shù)值。如果用逗號(hào)將數(shù)字除以零怎么辦?例如,表達(dá)式[2018.0 / 0.0]將給出結(jié)果:
這適用于以前的版本和新版本。 因此,內(nèi)置的除零處理使我們擺脫了這一問(wèn)題 - 在報(bào)表腳本中編寫(xiě)我們自己的處理程序。因此,報(bào)表的開(kāi)發(fā)變得更加容易和方便。