銀行定期存儲管理系統文檔樣本_第1頁
銀行定期存儲管理系統文檔樣本_第2頁
銀行定期存儲管理系統文檔樣本_第3頁
銀行定期存儲管理系統文檔樣本_第4頁
銀行定期存儲管理系統文檔樣本_第5頁
已閱讀5頁,還剩22頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

學院:管理科學與工程第一實驗小組成員:劉剛、何娟、姜信俠、吳志華、查正功、朱路、樊宇新TOC\o"1-2"\h\z一項目規劃和需求分析 21.開發背景 22.組織構造 23.需求分析 34.人力規定 3二系統分析 31.系統安全性分析 32.業務流程圖(TransactionFlowDiagram,TFD) 43.數據流程圖(DataFlowDiagram,DFD) 44.數據字典(DataDictionary,DD) 5三系統設計 61.系統功能設計 62.概念設計 63.物理設計 7四系統實行 71.開發工具選取 72.程序設計 83.系統測試 18一項目規劃和需求分析1.開發背景在計算機技術和網絡技術沒有得到全面普及此前,各公司和行政單位,在辦工時,都要記錄大量數據,這些數據還要保存到文檔里,不但消耗大量腦力,還要占據大量空間。特別是銀行工作人員在辦理各項業務時,不但要需要大量計算和記錄,并且需要數據精確、精密。因此,工作人員在解決業務時,容易浮現不可避免錯誤。隨著計算機技術和網絡技術迅速發展,電腦和INTERNET進入了個行政公司,甚至尋常家庭。因而,編寫一種解決銀行定期管理應用系統是很有必要。進行計算機計算和管理儲戶信息,銀行存款等各項數據。避免人類因疲倦或者其她因素導致錯誤工作。2.組織構造銀行定期存儲管理系銀行定期存儲管理系統打印利息子系統帳號驗證子系統記錄子系統掛失子系統取款子系統存款子系統登錄子系統打印利息子系統帳號驗證子系統記錄子系統掛失子系統取款子系統存款子系統登錄子系統圖1組織構造3.需求分析該系統存儲如下信息:每筆存款儲戶信息和辦理該筆存款營業員信息,這些信息存儲于存款文獻中。其中儲戶信息涉及:帳號,姓名,密碼,地址,儲種(定期1年,3年,5年),本金,收儲日期,與否已經掛失和掛失日期。營業員信息涉及:接待該儲戶營業員姓名和工號。

每筆存款儲戶信息和辦理該筆存款營業員信息,這些信息存儲于取款文獻中。

該系統功能規定如下:

(1)創立存款文獻(第一次輸入儲戶信息時);

(2)創立取款文獻(第一次辦理取款時);

(3)接受儲蓄:接受儲戶和營業員信息并將以上信息添加到存款文獻中;

(4)解決掛失:依照儲戶提供帳號,姓名,密碼,地址,儲種,儲金核查有無此項存款,有則對帳號加掛失標記;否則,則需判斷與否領走還是未發生過這筆存款。

