2009-11-30

ToString Format 使用時的注意事項

承上一篇文章
剛才遇到一個問題~特此來紀錄一下
因為DB的TABLE不是筆者開的!所以一直沒注意到從DB叫出來的數值
使用 .ToString("0000") 會有問題
在DB內原來開的欄位是numeric(18, 0)
欄位內的數值為911062
使用
MsgBox(Mid(DS_View.Tables(0).Rows(0).Item("LastNo").ToString("0000000"), 1, 4))
各位猜的到叫出來會是什麼答案嗎?

答案是9
酷吧!完成出乎筆者的意料之外
因為筆者想得到的答案很簡單
就是先把911062轉成0911062然後從第一位數取四個
就是0911
可是只有取到一個9
天吶~

解決方法!把該欄位先轉成Integer就好了
MsgBox(Mid(CType(DS_View.Tables(0).Rows(0).Item("LastNo"), Integer).ToString("0000000"), 1, 4))

使用前請注意喔

不然遇到問題再來解決也是很花時間的

0 comments: