freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

庫存管理系統(tǒng)—vc畢業(yè)設(shè)計-預(yù)覽頁

2025-08-30 09:50 上一頁面

下一頁面
 

【正文】 VARCHAR2(6) NOT NULL 設(shè)備號 department VARCHAR2(20) NULL 使用部門 out_date DATE NULL 出庫時間 out_state NUMBER(1) NULL 出庫狀況  out_person VARCHAR2(6) NULL 經(jīng)手人 out_number NUMBER(6) NOT NULL 出庫數(shù)量 taker VARCHAR2(10) NULL 領(lǐng)取人 usage VARCHAR2(20) NULL 用途表34 現(xiàn)有庫存表 device  列  名數(shù) 據(jù) 類 型 可否 為空 說    明 code VARCHAR2(6) NOT NULL 設(shè)備號(主鍵) now_number NUMBER(6) NULL 現(xiàn)有庫存 high_numberNUMBER(6) NULL 最大庫存 low_number NUMBER(6) NULL 最少庫存 total_number NUMBER(6) NULL 總數(shù)表35 部門需求表 device_need  列  名數(shù) 據(jù) 類 型 可否 為空 說    明 code VARCHAR2(6) NOT NULL 設(shè)備號 department VARCHAR2(20) NOT NULL 部門名稱 need_number NUMBER(6) NULL 需要數(shù)量 begin_date DATE NULL 需求開始時間 end_date DATE NULL 需求結(jié)束時間表36 設(shè)備還庫表 device_return  列  名數(shù) 據(jù) 類 型 可否 為空 說    明 code VARCHAR2(6) NOT NULL 設(shè)備號 return_date DATE NULL 還庫時間(主鍵) keeper VARCHAR2(10) NULL 倉庫管理員 return_number NUMBER(6) NULL 歸還數(shù)量 return_person VARCHAR2(10) NULL 歸還人 表37 操作日志表howdo  列  名數(shù) 據(jù) 類 型 可否 為空 說    明 do_user VARCHAR2(10) NOT NULL 操作員 do_what VARCHAR2(40) NOT NULL 操作內(nèi)容 do_date DATE NOT NULL 操作時間表38 設(shè)備采購計劃表 device_wantbuy  列  名數(shù) 據(jù) 類 型 可否 為空 說    明 code VARCHAR2(6) NOT NULL 設(shè)備號 now_number NUMBER(6) NULL 現(xiàn)有庫存 total_number NUMBER(6) NULL 總庫存 max_number NUMBER(6) NULL 最大庫存 buy_number NUMBER(6) NULL 購買數(shù)量 provider VARCHAR2(10) NULL 供應(yīng)商 price NUMBER(6) NULL 價格 buy_date DATE NULL計劃采購時間第4章 數(shù)據(jù)庫詳細設(shè)計4.1 創(chuàng)建應(yīng)用程序此倉庫管理系統(tǒng)應(yīng)用程序的創(chuàng)建步驟如下:(1) 選擇菜單“FileNew”中的”新建項目“選項卡中”MFC AppWizard(exe)”,設(shè)置合適的目錄和項目名,比如”E:\Projects”目錄下的”DMS”項目。 第四行定義了一個宏,這是不同的后臺數(shù)據(jù)庫對SQL語句中日期的用法的要求不同引起的。這樣可以增強操作人員的責任感,提高系統(tǒng)的安全性,也利于維護數(shù)據(jù)庫的完整性,此外,一個翔實的操作日志,也給開發(fā)過程中的調(diào)試、除錯帶來很大便利,所以,這個模塊的設(shè)計被放在了做前面/ 在這個類中,保存了一個數(shù)據(jù)庫連接指針m_DBCnt4.2.2 讀日志模塊在項目資源中加入一個對話框,它包含了一個列表框控件,幾個編輯框和兩個按鈕。次模塊的事件和數(shù)據(jù)處理與后面的類似,最后整個窗體的外觀如圖42所示         圖42  查看日志窗4.3 登陸窗口的設(shè)計和程序初始化 彈出登陸對話框,并從中獲得一個有效的用戶名。4.4 主對話框界面的設(shè)計 登陸完成之后,顯示出主對話框。4.5 設(shè)備代碼管理窗口的建立 設(shè)備代碼表格(device_code)經(jīng)常被其他表格引用,如獲取合法編號、由設(shè)備編號查找設(shè)備名稱等。 其中m_listSetExtendedStyle(LVS_EX_FULLROWSELECT)一行,行使單擊列表框時,是整行被選中而非其中的某一項。它實質(zhì)上是一個結(jié)構(gòu)體,第一個成員變量vt指明了VARIANT當前包含的類型;第二至第四個成員為保留字段;第五個成員變量則是一個union類型,VARIANT型變量的數(shù)據(jù)實際就放在這個union里。用戶可以在此新增、修改、刪除某種設(shè)備的記錄。 修改記錄時,用戶單擊列表中某一行,程序利用上一節(jié)提到的方法,在窗口下面把這一行記錄的詳細信息顯示出來,用戶即可對之修改。在創(chuàng)建入庫模塊之前,先要創(chuàng)建他的管理模塊。這部分技術(shù)在前面的章節(jié)中已經(jīng)有了介紹,這里不再重復。如圖48所示圖48 設(shè)備入庫登記界面 這里用兩個DateTime Picker控件來讓用戶輸入時間,缺省的時間即是系統(tǒng)當前時間。 這里用到了ADO中事務(wù)處理的概念。 在第二個操作成功結(jié)束之后調(diào)用了Connection對象的CommitTrans取消這次事務(wù)。 單擊主對話框里的“生成設(shè)備采購計劃報表“將進入設(shè)備采購報表的生成界面。4.10 庫存報警窗口 倉庫中的每一個設(shè)備都有最大庫存量和最小庫存量的限制(這部分數(shù)據(jù)在 device表中保存)。 圖410 庫存報警界面 其中的“搜索過多庫存“按鈕將搜索庫中當前量多于最高限量的設(shè)備,”搜索過少庫存“則反之。 單擊“庫存信息”按鈕進入庫存表(device)管理。單擊下方的“出庫信息“按鈕進入出庫信息表(device_out)的管理。 單擊“設(shè)備需求“進入設(shè)備需求登記的界面。如圖125所示。 第5章 數(shù)據(jù)庫維護與調(diào)試 人和計算機通信仍然使用人工設(shè)計的語言,即程序設(shè)計語言,所謂編碼就是把軟件設(shè)計的結(jié)果翻譯成計算機可以識別的形式用某種程序設(shè)計語言書寫的程序。2 數(shù)據(jù)說明:說明的次序應(yīng)該標準化,有次序就容易查閱,可以加速測試、調(diào)試和維護的過程。5 效率:效率主要是指處理機時間和存儲器容量兩個方面測試的目標是要發(fā)現(xiàn)軟件中的錯誤,并加以糾正。一種是先分別測試每個模塊,再把所有模塊按設(shè)計要求放在一起結(jié)合成所要的程序,成為非漸增式測試方法:另一種是把下一個要測試的模塊同已經(jīng)測試好的模塊結(jié)合起來進行測試,測試完以后再把下一個應(yīng)該測試的模塊結(jié)合近來測試,稱為漸增式測試。如果每個模塊只實現(xiàn)一個功能,則需要的測試方案明顯減少,模塊中的錯誤也容易預(yù)測和發(fā)現(xiàn)。測試中,我們將數(shù)據(jù)庫中的數(shù)據(jù)進行錄入,當錄入為零時,系統(tǒng)給出提示“無記錄”;當錄入幾條信息是,對系統(tǒng)進行測試,不論是查詢,刪除或是更新的速度都很合乎要求。本程序的測試中存在的錯誤基本已更正,并確保功能的基本完成 結(jié)束語本系統(tǒng)是一個面向小型企業(yè),具有一定實用性的數(shù)據(jù)庫信息管理系統(tǒng)。 本系統(tǒng)具有相當?shù)膶嵱霉δ堋H纾? ※ ※只要學習就會有更多的問題,有更多的難點,但也會有更多的收獲。在些表示衷心地感謝。 參考文獻1. Visual C++ 程序設(shè)計教程 張艷 主編           徐州:中國礦業(yè)大學出版社,2004年1月2. 中文版Visual C++ 高智勇 主編            北京:航空工業(yè)出版社,2005年11月3. Visual C++ 編程實例與技巧 曾琦 主編           北京:中國水利水電出版社,2002年2月4. Visual C++ 程序設(shè)計教程 劉瑞新,汪遠征 編著             北京:機械工業(yè)出版社,2000年10月5. Access 使用成功秘訣 [美]艾倫。 _RecordsetPtr MySet。 _variant_t Holder。 if(!=VT_NULL) (i, 1, (char*)(_bstr_t)Holder)。 (TRUE)。 (0,設(shè)備號)。rect)。 (LVS_EX_FULLROWSELECT)。 m_code = (i,0)。}void CDlgDevcode::OnBtnDcadd() { UpdateData()。,39。 try { m_DBCntExecute(sql,NULL,adCmdText)。 } m_logAddLog(添加設(shè)備記錄。 CString sql_。 _bstr_t sql = sql_。 return。 }void CDlgDevcode::OnBtnDcupd() { UpdateData()。 WHERE CODE=39。 try { m_DBCntExecute(sql,NULL,adCmdText)。 } m_logAddLog(更新設(shè)備記錄。 (0,設(shè)備號)。 (4,總數(shù))。 int wid = 。 (3,wid/5)。 IADORecordBinding *picRs = NULL。 pRst = m_DBCntExecute(strSQL, NULL, adCmdText) TESTHR(pRstQueryInterface(__uuidof(IADORecordBinding),(LPVOID*)amp。 int i = 0。 pRstClose()。 return TRUE。 (FALSE)。 try { _bstr_t strSQL(SELECT * FROM DEVICE)。picRs))。 char buf[64]。 sprintf(buf,%f,)。 sprintf(buf,%f,)。 pRstClose()。 return。 m_cur = (float)atof((i,1))。 UpdateData(FALSE)。 CDevRs rs。 } try { TESTHR((__uuidof(Recordset)))。 = m_max。 (vaFieldlist,vaValuelist)。 e) { AfxMessageBox(())。 RefreshData()。 CString sql_。 _bstr_t sql = sql_。 return。 RefreshData()。 //Interface Pointer declared.(VC++ Extensions) CDevRs rs。 } CString sql_。 _bstr_t sql = sql_。picRs))。 = m_max。rs))。 e) { AfxMessageBox(())。 RefreshData()。 _RecordsetPtr pRst = NULL。 TESTHR((__uuidof(Recordset)))。 TESTHR(picRsBindToRecordset(amp。 pRstMoveNext()。 e) { AfxMessageBox(())。 return TRUE。 _RecordsetPtr pRst = NULL。 (,11)。 = m_number。 (vaFieldlist,vaValuelist)。 CString sql_。 _bstr_t sql = sql_。 = 。 COleSafeArray vaFields, vaValues。 IADORecordBinding *picRs = NULL。rsDev))。 TESTHR(picRsUpdate(a
點擊復制文檔內(nèi)容
語文相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1