freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

bsnbusinesssupportnetwork計(jì)費(fèi)系統(tǒng)的預(yù)付費(fèi)入庫(kù)畢業(yè)論文(已改無(wú)錯(cuò)字)

2022-08-24 09:00:03 本頁(yè)面
  

【正文】 d帳戶標(biāo)識(shí)DECIMAL(12,0)Ycust_id客戶標(biāo)識(shí)DECIMAL(12,0)Ycust_category客戶分組DECIMAL(9,0)Yacct_item_type_id帳目類(lèi)型標(biāo)識(shí)DECIMAL(9,0)Yitem_source_id帳目來(lái)源標(biāo)識(shí)DECIMAL(9,0)Ybilling_cycle_id計(jì)費(fèi)周期標(biāo)識(shí)DECIMAL(9,0)Yfee_cycle_id費(fèi)用周期標(biāo)識(shí)DECIMAL(9,0)Ydeal_source處理來(lái)源INTEGERYdisct_charge優(yōu)惠費(fèi)用NUMERIC(16,5)Yold_charge優(yōu)惠前費(fèi)用NUMERIC(16,5)Ycharge優(yōu)惠后費(fèi)用NUMERIC(16,5)Ydisct_express_id優(yōu)惠計(jì)算標(biāo)識(shí)DECIMAL(9,0)duration通話時(shí)長(zhǎng)DECIMAL(9,0)Yrate_duration計(jì)費(fèi)時(shí)長(zhǎng)DECIMAL(15,0)Yunit_num單位個(gè)數(shù)DECIMAL(9,0)Ystate狀態(tài)VARCHAR(3)Ystate_date狀態(tài)時(shí)間DATETIME YEAR TO SECONDYcreated_date數(shù)據(jù)生成日期DATETIME YEAR TO SECONDYarea_id營(yíng)業(yè)區(qū)DECIMAL(9,0)表 6,預(yù)付費(fèi)PCS話單帳目表話單格式:第一行是文件頭:FILEHEAD|100000|100001|100002|100003|100004|200001|300001|300002|100008|100005|100006|100007|160001|160002|160003|160011|160012|160015|160013|160014,F(xiàn)ILEHEAD是文件頭標(biāo)識(shí),后面緊接著的一串一串?dāng)?shù)字是屬性標(biāo)識(shí)。接著每一行都是一條話單記錄,如90002|80014|15|023600003130123456789012345678|02360000312|500060000301|200060000315|1|12912525|20060822000000|20060822000100|10|160001|160002|160003|160011|160012|160015|160013|160014。入庫(kù)前的話單經(jīng)過(guò)了預(yù)處理標(biāo)準(zhǔn)化。預(yù)處理后話單格式為:前半部分為預(yù)處理標(biāo)準(zhǔn)事件輸出,后半部分是各地預(yù)付費(fèi)特殊屬性。字段名字段代碼數(shù)據(jù)類(lèi)型接口類(lèi)型長(zhǎng)度屬性標(biāo)識(shí)描述話單標(biāo)識(shí)event_inst_idLong longchar12100000事件類(lèi)型Event_type_idLong longChar9100001網(wǎng)元IDnet_IDLong longChar9100002網(wǎng)元標(biāo)識(shí)主叫Calling_nbrcharChar20100003主叫,帶區(qū)號(hào)被叫CALLED_NBRChar char20100004被叫主產(chǎn)品實(shí)例標(biāo)識(shí)Serv_idLong longChar12200001客戶標(biāo)識(shí)Cust_idLong longChar12300001客戶分組Cust_categoryLong longChar9300002原始文件標(biāo)識(shí)Old_file_idLong longChar9100008文件ID標(biāo)識(shí),可以通過(guò)關(guān)聯(lián)查找到預(yù)處理的文件名開(kāi)始時(shí)間Start_timeDATETIMEChar14100005格式:yyyymmddhhmmss結(jié)束時(shí)間End_timeDATETIMEChar14100006格式:yyyymmdd hh:mm:ss時(shí)長(zhǎng)durationlonglong14100007優(yōu)惠前費(fèi)用1Pcs_oldcharge1doubledouble10160001優(yōu)惠后費(fèi)用1Pcs_charge1doubledouble10160002優(yōu)惠前費(fèi)用2Pcs_oldcharge2doubledouble10160003優(yōu)惠后費(fèi)用2Pcs_charge2doubledouble10160011優(yōu)惠前費(fèi)用3Pcs_oldcharge3doubledouble10160012優(yōu)惠后費(fèi)用3Pcs_charge3doubledouble10160013優(yōu)惠前費(fèi)用4Pcs_oldcharge4doubledouble10160014優(yōu)惠后費(fèi)用4Pcs_charge4doubledouble10160015優(yōu)惠前費(fèi)用5Pcs_oldcharge5doubledouble10160016優(yōu)惠后費(fèi)用5Pcs_charge5doubledouble10160017優(yōu)惠前費(fèi)用6Pcs_oldcharge6doubledouble10160018優(yōu)惠后費(fèi)用6Pcs_charge6doubledouble10160019是否需要計(jì)算跳次PCS_ORSHIHUAIntInt1160020計(jì)費(fèi)方標(biāo)志PCS_BILLINGFLAGcharchar5160021表 7,話單格式第三章 預(yù)付費(fèi)入庫(kù)設(shè)計(jì)預(yù)付費(fèi)入庫(kù)就是將揀重以后的話單文件,經(jīng)過(guò)處理,解析并提取其中的信息,然后把這些信息入庫(kù),將它們以表的結(jié)構(gòu)存放在數(shù)據(jù)庫(kù)中,總的來(lái)說(shuō)它實(shí)現(xiàn)的是從文件級(jí)到表級(jí)的過(guò)程。入庫(kù)后產(chǎn)生了三張表:清單表、費(fèi)用表和總帳(sd)表。清單表、費(fèi)用表是給web前臺(tái)查詢用的,為客戶提供清單級(jí)的查詢;sd表的帳目數(shù)據(jù)是給后面出帳用的,可以為客戶提供總帳級(jí)的查詢。由于電信計(jì)費(fèi)時(shí)的數(shù)據(jù)量很大,入庫(kù)時(shí),對(duì)數(shù)據(jù)庫(kù)的操作會(huì)很慢,而電信計(jì)費(fèi)要求是快速的實(shí)現(xiàn)計(jì)費(fèi),為了提高程序的速度要采取措施:批量入庫(kù),即寫(xiě)數(shù)據(jù)庫(kù)時(shí)我們采用批量操作,當(dāng)提取的記錄達(dá)到一定數(shù)目時(shí),把它們一起寫(xiě)入數(shù)據(jù)庫(kù),從而可以實(shí)現(xiàn)快速的對(duì)數(shù)據(jù)庫(kù)進(jìn)行寫(xiě)操作。實(shí)現(xiàn)從文件級(jí)到表級(jí)的轉(zhuǎn)換,關(guān)鍵是如何提取文件中的話單記錄并把它放到表中相應(yīng)得位置中,在這里我們用的是事件驅(qū)動(dòng)來(lái)實(shí)現(xiàn),即先讀取話單文件的頭文件,把它屬性標(biāo)識(shí)ID存放到當(dāng)前文件的屬性ID序列中;然后取出一條話單記錄,依次讀取話單字段,然后根據(jù)當(dāng)前文件的屬性ID序列中對(duì)應(yīng)屬性標(biāo)識(shí)ID來(lái)設(shè)置話單屬性,并把它存放到話單計(jì)費(fèi)事件適配器類(lèi)(TCdrEvent)中的計(jì)費(fèi)原數(shù)據(jù)結(jié)構(gòu)(TCallDetailRecord)pRecordData的對(duì)應(yīng)的成員變量里。要提取相應(yīng)得字段的信息時(shí),再用屬性標(biāo)識(shí)ID來(lái)匹配取得。填寫(xiě)清單表、費(fèi)用表和sd表時(shí)會(huì)有所不同,清單表的字段可以直接從中間數(shù)據(jù)pRecordData中獲得,費(fèi)用表的字段通過(guò)清單表,查找?guī)つ款?lèi)型表來(lái)填寫(xiě)。填寫(xiě)sd表時(shí)還必須查找服務(wù)資料和查找?guī)?wù)關(guān)系來(lái)填寫(xiě)相關(guān)字段。入清單表和費(fèi)用表與入sd表也有不同,入清單表和費(fèi)用表時(shí),只要將解析出的記錄寫(xiě)進(jìn)對(duì)應(yīng)的表中即可,而入sd表時(shí)比較復(fù)雜,新記錄還要與對(duì)應(yīng)sd表中的記錄比較,如果沒(méi)有記錄才寫(xiě)入新的紀(jì)錄,有相同記錄要修改記錄。對(duì)數(shù)據(jù)庫(kù)的讀寫(xiě)操作會(huì)很慢,為了提高程序的速度,把需要進(jìn)行查找的sd表的信息以Hash表的形式先存入內(nèi)存,另外再申明兩個(gè)Hash容器:insert容器和update容器。用新記錄與Hash內(nèi)存的記錄比較,如果沒(méi)有記錄,對(duì)insert容器進(jìn)行操作,用新記錄與insert容器中的記錄比較,insert容器中有記錄就修改該記錄,insert容器沒(méi)有記錄就把新記錄放入其中;如果Hash內(nèi)存有記錄,就對(duì)update容器進(jìn)行操作,用新記錄與update容器中的記錄比較,update容器中有記錄就修改該記錄,update容器沒(méi)有記錄就把新記錄放入其中。在入庫(kù)時(shí),把 insert容器中的數(shù)據(jù)寫(xiě)進(jìn)sd表里,用update容器中的數(shù)據(jù)修改sd表對(duì)應(yīng)得記錄;然后還要用insert容器和update容器的數(shù)據(jù)更新Hash內(nèi)存使其與數(shù)據(jù)庫(kù)中的sd表同步。Hash內(nèi)存等這些在計(jì)費(fèi)系統(tǒng)的其他模塊中也用到過(guò),相關(guān)結(jié)構(gòu)和申明都已經(jīng)寫(xiě)好放在公用的庫(kù)中,在這里我們只要使用它,所以不會(huì)細(xì)講它。但它是計(jì)費(fèi)系統(tǒng)的重要部分,通過(guò)它,才使程序能夠快速的運(yùn)行。預(yù)付費(fèi)入庫(kù)與計(jì)費(fèi)系統(tǒng)的合帳模塊有些類(lèi)似,在設(shè)計(jì)預(yù)付費(fèi)入庫(kù)時(shí)會(huì)參考合帳模塊的相關(guān)設(shè)計(jì)思想。 預(yù)付費(fèi)入庫(kù)基類(lèi)的設(shè)計(jì) 預(yù)付費(fèi)入庫(kù)基類(lèi)(TPcsTrans)的設(shè)計(jì)TPcsTrans的主要功能是處理話單文件,把話單文件解析成一條一條的話單記錄,并把它們寫(xiě)入數(shù)據(jù)庫(kù)。因?yàn)閷?duì)數(shù)據(jù)庫(kù)的操作很慢,會(huì)占用大量的運(yùn)行時(shí)間,所以先把這些記錄放在內(nèi)存中,等到達(dá)一定數(shù)量時(shí),再成批的放入數(shù)據(jù)庫(kù),為此我們需要一個(gè)用于存放這些記錄的空間,所以我們還要設(shè)計(jì)一個(gè)數(shù)據(jù)組織操作類(lèi)(數(shù)據(jù)庫(kù)緩沖區(qū))TEventPcsInfo,并把它作為T(mén)PcsTrans的一個(gè)成員。為了安全,要設(shè)計(jì)一個(gè)處理函數(shù)接口:處理函數(shù)Execute(),在它里面可以調(diào)用私有成員函數(shù)。另外還需要一些私有成員函數(shù):根據(jù)執(zhí)行方式預(yù)設(shè)查詢SQL PreSetQuerySQL(), 讀取配置信息GetConfigInfo(),處理文件函數(shù)ProcessPcsFile(),處理單條記錄DealOneCdr(),完成一個(gè)文件操作同時(shí)入庫(kù):DoneOneFile()。還要一個(gè)成員變量TTbInfoManager(內(nèi)存資料類(lèi))的成員。還需要成員變量:存放已經(jīng)處理的文件信息 vectorTEventSourceFileInfo m_vFileProc等,另外它還要繼承類(lèi)TAppComponent,這樣可以方便對(duì)數(shù)據(jù)庫(kù)的操作。所以設(shè)計(jì)出類(lèi)TPcsTrans 的結(jié)構(gòu)如下:class TPcsTrans : public TAppComponent {public: // 構(gòu)造函數(shù) TPcsTrans(TAppComponent *pParent,TTbInfoManager *pTbInfoManagerPara,TPCSInfoManager *pPcsInfoManagerPara) : TAppComponent(pParent),m_EventPcsInfo(NULL),m_pclTbInfoManager(pTbInfoManagerPara),m_iCount(100000) { m_EventPcsInfo = new (nothrow)TEventPcsInfo(pParent,pPcsInfoManagerPara)。 if(!m_EventPcsInfo) { throw TException(TPcsTrans::TPcsTrans alloc memory for TEventPcsInfo !)。 } ()。 }。 // 析構(gòu)函數(shù) virtual ~TPcsTrans() { delete m_EventPcsInfo。 m_EventPcsInfo = NULL。 }。 // 處理 bool Execute(TPcsTransExecInfo amp。tPcsTransExecInfo)。private: // 根據(jù)執(zhí)行方式預(yù)設(shè)查詢SQL bool PreSetQuerySQL(const TPcsTransExecInfo amp。tPcsTransExecInfo, char *psSQL)。 // 讀取配置信息 bool GetConfigInfo(TConfigInfo amp。tConfigInfo)。 // 處理話單文件 bool ProcessPcsFile(const char *psSQL, TPcsTransExecInfo amp。tPcsTransExecInfo, TConfigInfo amp。tConfigInfo)。 //處理單條記錄 bool DealOneCdr(TRateFileIOManager amp。clRateFileIOMan,TCdrEvent amp。tCdrEvent,TPcsTransExecInfo amp。tPcsTransExecInfo)。 //完成一個(gè)文件操作同時(shí)入庫(kù) bool DoneOneFile(TRateFileIOManager amp。clRateFileIOMan, TRateFileDBInterface amp。clRateFileDBIF, TEventSourceFileInfo *ptUnsettledFileInfo, TPcsTransExecInfo amp。tPcsTransExecInfo)。private: //內(nèi)存數(shù)據(jù)管理類(lèi) TEventPcsInfo *m_EventPcsInfo。 //預(yù)設(shè)的入庫(kù)緩沖區(qū)記錄數(shù)量 int m_iCount。 //復(fù)用批價(jià)組件需要傳入的構(gòu)造指針,只需要初始化 TTbInfoManager *m_pclTbInfoManager。 //存放已經(jīng)處理的文件信息 vecto
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1