版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 目錄</b></p><p><b> 一、設(shè)計目的2</b></p><p><b> 二、系統(tǒng)設(shè)計2</b></p><p> 三、功能模塊劃分2</p><p> 四、系統(tǒng)流程分析3</p><p&
2、gt; 五、數(shù)據(jù)庫設(shè)計3</p><p> 六、連接數(shù)據(jù)庫6</p><p><b> 七、系統(tǒng)演示7</b></p><p> 八、相關(guān)代碼展示12</p><p> 九、感想與總結(jié)72</p><p><b> 設(shè)計目的</b></p
3、><p> 隨著新技術(shù)的廣泛應(yīng)用,全世界范圍內(nèi)的各個企業(yè)都在經(jīng)歷一場深刻的改革,尤其是在企業(yè)怎樣與客戶潛在客戶進(jìn)行互動交流這一點上體現(xiàn)的特別明顯。從管理的角度來說,企業(yè)關(guān)注的焦點有改進(jìn)內(nèi)部運(yùn)作轉(zhuǎn)移到更多地關(guān)注客戶上來。目前的CRM(客戶關(guān)系管理)軟件通過建立一個系統(tǒng),是企業(yè)在客戶服務(wù),市場競爭,銷售及支持方面彼此協(xié)調(diào)的全新關(guān)系實體,為企業(yè)帶來長久地競爭優(yōu)勢,從而提高了生產(chǎn)率。本系統(tǒng)適合中小企業(yè)的客戶資源管理,提供對
4、客戶的有效管理。</p><p><b> 系統(tǒng)設(shè)計</b></p><p> 系統(tǒng)設(shè)計分以下幾個方面:</p><p> 進(jìn)入系統(tǒng)前要身份驗證,用戶名,密碼,輸入正確后方可進(jìn)入,</p><p> 用戶可以根據(jù)需要定義客戶類型信息。</p><p> 對客戶類型信息進(jìn)行修改和刪除。&l
5、t;/p><p> 對用戶的詳細(xì)信息進(jìn)行修改和刪除。</p><p> 用戶可以定義客戶的詳細(xì)信息。</p><p> 在系統(tǒng)對客戶進(jìn)行查詢和編譯。</p><p><b> 功能模塊劃分</b></p><p> 客戶資源管理系統(tǒng)功能模塊示意圖</p><p>&l
6、t;b> 身份驗證:</b></p><p> 提供了系統(tǒng)的訪問控制功能。</p><p><b> 類型管理:</b></p><p> 即系統(tǒng)的配置信息管理,還包括的功能是添加,修改,刪除客戶類型信息,客戶類型信息包括客戶的地區(qū),職位,行業(yè)等。</p><p><b> 客服信息
7、管理:</b></p><p> 提供功能未添加,修改和刪除客戶基本信息??蛻艋拘畔ㄐ彰挲g,行業(yè),職位,聯(lián)系方式,愛好等信息。</p><p><b> 查詢管理:</b></p><p> 包括按姓名查詢,詳細(xì)信息查詢。這種查詢接口可以方便利用SQL Server 數(shù)據(jù)庫強(qiáng)大功能為客戶提供服務(wù)。</p>
8、<p><b> 系統(tǒng)流程分析</b></p><p> 前面分析中已經(jīng)定義了系統(tǒng)各個功能模塊,下面是系統(tǒng)運(yùn)行的流程分析圖:</p><p><b> 系統(tǒng)流程圖</b></p><p><b> 數(shù)據(jù)庫設(shè)計</b></p><p><b>
9、創(chuàng)建數(shù)據(jù)庫crm.</b></p><p><b> 數(shù)據(jù)庫需求設(shè)計:</b></p><p> 系統(tǒng)的需求具體體現(xiàn)在福各種信息的保存,修改,和查詢等方面,因此,一個滿足系統(tǒng)要求的數(shù)據(jù)庫必須總分照顧到對各種信息的輸入輸出,以免遺漏導(dǎo)致開發(fā)時返工。通過對系統(tǒng)的功能分析,客戶資源管理需要包含以下數(shù)據(jù)信息。</p><p> 地方信
10、息:包括地方ID,地方名稱。</p><p> 結(jié)識途徑:包括結(jié)識途徑ID,結(jié)識途徑名稱。</p><p> 職業(yè)信息:包括職業(yè)ID,職業(yè)名稱。</p><p> 行業(yè)信息:包括行業(yè)ID,行業(yè)名稱。</p><p> 客戶信息:包括客戶ID,姓名,所在地區(qū),職業(yè),行業(yè),所在單位,結(jié)識途徑,E-mail,地址,固定電話,移動電話,愛好,
11、備注信息。</p><p> 數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計:</p><p> 通過需求分析創(chuàng)建了5個表,表之間的關(guān)系如下E-R圖所示</p><p> 客戶資源管理系統(tǒng)E-R圖</p><p> Approach表(結(jié)識途徑)</p><p> Profession表(職業(yè))</p><p>
12、<b> Area表(地區(qū))</b></p><p> Customer表(客戶表)</p><p> Vocation表(行業(yè))</p><p> 為了提高數(shù)據(jù)庫的存儲效率和系統(tǒng)的功率,對customer_info_tab 創(chuàng)建存儲過程add_customer_info_tab代碼如下:</p><p><
13、;b> USE crm</b></p><p><b> go</b></p><p> create procedure add_customer_info_tab</p><p><b> (</b></p><p> @param1 int,</p>
14、<p> @param2 varchar(24),</p><p> @param3 varchar(24),</p><p> @param4 varchar(24),</p><p> @param5 varchar(24),</p><p> @param6 varchar(24),</p>
15、;<p> @param7 varchar(24),</p><p> @param8 varchar(24),</p><p> @param9 varchar(24),</p><p> @param10 varchar(24),</p><p> @param11 varchar(60),</p&g
16、t;<p> @param12 varchar(1000)</p><p><b> )AS</b></p><p> DELETE FROM customer_info_tab WHERE id='param1';</p><p> INSERT INTO customer_info_tab <
17、;/p><p> (id,name,area,profession,vocation,company,approach,email,phone,mobile,interest,memo)</p><p> VALUES('param1','param2','param3','param4','param5',&
18、#39;param6','param7','param8','param9','param10','param11','param12');</p><p><b> 連接數(shù)據(jù)庫</b></p><p> 數(shù)據(jù)庫用ODBC方式連接數(shù)據(jù)庫crm,對數(shù)據(jù)庫crm設(shè)置
19、用戶名為:CUSTOMERS,密碼:123456.連接字段要三個參數(shù):數(shù)據(jù)源名稱,數(shù)據(jù)庫用戶名,數(shù)據(jù)庫用戶密碼。</p><p> 系統(tǒng)登錄窗口如下所示:</p><p><b> 登陸窗口</b></p><p> 輸入crm數(shù)據(jù)源名稱,用戶名:CUSTOMERS,密碼:123456,可以連接數(shù)據(jù)庫。</p><p&
20、gt; ODBC連接方式數(shù)據(jù)庫</p><p> 在數(shù)據(jù)源名稱點擊crm會出現(xiàn)如下窗口:</p><p> 點擊確定就可以連接到數(shù)據(jù)庫了.</p><p><b> 系統(tǒng)演示</b></p><p> 在登陸窗口上輸入后連接完數(shù)據(jù)庫后會出現(xiàn)一個住對話窗口,這個窗口如下所示:</p><p&g
21、t;<b> 系統(tǒng)主對話窗口</b></p><p> 對于地區(qū)信息管理的模塊,如在界面的“地區(qū)名稱”文本框中輸入“大同”,單擊“添加”按鈕,就可以在地區(qū)信息列表控件中看到新添加的“大同”如圖所示:</p><p><b> 添加地區(qū)信息</b></p><p> 對于地區(qū)信息管理的“修改”功能,如要修改下拉列表框
22、中的“??凇睘椤叭齺啞本忘c擊“??凇保诘貐^(qū)名稱中修改??跒槿齺?,就完成對??诘男薷?,如圖所示:</p><p><b> 選擇修改信息</b></p><p><b> 信息修改完成</b></p><p> 對于地區(qū)信息管理的“刪除”功能,如要刪除列表框中的“湘潭”,只要點擊“湘潭”之后,再點擊“刪除”,就會刪除
23、掉“湘潭”,如圖所示:</p><p><b> 點擊刪除信息</b></p><p><b> 點擊刪除后:</b></p><p> 信息已刪除。其他列表框中的添加,刪除,修改的功能都是如此操作的。就不介紹了。</p><p> 對于客戶信息管理模塊,如在界面上的“姓名”文本框中輸入“王
24、力”在“所在地區(qū)”下拉列表框選擇“武漢”,在“職業(yè)”下拉列表框中選擇“教授”,在“行業(yè)”下拉列表框中選擇“科研”,在“所在單位”文本框中輸入“湖南科技大學(xué)”,在“結(jié)識途徑“下拉列表框中選擇“訂單”,在email文本框中輸入wangli@163.com在“固定電話”文本框中輸入“027809895320”,在“移動電話”輸入“15197211305”,在“愛好”文本框中輸入釣魚,在說明文本框輸入“化學(xué)領(lǐng)域知名教授”。如圖所示:</p
25、><p><b> 輸入信息頁面</b></p><p> 單擊添加按鈕,客戶信息就顯示在列表控件上了,如圖所示:</p><p> 如果要刪除客戶信息,點擊你要刪除的客戶所在列,我們要刪除12號客戶,點擊客戶所在列,再單擊刪除,如圖所示:</p><p><b> 點擊刪除后</b></
26、p><p><b> 客戶刪除頁面</b></p><p> 12號客戶已經(jīng)被刪除。</p><p> 對于“詳細(xì)查詢”模塊的使用,如在“所在地區(qū)”下拉菜單選擇“貴陽”之后,會在列表控件中,列出所有在“貴陽”的用戶消息,如圖所示:</p><p> 選擇地區(qū)方式查詢頁面</p><p><
27、;b> 相關(guān)代碼展示</b></p><p> 使用SQL Server2000創(chuàng)建的數(shù)據(jù)庫,數(shù)據(jù)庫的代碼如下所示:</p><p><b> 創(chuàng)建表的腳本如下:</b></p><p> CREATE TABLE [approach_info_tab] (</p><p> [approac
28、h_id] [int] NOT NULL ,</p><p> [approach_name] [varchar] (24) COLLATE Chinese_PRC_CI_AS NOT NULL ,</p><p> PRIMARY KEY CLUSTERED </p><p><b> (</b></p><p&g
29、t; [approach_id]</p><p> ) ON [PRIMARY] ,</p><p> UNIQUE NONCLUSTERED </p><p><b> (</b></p><p> [approach_name]</p><p> ) ON [PRIMARY]
30、 </p><p> ) ON [PRIMARY]</p><p><b> GO</b></p><p> CREATE TABLE [area_info_tab] (</p><p> [area_id] [int] NOT NULL ,</p><p> [area_name] [
31、varchar] (24) COLLATE Chinese_PRC_CI_AS NOT NULL ,</p><p> PRIMARY KEY CLUSTERED </p><p><b> (</b></p><p><b> [area_id]</b></p><p> ) ON [
32、PRIMARY] ,</p><p> UNIQUE NONCLUSTERED </p><p><b> (</b></p><p> [area_name]</p><p> ) ON [PRIMARY] </p><p> ) ON [PRIMARY]</p>&
33、lt;p><b> GO</b></p><p> CREATE TABLE [customer_info_tab] (</p><p> [id] [int] IDENTITY (1, 1) NOT NULL ,</p><p> [name] [varchar] (24) COLLATE Chinese_PRC_CI_AS N
34、OT NULL ,</p><p> [area] [varchar] (24) COLLATE Chinese_PRC_CI_AS NULL ,</p><p> [profession] [varchar] (24) COLLATE Chinese_PRC_CI_AS NULL ,</p><p> [vocation] [varchar] (24) CO
35、LLATE Chinese_PRC_CI_AS NULL ,</p><p> [company] [varchar] (24) COLLATE Chinese_PRC_CI_AS NULL ,</p><p> [approach] [varchar] (24) COLLATE Chinese_PRC_CI_AS NULL ,</p><p> [email
36、] [varchar] (24) COLLATE Chinese_PRC_CI_AS NULL ,</p><p> [phone] [varchar] (24) COLLATE Chinese_PRC_CI_AS NULL ,</p><p> [mobile] [varchar] (24) COLLATE Chinese_PRC_CI_AS NULL ,</p>&l
37、t;p> [interest] [varchar] (100) COLLATE Chinese_PRC_CI_AS NULL ,</p><p> [memo] [varchar] (1000) COLLATE Chinese_PRC_CI_AS NULL ,</p><p> PRIMARY KEY CLUSTERED </p><p><b&
38、gt; (</b></p><p><b> [id]</b></p><p> ) ON [PRIMARY] ,</p><p> UNIQUE NONCLUSTERED </p><p><b> (</b></p><p><b>
39、 [name]</b></p><p> ) ON [PRIMARY] ,</p><p> CONSTRAINT [FK_customer_info_tab_area_info_tab] FOREIGN KEY </p><p><b> (</b></p><p><b> [area
40、]</b></p><p> ) REFERENCES [area_info_tab] (</p><p> [area_name]</p><p><b> ),</b></p><p> CONSTRAINT [FK_customer_info_tab_profession_info_tab] F
41、OREIGN KEY </p><p><b> (</b></p><p> [profession]</p><p> ) REFERENCES [profession_info_tab] (</p><p> [profession_name]</p><p><b>
42、),</b></p><p> CONSTRAINT [FK_customer_info_tab_vocation_info_tab] FOREIGN KEY </p><p><b> (</b></p><p> [vocation]</p><p> ) REFERENCES [vocation
43、_info_tab] (</p><p> [vocation_name]</p><p><b> )</b></p><p> ) ON [PRIMARY]</p><p><b> GO</b></p><p> CREATE TABLE [professio
44、n_info_tab] (</p><p> [profession_id] [int] NOT NULL ,</p><p> [profession_name] [varchar] (24) COLLATE Chinese_PRC_CI_AS NOT NULL ,</p><p> PRIMARY KEY CLUSTERED </p>&l
45、t;p><b> (</b></p><p> [profession_id]</p><p> ) ON [PRIMARY] ,</p><p> UNIQUE NONCLUSTERED </p><p><b> (</b></p><p> [pr
46、ofession_name]</p><p> ) ON [PRIMARY] </p><p> ) ON [PRIMARY]</p><p><b> GO</b></p><p> CREATE TABLE [vocation_info_tab] (</p><p> [vocat
47、ion_id] [int] NOT NULL ,</p><p> [vocation_name] [varchar] (24) COLLATE Chinese_PRC_CI_AS NOT NULL ,</p><p> PRIMARY KEY CLUSTERED </p><p><b> (</b></p><p
48、> [vocation_id]</p><p> ) ON [PRIMARY] ,</p><p> UNIQUE NONCLUSTERED </p><p><b> (</b></p><p> [vocation_name]</p><p> ) ON [PRIMAR
49、Y] </p><p> ) ON [PRIMARY]</p><p><b> GO</b></p><p><b> 登陸數(shù)據(jù)庫的代碼:</b></p><p> 用vc++6.0MFC的window編程,創(chuàng)建登陸窗口,同時添加命令響應(yīng),以下是登陸對話框的命令響應(yīng)函數(shù),連接數(shù)據(jù)庫crm.
50、</p><p> void CLoginDlg1::OnOK() </p><p><b> {</b></p><p> // TODO: Add extra validation here</p><p> UpdateData(true);</p><p> CDatabase
51、m_db;</p><p> CString strConnect;</p><p> strConnect.Format("DSN=%s;UID=%s;PWD=%s",m_bDSN,m_bUsername,m_bPassword);</p><p><b> //</b></p><p>&l
52、t;b> TRY{</b></p><p> m_db.OpenEx(strConnect);</p><p><b> }</b></p><p> CATCH(CDBException,ex)</p><p><b> {</b></p><p&g
53、t; AfxMessageBox(ex->m_strError);</p><p> AfxMessageBox(ex->m_strStateNativeOrigin);</p><p><b> }</b></p><p> AND_CATCH(CMemoryException,pEx)</p><p&
54、gt;<b> {</b></p><p> pEx->ReportError();</p><p> AfxMessageBox("MEMORY EXCEPTION");</p><p><b> }</b></p><p> AND_CATCH(CExcept
55、ion,e)</p><p><b> {</b></p><p> TCHAR szError[100];</p><p> e->GetErrorMessage(szError,100);</p><p> AfxMessageBox(szError);</p><p><
56、b> }</b></p><p><b> END_CATCH</b></p><p> CDialog::OnOK();</p><p><b> }</b></p><p> 信息列表控件的控制函數(shù):</p><p> void CCRDBS
57、1007010103Dlg::InitControl()</p><p><b> {</b></p><p><b> //</b></p><p> DWORD dwExStyle=LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES|LVS_EX_HEADERDRAGDROP|</p
58、><p> LVS_EX_ONECLICKACTIVATE|LVS_EX_UNDERLINEHOT;</p><p> m_listArea.SetExtendedStyle(dwExStyle);</p><p> m_listApproach.SetExtendedStyle(dwExStyle);</p><p> m_listPr
59、ofession.SetExtendedStyle(dwExStyle);</p><p> m_listVocation.SetExtendedStyle(dwExStyle);</p><p> m_listCR.SetExtendedStyle(dwExStyle);</p><p><b> //</b></p>&
60、lt;p> m_listArea.InsertColumn(0,"地區(qū)ID",LVCFMT_CENTER,50);</p><p> m_listArea.InsertColumn(1,"地區(qū)名稱",LVCFMT_CENTER,90);</p><p><b> //</b></p><p>
61、 m_listApproach.InsertColumn(0,"結(jié)識途徑",LVCFMT_CENTER,50);</p><p> m_listApproach.InsertColumn(1,"結(jié)識途徑名稱",LVCFMT_CENTER,90);</p><p><b> //</b></p><p&g
62、t; m_listProfession.InsertColumn(0,"職位ID",LVCFMT_CENTER,50);</p><p> m_listProfession.InsertColumn(1,"職位名稱",LVCFMT_CENTER,90);</p><p><b> //</b></p><
63、;p> m_listVocation.InsertColumn(0,"行業(yè)ID",LVCFMT_CENTER,50);</p><p> m_listVocation.InsertColumn(1,"行業(yè)名稱",LVCFMT_CENTER,90);</p><p><b> //</b></p><
64、;p> m_listCR.InsertColumn(0,"客戶ID",LVCFMT_CENTER,60);</p><p> m_listCR.InsertColumn(1,"客戶名稱",LVCFMT_CENTER,80);</p><p> m_listCR.InsertColumn(2,"所在地區(qū)",LVCFMT_
65、CENTER,80);</p><p> m_listCR.InsertColumn(3,"職業(yè)",LVCFMT_CENTER,80);</p><p> m_listCR.InsertColumn(4,"行業(yè)",LVCFMT_CENTER,80);</p><p> m_listCR.InsertColumn(5,&q
66、uot;所在單位",LVCFMT_CENTER,80);</p><p> m_listCR.InsertColumn(6,"結(jié)識途徑",LVCFMT_CENTER,80);</p><p> m_listCR.InsertColumn(7,"e-mail",LVCFMT_CENTER,80);</p><p>
67、 m_listCR.InsertColumn(8,"固定電話",LVCFMT_CENTER,80);</p><p> m_listCR.InsertColumn(9,"移動電話",LVCFMT_CENTER,80);</p><p> m_listCR.InsertColumn(10,"愛好",LVCFMT_CENTER,
68、80);</p><p> m_listCR.InsertColumn(11,"說明",LVCFMT_CENTER,140);</p><p><b> }</b></p><p> 向四個系統(tǒng)信息列表控件插入數(shù)據(jù)的控制函數(shù):</p><p> void CCRDBS1007010103Dlg
69、::InitCtrlData()</p><p><b> {</b></p><p> if(m_db.IsOpen())</p><p><b> {</b></p><p> MessageBox("數(shù)據(jù)庫未打開");</p><p><
70、;b> return ;</b></p><p><b> }</b></p><p><b> TRY</b></p><p><b> {</b></p><p> CRecordset rs(&m_db);</p><
71、;p> rs.Open(CRecordset::dynaset,"select *from area_info_tab order by area_id");</p><p> while(!rs.IsEOF())</p><p><b> {</b></p><p><b> int id;<
72、/b></p><p> CString area;</p><p> CDBVariant var;</p><p><b> //</b></p><p> rs.GetFieldValue((short)0,var,SQL_C_SLONG);</p><p> if(var.
73、m_dwType!=DBVT_NULL)</p><p> id=var.m_iVal;</p><p> var.Clear();</p><p><b> //</b></p><p> rs.GetFieldValue(1,area);</p><p> InsertConfigI
74、tem(&m_listArea,id,area);</p><p> rs.MoveNext();</p><p><b> }</b></p><p> rs.Close();</p><p><b> //</b></p><p> rs.Open(CR
75、ecordset::dynaset,"select *from approach_info_tab order by approach_id");</p><p> while(!rs.IsEOF())</p><p><b> {</b></p><p><b> int id;</b><
76、/p><p> CString approach;</p><p> CDBVariant var;</p><p><b> //</b></p><p> rs.GetFieldValue((short)0,var,SQL_C_SLONG);</p><p> if(var.m_dwTy
77、pe!=DBVT_NULL)</p><p> id=var.m_iVal;</p><p> var.Clear();</p><p><b> //</b></p><p> rs.GetFieldValue(1,approach);</p><p> InsertConfigIte
78、m(&m_listApproach,id,approach);</p><p> rs.MoveNext();</p><p><b> }</b></p><p> rs.Close();</p><p><b> //</b></p><p> rs.O
79、pen(CRecordset::dynaset,"select *from profession_info_tab order by profession_id");</p><p> while(!rs.IsEOF())</p><p><b> {</b></p><p><b> int id;<
80、/b></p><p> CString profession;</p><p> CDBVariant var;</p><p><b> //</b></p><p> rs.GetFieldValue((short)0,var,SQL_C_SLONG);</p><p> i
81、f(var.m_dwType!=DBVT_NULL)</p><p> id=var.m_iVal;</p><p> var.Clear();</p><p><b> //</b></p><p> rs.GetFieldValue(1,profession);</p><p> I
82、nsertConfigItem(&m_listProfession,id,profession);</p><p> rs.MoveNext();</p><p><b> }</b></p><p> rs.Close();</p><p><b> //</b></p>
83、;<p> rs.Open(CRecordset::dynaset,"select *from vocation_info_tab order by vocation_id");</p><p> while(!rs.IsEOF())</p><p><b> {</b></p><p><b>
84、; int id;</b></p><p> CString vocation;</p><p> CDBVariant var;</p><p><b> //</b></p><p> rs.GetFieldValue((short)0,var,SQL_C_SLONG);</p>
85、<p> if(var.m_dwType!=DBVT_NULL)</p><p> id=var.m_iVal;</p><p> var.Clear();</p><p><b> //</b></p><p> rs.GetFieldValue(1,vocation);</p>&l
86、t;p> InsertConfigItem(&m_listVocation,id,vocation);</p><p> rs.MoveNext();</p><p><b> }</b></p><p> rs.Close();</p><p><b> //</b><
87、;/p><p> rs.Open(CRecordset::dynaset,"select *from customer_info_tab order by id");</p><p> while(!rs.IsEOF())</p><p><b> {</b></p><p><b>
88、int id;</b></p><p> CString name,area,profession,vocation,company;</p><p> CString approach,email,phone,mobile,interest,memo;</p><p> CDBVariant var;</p><p>&l
89、t;b> //</b></p><p> rs.GetFieldValue((short)0,var,SQL_C_SLONG);</p><p> if(var.m_dwType!=DBVT_NULL)</p><p> id=var.m_iVal;</p><p> var.Clear();</p>
90、<p><b> //</b></p><p> rs.GetFieldValue(1,name);</p><p> rs.GetFieldValue(2,area);</p><p> rs.GetFieldValue(3,profession);</p><p> rs.GetFieldVal
91、ue(4,vocation);</p><p> rs.GetFieldValue(5,company);</p><p> rs.GetFieldValue(6,email);</p><p> rs.GetFieldValue(7,approach);</p><p> rs.GetFieldValue(8,phone);<
92、/p><p> rs.GetFieldValue(9,mobile);</p><p> rs.GetFieldValue(10,interest);</p><p> rs.GetFieldValue(11,memo);</p><p><b> //</b></p><p> Inser
93、tCRInfoItem(id,name,area,profession,vocation,company,approach,phone,email,mobile,interest,memo);</p><p> rs.MoveNext();</p><p><b> }</b></p><p> rs.Close();</p>
94、<p><b> //</b></p><p> RefreshAreaComboData();</p><p> RefreshApprComboData();</p><p> RefreshProfComboData();</p><p> RefreshVocComboData();<
95、;/p><p><b> }</b></p><p> CATCH(CDBException,ex)</p><p><b> {</b></p><p> AfxMessageBox(ex->m_strError);</p><p> AfxMessageBo
96、x(ex->m_strStateNativeOrigin);</p><p><b> }</b></p><p> AND_CATCH(CMemoryException,pEx)</p><p><b> {</b></p><p> pEx->ReportError();&l
97、t;/p><p> AfxMessageBox("MEMORY EXCEPTION");</p><p><b> }</b></p><p> AND_CATCH(CException,e)</p><p><b> {</b></p><p>
98、TCHAR szError[100];</p><p> e->GetErrorMessage(szError,100);</p><p> AfxMessageBox(szError);</p><p><b> }</b></p><p><b> END_CATCH</b><
99、;/p><p><b> }</b></p><p> 刷新列表信息控件的控制函數(shù):</p><p> void CCRDBS1007010103Dlg::RefreshApprComboData()</p><p><b> {</b></p><p> m_comb
100、oApproach.ResetContent();</p><p><b> TRY{</b></p><p> CRecordset rs(&m_db);</p><p><b> //</b></p><p> rs.Open(CRecordset::dynaset,"
101、select *from approach_info_tab");</p><p> while(!rs.IsEOF())</p><p><b> {</b></p><p> CString strName;</p><p><b> //</b></p><
102、;p> rs.GetFieldValue(1,strName);</p><p> m_comboApproach.AddString(strName);</p><p> rs.MoveNext();</p><p><b> }</b></p><p> m_comboApproach.SetCurS
103、el(0);</p><p><b> }</b></p><p> CATCH(CDBException,ex)</p><p><b> {</b></p><p> AfxMessageBox(ex->m_strError);</p><p> Afx
104、MessageBox(ex->m_strStateNativeOrigin);</p><p><b> }</b></p><p> AND_CATCH(CMemoryException,pEx)</p><p><b> {</b></p><p> pEx->ReportE
105、rror();</p><p> AfxMessageBox("MEMORY EXCEPTION");</p><p><b> }</b></p><p> AND_CATCH(CException,e)</p><p><b> {</b></p>&l
106、t;p> TCHAR szError[100];</p><p> e->GetErrorMessage(szError,100);</p><p> AfxMessageBox(szError);</p><p><b> }</b></p><p><b> END_CATCH<
107、/b></p><p><b> }</b></p><p> void CCRDBS1007010103Dlg::RefreshProfComboData()</p><p><b> {</b></p><p> m_comboProfession.ResetContent();&
108、lt;/p><p><b> TRY{</b></p><p> CRecordset rs(&m_db);</p><p><b> //</b></p><p> rs.Open(CRecordset::dynaset,"select *from profession_in
109、fo_tab");</p><p> while(!rs.IsEOF())</p><p><b> {</b></p><p> CString strName;</p><p><b> //</b></p><p> rs.GetFieldValue
110、(1,strName);</p><p> m_comboProfession.AddString(strName);</p><p> rs.MoveNext();</p><p><b> }</b></p><p> m_comboProfession.SetCurSel(0);</p>&l
111、t;p><b> }</b></p><p> CATCH(CDBException,ex)</p><p><b> {</b></p><p> AfxMessageBox(ex->m_strError);</p><p> AfxMessageBox(ex->m_
112、strStateNativeOrigin);</p><p><b> }</b></p><p> AND_CATCH(CMemoryException,pEx)</p><p><b> {</b></p><p> pEx->ReportError();</p>&
113、lt;p> AfxMessageBox("MEMORY EXCEPTION");</p><p><b> }</b></p><p> AND_CATCH(CException,e)</p><p><b> {</b></p><p> TCHAR szErr
114、or[100];</p><p> e->GetErrorMessage(szError,100);</p><p> AfxMessageBox(szError);</p><p><b> }</b></p><p><b> END_CATCH</b></p>&l
115、t;p><b> }</b></p><p> void CCRDBS1007010103Dlg::RefreshVocComboData()</p><p><b> {</b></p><p> m_comboVocation.ResetContent();</p><p><
116、;b> TRY{</b></p><p> CRecordset rs(&m_db);</p><p><b> //</b></p><p> rs.Open(CRecordset::dynaset,"select *from vocation_info_tab");</p>
117、<p> while(!rs.IsEOF())</p><p><b> {</b></p><p> CString strName;</p><p><b> //</b></p><p> rs.GetFieldValue(1,strName);</p>&
118、lt;p> m_comboVocation.AddString(strName);</p><p> rs.MoveNext();</p><p><b> }</b></p><p> m_comboVocation.SetCurSel(0);</p><p><b> }</b>
119、;</p><p> CATCH(CDBException,ex)</p><p><b> {</b></p><p> AfxMessageBox(ex->m_strError);</p><p> AfxMessageBox(ex->m_strStateNativeOrigin);</p&
120、gt;<p><b> }</b></p><p> AND_CATCH(CMemoryException,pEx)</p><p><b> {</b></p><p> pEx->ReportError();</p><p> AfxMessageBox("
121、;MEMORY EXCEPTION");</p><p><b> }</b></p><p> AND_CATCH(CException,e)</p><p><b> {</b></p><p> TCHAR szError[100];</p><p>
122、 e->GetErrorMessage(szError,100);</p><p> AfxMessageBox(szError);</p><p><b> }</b></p><p><b> END_CATCH</b></p><p><b> }</b>
123、</p><p><b> 添加地區(qū)信息函數(shù):</b></p><p> void CCRDBS1007010103Dlg::OnBtnAreaAdd() </p><p><b> {</b></p><p> // TODO: Add your control notification
124、handler code here</p><p> if(!UpdateData())</p><p><b> return ;</b></p><p> if(m_strConfigArea.IsEmpty())</p><p><b> {</b></p><p&
125、gt; AfxMessageBox("請?zhí)顚懩愕牡貐^(qū)名稱");</p><p><b> return;</b></p><p><b> }</b></p><p><b> TRY</b></p><p><b> {</b&g
126、t;</p><p> CRecordset rs(&m_db);</p><p> CString sql;</p><p> rs.Open(CRecordset::dynaset,"Select max(area_id)from area_info_tab ");</p><p><b>
127、//</b></p><p> int newID=1;</p><p> if(!rs.IsEOF())</p><p><b> {</b></p><p> CDBVariant var;</p><p><b> //</b></p>
128、<p> rs.GetFieldValue((short)0,var,SQL_C_SLONG);</p><p> if(var.m_dwType!=DBVT_NULL)</p><p> newID=var.m_iVal+1;</p><p><b> }</b></p><p> sql.Fo
129、rmat("Insert into area_info_tab(area_id," "area_name )"</p><p> "VALUES(" "%d,'%s')",newID,m_strConfigArea);</p><p> TRACE(sql);</p><
130、;p> m_db.ExecuteSQL(sql);</p><p><b> //</b></p><p> InsertConfigItem(&m_listArea,newID,m_strConfigArea);</p><p> RefreshAreaComboData();</p><p>&
131、lt;b> }</b></p><p> CATCH(CDBException,ex)</p><p><b> {</b></p><p> AfxMessageBox(ex->m_strError);</p><p> AfxMessageBox(ex->m_strState
132、NativeOrigin);</p><p><b> }</b></p><p> AND_CATCH(CMemoryException,pEx)</p><p><b> {</b></p><p> pEx->ReportError();</p><p>
133、 AfxMessageBox("MEMORY EXCEPTION");</p><p><b> }</b></p><p> AND_CATCH(CException,e)</p><p><b> {</b></p><p> TCHAR szError[100];
134、</p><p> e->GetErrorMessage(szError,100);</p><p> AfxMessageBox(szError);</p><p><b> }</b></p><p><b> END_CATCH</b></p><p>&
135、lt;b> }</b></p><p><b> 修改地區(qū)信息函數(shù):</b></p><p> void CCRDBS1007010103Dlg::OnBtnAreaMod() </p><p><b> {</b></p><p> // TODO: Add your
136、control notification handler code here</p><p> if(!UpdateData())</p><p><b> return ;</b></p><p> if(m_strConfigArea.IsEmpty())</p><p> {AfxMessageBox(&
137、quot;請?zhí)顚懩阋薷牡牡貐^(qū)");</p><p><b> return;</b></p><p><b> }</b></p><p> int nItem=m_listArea.GetNextItem(-1,LVNI_SELECTED);</p><p><b>
138、 //</b></p><p> if(nItem==-1)</p><p><b> {</b></p><p> AfxMessageBox("沒有選擇要修改的地區(qū)信息");</p><p><b> return;</b></p><
139、p><b> }</b></p><p><b> //</b></p><p> int id=atoi(m_listArea.GetItemText(nItem,0));</p><p><b> TRY</b></p><p><b> {<
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- sql_server數(shù)據(jù)庫課程設(shè)計_圖書館管理系統(tǒng)
- sql_server數(shù)據(jù)庫課程標(biāo)準(zhǔn)
- sql server 2005數(shù)據(jù)庫課程設(shè)計
- sql__server數(shù)據(jù)庫課程設(shè)計
- 數(shù)據(jù)庫sql課程設(shè)計--- 采購管理系統(tǒng)
- sql_server2000數(shù)據(jù)庫課程設(shè)計物資管理信息系統(tǒng)
- sql_server2000數(shù)據(jù)庫課程設(shè)計---物資管理信息系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計--人力資源管理系統(tǒng)
- sql數(shù)據(jù)庫課程設(shè)計
- sql數(shù)據(jù)庫課程設(shè)計-- 小型超市管理系統(tǒng)
- 《sql server數(shù)據(jù)庫技術(shù)》課程標(biāo)準(zhǔn)
- sql server數(shù)據(jù)庫原理畢業(yè)設(shè)計管理系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計--基于sql server的高校二手平臺數(shù)據(jù)庫設(shè)計
- sql server數(shù)據(jù)庫教程-
- 數(shù)據(jù)庫課程設(shè)計--人力資源管理系統(tǒng)數(shù)據(jù)庫的設(shè)計與實現(xiàn)
- 基于SQL Server的心音數(shù)據(jù)庫管理系統(tǒng)設(shè)計.pdf
- sql server數(shù)據(jù)庫試卷題庫
- 數(shù)據(jù)庫課程設(shè)計---客戶信息管理系統(tǒng)
- sql數(shù)據(jù)庫課程設(shè)計 學(xué)生選課
- sql學(xué)生成績管理系統(tǒng)課程設(shè)計數(shù)據(jù)庫
評論
0/150
提交評論