學(xué)生信息管理系統(tǒng)_第1頁
學(xué)生信息管理系統(tǒng)_第2頁
學(xué)生信息管理系統(tǒng)_第3頁
學(xué)生信息管理系統(tǒng)_第4頁
學(xué)生信息管理系統(tǒng)_第5頁
已閱讀5頁,還剩31頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

摘要隨著院校的擴(kuò)招,學(xué)生數(shù)量不斷增加,學(xué)生管理已成為學(xué)校管理中的重中之重。傳統(tǒng)的學(xué)生管理方法是從學(xué)生的個(gè)人的自然情況出發(fā),對(duì)其進(jìn)行管理。但是,這種方法不但效率低,而且還要耗費(fèi)大量的人力,已經(jīng)不能滿足學(xué)校對(duì)學(xué)生管理的要求。提高學(xué)生管理的管理水平,優(yōu)化資源,盡可能地降低學(xué)校的管理成本,成為該學(xué)校勢(shì)在必行的新課題。學(xué)生信息管理系統(tǒng)從學(xué)生管理的現(xiàn)狀出發(fā),根據(jù)學(xué)生管理的新要求進(jìn)行開發(fā)設(shè)計(jì)的,它解決了學(xué)生管理中數(shù)據(jù)信息量大,修改不方便,對(duì)一系列數(shù)據(jù)進(jìn)行統(tǒng)計(jì)與分析花費(fèi)時(shí)間長(zhǎng)等問題。幫助管理人員有效管理學(xué)生信息。學(xué)生信息管理系統(tǒng)主要使用visualstudio進(jìn)行編碼,使用sqlserver2021開發(fā)后臺(tái)數(shù)據(jù)庫。本系統(tǒng)主要實(shí)現(xiàn)的功能有學(xué)生信息錄入,學(xué)生成績(jī)錄入,成績(jī)等級(jí)設(shè)置,學(xué)生違規(guī)處理,學(xué)生成績(jī)排行,學(xué)生信息查詢,學(xué)生成績(jī)查詢、打印?!娟P(guān)鍵詞】學(xué)生管理;數(shù)據(jù)統(tǒng)計(jì);數(shù)據(jù)庫AbstractWiththeincreasingrecruitmentincollegesanduniversities,theincreasingnumberofstudents,studentmanagementhasbecomeatoppriorityinschoolmanagement.Thetraditionalstudentmanagementmethodfromstudent'sindividualnature,carriesonthemanagement.However,thisapproachnotonlylowefficiency,butalsocostlotsofmanpower,alreadycannotsatisfytherequirementofschoolmanagementtothestudent.Improvethemanagementlevelofstudentmanagement,optimizeresources,schoolofmanagementtoreducecosts,asmuchaspossiblebecomethenewsubjectfortheschoolisimperative.Studentinformationmanagementsystemfromthepresentsituationofthestudentmanagementaccordingtothenewrequirementsofstudentmanagementindevelopmentanddesign,itsolvesthestudentmanagementdatainthelargeamountofinformation,therevisionisnotconvenient,aseriesofdatastatisticsandanalysisofissuesoflongtime.Helpstudentsmanagementinformationmanagementstudentseffectively,hasbecomeanindispensablemanagementtoolinschoolmanagement.Thissystemmainlyisencodedusingvisualstudio,developmentbackgrounddatabaseusingSQLserver2021.Thissystemmainlyrealizethefunctionofthestudentinformationinput,studentsachievementsrecorded,gradelevelsetting,studentmishandling,studentperformanceranking,querystudentinformation,studentachievementinquiry,printing【keywords】studentsmanagement;Datastatistics;Thedatabase1.緒論1.1研究背景隨著計(jì)算機(jī)信息化時(shí)代的到來,運(yùn)用計(jì)算機(jī)手段來獲取和處理數(shù)據(jù)信息是當(dāng)今信息管理的顯著特點(diǎn),運(yùn)用計(jì)算機(jī)技術(shù)可將許多繁瑣復(fù)雜的工作簡(jiǎn)易化。隨著我國加入WTO世貿(mào)組織以來,信息技術(shù)及信息獲取對(duì)于發(fā)展各行各業(yè)的經(jīng)濟(jì),都起到了至關(guān)重要的作用。全世界范圍內(nèi)信息技術(shù)水平的高速發(fā)展,信息化數(shù)字技術(shù)在各個(gè)領(lǐng)域都得到了前所未有的廣泛的應(yīng)用。信息管理乃是人類為了有效合理地開發(fā)和利用信息資源,以現(xiàn)代科技信息技術(shù)為手段,對(duì)信息資源進(jìn)行統(tǒng)籌、組織、計(jì)劃、控制和領(lǐng)導(dǎo)的社會(huì)活動(dòng)。簡(jiǎn)單地說,信息管理就是人對(duì)信息資源和信息活動(dòng)的管理。信息管理隨著經(jīng)濟(jì)的迅速發(fā)展,具有信息量猛增、信息處理和傳播速度更快、信息處理的方法日趨復(fù)雜、信息管理所涉及的領(lǐng)域不斷擴(kuò)大的時(shí)代特征。信息管理系統(tǒng)可使各種文檔實(shí)現(xiàn)電子化,通過電子數(shù)據(jù)庫的形式對(duì)數(shù)據(jù)進(jìn)行保管,按每個(gè)人的不同身份分配的權(quán)限進(jìn)行使用和共享數(shù)據(jù)信息。從而實(shí)現(xiàn)信息的系統(tǒng)管理。1.2技術(shù)簡(jiǎn)介1.2.1visualstudio2021特點(diǎn)簡(jiǎn)介(1)支持WindowsAzure,微軟云計(jì)算架構(gòu)邁入重要里程碑。(2)助力移動(dòng)與嵌入式裝置開發(fā),三屏一云商機(jī)無限。(3)實(shí)踐當(dāng)前最熱門的Agile/Scrum開發(fā)方法,強(qiáng)化團(tuán)隊(duì)競(jìng)爭(zhēng)力。(4)升級(jí)的軟件測(cè)試功能及工具,為軟件質(zhì)量嚴(yán)格把關(guān)。(5)搭配Windows7,Silverlight4與Office,發(fā)揮多核并行運(yùn)算威力,創(chuàng)建美感與效能并重的新一代軟件。(6)支持最新C++標(biāo)準(zhǔn),增強(qiáng)IDE,切實(shí)提高程序員開發(fā)效率。1.2.2VisualC++2021簡(jiǎn)介VisualC++2021(版本號(hào):10.0),于2021年發(fā)布。VisualC++開發(fā)團(tuán)隊(duì)考慮使用SQLServerCompact格式的數(shù)據(jù)庫來存儲(chǔ)源碼的相關(guān)信息。此版也加入了現(xiàn)代化的C++并行運(yùn)算庫ParallelPatternsLibrary。此版建構(gòu)于.NETFramework4.0之上,但仍支持機(jī)器碼的編譯。1.2.3SQLserver2021簡(jiǎn)介SQLServer2021是一個(gè)全面的數(shù)據(jù)庫平臺(tái),使用集成的商業(yè)智能(BI)工具提供了企業(yè)級(jí)的數(shù)據(jù)管理。SQLServer2021數(shù)據(jù)庫引擎為關(guān)系型數(shù)據(jù)和結(jié)構(gòu)化數(shù)據(jù)提供了更安全可靠的存儲(chǔ)功能,使您可以構(gòu)建和管理用于業(yè)務(wù)的高可用和高性能的數(shù)據(jù)應(yīng)用程序。

SQLServer2021數(shù)據(jù)引擎是本企業(yè)數(shù)據(jù)管理解決方案的核心。此外SQLServer2021結(jié)合了分析、報(bào)表、集成和通知功能。這使您的企業(yè)可以構(gòu)建和部署經(jīng)濟(jì)有效的BI解決方案,幫助您的團(tuán)隊(duì)通過記分卡、Dashboard、Webservices和移動(dòng)設(shè)備將數(shù)據(jù)應(yīng)用推向業(yè)務(wù)的各個(gè)領(lǐng)域。SQLServer2021的特點(diǎn)有:NET框架主機(jī)

使用SQLServer2021,開發(fā)人員通過使用相似的語言,例如微軟的VisualC#.net和微軟的VisualBasic,將能夠創(chuàng)立數(shù)據(jù)庫對(duì)象。開發(fā)人員還將能夠建立兩個(gè)新的對(duì)象--用戶定義的類和集合。

