关于老黄的DW2XLS一些小bug
??? 今天用PB開發點小東西,幾年不用了,手生得很。在導出excel的時候,用到了老黃的DW2XLS,發現分組統計的計算字段不見了,但是那行還在,就是空白,心想:不會吧,老黃的DW2XLS貌似很多人在用,不至于分組統計字段都導出不了吧,點了一下那個空白的CELL,發現數據在,就是不顯示,進入單元格格式,才發現變成了自定義格式,而且是“;;”空格式。本來不想理,干脆用saveascii來搞算了,想想還是研究一下吧,debug來debug去,發現把這里
IF ids_Objects.Object.ColType[li]="char" ThenxlApp.TextRC[li_CurRow,li_StartCol]=ls_value ELSExlApp.EntryRC[li_CurRow,li_StartCol]=ls_value END IF?
改成如下即可:
IF ids_Objects.Object.ColType[li]="char" ThenxlApp.TextRC[li_CurRow,li_StartCol]=ls_value ELSExlApp.TextRC[li_CurRow,li_StartCol]=ls_value END IF?
??? 也就是如果是compute或column,非char類型還是用TextRC輸出到excel就行。按理說EntryRC用來輸出數字型的是沒錯的,老黃并沒有寫錯,但是俺這里確實不行,PB9和TTF16的環境。算了,懶得研究了,能用就行,呵!
?????
??? 另外:最近又發現了黃國疇的DW2XLS的一個問題,就是當數據量很大的時候,導出到excel會出錯。多大呢?就是數據 行數>32767/(字段數)就會出錯,所以有人說5000條,有人說7000條之類都是不準確的,沒認真看源代碼。什么原因導致的呢?其實是老黃用錯了數據類型,在n_cst_dw2excel_grid的of_outdata方法中,li_CurRow用的是Int類型。所以改成Long類型就OK了。
??? 給碰到同樣問題的XDJM作參考(貌似都沒有人做PB了哈)
總結
以上是生活随笔為你收集整理的关于老黄的DW2XLS一些小bug的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 前端学习(2044)vue之电商管理系统
- 下一篇: 前端学习(2063):vue的生命周期