(5)辦理取款:<1>依照儲戶提供存款單(上面有帳號,姓名,儲種,本金,日期)判斷與否到期,檢查有否掛失,依照儲戶提供密碼判斷與否對的。若判斷通過,執行如下三步。<2>取款文獻中添加這筆存款儲戶和營業員所有信息和取款日期,以便復查。<3>打印利息單,涉及:帳號,姓名,儲種,起息日期,支取日期,本金,利息和支取金額。利息計算如下:1年到期利息7%,3年8%,5年9%;每逾期一天,每天利率0.05%;若提前支取,每天利率0.05%。<4>在存款文獻中對這筆存款刪除。4.人力規定劉剛(組長):將各成員做各子系統數據匯總,建立數據庫文獻,并將儲戶信息和營業員信息保存在數據庫文獻當中。何娟(副組長):完畢各項文檔編制,涉及業務流程圖,數據流程圖,數據字典,系統文檔編寫。朱路:完畢“存款子系統”設計任務;吳志華:完畢“帳號驗證子系統”設計任務和完畢顧客信息和營業員信息類定義和函數編寫;查正功:完畢“打印利息子系統”和“登錄子系統”設計任務;姜信俠:完畢“掛失子系統”設計任務;樊宇新:完畢“記錄子系統”設計任務。二系統分析1.系統安全性分析使用本系統人員可以劃提成系統管理員,營業員,顧客三類,系統管理員對系統擁有最高權限,可以修改,設定所有人員密碼和權限,重要是對該系統維護和異常解決。營業員和顧客是該系統重要操作人員,營業員重要是每天開始工作時候啟動該系統,監督顧客存款和取款等操作。顧客只有輸入對的帳號和密碼,才可以進行取款和掛失操作。儲戶存折存折鈔票存款解決取款解決存折存儲戶存折存折鈔票存款解決取款解決存折存取款業務分類存折存折利息文獻記錄文獻營業員圖2業務流程圖3.數據流程圖(DataFlowDiagram,DFD)儲戶庫儲戶庫儲戶庫P5修改營業員庫和儲戶庫儲戶庫P5修改營業員庫和儲戶庫P4檢查儲戶信息不存在D08記錄銀行營業員銀行營業員營業員庫 存款D06存在D07添加D10營業員庫記錄P2檢查掛失信息P2檢查掛失信息P1檢查儲戶信息P3修改營業員庫和儲戶庫取款D01存在D02P3修改營業員庫和儲戶庫儲戶庫無掛失D03刪除D04儲戶庫記錄營業員庫添加D05營業員庫儲戶庫儲戶庫記錄儲戶庫儲戶庫圖3數據流程圖4.數據字典(DataDictionary,DD)數據元素系統名:銀行管理系統系統 編號:E——01名稱:顧客帳號 別名:CNO數據值類型:離散類型:字符型長度:20闡明:每個顧客有一種唯一帳號數據元素系統名:銀行管理系統系統 編號:E——02名稱:顧客密碼 別名:CPASSWORD數據值類型:離散類型:字符型長度:20闡明:每個顧客密碼可以自己設立數據元素系統名:銀行管理系統系統 編號:E——03名稱:顧客本金 別名:CMONEY數據值類型:離散類型:整數型長度:20數據流系統名:銀行管理系統系統 編號:F——01名稱:顧客信息 別名:CINFOR數據值類型:離散類型:字符型來源:顧客存款,取款,掛失表 去向:顧客信息數據流構造:顧客信息={帳號+密碼+本金+儲種+利息+掛失}數據元素系統名:銀行管理系統系統 編號:D——02名稱:存款表 別名:CPASSWORD存儲組織:二維表主鍵:帳號記錄構成:字段名帳號密碼本金儲種利息掛失字段長度20201510101闡明:用此存儲顧客存款信息圖4各種數據字典其她數據元素字典,數據流字典,數據存儲字典略。三系統設計1.系統功能設計<1>登錄子系統為了增強數據安全性,設立了該系統,只有營業員能使用,營業員通過輸入對的帳號和密碼才干使用。以防她人篡改數據。<2>存款子系統接受儲戶與營業員信息,并將以上信息添加到存款文獻中。<3>取款子系統先通過帳號驗證子系統證明顧客信息對的性,輸入對的信息才干進行取款操作。然后,在取款文獻中添加儲戶與營業員取款信息,便便復查。通過打印利息子系統打印利息單。最后,在存款中刪除被取款項。<4>掛失子系統依照儲戶信息提供帳戶信息,檢查有無此項存款,有則對此帳號加入掛失標記。若無此款項,需判斷存款與否被領走還是未發生過這筆款項。<5>記錄子系統記錄每天到期儲金數。儲戶庫姓名帳號存期金額辦理業務營業員庫姓名工號儲戶庫姓名帳號存期金額辦理業務營業員庫姓名工號存款取款,N,M,N,M圖5概念設計3.物理設計存款表(cq)字段名稱字段類型字段長度主鍵可否為空姓名文本20NOTNULL帳號文本20YNOTNULL密碼文本20NOTNULL本金數字15NOTNULL儲種數字1NOTNULL掛失數字1NOTNULL營業員姓名文本20NOTNULL營業員工號文本20NOTNULL日期數字10NOTNULL利息數字15NOTNULL圖6存款物理設計取款(qk)字段名稱字段類型字段長度主鍵可否為空姓名,文本20NOTNULL帳號文本20YNOTNULL本金數字15NOTNULL儲種數字1NOTNULL利息數字15NOTNULL掛失數字1NOTNULL圖7取款物理設計四系統實行1.開發工具選取前端軟件開發工具選取本系統選取可視化面向對象程序設計語言VISUALC++作為前端開發工具,VISUALC++具備強大數據庫功能,豐富對話框界面,BMP資源,重要是它面向對象技術,使用MFC封裝了大量類,也可以在她們基本上,繼承和派生出符合自己運用類。使用ADO技術,可以較好和數據庫文獻連接。后臺數據庫選取MicrosoftAccess是一種桌面數據庫系統,特別適合小型公司或者存儲數據不大數據庫使用,更重要一點是,她簡樸易懂,操作起來與Microsoftword很象,使用起來比較上手,并且不需要代碼編寫,就可以創立一種數據庫文獻。軟件開發平臺選取基于VISUALC++和Microsoftaccess對運營環境規定,選取WindowsXP以上操作系統作為系統開發和運營平臺。2.程序設計登陸子系統<1>登陸界面<2>代碼在工程項目CbanksystemApp.cpp文獻中BOOLCBanksystemApp::InitInstance()函數開始某些插入如下代碼:intncount=0;while(ncount<3){if(dlg5.DoModal()==IDOK) if((strcmp(dlg5.m_DLZHANGHAO,"liugang")!=0)||(strcmp(dlg5.m_DLMIMA,"liugang")!=0)) {MessageBox(NULL,"帳號或密碼口令錯誤","錯誤信息",MB_OK|MB_ICONERROR); ncount++; } elsebreak; else{ returnFALSE; }}if(ncount>=3){MessageBox(NULL,"輸入超過3次,請退出","錯誤信息",MB_OK|MB_ICONERROR);returnFALSE;}ncount變量是用來記錄登陸次數,如果超過3次以上,系統會彈出消息框(2)主界面如果登陸成功,就可以進入主界面了<1>主界面<2>代碼主界面是單文檔,是MFC向導自動生成.由于該系統使用ADO技術和數據庫文獻連接,因此要在#include"stdafx.h"中加入#import"C:\ProgramFiles\CommonFiles\System\ado\msado15.dll"no_namespace\rename("EOF","adoEOF")rename("BOF","adoBOF"),然后在BOOLCBanksystemApp::InitInstance()函數初始化COM組件,加入函數::CoInitialize(NULL);(3)存款子系統通過點擊菜單欄上“操作”->”取款”(或直接按)就可以進入存款對話框。<1>存款界面:<2>代碼一方面在CBanksystemView.cpp文獻中加入#include"SAVE.h",由于要在視圖里面調用它對象,然后為”取款”添加消息解決函數,調用該對話框:voidCBanksystemView::OnSave(){CSAVE dlg; dlg.DoModal();}彈出存款對話框后來:顧客可以錄入自己信息進行存款操作.通過點擊”擬定”按鈕。如果存儲成功會彈出:voidCSAVE::OnOK(){UpdateData(TRUE);if(m_CNO.IsEmpty()||m_pswd.IsEmpty()) { MessageBox("基本信息不能為空!"); return; }intlost=0;doublelixi=1;total2=total2+m_CMONEY;if(m_CCHOICE==1) lixi=m_CMONEY*1*0.00198*(1-0.2); elseif(m_CCHOICE==2)lixi=m_CMONEY*2*0.00225*(1-0.2); elseif(m_CCHOICE==3)lixi=m_CMONEY*3*0.00252*(1-0.2); elseif(m_CCHOICE==5)lixi=m_CMONEY*5*0.00279*(1-0.2); else{MessageBox("銀行不辦理該項業務,請輸入對的儲種1||2||3||5");return;}OnInitADOConn(); CStringsql; sql.Format("insertintocq(姓名,帳號,密碼,本金,儲種,掛失,營業員姓名,營業員工號,日期,利息)\ values('%s','%s','%s',%d,%d,%d,'%s','%s',%d,%f)",m_CNAME,m_CNO,m_pswd,m_CMONEY,m_CCHOICE,lost,m_ANAME,m_CANO,m_DATE,lixi); m_pConnection->Execute((_bstr_t)sql,NULL,adCmdText); m_pConnection->Close(); MessageBox("存款成功,歡迎下次使用"); CDialog::OnOK();}(4)存款&&掛失&&利息系統通過點擊菜單欄上”操作”->”取款&&掛失&&利息”(或者直接按)就可以進入存款對話框。<1>存款&&掛失&&利息界面<2>代碼一方面在CBanksystemView.cpp文獻中加入#include"QUKUAN.h",由于要在視圖里面調用它對象,然后為”取款”添加消息解決函數,調用該對話框:voidCBanksystemView::OnQukuan(){ CQUKUANdlg3; dlg3.DoModal(); }彈出存款對話框后來:錄入信息,通過點擊“顧客信息進入”按鈕:查看顧客利息信息:voidCQUKUAN::OnOK(){UpdateData(TRUE); if(m_QUKUANMIMA.IsEmpty()||m_QUKUANZHANGHAO.IsEmpty()) { MessageBox("基本信息不能為空!"); return; } if((strcmp(m_QUKUANMIMA,"liugang")!=0)||(strcmp(m_QUKUANMIMA,"liugang")!=0)) {MessageBox("你不是管理員,請管理員輸入對的口令"); return; }m_grid.SetExtendedStyle(LVS_EX_FLATSB |LVS_EX_FULLROWSELECT |LVS_EX_HEADERDRAGDROP |LVS_EX_ONECLICKACTIVATE |LVS_EX_GRIDLINES); m_grid.InsertColumn(0,"姓名",LVCFMT_LEFT,110,0); m_grid.InsertColumn(1,"帳號",LVCFMT_LEFT,110,1); m_grid.InsertColumn(2,"本金",LVCFMT_LEFT,110,2); m_grid.InsertColumn(3,"利息",LVCFMT_LEFT,110,3); m_grid.InsertColumn(4,"儲種",LVCFMT_LEFT,110,4);m_grid.InsertColumn(5,"掛失",LVCFMT_LEFT,110,5);OnInitADOConn10();_bstr_tSQL="select*fromcq"; m_pRecordset10.CreateInstance(__uuidof(Recordset)); m_pRecordset10->Open(SQL,m_pConnection10.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText);while(!m_pRecordset10->adoEOF) { m_grid.InsertItem(0,""); m_grid.SetItemText(0,0,(char*)(_bstr_t)m_pRecordset10->GetCollect("姓名")); m_grid.SetItemText(0,1,(char*)(_bstr_t)m_pRecordset10->GetCollect("帳號")); m_grid.SetItemText(0,2,(char*)(_bstr_t)m_pRecordset10->GetCollect("本金")); m_grid.SetItemText(0,3,(char*)(_bstr_t)m_pRecordset10->GetCollect("利息"));m_grid.SetItemText(0,4,(char*)(_bstr_t)m_pRecordset10->GetCollect("儲種"));m_grid.SetItemText(0,5,(char*)(_bstr_t)m_pRecordset10->GetCollect("掛失")); //將記錄集指針移動到下一條記錄 m_pRecordset10->MoveNext(); } //斷開數據庫連接 ExitConnect10();}然后營業員依照顧客提供信息,對其進行“取款”按鈕:voidCQUKUAN::OnQukuan(){UpdateData(TRUE); if(m_QUKUANZHANGHAO.IsEmpty()||m_QUKUANMIMA.IsEmpty()) { MessageBox("基本信息不能為空!"); return; } if(strcmp(s6,"1")==0){MessageBox("改帳戶已經掛失!");return;} OnInitADOConn10(); CStringsql; sql.Format("delete*fromcqwhere帳號='%s'",m_QUKUANZHANGHAO); m_pConnection10->Execute((_bstr_t)sql,NULL,adCmdText);CStringsql1; sql1.Format("insertintoqk(姓名,帳號,儲種,錢數,利息,掛失)\ values('%s','%s','%s','%s','%s','%s')",s1,s2,s3,s4,s5,s6); m_pConnection10->Execute((_bstr_t)sql1,NULL,adCmdText); m_grid.DeleteAllItems();m_grid.SetExtendedStyle(LVS_EX_FLATSB |LVS_EX_FULLROWSELECT |LVS_EX_HEADERDRAGDROP |LVS_EX_ONECLICKACTIVATE |LVS_EX_GRIDLINES); m_grid.InsertColumn(0,"姓名",LVCFMT_LEFT,110,0); m_grid.InsertColumn(1,"帳號",LVCFMT_LEFT,110,1); m_grid.InsertColumn(2,"本金",LVCFMT_LEFT,110,2); m_grid.InsertColumn(3,"利息",LVCFMT_LEFT,110,3); m_grid.InsertColumn(4,"儲種",LVCFMT_LEFT,110,4);m_grid.InsertColumn(5,"掛失",LVCFMT_LEFT,110,5);_bstr_tSQL="select*fromcq"; m_pRecordset10->Open(SQL,m_pConnection10.GetInterfacePtr(),adOpenDynamic, adLockOptimistic,adCmdText);while(!m_pRecordset10->adoEOF) { m_grid.InsertItem(0,""); m_grid.SetItemText(0,0,(char*)(_bstr_t)m_pRecordset10->GetCollect("姓名")); m_grid.SetItemText(0,1,(char*)(_bstr_t)m_pRecordset10->GetCollect("帳號")); m_grid.SetItemText(0,2,(char*)(_bstr_t)m_pRecordset10->GetCollect("本金")); m_grid.SetItemText(0,3,(char*)(_bstr_t)m_pRecordset10->GetCollect("利息"));m_grid.SetItemText(0,4,(char*)(_bstr_t)m_pRecordset10->GetCollect("儲種"));m_grid.SetItemText(0,5,(char*)(_bstr_t)m_pRecordset10->GetCollect("掛失")); //將記錄集指針移動到下一條記錄 //將記錄集指針移動到下一條記錄 m_pRecordset10->MoveNext();} //斷開數據庫連接 ExitConnect10(); MessageBox("成功取款,歡迎下次使用");}然后營業員依照顧客提供信息,對其進行“掛失”按鈕:(掛失原理:顧客在存款時候默認她掛失字段為0對掛失字段只取兩個值,若要進行掛失,把其值改為1便可)voidCQUKUAN::OnGuashi(){UpdateData(TRUE); if(m_QUKUANZHANGHAO.IsEmpty()||m_QUKUANMIMA.IsEmpty()) { MessageBox("基本信息不能為空!"); return; } intlost=1; OnInitADOConn10(); CStringsql; sql.Format("updatecqset掛失=%d\ where帳號='%s'",lost,m_QUKUANZHANGHAO); m_pConnection10->Execute((_bstr_t)sql,NULL,adCmdText); m_grid.DeleteA

溫馨提示

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

評論

0/150

提交評論