(2)XML技術(shù)

在使用本地網(wǎng)絡(luò)和互聯(lián)網(wǎng)的情況下,在不同應(yīng)用軟件之間散步數(shù)據(jù)的時(shí)候,可擴(kuò)展標(biāo)記語言(XML)是一個(gè)重要的標(biāo)準(zhǔn)。SQLServer2021將會(huì)自身支持存儲(chǔ)和查詢可擴(kuò)展標(biāo)記語言文件。

(3)ADO.NET2.0版本

從對(duì)SQL類的新的支持,到多活動(dòng)結(jié)果集(MARS),SQLServer2021中的ADO.NET將推動(dòng)數(shù)據(jù)集的存取和操縱,實(shí)現(xiàn)更大的可升級(jí)性和靈活性。

(4)增強(qiáng)的安全性

SQLServer2021中的新安全模式將用戶和對(duì)象分開,提供fine-grainAccess存取、并允許對(duì)數(shù)據(jù)存取進(jìn)行更大的控制。另外,所有系統(tǒng)表格將作為視圖得到實(shí)施,對(duì)數(shù)據(jù)庫系統(tǒng)對(duì)象進(jìn)行了更大程度的控制。

(5)Transact-SQL的增強(qiáng)性能

SQLServer2021為開發(fā)可升級(jí)的數(shù)據(jù)庫應(yīng)用軟件,提供了新的語言功能。這些增強(qiáng)的性能包括處理錯(cuò)誤、遞歸查詢功能、關(guān)系運(yùn)算符PIVOT,APPLY,ROW_NUMBER和其他數(shù)據(jù)列排行功能,等等。

(6)SQL服務(wù)中介

SQL服務(wù)中介將為大型、營(yíng)業(yè)范圍內(nèi)的應(yīng)用軟件,提供一個(gè)分布式的、異步應(yīng)用框架。

(7)通告服務(wù)

