【文章內(nèi)容簡(jiǎn)介】
機(jī)的某種數(shù)據(jù)庫(kù)格式的文件(如本機(jī) DOS 目錄下的 Access文件 *.mdb) , 也可以是遠(yuǎn)程數(shù)據(jù)庫(kù)文件(如 Microsoft SQL Server) 。它可以是目前已知的某種 DBMS 格式 , 也可以是一種全新的數(shù)據(jù)庫(kù)格式。 在 ODBC 方式中,不管底層網(wǎng)絡(luò)環(huán)境如何,也無論采用何種 DBMS,用戶在程序中都使用同一套標(biāo)準(zhǔn)代碼,源程序可以不因底層的變化而重新編建或修改,從而減輕了開發(fā)維護(hù)的工作量,縮短了開發(fā)周期。但 ODBC 訪問數(shù)據(jù)庫(kù)的速度較慢,而且需為每個(gè)客戶端配置 ODBC 數(shù)據(jù)源。 ADO 連接數(shù)據(jù)庫(kù) 微軟公司的 ADO ( ActiveX Data Objects) 是一個(gè)用于存取數(shù)據(jù)源的 COM組件。它提供了編程語(yǔ)言和統(tǒng)一數(shù)據(jù)訪問方式 OLE DB 的一個(gè)中間層。允許開發(fā)人員編寫訪問數(shù)據(jù)的代碼而不用關(guān)心數(shù)據(jù)庫(kù)是如何實(shí)現(xiàn)的,而只用關(guān)心到數(shù)據(jù)庫(kù)的連接。訪問數(shù)據(jù)庫(kù)的時(shí)候,關(guān)于 SQL 的知識(shí)不是必要的,但是特定數(shù)據(jù)庫(kù)支持的 SQL 命令仍可以通過 ADO 中的命令對(duì)象來執(zhí)行。 ADO 包含一些頂層的對(duì)象: 連接,代表到數(shù)據(jù)庫(kù)的連接 記錄集,代表數(shù)據(jù)庫(kù)記錄的一個(gè)集合 命令,代表一個(gè) SQL 命令 記錄,代表數(shù)據(jù)的一個(gè)集合 流,代表數(shù)據(jù)的順序集合 錯(cuò)誤,代表數(shù)據(jù)庫(kù)訪問中產(chǎn)生的意外 字段,代表一個(gè)數(shù)據(jù)庫(kù)字段 參數(shù),代表一個(gè) SQL 參數(shù) 屬性,保存對(duì)象的信息 ADO 向 VB 程序員提供了很多好處。包括易于使用,熟悉的界面,高速度以及較低的內(nèi)存占用。同傳統(tǒng)的數(shù)據(jù)對(duì)象層次( DAO 和 RDO)不同, ADO 可以獨(dú)立創(chuàng)建。因此你可以只創(chuàng)建一個(gè) Connection對(duì)象,但是可以有多個(gè),獨(dú)立的Recordset對(duì)象來使用它。 ADO 針對(duì)客戶/服務(wù)器以及 WEB 應(yīng)用程序作了優(yōu)化。 ADO 是基于 OLE DB 的訪問接口,它是面向?qū)ο蟮?OLE DB 技術(shù),繼承了OLE DB 的優(yōu)點(diǎn)。屬于數(shù)據(jù)庫(kù)訪問的高層接口。開發(fā)人員在使用 ADO 時(shí),其實(shí)就是在使用 OLE DB,不過 OLE DB 更加接近底 層。 ADO 向我們提供了一個(gè)熟悉的,高層的對(duì) OLE DB 的 Automation 封裝接口。 圖 VB 應(yīng)用程序與數(shù)據(jù)庫(kù)的連接 V B 應(yīng)用程序 A c c es s 2 0 0 0數(shù)據(jù)庫(kù)M ic r o s o f t .J et .O L E D B 第三章 需求分析 需求分析 軟件需求分析是軟件開發(fā)周期的第一個(gè)階段,也是關(guān)系到軟件開始成敗的關(guān)鍵步驟。準(zhǔn)確、完整和規(guī)范化的軟件需求是軟件開發(fā)成功的關(guān)鍵。 系統(tǒng) 數(shù)據(jù)流程圖 在 研究了用戶提供的原始資料及要求后,畫出了系統(tǒng)的數(shù)據(jù)流程圖如下所示。 倉(cāng)庫(kù)收料 倉(cāng)庫(kù)發(fā)料物料管理供應(yīng)商管理產(chǎn)品管理訂單管理生產(chǎn)計(jì)劃倉(cāng)位管理增料操作退料操作盤點(diǎn)報(bào)表查詢 圖 31 數(shù)據(jù)流程圖 功能需求及設(shè)計(jì)思 想 總體架構(gòu)思想 本倉(cāng)庫(kù)管理系統(tǒng)是利用 Client/Server 結(jié)構(gòu),即客戶機(jī) /服務(wù)器模式。這種 CS 模式適用于局域網(wǎng)、安全性可以得到可靠的保證。它為數(shù)據(jù)提供了更安全的存取模式。響應(yīng)速度快。程序開發(fā)具有很強(qiáng)的針對(duì)性,因此,操作界面漂亮,形式多樣,可以充分滿足客戶自身的個(gè)性化要求。 圖 32 C/S 結(jié)構(gòu)示意圖 物料管理模塊 首先我們?yōu)槊恳粋€(gè)物料制定出唯一的一個(gè)代碼,在整個(gè)物料管理過程中都將以這個(gè)代碼來管理物料。設(shè)計(jì)代碼如下: 1 Y Y Y – X X X X;其中 1 代表是物料。YYY 代表序列號(hào), XXXX 由系統(tǒng)自動(dòng)給出。每增加一個(gè)物料時(shí),系統(tǒng)都會(huì)給出此物料的代碼。 對(duì)于物料數(shù)量上的控制采用最大最小數(shù)量法。如果當(dāng)前數(shù)量小于最小數(shù)量,則需出訂單去采購(gòu),如果大于最大數(shù)量則不允許再出訂單。自動(dòng)訂單是根據(jù)這個(gè)原則產(chǎn)生的。 物料根據(jù)其價(jià)值分為 A, B, C 三類,可以為每一種類型的物料制定不同的控制方法。 A類物品:高值──價(jià)值占庫(kù)存總值70 80%的相對(duì)少數(shù)物品。通常為物品的15 20%。 B類物品:中值──總值占庫(kù)存總值的15 20%。物品數(shù)居中,通常占物品的30 40%。 C類物品:低值──庫(kù)存總值幾乎可以忽略不計(jì),只占5 10%。是物品的大多數(shù),通常占60 70%。 供應(yīng)商管理模塊 供應(yīng)商管理模塊記錄公司所有供應(yīng)商的情況,以保證每個(gè)供應(yīng)商都是經(jīng)過認(rèn)證的。并且為每個(gè)供應(yīng)商編制一個(gè)統(tǒng)一的代碼。以代碼來代表供應(yīng)商,可以減少數(shù)據(jù)庫(kù)中的數(shù)據(jù)量。 供應(yīng)商管理模塊還包括公司的物料在供應(yīng)商處的代碼。就像我們?nèi)ベI東西,我們不但要知道去哪 里買,還要知道買什么。供應(yīng)商代碼只提供我們?nèi)ツ睦镔I,A cces s 2 0 0 0數(shù)據(jù)庫(kù)V B 應(yīng)用程序 而物料在供應(yīng)商的代碼則是解決了要買什么的問題。 系統(tǒng)為了統(tǒng)一管理,加強(qiáng)控制。將這兩個(gè)信息結(jié)合在一起給出一個(gè)綜合代碼。例如我們?nèi)ト嗣裆虉?chǎng)買一件衣服給出一個(gè)綜合代碼為 40000001,而去長(zhǎng)發(fā)商場(chǎng)去買同一件衣服則給出的綜合代碼為 40000002,這樣處理有利于更好的分清每個(gè)物料及供應(yīng)商之間的關(guān)系。為生產(chǎn)線提供更多的更全的數(shù)據(jù)。 產(chǎn)品管理模塊 物料是指公司從供應(yīng)商處買來的,是半成品。產(chǎn)品是公司生產(chǎn)的。同樣,我們也需為公司的每一個(gè)產(chǎn)品編制一個(gè) 代碼。方便管理。另一方面,還需建立產(chǎn)品與物料之間的聯(lián)系。即產(chǎn)品組成表。表示某個(gè)產(chǎn)品是由哪些物料組成的。在制作生產(chǎn)計(jì)劃時(shí),只需給出生產(chǎn)的產(chǎn)品代碼,而無需給出每一個(gè)物料的代碼。 訂單管理模塊 訂單管理主要任務(wù)是產(chǎn)生訂單。產(chǎn)生定單的方法有兩種,一種是自動(dòng)定單。一種是手工下單。自動(dòng)定單是系統(tǒng)根據(jù)當(dāng)前的物料狀況及物料控制方法來對(duì)每一個(gè)物料進(jìn)行分析,如果符合下單條件則自動(dòng)產(chǎn)生一個(gè)訂單,經(jīng)確認(rèn)后就為有效訂單。在確認(rèn)過程中,可以對(duì)訂單進(jìn)行各種操作。手工下單就是人為地去采購(gòu)某一種物料,并且把這個(gè)訂單記錄到 系統(tǒng)中去。自動(dòng)訂單可以一次下多個(gè)定單,手工下單只能一個(gè)一個(gè)產(chǎn)生訂單。 訂單是倉(cāng)庫(kù)進(jìn)行收料操作的基礎(chǔ)。 倉(cāng)庫(kù)收料 倉(cāng)庫(kù)根據(jù)系統(tǒng)發(fā)出的訂單進(jìn)行收料。 生產(chǎn)計(jì)劃管理模塊 此模塊主要是管理生產(chǎn)計(jì)劃。根據(jù)產(chǎn)品及生產(chǎn)數(shù)量,日期等不同將生產(chǎn)分為一批一批,利用生產(chǎn)計(jì)劃號(hào),即工單號(hào)來區(qū)分。每次計(jì)劃產(chǎn)生前,系統(tǒng)會(huì)根據(jù)產(chǎn)品組成表提供的信息來檢驗(yàn)當(dāng)前的物料狀況,如果物料不能滿足此次生產(chǎn),則不能成功產(chǎn)生生產(chǎn)計(jì)劃。 倉(cāng)庫(kù)的發(fā)料也是根據(jù)生產(chǎn)計(jì)劃來進(jìn)行的。每個(gè)生產(chǎn)計(jì)劃都會(huì)自動(dòng)產(chǎn)生一個(gè)發(fā)料清單。 倉(cāng)位管理模塊 倉(cāng)位管理記錄了倉(cāng)庫(kù)每個(gè)倉(cāng)位存放的物料。 倉(cāng)庫(kù)發(fā)料 倉(cāng)庫(kù)根據(jù)生產(chǎn)計(jì)劃給出的工單號(hào)來進(jìn)行發(fā)料。發(fā)料時(shí),即可以一次性發(fā)多個(gè)料,即按工單發(fā)料;也可以按物料一個(gè)一個(gè)來發(fā)??勺杂蛇x擇。也可以兩種方法結(jié)合在一起來發(fā)料。 生產(chǎn)增料和退料 生產(chǎn)增料代表了生產(chǎn)損耗。為了核算每批產(chǎn)品的生產(chǎn)成本,因此增料操作需按生產(chǎn)計(jì)劃號(hào)來進(jìn)行。即每個(gè)生產(chǎn)增料都需確定到每個(gè)計(jì)劃號(hào),因此增料是以生產(chǎn)計(jì)劃號(hào)為基礎(chǔ)的。 生產(chǎn)退料是生產(chǎn)線將好的物料退回給倉(cāng)庫(kù)。 盤點(diǎn)管理 倉(cāng) 庫(kù)每月,每季及每年都要進(jìn)行盤點(diǎn)。盤點(diǎn)時(shí)需提供盤點(diǎn)報(bào)表及盤點(diǎn)調(diào)整。 報(bào)表與查詢 需提供根據(jù)各種條件來得到查詢結(jié)果。條件即可以是單個(gè)條件也可以組合條件。查詢結(jié)果分為三個(gè)部分,一部分是基本信息,另一部分是訂單信息,以及生產(chǎn)計(jì)劃信息。 操作日志 記錄系統(tǒng)內(nèi)主要的數(shù)據(jù)的操作,以便日后查詢所需。 倉(cāng)庫(kù)管理系統(tǒng)系統(tǒng)管理模塊 倉(cāng)庫(kù)管理模塊 物料管理模塊 報(bào)表查詢模塊重登錄修改密碼用戶管理退出入庫(kù)操作出庫(kù)操作退料操作增料操作倉(cāng)位管理盤點(diǎn)損益物料管理產(chǎn)品管理供應(yīng)商管理生產(chǎn)計(jì)劃訂單管理查詢出庫(kù)操作盤點(diǎn)報(bào)表第四章 系統(tǒng)設(shè)計(jì) 在進(jìn)行了需求分析、確定了設(shè)計(jì)思想之后,就要進(jìn)行系統(tǒng)的功能設(shè)計(jì)和數(shù)據(jù)庫(kù)的設(shè)計(jì)。 系統(tǒng)功能設(shè)計(jì) 系統(tǒng)功能模塊圖 在仔細(xì)分析了公司的物料數(shù)據(jù)圖后,決 定將整個(gè)系統(tǒng)分為四大模塊,每個(gè)模塊又有若干個(gè)子模塊。整個(gè)系統(tǒng)功能模塊如下圖所示: 圖 41 系統(tǒng)功能模塊 圖 系統(tǒng) 各 模塊 說明 系統(tǒng)管理模塊 在此功能模塊,用戶可以進(jìn)行用戶間的切換,修改密碼,及退出。對(duì)于管理員和超級(jí)用戶還可以進(jìn)行用戶管理。 倉(cāng)庫(kù)管理模塊 倉(cāng)庫(kù)管理模塊可完成倉(cāng)庫(kù)的主要日常操作。包括收料,發(fā)料,增料,退料。同時(shí)還有倉(cāng)庫(kù)的倉(cāng)位管理及盤點(diǎn)調(diào)整。 物料管理模塊 物料管理模塊可完成附加功能,利用這些功能可很好的防止由于人為因素造成的數(shù)據(jù) 錯(cuò)誤。具體有物料管理,產(chǎn)品管理,供應(yīng)商管理,訂單管理和生產(chǎn)計(jì)劃管理。 報(bào)表查詢模塊 在此功能模塊,用戶可以進(jìn)行各種條件的查詢。實(shí)時(shí)了解整個(gè)公司的物料狀況。為決策提供依據(jù)。具體有查詢,操作日志及盤點(diǎn)報(bào)表。 數(shù)據(jù)庫(kù)設(shè)計(jì) 大多數(shù)應(yīng)用系統(tǒng)都需要后臺(tái)數(shù)據(jù)庫(kù)地支持。在 Windows 操作系統(tǒng)中, Access和 SQL Server 是最常見地網(wǎng)絡(luò)后臺(tái)數(shù)據(jù)庫(kù)。本系統(tǒng)是采用 Access 數(shù)據(jù)庫(kù)存儲(chǔ)數(shù)據(jù)。 創(chuàng)建數(shù)據(jù)庫(kù) 本系統(tǒng)采用了 Access 作為數(shù)據(jù)庫(kù)管理系統(tǒng)。先啟動(dòng) Access2021 程序 ,然后創(chuàng)建名為“ WMS”的數(shù)據(jù)庫(kù)。并為此數(shù)據(jù)庫(kù)設(shè)置密碼。 數(shù)據(jù)表結(jié)構(gòu) 本倉(cāng)庫(kù)管理系統(tǒng)的數(shù)據(jù)庫(kù)共包括 12 張數(shù)據(jù)表。 用戶信息表 用戶信息表( Users)用來保存用戶(管理員,用戶)的信息,該表的結(jié)構(gòu)如表 41 所示。 表 41 Users(用戶信息)表的結(jié)構(gòu) 物料代碼表 U s e rs 表結(jié)構(gòu)序號(hào) 字段 描述 類型和長(zhǎng)度 主鍵 可空 默訃值1 u s e r_ n a m e 用戶名 T e x t 是 否 沒有2 u s e r_ p w d 用戶密碼 T e x t 否 否 沒有3 u s e r_ le v e l 用戶權(quán)限 T e x t 否 否 沒有4 u s e r_ d a t e 用戶建立日期 D a t e / T im e 否 否 沒有5 re m a rk 備注 T e x t 否 是 沒有 物料代碼表( Materials)用來存放企業(yè)所需用的所有的物料。該表的結(jié)構(gòu)如表42 所示。 表 42 Materials(物料代碼)表 的結(jié)構(gòu) 產(chǎn)品代碼表 產(chǎn)品代碼表( Productions)用來保存公司生產(chǎn)的所有產(chǎn)品的信息,該表的結(jié)構(gòu)如表 43 所示。 表 43 Productions(產(chǎn)品代碼)表的結(jié)構(gòu) 產(chǎn)品組成表 產(chǎn)品組成 表( BoMs)用來 記錄公司生產(chǎn)的產(chǎn)品是由哪些物料組成的。為倉(cāng)庫(kù)發(fā)料提供依據(jù)。 該表的結(jié)構(gòu)如表 44 所示。 表 44 BoMs( 產(chǎn)品組成 )表的結(jié)構(gòu) 供應(yīng)商代碼表 B o M s 表結(jié)構(gòu)序號(hào) 字段 描述 類型和長(zhǎng)度 主鍵 可空 默訃值1 Pro d u c t io n PN 產(chǎn)品代碼 T e x t 否 否 沒有2 M a t e ri a lPN 物料代碼 T e x t 否 否 沒有3 M a t e ri a lQ T Y 物料數(shù)量 T e x t 否 否 沒有4 R e m a rk 備注 T e x t 否 是