財務(wù)管理規(guī)定系統(tǒng)_第1頁
財務(wù)管理規(guī)定系統(tǒng)_第2頁
財務(wù)管理規(guī)定系統(tǒng)_第3頁
財務(wù)管理規(guī)定系統(tǒng)_第4頁
財務(wù)管理規(guī)定系統(tǒng)_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、C# 程 序 設(shè) 計財務(wù)收支管理系統(tǒng)姓 名楊宗坤學(xué) 院信息與電氣工程學(xué)院專 業(yè)計算機科學(xué)與技術(shù)年 級2012學(xué) 號694指導(dǎo)教師周樹森2015 年 12月12財務(wù)收支管理系統(tǒng)楊宗坤(信息與電氣工程學(xué)院,計算機科學(xué)與技術(shù),2012級2班,694) 摘 要:當(dāng)今社會越來越朝著信息化和數(shù)字化方向發(fā)展,計算機的應(yīng)用領(lǐng)域使我們的生活越來越方便和快捷,可以說我們的每個人生活都離不開計算機的幫助了。越來越多的個人應(yīng)用軟件成為了人們重要的助手,也在潛移默化的改變著我們的生活。財務(wù)管理系統(tǒng)是每一個單位管理財務(wù)收入和支出的不可缺少的一個管理信息系統(tǒng), 市場上的財務(wù)管理軟件大多數(shù)都面向企業(yè)并價格昂貴,或是專門偏向于

2、某一特殊領(lǐng)域,免費的財務(wù)管理軟件更是少之又少,為了滿足中小企業(yè)及個體經(jīng)營者的需求,利用C#語言、ASP.NET、Visual Studio和數(shù)據(jù)庫等開發(fā)軟件和工具,設(shè)計開發(fā)了一個具有簡單收支管理、登帳統(tǒng)計和查詢等基本功能的財務(wù)管理系統(tǒng),經(jīng)過測試表明,系統(tǒng)可以較為穩(wěn)定的實現(xiàn)這些基本功能。關(guān)鍵詞:財務(wù)管理系統(tǒng);ASP.NET ;SQL Server;程序設(shè)計;Abstract: Financial management is an important work of the company, usi

3、ng computer to manage the company financial, not only can save time and manpower, more fully, effectively grasp the basic situation of corporate finance, timely access to

4、 the latest accurate data and information.This system is for the user to provide powerful data manipulation functions, friendly interface, simple and convenient to use, based&

5、#160;on (client / server) mode,The design is reasonable, function relatively complete, the test run stability, can meet the need of the work。Keywords: C # .net, Financial management sys

6、tem,SQL Server。1 引言 信息化的飛速發(fā)展,促使電腦和網(wǎng)絡(luò)已經(jīng)日益影響到了人們的日常和工作過程中,給我們帶來了很大的方便,也使人們對電腦依賴性越來越強。各種各樣的應(yīng)用軟件系統(tǒng)成為了人民的重要助手和有效工具,明顯改變著人民的生活。隨著網(wǎng)絡(luò)的普及,通過手寫的方式在紙張上記錄一些收支的做法已經(jīng)逐漸被淘汰,已逐漸被在電腦上記錄自己的收支情況的做法所取代。通過Visual Studio2010 工具的使用 和面向?qū)ο驝#語言等知識,對財務(wù)管理系統(tǒng)的設(shè)計慢慢了解,深入學(xué)習(xí),從而達到熟練掌握.NET基本結(jié)構(gòu)以及C#語言的基本知識和技能;基本掌握面向?qū)ο蟪绦蜷_發(fā)的基本思路和方法;根據(jù)課題的要求,

7、給出解決問題的方案,通過分析問題、分解問題來解決問題,最終達到熟練掌握C#語言的運用和Visual Studio2010工具的使用。2 系統(tǒng)分析2.1 系統(tǒng)需求財務(wù)收支管理工作隨著我國市場經(jīng)濟的發(fā)展,在各個企業(yè)的管理中扮演著越來越重要的角色,漸漸起到不可替代的核心作用。對于大型企業(yè)集團來說,財務(wù)管理顯得更為重要,財務(wù)管理系統(tǒng)的建立將直接受到企業(yè)集團管理方式的影響,并直接影響企業(yè)的管理效率與經(jīng)濟效益。如何在現(xiàn)有經(jīng)營環(huán)境下選擇最佳的財務(wù)管理模式,使用最優(yōu)的財務(wù)管理系統(tǒng),實現(xiàn)企業(yè)的管理目標(biāo),適應(yīng)企業(yè)信息化發(fā)展的需要,是一個值得研究和探討的問題。Microsoft公司的 C# 是Windows應(yīng)用程序