通告服務(wù)使得業(yè)務(wù)可以建立豐富的通知應(yīng)用軟件,向任何設(shè)備,提供個(gè)人化的和及時(shí)的信息,例如股市警報(bào)、新聞?dòng)嗛?、包裹遞送警報(bào)、航空公司票價(jià)等。在SQLServer2021中,通告服務(wù)和其他技術(shù)更加緊密地融合在了一起,這些技術(shù)包括分析服務(wù)、SQLServerManagementStudio.2.需求分析2.1系統(tǒng)功能簡(jiǎn)要描述用戶要輸入正確的用戶名和密碼以后才能登錄學(xué)生信息管理系統(tǒng)。在學(xué)生信息管理系統(tǒng)中,可以通過主窗體上的按鈕對(duì)科室信息、科目信息、教師信息、班級(jí)信息、班級(jí)科目和考試類別進(jìn)行設(shè)置,也可以在“學(xué)生管理”菜單中錄入學(xué)生信息和學(xué)生成績(jī),在錄入成績(jī)以后,還要對(duì)成績(jī)進(jìn)行等級(jí)設(shè)置,這樣不但有助于對(duì)學(xué)生成績(jī)管理,還能簡(jiǎn)化學(xué)生成績(jī)的查詢,當(dāng)學(xué)生違反校規(guī)時(shí),要通過學(xué)生違規(guī)處理將學(xué)生所犯的錯(cuò)誤進(jìn)行記錄,以便學(xué)校對(duì)其處罰。在“查詢管理”菜單中可以快速對(duì)學(xué)生信息、學(xué)生成績(jī)和學(xué)生違規(guī)信息進(jìn)行查詢,還可以將學(xué)生成績(jī)生成報(bào)表并進(jìn)行打印。2.2系統(tǒng)目標(biāo)學(xué)生信息管理系統(tǒng)以實(shí)現(xiàn)學(xué)生日常的信息管理為設(shè)計(jì)目標(biāo),加以強(qiáng)大的數(shù)據(jù)庫管理功能,可以方便對(duì)學(xué)生信息進(jìn)行管理,大大提高學(xué)校日常工作的效率。本系統(tǒng)在設(shè)計(jì)時(shí)應(yīng)該滿足以下幾點(diǎn):(1)采用人機(jī)對(duì)話的操作方式,信息查詢靈活、方便、快捷、準(zhǔn)確、數(shù)據(jù)存儲(chǔ)安全可靠;(2)對(duì)學(xué)生信息的操作簡(jiǎn)單,可以方便的進(jìn)行添加、修改和刪除;(3)可以根據(jù)需要靈活地調(diào)整科目信息;(4)可以錄入教師信息,方便任命班級(jí)的班主任;(5)編輯考試類別,更靈活地對(duì)學(xué)生測(cè)驗(yàn);(6)打印學(xué)生成績(jī)報(bào)表,更直觀的了解學(xué)生成績(jī);(7)學(xué)生違規(guī)處理,對(duì)于違反校規(guī)的學(xué)生進(jìn)行處罰;(8)對(duì)用戶輸入的數(shù)據(jù),系統(tǒng)進(jìn)行嚴(yán)格的數(shù)據(jù)檢驗(yàn),盡可能排除認(rèn)為錯(cuò)誤;(9)系統(tǒng)最大限度地實(shí)現(xiàn)了易維護(hù)性和易操作性;(10)系統(tǒng)運(yùn)行穩(wěn)定,安全可靠。2.3技術(shù)可行性分析本系統(tǒng)采用C/S開發(fā)方案,采用C++技術(shù)和SQLServer2021數(shù)據(jù)庫,Windows7操作系統(tǒng)。(1)從技術(shù)和可擴(kuò)展性來講,是可行的。隨著Internet的飛速發(fā)展使得C/S模式已成為當(dāng)前熱門的系統(tǒng)架構(gòu)方式,并且技術(shù)已經(jīng)成熟,系統(tǒng)操作簡(jiǎn)單,不需要任何硬件設(shè)備,可以在任何地方進(jìn)行操作而不用安裝任何專門的軟件。只要有一臺(tái)能上網(wǎng)的電腦就能使用,客戶端零維護(hù)。系統(tǒng)的擴(kuò)展非常容易,只要能上網(wǎng),再由系統(tǒng)管理員分配一個(gè)用戶名和密碼,就可以使用了。(2)操作上也是可行的,該系統(tǒng)不需要太大投入及太多的技術(shù)資源支持。(3)人員的數(shù)量可以滿足,以小組討論研究,互相分享想法,一起探討研究,集思廣益,可以滿足技術(shù)條件。在規(guī)定的期限內(nèi)可以完成本系統(tǒng)的開發(fā)。2.4經(jīng)濟(jì)可行性分析2.4.1支出采用本系統(tǒng),旨在解決學(xué)生信息管理,所需的軟件硬件部分較少,計(jì)算機(jī)一臺(tái),軟件需要安裝Visualstudio2021,SQLServer2021,windows7以上操作系統(tǒng)平臺(tái)。基本建設(shè)投資方面,可以利用現(xiàn)有設(shè)備,不必進(jìn)行另外的硬件設(shè)備投資。其他包括教務(wù)處管理員維護(hù)培訓(xùn)費(fèi)用和軟件設(shè)計(jì)和開發(fā)費(fèi)用。2.4.2收益本系統(tǒng)運(yùn)行可以提高學(xué)生信息管理的效率,滿足師生查詢的需要,減少管理員的不必要的操作,方便快捷的有效完成學(xué)生管理的各項(xiàng)工作。提高工作效率,減少紙張的使用,收益明顯提高。2.5操作可行性分析學(xué)生信息管理第統(tǒng)使用簡(jiǎn)單,速度快,準(zhǔn)確度高,現(xiàn)有人員只需經(jīng)過簡(jiǎn)單培訓(xùn)即可熟練掌握其使用依法;系統(tǒng)管理人員可使用動(dòng)手能力較強(qiáng)的人員,經(jīng)過短期培訓(xùn)就能解決常見問題。2.6總結(jié)本系統(tǒng)的技術(shù)成熟、完備,測(cè)試手段可靠,經(jīng)過經(jīng)濟(jì)、技術(shù)、操作等方面的可行性分析,可以確定本系統(tǒng)的開發(fā)完全必要,而且是可行的,為盡快實(shí)現(xiàn)校務(wù)辦公現(xiàn)代化管理,提高工作效率,節(jié)省人力資源,減輕老師的工作負(fù)擔(dān),方便教務(wù)處對(duì)學(xué)生的管理,可以立項(xiàng)開發(fā)。3.總體設(shè)計(jì)3.1系統(tǒng)功能描述通過對(duì)學(xué)生管理過程的研究和分析,要求本系統(tǒng)應(yīng)該具有以下功能:(1)學(xué)生信息錄入;(2)學(xué)生成績(jī)錄入;(3)程序等級(jí)設(shè)置;(4)學(xué)生違規(guī)處理;(5)學(xué)生成績(jī)排行;(6)學(xué)生信息查詢;(7)學(xué)生成績(jī)查詢、打印。3.2用戶選擇本系統(tǒng)面向的用戶有:學(xué)校的系統(tǒng)人員、管理人員、教師、學(xué)生。所以對(duì)計(jì)算機(jī)的人性化和易用性比較高,應(yīng)用于學(xué)校學(xué)生信息管理,總體任務(wù)是實(shí)現(xiàn)學(xué)生信息關(guān)系的系統(tǒng)化、規(guī)范化和自動(dòng)化,其主要任務(wù)是計(jì)算學(xué)生各種信息進(jìn)行日常管理,如查詢、修改、增加、刪除,另外還考慮到了學(xué)生違規(guī),做到看界面簡(jiǎn)單易懂,容易操作,提高了學(xué)校管理效率以及提升了學(xué)生信息的安全性和完整性。3.3模塊劃分3.4.1登入模塊用戶登陸(教師登陸,管理員登陸)3.4.2學(xué)生管理此模塊由學(xué)生基本信息、學(xué)生違規(guī)信息、3.4.3查詢管理此模塊由學(xué)生違規(guī)查詢和學(xué)生信息查詢等3.4.4.基本信息管理此模塊由教師信息、班級(jí)信息、考試類別信息等3.4.5退出退出管理系3.4實(shí)體-聯(lián)系圖(1)管理員實(shí)體管理員實(shí)體包括管理員名稱和管理員密碼。管理員實(shí)體E-R圖如圖3.1所示。圖3.1管理員實(shí)體E-R圖(2)教師信息實(shí)體教師信息實(shí)體包括教師編號(hào)、教師姓名、教師性別、所在辦公室、教師文憑教師職稱等。教師信息實(shí)體E-R圖如圖3.2所示。圖3.2教師信息實(shí)體E-R圖(3)學(xué)生信息實(shí)體學(xué)生信息實(shí)體包括學(xué)生編號(hào)、學(xué)生姓名、學(xué)生性別、學(xué)生年齡、聯(lián)系、和所在班級(jí)等。學(xué)生實(shí)體E-R圖如圖3.3所示。圖3.3學(xué)生信息實(shí)體E-R圖(4)違規(guī)信息實(shí)體違規(guī)信息實(shí)體包括違規(guī)編號(hào)、違規(guī)內(nèi)容、處理結(jié)果、備注信息和違規(guī)時(shí)間等。違規(guī)信息實(shí)體E-R圖如圖3.4所示。圖3.4違規(guī)信息實(shí)體E-R圖(5)成績(jī)等級(jí)實(shí)體成績(jī)等級(jí)實(shí)體包括等級(jí)名稱、成績(jī)上限和成績(jī)下限等。圖3.5成績(jī)等級(jí)實(shí)體E-R圖(6)成績(jī)信息實(shí)體成績(jī)信息實(shí)體包括學(xué)生編號(hào)、考試科目、考試成績(jī)、考試類別和考試時(shí)間等。成績(jī)信息實(shí)體E-R圖如圖3.6所示。圖3.6成績(jī)信息實(shí)體E-R圖3.5系統(tǒng)功能結(jié)構(gòu)學(xué)生信息管理系統(tǒng)的功能結(jié)構(gòu)如圖3.7所示。圖3.7學(xué)生信息管理系統(tǒng)功能結(jié)構(gòu)圖4.詳細(xì)設(shè)計(jì)4.1系統(tǒng)預(yù)覽學(xué)生信息管理系統(tǒng)由多個(gè)功能模塊組成,下面僅列出幾個(gè)典型的功能模塊。學(xué)生成績(jī)等級(jí)設(shè)置模塊如圖4.1所示,該模塊用于將學(xué)生的成績(jī)按分?jǐn)?shù)進(jìn)行等級(jí)劃分;學(xué)生信息查詢模塊如圖4.2所示,該模塊用于查詢學(xué)生的基本信息。圖4.1學(xué)生成績(jī)等級(jí)設(shè)置圖4.2學(xué)生信息查詢學(xué)生違規(guī)處理模塊如圖4.3所示,該模塊用于記錄學(xué)生的違規(guī)處理情況;學(xué)生違規(guī)查詢模塊如圖4.4所示,該模塊用于對(duì)指定學(xué)生的違規(guī)情況進(jìn)行查詢。圖4.3學(xué)生違規(guī)處理圖4.4學(xué)生違規(guī)查詢4.2業(yè)務(wù)流程圖 圖4.5學(xué)生信息管理系統(tǒng)業(yè)務(wù)流程圖4.3公共類設(shè)計(jì)本系統(tǒng)使用ODBC連接數(shù)據(jù)源,可以通過CDatabase類的Open函數(shù)連接數(shù)據(jù)源,Open函數(shù)用于創(chuàng)建到數(shù)據(jù)源的連接。語法:virtualBOOLOpen(LPCTSTRlpszDSN,BOOLbExclusive=FALSE,BOOLbReadOnly=FALSE,LPCTSTRlpsaConnect=”O(jiān)DBC;”,BOOLbUseCursorLib=TRUE);Open函數(shù)的參數(shù)說明如表4.1所示。表4.1Open函數(shù)的參數(shù)說明參數(shù)描述lpszDSN通過ODBC管理器注冊(cè)的數(shù)據(jù)源名,如果DSN在lpszConnect中被設(shè)置,那么lpszDSN應(yīng)設(shè)為NULL,并顯示一個(gè)數(shù)據(jù)源對(duì)話框,用戶可以在該對(duì)話框中選擇數(shù)據(jù)源.bExclusive默認(rèn)為FALSE,表示以共享方式打開數(shù)據(jù)源,當(dāng)前版本的類庫不支持獨(dú)占方式,不能設(shè)置為TRUE.bReadOnly默認(rèn)為FALSE,當(dāng)值為TRUE時(shí)以只讀方式打開數(shù)據(jù)源.lpszConnect連接字符串,可以包括數(shù)據(jù)源名、用戶賬號(hào)(ID)、秘密和其他信息,字符串必須以“ODBC;”開頭,表示要連接到一個(gè)ODBC數(shù)據(jù)源.bUseCursorLib默認(rèn)為TRUE,表示裝載光標(biāo)庫,設(shè)為FALSE則不裝載,快照需要光標(biāo)庫,動(dòng)態(tài)集不需要光標(biāo)庫.在CMystudentsysApp類中構(gòu)造一個(gè)CDatabase類對(duì)象,在InitInstance方法中連接數(shù)據(jù)源。代碼如下:if(CoInitialize(NULL)!=0)//初始化COM環(huán)境{AfxMessageBox(“初始化COM支持庫失敗!”);exit(1);}try{CStringstrConnect;strConnect.Format(“DSN=mystudentsys;”);//設(shè)置連接字符串//判斷連接數(shù)據(jù)庫是否成功if(m_DB.Open(NULL,false,false,”O(jiān)DBC;DSN=mystudentsys;UID=sa;PWD=;”)==0){AfxMessageBox(“UnabletoConnecttheSpecifiedDataSource”);returnFALSE;}}Catch(CDBException*pE){pE->ReportError();pE->Delete();returnFALSE;}4.4主窗體設(shè)計(jì)學(xué)生信息管理系統(tǒng)主窗口由菜單和客戶區(qū)域組成,其中,客戶區(qū)域由按鈕和位圖組成,主窗體效果如圖4.6所示。圖4.6學(xué)生管理系統(tǒng)主窗口主窗體設(shè)計(jì)步驟如下:?jiǎn)?dòng)VisualC++,選擇文件/新建命令,打開對(duì)話框,如圖4.7所示。圖4.7新建對(duì)話框4.5科目信息管理模塊設(shè)計(jì)4.5.1科目信息管理模塊概述科目信息管理用于維護(hù)科目信息,主要實(shí)現(xiàn)科目的添加、修改和刪除等操作??颇啃畔⒐芾泶翱谌鐖D4.8所示。4.5.2科目信息管理技術(shù)分析本系統(tǒng)使用ODBC連接數(shù)據(jù)源,在進(jìn)行對(duì)數(shù)據(jù)表的操作時(shí)可以以CRecordset類為基類派生一個(gè)數(shù)據(jù)表映射類,這樣可以方便操作數(shù)據(jù)表。派生數(shù)據(jù)表映射類的步驟如下:創(chuàng)建一個(gè)與數(shù)據(jù)表映射的類CSubjectinfo,打開類向?qū)Т翱冢瑔螕鬉ddClass按鈕,在彈出的快捷菜單中選擇新建命令,打開NewClass對(duì)話框,如圖4.9所示。(2)在name文本框中輸入類名CSubjectinfo,在Baseclass下拉列表框中選擇基類CRecordset,單擊OK按鈕打開DatabaseOptions(數(shù)據(jù)庫選項(xiàng))對(duì)話框,如圖4.10所示。(3)在ODBC下拉列表框中選擇一個(gè)數(shù)據(jù)源,本例為mystudentsys。Mystudentsys是學(xué)生信息管理系統(tǒng)所需的數(shù)據(jù)源,用于連接tb_subject數(shù)據(jù)庫。(4)單擊OK按鈕打開“SQLSever登錄”對(duì)話框,如圖4.11所示。(5)單擊“確定”按鈕,打開SelectDatabaseTables(選擇數(shù)據(jù)表)對(duì)話框,如圖4.12所示。(6)選擇dbo.tb_subject選項(xiàng),單擊OK按鈕創(chuàng)建映射類。(7)在映射類CSubjectinfo的頭文件中引入afxdb.h頭文件。4.5.3科目信息管理實(shí)現(xiàn)過程(1)創(chuàng)建一個(gè)對(duì)話框,打開對(duì)話框?qū)傩源翱?,將?duì)話框的ID設(shè)置為IDD_DIg_subjectinfo,將對(duì)話框的標(biāo)題設(shè)置為“科目信息管理”。(2)向?qū)υ捒蛑刑砑右粋€(gè)群組控件、兩個(gè)靜態(tài)文本控件和兩個(gè)編輯框控件,各控件的屬性設(shè)置如表4.2所示。表4.2控件資源設(shè)置控件ID控件屬性對(duì)應(yīng)變量IDC_STATICCaption:科目名稱無IDC_STATICCaption:科目代碼無IDC_subjectname無CStringm_subjectnameIDC_subjectid無CStringm_subjectid創(chuàng)建一個(gè)工具欄資源IDR_TOOLBAR_subjectinfo。為創(chuàng)建的對(duì)話框添加一個(gè)類,類名為CSubjectdlg。在該類的頭文件中引入Subjectinfo.h頭文件,使其可以使用映射類CSubjectinfo。向?qū)υ捒蛑刑砑覱nInitDialog方法,在對(duì)話框初始化時(shí)創(chuàng)建工具欄并打開模塊使用的數(shù)據(jù)表。代碼如下:BOOLCClass_subjectinfodlg::OnInitDialog(){ CDialog::OnInitDialog(); //創(chuàng)建工具欄,并設(shè)置工具欄屬性 if(!m_ToolBar.CreateEx(this,TBSTYLE_FLAT,WS_CHILD|WS_VISIBLE |CBRS_TOP|CBRS_GRIPPER|CBRS_TOOLTIPS|CBRS_SIZE_DYNAMIC) ||!m_ToolBar.LoadToolBar(IDR_TOOLBAR_classsubjectinfo)) { TRACE0(_T(“創(chuàng)建工具條失敗\n”)) returnFALSE; }//顯示工具欄 RepositionBars(AFX_IDW_CONTROLBAR_FIRST,AFX_IDW_CONTROLBAR_LAST,0);//設(shè)置工具欄按鈕風(fēng)格 m_ToolBar.SetButtonStyle(0,TBBS_CHECKBOX); m_ToolBar.SetButtonStyle(1,TBBS_CHECKBOX); m_ToolBar.SetButtonStyle(2,TBBS_CHECKBOX); m_ToolBar.SetButtonStyle(3,TBBS_CHECKBOX); m_ToolBar.SetButtonStyle(4,TBBS_CHECKBOX); m_ToolBar.SetButtonStyle(5,TBBS_CHECKBOX); m_ToolBar.SetButtonStyle(6,TBBS_CHECKBOX);//設(shè)置sql語句 CStringsqlStr; sqlStr="SELECT*FROMtb_class_subject"; myclass_subjectinfoset=newCClass_subjectset(&((CMystudentsysApp*)AfxGetApp())->m_DB); if(!myclass_subjectinfoset->Open(AFX_DB_USE_DEFAULT_TYPE,sqlStr))//打開數(shù)據(jù)表 { AfxMessageBox("tb_class_subject表打開失??!"); } returnTRUE;}自定義一個(gè)DisplayRecord方法,在記錄集指針移動(dòng)時(shí)為控件賦值。代碼如下:boolCClass_subjectinfodlg::DisplayRecord(){ if(myclass_subjectinfoset->IsEOF()&&myclass_subjectinfoset->IsBOF())//判斷是否移動(dòng)到了開頭和結(jié)尾 { m_classname="";//為控件賦空值 m_classid=""; } else { if(myclass_subjectinfoset->IsBOF()//移動(dòng)到了開頭就向后移動(dòng) { myclass_subjectinfoset->MoveNext();//向下移動(dòng)記錄集指針 } else//否則前移 { if(myclass_subjectinfoset->IsEOF()) { myclass_subjectinfoset->MovePrev();//向上移動(dòng)記錄集指針 } } } m_classname=myclass_subjectinfoset->m_classname;//對(duì)應(yīng)變量賦值 m_classid=myclass_subjectinfoset->m_code; UpdateData(FALSE); returntrue;}(7)處理工具欄“添加”按鈕的單擊事件,當(dāng)單擊“添加”按鈕時(shí),將清空控件中的數(shù)據(jù),以方便用戶進(jìn)行輸入。代碼如下:voidCClass_subjectinfodlg::Onclasssubjectinfotoolbaradd(){ //清空控件中的數(shù)據(jù) m_classname=""; m_classid=""; UpdateData(FALSE);}(8)處理工具欄“保存”按鈕的單擊事件,當(dāng)單擊“保存”按鈕時(shí),將控件中的數(shù)據(jù)保存到數(shù)據(jù)庫中。代碼如下:voidCClass_subjectinfodlg::Onclasssubjectinfotoolbarsave(){ //更新控件信息 UpdateData(TRUE); if(m_classname.IsEmpty()||m_classid.IsEmpty()) { AfxMessageBox("請(qǐng)輸入相應(yīng)的數(shù)據(jù)!"); return; } myclass_subjectinfoset->AddNew(); myclass_subjectinfoset->m_code=m_classid;//對(duì)應(yīng)變量更新 myclass_subjectinfoset->m_classname=m_classname; myclass_subjectinfoset->Update(); myclass_subjectinfoset->Requery(); DisplayRecord();}處理工具欄“刪除”按鈕的單擊事件,當(dāng)單擊“刪除”按鈕時(shí),將控件中的數(shù)據(jù)對(duì)應(yīng)的數(shù)據(jù)庫中記錄刪除。代碼如下:voidCClass_subjectinfodlg::Onclasssubjectinfotoolbardel(){ myclass_subjectinfoset->Delete();//刪除記錄 myclass_subjectinfoset->Requery(); DisplayRecord();//更新顯示}分別處理工具欄中“第一條”、“上一條”、“下一條”和“末一條”按鈕的單擊事件,當(dāng)工具欄按鈕按下時(shí),實(shí)現(xiàn)顯示“第一條”、“上一條”、“下一條”和“末一條”記錄的功能。代碼如下:voidCClass_subjectinfodlg::Onclasssubjectinfotoolbarfirst(){ if(!myclass_subjectinfoset->IsBOF()) { myclass_subjectinfoset->MoveFirst();//移動(dòng)到第一條記錄 DisplayRecord();//更新窗口顯示 }}voidCClass_subjectinfodlg::Onclasssubjectinfotoolbarlast(){ if(!myclass_subjectinfoset->IsEOF()) { myclass_subjectinfoset->MoveLast();//移動(dòng)到末一條 DisplayRecord();//更新窗口顯示 }}voidCClass_subjectinfodlg::Onclasssubjectinfotoolbarnext(){ if(!myclass_subjectinfoset->IsEOF()) { myclass_subjectinfoset->MoveNext();//移動(dòng)到下一條記錄 DisplayRecord();//更新窗口顯示 }}voidCClass_subjectinfodlg::Onclasssubjectinfotoolbarpre(){ if(!myclass_subjectinfoset->IsBOF()) { myclass_subjectinfoset->MovePrev();//移動(dòng)到上一條記錄 DisplayRecord();//更新窗口顯示 }}處理對(duì)話框的WM_CLOSE事件,當(dāng)窗口關(guān)閉時(shí),斷開與數(shù)據(jù)表的連接,并釋放指針。代碼如下:voidCClass_subjectinfodlg::OnClose(){ if(myclass_subjectinfoset->IsOpen())//判斷數(shù)據(jù)表是否打開 { myclass_subjectinfoset->Close();//關(guān)閉數(shù)據(jù)表 deletemyclass_subjectinfoset;//釋放指針 } CDialog::OnClose();}4.6學(xué)生信息管理模塊設(shè)計(jì)4.6.1學(xué)生信息管理模塊概述學(xué)生信息管理用于設(shè)置學(xué)生的基本信息,主要實(shí)現(xiàn)對(duì)學(xué)生基本信息的添加、修改和刪除等操作。學(xué)生信息管理窗體如圖4.13所示。圖4.13學(xué)生信息管理4.6.2學(xué)生信息管理技術(shù)分析修改記錄使用CRecordset類的Edit函數(shù),調(diào)用了Edit函數(shù)以后,就可以重新設(shè)定當(dāng)前記錄中的每個(gè)字段的值了,但是這時(shí)被修改的記錄值只是被保存起來,只有在調(diào)用了CRecordset類的Update函數(shù)以后才修改,否則不對(duì)記錄作出修改。刪除記錄需要使用CRecordset類的Delete函數(shù),并且在調(diào)用Delete函數(shù)之后不需要調(diào)用Update函數(shù),但是在調(diào)用Delete函數(shù)時(shí),記錄集中必須具有有效記錄。4.6.3學(xué)生信息管理實(shí)現(xiàn)過程創(chuàng)建一個(gè)對(duì)話框,打開對(duì)話框?qū)傩源翱冢瑢?duì)話框的ID設(shè)置為IDD_DIginfostudent,將對(duì)話框標(biāo)題設(shè)置為“學(xué)生信息管理”。向?qū)υ捒蛑刑砑?個(gè)群組控件、7個(gè)靜態(tài)文本控件和7個(gè)編輯框控件,各控件的屬性設(shè)置如表4.3所示。表4.3控件資源設(shè)置控件ID控件屬性對(duì)應(yīng)變量IDC_studentname無CStringm_studentnameIDC_studentage無floatm_studentageIDC_studentphone無CStringm_studentphoneIDC_findstudent_id無CStringm_studentidIDC_studentsex無CStringm_studentsexIDC_studentclass無CStringm_studentclassIDC_studentaddr無CStringm_studentaddr(3)以CRecordset類為基類派生一個(gè)CStudentinfoset類。(4)向?qū)υ捒蛑刑砑覱nInitDialog方法,在對(duì)話框初始化時(shí)創(chuàng)建工具欄并打開本模塊使用的數(shù)據(jù)表。代碼如下:BOOLCInfoStudent::OnInitDialog(){ CDialog::OnInitDialog();//創(chuàng)建工具欄if(!m_ToolBar.CreateEx(this,TBSTYLE_FLAT,WS_CHILD|WS_VISIBLE|CBRS_TOP|CBRS_GRIPPER|CBRS_TOOLTIPS|CBRS_SIZE_DYNAMIC) ||!m_ToolBar.LoadToolBar(IDR_TOOLBAR_subjectinfo)) { TRACE0(_T("創(chuàng)建工具條失敗\n")); returnFALSE; }RepositionBars(AFX_IDW_CONTROLBAR_FIRST,AFX_IDW_CONTROLBAR_LAST,0); m_ToolBar.SetButtonStyle(0,TBBS_CHECKBOX); m_ToolBar.SetButtonStyle(1,TBBS_CHECKBOX); m_ToolBar.SetButtonStyle(2,TBBS_CHECKBOX); m_ToolBar.SetButtonStyle(3,TBBS_CHECKBOX); m_ToolBar.SetButtonStyle(4,TBBS_CHECKBOX); m_ToolBar.SetButtonStyle(5,TBBS_CHECKBOX); m_ToolBar.SetButtonStyle(6,TBBS_CHECKBOX); //顯示工具欄RepositionBars(AFX_IDW_CONTROLBAR_FIRST,AFX_IDW_CONTROLBAR_LAST,0); //設(shè)置sql語句 CStringsqlStr; sqlStr="SELECT*FROMtb_studentinfo"; mystudentset=newCStudentinfoset(&((CMystudentsysApp*)AfxGetApp())->m_DB); if(!mystudentset->Open(AFX_DB_USE_DEFAULT_TYPE,sqlStr))//打開數(shù)據(jù)表 { AfxMessageBox("tb_studentinfo表打開失??!"); } returnTRUE;}自定義一個(gè)DisplayRecord方法,在記錄集指針移動(dòng)時(shí)為控件賦值。代碼如下:boolCInfoStudent::DisplayRecord(){if(mystudentset->IsBOF()&&mystudentset->IsEOF())//判斷記錄中是否有數(shù)據(jù) {//清空控件中數(shù)據(jù) m_studentaddr=""; m_studentage=0.0f; m_studentclass=""; m_studentname=""; m_studentphone=""; m_studentsex=""; m_studentid=""; } else { if(mystudentset->IsBOF())//移動(dòng)到了開頭就向后移 { mystudentset->MoveNext();//向下移動(dòng)記錄集指針 } else//否則前移 { if(mystudentset->IsEOF()) { mystudentset->MovePrev();//向前移動(dòng)記錄集指針 } } }//為記錄中的值添加到控件中 m_studentaddr=mystudentset->m_addr; m_studentage=mystudentset->m_age; m_studentclass=mystudentset->m_class; m_studentname=mystudentset->m_studentname; m_studentphone=mystudentset->m_phone; m_studentsex=mystudentset->m_sex; m_studentid=mystudentset->m_studentid; UpdateData(FALSE);//更新控件顯示 returnTRUE;}處理工具欄“添加”按鈕的單擊事件,當(dāng)單擊“添加”按鈕時(shí),將清空控件中的數(shù)據(jù),以便用戶進(jìn)行輸入。代碼如下:voidCInfoStudent::Onsubjectinfotoolbaradd(){ //清空控件中的數(shù)據(jù) m_studentaddr="";m_studentage=0.0f;m_studentclass="";m_studentname="";m_studentphone=""; m_studentsex=""; m_studentid=""; UpdateData(FALSE);}處理工具欄“保存”按鈕的單擊事件,當(dāng)單擊“保存”按鈕時(shí),將控件中的數(shù)據(jù)保存到數(shù)據(jù)庫中。代碼如下:voidCInfoStudent::Onsubjectinfotoolbarsave(){ UpdateData(TRUE);//判斷控件中數(shù)據(jù)是否為空 if(m_studentaddr.IsEmpty()||m_studentclass.IsEmpty() ||m_studentname.IsEmpty()||m_studentphone.IsEmpty() ||m_studentsex.IsEmpty()||m_studentid.IsEmpty()) { AfxMessageBox("請(qǐng)輸入相應(yīng)的數(shù)據(jù)!"); return; } mystudentset->AddNew();//調(diào)用添加記錄的函數(shù)處理//將控件中數(shù)據(jù)賦值給新紀(jì)錄的相應(yīng)字段 mystudentset->m_studentid=m_studentid; mystudentset->m_addr=m_studentaddr; mystudentset->m_age=m_studentage; mystudentset->m_class=m_studentclass; mystudentset->m_studentname=m_studentname; mystudentset->m_phone=m_studentphone; mystudentset->m_sex=m_studentsex; mystudentset->Update();//更新記錄集 mystudentset->Requery();//刷新記錄集 AfxMessageBox("成功保存數(shù)據(jù)!"); DisplayRecord();//更新顯示}處理工具欄“刪除”按鈕的單擊事件,當(dāng)單擊“刪除”按鈕時(shí),將控件中的數(shù)據(jù)對(duì)應(yīng)的數(shù)據(jù)庫中記錄刪除。代碼如下:voidCInfoStudent::Onsubjectinfotoolbardel(){ mystudentset->Delete();//刪除記錄 mystudentset->Requery();//刷新記錄集 DisplayRecord();//更新顯示}分別處理工具欄中“第一條”、“上一條”、“下一條”和“末一條”按鈕的單擊事件,當(dāng)工具欄按鈕按下時(shí),實(shí)現(xiàn)顯示“第一條”、“上一條”、“下一條”和“末一條”記錄的功能。代碼如下:voidCInfoStudent::Onsubjectinfotoolbarfirst(){ //TODO:Addyourcommandhandlercodehere if(!mystudentset->IsBOF()) { mystudentset->MoveFirst();//移動(dòng)到第一條記錄 DisplayRecord();//更新窗口顯示 }}voidCInfoStudent::Onsubjectinfotoolbarlast(){ if(!mystudentset->IsEOF()) { mystudentset->MoveLast();//移動(dòng)到末一條記錄 DisplayRecord();//更新窗口顯示 }}voidCInfoStudent::Onsubjectinfotoolbarnext(){if(!mystudentset->IsEOF()) { mystudentset->MoveNext();//移動(dòng)到下一條記錄 DisplayRecord();//更新窗口顯示 }}voidCInfoStudent::Onsubjectinfotoolbarpre(){ //TODO:Addyourcommandhandlercodehere if(!mystudentset->IsBOF()) { mystudentset->MovePrev();//移動(dòng)到上一條記錄 DisplayRecord();//更新窗口顯示 }}4.6.4學(xué)生信息管理單元測(cè)試本系統(tǒng)在初期編輯程序時(shí)常遇到一種錯(cuò)誤,在第一次運(yùn)行時(shí)沒有問題,但是當(dāng)?shù)诙卧龠\(yùn)行時(shí)就會(huì)出錯(cuò),后來發(fā)現(xiàn)是數(shù)據(jù)表重復(fù)打開造成的錯(cuò)誤。要解決這個(gè)問題并不難,只要處理的WM_CLOSE事件,當(dāng)窗口關(guān)閉時(shí),斷開與數(shù)據(jù)表的連接,并釋放指針,就可以實(shí)現(xiàn)。代碼如下:voidCInfoStudent::OnClose(){ if(mystudentset->IsOpen())//判斷數(shù)據(jù)表是否打開 { mystudentset->Close();//關(guān)閉數(shù)據(jù)表 deletemystudentset;//釋放指針 } CDialog::OnClose();}4.7學(xué)生成績(jī)錄入模塊設(shè)計(jì)4.7.1學(xué)生成績(jī)錄入模塊概述學(xué)生成績(jī)錄入管理用于記錄學(xué)生的考試成績(jī)。在錄入學(xué)生成績(jī)時(shí),應(yīng)保證同一學(xué)生的考試科目、考試時(shí)間、考試類別不能重復(fù)。如果重復(fù),系統(tǒng)認(rèn)為數(shù)據(jù)不合法,將給與提示,并退出操作。學(xué)生成績(jī)錄入窗口如圖4.14所示。圖4.14學(xué)生成績(jī)錄入窗口4.7.2學(xué)生成績(jī)錄入技術(shù)分析向數(shù)據(jù)表中添加記錄,首先要打開記錄集,可以使用CRecordset類的Open函數(shù)來實(shí)現(xiàn)。語法:virtualBOOLOpen(UNITnOpenType=AFX_DB_USE_DEFAULT_TYPE,LPCTSTRlpszSQL=NULL,DWORDdwOptions=none);nOpenType:記錄集的類型,如表4.4所示。表4.4記錄集類型表類型描述AFX_DB_USE_DEFAULT_TYPE默認(rèn)數(shù)據(jù)庫CRecordset::dynaset可雙向滾動(dòng)的動(dòng)態(tài)集CRecordset::snapshot可雙向滾動(dòng)的快照CRecordset::dynamic提供比動(dòng)態(tài)集更好的動(dòng)態(tài)特性CRecordset::forwardOnly只能向前滾動(dòng)的只讀記錄集lpszSQL:要執(zhí)行的SQL語句或表名,如果參數(shù)為NULL,則函數(shù)直接調(diào)用GetDefaultSQL獲取默認(rèn)的SQL語句。dwOptions:一些選項(xiàng)的組合,默認(rèn)值為none。然后使用CRecordset類的AddNew函數(shù)增加記錄(要求數(shù)據(jù)庫必須是以添加記錄的方式打開),隨后調(diào)用CRecordset類的Update函數(shù)更新記錄集完成新紀(jì)錄的添加,最后調(diào)用CRecordset類的Close函數(shù)關(guān)閉記錄集。4.7.3學(xué)生成績(jī)錄入實(shí)現(xiàn)過程創(chuàng)建一個(gè)對(duì)話框,打開對(duì)話框?qū)傩源翱?,將?duì)話框的ID設(shè)置為“DD_DIginfostudent”,將對(duì)話框標(biāo)題設(shè)置為“學(xué)生成績(jī)錄入”。向?qū)υ捒蛑刑砑?個(gè)群組控件、6個(gè)靜態(tài)文本控件、4個(gè)編輯框控件、一個(gè)時(shí)間控件和兩個(gè)按鈕控件。各控件的屬性設(shè)置如表4.5所示。表4.5控件資源設(shè)置控件ID控件屬性對(duì)應(yīng)變量IDC_sutentid無CStringm_sutentidIDC_examsubject無floatm_examsubjectIDC_submarks無CStringm_submarkIDC_examkind無CStringm_examkindIDC_examdate_picker無CStringm_examdateIDC_inputsave_marks Caption:保存無IDCANCELCaption:返回?zé)o(3)以CRecordset類為基類派生一個(gè)CExaminfo_submarkset類。(4)向?qū)υ捒蛑刑砑覱nInitDialog方法,在對(duì)話框初始化時(shí)打開本模塊使用的數(shù)據(jù)表。代碼如下:BOOLCExaminfo_submarkdlg::OnInitDialog(){ CDialog::OnInitDialog();//設(shè)置sql語句 sqlStr="SELECT*FROMtb_examinfo_sub"; myexamsubmarkset=newCExaminfo_submarkset(&((CMystudentsysApp*)AfxGetApp())->m_DB); if(!myexamsubmarkset->Open(AFX_DB_USE_DEFAULT_TYPE,sqlStr))//打開數(shù)據(jù)表 { AfxMessageBox("tb_examinfo_sub表打開失?。?); } m_examdate=CTime::GetCurrentTime();//獲得系統(tǒng)時(shí)間 UpdateData(FALSE);//更新控件顯示數(shù)據(jù) returnTRUE;}處理“保存”按鈕的單擊事件,將學(xué)生成績(jī)保存到數(shù)據(jù)表中。在保存數(shù)據(jù)時(shí),程序首先檢查數(shù)據(jù)是否合法(數(shù)據(jù)是否為空,數(shù)據(jù)是否重復(fù)),如果不合法,則進(jìn)行提示并退出操作,否則保存數(shù)據(jù)。代碼如下:voidCExaminfo_submarkdlg::Oninputsavemarks(){ UpdateData(TRUE);//讀á入?輸?入?的?資哩?料? if(m_studentid.IsEmpty()||m_examsubject.IsEmpty()||m_examkind.IsEmpty()) { AfxMessageBox("請(qǐng)?輸?入?相à應(yīng)畖的?數(shù)簓據(jù)Y!"); return; } CStringsqlStr_findid; sqlStr_findid="SELECT*FROMtb_studentinfoWHEREtb_studentinfo.studentid='"+m_studentid+"'"; myfindset_id=newCStudentinfoset(&((CMystudentsysApp*)AfxGetApp())->m_DB); if(!myfindset_id->Open(AFX_DB_USE_DEFAULT_TYPE,sqlStr_findid)) { AfxMessageBox("tb_studentinfo表括?打洙?開a失骸?敗悒?"); } if(myfindset_id->GetRecordCount()==0) { AfxMessageBox("沒?有瓺此?學(xué)§生Θ?請(qǐng)?確ā?認(rèn)?學(xué)§號(hào)?后ó再ù輸?入?!"); if(myfindset_id->IsOpen()) { myfindset_id->Close(); deletemyfindset_id; } return; } if(myfindset_id->IsOpen()) { myfindset_id->Close(); deletemyfindset_id; } CStringsql; CStringyear,month,day; year=m_examdate.Format("%Y"); month=m_examdate.Format("%m"); day=m_examdate.Format("%d"); sql.Format("SELECT*FROMtb_examinfo_subWHEREtb_examinfo_sub.studentid\ ='%s'andcode='%s'andkind='%s'andyear(examdate)='%s'and\ month(examdate)='%s'andday(examdate)='%s'",m_studentid, m_examsubject,m_examkind,year,month,day); myexamsubmarkset_findsame=newCExaminfo_submarkset(&((CMystudentsysApp*)AfxGetApp())->m_DB); if(!myexamsubmarkset_findsame->Open(AFX_DB_USE_DEFAULT_TYPE,sql)) { AfxMessageBox("tb_examinfo_sub表括?打洙?開a失骸?敗悒?"); } if(myexamsubmarkset_findsame->GetRecordCount()!=0) { AfxMessageBox("已?經(jīng)-有瓺此?記?錄?,不?能ü重?復(fù)′輸?入?!"); if(myexamsubmarkset_findsame->IsOpen()) { myexamsubmarkset_findsame->Close(); } return; }

