C++課程設計人事管理系統(tǒng).docx
《C++課程設計人事管理系統(tǒng).docx》由會員分享,可在線閱讀,更多相關(guān)《C++課程設計人事管理系統(tǒng).docx(33頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、 西南交通大學本科畢業(yè)設計(論文) 第16頁 《面向?qū)ο缶幊碳夹g(shù)》課程設計實驗報告 姓名: 學號: 班級: 指導老師: 日期: 目錄: 一. 設計任務與要求……………………………………………………….3 1. 設計目的……………………………………………………………………3 2. 課程設計的要求………………………………………………………..3 二. 系統(tǒng)分析……………………………………………………………………3 1. 需求分析:………………………
2、………………………………………3 2. 功能分析:………………………………………………………………3 3. 系統(tǒng)功能模塊………………………………………………………..3 4. 功能的實現(xiàn)……………………………………………………………3 5. 模塊框架圖…………………………………………………………...4 三. 系統(tǒng)設計…………………………………………………………………...4 四. 問題分析和實驗總結(jié)………………………………………………..10 課程設計部分源代碼…………………………………………………………11 一. 設計任務與要求
3、 設計題目:人事管理系統(tǒng) 1.設計目的: 制作人事管理系統(tǒng),實現(xiàn)對增加數(shù)據(jù)記錄,刪除記錄,排序記錄,篩選記錄數(shù)據(jù)的要求。 2.課程設計的要求 A.用access創(chuàng)建人事管理數(shù)據(jù)表,該表記錄職工的基本信息,其中包括職工編號,職工姓名,所在部門,職工年齡,工作時間,基本工資,職稱和監(jiān)理等信息。 B.創(chuàng)建新的數(shù)據(jù)源 C.論述對“MFC AppEizard(exe)”生成的應用程序的框架的認識,理解和開發(fā)心得 二.系統(tǒng)分析 1.需求分析: l 可利用該程序?qū)崿F(xiàn)對員工信息的記錄和瀏覽 l 能夠?qū)β毠ば畔⑦M行輸入、刪除、排序、以及篩選等操作; 2.功能分析: l 新增記錄:系統(tǒng)能
4、在原有記錄的基礎上增加新的記錄。 l 刪除記錄:對數(shù)據(jù)表中的數(shù)據(jù)進行刪除。 l 篩選記錄:根據(jù)職工標號對職工進行篩選進行精確查找職工人員。 l 排序記錄:對職工信息編號進行從小到大的排序 3.系統(tǒng)功能模塊 人事管理系統(tǒng)有:新增記錄、深處記錄、排序記錄、篩選及瀏覽記錄。 4.功能的實現(xiàn): 1) “篩選及瀏覽記錄”模塊: 在access中建表時,在職工編號欄開啟關(guān)鍵詞索引功能,篩選時在對話框的編輯框內(nèi)輸入要篩選的職工標號即可進行篩選。 2) “新增記錄”模塊: 再新建一個對話框創(chuàng)建一個新類,給每個編輯框綁定變量,在人事管理系統(tǒng)view.cpp中添加自擬頭文件 3) “數(shù)據(jù)刪除
5、模塊” 顯示當前的數(shù)據(jù)內(nèi)容,點擊刪除按鈕將該職工的所有信息刪除。 4) “排序記錄”模塊 顯示當前數(shù)據(jù)內(nèi)容,點擊排序按鈕將當前表中所有員工信息從小到大排序。 5.模塊框架圖 人事管理系統(tǒng) 該員工信息消失 排序記錄 排序數(shù)據(jù) 顯示當前編號最小的員工信息 刪除數(shù)據(jù) 刪除記錄 保存員工信息 填寫信息 增加記錄 篩選記錄 輸入編號 顯示職工信息 三、系統(tǒng)設計 人事管理系統(tǒng).mdb表的初始化結(jié)果 1.界面設計 運行時主界面 l 增加記錄界面
6、 增加信息成功: l 篩選界面 篩選成功: l 排序和刪除界面 刪除了李英的信息 排序功能: 2、程序設計 通過主窗體調(diào)用其他窗體,在調(diào)用增加記錄時要彈出新的對話框,一邊輸入要添加的信息。篩選記錄時,要實現(xiàn)在創(chuàng)建access數(shù)據(jù)庫時打開索引功能。這樣再點擊篩選記錄是只要在新對話框中輸入關(guān)鍵詞(職工編號)便可。 四、課程設計的問題分析和實驗總結(jié) 此次的人事管理系統(tǒng)的設計,主要是運用MFC操作,以讓程序更加的便于操作和使用,這其中也出現(xiàn)了不少問題,走了很多彎路,比如: 1. 創(chuàng)建數(shù)據(jù)源,用控制面板設置數(shù)據(jù)源文件時老是出錯。 解決方法:先在acce
7、ss中創(chuàng)建人事管理系統(tǒng)表,然后在控制面板中原則添加指定數(shù)據(jù)源。 2. 在寫對話框類成員函數(shù)時總出現(xiàn)大小寫錯誤,導致程序編譯不能通過。 解決辦法:仔細檢查源代碼,利用錯誤提示改正。 3. 在編寫子對話框成員函數(shù)時,編譯老提示該類未申明。 解決辦法:原因是未在view.cpp文件中添加對應的類頭文件,所以在對應位置添加頭文件。 4. 在添加函數(shù)中,發(fā)現(xiàn)實驗指導的步驟結(jié)果增加記錄函數(shù)運行結(jié)果不能正常添加記錄。 解決辦法:點擊增加函數(shù)時,應該彈出輸入信息對話框,以便新增職工信息,新增完畢后,點擊確定完成添加操作。上網(wǎng)查閱資料后,完善了增加函數(shù)代碼,并新增了一個對話框和對應類CDlgAdd,
8、使其能完成其指定功能。 本程序部分源代碼: // 人事管理系統(tǒng)View.cpp : implementation of the CMyView class // #include "stdafx.h" #include "人事管理系統(tǒng).h" #include "DlgQuery.h" #include "DlgAdd.h" #include "人事管理系統(tǒng)Set.h" #include "人事管理系統(tǒng)Doc.h" #include "人事管理系統(tǒng)View.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_
9、FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // CMyView IMPLEMENT_DYNCREATE(CMyView, CRecordView) BEGIN_MESSAGE_MAP(CMyView, CRecordView) //{{AFX_MSG_MAP(CMyView) ON_BN_CLICKED(IDC_BUTTON_ADD, OnButtonAd
10、d) ON_BN_CLICKED(IDC_BUTTON_DEL, OnButtonDel) ON_BN_CLICKED(IDC_BUTTON_FILTER, OnButtonFilter) ON_BN_CLICKED(IDC_BUTTON_SORT, OnButtonSort) //}}AFX_MSG_MAP // Standard printing commands ON_COMMAND(ID_FILE_PRINT, CRecordView::OnFilePrint) ON_COMMAND(ID_FILE_PRINT_DIRECT, CRecordView::On
11、FilePrint) ON_COMMAND(ID_FILE_PRINT_PREVIEW, CRecordView::OnFilePrintPreview) END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // CMyView construction/destruction CMyView::CMyView() : CRecordView(CMyView::IDD) { //{{AFX_DATA_INIT(CMyView)
12、 m_pSet = NULL; m_gzsj = 0; //}}AFX_DATA_INIT // TODO: add construction code here } CMyView::~CMyView() { } void CMyView::DoDataExchange(CDataExchange* pDX) { CRecordView::DoDataExchange(pDX); //{{AFX_DATA_MAP(CMyView) DDX_FieldText(pDX, IDC_EDIT_JBGZ, m_pSet->m_jbgz, m_pSe
13、t); DDX_FieldText(pDX, IDC_EDIT_JL, m_pSet->m_jl, m_pSet); DDX_FieldText(pDX, IDC_EDIT_SZBM, m_pSet->m_szbm, m_pSet); DDX_FieldText(pDX, IDC_EDIT_ZC, m_pSet->m_zc, m_pSet); DDX_FieldText(pDX, IDC_EDIT_ZGBH, m_pSet->m_zgbh, m_pSet); DDX_FieldText(pDX, IDC_EDIT_ZGNL, m_pSet->m_zgnl, m_pSet);
14、 DDX_FieldText(pDX, IDC_EDIT_ZGXB, m_pSet->m_zgxb, m_pSet); DDX_FieldText(pDX, IDC_EDIT_ZGXM, m_pSet->m_zgxm, m_pSet); DDX_DateTimeCtrl(pDX, IDC_DATETIMEPICKER_GZSJ, m_pSet->m_gzsj); //}}AFX_DATA_MAP } BOOL CMyView::PreCreateWindow(CREATESTRUCT& cs) { // TODO: Modify the Window class
15、or styles here by modifying // the CREATESTRUCT cs return CRecordView::PreCreateWindow(cs); } void CMyView::OnInitialUpdate() { m_pSet = &GetDocument()->m_mySet; CRecordView::OnInitialUpdate(); GetParentFrame()->RecalcLayout(); ResizeParentToFit(); } ///////////////////////
16、////////////////////////////////////////////////////// // CMyView printing BOOL CMyView::OnPreparePrinting(CPrintInfo* pInfo) { // default preparation return DoPreparePrinting(pInfo); } void CMyView::OnBeginPrinting(CDC* /*pDC*/, CPrintInfo* /*pInfo*/) { // TODO: add extra initializa
17、tion before printing } void CMyView::OnEndPrinting(CDC* /*pDC*/, CPrintInfo* /*pInfo*/) { // TODO: add cleanup after printing } ///////////////////////////////////////////////////////////////////////////// // CMyView diagnostics #ifdef _DEBUG void CMyView::AssertValid() const { CR
18、ecordView::AssertValid(); } void CMyView::Dump(CDumpContext& dc) const { CRecordView::Dump(dc); } CMyDoc* CMyView::GetDocument() // non-debug version is inline { ASSERT(m_pDocument->IsKindOf(RUNTIME_CLASS(CMyDoc))); return (CMyDoc*)m_pDocument; } #endif //_DEBUG ////////////////
19、///////////////////////////////////////////////////////////// // CMyView database support CRecordset* CMyView::OnGetRecordset() { return m_pSet; } ///////////////////////////////////////////////////////////////////////////// // CMyView message handlers void CMyView::OnButtonAdd() {
20、 // TODO: Add your control notification handler code here /* m_pSet->AddNew(); m_pSet->Update();//更新記錄集 m_pSet->Requery();//重新提取數(shù)據(jù) m_pSet->MoveLast();//移動下一條記錄 UpdateData(FALSE);//更新視圖*/ try { CDlgAdd DlgAdd; if(DlgAdd.DoModal()==IDOK)//"模式窗口方式打開,結(jié)束前不能操縱父窗口" { m_pSet->AddN
21、ew(); m_pSet->m_zgbh=DlgAdd.m_zgbh; m_pSet->m_zgxm=DlgAdd.m_zgxm; m_pSet->m_zgnl=DlgAdd.m_zgnl; m_pSet->m_zgxb=DlgAdd.m_zgxb; m_pSet->m_zc=DlgAdd.m_zc; m_pSet->m_szbm=DlgAdd.m_szbm; m_pSet->m_jbgz=DlgAdd.m_jbgz; m_pSet->m_gzsj=DlgAdd.m_gzsj; m_pSet->m_jl=DlgAdd.m_
22、jl; m_pSet->Update();//更新記錄集 m_pSet->Requery();//重新提取記錄集 m_pSet->MoveLast();//移動下一條記錄 UpdateData(FALSE);//更新視圖 } } catch (CDBException* e) { MessageBox(e->m_strError);//對于異常信息的處理,這里是簡單的輸出錯誤的信息 } } void CMyView::OnButtonDel() { // TODO: Add your control notific
23、ation handler code here m_pSet->Delete(); m_pSet->MoveNext(); if(m_pSet->IsEOF()) m_pSet->MoveLast(); if(m_pSet->IsBOF()) m_pSet->SetFieldNull(NULL); UpdateData(FALSE); } void CMyView::OnButtonFilter() { // TODO: Add your control notification handler code here CDlgQuery Dlg
24、query; CString value; if(Dlgquery.DoModal()==IDOK)//"模式窗口方式打開,結(jié)束前不能操縱父窗口" { value="職工編號=+"+Dlgquery.m_query+""; m_pSet->m_strFilter=value; m_pSet->Requery(); UpdateData(FALSE); } } void CMyView::OnButtonSort() { // TODO: Add your control notification handler code here m
25、_pSet->m_strSort="職工編號"; m_pSet->Requery(); UpdateData(FALSE); } 大 學 畢業(yè)設計(論文) (頁面設置:論文版心大小為155mm245mm,頁邊距:上2.6cm,下2.6cm,左2.5cm,右2cm,行間距20磅,裝訂線位置左,裝訂線1cm,) 此處為論文題目,黑體2號字 (以下各項居中列,黑體小四號) 年 級: 學 號: 姓 名: 專 業(yè): 指導
26、老師: (填寫時間要用中文) 二零零八年六月 西南交通大學本科畢業(yè)設計(論文) 第V頁 大學本科畢業(yè)設計(論文) 院 系 專 業(yè) 年 級 姓 名 題 目
27、 指導教師 評 語
28、
29、 指導教師 (簽章) 評 閱 人 評 語
30、
31、 評 閱 人
32、 (簽章) 成 績 答辯委員會主任 (簽章) 年 月 日 畢 業(yè) 設 計 任 務 書 班 級 學生姓名 學 號 專 業(yè) 發(fā)題日期: 年 月 日 完成日期: 年 月
33、 日 題 目 題目類型:工程設計 技術(shù)專題研究 理論研究 軟硬件產(chǎn)品開發(fā) 一、 設計任務及要求
34、
35、 二、 應完成的硬件或軟件實驗
36、 三、 應交出的設計文件及實物(包括設計論文、程
37、序清單或磁盤、實驗裝置或產(chǎn)品等)
38、 四、 指導教師提供的設計資料
39、 五、 要求學生搜集的技術(shù)資料(指出搜集資料的技術(shù)領域)
40、 六、 設計進度安排 第一部分 (4 周) 第二部分 (6 周) 第三部分
41、 (2 周) 評閱及答辯 (1 周) 指導教師: 年 月 日 系主任審查意見:
42、 審 批 人: 年 月 日 注:設計任務書審查合格后,發(fā)到學生手上。 大學學院 20XX年制 摘 要 正文略 關(guān)鍵詞:關(guān)鍵詞; 關(guān)鍵詞; 關(guān)鍵詞; 關(guān)鍵詞 (關(guān)鍵詞之間分號隔開,并加一個空格) Abstract 正文略 Keywords: keyword; keyword; keyword; keyword 目 錄 摘 要 IV Abstract
43、V 第1章 緒 論 1 1.1 本論文的背景和意義 1 1.2 本論文的主要方法和研究進展 1 1.3 本論文的主要內(nèi)容 1 1.4 本論文的結(jié)構(gòu)安排 1 第2章 各章題序及標題小2號黑體 2 2.1 各節(jié)點一級題序及標題小3號黑體 2 2.1.1 各節(jié)的二級題序及標題4號黑體 2 2.2 頁眉、頁腳說明 2 2.3 段落、字體說明 2 2.4 公式、插圖和插表說明 2 結(jié) 論 5 致 謝 6 參考文獻 7 附 錄 1 標題 8 附 錄 2 標題 9 第10頁 共33頁 大學本科畢業(yè)設計(論文) 第1
44、章 緒 論 1.1 本論文的背景和意義 引用文獻標示應置于所引內(nèi)容最末句的右上角,用小五號字體[1]。當提及的參考文獻為文中直接說明時,其序號應該用4號字與正文排齊,如“由文獻[8,10~14]可知” 1.2 本論文的主要方法和研究進展 1.3 本論文的主要內(nèi)容 1.4 本論文的結(jié)構(gòu)安排 第2章 各章題序及標題小2號黑體 2.1 各節(jié)點一級題序及標題小3號黑體 正文另起一段,數(shù)字與標題之間空一格 2.1.1 各節(jié)的二級題序及標題4號黑體 正文另起一段,數(shù)字與標題之間空一格 2.1.1.1 各節(jié)的三級題序及標題小4號黑體 正文另起一段,數(shù)字與標題之
45、間空一格 1. 款標題 正文接排。本行縮進2字符,標題與正文空一格 (1)項標題 正文接排,本行縮進1字符,標題與正文空一格。 (2)項標題 2. 款標題 2.2 頁眉、頁腳說明 在版心上邊線隔一行加粗線,寬0.8mm(約2.27磅),其上居中打印頁眉。頁眉內(nèi)容一律用“西南交通大學本科畢業(yè)設計(論文)”,字號用小四號黑體。頁碼置于頁眉右端,采用形式為:第M頁,具體設置參考模板。 2.3 段落、字體說明 每段首行縮進2字符,行距固定值20磅。正文用小4號宋體,西文和數(shù)字用小4號Times New Roman。按照GB3100~3102及GB7159-87的規(guī)定使用,即
46、物理量符號、物理常量、變量符號(如:a(t) , (i-1)Tht 47、—相位;
fc—載波頻率;
(插圖圖題于圖下,小4號宋體,圖中若有分圖時,分圖號用a)、b)等置于分圖之下。插圖與其圖題為一個整體,不得拆開排寫于兩頁。插圖處的該頁空白不夠排寫該圖整體時,則可將其后文字部分提前排寫,將圖移到次頁最前面。)
a)分圖a b)分圖b
圖2-2 圖題
(插表表序與表名置于表上,小4號宋體,若有分頁,需在另一頁第一行添加續(xù)表。數(shù)字空缺的格內(nèi)加“-”(占2個數(shù)字寬度)。表內(nèi)文字或數(shù)字上下或左右相同時,采用通欄處理方式。表內(nèi)文字說明,起行空一格、轉(zhuǎn)行頂格、句末不加標點。)
表2-1 形狀變化特征值 48、及相應比例
形狀模型變化:
特征值編號
特征值
比例1
比例2
1
0.010642
59.62%
59.62%
2
0.002305
12.91%
72.53%
3
0.001347
7.55%
80.08%
4
0.000683
3.83%
83.91%
5
0.000645
3.62%
87.52%
6
0.000392
2.20%
7
0.000324
1.82%
91.54%
8
0.000238
1.34%
92.87%
續(xù)表
特征值編號
特征值
比例1
比例2
9
--
- 49、-
--
10
0.000205
1.15%
95.30%
結(jié) 論
正文略
致 謝
正文略
參考文獻
(參考的中文文獻排在前面,英文文獻排在后面。作者與作者之間用逗號隔開,不寫“等,編著”等字樣,如果版次是第一版,則省略。沒有引用書籍文字則不寫引用起止頁,且以“ . ”結(jié)束)
(著作圖書文獻)
[1] 作者,作者. 書名. 版次. 出版社,出版年:引用部分起止頁
[2] 作者. 書名. 出版社,出版年.
(翻譯圖書文獻)
[3] 作者. 書名. 譯者. 版次. 出版者,出版年:引用部分起止頁
(學術(shù)刊物文獻)
[4] 作者. 文章名. 學術(shù)刊物名.年,卷(期):引用部分起止頁
(學術(shù)會議文獻)
[5] 作者. 文章名. 編者名. 會議名稱,會議地址,年份. 出版者,出版年:引用部分起止頁
[6]
(學位論文類參考文獻)
[7] 研究生名. 學位論文題目. 學校及學位論文級別. 答辯年份:引用部分起止頁
附 錄 1 標題
(對需要收錄于畢業(yè)設計(論文)中且又不適合書寫正文中的附加數(shù)據(jù)、資料、詳細公式推導等有特色的內(nèi)容,可作為附錄排寫)
附 錄 2 標題
完
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。