8、開發(fā)工具,是目前廣泛的、易學(xué)易用的面向?qū)ο蟮拈_發(fā)工具。Visual 2010提供了大量的控件,并且這些控件可用于設(shè)計界面和實現(xiàn)各種功能,減少了編程人員的工作量,也簡化了界面設(shè)計過程,從而有效的提高了應(yīng)用程序的運行效率和可靠性。因此實現(xiàn)本系統(tǒng)Visual 2010是一個相對較好的選擇。關(guān)系型數(shù)據(jù)庫的實現(xiàn):SQL Server 2008就是關(guān)系數(shù)據(jù)庫開發(fā)工具,數(shù)據(jù)庫能匯集各種信息以供查詢、存儲和檢索。SQL Server 2008 的優(yōu)點在于它能使用數(shù)據(jù)表示圖或自定義窗體收集信息,并能對相關(guān)系的表進行視圖連接,建立視圖后可屏蔽一些數(shù)據(jù)使數(shù)據(jù)更為安全,并可以建立存儲過程以便能夠簡化前臺程序的編寫。數(shù)

9、據(jù)表示可以使數(shù)據(jù)庫一目了然。另外,SQL Server 2008用戶設(shè)定自已的密碼保護數(shù)據(jù)的安全性。SQL Server 2008提供對各種數(shù)據(jù)的約束,使用戶輸入的數(shù)據(jù)符合正規(guī)的邏輯,并提供各種數(shù)據(jù)與數(shù)據(jù)之間的相關(guān)性連接,能夠級聯(lián)更新一些相關(guān)的數(shù)據(jù),更特別的是提供了觸發(fā)器功能。SQL Server 2008是一種關(guān)系數(shù)據(jù)庫工具,關(guān)系數(shù)據(jù)庫是已開發(fā)的最通用的大型數(shù)據(jù)庫之一,運行在服務(wù)企上更加安全。如上所述,SQL Server 2008作為關(guān)系數(shù)據(jù)庫開發(fā)具備了許多優(yōu)點。(2)技術(shù)可行性隨著國內(nèi)軟件開發(fā)的日益發(fā)展壯大,各種中小企事業(yè)單位已具備獨立開發(fā)各種類型的軟件的能力,能夠滿足不同行業(yè)的特別的需

10、求。而這個系統(tǒng)盡管其在組織關(guān)系上存在著很大的復(fù)雜性,繁瑣性,但是就整個系統(tǒng)的技術(shù)構(gòu)成上來看,它還是屬于一個數(shù)據(jù)庫應(yīng)用類的系統(tǒng)。其基本操作還是對存在數(shù)據(jù)庫進行添加、刪除、查詢、修改等。所以就單純的數(shù)據(jù)庫應(yīng)用來看,暫不存在太大的技術(shù)問題。(3)經(jīng)濟可行性對于整個系統(tǒng)而言,在系統(tǒng)未運行之前,初期投資比較大,花費相對而言比較多。各部門必須配置電腦、服務(wù)器、打印機、傳真機及相關(guān)的網(wǎng)絡(luò)設(shè)備,但是在整個系統(tǒng)投入運行之后,因為現(xiàn)在計算機已經(jīng)普及了,相關(guān)的人員培訓(xùn)費可以減少很多。而同時又減少了數(shù)據(jù)的流通環(huán)節(jié),不必要花費那么多的時間,也就是說最重要的是就是提高了效率,而又保證了各項數(shù)據(jù)的準(zhǔn)確性,也避免了工作人員的

11、流動造成的收據(jù)丟失等問題,適應(yīng)了當(dāng)前的發(fā)展形式。(4)管理可行性隨著時代的發(fā)展,人員素質(zhì)己逐步提高,不論是對于電腦系統(tǒng)的基本操作還是對于系統(tǒng)的維護都有了一定的基礎(chǔ)。同時還可以配置專業(yè)的電腦維護人員來維護電腦,不必?fù)?dān)心電腦故障問題。2.2 用戶需求企業(yè)管理模式的選擇應(yīng)當(dāng)是在對整體發(fā)展戰(zhàn)略、經(jīng)營情況、企業(yè)類型和子公司進行系統(tǒng)分析的基礎(chǔ)上進行的,同時企業(yè)應(yīng)充分根據(jù)自身發(fā)展的需要設(shè)計財務(wù)管理模式。設(shè)計時必須應(yīng)當(dāng)遵循以下原則: 1.安全性 安全性分為系統(tǒng)內(nèi)部安全、訪問安全及與其他系統(tǒng)對接時的安全性。內(nèi)部安全體現(xiàn)在系統(tǒng)數(shù)據(jù)庫的安全以及非法數(shù)據(jù)屏蔽等,可通過防火墻、劃分網(wǎng)段來防范非法程序?qū)?shù)據(jù)庫的破壞,對數(shù)