中國企業(yè)物流運(yùn)作現(xiàn)狀及發(fā)展戰(zhàn)略探討摘要:自從2001年中國加入WTO之后,市場(chǎng)競(jìng)爭(zhēng)就更加激烈。每個(gè)企業(yè)為了提高自身的競(jìng)爭(zhēng)力,努力提高物流水平,降低物流成本。本文將中國物流現(xiàn)狀與發(fā)達(dá)的國家和地區(qū)的企業(yè)物流運(yùn)作模式進(jìn)行對(duì)比,提出了中國的企業(yè)物流發(fā)展戰(zhàn)略關(guān)鍵詞:企業(yè)物流現(xiàn)狀;運(yùn)行模式;發(fā)展戰(zhàn)略一、中國企業(yè)物流的運(yùn)作現(xiàn)狀及弊端

物流戰(zhàn)略是很多企業(yè)總體戰(zhàn)略中必須考慮到的一個(gè)重要因素。為了在市場(chǎng)中提升自我競(jìng)爭(zhēng)了,企業(yè)不斷在降低物流成本和提高物流水平上下功夫。無論是在國內(nèi)還是國際市場(chǎng)上,都能夠最大程度上的降低成本,同時(shí)又不減低服務(wù)水平,獲得競(jìng)爭(zhēng)優(yōu)勢(shì)。企業(yè)物流的管理整體上來說還是處于不完善的階段,大多停留在紙幣時(shí)代。比較先進(jìn)的企業(yè)已經(jīng)配備了電腦,但是依舊沒有形成系統(tǒng)的體系和網(wǎng)絡(luò)。EDL、個(gè)人電腦、人工智能、專家系統(tǒng)、通信和掃描等先進(jìn)的信息技術(shù)還未在物流運(yùn)作中廣泛地運(yùn)用。但是物流是一種新型的管理技術(shù),涉及領(lǐng)域?qū)拸V。因此物流管理人員要熟悉掌握企業(yè)內(nèi)物流和因此延伸的整條供應(yīng)鏈的管理知識(shí),掌握整個(gè)工藝流程,精通物流管理技術(shù)。而我國現(xiàn)在十分缺乏具備綜合物流知識(shí)的管理和技術(shù)人才,難以滿足企業(yè)物流現(xiàn)代化的需求。二、中國企業(yè)物流的發(fā)展戰(zhàn)略1990年以來,在國外,物流已經(jīng)成為了該國一個(gè)重要的經(jīng)濟(jì)增長(zhǎng)點(diǎn)。但是在中國,物流才剛剛起步。企業(yè)之間生產(chǎn)經(jīng)營(yíng),市場(chǎng)運(yùn)行的各個(gè)方面展開競(jìng)爭(zhēng)。具體體現(xiàn)在技術(shù)、人才上包括了物流和供應(yīng)鏈。在競(jìng)爭(zhēng)如此激烈的背景之下,企業(yè)進(jìn)入了一個(gè)微利時(shí)代,產(chǎn)品的成本和利潤(rùn)變得十分透明。而這用競(jìng)爭(zhēng)還會(huì)不斷加深,變得更加激烈,三、發(fā)展物流為當(dāng)務(wù)之急

