版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 目 錄</b></p><p><b> 前 言3</b></p><p><b> 第一章 引言4</b></p><p> 1.1 課題背景4</p><p> 1.2 信息化建設(shè)的意義4</p><
2、;p> 第二章 系統(tǒng)分析5</p><p> 2.1 系統(tǒng)需求分析5</p><p> 2.1.1 系統(tǒng)調(diào)查5</p><p> 2.1.2 系統(tǒng)業(yè)務(wù)流程圖6</p><p> 2.1.3 數(shù)據(jù)流程圖6</p><p> 第三章 系統(tǒng)設(shè)計(jì)8</p><p&g
3、t; 3.1 系統(tǒng)的總體設(shè)計(jì)8</p><p> 3.1.1 系統(tǒng)的總體設(shè)計(jì)方案8</p><p> 3.1.2 系統(tǒng)研發(fā)平臺(tái)8</p><p> 3.1.3 系統(tǒng)功能設(shè)計(jì)9</p><p> 3.2 數(shù)據(jù)設(shè)計(jì)10</p><p> 3.2.1 數(shù)據(jù)庫(kù)結(jié)構(gòu)化查詢(xún)語(yǔ)言10</p&
4、gt;<p> 3.2.2 數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)13</p><p> 第四章 稅務(wù)票據(jù)分析系統(tǒng)實(shí)現(xiàn)19</p><p> 4.1 創(chuàng)建工程項(xiàng)目19</p><p> 4.2 創(chuàng)建稅務(wù)票據(jù)分析系統(tǒng)的主窗體19</p><p> 4.3 創(chuàng)建主窗體菜單19</p><p> 4.4
5、 創(chuàng)建系統(tǒng)基礎(chǔ)信息模塊22</p><p> 4.5 創(chuàng)建系統(tǒng)數(shù)據(jù)導(dǎo)入模塊27</p><p> 4.6 創(chuàng)建系統(tǒng)數(shù)據(jù)分析模34</p><p> 4.7 系統(tǒng)的實(shí)現(xiàn)40</p><p> 第五章 系統(tǒng)使用、測(cè)試、維護(hù)與評(píng)價(jià)41</p><p> 5.1 系統(tǒng)的使用41</p&g
6、t;<p> 5.2 系統(tǒng)維護(hù)41</p><p> 5.3 系統(tǒng)評(píng)價(jià)42</p><p> 5.4系統(tǒng)測(cè)試42</p><p> 5.4.1測(cè)試目的42</p><p> 5.4.2測(cè)試方法43</p><p> 5.4.3測(cè)試結(jié)果43</p><p>
7、;<b> 總 結(jié)45</b></p><p><b> 致 謝46</b></p><p><b> 內(nèi)容摘要</b></p><p> 《納稅人統(tǒng)計(jì)信息管理系統(tǒng)》是采用VB開(kāi)發(fā)的一個(gè)數(shù)據(jù)庫(kù)管理系統(tǒng)。本篇論文主要講述了本系開(kāi)發(fā)的目的和意義。在系統(tǒng)需求分析中,簡(jiǎn)明闡述客戶(hù)的需求。在系統(tǒng)
8、設(shè)計(jì)中,詳細(xì)的展現(xiàn)了系統(tǒng)的各個(gè)功能模塊,所需的數(shù)據(jù)庫(kù)表及表字段、菜單的設(shè)計(jì)等。</p><p> 系統(tǒng)具有數(shù)據(jù)導(dǎo)入、數(shù)據(jù)統(tǒng)計(jì)、記錄查詢(xún)、報(bào)表打印等功能。較全面滿(mǎn)足了目前稅務(wù)機(jī)關(guān)的各項(xiàng)工作。該系統(tǒng)采用模塊化原理編程,做到了模塊規(guī)模適中,本身相對(duì)獨(dú)立。模塊化使程序結(jié)構(gòu)清晰,易于設(shè)計(jì)、易于理解,提高了系統(tǒng)的可靠性。</p><p> 本文詳細(xì)說(shuō)明了納稅人統(tǒng)計(jì)信息管理系統(tǒng)的業(yè)務(wù)流程,分析了其數(shù)
9、據(jù)流程,明確了數(shù)據(jù)表之間的聯(lián)系,詳細(xì)說(shuō)明了主要的程序邏輯。并以圖表的方式直觀的說(shuō)明,使程序易于理解。</p><p> 關(guān)鍵字: 管理系統(tǒng) VB 面向?qū)ο?lt;/p><p><b> Abstract</b></p><p> Taxpayers Statistical Information Management System is
10、 a kind of database management system, which is developed on the basis of Visual Basic (VB). This thesis mainly states the purpose and meaning of developing this system. In the analysis of the demand, it introduces the c
11、lients’ demands briefly. In the chapter of the system designing, it shows each functional module, the required database table, the Pivot Table Field, the menu designing and so on in details. </p><p> This s
12、ystem has the functions of data importing, statistical data, record reference and statement imprinting, which can meet the demands of the daily work of tax offices at present. This system uses the programming principle b
13、ased on modularization, which achieves the module scale to be moderate and the relative independence. The modularization makes the procedure structure clear, easy to design and understand, improving the system’s reliabil
14、ity. </p><p> This thesis details the business process of Taxpayers Statistical Information Management System, analyzes the procedure of data, defines the relationship among the statements and explains the
15、main procedure logic in the form of charters, which is easy to understand the procedure. </p><p> Key words: management system; VB; object-oriented </p><p><b> 前 言</b></p>
16、<p> 稅務(wù)票據(jù)管理是國(guó)稅局票據(jù)管理部門(mén)中一項(xiàng)非常重要的工作,對(duì)納稅人的認(rèn)證票據(jù)與開(kāi)具票據(jù)情況的統(tǒng)計(jì)分析又是該項(xiàng)業(yè)務(wù)中不可缺少的環(huán)節(jié),在幾天內(nèi)從幾萬(wàn)張票據(jù)中靠手工按票據(jù)類(lèi)型統(tǒng)計(jì)匯總出所需要的數(shù)據(jù)是很難實(shí)現(xiàn)。針對(duì)該項(xiàng)工作的需求研發(fā)了稅務(wù)票據(jù)分析產(chǎn)品,該產(chǎn)品是針對(duì)小規(guī)模納稅人的專(zhuān)用發(fā)票和普通發(fā)票的認(rèn)證票據(jù)、開(kāi)具票據(jù)的情況進(jìn)行統(tǒng)計(jì)分析的專(zhuān)用軟件。該系統(tǒng)起到了稅務(wù)征管系統(tǒng)(CTAIS)與稅務(wù)專(zhuān)用發(fā)票系統(tǒng)之間銜接和橋梁作用,它適用
17、于國(guó)稅局票據(jù)管理部門(mén)。是一種高度集成、易操作、降低分析人員勞動(dòng)強(qiáng)度的新型分析系統(tǒng)。系統(tǒng)集成了票據(jù)資料導(dǎo)入、納稅人資料導(dǎo)入、票據(jù)資料匯總數(shù)據(jù)導(dǎo)出、票據(jù)認(rèn)證開(kāi)具情況統(tǒng)計(jì)分析、票據(jù)統(tǒng)計(jì)排序、數(shù)據(jù)查詢(xún)等功能,實(shí)現(xiàn)了對(duì)納稅人開(kāi)具票據(jù)和認(rèn)證票據(jù)的有效監(jiān)控管理,堵塞了發(fā)票管理環(huán)節(jié)上的漏洞,提高了發(fā)票交驗(yàn)環(huán)節(jié)上的工作效率。本系統(tǒng)滿(mǎn)足國(guó)稅局不同基層分局對(duì)所管轄企業(yè)票據(jù)的綜合統(tǒng)計(jì)分析,系統(tǒng)采用先進(jìn)的應(yīng)用體系結(jié)構(gòu)和開(kāi)發(fā)模式,接口實(shí)現(xiàn)簡(jiǎn)單可靠。</p&g
18、t;<p><b> 第一章 引言</b></p><p><b> 1.1 課題背景</b></p><p> 隨著專(zhuān)用發(fā)票用戶(hù)的增多和國(guó)家稅務(wù)總局對(duì)國(guó)稅普票進(jìn)入金稅工程管理的要求,大連市國(guó)稅局直屬分局所使用的對(duì)專(zhuān)用發(fā)票的紅票、廢票進(jìn)行統(tǒng)計(jì)、匯總的《納稅人統(tǒng)計(jì)信息管理系統(tǒng)》,在功能上已遠(yuǎn)遠(yuǎn)滿(mǎn)足不了業(yè)務(wù)的需求。系統(tǒng)的升級(jí)和
19、功能的增加是當(dāng)前稅務(wù)局急需要解決的問(wèn)題。大連市國(guó)稅局基層分局共有14個(gè)。目前只有直屬分局使用了該系統(tǒng)。所以,對(duì)原系統(tǒng)重新進(jìn)行系統(tǒng)分析和設(shè)計(jì),使它的功能更加完善是勢(shì)在必行。</p><p> 1.2 信息化建設(shè)的意義</p><p> 信息化建設(shè)不外乎兩個(gè)方向,第一是電子商務(wù)網(wǎng)站,是企業(yè)開(kāi)向互聯(lián)網(wǎng)的一扇窗戶(hù);其次就是管理信息系統(tǒng),它是企業(yè)內(nèi)部信息的組織管理者。電子商務(wù)的發(fā)展速度和規(guī)模是
20、驚人的,似乎一夜之間,各行各業(yè)的許多企業(yè)都在互聯(lián)網(wǎng)上建立起自己的網(wǎng)站。這些網(wǎng)站有的以介紹產(chǎn)品為主,有的以提供技術(shù)支持為主,還有一些企業(yè)網(wǎng)站則開(kāi)展電子商務(wù),利用互聯(lián)網(wǎng)組織企業(yè)的進(jìn)貨和銷(xiāo)售。</p><p> 這些“窗戶(hù)”讓擁有它的企業(yè)能夠及時(shí)的掌握行業(yè)動(dòng)態(tài)、市場(chǎng)變化,而作出迅速的反應(yīng),以此占有市場(chǎng)先機(jī)。誰(shuí)擁有互聯(lián)網(wǎng),誰(shuí)就擁有了信息;誰(shuí)擁有了信息,誰(shuí)就能占據(jù)有利競(jìng)爭(zhēng)地位,已經(jīng)成為一條新的市場(chǎng)競(jìng)爭(zhēng)規(guī)則。當(dāng)然,管理信息
21、系統(tǒng)在企業(yè)發(fā)展中的戰(zhàn)略地位也不可小視。它協(xié)助企業(yè)管理從簡(jiǎn)單的公文、技術(shù)資料到復(fù)雜的生產(chǎn)流程、成本核算,甚至輔助企業(yè)進(jìn)行更高級(jí)的經(jīng)營(yíng)決策。</p><p> 上述信息化的成果并非一蹴而就,它經(jīng)歷了一個(gè)相當(dāng)長(zhǎng)的時(shí)期。在各個(gè)發(fā)展階段,各種模式的信息化工具交替占據(jù)主導(dǎo)地位,但最終必然是被更新的、更完善的模式或技術(shù)所取代。今天的企業(yè)電子商務(wù)和管理信息系統(tǒng)也不例外,流行的同時(shí)也有它自身的不斷裂變和發(fā)展。那么,一個(gè)具有前瞻性
22、的問(wèn)題在于:今后的企業(yè)信息化會(huì)朝向何處發(fā)展?企業(yè)如何看待相互分隔的電子商務(wù)和管理信息系統(tǒng)? </p><p><b> 第二章 系統(tǒng)分析</b></p><p> 2.1 系統(tǒng)需求分析</p><p> 設(shè)計(jì)一個(gè)性能良好的數(shù)據(jù)庫(kù)系統(tǒng),明確應(yīng)用環(huán)境對(duì)系統(tǒng)的要求是首要的和最基本的。特別是數(shù)據(jù)應(yīng)用非常廣泛,非常復(fù)雜,要是事先沒(méi)有對(duì)信息進(jìn)行充
23、分和細(xì)致的分析,這種設(shè)計(jì)就很難取得成功。</p><p> 通過(guò)需求分析階段對(duì)稅務(wù)票據(jù)系統(tǒng)的整個(gè)應(yīng)用情況作全面的、詳細(xì)的調(diào)查,確定發(fā)票管理的目標(biāo),收集支持系統(tǒng)總的設(shè)計(jì)目標(biāo)的基礎(chǔ)數(shù)據(jù)和對(duì)這些數(shù)據(jù)的要求,確定用戶(hù)的需求,并把這些寫(xiě)成用戶(hù)和數(shù)據(jù)庫(kù)設(shè)計(jì)者都能夠接受的文檔。</p><p> 事實(shí)上,需求分析是數(shù)據(jù)庫(kù)開(kāi)發(fā)中最難的任務(wù)之一。因?yàn)?,第一,系統(tǒng)本身是可變的,用戶(hù)的需求必須不斷調(diào)整,使之
24、與這種變化相適應(yīng)。第二,用戶(hù)很難說(shuō)清某部分工作的功能處理過(guò)程。所以,設(shè)計(jì)人員必須認(rèn)識(shí)到:在整個(gè)需求分析以及系統(tǒng)設(shè)計(jì)過(guò)程中,用戶(hù)參與的重要性,通過(guò)各種方法展開(kāi)調(diào)查分析。</p><p> 2.1.1 系統(tǒng)調(diào)查</p><p> 本系統(tǒng)可以對(duì)由稅務(wù)發(fā)票系統(tǒng)導(dǎo)出的發(fā)票文本文件進(jìn)行處理,滿(mǎn)足國(guó)稅局不同基層分局對(duì)所管轄的企業(yè)的發(fā)票和發(fā)票的廢票、負(fù)票數(shù)據(jù)進(jìn)行統(tǒng)計(jì)和匯總,通過(guò)分析可以掌握各種所需資
25、料。系統(tǒng)采用先進(jìn)的應(yīng)用系統(tǒng)體系結(jié)構(gòu)和開(kāi)發(fā)模式,提高系統(tǒng)的可擴(kuò)展性、可維護(hù)性和交互性。該系統(tǒng)相對(duì)獨(dú)立,接口實(shí)現(xiàn)簡(jiǎn)單、安全,可操作性強(qiáng)。</p><p> 2.1.2 系統(tǒng)業(yè)務(wù)流程圖</p><p><b> A2.0</b></p><p> A2.1 A2.2 A2.3 A2.4 A2.5 A2.6 A2
26、.7 A2.8 A2.9 A2.10 A2.11 A2.12 A2.13 A2.14 A2.15</p><p> A2.16 A2.17 A2.18 A2.19 A2.20 A2.21 A2.22 A2.23 A2.24 A2.25 A2.26 A2.27 A2.28</p><p> 2.1.3 數(shù)據(jù)流程圖&l
27、t;/p><p> 稅務(wù)票據(jù)分析系統(tǒng)是采用C/S結(jié)構(gòu),納稅人資料和納稅人的票據(jù)資料是由《稅務(wù)專(zhuān)用發(fā)票管理系統(tǒng)》提供,根據(jù)稅務(wù)管理工作的需求,系統(tǒng)針對(duì)導(dǎo)入的票據(jù)按不同類(lèi)別和不同條件進(jìn)行統(tǒng)計(jì)和分析,并將統(tǒng)計(jì)分析結(jié)果輸送到Excel表中,數(shù)據(jù)流程如圖1。</p><p><b> 第三章 系統(tǒng)設(shè)計(jì)</b></p><p> 3.1 系統(tǒng)的總體設(shè)
28、計(jì)</p><p> 首先使稅務(wù)局的票據(jù)管理部門(mén)全面掌握所轄增值稅一般納稅人各月專(zhuān)用發(fā)票的開(kāi)具情況,保證錄入到稅務(wù)征管系統(tǒng)(CTAIS)中票據(jù)驗(yàn)舊數(shù)據(jù)的真實(shí)性。</p><p> 使票據(jù)管理部門(mén)能夠準(zhǔn)確地統(tǒng)計(jì)出該局所轄一般納稅人已經(jīng)抄報(bào)稅的票據(jù)起止號(hào)碼、作廢份數(shù)、負(fù)數(shù)份數(shù)以及在這已開(kāi)具專(zhuān)用發(fā)票起止號(hào)碼區(qū)間內(nèi)作廢票據(jù)明細(xì)和負(fù)數(shù)票據(jù)明細(xì),從而使得票據(jù)校驗(yàn)人員在發(fā)票校驗(yàn)環(huán)節(jié)中有重點(diǎn)地審核和校
29、驗(yàn)納稅人提供的作廢票據(jù)及負(fù)數(shù)票據(jù)。</p><p> 使一般納稅人票據(jù)負(fù)數(shù)開(kāi)具率和作廢開(kāi)具率得到有效地控管總體呈下降趨勢(shì)。</p><p> 3.1.1 系統(tǒng)的總體設(shè)計(jì)方案</p><p> 我的課題內(nèi)容是一個(gè)稅務(wù)票據(jù)分析系統(tǒng),其主要功能是利用稅務(wù)CTAIS系統(tǒng)所積累的企業(yè)開(kāi)據(jù)發(fā)票來(lái)獲取信息,從企業(yè)日常開(kāi)據(jù)發(fā)票種類(lèi)以及開(kāi)據(jù)發(fā)票明細(xì)等多方面進(jìn)行分析,然后導(dǎo)出報(bào)
30、表與結(jié)論,從而有效地管控一般納稅人票據(jù)負(fù)數(shù)開(kāi)局率和作廢開(kāi)局率。</p><p> 具體地說(shuō),我將用SQL Server 2000來(lái)生成數(shù)據(jù)庫(kù),從而建立各種信息表來(lái)存放系統(tǒng)信息,以便以后的數(shù)據(jù)查詢(xún)和數(shù)據(jù)分析。然后用 VB軟件來(lái)建立可視化界面,利用VB控件來(lái)建立與 SQL Server 2000 的連接,從而達(dá)到在VB界面里可以看到數(shù)據(jù)庫(kù)內(nèi)容,并且方便地通過(guò)界面操作來(lái)查詢(xún)企業(yè)票據(jù)信息和匯總數(shù)據(jù)的分析。接下來(lái)可在VB
31、內(nèi)部代碼的幫助下輸出報(bào)表、繪出圖形等。</p><p> 數(shù)據(jù)庫(kù)提供了企業(yè)日常所開(kāi)據(jù)的紅字發(fā)票、負(fù)數(shù)發(fā)票等信息。</p><p> 結(jié)果是根據(jù)前面各個(gè)分析小模塊得出最后結(jié)論,導(dǎo)出報(bào)表等。</p><p> 3.1.2 系統(tǒng)研發(fā)平臺(tái)</p><p> SQL Server 2000與ACCESS都是關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)。在關(guān)系型數(shù)據(jù)庫(kù)
32、中,信息被存放在二維結(jié)構(gòu)的表中,一個(gè)關(guān)系型數(shù)據(jù)庫(kù)包括多表,每一個(gè)標(biāo)都由行(又稱(chēng)為記錄)和列(又稱(chēng)為字段)組成。</p><p> SQL Server 2000,它具有獨(dú)立于硬件平臺(tái)、對(duì)稱(chēng)的多處理器結(jié)構(gòu)、搶占式多任務(wù)管理、完善的安全系統(tǒng)和容錯(cuò)功能,并具有易于維護(hù)的特點(diǎn)。 它采用客戶(hù)/服務(wù)器計(jì)算模型,即中央服務(wù)器用來(lái)存放數(shù)據(jù)庫(kù),該服務(wù)器可以被多臺(tái)客戶(hù)機(jī)訪問(wèn),數(shù)據(jù)庫(kù)應(yīng)用的處理過(guò)程分布在客戶(hù)機(jī)和服務(wù)器上,這樣便具有數(shù)
33、據(jù)集中存儲(chǔ)、業(yè)務(wù)邏輯和安全規(guī)則的定義在服務(wù)器上定義,而后被所有用戶(hù)使用、節(jié)省硬件開(kāi)銷(xiāo)等優(yōu)點(diǎn)。這也正是ACCESS所欠缺的。所以我決定使用SQL Server 2000作為數(shù)據(jù)庫(kù)開(kāi)發(fā)工具。</p><p> 通過(guò)VB訪問(wèn)數(shù)據(jù)庫(kù)SQL SERVER 2000自帶的分析管理器比較適用于程序開(kāi)發(fā)者,而不是用于應(yīng)用者,我考慮用VB來(lái)實(shí)現(xiàn)分析系統(tǒng),因?yàn)閂B可以提供用戶(hù)簡(jiǎn)便的操作界面而隱藏了底層代碼。并且ADO則是訪問(wèn)ODB
34、C數(shù)據(jù)庫(kù)的最佳借口。</p><p> 3.1.3 系統(tǒng)功能設(shè)計(jì)</p><p> 系統(tǒng)設(shè)計(jì)又稱(chēng)為新系統(tǒng)的物理設(shè)計(jì)。系統(tǒng)設(shè)計(jì)的指導(dǎo)思想是結(jié)構(gòu)化法。系統(tǒng)設(shè)計(jì)的目標(biāo)是:在保證實(shí)現(xiàn)邏輯模型的基礎(chǔ)上,盡可能地提高系統(tǒng)的各項(xiàng)指標(biāo),即主要性、可靠性、工作質(zhì)量、工作效率和經(jīng)濟(jì)性等,故系統(tǒng)設(shè)計(jì)的指標(biāo)是衡量系統(tǒng)設(shè)計(jì)好壞的準(zhǔn)則。對(duì)這五個(gè)方面的指標(biāo),在一定程度上既是互相矛盾的又是相輔相成的。對(duì)于不同的系統(tǒng)
35、,由于功能及系統(tǒng)目標(biāo)的不同,對(duì)上述指標(biāo)的要求各有所側(cè)重。</p><p> 本系統(tǒng)采用的是結(jié)構(gòu)化開(kāi)發(fā)方法,結(jié)構(gòu)化系統(tǒng)設(shè)計(jì)是新系統(tǒng)開(kāi)發(fā)的一個(gè)重要內(nèi)容,是結(jié)構(gòu)化系統(tǒng)分析和結(jié)構(gòu)化程序設(shè)計(jì)之間的接口過(guò)程。結(jié)構(gòu)化系統(tǒng)設(shè)計(jì)技術(shù)是結(jié)構(gòu)化程序設(shè)計(jì)思想的基礎(chǔ)上,發(fā)展起來(lái)的一種用于復(fù)雜系統(tǒng)結(jié)構(gòu)設(shè)計(jì)的技術(shù),它運(yùn)用一套標(biāo)準(zhǔn)的設(shè)計(jì)準(zhǔn)則和工具,采用模塊的方法,進(jìn)行新系統(tǒng)控制層次關(guān)系和模塊專(zhuān)人分解設(shè)計(jì),把用數(shù)據(jù)流程圖表示的系統(tǒng)邏輯模型轉(zhuǎn)變?yōu)?/p>
36、用HIPO圖或控制結(jié)構(gòu)圖表示的系統(tǒng)層次模塊結(jié)構(gòu),以及用過(guò)程圖或偽碼表示的程序模塊結(jié)構(gòu)。結(jié)構(gòu)化系統(tǒng)設(shè)計(jì)的核心是模塊分解設(shè)計(jì),模塊化顯著提高了系統(tǒng)的可修改性和可維護(hù)性,同時(shí),為系統(tǒng)設(shè)計(jì)工作的有效組織和控制提供了方便條件。</p><p> 本系統(tǒng)應(yīng)用一套標(biāo)準(zhǔn)設(shè)計(jì)準(zhǔn)則和工具,把系統(tǒng)分析階段得出的系統(tǒng)邏輯模型擴(kuò)展和優(yōu)化處理,在數(shù)據(jù)流程圖的基礎(chǔ)上構(gòu)成系統(tǒng)的模塊結(jié)構(gòu)。這一階段通常采用結(jié)構(gòu)化程序設(shè)計(jì)方法,即SD( Struc
37、tured Design)方法。采用模塊化自頂向下設(shè)計(jì)方法,進(jìn)行新系統(tǒng)控制層次關(guān)系和模塊分解設(shè)計(jì),顯著地提高了系統(tǒng)的可維護(hù)性和可修改性,同時(shí)為系統(tǒng)設(shè)計(jì)的有效組織提供了方便。</p><p><b> 3.2 數(shù)據(jù)設(shè)計(jì)</b></p><p> 3.2.1 數(shù)據(jù)庫(kù)結(jié)構(gòu)化查詢(xún)語(yǔ)言</p><p> 本系統(tǒng)最主要的兩方面技術(shù)其中最基本的一個(gè)
38、便是數(shù)據(jù)庫(kù)的操作,對(duì)數(shù)據(jù)庫(kù)模塊的操作功能需要對(duì)結(jié)構(gòu)化查詢(xún)語(yǔ)言(SQL)進(jìn)行深入的了解。先要了解結(jié)構(gòu)化查詢(xún)語(yǔ)言(SQL)的一些含義和特點(diǎn):</p><p> 這是一種允許用戶(hù)在特定需要的基礎(chǔ)上訪問(wèn)數(shù)據(jù),需要給他們提供解釋他們的要求的語(yǔ)言。對(duì)數(shù)據(jù)庫(kù)來(lái)說(shuō),一個(gè)簡(jiǎn)單的要求被定義為一個(gè)查詢(xún);這樣的一種語(yǔ)言叫做查詢(xún)語(yǔ)言。為此目的開(kāi)發(fā)了許多查詢(xún)語(yǔ)言,但它們中只有一個(gè)成了最流行的:結(jié)構(gòu)化查詢(xún)語(yǔ)言,它是IBM于1970年研制的。
39、1986年SQL成了一個(gè)ANSI標(biāo)準(zhǔn),并于1987年成為ISO標(biāo)準(zhǔn);目前它廣泛應(yīng)用于數(shù)據(jù)庫(kù)管理系統(tǒng)中。</p><p><b> SQL核心語(yǔ)句:</b></p><p> 插入數(shù)據(jù) 向表中添加一個(gè)新記錄,你要使用SQL INSERT 語(yǔ)句。</p><p> INSERT [INTO] {table_name|view_name}
40、[(column_list)] </p><p> {DEFAULT VALUES |Values_list | select_statement}</p><p> 刪除數(shù)據(jù) 要從表中刪除一個(gè)或多個(gè)記錄,需要使用SQL DELETE語(yǔ)句。DELETE [FROM] {table_name|view_name} [WHERE clause]</p><p>
41、 更新記錄 要修改表中存在的一條或多條記錄,使用SQL UPDATE語(yǔ)句。UPDATE {table_name|view_name} SET [{table_name|view_name}]</p><p> {column_list|variable_list|variable_and_column_list}</p><p> [,{column_list2|variable
42、_list2|variable_and_column_list2</p><p> [,{column_listN|variable_listN|variable_and_column_listN}]]</p><p> [WHERE clause]用SELECT 創(chuàng)建記錄和表</p><p> 需要把INSERT 語(yǔ)句與SELECT 語(yǔ)句結(jié)合起來(lái)。<
43、/p><p> 在本系統(tǒng)中,對(duì)數(shù)據(jù)庫(kù)的操作使用了ADO對(duì)象。ADO的含義和特點(diǎn)如下:</p><p> Microsoft ActiveX Data Objects (ADO) 使您的客戶(hù)端應(yīng)用程序能夠通過(guò) OLE DB 提供者訪問(wèn)和操作在數(shù)據(jù)庫(kù)服務(wù)器中的數(shù)據(jù)。ADO 支持用于建立基于客戶(hù)端/服務(wù)器和 Web 的應(yīng)用程序的主要功能。其主要優(yōu)點(diǎn)是易于使用、高速度、低內(nèi)存支出和占用磁盤(pán)空間較少
44、。ADO 同時(shí)具有遠(yuǎn)程數(shù)據(jù)服務(wù) (RDS) 功能,通過(guò) RDS 可以在一次往返過(guò)程中實(shí)現(xiàn)將數(shù)據(jù)從服務(wù)器移動(dòng)到客戶(hù)端應(yīng)用程序或 Web 頁(yè)、在客戶(hù)端對(duì)數(shù)據(jù)進(jìn)行處理然后將更新結(jié)果返回服務(wù)器的操作。</p><p> ADO 提供執(zhí)行以下操作的方式: </p><p> (1)連接到數(shù)據(jù)源。同時(shí),可確定對(duì)數(shù)據(jù)源的所有更改是否已成功或沒(méi)有發(fā)生。</p><p> (2
45、)指定訪問(wèn)數(shù)據(jù)源的命令,同時(shí)可帶變量參數(shù),或優(yōu)化執(zhí)行。</p><p><b> (3)執(zhí)行命令。</b></p><p> (4)如果這個(gè)命令使數(shù)據(jù)按表中的行的形式返回,則將這些行存儲(chǔ)在易于檢查、操作或更改的緩存中。</p><p> (5)適當(dāng)情況下,可使用緩存行的更改內(nèi)容來(lái)更新數(shù)據(jù)源。</p><p> (
46、6)提供常規(guī)方法檢測(cè)錯(cuò)誤(通常由建立連接或執(zhí)行命令造成)。 </p><p> 在典型情況下,需要在編程模型中采用所有這些步驟。但是,由于 ADO 有很強(qiáng)的靈活性,所以最后只需執(zhí)行部分模塊就能做一些有用的工作。例如:將數(shù)據(jù)從文件直接存儲(chǔ)到緩存行,然后僅用 ADO 資源對(duì)數(shù)據(jù)進(jìn)行檢查。</p><p> 以下元素是 ADO 編程模型中的關(guān)鍵部分: ● 連接 通過(guò)“連接”可
47、從應(yīng)用程序訪問(wèn)數(shù)據(jù)源,連接是交換數(shù)據(jù)所必需的環(huán)境。通過(guò)如 Microsoft® Internet Information Server 作為媒介,應(yīng)用程序可直接(有時(shí)稱(chēng)為雙層系統(tǒng))或間接(有時(shí)稱(chēng)為三層系統(tǒng))訪問(wèn)數(shù)據(jù)源。對(duì)象模型使用 Connection 對(duì)象使連接概念得以具體化。Connection 對(duì)象用于指定專(zhuān)門(mén)的提供者和任意參數(shù)。</p><p><b> ● 命令</b>
48、</p><p> 通過(guò)已建立的連接發(fā)出的“命令”可以某種方式來(lái)操作數(shù)據(jù)源。一般情況下,命令可以在數(shù)據(jù)源中添加、刪除或更新數(shù)據(jù),或者在表中以行的格式檢索數(shù)據(jù)。對(duì)象模型用 Command 對(duì)象來(lái)體現(xiàn)命令概念。Command 對(duì)象使 ADO 能夠優(yōu)化對(duì)命令的執(zhí)行。</p><p><b> ● 參數(shù)</b></p><p> 通常,命令需要的
49、變量部分即“參數(shù)”可以在命令發(fā)布之前進(jìn)行更改。例如,可重復(fù)發(fā)出相同的數(shù)據(jù)檢索命令,但每一次均可更改指定的檢索信息。參數(shù)對(duì)執(zhí)行其行為類(lèi)似函數(shù)的命令非常有用,這樣就可知道命令是做什么的,但不必知道它如何工作。例如,可發(fā)出一項(xiàng)銀行過(guò)戶(hù)命令,從一方借出貸給另一方。可將要過(guò)戶(hù)的款額設(shè)置為參數(shù)。對(duì)象模型用 Parameter 對(duì)象來(lái)體現(xiàn)參數(shù)概念。</p><p><b> ● 記錄集</b></
50、p><p> 如果命令是在表中按信息行返回?cái)?shù)據(jù)的查詢(xún)(行返回查詢(xún)),則這些行將會(huì)存儲(chǔ)在本地。</p><p> 對(duì)象模型將該存儲(chǔ)體現(xiàn)為 Recordset 對(duì)象。但是,不存在僅代表單獨(dú)一個(gè) Recordset 行的對(duì)象。記錄集是在行中檢查和修改數(shù)據(jù)最主要的方法。 </p><p><b> ● 字段</b></p><p&
51、gt; 一個(gè)記錄集行包含一個(gè)或多個(gè)“字段”。如果將記錄集看作二維網(wǎng)格,字段將排列構(gòu)成“列”。每一字段(列)都分別包含有名稱(chēng)、數(shù)據(jù)類(lèi)型和值的屬性,正是在該值中包含了來(lái)自數(shù)據(jù)源的真實(shí)數(shù)據(jù)。對(duì)象模型以 Field 對(duì)象體現(xiàn)字段。要修改數(shù)據(jù)源中的數(shù)據(jù),可在記錄集行中修改 Field 對(duì)象的值,對(duì)記錄集的更改最終被傳送給數(shù)據(jù)源。</p><p><b> ● 錯(cuò)誤</b></p>&
52、lt;p> 錯(cuò)誤隨時(shí)可在應(yīng)用程序中發(fā)生,通常是由于無(wú)法建立連接、執(zhí)行命令或?qū)δ承顟B(tài)(例如,試圖使用沒(méi)有初始化的記錄集)的對(duì)象進(jìn)行操作。對(duì)象模型以 Error 對(duì)象體現(xiàn)錯(cuò)誤。</p><p><b> ● 屬性</b></p><p> 每個(gè) ADO 對(duì)象都有一組唯一的“屬性”來(lái)描述或控制對(duì)象的行為。屬性有兩種類(lèi)型:內(nèi)置和動(dòng)態(tài)。內(nèi)置屬性是 ADO 對(duì)象的一
53、部分并且隨時(shí)可用。動(dòng)態(tài)屬性則由特別的數(shù)據(jù)提供者添加到 ADO 對(duì)象的屬性集合中,僅在提供者被使用時(shí)才能存在。對(duì)象模型以 Property 對(duì)象體現(xiàn)屬性。</p><p><b> ● 集合</b></p><p> ADO 提供“集合”,這是一種可方便地包含其他特殊類(lèi)型對(duì)象的對(duì)象類(lèi)型。使用集合方法可按名稱(chēng)(文本字符串)或序號(hào)(整型數(shù))對(duì)集合中的對(duì)象進(jìn)行檢索。<
54、;/p><p><b> ● 事件 </b></p><p> “事件”是對(duì)將要發(fā)生或已經(jīng)發(fā)生的某些操作的通知。一般情況下,可用事件高效地編寫(xiě)包含幾個(gè)異步任務(wù)的應(yīng)用程序。對(duì)象模型無(wú)法顯式體現(xiàn)事件,只能在調(diào)用事件處理程序例程時(shí)表現(xiàn)出來(lái)。ADO 的目標(biāo)是訪問(wèn)、編輯和更新數(shù)據(jù)源,而編程模型體現(xiàn)了為完成該目標(biāo)所必需的系列動(dòng)作的順序。ADO 提供類(lèi)和對(duì)象以完成以下活動(dòng): <
55、;/p><p> ● 連接到數(shù)據(jù)源 (Connection),并可選擇開(kāi)始一個(gè)事務(wù)。</p><p> ● 可選擇創(chuàng)建對(duì)象來(lái)表示 SQL 命令 (Command)。</p><p> ● 可選擇在 SQL 命令中指定列、表和值作為變量參數(shù) (Parameter)。</p><p> ● 執(zhí)行命令 (Command、Connection 或
56、 Recordset)。</p><p> ● 如果命令按行返回,則將行存儲(chǔ)在緩存中 (Recordset)。</p><p> ● 可選擇創(chuàng)建緩存視圖,以便能對(duì)數(shù)據(jù)進(jìn)行排序、篩選和定位 (Recordset)。</p><p> ● 通過(guò)添加、刪除或更改行和列編輯數(shù)據(jù) (Recordset)。</p><p> ● 在適當(dāng)情況下,使
57、用緩存中的更改內(nèi)容來(lái)更新數(shù)據(jù)源 (Recordset)。</p><p> ● 如果使用了事務(wù),則可以接受或拒絕在完成事務(wù)期間所作的更改。結(jié)束事務(wù) (Connection)。 </p><p> 3.2.2 數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)</p><p> 第四章 稅務(wù)票據(jù)分析系統(tǒng)實(shí)現(xiàn)</p><p> 4.1 創(chuàng)建工程項(xiàng)目</p>
58、<p> 4.2 創(chuàng)建稅務(wù)票據(jù)分析系統(tǒng)的主窗體</p><p> 4.3 創(chuàng)建主窗體菜單</p><p> Option Explicit</p><p> Public CurrentItemNumber As Integer</p><p> Private Sub Command1_Click()</p
59、><p> Load fpfx_sjdr_skj1</p><p> fpfx_sjdr_skj1.Show</p><p> frmMain.Enabled = False</p><p><b> End Sub</b></p><p><b> '納稅人資料建立<
60、;/b></p><p> Private Sub nsrzl_Click()</p><p> fpfx_xtgl_ns.Show</p><p> frmMain.Enabled = False</p><p><b> End Sub</b></p><p> '在信
61、息列表顯示樹(shù)的工作界面</p><p> Private Sub trvDept_NodeClick(ByVal Node As MSComctlLib.Node)</p><p> On Error GoTo ErrorHandler</p><p> Dim Item As ListItem</p><p> Dim Dept A
62、s String, StrSQL As String</p><p> Dim icon As Integer, i As Long</p><p> SBar.Panels(1).Text = "現(xiàn)在的工作:" & trvDept.SelectedItem.Text</p><p> '節(jié)點(diǎn)不能是根節(jié)點(diǎn)及其一級(jí)子節(jié)點(diǎn)<
63、;/p><p> If trvDept.SelectedItem.Index = 1 Then</p><p> Load fpfx_xtgl_ns</p><p> fpfx_xtgl_ns.Show</p><p> frmMain.Enabled = False</p><p><b> End
64、If</b></p><p> If trvDept.SelectedItem.Index = 2 Then</p><p> Load fpfx_xtgl_bm</p><p> fpfx_xtgl_bm.Show</p><p> frmMain.Enabled = False</p><p>
65、<b> End If</b></p><p> If trvDept.SelectedItem.Index = 3Then</p><p> Load fpfx_xtgl_zgy</p><p> fpfx_xtgl_zgy.Show</p><p> frmMain.Enabled = False</
66、p><p><b> End If</b></p><p><b> Exit Sub</b></p><p> '主界面加載時(shí)初始化界面</p><p> Private Sub Form_Load()</p><p> Dim i As Long</p
67、><p> On Error Resume Next</p><p><b> '設(shè)置部門(mén)樹(shù)</b></p><p> trvDeptInit</p><p><b> End Sub</b></p><p><b> '為部門(mén)樹(shù)添加節(jié)點(diǎn)<
68、;/b></p><p> Private Sub trvDeptInit()</p><p> Dim i As Long</p><p> Dim Sys As Node, Inbox As Node, Inbox1 As Node, Dept As Node, Outbox As Node</p><p> Dim Inb
69、ox2 As Node, Inbox3 As Node, Inbox4 As Node, Inbox5 As Node, Inbox6 As Node, Inbox7 As Node</p><p> Dim Inbox8 As Node</p><p> trvDept.Nodes.Clear</p><p><b> '添加根節(jié)點(diǎn)<
70、/b></p><p> Set Sys = trvDept.Nodes.Add(, , , " 系統(tǒng) + 作業(yè)列表", 1)</p><p><b> '展開(kāi)根節(jié)點(diǎn)</b></p><p> Sys.Expanded = True</p><p> '展開(kāi)Inbox節(jié)
71、點(diǎn)</p><p> ' Inbox1.Expanded = True</p><p> '添加Inbox1的子節(jié)點(diǎn)</p><p> Set Dept = trvDept.Nodes.Add(Inbox1, tvwChild, , "月份票據(jù)清理", 3)</p><p> Set Dept =
72、trvDept.Nodes.Add(Inbox1, tvwChild, , "年底票據(jù)清理", 3)</p><p> Set Dept = trvDept.Nodes.Add(Inbox1, tvwChild, , "納稅人資料導(dǎo)入", 3)</p><p> Set Dept = trvDept.Nodes.Add(Inbox1, tvwCh
73、ild, , "納稅人資料維護(hù)", 3)</p><p> '添加Inbox2的子節(jié)點(diǎn)</p><p> Set Dept = trvDept.Nodes.Add(Inbox2, tvwChild, , "認(rèn)證普通票據(jù)導(dǎo)入", 3)</p><p> Set Dept = trvDept.Nodes.Add(In
74、box2, tvwChild, , "認(rèn)證專(zhuān)用票據(jù)導(dǎo)入", 3)</p><p> Set Dept = trvDept.Nodes.Add(Inbox2, tvwChild, , "稅控收款機(jī)票據(jù)導(dǎo)入", 3)</p><p> Set Dept = trvDept.Nodes.Add(Inbox2, tvwChild, , "企業(yè)開(kāi)
75、具普通票據(jù)導(dǎo)入", 3)</p><p> Set Dept = trvDept.Nodes.Add(Inbox2, tvwChild, , "企業(yè)開(kāi)具專(zhuān)用票據(jù)導(dǎo)入", 3)</p><p> 'Private Sub Tmr_Timer()</p><p> '' SBar.Panels(3).Text
76、 = Format(Now, "yyyy年m月d日 hh:mm:ss")</p><p><b> 'End Sub</b></p><p> '文本框被激活時(shí),選定所有文本</p><p> Private Sub txt_GotFocus(Index As Integer)</p>&
77、lt;p><b> End Sub</b></p><p> Private Sub mnuExit_Click()</p><p><b> Unload Me</b></p><p><b> End Sub</b></p><p> 4.4 創(chuàng)建系統(tǒng)基礎(chǔ)
78、信息模塊</p><p><b> 部門(mén)信息建立</b></p><p> Dim nsrqy_bh As Integer '定義一個(gè)整型變量</p><p> Dim nsrqy_xz, nsrqy_gg, nsrqy_cx, nsrqy_dw As String</p><p> Dim rs1 A
79、s New ADODB.Recordset</p><p> Dim rs2 As New ADODB.Recordset</p><p> Private Sub save()</p><p> On Error Resume Next</p><p> Dim StrSQL, a As String</p><
80、p> Set rs2 = New Recordset</p><p> StrSQL = "insert into fpfx_bm (BM_BH,BM_MC) values ('" & Trim(Text1(0)) & "','" & Trim(Text1(1)) & "') "&
81、lt;/p><p> rs2.Open StrSQL, Ado, adOpenStatic, adLockReadOnly</p><p> nsrqy_xz = "0"</p><p> Text1(1).Enabled = False</p><p> a1 = MsgBox("管理科信息保存成功!&qu
82、ot;, vbOKOnly + vbInformation)</p><p><b> cxun</b></p><p><b> End Sub</b></p><p> Private Sub update()</p><p> On Error Resume Next</p>
83、;<p> Dim StrSQL, a As String</p><p> Set rs2 = New Recordset</p><p> StrSQL = "update fpfx_bm set BM_MC='" & Trim(Text1(1)) & "'where BM_BH='"
84、& Trim(Text1(0)) & "'"</p><p> rs2.Open StrSQL, Ado, adOpenStatic, adLockReadOnly</p><p><b> 區(qū)域信息建立</b></p><p> Dim nsrqy_bh As Integer '定義
85、一個(gè)整型變量</p><p> Dim nsrqy_xz, nsrqy_gg, nsrqy_cx, nsrqy_dw As String</p><p> Dim rs1 As New ADODB.Recordset</p><p> Dim rs2 As New ADODB.Recordset</p><p> Private Su
86、b save()</p><p> On Error Resume Next</p><p> Dim StrSQL, a As String</p><p> Set rs2 = New Recordset</p><p> StrSQL = "insert into fpfx_qy (QY_BH,QY_MC,QY_BM)
87、 values " & _</p><p> "('" & Trim(Text1(0).Text) & "','" & Trim(Text1(1).Text) & "' ," & _</p><p> "'"
88、& Trim(Combo1.Text) & "') "</p><p> rs2.Open StrSQL, Ado, adOpenStatic, adLockReadOnly</p><p> nsrqy_xz = "0"</p><p> Text1(1).Enabled = False<
89、/p><p> a1 = MsgBox("區(qū)域信息保存成功!", vbOKOnly + vbInformation)</p><p><b> cxun</b></p><p><b> End Sub</b></p><p> Private Sub update()<
90、;/p><p> On Error Resume Next</p><p> Dim StrSQL, a As String</p><p> Set rs2 = New Recordset</p><p> StrSQL = "update fpfx_qy set QY_MC='" & Trim(Te
91、xt1(1).Text) & "'," & _</p><p> "QY_BM='" & Trim(Combo1.Text) & "'where QY_BH='" & Trim(Text1(0).Text) & "'"</p>&l
92、t;p><b> 納稅人信息建立</b></p><p> Option Explicit</p><p> Dim AdoCon As New ADODB.Connection</p><p> Dim Rsado As New ADODB.Recordset</p><p> Dim sql As S
93、tring</p><p> Dim kjzt_xz, kjzt_gg, kjzt_dw, kjzt_cx As String</p><p> Dim i, i1 As Integer</p><p> Private Sub Check1_Click()</p><p> If Check1.Value = 1 Then</
94、p><p> Combo2.Clear</p><p> Ado1.ConnectionString = Ado</p><p> Ado1.RecordSource = "Select * From fpfx_qy "</p><p> Ado1.Refresh</p><p> If Ad
95、o1.Recordset.RecordCount > 0 Then</p><p> If Ado1.Recordset.BOF = False Then Ado1.Recordset.MoveFirst</p><p> For i = 0 To Ado1.Recordset.RecordCount - 1</p><p> Combo2.AddIte
96、m (Trim(Ado1.Recordset.Fields("qy_mc")))</p><p> Ado1.Recordset.MoveNext</p><p><b> Next i</b></p><p> Combo2.ListIndex = 0</p><p><b> E
97、nd if</b></p><p><b> 操作員信息建立</b></p><p> Dim czyzl_bh, ii As Integer '定義一個(gè)整型變量</p><p> Dim czyzl_xz, czyzl_gg, czyzl_cx, czyzl_dw, czy_dw As String</p&g
98、t;<p> Dim rs1 As New ADODB.Recordset</p><p> Dim rs2 As New ADODB.Recordset</p><p> Private Sub save()</p><p> On Error Resume Next</p><p> Dim StrSQL, a A
99、s String</p><p> Set rs2 = New Recordset</p><p> StrSQL = "insert into fpfx_czy (CZY_BH,CZY_CZY,CZY_MM) values ('" & Trim(Text1(0)) & "','" & Trim(T
100、ext1(1)) & "','" & Trim(Text1(2)) & "') "</p><p> rs2.Open StrSQL, Ado, adOpenStatic, adLockReadOnly</p><p> czyzl_xz = "0"</p><
101、;p> Text1(1).Enabled = False: Text1(2).Enabled = False</p><p> a1 = MsgBox("操作員信息保存成功!", vbOKOnly + vbInformation)</p><p><b> cxun</b></p><p><b>
102、End Sub</b></p><p> Private Sub update()</p><p> Dim StrSQL, a As String</p><p> On Error Resume Next</p><p> Set rs2 = New Recordset</p><p> St
103、rSQL = "update fpfx_czy set CZY_CZY='" & Trim(Text1(1)) & "'," & _</p><p> "CZY_MM='" & Trim(Text1(2)) & "' where CZY_BH='" &a
104、mp; Trim(Text1(0)) & "'"</p><p> rs2.Open StrSQL, Ado, adOpenStatic, adLockReadOnly</p><p> czyzl_gg = "0"</p><p> 4.5 創(chuàng)建系統(tǒng)數(shù)據(jù)導(dǎo)入模塊</p><p>
105、;<b> 納稅人資料導(dǎo)入</b></p><p> Option Explicit</p><p> Dim rq1, kzdr, nsrqy_bh, sql As String</p><p> Dim rs3 As New ADODB.Recordset</p><p> Dim rs4 As New A
106、DODB.Recordset</p><p> Dim Rs As New ADODB.Recordset</p><p> Dim rs1 As New ADODB.Recordset</p><p> Dim cnn As New ADODB.Connection</p><p> Dim s1, s2 As String<
107、/p><p> Dim hh, i As Integer</p><p> Private Function BHA(ByVal sql_bh As String) As String</p><p> Dim max As String</p><p> Ado4.ConnectionString = Ado</p>&l
108、t;p> Ado4.RecordSource = sql_bh</p><p> Ado4.Refresh</p><p> If Ado4.Recordset.RecordCount > 0 Then</p><p> If Ado4.Recordset.EOF = False Then</p><p> Ado4.R
109、ecordset.MoveLast</p><p> max = Ado4.Recordset.Fields(0)</p><p><b> End If</b></p><p><b> 認(rèn)證普通票據(jù)導(dǎo)入</b></p><p> Dim rq1, kzdr, nsrqy_bh, sql
110、As String</p><p> Dim rs3 As New ADODB.Recordset</p><p> Dim rs4 As New ADODB.Recordset</p><p> Dim Rs As New ADODB.Recordset</p><p> Dim rs1 As New ADODB.Recordset
111、</p><p> Dim cnn As New ADODB.Connection</p><p> Dim s1, s2 As String</p><p> Dim hh, i As Integer</p><p> Private Function Drdw(ByVal Ln As String, Date_dr As Stri
112、ng) As Boolean '----------判斷要導(dǎo)入的單位的該月的數(shù)據(jù)是否存在</p><p> Drdw = False</p><p> Dim rq, rq1 As String</p><p> Dim n_dr, n_wz As Integer</p><p> Dim str_sj, str_rq, st
113、r_dw As String</p><p> Dim length As Integer</p><p> Dim Rs_dr As New ADODB.Recordset</p><p> If Val(Month(Date_dr)) < 10 Then</p><p> rq1 = "0" + Trim
114、(Month(Date_dr))</p><p><b> Else</b></p><p> rq1 = Trim(Month(Date_dr))</p><p><b> End If</b></p><p> rq = Trim(Year(Date_dr)) + rq1</p&g
115、t;<p><b> n_dr = 0</b></p><p> If Ln <> "" Then</p><p> Open Ln For Input As 1</p><p> While Not EOF(1)</p><p> Line Input #1, s
116、tr_sj</p><p> n_dr = n_dr + 1</p><p> If n_dr = 5 Then</p><p> n_wz = InStrRev(str_sj, "~~", Len(str_sj), vbTextCompare) + 1</p><p> str_rq = Right(str_sj
117、, Len(str_sj) - n_wz)</p><p> n_wz = n_wz - 2</p><p> str_sj = Left(str_sj, n_wz)</p><p> n_wz = InStrRev(str_sj, "~~", Len(str_sj), vbTextCompare) + 1</p><p
118、> str_dw = Right(str_sj, Len(str_sj) - n_wz)</p><p> Textdw.Text = str_dw</p><p> Rs_dr.Open "select * from fpfx_rpdr where rpdr_nf='" & Year(Date_dr) & "'
119、and rpdr_YF='" & Month(Date_dr) & "' and rpdr_DW='" & Trim(str_dw) & "'", Ado, adOpenKeyset, adLockOptimistic</p><p> If Not Rs_dr.BOF Then</p>
120、<p> If MsgBox(Year(Date_dr) & "年" & Month(Date_dr) & "月" & " " & str_dw & "的數(shù)據(jù)已導(dǎo)入,是否要覆蓋", vbYesNo) = vbYes Then</p><p> Set cnn = Ne
121、w ADODB.Connection</p><p> cnn.Open Ado</p><p> sql = "delete from fpfx_rzpx where rzpx_ny='" & Trim(rq) & "'"</p><p> cnn.Execute sql</p&g
122、t;<p> sql = "delete from fpfx_rpdr where rpdr_NF='" & Trim(Year(DTP1.Value)) & "'AND rpdr_YF='" & Trim(Month(DTP1.Value)) & "'"</p><p>
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 稅務(wù)畢業(yè)論文
- 畢業(yè)論文--稅務(wù)籌劃
- 畢業(yè)論文——畢業(yè)論文管理系統(tǒng)
- asp.net畢業(yè)論文-稅務(wù)登記系統(tǒng)
- 畢業(yè)論文——畢業(yè)論文管理系統(tǒng) (2)
- 畢業(yè)論文——畢業(yè)論文管理系統(tǒng) (2)
- 畢業(yè)論文——畢業(yè)論文管理系統(tǒng) (2)
- 稅務(wù)籌劃問(wèn)題畢業(yè)論文
- 畢業(yè)論文管理系統(tǒng)
- 畢業(yè)論文管理系統(tǒng)
- 學(xué)生成績(jī)管理系統(tǒng)畢業(yè)論文畢業(yè)論文
- 畢業(yè)論文(設(shè)計(jì))基于.net畢業(yè)論文管理系統(tǒng)
- 學(xué)生管理管理系統(tǒng)畢業(yè)論文
- 薪資管理系統(tǒng)-畢業(yè)論文
- 畢業(yè)論文——團(tuán)員管理系統(tǒng)
- 畢業(yè)論文——學(xué)生管理系統(tǒng)
- 超市管理系統(tǒng)畢業(yè)論文
- 學(xué)生管理系統(tǒng)畢業(yè)論文
- 酒店管理系統(tǒng)畢業(yè)論文
- 倉(cāng)庫(kù)管理系統(tǒng)畢業(yè)論文
評(píng)論
0/150
提交評(píng)論