关于老黄的DW2XLS一些小bug
??? 今天用PB開(kāi)發(fā)點(diǎn)小東西,幾年不用了,手生得很。在導(dǎo)出excel的時(shí)候,用到了老黃的DW2XLS,發(fā)現(xiàn)分組統(tǒng)計(jì)的計(jì)算字段不見(jiàn)了,但是那行還在,就是空白,心想:不會(huì)吧,老黃的DW2XLS貌似很多人在用,不至于分組統(tǒng)計(jì)字段都導(dǎo)出不了吧,點(diǎn)了一下那個(gè)空白的CELL,發(fā)現(xiàn)數(shù)據(jù)在,就是不顯示,進(jìn)入單元格格式,才發(fā)現(xiàn)變成了自定義格式,而且是“;;”空格式。本來(lái)不想理,干脆用saveascii來(lái)搞算了,想想還是研究一下吧,debug來(lái)debug去,發(fā)現(xiàn)把這里
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類(lèi)型還是用TextRC輸出到excel就行。按理說(shuō)EntryRC用來(lái)輸出數(shù)字型的是沒(méi)錯(cuò)的,老黃并沒(méi)有寫(xiě)錯(cuò),但是俺這里確實(shí)不行,PB9和TTF16的環(huán)境。算了,懶得研究了,能用就行,呵!
?????
??? 另外:最近又發(fā)現(xiàn)了黃國(guó)疇的DW2XLS的一個(gè)問(wèn)題,就是當(dāng)數(shù)據(jù)量很大的時(shí)候,導(dǎo)出到excel會(huì)出錯(cuò)。多大呢?就是數(shù)據(jù) 行數(shù)>32767/(字段數(shù))就會(huì)出錯(cuò),所以有人說(shuō)5000條,有人說(shuō)7000條之類(lèi)都是不準(zhǔn)確的,沒(méi)認(rèn)真看源代碼。什么原因?qū)е碌哪?#xff1f;其實(shí)是老黃用錯(cuò)了數(shù)據(jù)類(lèi)型,在n_cst_dw2excel_grid的of_outdata方法中,li_CurRow用的是Int類(lèi)型。所以改成Long類(lèi)型就OK了。
??? 給碰到同樣問(wèn)題的XDJM作參考(貌似都沒(méi)有人做PB了哈)
總結(jié)
以上是生活随笔為你收集整理的关于老黄的DW2XLS一些小bug的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 前端学习(2044)vue之电商管理系统
- 下一篇: 前端学习(2063):vue的生命周期