社會(huì)的經(jīng)濟(jì)環(huán)境在不斷地發(fā)展變化之中,這就要求中小企業(yè)從戰(zhàn)略發(fā)展的高度出發(fā)去思考物流的發(fā)展問題。在大企業(yè)實(shí)時(shí)物流戰(zhàn)略的同時(shí),作為靈活的反應(yīng)者,中小企業(yè)在市場(chǎng)中,也積極采取了行動(dòng)。希望通過積極的物流戰(zhàn)略提升自身的競(jìng)爭(zhēng)力。信息技術(shù)的發(fā)展前景大好,經(jīng)濟(jì)貿(mào)易的高速發(fā)展,物流業(yè)已經(jīng)顯示出了蓬勃的活力和蘊(yùn)藏的無限商機(jī),物流服務(wù)正逐漸成為中國企業(yè)之中最為經(jīng)濟(jì)合理的綜合服務(wù)模式。中國進(jìn)入WTO的時(shí)間還不算長(zhǎng),我國的中小企業(yè)應(yīng)該及時(shí)把握住這一機(jī)會(huì),在物流市場(chǎng)競(jìng)爭(zhēng)比較不激烈時(shí)加入物流領(lǐng)域,迅速地占領(lǐng)一定的市場(chǎng)份額。但是如果中小企業(yè)不作為,等時(shí)間再長(zhǎng)久一些,將會(huì)失去發(fā)展物流的優(yōu)勢(shì)。