12、據(jù)庫做計劃,進行備份,對錄入數(shù)據(jù)進行核查,對不滿足條件的內(nèi)容提示修改,對非法數(shù)據(jù)進行屏蔽。訪問安全體現(xiàn)在對各個部門、各個用戶按管理人員的安全策略進行分組管理、控制各組的訪問權(quán)限以及信息的流向。與其他系統(tǒng)連接時,既要保證內(nèi)部數(shù)據(jù)的安全,隔離內(nèi)外部的信息通道,又要對外部信息資源進行訪問控制。為保證整個系統(tǒng)的正常運行,必然要保證系統(tǒng)信息的絕對安全和可靠。 2.實用性 財務(wù)信息管理系統(tǒng)是一個工程項目,而不是研究或?qū)嶒炚n題。系統(tǒng)建設(shè)的最終目的是服務(wù)于財務(wù)管理的需要,服務(wù)于企業(yè)在許可范圍內(nèi)對財務(wù)信息的需求。系統(tǒng)的建設(shè)應(yīng)為應(yīng)用服務(wù)。因此,系統(tǒng)的設(shè)計和建設(shè)應(yīng)能滿足需求并正確無誤地高效地運行。 3.靈活性 系統(tǒng)

13、應(yīng)設(shè)計任意組合的模糊查詢功能,提供多方面的查詢,以滿足各個時期的報表。對復(fù)雜數(shù)據(jù)結(jié)構(gòu)應(yīng)實現(xiàn)修改一表的數(shù)據(jù)即可自動修改相關(guān)表中的數(shù)據(jù),刪除一表的數(shù)據(jù)即可自動刪除與之相關(guān)的其他表數(shù)據(jù),保證數(shù)據(jù)庫中無冗余數(shù)據(jù)。 2.3 系統(tǒng)功能 通過用戶需求分析,根據(jù)企業(yè)財務(wù)工作流程分析,本著模塊劃分的原則,把系統(tǒng)抽象為3個模塊,分別文件系統(tǒng)、用戶管理、財務(wù)管理。下面是各模塊的功能:1. 文件系統(tǒng):顯示登錄信息,存儲登陸日志,修改密碼,退出系統(tǒng)。2. 用戶管理:顯示用戶列表,添加和修改用戶,公司部門管理,角色管理,工作性質(zhì)介紹。3. 財務(wù)管理:賬單列表,添加和修改賬單,顯示收支信息以及賬單性質(zhì)。3 系統(tǒng)設(shè)計登 陸3

14、.1 模塊流程圖程序主窗口文件系統(tǒng)用戶管理財務(wù)管理登陸日志修改密碼員 工 信 息部 門 管 理賬 單 列 表登 錄信息收 支 明 細(xì)賬 單 性 質(zhì) 模塊流程圖采用結(jié)構(gòu)化程序設(shè)計的思想,其有以下優(yōu)點:(1).自頂向下逐步求精的思想與人類求解復(fù)雜問題的思維規(guī)律相符,有助于軟件系統(tǒng)的分析與設(shè)計。(2).采用先抽象后具體、先宏觀后微觀、先總體后細(xì)節(jié)的開發(fā)過程,使得程序的層次結(jié)構(gòu)清楚,可讀性好。(3).單入口、單出口的控制結(jié)構(gòu),可以保證程序的靜態(tài)結(jié)構(gòu)與其動態(tài)執(zhí)行流程基本相似,程序的可維護性好。(4).良好的模塊化特性支持軟件部件的重用。3.2 模塊功能說明1.登錄窗口:驗證用戶后打開程序管理窗口;2.程

15、序管理主窗口:為父窗體,在此窗體內(nèi)顯示財務(wù)管理及主要功能模塊;3.程序管理子窗口:主窗口各模塊下的子功能窗體;4.登陸信息修改窗口:對用戶信息進行修改。4 系統(tǒng)模塊4.1 登陸設(shè)計模塊圖1 登陸界面本界面是用戶登錄系統(tǒng)的界面,當(dāng)用戶提交登錄信息,對用戶進行身份及權(quán)限判斷,再轉(zhuǎn)入不同的頁面。當(dāng)用戶名或密碼、權(quán)限輸入錯誤,會提示錯誤。輸入用戶名或密碼錯誤后會顯示如下界面:圖2 登陸界面4.2 主界面模塊窗口設(shè)計圖3主窗口該窗口為父窗體,可以在此窗口內(nèi)顯示財務(wù)管理系統(tǒng)三個主要模塊信息.用戶在登陸界面按了輸入正確賬號密碼的登陸按鈕就可以轉(zhuǎn)到此界面。4.3 登錄信息窗口 圖4登錄信息窗口 該窗口為用戶登

