客戶資料管理系統(tǒng)_第1頁
客戶資料管理系統(tǒng)_第2頁
客戶資料管理系統(tǒng)_第3頁
客戶資料管理系統(tǒng)_第4頁
客戶資料管理系統(tǒng)_第5頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

。要於席檢敏r枝粉崗埃{Windows項(xiàng)目開發(fā)實(shí)訓(xùn)》實(shí)訓(xùn)報(bào)告客戶資料管理系統(tǒng)說明書姓名:班級(jí):小組成員:指導(dǎo)教師:完成日期:目錄第一章引言1.1設(shè)計(jì)目的1.2開發(fā)工具1.3VisualStudio2005介紹第二章需求分析2.1需求描述2.2功能描述第三章總體設(shè)計(jì)3.1設(shè)計(jì)概述3.2軟件設(shè)計(jì)分析第四章界面設(shè)計(jì)4.1主界面設(shè)計(jì)第五章代碼設(shè)計(jì)5.1添加客戶事件代碼(我的模塊)5.2修改客戶事件代碼(我的模塊)5.3查詢客戶事件代碼(我的模塊)第六章測(cè)試6.1功能測(cè)試第七章總結(jié)第一章引言1.1設(shè)計(jì)目的在C#的基礎(chǔ)上完成Windows項(xiàng)目開發(fā)實(shí)訓(xùn)1.2開發(fā)工具VS2005、SQL20031.3VisualStudio2005介紹今天,企業(yè)要獲得成功,就必須正視構(gòu)建和維護(hù)日益復(fù)雜的信息技術(shù)(IT)解決方案的需求。此外,他們還要借助于新技術(shù)來拓展業(yè)務(wù)功能并開發(fā)全新的業(yè)務(wù)機(jī)會(huì)。自IT部門接受了技術(shù)支持任務(wù)的那一刻起,他們便成為絕大部分業(yè)務(wù)策略中的關(guān)鍵角色。企業(yè)當(dāng)然希望能從他們?cè)贗T項(xiàng)目的投資中獲得最大利潤(rùn),這就意味著IT部門需要在越來越大的壓力下多快好省地完成工作。對(duì)更高成本效益的追求使得IT項(xiàng)目的預(yù)見性需求日漸增加。然而,這樣做通常造成繁瑣的過程和對(duì)成本消耗的監(jiān)控,這只不過是將費(fèi)用轉(zhuǎn)嫁到不同的問題。付出的代價(jià)是開發(fā)機(jī)會(huì)的時(shí)間投入以及膨脹的IT預(yù)算。vs2005是基于.NET2.0框架的。第二章需求分析2.1需求描述實(shí)施客戶資料系統(tǒng)的目的無非是留住更多的客戶,鞏固發(fā)展自己的競(jìng)爭(zhēng)優(yōu)勢(shì)。如果想要實(shí)現(xiàn)這一目標(biāo),那么軟件本身就必須足夠靈活,才可以應(yīng)付常規(guī)和非常規(guī)的需要。而中小企業(yè)在分析這些需求的過程中,首先應(yīng)當(dāng)切實(shí)認(rèn)識(shí)到自己缺乏大型企業(yè)取之不盡的資源優(yōu)勢(shì)。2.2功能描述完成的程序應(yīng)該實(shí)現(xiàn)以下功能:1)添加功能實(shí)現(xiàn)客戶的添加管理2)刪除功能實(shí)現(xiàn)客戶資料的刪除管理3)修改功能實(shí)現(xiàn)客戶資料的修改管理4)取消功能完成程序安全退出第三章總體設(shè)計(jì)3.1設(shè)計(jì)概述用一個(gè)主窗體來承接數(shù)據(jù)庫,然后再在這個(gè)窗體上添加一些控件,比如,添加、刪除、修改等這些方便客戶資料管理數(shù)據(jù),用一個(gè)登陸界面來進(jìn)入這個(gè)主窗體,來實(shí)行這三種功能。3.2軟件設(shè)計(jì)分析主窗體的布局,我們添加了DataGridView控件,然后再在該控件的右邊添加了Button等實(shí)現(xiàn)功能的按鈕,在登錄界面里添加了Label控件、TextBox控件,來實(shí)現(xiàn)進(jìn)入主窗體的登錄。第四章界面設(shè)計(jì)4.1主界面設(shè)計(jì)1)主界面的設(shè)計(jì)如下圖:2)登錄界面:3)添加功能界面:所雇行業(yè)i職添加客戶信息□回區(qū)I客戶等級(jí)客戶職位4)修改功能界面:5)刪除功能界面:客戶??蛻裘Q登錄名遍子郵箱所屈行亦客戶職位聯(lián)系電話33333345312332ini12312人事部21312332333333480aaacom人事部111111111333333486小孩baby信息部aaa11111111333333487馬林林lima11人事部1111333333489aaaaalll@人事部aaann333333492asdfsdf34545sd£test@164.com人事部2222333333499yaojinSEBT確認(rèn)11111333333503aaassdfthomaswd111111132吉任萌flUIRGoTpjz—*nn其的要?jiǎng)h除貝工張一的故嗎333333510thomasthomasl11111333333512111inE..........鞋..........』|取消|12311333333513tsdfkjsdkdkdkjf、111111333333538t212311媒樂部11nn333333540aaallllllllaaaaaaal11人事部aaaaaa11111111111333333552trtrtrtrtrtrtrtttrtrt3232633人事部1111113333335551321213211@1.1人事部13211321-3213|333333556張三111111132132032132...人事部總經(jīng)理1321-3213213211*客戶列表第五章代碼設(shè)計(jì)5.1添加客戶事件代碼(我的模塊)privatevoidFrmNewEmployee_Load(objectsender,EventArgse)(try(//將部門列表數(shù)據(jù)填充內(nèi)存數(shù)據(jù)集的Depart表daDepart.Fill(dsDepart,"Depart");//設(shè)置部門下拉列表框的數(shù)據(jù)源為上述Depart表cbDepart.DataSource=dsDepart.Tables["Depart"];//設(shè)置部門下拉列表框的顯示字段為DeptNamecbDepart.DisplayMember="DeptName";//設(shè)置部門下拉列表框的值字段為DeptIDcbDepart.ValueMember="DeptID";}catch(MessageBox.Show("讀取部門列表數(shù)據(jù)出錯(cuò),可能無法添加客戶。","錯(cuò)誤",MessageBoxButtons.OK,MessageBoxIcon.Error);return;}}privatevoidbtnOK_Click(objectsender,EventArgse){//if(!ValidateChildren())return;//MessageBox.Show("OK!”);//此句僅用于測(cè)試if(!this.ValidateChildren()){//設(shè)為None,窗體將不會(huì)關(guān)閉this.DialogResult=DialogResult.None;return;}//打開數(shù)據(jù)庫連接,并給參數(shù)對(duì)象賦值cmdInsertEmp.Connection.Open();cmdInsertEmp.Parameters["@Name"].Value=tbName.Text;cmdInsertEmp.Parameters["@LoginName"].Value=tbLogin.Text;cmdInsertEmp.Parameters["@Password"].Value=tbPassword.Text;cmdInsertEmp.Parameters["@Birthday"].Value=Convert.ToDateTime(tbBirthday.Text);cmdInsertEmp.Parameters["@Email"].Value=tbEmail.Text;cmdInsertEmp.Parameters["@Deptid"].Value=cbDepart.SelectedValue;cmdInsertEmp.Parameters["@Title"].Value=tbTitle.Text;cmdInsertEmp.Parameters["@EmployeeLevel"].Value=numLevel.Value;cmdInsertEmp.Parameters["@BasicSalary"].Value=tbSalary.Text;cmdInsertEmp.Parameters["@Telephone"].Value=maskedTextBox1.Text;cmdInsertEmp.Parameters["@SelfINtro"].Value=tbSelfIntro.Text;cmdInsertEmp.Parameters["@OnboardDate"].Value=DateTime.Now;cmdInsertEmp.Parameters["@VacationRemain"].Value=0;//暫且不對(duì)照片列進(jìn)行處理,設(shè)為空值,如果需要處理,用下頁的代碼代替cmdInsertEmp.Parameters["@PhotoImage"].Value=Convert.DBNull;//處理照片數(shù)據(jù)ImageConverteric=newImageConverter();byte[]photoByteArray=ic.ConvertTo(pbPhoto.Image,typeof(byte[]))asbyte[];if(photoByteArray!=null){cmdInsertEmp.Parameters["@PhotoImage"].Value=photoByteArray;}else{cmdInsertEmp.Parameters["@PhotoImage"].Value=Convert.DBNull;}try{cmdInsertEmp.ExecuteNonQuery();MessageBox.Show("成功修改客戶信息。","成功”,MessageBoxButtons.OK,MessageBoxIcon.Information);}catch(System.Data.SqlClient.SqlExceptionsqlex){//SqlServer錯(cuò)誤號(hào)代表唯一約束沖突,說明登錄名重復(fù)。if(sqlex.Number==2627)MessageBox.Show("登錄名不能重復(fù)。","錯(cuò)誤”,MessageBoxButtons.OK,MessageBoxIcon.Error);elseMessageBox.Show("讀取數(shù)據(jù)庫錯(cuò)誤。","錯(cuò)誤”,MessageBoxButtons.OK,MessageBoxIcon.Error);this.DialogResult=DialogResult.None;catch{MessageBox.Show("創(chuàng)建客戶出錯(cuò),請(qǐng)檢查輸入數(shù)據(jù)格式是否正確。",

"錯(cuò)誤”,MessageBoxButtons.OK,MessageBoxIcon.Error);this.DialogResult=DialogResult.None;}finally{cmdInsertEmp.Connection.Close();}this.Close();}修改客戶代碼:privatevoidFrmEditEmp_Load(objectsender,EventArgse){try{//將部門列表數(shù)據(jù)填充內(nèi)存數(shù)據(jù)集的Depart表daDepart.Fill(dsDepart,"Depart");//設(shè)置部門下拉列表框的數(shù)據(jù)源為上述Depart表cbDepart.DataSource=dsDepart.Tables["Depart"];//設(shè)置部門下拉列表框的顯示字段為DeptNamecbDepart.DisplayMember="DeptName";//設(shè)置部門下拉列表框的值字段為DeptIDcbDepart.ValueMember="DeptID";}catch{MessageBox.Show("讀取部門列表數(shù)據(jù)出錯(cuò),可能無法添加員工。",

"錯(cuò)誤",MessageBoxButtons.OK,MessageBoxIcon.Error);return;}System.Data.SqlClient.SqlDataReaderdr=null;try{cmdSelectEmp.Connection.Open();cmdSelectEmp.Parameters["@EmpID"].Value=EmployeeID;dr=cmdSelectEmp.ExecuteReader();if(dr.Read()){tbName.Text=(string)dr["Name”];tbLogin.Text=(string)dr["LoginName"];tbPassword.Text=(string)dr["Password"];tbBirthday.Text=((DateTime)dr["Birthday"]).ToString("yyyy年MM月dd日");tbEmail.Text=(string)dr["EMail"];cbDepart.SelectedValue=(int)dr["Deptid"];tbTitle.Text=(string)dr["Title"];numLevel.Value=(int)dr["EmployeeLevel"];tbSalary.Text=(string)dr["BasicSalary"];tbPhone.Text=dr["Telephone"]asstring;tbSelfIntro.Text=dr["SelfIntro"]asstring;byte[]photobyte=dr["PhotoImage"]asbyte[];if(photobyte!=null){System.IO.MemoryStreamphoto=newSystem.IO.MemoryStream(photobyte);pbPhoto.Image=newBitmap(photo);}}}catch{//MessageBox.Show(”讀取用戶數(shù)據(jù)出錯(cuò)!");}finally{dr.Close();cmdSelectEmp.Connection.Close();}}privatevoidbtnUpdate_Click(objectsender,EventArgse){//激發(fā)窗體內(nèi)所有控件進(jìn)行驗(yàn)證//如果驗(yàn)證不通過,不退出,繼續(xù)要求輸入if(!this.ValidateChildren()){//設(shè)為None,窗體將不會(huì)關(guān)閉this.DialogResult=DialogResult.None;return;cmdUpdateEmp.Connection.Open();cmdUpdateEmp.Parameters["@EmpID"].Value=EmployeelD;cmdUpdateEmp.Parameters["@Name"].Value=tbName.Text;cmdUpdateEmp.Parameters["@LoginName"].Value=tbLogin.Text;cmdUpdateEmp.Parameters["@Password"].Value=tbPassword.Text;cmdUpdateEmp.Parameters["@Birthday"].Value=Convert.ToDateTime(tbBirthday.Text);cmdUpdateEmp.Parameters["@Email"].Value=tbEmail.Text;cmdUpdateEmp.Parameters["@Deptid"].Value=cbDepart.SelectedValue;cmdUpdateEmp.Parameters["@Title"].Value=tbTitle.Text;cmdUpdateEmp.Parameters["@EmployeeLevel"].Value=numLevel.Value;cmdUpdateEmp.Parameters["@BasicSalary"].Value=tbSalary.Text;cmdUpdateEmp.Parameters["@Telephone"].Value=tbPhone.Text;cmdUpdateEmp.Parameters["@SelfINtro"].Value=tbSelfIntro.Text;//將圖片數(shù)據(jù)轉(zhuǎn)換成二進(jìn)制ImageConverteric=newImageConverter();byte[]photoByteArray=ic.ConvertTo(pbPhoto.Image,typeof(byte[]))asbyte[];if(photoByteArray!=null)cmdUpdateEmp.Parameters["@PhotoImage"].Value=photoByteArray;elsecmdUpdateEmp.Parameters["@PhotoImage"].Value=Convert.DBNull;try{cmdUpdateEmp.ExecuteNonQuery();MessageBox.Show("成功修改員工信息。","成功”,MessageBoxButtons.OK,MessageBoxIcon.Information);}catch{MessageBox.Show("修改員工信息錯(cuò)。","錯(cuò)誤”,MessageBoxButtons.OK,MessageBoxIcon.Error);this.DialogResult=DialogResult.None;}finally{cmdUpdateEmp.Connection.Close();刪除功能:privatevoidbutton3_Click(objectsender,EventArgse){〃彈出對(duì)話框,確認(rèn)用戶要?jiǎng)h除當(dāng)前選中的員工。stringname=grdEmployee.CurrentRow.Cells[1].Value.ToString();if(DialogResult.OK!=MessageBox.Show("真的要?jiǎng)h除員工”+name+”的數(shù)據(jù)嗎”,"確認(rèn)",MessageBoxButtons.OKCancel))return;//獲取選定員工的編號(hào)intempID=(int)grdEmployee.CurrentRow.Cells[0].Value;try{//指定參數(shù)值,以刪除指定員工號(hào)的數(shù)據(jù)cmdDeleteEmp.Parameters["@EmpID"].Value=empID;//打開數(shù)據(jù)庫連接cmdDeleteEmp.Connection.Open();//執(zhí)行刪除操作cmdDeleteEmp.ExecuteNonQuery();}catch{MessageBox.Show("刪除員工出錯(cuò)!");}finally{//關(guān)閉數(shù)據(jù)庫連接cmdDeleteEmp.Connection.Close();}//清除DataSet中的數(shù)據(jù),以重新加載數(shù)據(jù)dsEmployee.Clear();BindGrid();}查詢客戶代碼:privatevoidbtnUpdate_Click(objectsender,EventArgse){EmployeeID=Convert.ToInt32(tbserch.Text);cmdSelectEmp.Parameters["@EmpID"].Value=EmployeelD;System.Data.SqlClient.SqlDataReaderdr=null;try{cmdSelectEmp.Connection.Open();cmdSelectEmp.Parameters["@EmpID"].Value=EmployeeID;dr=cmdSelectEmp.ExecuteReader();if(dr.Read()){tbName.Text=(string)dr["Name”];tbLogin.Text=(string)dr["LoginName"];tbPassword.Text=(string)dr["Password"];tbBirthday.Text=((DateTime)dr["Birthday"]).ToString("yyyy年MM月dd日");tbEmail.Text=(string)dr["EMail"];cbDepart.SelectedValue=(int)dr["Deptid"];tbTitle.Text=(string)dr["Title"];numLevel.Value=(int)dr["EmployeeLevel"];tbSalary.Text=(string)dr["BasicSalary"];tbPhone.Text=dr["Telephone"]asstring;tbSelfIntro.Text=dr["SelfIntro"]asstring;byte[]photobyte=dr["PhotoImage"]asbyte[];if(photobyte!=null){System.IO.MemoryStreamphoto=newSystem.IO.MemoryStream(photobyte);pbPhoto.Image=newBitmap(photo);}}}catch{//MessageBox.Show("讀取客戶數(shù)據(jù)出錯(cuò)!");}finally{dr.Close();cmdSelectEmp.Connection.Close();第六章測(cè)試添加客戶功能:保存放棄oxButtbiig.OKCsileI))自動(dòng)窗【工作經(jīng)歷文件囚客尸名稱出生年..目電子郵件所屈行業(yè)客尸職位基本薪資1988年11月11日213210313.com100000客尸編號(hào)555555登錄密碼555555客尸等藪0Q成功修改客戶信息口命令窗口聯(lián)系電話2312-31321321員工基本信息輸入界面編輯(£)視圖叫項(xiàng)目口生成追)調(diào)試但)工具(I)窗口頂倔I酵首歌沒宥什么反?cq'"'--~二一3,冬雪之只:計(jì)]食FrmNewEiriployee.cs[設(shè)計(jì)]3ects&ruler,EventArgs&)張三上傳照片□是否打印報(bào)蜀堂V”(正在運(yùn)行)-■icrosof'tVisualStudio圜添加客戶信息名稱添加后:Employeerii:anageirient.rrmListrmp±oy&e333333489333333499test@164.com333333510333333553213211231321214321thamaswdthorn:as1ilkilkjt123456999999min3213213221231thornas@thorna...dj£j@djk娛樂部信息部人事部乂尊部人事部螟樂部一人孳部立事部行政.部立事部123123@21231.1111-111121321LI553-11556518231320231.3211312@12.121213210313.com立事部立事部21321231321-32132132立事部213213212121-211231212312-31321321修改客戶功能:B他性修開明己系電話添加員工修改員工客戶等如聯(lián)系電活日回區(qū)]FraLim動(dòng)窗口文件虞)編輯年視圖⑦項(xiàng)目d)生成?調(diào)試魚)工具(I)■市警pee.cs[設(shè)計(jì)]1111111113253-1155651811-111121-3213213231-3213213221-21123121卷臂[刪除員工]吐均-I取消I照片與自傳歡迎您使用修改功能,??客戶編號(hào)555555登錄密碼5555551000001231-3213員工信息客戶名稱李四1988年11月11日上傳脫世工作經(jīng)歷.i)成功修改員工信息。確定部□情息所屆行業(yè)人事部客戶職位暨213210313.com-licrosoftVisualStudiog修改客戶信息3333335T0|張三155555521321@313.com人爭(zhēng)部2312-31321321修改后:刪除客戶功能:刪除前:thornaswdthomas■ik.ikitLJ1ZIJ12.121te

溫馨提示

  • 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)論