四、從戰(zhàn)略角度做物流

現(xiàn)下,我國的許多中小企業(yè)還未意識(shí)到物流戰(zhàn)略以及控制物流成本的重要性。中小企業(yè)應(yīng)當(dāng)認(rèn)識(shí)到物流戰(zhàn)略是提升競(jìng)爭(zhēng)力的重要手段,并且重視自身物流系統(tǒng)地建設(shè),將物流系統(tǒng)的建設(shè)上升到戰(zhàn)略高度。事實(shí)上,企業(yè)物流成本是除了原材料成本之外的最大成本項(xiàng)目。在國外發(fā)達(dá)國家,它們的物流成本一般控制在10%左右。而我國的現(xiàn)狀就不太樂觀。我國物流成本一般占總成本30%-40%,鮮活產(chǎn)品占60%左右甚至更多。我們應(yīng)該看到的是系統(tǒng)完善的物流管理可以節(jié)省15%-30%物流成本,很大程度上減少庫存和運(yùn)輸成本,對(duì)于中小企業(yè)來說,技術(shù)上和產(chǎn)品質(zhì)量都比不上大企業(yè)。但不得不承認(rèn)的是,中小企業(yè)產(chǎn)品價(jià)格更加受消費(fèi)者青睞,市場(chǎng)需求反應(yīng)更加靈活迅速。一旦中小企業(yè)將物流上升到戰(zhàn)略高度,利用先進(jìn)的物流管理模式,就可以大大的節(jié)省產(chǎn)品成本,進(jìn)一步發(fā)揮自身的優(yōu)勢(shì)。想要在變幻莫測(cè)的市場(chǎng)中屹立不倒。謀求更加長(zhǎng)遠(yuǎn)的發(fā)展,中小企業(yè)就要把物流放到企業(yè)經(jīng)營(yíng)管理的戰(zhàn)略高度上進(jìn)行思考。除了考慮要怎樣解決倉儲(chǔ)運(yùn)輸和商品配送這些物流的基本問題,還要思考怎樣把采購、生產(chǎn)和銷售過程中的物流活動(dòng)的有機(jī)結(jié)合。做到以業(yè)務(wù)流程為基礎(chǔ),使得物流的一體化。最終達(dá)到加強(qiáng)企業(yè)的在瞬息萬變的市場(chǎng)當(dāng)中的競(jìng)爭(zhēng)能力。