16、陸信息顯示窗口,能顯示用戶登陸的時間,員工賬號,上次登陸時間等信息。4.4 用戶管理窗口圖5用戶列表窗口該窗口顯示員工信息,部們編號,職位等信息。圖6修改員工信息窗口該窗口可以修改員工用戶各種信息。圖7員工性質(zhì)查詢窗口 該窗口可以查詢員工的性質(zhì)名稱,類別以及顯示工作性質(zhì)列表。圖8收支列表窗口該窗口顯示公司以及各員工收支明細(xì),包括收支人,時間地點,以及增刪查改等操作。能夠清楚的顯示該公司的收支情況。圖9財務(wù)性質(zhì)管理窗口該窗口可以對公司財務(wù)收支性質(zhì)信息進行管理。4.4 修改用戶密碼窗口圖10密碼修改窗口該窗口可以修改用戶密碼。5 核心代碼描述5.1 c#連接數(shù)據(jù)庫的方式:(1)配置文件鏈接。利用V

17、S.NET開發(fā)平臺進行開發(fā)的時候?qū)?jīng)常遇到要和數(shù)據(jù)庫打交道,存取數(shù)據(jù)。這就涉及到和數(shù)據(jù)庫的連接問題,.NET開發(fā)平臺為我們提供了一種簡單的方式來定義和數(shù)據(jù)庫連接的字符串。這就是在Web.Config文件中添加連接字符串。(2)代碼連接。#是一個語言,ASP.NET是一個平臺,上面支持用C#或者VB.NET寫代碼。連接Access,SQL Server,Oracle,還有Excel數(shù)據(jù)庫。本程序采用第一種連接方式,下面是主要源代碼:<xml version="1.0" encoding="utf-8" ><configuration&g

18、t; <configSections> </configSections> <connectionStrings> <add name="ConnectionString" connectionString="Data Source=OHU0SRPYXFXPE5O;Initial Catalog=MySystem;User ID=sa;Password=123456" providerName="System.Data.SqlClient" /> </connectionStrin

19、gs></configuration>其中,name 的值ctionStrings代表字符串的名稱,Data Source代表數(shù)據(jù)庫的實例名,User ID和Password分別代表用戶名和密碼。如果有多個數(shù)據(jù)庫的連接,還可以在<appSettings>標(biāo)簽之下添加多個<add .>節(jié)。這樣只需在配置文件中定義一次就可以在之后的數(shù)據(jù)庫存取中多次重復(fù)利用這個設(shè)置。5.2 登陸界面主要代碼namespace WinForm public partial class FrmLogin : Form MySystem.DAL.Employee dal = ne

20、w MySystem.DAL.Employee(); MySystem.Model.Employee model = new MySystem.Model.Employee(); MySystem.DAL.EmployeeLoginLog dallog = new MySystem.DAL.EmployeeLoginLog(); MySystem.Model.EmployeeLoginLog modellog = new MySystem.Model.EmployeeLoginLog(); public FrmLogin() InitializeComponent(); private voi

