第一篇:旅行社信息管理系統
旅行社管理信息系統一、旅行社管理信息系統概述
1.旅行社管理的基本業務
旅行社基本的業務過程就是分別將交通部門、飯店、餐館、旅游景點、商店、文化娛樂等類型企業生產的單項旅游產品統一采購后進行優化組合,形成各具特色的旅游產品,再銷售給旅游者。作為一個“生產”服務的企業,旅行社最基本的業務主要集中在產品的生產銷售、售后服務及最終的財務結算、會計業務等部分。以下就這3個基本環節做簡單介紹。
(1)產品設計、宣傳與銷售業務
產品設計、宣傳與銷售是旅行社最基本的業務之—。通過對交通、住宿、景點等綜合信息的組織,設計出各種吸引旅游者的產品,而這種產品的特點是旅游者在消費之前無法直接感受到的。因此,旅游產品的銷售顯得格外重要,即將有關產品的各種信息通過各種媒介傳遞出去,以便消費者全面了解旅行社的產品并產生購買的欲望。
(2)接待業務
旅行社產品的特殊性決定了產品的購買先于消費,并且旅游者實際消費的過程,就是旅行社進行訂房、訂餐、訂票及導游服務等直接生產和接待的過程。
(3)財務結算會計業務
財務結算會計業務在旅行社經營中起監督、控制、調節的作用,并通過賬目往來結算、財務分析和成本核算等途徑促使旅行社企業開源節流,不斷改善經營,獲取更高的經濟效益。
2.旅行社管理信息系統的定義和特點
旅行社管理信息系統是利用計算機技術和通信技術,對旅行杜經營的所有信息進行綜合管理和控制的以人為主體的人—機綜合系統。旅行社管理信息系統的職能是對旅行社生產服務過程的管理實現信息化,從而提高旅行社的生產率和管理效率,同時提高旅行社的市場競爭能力,滿足現代人旅游的個性化服務要求。旅行社信息系統應具有以下幾方面的特點。
(1)處理的信息量大,更新快
旅行社管理涉及的信息量很大,特別是旅游產品的信息。可以說,一個旅行讓收集的旅游產品信息越多,旅游消費者獲取滿意產品的概率就越高。而且旅行社經營的產品涉及旅游交通、旅游景點、飯店、餐館等行業和部門,相關信息處在不斷的變化之中,其時效性很短,有的只有一天,有些信息甚至只有幾個小時。旅行社管理信息系統必須及時更新系統中的信息,把最有效的旅游信息介紹給旅游消費者。
(2)具有較強的交叉處理能力
旅行社是旅游產品銷售的中間商,組織、銷售旅游產品,為旅游消費者提供服務是其主要業務。旅行社的每一筆業務都必須通過各個部門的協作來完成,如某項旅游產品的銷售,需經過銷售、“計調、接待、陪同、財務結算等環節,為滿足這個流程中信息流向的交叉互動,要求旅行社管理信息系統具備很強的交叉處理信息的能力。
(3)具備靈活的個性化處理能力 現代旅游對個性化的要求越來越高,為迎合這種發展趨勢,旅行社管理信息系統必須利用Internet網絡技術和信息處理技術,為旅游提供個性化的服務。如對散客而言,旅行社通過提供完美的信息服務,旅游者可以自己確定旅游線路、自己選擇住宿的飯店等,實現自主旅游。對于團隊旅游而言,旅行社在組旅游者外出旅游過程中,通過信息服務系統,可以及時向旅游者提供旅途生活中的各種個性化服務。
3.旅行社管理信息系統的功能需求
考慮旅行社內部網絡的功能需求,即圍繞旅行社的基本業務,如旅游產品開發、旅游產品的促銷、旅游產品的銷售、旅游接待服務、旅游的售后服務等環節。一個旅行社管理信息系統必須能夠滿足以下功能需求:
(1)組團職能。負責收集市場信息,組織開發旅游產品,制定組團接待計劃。
(2)接團職能。負責對團隊地面的接待工作,及時協調接待中出現的異常問題。
(3)導游職能。根據客戶要求,合理配備導游員,具體做好接待工作。
(4)散客職能。主要為海外游客提供小包價為主的旅游服務(區別于團隊)。
(5)交通職能。負責聯系車輛運輸部門,準時出票和團隊行李的運送。
(6)計調職能。做好接待團隊計劃,具體落實旅游中的票、房、車、餐等內容。
(7)財務職能。負責對企業的財務核算、決算以及經濟活動分析等事務。
(8)綜合業務職能。主要是管理各種價格信息,負責對價格的審批、檢查、監督,并對旅游市場進行調研和分析。
(9)辦公室管理。主要處理日常辦公事務,如文件、檔案的管理,經營協調的處理等。
(10)人事管理。主要處理人事方面的事務,如培訓記錄、晉升記錄、獎勵記錄等,也包括工資管理等內容。
(11)外聯管理。主要處理和協調旅游服務中需要其他單位配合的一些事務,記錄有關外聯的一切數據信息。
一個典型的旅行社,其業務作業流程如圖5—1所示。
旅行社的組團中心根據旅游團(者)組織情況編制自聯計劃和組團核算,而后將它們分別送至計調部和財務部;計調部接到計劃后,需要逐項落實其中的票、車、房、餐、導游各項內容,同時根據旅游者人數情況將計劃告知接團中心或散客中心,并將計劃流量通過綜合業務部上報至經理辦公室;接待中心與散客中心在完成接待工作的同時需將接團核算以費用結算單的形式送至財務部進行統計、核算。
4.旅行社管理信息系統的結構
任何一個信息系統都具有一定的結構,旅行社管理信息系統也不例外,由于旅行社管理信息系統的軟件不是很多,尤其在許多中小型的旅行社,還沒有真正開展信息化的經營管理,所以在這里只能從原理性的角度討論旅行社管理信息系統的結構形式。一般來說,旅行社管理信息系統的結構是指各部件構成的框架。對部件不同的理解就構成了不同結構方式,一般可以分為概念結構、功能結構、軟件結構和硬件結構等4種方式。
(一)概念結構
概念結構對信息系統的理解是:系統是由信息源、信息處理機、信息用戶、信息管理者等4個部件組成。它是從理論概念的角度看待信息系統的組織結構。
(二)功能結構
功能結構是從系統使用者的角度看,認為系統有一個目標,有多種功能,各種功能之間又有各種信息的聯系,構成一個有機結合的樹型結構整體。因為系統可以由子系統構成,子系統還可以由各功能模塊組成,形成完整的TAMIS系統功能結構。
(三)軟件結構
軟件結構是從軟件開發技術人員的角度看,認為系統由許多軟件模塊和各種數據文件組成,它把各個功能模塊和文件數據組合起來,構成一個功能矩陣圖,就形成了系統的軟件結構。從軟件結構的角度,一個信息系統是有許多個功能模塊文件、共享文件和數據文件構成的。
(四)硬件結構
旅行社管理信息系統有硬件部分和軟件部分,硬件結構就是系統的硬件組成及其連接方式,其核心是網絡硬件結構,包括硬件的物理結點安排、網絡設備配置、網絡布線以及各辦公室的計算機分布規劃等。
二、旅行社管理信息系統的信息流程
在業務上,旅行社的各部門是由計劃數據流和財務數據流串接起來的。從發生的時間順序上來看,計劃數據流(即訂單產生)在前,財務數據流在后。現實中旅行社一般業務信息流程如圖所示:
從旅行社管理業務信息流程可見,旅行社的業務開始于根據游客需求(出游、訂票、送等)形成的計劃訂單。這是數據流的源點。在確認訂單之后,根據業務的不同做出不同的處理,若是國內業務則確認游客名單并組成旅游團,然后交計調部門做盯房、訂車、訂票等處理,接著轉到接待部門,接待部門按照訂單的要求安排導游人員和派發物品,從而完成整個接待工作。在此過程中,還必須完成財務收款、財務付款,成本利收入的核算,核算的結果最終作為財務部的憑證,進行賬務報表部分處理.因此數據流終點是財務部門,并在綜合業務部門進行各種數據統計,以便未來旅游產品的開發與完善。若是海外業務或港澳業務還必須先辦好各種證件和護照后再做處理c此外,旅行社還將處理一些單項的業務,其處理過程較團隊業務簡單,在確定訂單后交由計調部門,并最終在財務部門完成財務處理I作。
1.組團業務的信息流程
組團業務由組團報價與織團核算2個部分組成。其中,組團報價的業務過程為:根據客戶(如游客、海外或異地旅行社)的需求,對旅游線路和旅游日期進行預算,將報價反饋給客戶;客戶同意方案后,編制旅游計劃并確認訂單,然后將計劃下發到接待部門或旅游線路上的各個地接旅行社:并將報價及團隊人數進行核算。
圖5—2中,加工P1訂單輸入是輸入客戶的訂單意向;P2報價是根據訂單意向,計算住房費、服務費、交通費、門票、車費、餐費等,合計每一個單價,生成確認的報價,經客戶同意后生成確認的訂單;P3統計是將報價匯總進行組團結算,并生成組團匯總文件;P4查詢是提供根據人數、國籍、日期等進行組團情況查詢的服務。
圖5—2中D1是計劃書文件,內含訂單編碼、旅行社代碼、旅行社名稱國籍、團隊名稱、團體人數、婦女人數、兒童人數、團隊用房、預計到達日期、預計離開日期、旅行線路等數據;D2為價格文件,用于保存營業項目、單價等信息;D3為確認訂單文件,保存的數據內容同D1。
在實際業務上組團核算應屬于財務部,但由于組團核算業務是核算銷售部(或外聯部)所組團隊的收支情況,所以很多旅行社將組團核算業務置于銷售部的行政管理下,流程為:根據組團報價11食預提成本,并做銷售收入及預提成本憑證,記入應收賬款。對各地送達的團隊費用結算單,根據訂單進行審核,審核內容一般為旅游線路與計劃是否相符、費用支出是否合理等。審核結束后進行核算,記實際成本憑證送財務并記人應付賬款。對財務部支付給各地旅行社的賬款和回收客戶的營業款制作憑證,沖減相對應的應收或應付款項。
根據組團核算業務繪制的數據流程圖如圖5—3所示。
圖5—3中Pl將報價單按客戶的不同分別進行匯總;P2根據匯總結果制作收入憑證,同時掛應收賬款;P3對結算單進行合理、合法性審核;P4將審核后的單據做支出憑證,并掛應付賬款;P5對應收或應付款根據條件進行查詢和打印各客戶應收或應付款信息。
圖5—3中Dl應收賬款文件保存收入賬號、費用編碼、數量、金額、日期等信息;D2應付賬款保存支出賬號、費用編碼、數量、金額、日期等信息。
2.接待業務的信息流程
旅行社接待業務的工作主要是接待旅游消費者。其中接團核算是其主要環節,而且核算過程比較復雜,因此,我們重點介紹接團核算的信息流程。
接團核算業務的主要職能是審核各接待部門接待團隊時發生的費用單據,核算接待團隊的收人情況,并與各組團社進行結算;根據接待中心各接待部門送達的接團單據與訂單進行審核;根據訂單和費用單據制作向上結算單,送達至各組團社,并以之做憑證送財務部記應收賬款;根據財務部送來的銀行匯款通知單,沖減應收賬款;根據各種實際發生的費用單據,如餐單、房單、車單做向下結算,送達財務部作為向餐點、景點付款的依據。
接團核算業務的數據流程圖如圖5—4所示。
圖5—4中,Pl是根據訂單(或計劃書)、費用單、行車千米數據,對計劃執行情況及發生費用進行審核;P2對訂單和費用單據進行核算,根據各種收入價格表制作向上結算單,并送各組團社,同時,根據各種成本價格表制作向下結算單.并送財務部;P3根據向上結算單匯總制作收入憑證送財務部.并記應收賬款明細賬。
圖5—4中D1費用單文件保存費用單編碼、日期、費用編碼、單價、數量、金額等數據;D2向上結算單文件保存對方單位名稱、團號、日期、費用編碼、數量、金額、備注等數據;D3應收賬款文件保存收入賬號、費用編碼、數量、金額、日期;D4價格文件主要保存費用編碼、單價等數據。
3.計調業務的信息流程
計調的主要業務是接收本社或其他組團社的計劃書,安排訂車船票和電機票,下達用車計劃,負責訂餐、訂房,制定接待計劃,接待完成協助財務部審查報銷憑據等。
計調業務的數據流程圖如圖5—5所示。
圖5—5中的Pl是把收到的各種計劃書輸入到計劃匯總文件中;P2根據各接待部收到的訂單變更修訂計劃匯總文件,并通知票務部或車隊;P3可根據組(接)團名、旅行社名、日期、國籍、人數、流量、用房數、接待方式、地陪抵離則司、游覽內容等查詢有關計劃,P4根據計劃及調度情況打印登記表、流量表、機票預訂單等;P5根據計劃匯總文件內容及調度方案生成計劃調度文件。
圖5—5中D1保存接待部門或人員名稱、旅行社代碼、旅行社名稱、國籍、團隊名稱、團隊人數、女性人數、兒童人數、預計到達日期、預計離開日期、用房、旅行線路等數據;D2保存已安排的計劃。其數據內容同D1。4.綜合業務的信息流程
在旅行社經營管理中,通常設置綜合業務部處理綜合業務。與綜合業織業務往來的部門比較多,而且該部門與本地區的景點、飯店等聯系也比較多。綜合業務部通過統計、價格確定及檢查等方式,完成各旅行社的總體情況報表,把這些報喪提供給有關主管部門或經理。
綜合業務的數據流程圖如圖5—6所示。
圖5—6 P1主要將協議價格進行輸入,并形成綜合數據文件;P2根據綜合數據文件中的記錄進行按部門、按項目匯總,生成匯總后的數據文件;P3根據各種條件查詢有關價格信息;P4打印各種價格報表。
圖5—6中Dl保存明細的部門編碼、部門名稱、日期、營業項目、價格、數量、金額、備注;D2中保存的數據內容同D1,其中的數據則是按部門、按營業項匯總后的數據。5.財務業務的信息流程
財務是旅行社經營管理的核心業務,主要是根據各業務部門送達的費用單和收入單做收入和支出現金或銀行存款憑證;根據費用單或收入單制作收支憑證;根據業務內容做轉賬憑證;根據憑證記賬,分別記日記賬和明紉賬及總賬,月底根據總賬及各科目發生額制作內部報表和外部報表。其主要業務包括賬務處理與成本核算2部分。
(1)賬務處理流程
根據業務性質做收入憑證、支出憑證和轉賬憑證。根據憑證中有關條目記總賬、明細賬。如果是現金或銀行存款憑證則記日記賬,結算出當天余額。到月底根據總賬及明細賬有關科目做資產負債表、損益表和其他財務報表。
(2)成本核算流程
旅行社的接待中心、散客部、交通部或票務部等業務部門將接待所發生的實際費用單據經初步核算后送財務部。每月底財務部將發生的費用單據分賓館盤點和業務部門匯總,再根據與旅游部門協商的價格計算所發生的費用,記入業務部門的成本和賓館、景點、車隊等部門的往來賬戶中。
成本核算業務的數據流程圖如圖5—7所示。
圖5—7中的Pl將手工制單的來自各業務部門的各種成本憑證輸入計算機;P2將系統中記錄的各種費用單據按費用發生部門和費用項目進行匯總;P3將匯總費用根據有關費用科目記成本憑證;P4將憑證中的成本憑證記入成本賬和掛應付款。
圖5—7中D1費用單文件主要保存費用單編碼、日期、費用編碼、單價、數量、金額等數據;D2價格表主要保存費用編碼、單價等數據;D3應付賬款保存賬號、費用編碼、數量、金額、日期;D4成本明細賬保存費用編碼、單價、數量、金額、摘要等數據。
三、旅行社管理信息系統的總體設計
旅行社管理信息系統的開發經過信息流程分析和功能分析后,即進入了系統設計階段。系統設計階段同樣有總體設計和詳細設計2個階段。在這里僅介紹系統設計階段中的總體設計.有關詳細設計的內容,讀者可以參考其他管理信息系統類的書籍。
1.旅行社信息系統的設計標準
一個系統的好壞與總體設計密切相關,但如何衡量一個系統的好壞?它的標準是什么?旅行社管理信息系統的信息需求量大,涉及的外聯單位又多,衡量系統的優劣有一定的難度。根據管理信息系統的共性,評價一個旅行社管理信息系統的標準應包括以下5個方面。
(1)系統的效率
系統的效率指系統數據處理的能力。旅行杜管理信息系統至少是一個局域網系統,系統效率是指單位時間內所處理的作業量以及聯網狀態下的響應速度o這里指的是系統的總體效率,并不是單臺計算機的效率。它要求旅行社管理信息系統具有快速響應的數據處理能力。
(2)系統工作的質量
‘
系統工作的質量指旅行社管理信息系統所提供的數量、精度以及信息的及時性。另外還指系統使用的方便程度和實用性。如設計的界面是否易于操作,信息摸索是否靈活易用,報表形式是否符合管理常規和用戶習慣等。
(3)系統的可靠性
系統的可靠性是指系統受外界干擾時的抵御能力和恢復能力。如系統的保密性輸入的容錯能力、系統數據文件的備份以及系統故障時的恢復周期等。
(4)系統購可擴充性
系統的可擴充性是指系統的功能可以修改和擴充。系統所處的環境在不斷變化,系統的功能不能一成不變,必須根據管理要求不斷改進和完善。這是一個管理信息系統必須具備的功能。
(5)信息資源的利用率
信息資源的利用率是指系統能否最大限度地利用現有的信息資源,系統能否處理現有的全部信息,能否提供有效的信息供管理層決策使用。旅行社管理信息系統必須能及時處理原始數據并提供決策用的有效信息。
3.旅行社信息系統的子系統劃分
根據旅行社的組織結構和業務功能,在數據流程圖分析的基礎上,再結合功能或數據圖的分析,結合現代旅行社企業的管理要求,可以得到旅行社管理信息系統的子系統劃分,具體有16個子系統(或稱模塊。
1.價格管理子系統
9.固定資產管理子系統
2.報價組團子系統
10.人力資源管理子系統
3.計劃調度子系統
11.綜合統計子系統
4.組接團核算子系統
12.散客部綜合管理子系統
5.地面接待子系統
13.中國公民游管理子系統
6.票務管理子系統
14.辦公自動化子系統
7.賬務和成本核算子系統
15.總經理查詢子系統
8.采購管理子系統
以上16個子系統基本上覆蓋了旅行社的全部業務范圍,每個子系統都是一個獨立的系統,旅行社可以根據自己的需要選購和設計相應的子系統。這些子系統運行在不同的部門,通過權限和屬性的設置,使每個部門共享一個完整的信息系統。
3.旅行社信息系統的網絡設計
一個通用的旅行社管理信息系統的設計以財務信息為中心,以計算機局域網為基礎設施,覆蓋旅行社主要業務部門及下屬各企業實體,使整個企業實現信息資源的共享,完全擺 脫人工方式的信息傳遞及處理,以達到信息傳遞快捷、信息處理自動化、信息流通網絡化的要求。
(1)計算機網絡設計
旅行社計算機管理系統須建立在旅行社局域網的基礎之上。旅行杜各部門之間工作聯系的緊密性,決定了旅行社內部的計算機系統應當建成一個現代通信技術和計算機數據處理技術相結合的網絡信息系統。旅行社局域網是旅行社計算機管理系統運行的必要硬件基礎。從技術上看,不同企業的局域網設計和建設方法都是相似的,旅行社的局域網設計可以參照飯店的網絡設計。
同時,旅行社的對外聯系業務較多,旅行社與其他機構之間的網絡鏈接是旅行社實施信息化的外部基礎.主要包括以下3個方面。
與外部聯網
旅行社與民航、鐵路、公安、海關等專用系統的聯網,有時還與CRS/GDS等一些專用網的連接(在歐美國家中小旅行社通過CRS/GDS接觸旅游供應商或旅游批發商的產品,通過系統實現房間預訂等,對這些系統的使用提高了旅行社的效率和代理銷售的產品范圍)。這時旅行社一船只要考慮終端設置和網絡接入的問題。
遠程登錄
許多旅行社在自己的主辦公地點之外,還設有散客門市部、車隊、代理售票處等業務部門。由于距離較遠,這些業務部門不能直接與主辦公地點的局域網相連。此時,需要增加調制解調器、中繼器等遠程通信設備,以擴大網絡的使用范圍。
與國際互聯網的連接
旅行社要擴展自身的網絡,必須通過Internet與國內的其他旅行社、境外的旅行社以及其他合作單位聯系,并通過Internet宣傳旅游產品,促進網絡營銷。在網絡設計中,旅行社可以根據自己組織的特點,設計一個適合自己企業特點的網絡系統。一個典型的旅行社,其網絡結構如圖5—11所示。
四、旅行社管理信息系統的功能設計
旅行社管理信息系統功能設計的依據是系統分析階段所規劃的系統數據處理流程圖,通過對數據處理流程圖的轉換和優化,并根據由此得到的模塊結構圖,得到最后的系統功能結構圖。一個完整的旅行社管理信息系統由價格管理、報價組團、計劃調度、組接團核算、地面接待、票務管理、賬務和成本核算、采購管理、固定資產管理、工資管理、綜合統計、散客部綜合管理、中國公民游管理、人力資源管理、辦公自動化、經理查詢以及旅游產品管理等共十六個子系統組成,這些子系統分布在不同的部門進行管理,共同集成在一個計算機網絡系統中。整個系統的功能結構圖如圖5—9所示。
1、價格管理子系統
價格是費用結算、向上結算單結算、成本核算的基礎。報價組團是否合理也受價格是否及時、準確等因素的影響。由于旅游部門價格項目很多,不同地區、不同單位同一項服務價格也不一定相同,必須建立集中、統一、準確的價格管理體系,在系統設計上將價格劃為一個子系統,以實現對價格的有效、科學、規范化管理。本子系統可按淡、旺季等條件完成全國各地線路產品賓館住房、餐飲、各類票務、風味、游船、用車及門票等旅行服務價格信息的管理工作,為報價組團、成本結算等工作提供準確的價格信息。該子系統的功能如圖所示。
2、報價組團子系統
報價組團不是旅行社自己的銷售產品,而是旅行社相互之間的一種銷售服務,是根據服務內容和要求向對方做出基本的報價。報價組團管理是根據境外旅行社發來的中國旅行計劃,按旅行線路及對方要求計算出每人平均服務價格及全陪價格,并把服務價格打印出來報給對方,按對方確定的團隊計劃,編排在中國境內的旅游線路,并打印出具體的旅行計劃書。本子系統的功能結構圖如圖5—1l所示。
該子系統主要應具備的功能有以下幾個方面:
(1)報價計劃維護。完成原始計劃的輸入、修改、查詢、取消、打印等工作。
(2)模擬計算團隊的各地(含各個項目)成本以及總成本。
(3)預算單團利潤。
(4)完成對外正式報價。
(5)確認計劃維護。完成確認計劃的輸入、修改、查詢、取消、打印等工作。
(6)跟蹤團隊收入變更,調整團隊成本,并保留每次的修改數據,隨時可進行利潤核算。
(?)一旦發現利潤不足,可重新調整團隊成本,或對境外重新報價。
(8)打印、發送團隊接待計劃書和價格協議書。(9)審核團隊收入、成本。
(10)單閉利潤核算及賬務匯總、打印。
3、計劃調度子系統
本子系統的主要功能是為落實接團計劃進行各種調度和協調,打印各種調度計劃表,并根據計劃表形成團隊的訂餐、訂房、訂票等表單,對用車進行調度,進行接團統計,為領導提供輔助決策。具體的功能如下:
(1)計劃管理。包括計劃輸入、計劃變更、計劃取消等。
(2)訂票管理。根據計劃安排訂票,包括打印訂票通知單及清單。
(3)訂房管理。如計劃中指明要求代訂客房,則自動產生訂房單。
(4)流量預報。根據計劃,產生今后若干天的人數、批數流量預報表。
(5)定車管理。根據計劃安排用車、修改用車計劃。
(6)查詢計劃。根據各種要求,查詢計劃及團隊情況。
(7)初步統計。根據已發生的計劃,初步統計出各部門接待的人數、批數等數據。
4、組接團核算子系統
1).組團核算子系統
組團核算負責對外聯所組團隊的核算工作,包括報價輸入、各旅行社結算單、收入支出憑證的生成和往來賬的管理等,該子系統功能圖如圖5—12。
該子系統的具體功能為:
(1)計劃報價管理。包括組團報價的輸人、修改、查詢等。
(2)各結算單管理。包括各旅行社送達的結算單的輸入、查詢、修改等。
(3)匯總制作憑證。根據報價及結算單做收入、支出憑證。
(4)往來賬管理。往來賬查詢打印。
(5)各種統計。根據需要生成統計報表。
2.接團核算子系統
接團財務核算包括了接團核算的所有業務,其中有向上結算單的生成,單團主要費用成本管理,匯總結算單、收入憑證的制單及應收賬款的管理,以及進行各種統計查詢工作。該子系統功能圖如圖5—13所示。
該子系統的具體功能為:(1)計劃管理。包括上團計劃的輸入、修改、查詢、取消工作。(2)費用管理。包括上團發生的主要費用單據管理。(3)制作向上結算單。根據計劃及完成情況制作向上結算單。(4)制作成本表。根據費用單據和協商價格做單團成本表。(5)匯總管理。匯總向上結算單并做收入憑證。(6)往來賬管理。包括往來賬的查詢和打印。(7)查詢統計。根據各種需要查詢接團情況、收入、支出情況。
5、地面接待子系統
地面接待子系統是與計調部分相對獨立的,由接待部使用的日常事務管理模塊。本子系統具有下述功能:
(1)分團管理。按計劃團隊事先分配地陪,并打印當日有團陪同簽到表。
(2)計劃維護。根據計劃變更通知隨時更改團隊計劃,打印出更改憑據,記錄變更過程。
(3)陪同管理。管理陪同的上崗、下崗情況、接團情況、創收情況、陪同考勤等。
(4)訂票管理。對團隊訂的飛機票、火車票進行統一的管理。
(5)行李管理。根據團隊的抵離時間、人數、所住飯店等各種情況,打印行李任務表。
(6)成本初審。完成各團隊發生成本費用的錄入及初審工作。
(7)團隊查詢。按條件查詢團隊的各項基本信息。
(8)陪同查詢。查詢陪同的個人情況、接團情況、上下崗情況、創收情況等各項信息,并可顯示、打印。
(9)定票查詢。查詢各團隊的訂票情況,并可顯示、打印。
(10)訂車查詢。查詢各團隊的訂車情況,并可顯示、打印。
(11)按團隊統計。按團隊統計接待情況,并可顯示、打印。
(12)按部門統計。按部門統計接待情況,并可顯示、打印。
(13)按陪同統計。按陪同統計接待情況,并可顯示、打印。
(14)按語種、國別統計。按語種、國別統計接待情況,并可顯示、打印。
6、票務管理子系統
票務管理子系統是處理交通部票務室與接待部之間的團隊訂票問題以及進行費用核算的管理模塊。本子系統具有下述功能:
(1)訂票信息維護。根據各接待部的團隊計劃預定飛機、火車票,并可進行修改、增加、刪除。
(2)訂票信息查詢。按條件查詢訂票信息。
(3)訂票信息打印。按條件打印訂票信息。
(4,訂票信息統計。按航班、團隊、人數統計訂票信息。
(5)交通費用核算。根據訂票情況核算交通費用。
(6)交通費用查詢。按條件查詢交通費用。
(7)交通費用打印。按條件打印交通費用。
7、旅游產品管理子系統
旅游產品管理包括旅游產品的設計和組合、旅游產品的營銷和銷售等環節。旅行社是旅游產品銷售的中介,為了招攬自己的客戶,必須收集和整理旅游產品和資源,對適合自己銷售的旅游產品實行統一管理,如產品的整理、產品的整合、產品的推銷、產品的維護、產品的查詢以及產品的設計等。
8、采購管理子系統
旅行社銷售的旅游產品是由旅游者旅游過程中所需的各種吃、住、行、娛、購、游等旅游服務所組成,旅游服務采購是旅行社實現旅游產品銷售的必要保障,它與旅游產品的性質和形態有著直接的聯系。一個運轉正常的旅行社,應該有相對固定的旅游服務供應商,旅行社與旅游服務供應商簽訂旅游服務供銷合同,并使這些旅游服務在旅游者旅游時得以實現,從而完成對旅游產品的消費。采購管理子系統的主要功能如下:
(1)旅游服務產品的管理。(2)旅游用品的采購管理。
(3)旅游用品的查詢。(4)采購報表的管理。(5)采購計劃管理。
9、固定資產管理子系統
本子系統對旅行社現有的固定資產臺賬進行登記管理,按月自動計提折舊并根據使用部門制作憑證,進行各種分類查詢統計,對固定資產的減少進行核算并制作相應憑證。固定資產管理子系統的功能結構圖如圖5—14所示。
子系統的具體功能如下:(1)固定資產維護。包括增加和修改固定資產臺賬。(2)計提折舊。根據設備狀況計提設備折舊,并建立憑證。(3)固定資產減少。計提足額折舊并建立臺賬和憑證。(4)對固定資產分類查詢和打印。(5)報表輸出。根據設備狀況及使用單位打印固定資產報表。
10、人力資源管理子系統刪除固定資產制作憑證
人力資源管理子系統可分工資管理和人事管理兩部分,主要圍繞人力資源開發和挖掘開展管理上作。具體該子系統的功能結構圖如圖5—15所示。
(一)工資管理
本子系統主要處理職工的工資事務。工資核算是根據工資的固定項目和變動項目,分別計算、輸人應發數、應扣數和實發數。本子系統具有下列功能:
(1)人員變動。包括增加人員、人員內部調動和人員調出的管理。
(2)工資輸入。包括固定項目和變動項目的工資輸入。
(3)匯總統計。根據輸人的工資匯總應發數、應扣合計、實發工資。
(4)報表打印。將匯總后的工資按部門和單位打印工資表和工資條。
(5)清零匯總。將工資按項目匯總。
(二)人事檔案管理
本子系統主要完成對旅行社各種人事檔案信息的增刪改、匯總、查詢等的管理,并且可以根據需要打印出各種人事統計報表。本子系統具有下列功能:
(1)檔案管理。人事檔案資料的輸人、刪除、修改、查詢、打印。
(2)匯總資料。人事檔案資料的整理、匯總。
(3)培訓紀錄。處理職工的培訓等事務。
(4)查詢瀏覽。查詢當前人事檔案的有關信息。
(5)報表打印。分別按企業員工的工種、文化程度及年齡、性別、民族、學歷、政治面貌、年齡、專業、特長等打印對內、對外人事報表。另外也打印養老保險費年報表、繳費年限表、繳費工資登記確認表等。
11、綜合統計子系統
綜合統計子系統可根據各接待部門送達的統計月報和財務部門的財務報表進行匯總統計,輸出各種對內部及外部的綜合統計報表,并對各種業務的資料進行累計統計。本子系統的功能結構如圖5—17所示。
本子系統的具體功能如下:
(1)資料輸入。對各種接待部送達的資料和財務數據進行輸入。
(2)匯總資料-對各種資料進行整理、匯總。
(3)查詢處理。查詢當月資料和累計資料。
(4)報表打印。打印對內及對外報表。包括有“旅游外匯收入月報”、“旅行社經營情況基層報表”、“旅游企業經營情況季報”、“外匯統計月報表”、“外聯實到人數統計月報表”、“外聯實到人數國籍、組團地月報表”、“接待人數月報表”、“接待人數國籍統計月報表”、“旅游情況基層報表”等。
12、散客部綜合管理子系統
該子系統完成兩個主要的功能:對散客部定日游的管理和對零星委托業務的管理。
(一)定日游管理
定日游管理的功能主要應包括以下幾項:
(1j定U游報價。為各旅游項目、路線的定日游進行報價。
(2)飯店預訂管理。對各飯店預訂的大車定日游的旅游項目內容、時間以及其他特殊要求進行管理,并可隨時進行維護。
(3)大車調度管理。對服務于各飯店團隊的大車使用輛數、上車地點、上車時間等進行管理。
(4,定日游付費類型管理。對參加大車定日游的付費形式(現付、轉賬、計劃內)進行管理。
(二)零星委托業務管理
零星委托業務管理子系統的主要功能應包括以下幾項:
(1)計凋、接待。對零星委托的接送機時間、航班車次、來地、去向、人數、所住飯店等進行管理。
(2)票務管理。對零星委托的訂票進行管理,包括乘機(車)時間、去向、數量、取票方式及所住飯店等。
(3)核算制單。進行收入、成本核算并制作憑證。
散客部綜合管理子系統除了以上兩個主要功能外,還應有以下功能:①統計報表功能。對接待人數、收入、費用等進行統計;②查詢打印功能。對定日游的業務進行各種查詢和打印;③現金管理功能。對定日游業務發生的各種現金收支進行核算,并建立現金流水賬;④可隨時對大車定日游情況、收入支出情況、用車情況、陪同情況等信息進行查詢瀏覽。
13、中國公民境外游管理子系統
中國公民境外游管理子系統主要完成國內公民旅游的相關事務處理、財務往來處理以及日常事務管理,主要處理國內公民的涉外旅游,即境外游的相關數據。本子系統應具有下述功能:
(1)計劃管理。團隊生成、修改、查詢及打印。
(2)報價管理。報價輸入、修改、查詢及打印。
(3)往來賬管理。對海外部的往來賬務進行管理。
(4)應收款管理。國內旅行社、客戶的收款管理。
(5)應付款管理。國外旅行社的付款管理。
(6)賬單管理。所有賬單的匯總、打印。
(7)匯總打印。所有收入、成本,以及利潤等表格的打印。
14、賬務和成本核算子系統
賬務和成本核算子系統由賬務管理和成本核算兩部分構成。
(一)賬務管理
賬務核算子系統主要對憑證檔案、明細賬、日記賬、余額表及銀行對賬單進行管理。憑證登最后完成余額表、總賬、明細賬及日汜賬的輸出,并打印出各種報表。可對銀行對賬單進行對賬。本子系統具有下述功能:
(1)憑證管理。包括憑證輸入、憑證修改、憑證審核工作。
(2)科目管理。對科目進行管理。
(3)年初數管理。包括年初數的輸入、修改工作。
(4)記賬管理。將憑證分條目記人有關日記賬、明細賬、余額表中。
(5)日記賬輸㈩、明細賬輸出。查詢瀏覽日記賬及明細賬。
(6,余額表。查詢打印總賬余額表及明細科目余額表。
(7)銀行對賬。根據銀行對賬單進行手工和計算機對賬。
(二)成本核算
財務部成本核算包括各種費用單據的管理往來賬的管理、各種成本的管理和各種間接費用在成本項目中的分攤,以做到“單團核算”。本子系統具有下述功能:
(1)單據輸入。對各種實際發生的費用單據,如餐單、車單、票單輸入管理。
(2)單團核算。根據每個團隊的實際收入及成本,產生單團的盈虧表及毛利潤率。
(3)向下結算。根據實際的餐費、車費、門票費、房費等數據,產生對各飯店、汽車公司、景點等旅游企業單位的應付款清單及匯總單。
(4)汜賬管理。將各種費用單據分部門匯總并制作成本憑證,記往來賬。
(5)費用分攤。將各種非直接費用在各個成本單位進行分攤,并制作憑證。
(6)查詢打印。查詢成本情況及往來賬情況。
15、辦公自動化子系統
所謂辦公自動化就是利用先進的計算機網絡技術和信息技術,處理和控制日常的辦公事務,使辦公室事務和文件管理電子化,以提高事務的處理效率。一個旅行社的辦公自動化子系統應具有如圖5-16所示的功能結構。
16、經理查詢子系統
經理查詢子系統是對旅行社整個管理信息系統所產生經營情況報表進行查詢的子系統,包括旅行社當前的經營信息和歷史的經營信息,并集成日常辦公所需各類綜合信息清單,如記事簿、名片夾、電話號碼簿、航班車次表、經理信箱、天氣預報、每日新聞等。本子系統的主要目的是對旅行社管理信息系統中所保存的各種信息加以充分利用,為領導掌握經營情況提供方便,并為管理決策提供可靠的依據。經理查詢子系統的功能結構圖如圖5—18所示。
本子系統的具體功能應包括以下幾個方面:
(1)報價組團。查詢組團情況。
(2)計劃凋度。查詢計劃接團情況和流量情況。
(3)人事檔案。查詢人事檔案有關信息。
(4)財務核算。查詢企業利潤情況和資金運用情況。
經理查詢子系統功能圖
(5)統計報表。查詢組團、接團和散客的當月數據和歷史數據。
(6)價格查詢。查詢對內對外結算價格。
(7)報表處理。查詢各種財務會計報表。
(8)陪同接團查詢。查詢陪同的上崗情況、接團情況,并可做出相應的統計。
(9)綜合統計。自動產生提供客源人數大于設定值的組團社名單;自動產生提供客源人數、批數大于設定值的境外旅行社名單;根據系統內的各種數據,綜合分析各客源國市場份額;根據歷年的組團量及接團量,自動預測來年的組團、接待情況;根據歷年的財務數據自動預測來年的財務收支情況;根據人事部提供的有關學歷、年齡、崗位技能等數據,重新對各崗位進行優化組合等。
(10)經理信箱。定期通過計算機審閱由各部門上報的有關情況,并將處理意見反饋給各部門。
五、實例演示及問題
1、實例——美狐旅游信息系統
美狐旅行社管理系統是針對中國大陸經營各類旅游業務的旅行社設計的旅游業務操作系統,由美國飛狐國際有限公司和中國企業合資設立的軟件企業——南寧美狐高科技有限公司研發,完全符合各類旅行社常規的業務操作流程,可自動生成各種業務單據和報表,操作簡單,還符合旅行杜計調操作人員“邊看線路邊操作”的習慣。美狐旅行社管理系統側重于建立旅行社內部自動化的多部門協同操作機制和嚴格的成本控制體系,包含基本旅游資源信息的采集、線路策劃、計調操作、財務操作、導游管理、內勤管理、統計報表、人事管理、網絡公告和BBs等功能,可以通過團隊計劃或線路計劃的形式靈活地處理業務流程,通用于組團社和地接社。該系統主要包括以下14種模塊。
2、存在問題
1)旅行社多為中小型旅行社,信息化程度低。目前中小型旅行社沒有使用信息系統,經過實地旅行社調查,旅行社信息化狀況并不十分理想,仍處于很傳統人工的數據處理流程:宣傳發布旅游信息,利用廣告宣傳單、廣告牌進行旅游促銷—接受旅游者的電話報名—組團—車輛準備—聯系酒店、景點的地接服務等均是人工操作。這樣的方式有很多不足,數據的處理、信息的共享和發布等方面均需要改進。2)系統需要不斷地維護和更新,耗費一定的成本。
需要安排專門的人員對供應商的信息和供應商產品的信息進行更新和維護, 當供應商數量很多時, 工作量將非常大, 而且很難即時保證供應商信息和系統內部信息的一致性。
3)信息系統較多,且很類似,難以滿足旅行社的一些個性需求。比如有的旅行社側重出境游,其他的一些功能就不需要了,但是系統卻不能刪除多余的部分。網絡管理工作人員既要對服務器維護管理, 又要對客戶端維護和管理, 這需要高昂的投資和復雜的技術支持, 維護成本很高, 維護任務量大。
4)另外目前大部分中小型旅行社都采用門店+ 代理的銷售方式, 終端分散, 且人員經常外出, 隨時隨地辦公的要求高, 使用C/ S 結構的系統存在諸多不便。旅行社,需要安排專門的人員對供應商的信息和供應商產品的信息進行更新和維護, 當供應商數量很多時, 工作量將非常大, 而且很難即時保證供應商信息和系統內部信息的一致性。
第二篇:學生信息管理系統
摘 要
隨著網絡通信技術的迅速發展和信息技術的廣泛應用,計算機的應用已普及到經濟和社會生活的各個領域。教育領域也不例外,現今已經出現了各種遠程網絡在線教育系統、圖書館管理系統、學生信息管理系統等。其中學生信息管理是任一院校都不可缺少的部分,它的內容對于學校的決策者和教學管理者來說都至關重要,而傳統的人工管理方式效率較低,為數據的查詢、更新和維護帶來了極大的不便。所以學生信息管理信息系統的開發和應用是必要的,它能夠為管理人員提供充足的信息和快捷的查詢手段,提高學校對學生信息的管理效率。
本文的學生信息管理系統是基于java語言的,它能夠提供學生信息管理功能,方便系統管理員對學生學號、班級等信息的添加、修改、刪除、查詢等操作,同時可以一樣方便的對學生的信息進行查詢。本系統也主要利用java語言和access實現,因此它具有很強的可移植性,很方便。
關鍵字: 學生信息 管理系統
添加 刪除 查詢 修改
Abstract With the rapid development of network communication technology and extensive application of information technology, computer applications have spread to the economic and social life in various fields.The field of education is no exception, now there have been a variety of remote network online education system, library management system, student information management system.Which is either a student information management schools are an indispensable part of its contents and teaching for school managers, policy-makers are essential, and the traditional manual management inefficient for data query, update and maintenance brought great inconvenience.So the student information management system development and application of information is necessary, it is able to provide managers with sufficient information and quick inquiry means to improve school student information management efficiency.This student information management system is based on the java language, it is able to provide students with information management function to facilitate system administrators to students student number, class and other information to add, modify, delete, query and other operations, but can be just as convenient for students information to search.This system is mainly achieved using java language and access, so it is very portable, very convenient.Keywords: Student Information Management System add delet revise
前言
隨著計算機技術的飛速發展,信息時代的到來,信息改變了我們這個社會。學校在管理、教學、辦公各個方面也在悄悄地變化。一個學校的信息化程度體現在將計算器與信息技術應用于教學與管理,以現代化工具代替傳統手工作業。無疑,使用信息化管理使教學更先進、辦公更高效、管理更科學,信息交流更迅速。
學生成績管理系統是一個教育單位不可缺少的部分,它的內容對于學校的決策者和管理者來說都至關重要,所以學生成績信息管理系統應該能夠為用戶提供充足的信息和快捷的查詢手段。但一直以來人們使用傳統人工的方式管理文件檔案,這種管理方式存在著許多缺點,如:效率低、保密性差,另外時間一長,將產生大量的文件和數據,這對于查找、更新和維護都帶來了不少的困難。
作為計算機應用的一部分,使用計算機對學生成績信息進行管理,具有著手工管理所無法比擬的優點.例如:檢索迅速、查找方便、可靠性高、存儲量大、保密性好、壽命長、成本低等。這些優點能夠極大地提高學生檔案管理的效率,也是企業的科學化、正規化管理,與世界接軌的重要條件。
因此,開發這樣一套管理軟件成為很有必要的事情,故決定選擇學生成績管理系統來作為本人的畢業設計,在很短的時間里開發出一套界面友好,功能強大,使用簡單的適用于各規模學院的學生成績管理系統。該學生成績管理系統能有效的處理在校學生的成績管理,具有成績輸入、成績查詢、成績統計及打印功能。
學生成績管理系統可以實施應用在各中、大、小院校中,適用范圍很廣,應用性強。隨著系統實施的日益成熟,最終會使單機作業為主的教學管理活動提高到這個平臺上來,從而實現學校學生成績信息管理的辦公自動化,籍以提高辦學效率和質量。使學校充分利用計算機所帶來的新技術,為培養人才打下堅實的基礎。
第一章 相關技術簡介
1.1 java語言簡介
Java語言是sun公司與1995年5月正式發布的程序設計語言,他的前身是sun公司為智能消費類家用電器研究而開發的項目的一部分。
Java程序設計語言是新一代語言的代表,他強調了面向對象的特性,可以用來開發范圍廣泛的軟件,它具有支持圖形化的用戶界面,網格以及數據庫連接等復雜功能。Java語言的主要特點: 1)易于學習
Java語言很簡單,對于熟悉C++的程序設計人員更不會對其感到陌生,因 為它的語法非常接近于C++,但他同時摒棄了C++許多的復雜易混淆的功能。利用java同樣可以變質出非常復雜的系統,且運行占用很少的內存資源。2)高效率的執行方式
Java語言的執行方式是采用先經過編譯器編譯,在通過解釋器解釋執行的 方式來運行的。他綜合了解釋性語言與編譯語言的眾多有點,使其執行效率較以往的程序設計語言有了大幅度的提高。3)與平臺的無關性
由于iava語言是解釋執行的,他會被轉換成一種字節碼的“目標程序”。因此它可以跨平臺運行 4)分布式安全性
Java從誕生之日起就與網絡聯系在了一起,他強調網絡特性,內置TCPIP,HTTP,FTP協議庫,便于開發網上應用系統。5)豐富的API文檔和類庫
Java為用戶提供了詳盡的API(Application Program Interface)文檔說明。
1.2 access數據庫簡介
Microsoft Office Access是微軟把數據庫引擎的圖形用戶界面和軟件開發工具結合在一起的一個數據庫管理。他擁有邏輯、流程處理,即VBA語言(VB也可以用來做邏輯處理);又可以存儲數據,即在“表”中存儲數據。
第二章 系統分析
2.1 系統分析
學生信息管理系統,可用于學校等機構的學生信息管理,查詢,更新與維護,使用方便,易用性強,圖形界面清晰明了。該軟件用java語言編寫,用access數據庫作為后臺的數據庫進行信息的存儲,用SQL語句完成學生學籍信息的添加,查詢,修改,刪除的操作以及成績的錄入,修改,刪除等。用ODBC驅動實現前臺Java與后臺SQL數據庫的連接。Java語言跨平臺性強,可以在windows,linux,ubuntu等系統下使用,方便簡單,安全性好。
本《學生管理系統》具有對學生進行學籍管理的功能。并于數據庫相連接,能夠對學生的學號、姓名、性別、班級、專業進行查詢、添加和刪除等,簡捷方便,容易使用。2.2 應解決的問題
2.2.1合理的設計數據庫
盡量合理地減少數據庫數據的冗余,使重復的數據保持在最小限度,這樣將不必要的多占用存儲空間,減少產生混亂影響的危險,還能提高計算機的運行速度。作為學生成績管理系統,必須能解決以下方面的問題:能錄入信息。
在開發學生信息管理系統時,最重要的就是學生的基本信息,其學生信息表E-R圖如圖2.1所示。
圖 2.1 學生信息E-R圖
2.2.2設計出友好的界面
界面的友好與否是用戶評價一個軟件優劣的重要方面。因為該系統涉及到
學生成績的真實性,所以該系統要具有一定的保密性和權限控制,首先應設計一個用戶的登陸窗口界面,要求只能由特定的人員對該系統進行操作。此外還應設計登陸后系統的主窗口,要求能夠顯示學生成績的基本信息,可以實現數據的錄入,更新,刪除、查詢、統計等功能。
另外窗口界面要多用按鈕,少用菜單,窗口的各個控鍵布局要合理,美觀。要充分的利用java.awt和java.swing提供的強大的功能,多用窗口和控件,充分體現窗口的多元化格局。
2.2.3實現的基本功能
該系統要求除了能實現信息的錄入,刪除,插入,更新,數據導出excel文件等基本功能之外,還要求能夠根據用戶的需要進行操作。例如要查詢學生成績,要求可以按照專業、班級等多種方式查詢。這些功能基本上能滿足用戶操作的需要,這樣用戶操作起來就更簡單方便。部分文本框使用了下拉式,使用戶可以不用花費大量的時間去輸入信息。
2.3 數據庫物理設計 1.1.1 3.3.1數據庫物理設計
本系統采用Access數據庫管理系統作為后臺數據庫的開發工具,設計的表結構如下:
第三章 程序代碼及運行效果
3.1主類代碼:
/*主類代碼*/ package kcsj;import java.awt.*;import javax.swing.*;import java.awt.event.*;
import javax.swing.border.*;import javax.swing.JOptionPane;import javax.swing.JLabel;import javax.swing.JPanel;import javax.swing.table.DefaultTableCellRenderer;import javax.swing.table.DefaultTableModel;import javax.swing.table.TableColumn;import java.sql.*;import java.awt.GridLayout;public class myStudent { public myStudent(){
}
public static void main(String[] args){ // TODO code application logic here loginFrame lf=new loginFrame();Font ft=new Font(“Serif”,Font.BOLD,18);lf.setVisible(true);lf.addWindowListener(new WindowAdapter(){ public void windowClosing(WindowEvent e){
System.exit(0);} });} }
3.2 登陸: public loginFrame(){
p=new JPanel();
user=new JTextField(10);
pass=new JPasswordField(10);
login=new JButton(“登錄”);
cancel=new JButton(“退出”);
p.setBackground(Color.lightGray);
//user.setText(“王明玉”);
//pass.setText(“123456”);
login.addActionListener(this);
cancel.addActionListener(this);
p.add(new JLabel(“學生信息管理系統登錄”));
p.add(new JLabel(“賬號:”));
p.add(user);
p.add(new JLabel(“密碼:”));
p.add(pass);
p.add(login);
p.add(cancel);
this.add(p);
this.setTitle(“學生管理系統登錄界面”);
this.setSize(180,160);}
public void actionPerformed(ActionEvent e){
//查找
if(e.getSource()==login){
if(user.getText().toString().equals(“")){
JOptionPane.showMessageDialog(null, ”請輸入用戶名“, ”溫馨提示“, JOptionPane.INFORMATION_MESSAGE);
}else if(pass.getText().toString().equals(”“)){
JOptionPane.showMessageDialog(null, ”請輸入密碼“, ”溫馨提示“, JOptionPane.INFORMATION_MESSAGE);
}else{
myConnection conn=new myConnection();
ResultSet rs;
String sql=”select * from admin where 用戶名 = '“+user.getText().toString()+”' and 密碼 = '“+pass.getText().toString()+”'“;
try{
rs=conn.getResult(sql);
if(rs.next()){
this.dispose();
//JOptionPane.showMessageDialog(null, ”此用戶已經存在“, ”溫馨提示“, JOptionPane.INFORMATION_MESSAGE);
sql=”select * from student“;
mainFrame mf=new mainFrame();
mf.setTitle(”西北師范大學學生信息管理系統“);
mf.setSize(600,486);
mf.freshTable(sql);
mf.setVisible(true);
mf.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
System.exit(0);
}
});
}else{
JOptionPane.showMessageDialog(null, ”用戶名或密碼錯誤“, ”登錄失敗“, JOptionPane.INFORMATION_MESSAGE);
}
}catch(Exception er){
System.out.println(er.toString());
}
}
//全部顯示
}if(e.getSource()==cancel){
System.exit(0);
} } } 登陸界面:
3.3 修改數據:
/*修改數據*/ class editFrame extends JDialog implements ActionListener{ public static final int WIDTH = 400;public static final int HEIGHT = 400;
JLabel 學號1,姓名1,性別1,民族1,年齡1,年級1,班級1,專業1;JTextField 學號,姓名,性別,民族,年齡,年級,班級,專業;JButton b;JPanel p;
mainFrame mf;
public editFrame(mainFrame mmf){ setTitle(”修改學生信息“);setSize(WIDTH,HEIGHT);setLocation(120,180);
Container contentPane = getContentPane();contentPane.setLayout(new FlowLayout());
學號1=new JLabel(”學號“);姓名1=new JLabel(”姓名“);性別1=new JLabel(”性別“);民族1=new JLabel(”民族“);年齡1=new JLabel(”年齡“);年級1=new JLabel(”年級“);班級1=new JLabel(”班級“);
專業1=new JLabel(”專業“);
學號=new JTextField(5);姓名=new JTextField(5);性別=new JTextField(5);民族=new JTextField(5);年齡=new JTextField(5);年級=new JTextField(5);班級=new JTextField(10);專業=new JTextField(10);學號.setEnabled(false);b=new JButton(”確定“);p=new JPanel();p.setLayout(new GridLayout(10,2,5,5));p.add(學號1);p.add(學號);p.add(姓名1);p.add(姓名);p.add(性別1);p.add(性別);p.add(民族1);p.add(民族);p.add(年齡1);p.add(年齡);p.add(年級1);p.add(年級);p.add(班級1);p.add(班級);p.add(專業1);p.add(專業);p.add(new Label(”“));p.add(new Label(”“));p.add(b);contentPane.add(p);//添加按鈕監聽器
b.addActionListener(this);mf=mmf;}
public void actionPerformed(ActionEvent e){
if(學號.getText().toString().equals(”“)){
JOptionPane.showMessageDialog(null,”請輸入學號“,”溫馨提示“, JOptionPane.INFORMATION_MESSAGE);
}else if(姓名.getText().toString().equals(”“)){
JOptionPane.showMessageDialog(null,”請輸入姓名“,”溫馨提示“, JOptionPane.INFORMATION_MESSAGE);
}else if(年齡.getText().toString().equals(”“)){
JOptionPane.showMessageDialog(null,”請輸入年齡“,”溫馨提示“, JOptionPane.INFORMATION_MESSAGE);
}else{
String sql=”update student set 姓名='“+姓名.getText()+”',性別='“+性別.getText()+”',年齡=“+年齡.getText()+”,年級='“+年級.getText()+”',班級='“+班級.getText()+”',專業='“+專業.getText()+”',民族='“+民族.getText()+”' where 學號='“ + 學號.getText()+ ”'“;
myConnection conn=new myConnection();
try{
//JOptionPane.showMessageDialog(null, sql, ”溫馨提示“, JOptionPane.INFORMATION_MESSAGE);
if(conn.executeSql(sql)){
JOptionPane.showMessageDialog(null, ”修改成功“, ”溫馨提示“, JOptionPane.INFORMATION_MESSAGE);
mf.freshTable(”select * from student“);
this.dispose();
}else{
JOptionPane.showMessageDialog(null, ”修改失敗“, ”溫馨提示“, JOptionPane.INFORMATION_MESSAGE);
}
}catch(Exception er){
System.out.println(er.toString());
}
}
}
}
3.4 查找數據:
class findFrame extends JDialog implements ActionListener{
mainFrame mf;JPanel p;JComboBox c;JTextField t;JButton b;JButton fAll;String sql=”select * from student“;String[] colStr={”學號“,”姓名“,”性別“,”民族“,”年齡“,”年級“,”班級“,”專業“};
public findFrame(mainFrame mmf){
mf=mmf;
p=new JPanel();
c=new JComboBox(colStr);
t=new JTextField(10);
b=new JButton(”查找“);
fAll=new JButton(”全部顯示“);
b.addActionListener(this);
fAll.addActionListener(this);
p.add(new JLabel(”選擇“));
p.add(c);
p.add(new JLabel(”查找內容“));
p.add(t);
p.add(b);
p.add(fAll);
this.add(p);
this.setTitle(”查找“);
this.setSize(450,80);}
public void actionPerformed(ActionEvent e){
//查找
if(e.getSource()==b){
String selectStr=c.getSelectedItem().toString();
if(selectStr==”年齡“){
sql=”select * from student where “+selectStr+” “+t.getText().toString();
}
else {
sql=”select * from student where “+selectStr+” '“+t.getText().toString()+”'“;
= = 12
}
mf.freshTable(sql);
//全部顯示
}if(e.getSource()==fAll){
sql=”select * from student“;
mf.freshTable(sql);
} } }
3.5 添加數據:
class addFrame extends JDialog implements ActionListener{ public static final int WIDTH = 400;public static final int HEIGHT = 400;
JLabel 學號1,姓名1,性別1,民族1,年齡1,年級1,班級1,專業1;JTextField 學號,姓名,性別,民族,年齡,年級,班級,專業;JButton b;JPanel p;
mainFrame mf;
public addFrame(mainFrame mmf){ setTitle(”修改學生信息“);setSize(WIDTH,HEIGHT);setLocation(120,180);
Container contentPane = getContentPane();//contentPane.setBackground(Color.BLACK);//設置窗口顏色
contentPane.setLayout(new FlowLayout());
學號1=new JLabel(”學號“);
姓名1=new JLabel(”姓名“);
性別1=new JLabel(”性別“);
民族1=new JLabel(”民族“);
年齡1=new JLabel(”年齡“);
年級1=new JLabel(”年級“);
班級1=new JLabel(”班級“);
專業1=new JLabel(”專業“);
學號=new JTextField(”201071030240“,5);
姓名=new JTextField(5);
性別=new JTextField(”女“,5);
民族=new JTextField(5);
年齡=new JTextField(5);
年級=new JTextField(5);
班級=new JTextField(10);
專業=new JTextField(10);
b=new JButton(”確定“);p=new JPanel();p.setLayout(new GridLayout(10,2,5,5));p.add(學號1);p.add(學號);p.add(姓名1);p.add(姓名);p.add(性別1);p.add(性別);p.add(民族1);p.add(民族);p.add(年齡1);p.add(年齡);p.add(年級1);p.add(年級);p.add(班級1);p.add(班級);p.add(專業1);p.add(專業);p.add(new Label(”“));p.add(new Label(”“));p.add(b);contentPane.add(p);//添加按鈕監聽器
b.addActionListener(this);mf=mmf;}
public void actionPerformed(ActionEvent e){
if(學號.getText().toString().equals(”“)){
JOptionPane.showMessageDialog(null, ”請輸入學號“, ”溫馨提示“, JOptionPane.INFORMATION_MESSAGE);
}else if(姓名.getText().toString().equals(”“)){
JOptionPane.showMessageDialog(null, ”請輸入姓名“, ”溫馨提示“, JOptionPane.INFORMATION_MESSAGE);
}else if(年齡.getText().toString().equals(”“)){
JOptionPane.showMessageDialog(null, ”請輸入年齡“, ”溫馨提示“, JOptionPane.INFORMATION_MESSAGE);
}else{
String sql=”select * from student where 學號='“ + 學號.getText()+ ”'“;
myConnection conn=new myConnection();
ResultSet rs;
rs=conn.getResult(sql);
try{
//System.out.println(rs.getRow());
if(rs.next()){
JOptionPane.showMessageDialog(null, ”此學號已經存在“, ”溫馨提示“, JOptionPane.INFORMATION_MESSAGE);
}else{
sql=”insert into student values('“ +學號.getText()+”','“+ 姓名.getText()+”','“+ 性別.getText()+”','“+ 民族.getText()+”',“+ 年齡.getText()+”,'“+ 年級.getText()+”','“+ 班級.getText()+”','“+ 專業.getText()+”')“;
if(conn.executeSql(sql)){
JOptionPane.showMessageDialog(null, ”添加成功“, ”溫馨提示“, JOptionPane.INFORMATION_MESSAGE);
mf.freshTable(”select * from student“);
學號.setText(”“);
姓名.setText(”“);
性別.setText(”“);
民族.setText(”“);
年齡.setText(”“);
年級.setText(”“);
班級.setText(”“);
專業.setText(”“);
}else{
JOptionPane.showMessageDialog(null, ”添加失敗“, ”溫馨提示“, JOptionPane.INFORMATION_MESSAGE);
}
}
}catch(Exception er){
System.out.println(er.toString());
}
}
}
}
3.6 修改數據:
class editFrame extends JDialog implements ActionListener{ public static final int WIDTH = 400;public static final int HEIGHT = 400;
JLabel 學號1,姓名1,性別1,民族1,年齡1,年級1,班級1,專業1;JTextField 學號,姓名,性別,民族,年齡,年級,班級,專業;JButton b;JPanel p;
mainFrame mf;
public editFrame(mainFrame mmf){ setTitle(”修改學生信息“);setSize(WIDTH,HEIGHT);setLocation(120,180);
Container contentPane = getContentPane();contentPane.setLayout(new FlowLayout());
學號1=new JLabel(”學號“);
姓名1=new JLabel(”姓名“);
性別1=new JLabel(”性別“);
民族1=new JLabel(”民族“);
年齡1=new JLabel(”年齡“);
年級1=new JLabel(”年級“);
班級1=new JLabel(”班級“);
專業1=new JLabel(”專業“);
學號=new JTextField(5);
姓名=new JTextField(5);
性別=new JTextField(5);
民族=new JTextField(5);
年齡=new JTextField(5);
年級=new JTextField(5);
班級=new JTextField(10);
專業=new JTextField(10);
學號.setEnabled(false);
b=new JButton(”確定“);p=new JPanel();p.setLayout(new GridLayout(10,2,5,5));p.add(學號1);p.add(學號);
p.add(姓名1);p.add(姓名);p.add(性別1);p.add(性別);p.add(民族1);p.add(民族);p.add(年齡1);p.add(年齡);p.add(年級1);p.add(年級);p.add(班級1);p.add(班級);p.add(專業1);p.add(專業);p.add(new Label(”“));p.add(new Label(”“));p.add(b);contentPane.add(p);//添加按鈕監聽器
b.addActionListener(this);mf=mmf;}
public void actionPerformed(ActionEvent e){
if(學號.getText().toString().equals(”“)){
JOptionPane.showMessageDialog(null, ”請輸入學號“, ”溫馨提示“, JOptionPane.INFORMATION_MESSAGE);
}else if(姓名.getText().toString().equals(”“)){
JOptionPane.showMessageDialog(null, ”請輸入姓名“, ”溫馨提示“, JOptionPane.INFORMATION_MESSAGE);
}else if(年齡.getText().toString().equals(”“)){
JOptionPane.showMessageDialog(null, ”請輸入年齡“, ”溫馨提示“, JOptionPane.INFORMATION_MESSAGE);
}else{
String sql=”update student set 姓名='“+姓名.getText()+”',性別='“+性別.getText()+”',年齡=“+年齡.getText()+”,年級='“+年級.getText()+”',班級='“+班級.getText()+”',專業='“+專業.getText()+”',民族='“+民族.getText()+”' where 學號='“ + 學號.getText()+ ”'“;
myConnection conn=new myConnection();
try{
//JOptionPane.showMessageDialog(null, sql, ”溫馨提示“, JOptionPane.INFORMATION_MESSAGE);
if(conn.executeSql(sql)){
JOptionPane.showMessageDialog(null, ”修改成功“, ”溫馨提示“, JOptionPane.INFORMATION_MESSAGE);
mf.freshTable(”select * from student“);
this.dispose();
}else{
JOptionPane.showMessageDialog(null, ”修改失敗“, ”溫馨提示", JOptionPane.INFORMATION_MESSAGE);
}
}catch(Exception er){
System.out.println(er.toString());
}
} } }
運行效果:
第四章 總結
通過本次課程設計,不僅讓我更深入的了解JAVA這門學科,更使自己有了繼續探索的興趣。
對我來說,在之前的學習過程中沒有能夠很好的掌握JAVA語言的學習,在很多地方還有生疏和遺漏,并且在此次課程設計過程中也遇到困難不能自己獨立解決。但是,通過這次程序設計,除了增加了自己的編程能力,提高了我對JAVA的應用能力,同時我也深感“認真嚴謹”這個詞的重要性,一點點小的馬虎,便會導致整個程序不能正常運行。在今后的學習中,我將繼續保持嚴謹的學習態度。與此同時,在同學的幫助下,讓我體會到了相互學習的重要性,而更讓人難以忘懷的是在熱烈討論問題時,那激情橫溢的場面。總之,此次課程設計讓我獲益匪淺。
第五章 總結
課程設計是培養學生綜合運用所學知識,發現,提出,分析和解決實際問題,鍛煉實踐能力的重要環節,是對學生實際工作能力的具體訓練和考察過程.本次課程設計雖然很辛苦,實在是受益匪淺。本來這門課的知識學的就不夠扎實,本次課程設計,在設計過程中碰到了很多問題,剛開始要設計的時候,還真不知道從哪里下手但最終在圖書、同學和老師的幫助下都得到了解決,讓我學會了好多書本上沒有的東西,通過本次課程設計我也能將課本上的知識融會貫通,起到了很好的輔助學習的效果,但是我發現我學到的知識比整整一個學期學到的都多。理
論和實踐的相結合是學習最有效的方法。在設計的過程中發現了自己的不足之處,對以前所學過的知識理解得不夠深刻,掌握得不夠牢固,通過這次課程設計之后,一定把以前所學過的知識重新溫故。
通過這次課程設計使我懂得了理論與實際相結合是很重要的,只有理論知識是遠遠不夠的,只有把所學的理論知識與實踐相結合起來,從理論中得出結論,才能真正為社會服務,從而提高自己的實際動手能力和獨立思考的能力。
第六章 參考文獻
第三篇:學生信息管理系統
–––––––––––––––––摘 要–––––––––––––––––
學生信息管理系統是典型的信息管理系統(MIS),其開發主要包括后臺數據庫的建立和維護以及前端應用程序的開發兩個方面。對于前者要求建立起數據一致性和完整性強、數據安全性好的庫。而對于后者則要求應用程序功能完備,易使用等特點。
經過分析,我們使用MICROSOFT公司的VISUAL BASIC開發工具,利用其提供的各種面向對象的開發工具,尤其是數據窗口這一能方便而簡潔操縱數據庫的智能化對象,首先在短時間內建立系統應用原型,然后,對初始原型系統進行需求迭代,不斷修正和改進,直到形成用戶滿意的可行系統。
關鍵字:控件、窗體、域、數據庫。
–––––––––––––––––前言–––––––––––––––––
隨著學校的規模不斷擴大,學生數量急劇增加,有關學生的各種信息量也成倍增長。面對龐大的信息量需要有學生管理系統來提高學生管理工作的效率。通過這樣的系統可以做到信息的規范管理、科學統計和快速查詢、修改、增加、刪除等,從而減少管理方面的工作量。
本系統主要用于學校學生信息管理,總體任務是實現學生信息關系的系統化、規范化和自動化,其主要任務是用計算機對學生各種信息進行日常管理,如查詢、修改、增加、刪除,另外還考慮到學生選課,針對這些要求設計了學生信息管理系統本系統主要用于學校學生信息管理,總體任務是實現學生信息關系的系統化、規范化和自動化,其主要任務是用計算機對學生各種信息進行日常管理,如查詢、修改、增加、刪除,另外還考慮到學生選課,針對這些要求設計了學生信息管理系統。
本系統主要包括學生信息查詢、教務信息維護和學生選課三部分。其功能主要有: ⒈有關學籍等信息的輸入,包括輸入學生基本信息、所在班級、所學課程和成績等。⒉學生信息的查詢,包括查詢學生基本信息、所在班級、已學課程和成績等。⒊學生信息的修改。
⒋班級管理信息的輸入,包括輸入班級設置、年級信息等。⒌班級管理信息的查詢。⒍班級管理信息的修改。⒎學生課程的設置和修改。
目 錄
前言
第一章 Visual Basic 概述 1.1 Visual Basic 語言的特點
1.2 Visual Basic 系統幾個程序應用中的常用名詞 第二章 Windows 下的Visual Basic 編程環境簡介 2.1 面對對象的編程 2.2 實現菜單選項 2.3 實現工具欄
第三章 怎樣開發一個學生信息管理系統的查詢模塊 3.1 學生信息系統的設計分析 3.2 編程環境的選擇 3.3 關系型數據庫的實現 3.4 二者的結合(DBA)第四章 使用Access2000 創建數據庫 4.1 數據庫的概念 4.2 新建一個數據庫 4.3 修改已建的數據庫 第五章 可行性分析 第六章 系統總體規劃 6.1 系統功能 6.2 系統流程圖 第七章 系統具體實現 7.1 各功能的實現 7.1.1 課程管理 7.1.2 打印統計 結束語 后記 主要參考文獻
第一章 Visual Basic 概述 1.1 Visual Basic 語言的特點
Visual Basic 語言用其設計應用程序時具有兩個基本特點:可視化設計和事件驅動編程。(1)可視化設計:表現在VB在設計應用于程序界面時有“所見即所得”的處理功能。(2)事件驅動編程:在設計應用程序時,把對象添加到窗體中,在用戶與程序進行交互時,用戶基本上是通過鼠標、鍵盤與應用程序進行交互的,那些對象就必須對鼠標和鍵盤操作所引發的事件做出響應,來執行一段應用程序。1.2 Visual Basic 系統幾個在程序應用中的常用名詞
Visual Basic 系統除了一般高級語言所具有的一些名詞術語外,還有幾個系統常用的名詞。其基本含義如下:(1)視窗(Form)
視窗是進行人機交互的界面或接口,也叫窗體。VB系統的人機交互界面或接口,無論是在設計時或是在運行時,都是Windows 系統的標準視窗。(2)對象(Object)
對象是VB系統內部提供給設計者可以直接使用的處理輸出的控制工具。本程序所應用到的對象類型有標簽框(Label Box),文本框(Text Box),命令按扭(Command Button),網格(Data Grid),ADO控件(Adodc1)等。當把這些工具放置到用戶界面對應的窗體上時,被稱為對象或控件。用戶可以通過設置對象的“屬性”和“方法”,便于對象適應自己所設計應用程序的輸入輸出內容,對象的生成過程及結構都被封裝起來。正確使用對象可以減少程序和開發時間,提高程序設計者的工作效率。(3)屬性(Properties)
屬性是VB系統提供的有關對象的參數或數據接口。用戶通過適當地設置或改變對象的屬性來確定對象的外觀及性能特征,從而有效地使用系統提供的對象。比如,對象的名稱、在屏幕上顯示的位置、大小、顏色、接收或容納的數據內容及數據的表現格式等。(4)事件(Events)
事件是指用戶或操作者對計算機進行的某一操作(如擊鍵、單擊或移動鼠標等)的行為或系統狀態發生的變化。VB系統常用事件來引導計算機執行一段程序。程序所用的鍵盤事件有KeyPress(按鍵)事件,KeyDown事件和KeyUp事件;鼠標事件有Click(單擊鼠標)事件,DbDlicd(雙擊鼠標)。(5)方法(Method)方法主要是指對一個對象使用某種作用的過程。它是在程序執行的過程中要計算機執行的某種操作。其程序的方法有Show(顯示)方法,Hide(隱藏)方法,Refresh(刷新)方法。
(6)過程(Procedure)
過程是指經過定義或說明的,或基于某一對象對應的事件所引發的程序段。(7)模塊(Module)
模塊是指一些運算量或過程進行聲明或定義的一個集合。系統程序大體可分成四個模塊:數據輸入、根據查詢、數據打印和通訊。
第二章 Windows下的Visual Basic 編程環境簡介 2.1 面對對象的編程
面向對象的設計方法(OOP, Objected Programming)從應用領域內的問題著手,以直觀自然的方式描述客觀世界的實體。Visual Basic 作為一種面向對象的編程方法,把程序和數據封裝起來作為一個對象,并為每個對象賦予相應的屬性。在設計對象時,不必編寫建立和描述每個對象的程序代碼,而是用工具畫在界面上,由 Visual Basic 自動生成對象的程序代碼并封裝起來。Visual Basic 應用程序基本的構建塊是用戶所創建的對象,每一個對象都具有一些特性和行為(屬性、事件和方法)。開發人員可以最有效利用所創建的每一個對象。使用應用程序具有可通用性可說擴展性和強有力的功能。
Visual Basic 應用由一系列對象組成,包括有函數、菜單、函數、結構和數據窗口、用戶對象、用戶事件等等,對象中又包含若干控件如命令按鈕、單行編輯器等這些對象和控件都可在許多應用中重復使用。2.2 實現菜單選項
菜單是程序最重要的特性之一,大多數程序都依賴一個定義良好的菜單使程序易于使用和維護,Visual Basic 也提供了強大的創建菜單功能是程序更加標準。
本系統使用 Visual Basic 的菜單編輯器建立菜單或者修改已經存在的菜單,您也可以使用Visual Basic 的Application Wizard 來操作。2.3 實現工具欄
CoolBar控件與Office2000 中看到的CoolBar是類似的。CoolBar就是一個可以在窗體上浮動的工具,同時也是其他ActiveX的容器。通過在CoolBar中遷入其他空間你也可以向用戶提供更好的靈活性和義用性。
選擇“工程”下拉菜單中的“部件”選項,顯示“部件”對話框。在“控件”選項卡列表中選擇“Microsoft Windows Common Controls 6.0”后工具相中增加改控件。本系統就用了Cool工具中的Statubar控件,在系統這一界面中,添加了狀態欄,在第一個欄中,在樣式這一欄中選擇了文本,在第二個欄中,選擇了系統日期,第三個欄中選擇了系統時間,這樣,任何時候操作本系統,都可以看到當前的時間和日期。
第三章 怎樣開發一個學生信息管理系統的查詢模塊? 3.1查詢模塊的設計分析
根據實際情況,我們使用原型法(Rapid Prototyping)即以少量代價快速地構造一個可執行的軟件模型。使用戶可以較快地確定需求,然后采用循環進化的開發方式,對系統模型作連續的精化,將系統需具備的性質逐漸增加上去,直到所有的性質全部滿足。此時模塊也發展成為最終產品了。3.2編程環境的選擇
微軟公司的Visual Basic 6.0是Windows應用程序開發工具,使目前最為廣泛的、易學易用的面向對象的開發工具。Visual Basic提供了大量的控件,這些控件可用于設計界面和實現各種功能,減少了編程人員的工作量,也簡化了界面設計過程,從而有效的提高了應
用程序的運行效率和可靠性。故而,實現本系統VB是一個相對較好的選擇。3.3關系型數據庫的實現
Access2000就是關系數據庫開發工具,數據庫能匯集各種信息以供查詢、存儲和檢索。Access的優點在于它能使用數據表示圖或自定義窗體收集信息。數據表示圖提供了一種類似于Excel的電子表格,可以使數據庫一目了然。另外,Access允許創建自定義報表用于打印或輸出數據庫中的信息。Access也提供了數據存儲庫,可以使用桌面數據庫文件把數據庫文件置于網絡文件服務器,與其他用戶共享數據庫。Access 是一種關系數據庫工具,關系數據庫是已開發的最通用的數據庫之一。如上所述,Access作為關系數據庫開發具備了許多優點,可以在一個數據包同時擁有桌面數據庫的便利和關系數據庫的強大功能。3.4二者的結合(DBA)微軟的JET數據庫引擎提供了與數據庫打交道的途徑,我們是通過它以及Visual Basic來訪問數據庫并對其進行各種操作。Visual Basic、Access以及其他微軟的軟件產品都是通過共用JET數據庫引擎,從而給用戶提供了豐富的數據類型。ADODC控件在數據庫中的信息與將信息顯示給用戶看的Visual Basic 程序之間架起了一座橋梁。我們可以設置ADODC控件的各個屬性,告訴它要調用那個數據庫的哪個部分。缺省情況下,ADODC控件根據數據庫中的一個或多個數據庫表建立一個dynaset-type(動態集合)類型的記錄集合。一個記錄集合是動態的也就意味著,當原來的數據表中的容改變了以后,該記錄集合中的記錄也會隨之改變。將ADODC控件放置在窗體中之后,我們還必須在該控件與要處理的數據庫之間建立聯系。
第四章 使用Access2000創建數據庫 4.1數據庫的概念
數據庫是一種存儲數據并對數據進行操作的工具。數據庫的作用在于組織和表達信息,簡而言之,數據庫就是信息的集合。計算機的數據庫可以分為兩類:非關系數據庫(flat-file)和關系數據庫(relational)。關系數據庫中包含了多個數據表的信息,數據庫含有各個不同部分的術語,象記錄、域等。4.2新建一個數據庫
創建任何一個數據庫的第一步是仔細的規劃數據庫,設計必須是靈活的、有邏輯的。創建一個數據庫結構的過程被認為是數據模型設計。1. 標識需要的數據;
2. 收集被子標識的字段到表中; 3. 標識主關鍵字字段; 4. 規范數據;
5. 標識指定字段的信息;
4.3修改已建的數據庫
數據庫的修改分為;添加、編輯和刪除記錄。這三種操作均可由Visual Basic創建的程序來完成,下面的章節將詳細描述實現的具體方法。
第五章 可行性分析
學生信息,作為一個學校,就有一定的工作量存在,而學生信息,它的工作量可能是其它信息工作量的幾倍,班級的增加、班級的查找、班級的修改;學生檔案;課程管理;成績管理;繳費管理;統計等等,每個信息的數據都在不斷地變化著,如果采用人工的方式進行操作,那么,一天的工作量,足以讓人覺得比較繁瑣,吃不消。針對這樣的情況,采用讓數據的查詢變得簡單化,數據變的更讓每個人都在任何時刻都可以了解到。學生信息管理系統是為本校開發的,本系統所采用的語言是Visual Basic,用Microsoft Access 2000數據庫完成。該系統總體有四部分組成,包括學生信息查詢、教務信息維護、學生選課及用戶管理。通過本系統,把本校內部查詢學生信息、教務信息、學生選課各個環節進行有效地計劃、組織和控制。通過本校內部的信息,依據統一數據信息進行管理,把任何一塊信息所產生的數據變動及時地反映給其它相關信息,做到數據共享。本系統主要信息流程為:教務信息維護接受學生的信息,學生信息查詢根據教務信息維護的學生信息做出對所接收的信息合理性進行判斷,并交于信息維護進行相應的修改,再把信息存入數據庫中。學生選課是對學生進行相應選擇自己相關的課程。最后進行打印。采用本系統,能夠使整個系統內部所有信息的工作簡化,提高工作效益。由于采用統一的數據信息,使相關資料能夠快速地查詢所需的數據、資料及其它信息的,使信息快速高效運行。
本系統中使用到的數據表主要有班級表、成績表、繳費表、課程表、學生檔案、用戶資料,由這六個表,組成了名為信息的數據庫(如圖一)。其中學生檔案是本系統主要的(圖一)
一張表,所有信息都是根據這張學生檔案進行有關的操作,主要的字段有:學號、姓名、年級、專業、性別、出生年月、民族、籍貫、政治面貌、家庭地址、郵政編碼、聯系電話、入學時間、備注。其中日期的數據類型為日期/時間天型,其它的數據類型為文本型;成績表中字段為:學號、姓名、年級、專業、學期、考試時間、考試科目、考試地點、課程性質、科目分數、違紀類型、備注;課程表中字段為:專業、年級、學期、課程名稱、教材、任課老師、課時、上課地點、課程性質、考試性質;用戶資料中的字段包括:用戶名、密碼、身份。
數據庫與VB的連接:本系統的數據鏈接采用的是ADO方法,打開控制面板,打開ODBC數據源圖標,選擇“系統DSN”標簽,點擊“添加”按鈕,在彈出的“創建新數據源”對話框中選擇名稱為“Microsoft Access Drive(*.mdb)”,點擊“完成”按鈕,在ODBC Microsoft Access 安裝對話框中在數據源名中輸入信息,在數據庫這個框中,單擊“選擇”按鈕,在彈出的選擇數據庫這一對話框架中,在驅動器下拉列表框中選擇本系統數據庫所在驅動器,在目錄中選擇庫所在的文件夾,在文件類型中選擇選“Access數據庫(*.mdb)”,在數據庫名中選擇本系統的數據庫,點擊“確定”按鈕即完成數據鏈接。
在VB中,用ADODC鏈接數據庫,用DataGrid或DATA將庫中的數據在界面中顯示出來,本系統采用DataGrid。在界面上右擊Adodc控制,在彈出的快捷菜單中選擇屬性,在屬性對話框中,在“屬性”這一標簽中,選中單選框“Use ODBC Data Source Name”,并在下拉文本框中選擇已經配置好的數據源名信息,再在“RecordSoure”標簽中,在Commard Text(SQL)文本框中輸入查詢語句,如:select * from 學生檔案。同時,將桌面的DataGrid控件選中,在屬性框中,將它的Datasoure設為Adodc。我們可以設置DataGrid控件的外觀:選中該控件,右擊,在彈出的快捷菜單中選擇“檢索字段”,在彈出的對話框中單擊“確定”,這時,表格中出現了表的字段。然后再右擊,同樣,在彈出的快捷菜單中選擇“編輯”,我們就可以所在的表格的寬度進行調整。
第六章 系統(查詢模塊)總體規劃 6.1系統功能(查詢模塊)1. 查詢信息的情況; 2. 判斷信息是否符合要求; 3. 將符合條件的信息進行打印; 6.2流程圖
學生注冊 基本信息輸入 學籍信息管理 班級管理 班級課程設置 課程基本信息 班級課程管理 成績信息輸入 成績信息管理 班級設置
第七章 系統具體實現 7.1各功能的實現
7.1.1課程管理:課程設置(如:界面如圖二)(圖二)
運行程序后,進入課程管理模塊,課程管理模塊的第一塊是課程設置,在這模塊中可以把專業、年級、學期、課程名稱、教材、任課老師、課時、上課地點、課程性質和考試性質等信息輸入,以便使用。結束語 學生信息管理系統(課程設置和打印統計)的完成,它在審核這一功能中能夠對不同情況的資料進行設置和打印,針對需要的信息進行設置和打印。
后記
本系統能夠順利完成,非常感謝指導老師陳志衛老師,同時,也感謝和我一起合作完成本系統的另兩位同學。對于本人來說,通過這次畢業設計,也是對自己在這三年學習的一個檢驗和平時學習的一種結累,可以在學習中提高自己,也充分體現學有所用,學以致用的學習倡導。
在此,我對三年來輔導過我的各位任課老師深表感謝
主要參考文獻
本系統的過程中,主要的參考文獻有:
《Visual Basic6.0》 林陳雷 人民郵電出版社 《面向對象程序設計系列教材》 龔沛曾 高等教育出版社 《Visual Basic6.0編程實例精解》 何文俊
《學用Visual Basic 編程》 潭 浩 西安電子科技大學出版社 《Visual Basic6.0 數據庫開發與專業應用》 敬 錚 國防工業出版社 《Visual Basic6.0 數據庫程序設計高手》 溫賢發 科學出版社
第四篇:員工信息管理系統
員工信息管理系統 系統的功能描述 設計一個員工信息管理系統,使之具有以下功能(1)系統以菜單方式工作,應為用戶提供清晰的使用提示,依據用戶的選擇來進行各種處理并且在此過程中能夠盡可能地兼容用戶使用過程中的輸入異常情況(2)員工信息錄入功能(員工信息用文件保存),注意員工按員工號進行區分,即每個員工的員工號都是唯一的,不允許出現兩個員工或員工號相同的情況(3)可對員工信息進行查詢,具體分為:按姓名查詢、按員工號查詢、按職務查詢。(4)可對員工信息進行刪除(5)可對員工信息進行修改,注意員工號不可修改,修改應逐個地進行,一個員工記錄的更改不應影響其他的員工記錄(6)可對全部員工信息進行顯示(員工信息瀏覽),注意員工信息的顯示要規范。其中員工信息應包括姓名、員工號、性別、年齡、最高學歷、職務、薪水、聯系電話、住址 系統的總體設計 本系統可以按功能進行模塊劃分,系統的總體設計如圖如下所示。“系統功能菜單” 選擇模塊完成用戶命令的接收,此模塊也是員工信息管理系統的入口,用戶所要進行的各種操作均需在此模塊中進行選擇并進而調用其他模塊實現相應的功能。“添加信息” 模塊完成員工信息的錄入功能,錄入的信息包括姓名、員工號、性別、年齡、最高學歷、職務、薪水、聯系電話、住址(這里可以根據需要加入其他信息)“查詢信息”
模塊完成員工信息的查詢,查詢可分為三種方式:按姓名查詢、按員工號查詢、按職務查詢(這里也可以根據需要根據其他方式進行查詢)“修改信息” 模塊完成員工信息的修改功能
“刪除信息” 模塊完成員工信息的刪除功能
“顯示信息” 模塊完成所有員工的顯示功能
第五篇:學生信息管理系統
目 錄
摘要
隨著電腦的普及與使用,現在的管理也提升了一個檔次,漸漸實現了無紙化辦公,即從原來的人工記錄管理模式轉變為電腦一體化管理。高校是科研的陣地,后勤的學生信息管理系統也應該一改傳統的人工管理,更加信息化,時代化,節省人力物力,提高效率。基于這一點,我設計了學生信息管理系統的方案。
學生信息管理系統,是以高校的管理方式為實例而設計的一種實用型管理系統。本系統最大的特點是通用性、簡單操作性,適用于同行業以及一些同類型的企業管理。隨著學校寄宿人員的增多,學生信息管理系統人員的負擔越來越重,為了讓所有學生信息管理系統人員能從繁重的工作中解脫出來,實現無紙化辦公;使工作更有條理,更方便,更有效率而開發出這套學生信息管理系統軟件。
關鍵詞:信息、管理、實用性、高校
前言
從2012年3月27日開始,我們進行了為期一周的軟件工程課程設計選題工作。在這一周我確定了我的課程設計題目:學生信息管理系統。
確定設計題目之后,我先做了一些準備工作,借閱必要的書籍與材料,通過互聯網以及其他媒介收索了關于學生信息管理系統的相關知識,然后進行針對性的學習。首先就是開發此類項目的背景。當前,學生信息管理體制相對比較落后。主要表現在以下幾個方面:1.高校現行的管理體制不能完全適應國有的管理發展的需要。2.信息管理人員超編現象普遍存在。
3、高校的信息管理大多數都還停留在初級的計算機管理上。對于大量的數據和龐大的數據結構,簡單的用EXCEL表格來記錄是遠遠無法滿足信息的規模的。必須實行現代化信息管理,定制專業的信息管理軟件來進行相關的管理。
4、學生信息公開化不夠。高校的精密儀器設備一般都比較貴重,學生的信息如不能得到有效的共享,將會嚴重制約設備的使用效率,甚至導致重復購買。一套完整的網絡系統將會讓這個問題迎刃而解。
在需求分析階段,我對學生信息管理系統進行了系統功能分析。系統功能包括登陸、學生查詢自己的信息、管理員的日常管理、教師的登陸、查詢等幾部分。
接著在系統設計和詳細設計階段期間,因為需要自學和探索的內容與軟件較多,所以我發揮積極主動精神投入課程設計和開發活動。除了老師正式安排的課程設計時間之外,還充分利用課余時間,向善長這方面的同學進行請教和互相探討,力爭獲得最大收益。在需求分析的基礎上,考慮經濟、技術和運行環境等各方面條件,確定系統的總體結構和系統各組成部分的技術方案,合理選擇計算機和通信的軟硬件設備,提出系統的實施計劃。內容主要包括學生學校管理系統總體結構設計、系統流程設計等等。根據系統的邏輯模型,完成數據流程圖等的設計。使我對這些開發設計的軟件應用工具運用和掌握的更加熟練。
員。每個人都有唯一的一個用戶名,每個用戶名都有與之對應的密碼,如果用戶名和密碼不一致,則無法登陸主界面。如果用戶輸入錯誤可以單擊“重臵”按鈕,重新輸入。輸入完整單擊“確定”按鈕進入主界面。
圖1:登陸界面
2.2.2 主界面用例描述
用戶通過下拉列表框選擇身份,可以是學生、教師或者管理員。用戶選擇身份以后,輸入自己的用戶名和密碼。系統通過認證后,出現學生信息管理系統主界面。通過系統驗證用戶進入學生信息管理主界面,在主界面中我們可以看到登陸學生的基本信息,學生所修課程的信息。用戶可以通過“查找”按鈕看到所查找學生的信息。如圖2:
圖2:主界面
2.2.3 修改密碼用例描述
登陸到主界面中,我們可以看到在主界面的右側
圖3:修改密碼界面
2.2.4 選修課信息用例描述
用戶單擊“選修課信息”按鈕,進入到選修課信息界面。在選修課信息界面中我們可以看到本學期所有可選的課程信息。學生選擇選修課程表的課程,在界面的左下角會出現對應的課程詳細信息。單擊“選修”,就可將所選課程添加到列表框里。單擊“退選”按鈕,那么已選課程將從所選課程列表里刪除,同時退選課程里將出現退選的課程,單擊退選就可以退選此課程了。單擊“確定”按鈕,保存選修課信息。用戶還可以通過“查看”按鈕查看歷年來的所選修的課程情況。如圖4所示:
圖4:選修課信息
2.2.5 個人信息用例描述
在主界面的學生基本信息框下面有兩個按鈕,一個是“查看更多信息”一個是“修改基本信息”。學生、教師、管理員都可以在主界面單擊“查看更多信息”按鈕,進入“個人信息”界面里查看個人基本的信息。管理員可以對這些進行修改,并且只限管理員修改。如圖5。
圖5:個人信息界面
2.2.6 修改學生信息用例描述
管理員可以單擊修改按鈕對學生信息進行修改,當用戶是學生或者老師時,修改按鈕對其不可用。
管理員進入個人信息界面時,單擊修改按鈕就可以進入到修改個人信息界面,對學生的信息進行修改。單擊“確定”按鈕保存。如圖6:
圖6:修改個人信息界面
2.2.7 查看、修改課程信息用例描述
在主界面中我們還可以看到學生所修課程信息情況。這里列出了本學期該學生所修的所有具體課程,每個具體課程占一行,單擊“具體課程信息”按鈕進入
“課程信息”界面,用戶可以看到完整的課程號、課程名、授課教師、學分信息。同時可以通過選擇不同學年的時間段來查看相應學年的課程信息。如圖7:
教師和管理員有權對課程信息進行修改,如果要修改學生課程信息可以單擊“修改”按鈕,進入到“修改課程信息”界面,這里列出可課程名、課程號、任課教師等一系列與課程有關的信息。單擊“確定”可以保存修改的信息并退出。如圖8:
圖7:查看課程信息界面
圖8:修改課程信息
2.2.8 考勤表用例描述
在主界面上單擊“考勤信息”進入到“考勤表”的界面。系統給出所查找學生的考勤情況。其中包括住宿考勤與課堂考勤兩部分。并且最上方有學生的住宿信息以及基本信息。如圖9所示:
圖九:考勤表信息界面
2.2.9 獎懲表用例描述
在主界面,單擊“獎懲信息”按鈕。進入獎懲表界面,這里給出了歷年的獎勵與懲罰信息以及學生的基本信息。如果單擊“修改”按鈕可以對學生獎懲項進行添加、刪除、修改等操作,此操作只能由管理員進行。學生信息管理系統給出相應的學生的獎懲情況。學生單擊個人信息界面上的“獎懲”按鈕,進入到獎懲表的界面。教師在查找到相應的學生信息后可以通過“獎懲”按鈕來查看該生所有的獎勵與懲罰項。如圖10:
圖10:獎懲表信息界面
2.2.10 修改獎懲信息用例描述
管理員可以通過“修改”按鈕進入到“修改獎懲信息”界面。可以對學生的獎懲信息直接進行修改。如圖11:
圖11:修改獎懲信息界面
3.2.2 修改密碼時序圖
用戶進入主界面,單擊“修改密碼”按鈕進入“修改密碼”界面。輸入相應的修改信息,系統檢測輸入是否完整、確認密碼是否與新密碼一致、舊密碼是否正確。檢測通過,顯示成功信息。如圖二所示:
圖2:修改密碼時序圖
3.2.3 選修課信息時序圖
學生在主界面單擊“選修課信息”進入選修課信息界面,此界面上顯示了所有可選的課程信息,這些信息來自選修課信息表。單擊某一課程,在詳細課程信息里顯示具體課程信息,課程的具體信息來自模板課程信息表。如圖三所示:
圖3:選修課信息時序圖
3.2.4 退選選修課時序圖
當學生選修了某一課程時,該課程也許與該生課時或其他原因有所沖突而不能選修,這時應有提示,并讓該生退選改課程。學生單擊“退選”按鈕,系統提示是否退選,單擊“是”則在學生的選修課信息表里移除這個選課項。如圖四所示:
圖4:退選選修課時序圖
3.2.5 查看基本信息時序圖
學生進入主界面后,主界面顯示了學生的個人信息,單擊“查看更多信息”按鈕,進入“個人信息界面”,此界面中顯示的信息來自學生的基本信息表。如圖五所示:
圖5:查看基本信息時序圖
3.2.6 修改個人信息時序圖
在個人信息界面中單擊“修改”按鈕,進入到修改學生信息界面,修改界面的學生信息也是來自學生的基本信息表,當用戶單擊修改時,系統提示是否修改,單擊“是”,系統修改基本信息項。并保存。如圖六所示:
圖6:修改個人信息時序圖
3.2.7 課程信息時序圖
用戶進入主界面,單擊“具體課程信息”按鈕,進入到課程信息界面。在這里顯示了具體的課程信息。此信息來自個人課程信息表。如圖七所示:
圖7:課程信息時序圖
3.2.8 修改課程信息時序圖
管理員或者教師在課程信息界面單擊“修改”按鈕或者從主界面單擊“修改課程信息”按鈕,進入到修改課程信息界面,當用戶單擊修改時,系統檢測信息是否完整,并提示是否修改,單擊“是”,系統這時修改個人課程信息表的信息項。如圖八所示:
圖8:修改課程信息時序圖
3.2.9 考勤表時序圖
用戶在主界面單擊“考勤信息”進入考勤表界面。在考勤表界面中顯示學生的出勤信息。此信息來自學生的住宿考勤表和課件考勤表。如圖九所示:
圖9:考勤表時序圖
3.2.10 獎懲表時序圖
用戶在主界面單擊“獎懲信息”進入獎懲表界面,此界面顯示該生所有的獎懲情況。這些信息來自于學生的獎懲表。如圖十所示:
圖10:獎懲表時序圖
3.2.11 修改獎懲表信息時序圖
當管理員單擊修改時,進入修改獎懲信息界面,這里顯示的信息同樣來自獎懲表。當單擊“修改”時,系統檢測信息是否完整,提示是否修改,單擊“是”,系統修改獎懲信息項,并提示修改成功。如圖十一:
圖11:修改獎懲信息時序圖
總結
從3月27日開始,我們進行了將近三個月的課程設計。通過這次課程設計,我拓寬了知識面,鍛煉了能力,綜合素質得到較大提高。安排課程設計的基本目的,在于通過理論與實際的結合、人與人的溝通,進一步提高思想覺悟。尤其是觀察、分析和解決問題的實際工作能力,以便培養成為能夠主動適應社會主義現代化建設需要的高素質的復合型人才。作為整個學習體系的有機組成部分,課程設計雖然安排在了三個月的時間進行,但并不具有絕對獨立的意義。它的一個重要功能,在于運用學習成果,檢驗學習成果。運用學習成果,把課堂上學到的系統化的理論知識,嘗試性地應用于實際設計工作,并從理論的高度對設計工作的現代化提出一些有針對性的建議和設想。檢驗學習成果,看一看課堂學習與實際工作到底有多大距離,并通過綜合分析,找出學習中存在的不足,以便為完善學習計劃,改變學習內容與方法提供實踐依據。在一個星期的課程設計之后,我們普遍感到不僅實際動手能力有所提高,更重要的是通過對軟件開發流程的了解,進一步激發了我們對專業知識的興趣,并能夠結合實際存在的問題在專業領域內進行更深入的學習。
在這次設計中遇到了很多實際性的問題,在實際設計中才發現,書本上理論性的東西與在實際運用中的還是有一定的出入的,所以有些問題不但要深入地理解,而且要不斷地更正以前的錯誤思維。一切問題必須要靠自己一點一滴的解決,而在解決的過程當中你會發現自己在飛速的提升。對于學生信息管理系統,主要是解決程序設計中的問題,而程序設計是一個很靈活的東西,它反映了你解決問題的邏輯思維和創新能力,它才是一個設計的靈魂所在。因此在整個設計過程中大部分時間是用在程序上面的。很多子程序是可以借鑒書本上的,但怎樣銜接各個子程序才是關鍵的問題所在,這需要對系統的結構很熟悉。因此可以說系統的設計是軟件和硬件的結合,二者是密不可分的。通過這次課程設計我也發現了自身存在的不足之處,雖然感覺理論上已經掌握,但在運用到實踐的過程中仍有意想不到的困惑,經過一番努力才得以解決。
我覺得作為一名學習軟件工程的學生,這次課程設計是很有意義的。更重要的是如何把自己平時所學的東西應用到實際中。雖然自己對于這門課懂的并不
多,很多基礎的東西都還沒有很好的掌握,覺得很難,也沒有很有效的辦法通過自身去理解,但是靠著這三個月的“學習”,在老師、同學的幫助和講解下,漸漸對這門課逐漸產生了些許的興趣,自己開始主動學習并逐步從基礎慢慢開始弄懂它。同時,在這里感謝我們的指導老師彭博老師的悉心解惑和指導。