我國的中小企業(yè)只有突破地域限制、行業(yè)的局限,放眼于國內(nèi)外,才能說真正意義上做好了戰(zhàn)略制定,最大限度地把握住了機(jī)遇,有效規(guī)避風(fēng)險(xiǎn)。具體來的說,就是首先著眼于當(dāng)前的地域市場(chǎng)的開拓,在獲得了本地競(jìng)爭(zhēng)的優(yōu)勢(shì)之后,輻射全國,放眼于全球。

五、重視物流系統(tǒng)的全面改造

發(fā)展物流并不是一蹴而就的,它需要一步步地前進(jìn)。因此中小企業(yè)要注重制定詳細(xì)的物流重組的長(zhǎng)期實(shí)施計(jì)劃和發(fā)展策略。物流重組需要從物流業(yè)務(wù)流程、組織機(jī)構(gòu)、企業(yè)資源管理系統(tǒng)等方面展開,這樣一來才有可能慢慢實(shí)現(xiàn)企業(yè)物流向供應(yīng)鏈管理的“橫向一體化”。達(dá)到降低生產(chǎn)、庫存、運(yùn)輸?shù)拳h(huán)節(jié)的成本,最終給客戶帶來更大的效益,給消費(fèi)者帶去更大的實(shí)惠。與此同時(shí),企業(yè)的經(jīng)營(yíng)者應(yīng)該打破傳統(tǒng)的觀念,不再只是局限于投入產(chǎn)出管理問題,如流程再造、壓縮成本、加強(qiáng)培訓(xùn)以及有限資源的合理配置問題。企業(yè)的經(jīng)營(yíng)者應(yīng)當(dāng)認(rèn)識(shí)到物流是企業(yè)市場(chǎng)營(yíng)銷的基礎(chǔ),從戰(zhàn)略高度去思考物流運(yùn)營(yíng)成本與市場(chǎng)拓展需要、物流顧客服務(wù)的特殊要求之間的動(dòng)態(tài)平衡,做到將物流系統(tǒng)與營(yíng)銷戰(zhàn)略有機(jī)結(jié)合?,F(xiàn)代化的物流在國際上又被稱為一體化物流、供應(yīng)鏈管理、銷售鏈管理等等。不同于傳統(tǒng)的物流,現(xiàn)代物流包括了運(yùn)輸、儲(chǔ)存、裝卸、搬運(yùn)、包裝、流通加工、配送、信息處理、回收等功能。對(duì)我國的中小企業(yè)來說,發(fā)展物流必須重視物流系統(tǒng)的全面改造。以物流供應(yīng)鏈思想作為指導(dǎo),注意對(duì)物流管理的強(qiáng)化,積極運(yùn)用有效策略,全新打造物流的運(yùn)作與管理體系。

