您的位置:網(wǎng)站首頁 > 優(yōu)秀論文 > 正文
NGN話單處理系統(tǒng)的設(shè)計與開發(fā)
作者:張帆來源:原創(chuàng)日期:2013-12-17人氣:1135
2006年底,河南網(wǎng)通公司對全省電話網(wǎng)絡(luò)進行大改造,新建的網(wǎng)絡(luò)打破了以前的網(wǎng)絡(luò)結(jié)構(gòu),以兩個功能強大的新一代交換機(SS1,SS2)為樞紐,連接全省所有的市話交換機(市話、網(wǎng)關(guān)、匯接、長途等交換機),對全省所有的話務(wù)進行匯接、交換、統(tǒng)計,交換機對每個地市的話務(wù)情況進行詳細(xì)記錄,這樣一來,對于我們網(wǎng)管來說,怎樣統(tǒng)計SS上的話單成為了一個新的問題,由于省公司沒有提供相應(yīng)的程序,所以,只有自己想辦法解決。于是,經(jīng)過近1個月的努力,我開發(fā)出了NGN話單處理程序。
1、NGN話單處理的概念
NGN話單就是功能強大的兩臺交換機SS1和SS2生成的話單文件,該文件包括3種類型:市話文件,長話文件,對端入網(wǎng)。兩臺交換機互為負(fù)荷分擔(dān)。每個交換機產(chǎn)生的每種類型的文件數(shù)量相等,一天的文件為96個,兩臺交換機每天共產(chǎn)生96*3*2個文件,這些文件存放在省公司的兩臺專門的ftp服務(wù)器上。要想處理話單文件首先第一步要每天下載這些文件,第二步對話單文件批量更名(轉(zhuǎn)換程序?qū)D(zhuǎn)換前的文件名稱有嚴(yán)格規(guī)定),然后用轉(zhuǎn)換程序?qū)⑦@些二進制文件轉(zhuǎn)換成標(biāo)準(zhǔn)文本格式(廠家對二進制文件的格式保密,只提供話單的格式轉(zhuǎn)換程序,將二進制文件轉(zhuǎn)換為文本文件),具體話單樣式如下(兩條記錄):
1086A2AD3102393396000000158393481502007/08/2322:00:34.532007/08/2322:01:22.900000048.400062220017300000006000000001001583934815000000000EE
最后,對文本文件編程讀取內(nèi)容,插入到相應(yīng)的庫表中,再編寫程序?qū)毂碇械奈募M行統(tǒng)計分析,得到我們需要的內(nèi)容,最終形成報表。
2、NGN話單處理系統(tǒng)的設(shè)計
話單處理系統(tǒng)采用兩臺服務(wù)器,一臺作為數(shù)據(jù)庫服務(wù)器,數(shù)據(jù)庫采用sqlserver2000數(shù)據(jù)庫,根據(jù)原始話單的特征,建立數(shù)據(jù)庫ngnbill,分配用戶py_ngnser,passwd:zhangfan,考慮到話單數(shù)據(jù)的量比較大,修改庫文件大小為10G建立原始庫表6張,ss1市話表ss1_loc,ss1長途表ss1_tol,ss1對端入網(wǎng)ss1_tom,ss2市話表ss2_loc,ss2長途表ss2_tol,ss2對端入網(wǎng)ss2_tom。
另外一臺服務(wù)器作應(yīng)用程序服務(wù)器,負(fù)責(zé)運行程序,定時從省公司的ftp服務(wù)器上下載話單文件,然后執(zhí)行一系列程序,直到數(shù)據(jù)入庫,分析出結(jié)果。
我開發(fā)程序時使用的Powerbuilder6.5以及sqlserver2000數(shù)據(jù)庫。Powerbuilder6.5是Powersoft公司開發(fā)的用于開發(fā)大型數(shù)據(jù)庫應(yīng)用的工具,它是以客戶/服務(wù)器體系結(jié)構(gòu)來開發(fā)數(shù)據(jù)庫應(yīng)用程序,也是一種面向?qū)ο蟮膱D形方式的集成開發(fā)工具。
3、NGN話單處理系統(tǒng)的程序簡要流程圖:
4、各模塊說明
4.1文件自動下載,利用DOS的批處理程序和WINDOWS的計劃任務(wù)實現(xiàn)了自動FTP功能,以下為程序部分源碼(略)
該程序主要是利用dos批處理取得當(dāng)前的日期,然后計算出昨天的日期,合成文件名的共性部分(文件名舉例:SISDN_200708230015.393.PY_01.LOC.04.0001),然后利用mget命令將所有符合條件的文件下載到本地服務(wù)器相應(yīng)目錄,說明:利用批處理程序?qū)崿F(xiàn)日期的加減較為繁瑣,上面的程序用到了一個第三方的小程序date1,用來取前一天的日期,最終用windows的計劃任務(wù)定時運行程序即可。本模塊我還提供了另外一種方式手動方式下載,具體是利用現(xiàn)有的網(wǎng)絡(luò)下載工具cuteftp,可以時時根據(jù)需要下載自己需要的相應(yīng)日期或時區(qū)的文件,由于是現(xiàn)有的程序,不再介紹。
4.2文件批量更名模塊
上面提到了剛下載的文件的名字比較長,具體文件名舉例如下:
并且不符合轉(zhuǎn)換程序?qū)π枰D(zhuǎn)換文件的文件名的要求,具體要求文件名格式為d********.s12,“*”為任意數(shù)字,轉(zhuǎn)換后的文件名見下
SISDN_200708230245.393.PY_01.LOC.04.0011
SISDN_200708230015.393.PY_01.TOL.04.0001
SISDN_200708230045.393.PY_01.TOM.04.0003
該部分的程序用powerbuilder6.5編寫,部分主要代碼(略):
該段程序完成的功能是將計算機上相應(yīng)目錄下的文件找到,并按照事先規(guī)定的文件名規(guī)則進行批量更名,主要用到了windows自帶的api函數(shù)movefile。
4.3文件轉(zhuǎn)換模塊
該程序主要功能是將符合文件名要求的話單文件從二進制格式轉(zhuǎn)換為文本格式,另外還將轉(zhuǎn)換后的許多文件合成一個文本文件。其他不再介紹。
4.4文本文件入庫
該模塊的主要功能為將文本文件逐條讀取,然后插入到數(shù)據(jù)庫響應(yīng)的數(shù)據(jù)庫表中該程序有powerbuilder6.5編寫,主要是在窗口中的“開始”按鈕中編寫代碼,代碼省略。
該段代碼主要利用powerbuilder6.5的讀取文本文件的函數(shù)功能,將文本文件打開,然后循環(huán)逐條讀取,將讀取的字符串按照字段長度逐級截取,然后將各個字符串插入到數(shù)據(jù)庫表中,直到最后一條為止,頁面的開始時間和終止時間用來觀察所有一天的數(shù)據(jù)處理完成所需要的時間,判斷處理速度。
4.5話單的統(tǒng)計分析
話單的統(tǒng)計主要完成的功能是將話單按主叫或被叫號碼分析,根據(jù)號碼段判斷出所屬局向,從而計算出不同的局向產(chǎn)生的市話,長途,以及對端入網(wǎng)的呼叫總時長,進而計算出話務(wù)量,這在以前是不可能實現(xiàn)的,通過對這些日常話務(wù)量的監(jiān)控,發(fā)現(xiàn)話務(wù)量激增或銳減時可以立即對話單進行核對,從而做到發(fā)現(xiàn)問題及時應(yīng)對。
該部分的程序編寫主要是數(shù)據(jù)庫編程,編寫好的數(shù)據(jù)庫存儲過程用powerbuilder6.5編寫程序調(diào)用運行,只所以這樣做主要考慮到ngn話單的量特別大,每天都有幾百萬條數(shù)據(jù)需要處理,如果單獨用powerbuilder6.5和簡單的sql語句處理起來速度相當(dāng)慢,用數(shù)據(jù)庫存儲過程來處理會大大加快處理速度,這樣我們用同樣的服務(wù)器處理起來速度會成倍提高。主要的存儲舉例:市話處理存儲過程pro_sh_qq(將主叫號碼和被叫號碼分別截取前4位插入到千群表中),pro_zbjx(將千群表中的數(shù)據(jù)按照目前濮陽各局向所包含的千群來增加主被叫局向同時插入到局向表中),這兩個存儲過程同時會處理長途和對端入網(wǎng)的數(shù)據(jù),只不過截取的局向長度不同,其他相同。有了主叫和被叫局向,我們就可以對所有的局向通話的總量進行計算,從而得出任意局向間的通話情況。具體存儲過程代碼省略。
注意事項:backuplogngnbillwithno_log的功能是截取數(shù)據(jù)庫日志文件長度,因為數(shù)據(jù)量比較大,日志增長比較快,要及時截取,避免硬盤空間很快就滿時造成程序停止向下運行。
4.6數(shù)據(jù)存儲
該部分的功能是將數(shù)據(jù)庫中處理后的數(shù)據(jù),根據(jù)所需保存成exccel文件,以便于形成報表。具體是利用powerbuilder6.5編寫,利用數(shù)據(jù)窗口的檢索功能將符合條件的數(shù)據(jù)檢索出來,然后保存成excel文件。
另外值得注意的是如果處理的是對端入網(wǎng)時或者是對全區(qū)的數(shù)據(jù)進行保存時,不能保存成excel文件,因為excel文件最大保存65536條記錄,這時只能保存成txt文件。
1、NGN話單處理的概念
NGN話單就是功能強大的兩臺交換機SS1和SS2生成的話單文件,該文件包括3種類型:市話文件,長話文件,對端入網(wǎng)。兩臺交換機互為負(fù)荷分擔(dān)。每個交換機產(chǎn)生的每種類型的文件數(shù)量相等,一天的文件為96個,兩臺交換機每天共產(chǎn)生96*3*2個文件,這些文件存放在省公司的兩臺專門的ftp服務(wù)器上。要想處理話單文件首先第一步要每天下載這些文件,第二步對話單文件批量更名(轉(zhuǎn)換程序?qū)D(zhuǎn)換前的文件名稱有嚴(yán)格規(guī)定),然后用轉(zhuǎn)換程序?qū)⑦@些二進制文件轉(zhuǎn)換成標(biāo)準(zhǔn)文本格式(廠家對二進制文件的格式保密,只提供話單的格式轉(zhuǎn)換程序,將二進制文件轉(zhuǎn)換為文本文件),具體話單樣式如下(兩條記錄):
1086A2AD3102393396000000158393481502007/08/2322:00:34.532007/08/2322:01:22.900000048.400062220017300000006000000001001583934815000000000EE
最后,對文本文件編程讀取內(nèi)容,插入到相應(yīng)的庫表中,再編寫程序?qū)毂碇械奈募M行統(tǒng)計分析,得到我們需要的內(nèi)容,最終形成報表。
2、NGN話單處理系統(tǒng)的設(shè)計
話單處理系統(tǒng)采用兩臺服務(wù)器,一臺作為數(shù)據(jù)庫服務(wù)器,數(shù)據(jù)庫采用sqlserver2000數(shù)據(jù)庫,根據(jù)原始話單的特征,建立數(shù)據(jù)庫ngnbill,分配用戶py_ngnser,passwd:zhangfan,考慮到話單數(shù)據(jù)的量比較大,修改庫文件大小為10G建立原始庫表6張,ss1市話表ss1_loc,ss1長途表ss1_tol,ss1對端入網(wǎng)ss1_tom,ss2市話表ss2_loc,ss2長途表ss2_tol,ss2對端入網(wǎng)ss2_tom。
另外一臺服務(wù)器作應(yīng)用程序服務(wù)器,負(fù)責(zé)運行程序,定時從省公司的ftp服務(wù)器上下載話單文件,然后執(zhí)行一系列程序,直到數(shù)據(jù)入庫,分析出結(jié)果。
我開發(fā)程序時使用的Powerbuilder6.5以及sqlserver2000數(shù)據(jù)庫。Powerbuilder6.5是Powersoft公司開發(fā)的用于開發(fā)大型數(shù)據(jù)庫應(yīng)用的工具,它是以客戶/服務(wù)器體系結(jié)構(gòu)來開發(fā)數(shù)據(jù)庫應(yīng)用程序,也是一種面向?qū)ο蟮膱D形方式的集成開發(fā)工具。
3、NGN話單處理系統(tǒng)的程序簡要流程圖:
4、各模塊說明
4.1文件自動下載,利用DOS的批處理程序和WINDOWS的計劃任務(wù)實現(xiàn)了自動FTP功能,以下為程序部分源碼(略)
該程序主要是利用dos批處理取得當(dāng)前的日期,然后計算出昨天的日期,合成文件名的共性部分(文件名舉例:SISDN_200708230015.393.PY_01.LOC.04.0001),然后利用mget命令將所有符合條件的文件下載到本地服務(wù)器相應(yīng)目錄,說明:利用批處理程序?qū)崿F(xiàn)日期的加減較為繁瑣,上面的程序用到了一個第三方的小程序date1,用來取前一天的日期,最終用windows的計劃任務(wù)定時運行程序即可。本模塊我還提供了另外一種方式手動方式下載,具體是利用現(xiàn)有的網(wǎng)絡(luò)下載工具cuteftp,可以時時根據(jù)需要下載自己需要的相應(yīng)日期或時區(qū)的文件,由于是現(xiàn)有的程序,不再介紹。
4.2文件批量更名模塊
上面提到了剛下載的文件的名字比較長,具體文件名舉例如下:
并且不符合轉(zhuǎn)換程序?qū)π枰D(zhuǎn)換文件的文件名的要求,具體要求文件名格式為d********.s12,“*”為任意數(shù)字,轉(zhuǎn)換后的文件名見下
SISDN_200708230245.393.PY_01.LOC.04.0011
SISDN_200708230015.393.PY_01.TOL.04.0001
SISDN_200708230045.393.PY_01.TOM.04.0003
該部分的程序用powerbuilder6.5編寫,部分主要代碼(略):
該段程序完成的功能是將計算機上相應(yīng)目錄下的文件找到,并按照事先規(guī)定的文件名規(guī)則進行批量更名,主要用到了windows自帶的api函數(shù)movefile。
4.3文件轉(zhuǎn)換模塊
該程序主要功能是將符合文件名要求的話單文件從二進制格式轉(zhuǎn)換為文本格式,另外還將轉(zhuǎn)換后的許多文件合成一個文本文件。其他不再介紹。
4.4文本文件入庫
該模塊的主要功能為將文本文件逐條讀取,然后插入到數(shù)據(jù)庫響應(yīng)的數(shù)據(jù)庫表中該程序有powerbuilder6.5編寫,主要是在窗口中的“開始”按鈕中編寫代碼,代碼省略。
該段代碼主要利用powerbuilder6.5的讀取文本文件的函數(shù)功能,將文本文件打開,然后循環(huán)逐條讀取,將讀取的字符串按照字段長度逐級截取,然后將各個字符串插入到數(shù)據(jù)庫表中,直到最后一條為止,頁面的開始時間和終止時間用來觀察所有一天的數(shù)據(jù)處理完成所需要的時間,判斷處理速度。
4.5話單的統(tǒng)計分析
話單的統(tǒng)計主要完成的功能是將話單按主叫或被叫號碼分析,根據(jù)號碼段判斷出所屬局向,從而計算出不同的局向產(chǎn)生的市話,長途,以及對端入網(wǎng)的呼叫總時長,進而計算出話務(wù)量,這在以前是不可能實現(xiàn)的,通過對這些日常話務(wù)量的監(jiān)控,發(fā)現(xiàn)話務(wù)量激增或銳減時可以立即對話單進行核對,從而做到發(fā)現(xiàn)問題及時應(yīng)對。
該部分的程序編寫主要是數(shù)據(jù)庫編程,編寫好的數(shù)據(jù)庫存儲過程用powerbuilder6.5編寫程序調(diào)用運行,只所以這樣做主要考慮到ngn話單的量特別大,每天都有幾百萬條數(shù)據(jù)需要處理,如果單獨用powerbuilder6.5和簡單的sql語句處理起來速度相當(dāng)慢,用數(shù)據(jù)庫存儲過程來處理會大大加快處理速度,這樣我們用同樣的服務(wù)器處理起來速度會成倍提高。主要的存儲舉例:市話處理存儲過程pro_sh_qq(將主叫號碼和被叫號碼分別截取前4位插入到千群表中),pro_zbjx(將千群表中的數(shù)據(jù)按照目前濮陽各局向所包含的千群來增加主被叫局向同時插入到局向表中),這兩個存儲過程同時會處理長途和對端入網(wǎng)的數(shù)據(jù),只不過截取的局向長度不同,其他相同。有了主叫和被叫局向,我們就可以對所有的局向通話的總量進行計算,從而得出任意局向間的通話情況。具體存儲過程代碼省略。
注意事項:backuplogngnbillwithno_log的功能是截取數(shù)據(jù)庫日志文件長度,因為數(shù)據(jù)量比較大,日志增長比較快,要及時截取,避免硬盤空間很快就滿時造成程序停止向下運行。
4.6數(shù)據(jù)存儲
該部分的功能是將數(shù)據(jù)庫中處理后的數(shù)據(jù),根據(jù)所需保存成exccel文件,以便于形成報表。具體是利用powerbuilder6.5編寫,利用數(shù)據(jù)窗口的檢索功能將符合條件的數(shù)據(jù)檢索出來,然后保存成excel文件。
另外值得注意的是如果處理的是對端入網(wǎng)時或者是對全區(qū)的數(shù)據(jù)進行保存時,不能保存成excel文件,因為excel文件最大保存65536條記錄,這時只能保存成txt文件。
欄目分類
熱門排行
推薦信息
- 新時代物流國企青年職工思想政治教育工作的創(chuàng)新路徑研究
- 新媒體環(huán)境下企業(yè)政工工作的創(chuàng)新與實踐
- 政工干部視角下企業(yè)人才活力失效的表現(xiàn)、成因與激活路徑
- 社區(qū)教育與社區(qū)治理融合發(fā)展的實踐路徑研究
- 臨淄區(qū)構(gòu)建多元化消費場景的策略
- 國有企業(yè)機關(guān)部室建設(shè) 實踐探索與創(chuàng)新路徑
- 精細(xì)化管理在房屋建筑項目管理中的應(yīng)用
- 裝配式住宅樓預(yù)制構(gòu)件場地調(diào)度的優(yōu)化方法 ——以某裝配式建筑住宅群為例
- 鋼管樁與旋噴樁復(fù)合支護截水施工質(zhì)量管控要點
- 關(guān)于公路工程混凝土強度檢測技術(shù)的相關(guān)探討
期刊知識
- 2025年中科院分區(qū)表已公布!Scientific Reports降至三區(qū)
- 2023JCR影響因子正式公布!
- 國內(nèi)核心期刊分級情況概覽及說明!本篇適用人群:需要發(fā)南核、北核、CSCD、科核、AMI、SCD、RCCSE期刊的學(xué)者
- 我用了一個很復(fù)雜的圖,幫你們解釋下“23版最新北大核心目錄有效期問題”。
- CSSCI官方早就公布了最新南核目錄,有心的人已經(jīng)拿到并且投入使用!附南核目錄新增期刊!
- 北大核心期刊目錄換屆,我們應(yīng)該熟知的10個知識點。
- 注意,最新期刊論文格式標(biāo)準(zhǔn)已發(fā)布,論文寫作規(guī)則發(fā)生重大變化!文字版GB/T 7713.2—2022 學(xué)術(shù)論文編寫規(guī)則
- 盤點那些評職稱超管用的資源,1,3和5已經(jīng)“絕種”了
- 職稱話題| 為什么黨校更認(rèn)可省市級黨報?是否有什么說據(jù)?還有哪些機構(gòu)認(rèn)可黨報?
- 《農(nóng)業(yè)經(jīng)濟》論文投稿解析,難度指數(shù)四顆星,附好發(fā)選題!