21、d FrmLogin_Load(object sender, EventArgs e) private void btn_OK_Click(object sender, EventArgs e) public static int ExecuteNonQuery(string sqlstr, params SqlParameter parameters) using (SqlConnection conn = new SqlConnection(connStr) using (SqlCommand cmd = new SqlCommand(sqlstr, conn) try conn.Open

22、(); if (parameters != null) foreach (SqlParameter para in parameters) cmd.Parameters.Add(para); int rows = cmd.ExecuteNonQuery(); cmd.Parameters.Clear(); return rows; catch (System.Data.SqlClient.SqlException e) throw e; 在編程中經(jīng)常需要給程序制作一個登陸界面,在用戶打開程序后首先彈出登陸窗口,如果輸入正確的用戶名和密碼,才能登陸成功進入正式的程序界面。5.3修改用戶賬號密碼n

23、amespace WinForm public partial class FrmUpdatePassword : Form MySystem.DAL.Employee dal = new MySystem.DAL.Employee(); MySystem.Model.Employee model = new MySystem.Model.Employee(); public int Eid = 0; public FrmUpdatePassword() InitializeComponent(); private void FrmUpdatePassword_Load(object send

24、er, EventArgs e) BindDataList(); private void BindDataList() model = dal.GetModel(Eid); if (model = null) btn_OK.Enabled = false; MessageBox.Show("沒有此員工信息", "錯誤", MessageBoxButtons.OK, MessageBoxIcon.Error); public bool CheckParams() if (string.IsNullOrEmpty(txt_Password.Text.Tri

25、m() MessageBox.Show("請輸入原密碼"); return true; if (string.IsNullOrEmpty(txt_NewPassword.Text.Trim() MessageBox.Show("請輸密碼"); return true; if (string.IsNullOrEmpty(txt_NewPassword2.Text.Trim() MessageBox.Show("請確認(rèn)新碼"); return true; if (!txt_NewPassword.Text.Trim().Equals(tx

26、t_NewPassword2.Text.Trim() MessageBox.Show("兩次輸入新密碼” return true; return false; #endregion private void btn_OK_Click(object sender, EventArgs e) bool b = CheckParams(); if (b) return; if (!string.Equals(txt_Password.Text.Trim(), model.LoginPassword.Trim(), StringComparison.Ordinal) MessageBox.S

27、how("原密碼輸入錯誤"); return; model.LoginPassword = txt_NewPassword.Text.Trim(); int rows = dal.Update(model); if (rows > 0) BindDataList(); MessageBox.Show("成功); else MessageBox.Show("失敗"); private void btn_Cancel_Click(object sender, EventArgs e) this.Hide(); 5.3 c#的三層架構(gòu) usin

28、g System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; assembly: AssemblyTitle("MySystem.DAL") assembly: AssemblyDescription("") assembly: AssemblyConfiguration("") assembly: AssemblyCompany("super8") assembly: Assemb

29、lyProduct("MySystem.DAL") assembly: AssemblyCopyright("Copyright © super8 2015") assembly: AssemblyTrademark("") assembly: AssemblyCulture("") assembly: ComVisible(false) assembly: Guid("e0d8d0ee-bd5b-4811-8268-30c6e0397bd4") assembly: AssemblyV

30、ersion("") assembly: AssemblyFileVersion("") DAL Data Access Layer 數(shù)據(jù)訪問層,這個層應(yīng)該是負(fù)責(zé)程序與數(shù)據(jù)中心(除了數(shù)據(jù)庫,還有存儲數(shù)據(jù)的文件等)的交互,也就是將數(shù)據(jù)的增刪改查的操作封裝起來供其它層直接使用,這樣一來,做此層的開發(fā)人員只需要關(guān)心數(shù)據(jù),而不用關(guān)心業(yè)務(wù)邏輯; BLL Business Logic Layer 業(yè)務(wù)邏輯層,這個層是負(fù)責(zé)程序的業(yè)務(wù)邏輯,也就是對程序具體功能模塊和程序執(zhí)行流程的實現(xiàn)。此層的開發(fā)人員只需要關(guān)心程序的業(yè)務(wù)邏輯,而不需要關(guān)心數(shù)據(jù)是哪里來的,是怎么取得的等問題

31、; 而DbHelp,這個也應(yīng)該是包含在DAL里面的(注意是包含,而不是說DbHelp就是DAL),DbHelp一般是一個類,此類一般會提供數(shù)據(jù)庫訪問的通過屬性和方法。 簡單的說,DAL需要做的是從數(shù)據(jù)源取數(shù)據(jù)和向數(shù)據(jù)源存數(shù)據(jù),并將這些按需要分成不同的方法提供給其它層(如BLL);BLL需要做的是將程序的功能實現(xiàn),需要數(shù)據(jù)的時候調(diào)用DAL提供的取數(shù)據(jù)方法,保存數(shù)據(jù)的時候調(diào)用 DAL 的存數(shù)據(jù)方法。代碼中DAL主要是對數(shù)據(jù)庫中的內(nèi)容的操作,在這里就是向數(shù)據(jù)庫中添加用戶。BLL則主要是調(diào)用DAL層的操作,返回DAL層添加用戶的結(jié)果(true或者false)。這樣也就是在客戶端與數(shù)據(jù)庫中加了一個中間層,使得兩層的依賴性減小。UI層則主要完成響應(yīng)用戶的需求,去調(diào)用BLL層實現(xiàn)的adduser方法,DAL層就是實實在在做這件事情的操作。6 總結(jié)在設(shè)計這個課題的過程中,面對著極其錯綜復(fù)雜的問題

溫馨提示

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

最新文檔

評論

0/150

提交評論