六、從服務(wù)角度做物流

在國外,廣泛認(rèn)為物流業(yè)歸屬于服務(wù)業(yè)。但是現(xiàn)代物流在中國還是新興產(chǎn)業(yè)。它的發(fā)展也就緊密伴隨著企業(yè)經(jīng)營(yíng)管理理念而在發(fā)展。當(dāng)代企業(yè)政府對(duì)物流管理的認(rèn)識(shí)也逐漸提高到了企業(yè)和地區(qū)的戰(zhàn)略理論的高度。當(dāng)代企業(yè)經(jīng)營(yíng)管理理念的核心正在從產(chǎn)品制造轉(zhuǎn)向產(chǎn)品銷售再轉(zhuǎn)向現(xiàn)代營(yíng)銷和客戶服務(wù)。并且提出了“一切為客戶創(chuàng)造價(jià)值”的現(xiàn)代經(jīng)營(yíng)理念。人們對(duì)于物流的認(rèn)識(shí)早已經(jīng)從企業(yè)自身的“功能性活動(dòng)”上升為“以滿足客戶需求為目的”、“努力為客戶創(chuàng)造價(jià)值,盡力增加顧客讓渡價(jià)值”的“從供應(yīng)到消費(fèi)的運(yùn)動(dòng)、儲(chǔ)存和配送的計(jì)劃、執(zhí)行和控制”的管理過程。消費(fèi)者的需求不僅僅是商品。以企業(yè)的經(jīng)營(yíng)和發(fā)展的角度來看,物流就等同于服務(wù)。服務(wù)也是物流的物品之一。它是企業(yè)所提供的服務(wù),“服務(wù)的實(shí)質(zhì)上也是一種商品”,但是這一點(diǎn)卻常常被人們所忽視。七、引進(jìn)專業(yè)物流管理咨詢公司中小企業(yè)自身的專業(yè)力量不足,因此要懂得借助相關(guān)的管理顧問公司以及相關(guān)研究機(jī)構(gòu)來科學(xué)規(guī)劃企業(yè)的物流戰(zhàn)略、實(shí)施戰(zhàn)略和管理體系。要去了解先進(jìn)物流企業(yè)的作以及這樣運(yùn)作的原因所在。在這一過程之中,它們的物流服務(wù)理念是如何變化的,怎樣做到滿足客戶需求和市場(chǎng)競(jìng)爭(zhēng),企業(yè)經(jīng)營(yíng)戰(zhàn)略相銜接。這有這樣,我國的中小企業(yè)才有可能成功地進(jìn)入一個(gè)新的市場(chǎng)領(lǐng)域,在現(xiàn)有的市場(chǎng)基礎(chǔ)上進(jìn)一步地替身自身的服務(wù)水平,拓展市場(chǎng)份額。許多的企業(yè)在管理咨詢方面下了許多的功夫,用以探索新管理方式和學(xué)習(xí)物流技術(shù)的運(yùn)用。中小企想要全面提升企業(yè)的物流運(yùn)作以及管理的水平,更加迅速地構(gòu)建起一個(gè)先進(jìn)的物流系統(tǒng)以及管理平臺(tái),就應(yīng)當(dāng)充分利用專業(yè)管理顧問公司的優(yōu)勢(shì)能力。結(jié)語:戰(zhàn)略性的規(guī)劃、投資以及技術(shù)開發(fā)是最近幾年促進(jìn)物流現(xiàn)代化發(fā)展的重要因素。企業(yè)亟需解決的不僅僅是倉促運(yùn)輸以及商品配送等最為基本的物流問題,最重要是為了解決怎么樣才能在在變化莫測(cè)的市場(chǎng)競(jìng)爭(zhēng)之中謀求生存與發(fā)展這一問題。因此企業(yè)必須做到將物流放在企業(yè)經(jīng)營(yíng)管理這一戰(zhàn)略高度上去考慮怎樣將采購、生產(chǎn)和銷售則一系列過程與物流相結(jié)合。從而形成以業(yè)務(wù)流程為基礎(chǔ),形成物流一體化,達(dá)到增強(qiáng)企業(yè)市場(chǎng)競(jìng)爭(zhēng)力的目的。物流已然是企業(yè)市場(chǎng)營(yíng)銷的基礎(chǔ)。作業(yè)企業(yè)的經(jīng)理,在物流決策方面應(yīng)當(dāng)從戰(zhàn)略高度去考慮物流運(yùn)營(yíng)成本和市場(chǎng)拓展需要、物流顧客服務(wù)的特殊要求之間的動(dòng)態(tài)平衡,仔細(xì)思考怎樣才能把物流系統(tǒng)與營(yíng)銷戰(zhàn)略以及企業(yè)的總體戰(zhàn)略靈活結(jié)合。不再像傳統(tǒng)上,只注重如何解決流程再造、壓縮成本等投入產(chǎn)出的管理問題以及有限資源的合理配置問題。參考文獻(xiàn)【1】孟祥茹

-中國企業(yè)物流運(yùn)作現(xiàn)狀及發(fā)展戰(zhàn)略探討\o"《山東交通學(xué)院學(xué)報(bào)》"《山東交通學(xué)院學(xué)報(bào)》

-

2013【2】HYPERLINK"/usercenter/data/author?cmd=authoruri&wd=authoruri:(4a7999e0e9686c0e)%20au

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論