不知道大家有沒有遇到過求一串?dāng)?shù)據(jù)各數(shù)字和的情況,這兩天就有遇到小伙伴來咨詢這個(gè)問題,數(shù)據(jù)庫導(dǎo)入的固定長(zhǎng)度數(shù)據(jù),需要把數(shù)據(jù)中的各個(gè)數(shù)字相加之和打印出來,要實(shí)現(xiàn)求數(shù)據(jù)各數(shù)據(jù)的總合,用中瑯條碼軟件中的腳本編程就可以實(shí)現(xiàn)(其實(shí)這個(gè)功能在Excel也能實(shí)現(xiàn)),不過今天我們就主要聊一下中瑯條碼軟件是如何利用腳本編程求固定長(zhǎng)度數(shù)據(jù)和,如下圖保存在TXT文本中長(zhǎng)度為5的數(shù)據(jù)。
在中瑯條碼打印軟件中新建一個(gè)空白標(biāo)簽,打開數(shù)據(jù)庫設(shè)置,添加“TXT文本數(shù)據(jù)源”,彈出TXT文本數(shù)據(jù)源管理窗口,帶你“瀏覽”添加TXT文件,點(diǎn)擊“測(cè)試連接”和“添加”完成數(shù)據(jù)庫導(dǎo)入TXT文本中的數(shù)據(jù)。
利用條碼軟件左側(cè)工具欄中的“A”圖標(biāo)在標(biāo)簽上添加兩個(gè)普通文本都導(dǎo)入數(shù)據(jù)庫數(shù)據(jù)(其中一個(gè)不處理作為對(duì)比),雙擊普通文本打開“圖形屬性-數(shù)據(jù)源”,點(diǎn)擊數(shù)據(jù)對(duì)象下面的修改按鈕,彈出數(shù)據(jù)對(duì)象管理窗口,數(shù)據(jù)對(duì)象類型修改為“數(shù)據(jù)庫導(dǎo)入”,導(dǎo)入TXT文本數(shù)據(jù)。
打開下面這個(gè)文本的“圖形屬性-數(shù)據(jù)源”,在右側(cè)添加一個(gè)“腳本編程”的處理方法,輸入以下代碼:
/*javascript*/
//vars:thisObj,dataObj
var a = dataObj.getOriginalDataValue() + "";
var b =strReturn.split(""); //split()函數(shù),把原數(shù)據(jù)分裂成b[0]、b[1]、b[2]、b[3]、b[4]五部分,以此類推數(shù)據(jù)長(zhǎng)度有多少就能分裂成多少
var c = Number(b[0])+Number(b[1])+Number(b[2])+Number(b[3])+Number(b[4]); //求和,Number()函數(shù)把個(gè)對(duì)象數(shù)值轉(zhuǎn)換成數(shù)字
strReturn = c.toFixed(0); //由于輸出數(shù)據(jù)含小數(shù)點(diǎn),所以取整輸出
利用split()函數(shù),把原數(shù)據(jù)分成多個(gè)部分,比如b[0]代表的是第一個(gè)數(shù)據(jù),b[1]代表第二個(gè)數(shù)據(jù),b[2]代表第三個(gè)數(shù)據(jù),b[3]代表第四個(gè)數(shù)據(jù),b[4]代表第五個(gè)數(shù)據(jù),利用Number()函數(shù)把各對(duì)象轉(zhuǎn)換成數(shù)字再相加就得出各項(xiàng)數(shù)字之和了。打印預(yù)覽也可以批量求和的效果。
綜上所述就是利用中瑯條碼軟件腳本編程求固定長(zhǎng)度數(shù)據(jù)的和方法,如果輸出的數(shù)據(jù)不是數(shù)字之和,而是“NaN”字符,這就說明輸入的數(shù)據(jù)長(zhǎng)度不對(duì),或者數(shù)據(jù)不是純數(shù)字(含有其他的字母,字符等),檢查原數(shù)據(jù)。
共有條評(píng)論 網(wǎng)友評(píng)論