【正文】
表 44 BoMs( 產(chǎn)品組成 )表的結(jié)構(gòu) 供應(yīng)商代碼表 B o M s 表結(jié)構(gòu)序號 字段 描述 類型和長度 主鍵 可空 默訃值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 否 是 沒有Pro d u c t io n s 表結(jié)構(gòu)序號 字段 描述 類型和長度 主鍵 可空 默訃值1 Pro d u c t io n PN 產(chǎn)品代碼 T e x t 是 否 沒有2 Pro d u c t io n D e s c 產(chǎn)品描述 T e x t 否 否 沒有3 D a t e 產(chǎn)品建立日期 T e x t 否 否 沒有4 A d d B y 產(chǎn)品建立者 D a t e / T im e 否 否 沒有5 R e m a rk 備注 T e x t 否 是 沒有M a t e ri a ls 表結(jié)構(gòu)序號 字段 描述 類型和長度 主鍵 可空 默訃值1 Pa rt N u m b e r 物料代碼 T e x t 是 否 沒有2 D e s c ri p t io n 物料描述 T e x t 否 否 沒有3 Pa rt T y p e 物料類型 T e x t 否 否 沒有4 D a t e 物料建立日期 D a t e / T im e 否 否 沒有5 A d d B y 物料建立者 T e x t 否 否 沒有6 R e m a rk 備注 T e x t 否 是 沒有 供應(yīng)商代碼 表( Suppliers)用來保存 公司供應(yīng)商的信息。為倉庫發(fā)料提供依據(jù)。 表 42 Materials(物料代碼)表 的結(jié)構(gòu) 產(chǎn)品代碼表 產(chǎn)品代碼表( Productions)用來保存公司生產(chǎn)的所有產(chǎn)品的信息,該表的結(jié)構(gòu)如表 43 所示。 表 41 Users(用戶信息)表的結(jié)構(gòu) 物料代碼表 U s e rs 表結(jié)構(gòu)序號 字段 描述 類型和長度 主鍵 可空 默訃值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è)所需用的所有的物料。 數(shù)據(jù)表結(jié)構(gòu) 本倉庫管理系統(tǒng)的數(shù)據(jù)庫共包括 12 張數(shù)據(jù)表。先啟動 Access2021 程序 ,然后創(chuàng)建名為“ WMS”的數(shù)據(jù)庫。本系統(tǒng)是采用 Access 數(shù)據(jù)庫存儲數(shù)據(jù)。 數(shù)據(jù)庫設(shè)計(jì) 大多數(shù)應(yīng)用系統(tǒng)都需要后臺數(shù)據(jù)庫地支持。為決策提供依據(jù)。 報表查詢模塊 在此功能模塊,用戶可以進(jìn)行各種條件的查詢。 物料管理模塊 物料管理模塊可完成附加功能,利用這些功能可很好的防止由于人為因素造成的數(shù)據(jù) 錯誤。包括收料,發(fā)料,增料,退料。對于管理員和超級用戶還可以進(jìn)行用戶管理。 系統(tǒng)功能設(shè)計(jì) 系統(tǒng)功能模塊圖 在仔細(xì)分析了公司的物料數(shù)據(jù)圖后,決 定將整個系統(tǒng)分為四大模塊,每個模塊又有若干個子模塊。 操作日志 記錄系統(tǒng)內(nèi)主要的數(shù)據(jù)的操作,以便日后查詢所需。條件即可以是單個條件也可以組合條件。盤點(diǎn)時需提供盤點(diǎn)報表及盤點(diǎn)調(diào)整。 生產(chǎn)退料是生產(chǎn)線將好的物料退回給倉庫。為了核算每批產(chǎn)品的生產(chǎn)成本,因此增料操作需按生產(chǎn)計(jì)劃號來進(jìn)行。也可以兩種方法結(jié)合在一起來發(fā)料。發(fā)料時,即可以一次性發(fā)多個料,即按工單發(fā)料;也可以按物料一個一個來發(fā)。 倉位管理模塊 倉位管理記錄了倉庫每個倉位存放的物料。 倉庫的發(fā)料也是根據(jù)生產(chǎn)計(jì)劃來進(jìn)行的。根據(jù)產(chǎn)品及生產(chǎn)數(shù)量,日期等不同將生產(chǎn)分為一批一批,利用生產(chǎn)計(jì)劃號,即工單號來區(qū)分。 倉庫收料 倉庫根據(jù)系統(tǒng)發(fā)出的訂單進(jìn)行收料。自動訂單可以一次下多個定單,手工下單只能一個一個產(chǎn)生訂單。在確認(rèn)過程中,可以對訂單進(jìn)行各種操作。一種是手工下單。 訂單管理模塊 訂單管理主要任務(wù)是產(chǎn)生訂單。表示某個產(chǎn)品是由哪些物料組成的。另一方面,還需建立產(chǎn)品與物料之間的聯(lián)系。同樣,我們也需為公司的每一個產(chǎn)品編制一個 代碼。 產(chǎn)品管理模塊 物料是指公司從供應(yīng)商處買來的,是半成品。例如我們?nèi)ト嗣裆虉鲑I一件衣服給出一個綜合代碼為 40000001,而去長發(fā)商場去買同一件衣服則給出的綜合代碼為 40000002,這樣處理有利于更好的分清每個物料及供應(yīng)商之間的關(guān)系。 系統(tǒng)為了統(tǒng)一管理,加強(qiáng)控制。就像我們?nèi)ベI東西,我們不但要知道去哪 里買,還要知道買什么。以代碼來代表供應(yīng)商,可以減少數(shù)據(jù)庫中的數(shù)據(jù)量。 供應(yīng)商管理模塊 供應(yīng)商管理模塊記錄公司所有供應(yīng)商的情況,以保證每個供應(yīng)商都是經(jīng)過認(rèn)證的。 C類物品:低值──庫存總值幾乎可以忽略不計(jì),只占5 10%。 B類物品:中值──總值占庫存總值的15 20%。 A類物品:高值──價值占庫存總值70 80%的相對少數(shù)物品。自動訂單是根據(jù)這個原則產(chǎn)生的。 對于物料數(shù)量上的控制采用最大最小數(shù)量法。YYY 代表序列號, XXXX 由系統(tǒng)自動給出。 圖 32 C/S 結(jié)構(gòu)示意圖 物料管理模塊 首先我們?yōu)槊恳粋€物料制定出唯一的一個代碼,在整個物料管理過程中都將以這個代碼來管理物料。響應(yīng)速度快。這種 CS 模式適用于局域網(wǎng)、安全性可以得到可靠的保證。 系統(tǒng) 數(shù)據(jù)流程圖 在 研究了用戶提供的原始資料及要求后,畫出了系統(tǒng)的數(shù)據(jù)流程圖如下所示。 圖 VB 應(yīng)用程序與數(shù)據(jù)庫的連接 V B 應(yīng)用程序 A c c es s 2 0 0 0數(shù)據(jù)庫M ic r o s o f t .J et .O L E D B 第三章 需求分析 需求分析 軟件需求分析是軟件開發(fā)周期的第一個階段,也是關(guān)系到軟件開始成敗的關(guān)鍵步驟。開發(fā)人員在使用 ADO 時,其實(shí)就是在使用 OLE DB,不過 OLE DB 更加接近底 層。 ADO 是基于 OLE DB 的訪問接口,它是面向?qū)ο蟮?OLE DB 技術(shù),繼承了OLE DB 的優(yōu)點(diǎn)。因此你可以只創(chuàng)建一個 Connection對象,但是可以有多個,獨(dú)立的Recordset對象來使用它。包括易于使用,熟悉的界面,高速度以及較低的內(nèi)存占用。訪問數(shù)據(jù)庫的時候,關(guān)于 SQL 的知識不是必要的,但是特定數(shù)據(jù)庫支持的 SQL 命令仍可以通過 ADO 中的命令對象來執(zhí)行。它提供了編程語言和統(tǒng)一數(shù)據(jù)訪問方式 OLE DB 的一個中間層。但 ODBC 訪問數(shù)據(jù)庫的速度較慢,而且需為每個客戶端配置 ODBC 數(shù)據(jù)源。它可以是目前已知的某種 DBMS 格式 , 也可以是一種全新的數(shù)據(jù)庫格式。數(shù)據(jù)庫操作的“數(shù)據(jù)源”對應(yīng)用程序是透明的 , 所有的數(shù)據(jù)庫操作由對應(yīng) DBMS的 ODBC 驅(qū)動程序( ODBC Driver)完成。它建立了一組規(guī)范 , 并提供了一組應(yīng)用程序調(diào)用接口。早期還有 RDO, DAO 等。 VB6和 Access的連接 在進(jìn)行系統(tǒng)開發(fā)時,一個很重要的步驟就是建立數(shù)據(jù)庫的連接,即訪問數(shù)據(jù)庫。模塊提供了獨(dú)立的動作流以捕獲錯誤,而宏做不到。它可以讓你像堆積木一樣建立一個功能強(qiáng)大的程序,而無須寫大量的代碼。它是衡量一個優(yōu)秀的數(shù)據(jù)庫的重要標(biāo)準(zhǔn)(有時甚至是唯一的標(biāo)準(zhǔn))。 Access 2021 為我們提供了強(qiáng)大的(同時也是相當(dāng)方便的向?qū)В﹣斫?biāo)準(zhǔn)的 Windows 窗體。大量的操作(幾乎所有)都要通過 窗體完成。你可以在查詢 中選擇、更新、插入或刪除資料,也可以用查詢來建立新表。 查詢:為來自一個或多個表的資料提供定制視圖的對象。每一個表都包含有關(guān)某個主體的信息。 Access的總體結(jié)構(gòu) Access 將所有有名字的 東西都成為對象( object),在 Access 2021 中,最重要的對象有表,查詢,窗體,報表,宏和模塊。 Access 還提供 windows 操作系統(tǒng)的高級應(yīng)用程序開發(fā)系統(tǒng)。它能操作其它來源的資料,包括許多流行的 PC 數(shù)據(jù)庫程序(如 dBase, Paradox, Microsoft FoxPro)和服務(wù)器、小型機(jī)及大型機(jī)上的許多 SQL 數(shù)據(jù)庫。 Access2021 數(shù)據(jù)庫 作為 Microsoft 的 office 套件產(chǎn)品之一, Access 已經(jīng)成為世界上最流行的桌面數(shù)據(jù)庫系統(tǒng)。最重要的是,你可以利用成千上萬的各種擴(kuò)充的控件來快速構(gòu)造幾乎能滿足你任何要求 的程序。每個控件都有各自的屬性、事件及方法。 控件:控件就是 Visual Basic 提供的編程用的模塊,與對象有直接的聯(lián)系,如同積木的木塊,使用這樣的控件,就可以像拼圖或堆積木一樣“搭”、“拼”你的程序界面。 事件:就是對象對用戶各種操作的反映情況。屬性一般決定了對象的位置、大小、顯示等情況。 屬性:如同電視有黑白、彩色之分一樣,作為對象的 Windows 中的窗口也是有大有小,文本框的位置不可能完全一樣,菜單要顯示出不同的功能,這些都是由對象的屬性決定的。 Visual Basic 6中的基本概念 對象:面向?qū)ο缶幊蹋?OOP)的提法大家一定也很耳熟,雖 然 Visual Basic 并不是完全的面向?qū)ο缶幊?,但也利用了對象編程技術(shù)。 在 VB 中,窗體實(shí)際上是一個對象, VB 的窗體含有許多內(nèi)嵌特性,這使得用戶界面部分的建立像是從一個目錄中挑選一個個合適的控件,而不是從零開始一步一步地建立控件。因此是 “事件”驅(qū)動的。 Windows 上面的每一個圖標(biāo),包括窗口本身都是對象,如果沒有任何事情發(fā)生,對象處于停頓狀態(tài)。 VB 幫助窗口中顯示了有關(guān)的示例代碼,通過復(fù)制、粘貼操作可獲取大量的示例代碼,為用戶的學(xué)習(xí)和使用提供了極大的方便。 F)支持動態(tài)數(shù)據(jù)交換( DDE)、動態(tài)鏈接庫( DLL)和對象的鏈接與嵌入( OLE)技術(shù) 。 D) 結(jié)構(gòu)化的程序設(shè)計(jì)語言: VB6 具有豐富的數(shù)據(jù)類型和結(jié)構(gòu)化程序結(jié)構(gòu),作為一種程序設(shè)計(jì)語言,它還有如下一些特點(diǎn):強(qiáng)大的數(shù)值和字符串處理功能;豐富的圖形指令,可方便地繪制各種圖形;提供靜態(tài)和動態(tài)數(shù)組,有 利于簡化內(nèi)存的管理;過程可遞歸調(diào)用,使程序更為簡練;支持隨機(jī)文件和順序文件的訪問; 提供了一個可供應(yīng)用程序調(diào)用的包含多種類型的圖標(biāo)庫;具有完善的運(yùn)行出錯處理 。程序員只要編寫響應(yīng)用戶動作的代碼,而各個動作之間不一定有聯(lián)系。 B) 事件驅(qū)動的編程機(jī)制:事件驅(qū)動是非常適合圖形用戶界面的編程方式。程序員在設(shè)計(jì)時只需用現(xiàn)有工具根據(jù)界面設(shè)計(jì)要求,直接在屏幕上“畫”出窗口、菜單、按鈕、滾動條等不同類型的對象,并為每個對象設(shè)置屬性。 VB6 是指 Visual Basic 的版本。 Visual Basic 6 Visual 意為“可視化的”,指的是一種開發(fā)圖形用戶界面的方法,所以 Visual Basic 是基于 Basic 的可視化的程序設(shè)計(jì)語言。與數(shù)據(jù)庫的連接則使用 ADO的相關(guān)功能來完成的 。 ? 能完成倉庫的各種日常操作。通過對這些情況的仔細(xì)調(diào)查,我開發(fā)了下面的倉庫管理系統(tǒng)。根據(jù)我公司的實(shí)際情況分析,一般的倉庫管理系統(tǒng)并不能滿足公司的需求,而且每套系統(tǒng)的成本也過高。由于所掌握的物料種類眾多,訂貨、管理、發(fā)放的渠道各有差異,各個企業(yè)之間的管理體制不盡相同,各類統(tǒng)計(jì)報表繁