摘要:介紹了C/S模式下服裝進銷存管理系統(tǒng)的開發(fā)過程,系統(tǒng)借助VisualStuido.Net平臺,C#語言和SQLServer2000數據庫,實現了對服裝企業(yè)的訂單、報價單、客戶、供應商和文件等信息的管理。是一個功能比較齊全的進銷存管理系統(tǒng)。
關鍵詞:服裝;進銷存管理系統(tǒng);C#
引言
近年來我國信息產業(yè)發(fā)展迅速,手工管理方式在需要處理大量事務的企業(yè)管理系統(tǒng)中已顯得不相適應,而服裝企業(yè)也存在這樣的問題。如何把人們從復雜、繁瑣的工作中解放出來,提高工作效率,從而提高企業(yè)競爭力是服裝企業(yè)現在必須面對的一個問題。而現在隨著科技發(fā)展和社會進步,以臺式計算機為核心,以數據庫管理系統(tǒng)為開發(fā)環(huán)境的管理信息系統(tǒng)已大量應用在企業(yè)日常管理中。所以現在為服裝企業(yè)開發(fā)一個管理系統(tǒng)條件已經成熟,也能很好的解決服裝企業(yè)所面對的問題。
1開發(fā)技術簡介
C#(發(fā)音為“CSharp”)是簡單、現代、面向對象和類型安全的編程語言,是微軟公司于2000年7月發(fā)布的一種新的面向對象的編程語言,它是專門為微軟的.Net平臺設計的語言,必須和.Net平臺一起使用。C#已經獲得了ECMAInternational和ISO/IEC的國際標準認證,它們分別是ECMA-334標準和ISO/IEC23270標準,F代軟件設計越來越依賴于自包含(self-contained)和自描述(self-describing)功能包形式的軟件組件。這種組件的關鍵之處在于它們提供了帶有屬性、方法和事件的編程模型;它們還具有提供關于組件聲明信息的特性(attribute);同時,它們編入了自己的文檔。C#提供語言構件來直接支持這些概念,使得C#在創(chuàng)建和使用軟件構件方面非常自然。
SQL全稱是“結構化查詢語言(StructuredQueryLanguage)”,它結構簡潔,功能強大,簡單易學,所以得到了廣泛的應用。它由4個部分組成:數據查詢語言、數據操縱語言、數據定義語言、數據控制語言。ANSI(美國國家標準學會)聲稱,SQL是關系數據庫管理系統(tǒng)的標準語言。SQL語句通常用于完成一些數據庫的操作任務,比如在數據庫中更新數據,或者從數據庫中檢索數據。使用SQL的常見關系數據庫管理系統(tǒng)有:Oracle、Sybase、MicrosoftSQLServer、Access等等。
2 系統(tǒng)功能模塊圖
根據需求分析,設計系統(tǒng)的功能模塊圖如下,本圖體現了系統(tǒng)的各個模塊間的關系,也體現了層次結構。
3系統(tǒng)設計
3.1界面設計
本系統(tǒng)主要面向一個企業(yè)內部員工,所以在界面設計中采用了簡潔、大方和方便用戶輸入的設計,而沒有對界面做圖像處理。有代表性的系統(tǒng)首界面如下圖2所示。
系統(tǒng)首界面很好的展現了本系統(tǒng)界面設計特點,簡潔、大方但很實用。在界面設計中主要用到文本控件、標簽控件、下拉文本框控件、按鈕控件和DataGrid控件。其中下拉控件用的很多,因為它能省去用戶輸入操作;而DataGrid是一個顯示數據很好的控件,并且它還能很方便實現對數據的操作。
3.2數據庫設計
數據庫設計(DatabaseDesign)是指對于一個給定的應用環(huán)境,構造最優(yōu)的數據庫模式,使之能夠有效地存儲數據,滿足各種用戶的應用需求(信息要求和處理要求)。
本系統(tǒng)主要的數據庫表如表1所示:
3.3主要功能實現
(1)登錄界面的實現,為了增加數據安全性,本系統(tǒng)使用兩層安全驗證。第一層為數據庫安全驗證,如圖3所示。在本界面要求輸入服務器名、用戶名和密碼,當用戶名和密碼不正確時,說明用戶沒有登錄數據庫的權限。當用戶通過測試連接時,就進入第二層數據驗證,也是表數據驗證,如圖4所示。在本界面要求輸入用戶名和密碼,當用戶名和密碼不正確時,說明用戶在表中沒有記錄。而當用戶名和密碼正確時就進入了系統(tǒng)。
本部分用到的數據庫操作類主要有SqlConnection和SqlCommand。測試連接關鍵代碼如下:
conn_str=string.Format("server={0};database=huyueliang;uid={1};pwd={2}",this.textBox1.Text.Trim(),this.textBox2.Text.Trim(),this.textBox3.Text.Trim());
而登錄方法Login關鍵代碼如下:
SqlConnectionconn=newSqlConnection(conn_str);
SqlCommandcomm=conn.CreateCommand();
comm.CommandText="execLogin_User@s0,@s1";
comm.Parameters.Add("@s0",SqlDbType.VarChar);
comm.Parameters.Add("@s1",SqlDbType.VarChar);
comm.Parameters["@s0"].Value=usertxtbox.Text.Trim();
comm.Parameters["@s1"].Value=pwdtxtbox.Text.Trim();
以上是要執(zhí)行的存儲過程和給存儲過程參數賦值。以下是執(zhí)行存儲過程代碼并判斷用戶是否存在。
conn.Open();
objectname=comm.ExecuteScalar();
if(name!=null&&name.ToString()==usertxtbox.Text.Trim()){
this.Visible=false;
Form1f=newForm1();
f.Show();
}
else{
MessageBox.Show("用戶名和密碼不正確!","提示",MessageBoxButtons.OK,MessageBoxIcon.Question);}
(2)圖片獲取功能,因為服裝企業(yè)有些數據是圖片形式的,比如款式、繡花印花等,所以本系統(tǒng)還提供了把圖片讀取到數據庫的功能。它是通過在圖片框上右擊鼠標按鈕,彈出文本菜單選項,點擊“獲取圖片”按鈕實現的。它的操作非常簡單、方便。
本部分主要用到get_picture方法,而所用類主要是FileStream。其中關鍵代碼如下:
if(this.openFileDialog1.ShowDialog()==DialogResult.OK)
FileStreamfs=newFileStream(this.openFileDialog1.FileName,FileMode.Open,FileAccess.Read);
以上代碼是為文件流設置讀取路徑,下面的代碼是把數據寫入字節(jié)數據中:
img[0]=newbyte[fs.Length];
fs.Read(img[0],0,Convert.ToInt32(fs.Length));
(3)文件鏈接功能,為了方便管理和查詢與打樣單或訂單有關的文件,本系統(tǒng)在打樣單和訂單界面提供了文件鏈接功能。實現過程是,在后臺有個FILE表存文件的類別、地址等信息,在前臺用到了DataGrid和Button控件,如圖5所示。
此處代碼實現的過程主要用到了SqlConnection、SqlCommand、DataRow等類。其中數據的增、刪和改用到了一些自定義方法,而查看用到的代碼如下:
ProcessP=newProcess();
P.StartInfo.FileName=this.dataGrid1[this.dataGrid1.CurrentRowIndex,1].ToString();
P.Start();
(4)查詢功能,這個主要是指客戶管理、工廠管理、供應商管理和外貿公司管理界面中的查詢功能。當信息量很大的時候,通過這功能能更快、更準的找到所需信息。它的運行流程是在文本框中輸入查詢條件值,點擊“查詢”按鈕,DataGrid就會把符合條件的數據顯示出來。它的前臺實現用到TextBox、Lable、Button和DataGrid控件。
后臺實現顯示聯系人信息關鍵代碼如下:
foreach(DataRowrowintable.Rows){
if(row.RowState!=DataRowState.Deleted){
foreach(DataTabletabinLXR_Set.Tables){
boolgate=true;
if(tab.TableName==row[0].ToString()){
foreach(DataRowrintab.Rows)
if(r[0].ToString()==this.textBox2.Text.Trim()){
gate=false;break;
}
if(gate)
row.Delete();
break;}}}}
this.dataGrid1.DataSource=table;
(5)數據庫備份和恢復功能,為了更好的保護數據,本系統(tǒng)提供了數據庫備份和恢復功能。具體實現過程如下:
在窗體中用到Lable、TextBox和Button、Timer、OpenDialog控件。時間顯示功能用到Timer控件的Interval屬性,它是每隔一秒觸發(fā)一次Tick事件。而備份和恢復功能的實現主要用到SqlConnection、SqlCommand類。數據庫備份實現代碼如下:
在窗體中用到Lable、TextBox和Button、Timer、OpenDialog控件。時間顯示功能用到Timer控件的Interval屬性,它是每隔一秒觸發(fā)一次Tick事件。而備份和恢復功能的實現主要用到SqlConnection、SqlCommand類。數據庫備份實現代碼如下:
stringpath=this.textBox1.Text+System.DateTime.Now.ToShortDateString();
SqlConnectionconn=myData.conn;
SqlCommandcomm=conn.CreateCommand();
";
conn.Open();
comm.ExecuteNonQuery();
而數據庫恢復和備份代碼相似,主要是SQL語句不同,數據庫恢復SQL語句如下:
comm.CommandText=@"USEmaster
ALTERDATABASEhuyueliangSETOFFLINEWITHROLLBACKIMMEDIATE
RESTOREDATABASEhuyueliangFROMDISK='"+path+"'ALTERDATABASEhuyueliangSETONLINEWITHROLLBACKIMMEDIATE";
4結論
由于時間的關系,本系統(tǒng)存在很多不足的地方,比如設計的界面不是很美觀,但本系統(tǒng)也有很多優(yōu)點,它把以前服裝企業(yè)復雜的跟單管理、采購管理、客戶信息管理、工廠信息管理等,集合到一個系統(tǒng)中統(tǒng)一管理,使管理清晰明了;把以前復雜的表格操作轉化成用計算機進行操作,簡化了人們的工作。
參考文獻
[1]陳鐘,劉強,張高.C#編程語言程序設計與開發(fā)[M].北京:清華大學出版社,2006.
[2]王華杰,黃山.精通C#數據庫編程[M].北京:科學出版社,2003.
[3]李春葆,曾慧.SQLServer2000應用系統(tǒng)開發(fā)教程[M].北京:清華大學出版社,2006.
[4]梁瑾,王咸偉,陳虹.客戶管理系統(tǒng)的設計與實現[J].電腦與信息技術,2008.
轉載請注明來自:http://www.jinnzone.com/shichangyingxiaolw/3579.html
下一篇:淺析遼寧城市營銷中所存在的問題