基于RFID技術的物流自動化管理系統數據庫設計
作者:微計算機信息
來源:RFID世界網
日期:2007-06-01 15:20:40
摘要:為實現倉儲物流自動化管理系統的入庫、出庫、報表、儲位查詢、物品查詢、客戶查詢、倉庫及人員管理模塊等功能模塊,本文采用SQL SEVER 2000數據庫管理系統、微軟公司的VS.NET的C#開發工具,利用其提供的各種面向對象的開發工具,其中最主要的是ADO.NET技術實現了基于電子標簽技術的物流自動化管理系統后臺數據庫方面的開發任務。現場試驗表明:本文所設計的物流自動化管理系統達到了預期要求。
1 引言
RFID是Radio Frequency Identification的縮寫,即射頻識別,俗稱電子標簽。在我國物流業飛速發展的今天,射頻技術以其特有的優勢,克服了條碼識別需要光學可視、識別距離短、信息不可更改等缺點,成為物流自動識別領域一個耀眼的亮點。射頻技術的出現,改變了傳統的數據采集方法,它信息含量大,可以根據需要實時更改,簡化了物流的中間環節,縮短了物流人工操作時間,其準確性和快速性越來越得到行業的認同。本文主要講述基于電子標簽技術的倉儲物流自動化管理系統的后臺數據庫的設計與開發。
2 系統功能分析
經過對系統的需求分析,確定系統要實現用戶對倉庫的各種操作,要能夠實現自動出入庫,手動出入庫,還要有庫內移動的操作,人員的管理與維護,客戶的管理,對倉庫進行的操作如增刪倉庫的操作、儲位查詢功能,對物品的查詢功能、盤點以及報表功能。因此,用戶操作界面設計了如下模塊:用戶的登錄模塊、入庫模塊、出庫模塊、庫內移動模塊、倉庫管理模塊、儲位查詢模塊、物品查詢模塊、客戶管理模塊、報表模塊和幫助模塊。
后臺數據庫根據系統的功能為每個模塊設計相應的表和存儲過程。
3 系統的功能設計
3.1 功能概述
程序的總體功能模塊圖如圖1所示。各個模塊的功能說明如下:
(1) 入庫模塊:實現物品的自動及手動入庫的管理,新物品的添加功能;
(2) 出庫模塊:實現物品的自動及手動出庫的管理;
(3) 報表模塊:實現庫存報表、入庫報表、出庫報表、員工操作報表、人員變動報表的查詢、打印、導出功能;
(4) 儲位查詢模塊:實現對貨位的詳細查詢;
(5) 物品查詢模塊:實現對庫存物品的信息的查詢;
(6) 客戶查詢模塊:實現對存貨客戶的詳細信息的查詢;
(7) 倉庫管理模塊:實現對倉庫的管理如添加、刪除模塊;
(8) 人員管理模塊:實現對員工、登錄信息的管理;

圖1 程序功能模塊圖
3.2 后臺數據庫設計
3.2.1 數據庫表的設計
根據系統功能要求進行數據庫中表格的建立。根據對用戶的需求分析,在項目中,需要記錄物品的基本信息、倉庫的基本信息、倉庫的操作信息。
物品的基本信息表應該包括物品的編號、名稱、生產廠商、種類、規格、等級和物品所屬的客戶(即物品的所有者),其中物品的編號為主鍵。因此要建立一個物品列表,用以儲存物品的信息。在物品的基本信息中生產廠商、物品種類和客戶都需要單獨為他們建立單獨的表。在物品的生產廠商表中應該包含生產廠商的名稱和代號,生產廠商代號為主鍵;在物品種類表中應包含物品種類的名稱和代號,物品種類代號為主鍵;在客戶表中應該包含客戶的名稱、聯系人、和聯系電話,客戶代號為主鍵。這樣的設計完全滿足BCNF范式,表格之間的條理比較清晰。
各個表之間的外鍵關系如下:生產廠商表的主鍵與物品列表中的生產廠商代號相關聯;物品種類表的主鍵與物品列表中的生產廠商代號相關聯;客戶表的主鍵與物品列表中的客戶代號相關聯。
倉庫的基本信息應包括用于記錄職工基本信息的倉庫人員管理表,及用于記錄倉庫庫位信息的倉庫信息表。倉庫人員管理表中包括職工的代號、姓名、職位、聯系電話、身份證號碼和住址,職工代號為主鍵。倉庫信息表中包括存放地點(相當于倉庫的標號)、倉庫號、區域、貨架號、層、行、列、是否為空幾個屬性,其中存放地點為主鍵。
倉庫的操作信息應包括用于儲存入、出庫及庫內移動操作記錄的入庫表、出庫表及庫內移動表;用于儲存當前倉庫中物品記錄的庫存表;用于記錄員工增刪情況的人事變動表。入庫表中應該記錄物品的編碼、入庫的時間、經手人和存放地點,其中以物品編碼和入庫時間聯合作為主鍵;出庫表中應該記錄物品的編碼、出庫時間和經手人,其中以物品編碼和出庫時間聯合作為主鍵;庫內移動表中應該記錄物品的編碼、移動時間、經手人、原存放地點和新存放地點,其中以物品編碼和移動時間聯合作為主鍵;庫存表中應該包括物品的編碼、入庫時間 、存放地點和經手人,其中以物品的編碼作為主鍵。人事變動表中應該包括操作號、人事變動的內容、變動的時間、變動人員的代號和變動人員的姓名,其中操作號為主鍵。
另外,系統中還需要有用戶的登錄信息表用于記錄用戶的登錄信息。登錄信息表中應該有登錄的用戶名和密碼,其中登錄名為主鍵。
3.2.2 數據庫中表的關系
數據庫中表的關系如圖2所示。它描述了數據庫中所有的表以及這些表之間的關系。對于表之間的觸發器、為程序設計的存儲過程、約束等具體內容這里沒有詳細列出。

圖2 數據庫總關系圖
3.2.3 物品編碼的設計
由于標簽技術使用的是RFID技術,可以以無線方式進行雙向通信,實現非接觸、批量讀取和遠程讀取、可識別高速運動物體、可實現真正的“一物一碼”,所以編碼也遵照一物一碼的原則進行編碼。
由于EPC碼是物品本身具有的屬性,即物品在出廠時會由生產廠商對其進行EPC編碼,寫入到電子標簽中。而EPC編碼是在生產廠商加入EPC global組織后,由組織分配給生產廠商分配一個編碼的空間以及一些編碼規則,讓企業自行編碼。本文設計中,為了方便操作,定義了12位的編碼。編碼規則如圖3所示。

圖3 物品編碼的編碼規則示意圖
其中流水號為同種物品的順序編號,例如:如果表中已經存在了編號為001001001001的物品,再加入生產廠商代號為001,客戶代號為001,種類編號為001的物品時系統對這個物品的編號就為001001001002,最后一位順序加一。
這種編碼規則的使用在實際操作中應該是在物品出廠的時候由生產廠商為出廠物品進行編碼,然后在物品入庫的時候物品都應該是帶有編碼的,倉儲物流自動化管理系統只需要根據物品的電子標簽上面的信息將物品入庫并將分配給物品的存放地點寫入電子標簽中即可。
3.2.4 數據庫中存儲過程及觸發器的設計
在數據庫中創建的存儲過程主要分為3類:插入數據的存儲過程、刪除數據的存儲過程、查詢數據的存儲過程。插入數據的存儲過程主要實現的是對數據庫中表的添加,例如在入庫表,出庫表,庫內移動表中插入倉庫操作數據;在客戶表,登錄表,倉庫表,物品表,職工表等表中插入數據,以添加各個實體數據;刪除數據的存儲過程實現的主要功能與插入相反,它主要是實現對客戶表,登錄表,倉庫表,物品表,職工表等表中的實體數據進行刪除操作;查詢數據的存儲過程主要應用在報表的生成上,各種報表調用相應的存儲過程以實現對需要用到的表進行查詢,顯示查詢結果作為報表的數據源。下面只簡單介紹一下添加新物品的存儲過程,因為這個存儲過程涉及到了自動為物品編碼的問題。
在添加新物品的存儲過程中,設立了6個輸入參數和一個輸出參數。6個輸入參數分別是要新增物品的名稱,生產廠商代號、種類代號、規格、等級和客戶代號;輸出參數為插入數據后系統分配給該物品的編號,返回給用戶。存儲過程按照編碼規則對物品進行編碼,先提取需要用于給物品進行編號的3個屬性生產廠商代號、客戶代號和種類編號作為物品代號的前9位,然后系統再根據這3個參數在物品列表中查找前9位與這個物品相同的物品,如果存在就將這些物品的代號的最后3位取出最大值加一作為新物品的最后三位,如果不存在就直接賦值為001。然后再將這個得出的標號作為新物品的編號和物品信息一起存入物品列表中,并將物品編號返回給用戶。其它存儲過程及觸發器的作用略。
4 結論
本文采用SQL SEVER 2000數據庫管理系統設計并完成了基于電子標簽技術的物流自動化管理系統后臺數據庫的開發任務,實現了系統的入庫、出庫、報表、儲位查詢、物品查詢、客戶查詢、倉庫及人員管理模塊等功能。
本文作者的創新點是:將射頻識別技術應用于物流自動化管理系統中,應用了電子標簽的非“可視性”和可寫性,在貨物出入庫時只需要進入讀寫器的能量場范圍內即可讀取,同時可以根據出、入庫的實際需要對標簽信息進行在線改寫。只要“讀”到標簽就可以知道貨物的存放及入庫信息,不僅不用拆包移垛而且避免了人工清點的復雜性合適物,大大提高了庫存盤點的準確性和工作效率。
參考文獻
[1] 廉小親,翁貽方等,基于電子標簽技術的物流自動化管理系統[J].微計算機信息.2006,5 22(5-3). Pp.137-138.
[2] K.Watson,M.Bellinaso等著,康博譯.C#入門經典(第3版)[M].北京:清華大學出版社.2006.5. Pp.1~864
[3] 數據庫設計三大范式應用實例剖析[電子文檔]
作者簡介:廉小親(1967-9),女,博士,副教授,研究領域:計算機控制。
Author brief introduction: LIAN Xiao-qin(1967-9). Female. Dr., Associate professor. Major subject: computer control.
(100037,北京工商大學信息工程學院)廉小親 馮允 張曉力 吳葉蘭
(100037, School of Information Engineering, Beijing Technology and Business University)LIAN Xiao-qin, FENG Yun, ZHANG Xiao-li, WU Ye-lan
RFID是Radio Frequency Identification的縮寫,即射頻識別,俗稱電子標簽。在我國物流業飛速發展的今天,射頻技術以其特有的優勢,克服了條碼識別需要光學可視、識別距離短、信息不可更改等缺點,成為物流自動識別領域一個耀眼的亮點。射頻技術的出現,改變了傳統的數據采集方法,它信息含量大,可以根據需要實時更改,簡化了物流的中間環節,縮短了物流人工操作時間,其準確性和快速性越來越得到行業的認同。本文主要講述基于電子標簽技術的倉儲物流自動化管理系統的后臺數據庫的設計與開發。
2 系統功能分析
經過對系統的需求分析,確定系統要實現用戶對倉庫的各種操作,要能夠實現自動出入庫,手動出入庫,還要有庫內移動的操作,人員的管理與維護,客戶的管理,對倉庫進行的操作如增刪倉庫的操作、儲位查詢功能,對物品的查詢功能、盤點以及報表功能。因此,用戶操作界面設計了如下模塊:用戶的登錄模塊、入庫模塊、出庫模塊、庫內移動模塊、倉庫管理模塊、儲位查詢模塊、物品查詢模塊、客戶管理模塊、報表模塊和幫助模塊。
后臺數據庫根據系統的功能為每個模塊設計相應的表和存儲過程。
3 系統的功能設計
3.1 功能概述
程序的總體功能模塊圖如圖1所示。各個模塊的功能說明如下:
(1) 入庫模塊:實現物品的自動及手動入庫的管理,新物品的添加功能;
(2) 出庫模塊:實現物品的自動及手動出庫的管理;
(3) 報表模塊:實現庫存報表、入庫報表、出庫報表、員工操作報表、人員變動報表的查詢、打印、導出功能;
(4) 儲位查詢模塊:實現對貨位的詳細查詢;
(5) 物品查詢模塊:實現對庫存物品的信息的查詢;
(6) 客戶查詢模塊:實現對存貨客戶的詳細信息的查詢;
(7) 倉庫管理模塊:實現對倉庫的管理如添加、刪除模塊;
(8) 人員管理模塊:實現對員工、登錄信息的管理;

圖1 程序功能模塊圖
3.2 后臺數據庫設計
3.2.1 數據庫表的設計
根據系統功能要求進行數據庫中表格的建立。根據對用戶的需求分析,在項目中,需要記錄物品的基本信息、倉庫的基本信息、倉庫的操作信息。
物品的基本信息表應該包括物品的編號、名稱、生產廠商、種類、規格、等級和物品所屬的客戶(即物品的所有者),其中物品的編號為主鍵。因此要建立一個物品列表,用以儲存物品的信息。在物品的基本信息中生產廠商、物品種類和客戶都需要單獨為他們建立單獨的表。在物品的生產廠商表中應該包含生產廠商的名稱和代號,生產廠商代號為主鍵;在物品種類表中應包含物品種類的名稱和代號,物品種類代號為主鍵;在客戶表中應該包含客戶的名稱、聯系人、和聯系電話,客戶代號為主鍵。這樣的設計完全滿足BCNF范式,表格之間的條理比較清晰。
各個表之間的外鍵關系如下:生產廠商表的主鍵與物品列表中的生產廠商代號相關聯;物品種類表的主鍵與物品列表中的生產廠商代號相關聯;客戶表的主鍵與物品列表中的客戶代號相關聯。
倉庫的基本信息應包括用于記錄職工基本信息的倉庫人員管理表,及用于記錄倉庫庫位信息的倉庫信息表。倉庫人員管理表中包括職工的代號、姓名、職位、聯系電話、身份證號碼和住址,職工代號為主鍵。倉庫信息表中包括存放地點(相當于倉庫的標號)、倉庫號、區域、貨架號、層、行、列、是否為空幾個屬性,其中存放地點為主鍵。
倉庫的操作信息應包括用于儲存入、出庫及庫內移動操作記錄的入庫表、出庫表及庫內移動表;用于儲存當前倉庫中物品記錄的庫存表;用于記錄員工增刪情況的人事變動表。入庫表中應該記錄物品的編碼、入庫的時間、經手人和存放地點,其中以物品編碼和入庫時間聯合作為主鍵;出庫表中應該記錄物品的編碼、出庫時間和經手人,其中以物品編碼和出庫時間聯合作為主鍵;庫內移動表中應該記錄物品的編碼、移動時間、經手人、原存放地點和新存放地點,其中以物品編碼和移動時間聯合作為主鍵;庫存表中應該包括物品的編碼、入庫時間 、存放地點和經手人,其中以物品的編碼作為主鍵。人事變動表中應該包括操作號、人事變動的內容、變動的時間、變動人員的代號和變動人員的姓名,其中操作號為主鍵。
另外,系統中還需要有用戶的登錄信息表用于記錄用戶的登錄信息。登錄信息表中應該有登錄的用戶名和密碼,其中登錄名為主鍵。
3.2.2 數據庫中表的關系
數據庫中表的關系如圖2所示。它描述了數據庫中所有的表以及這些表之間的關系。對于表之間的觸發器、為程序設計的存儲過程、約束等具體內容這里沒有詳細列出。

圖2 數據庫總關系圖
3.2.3 物品編碼的設計
由于標簽技術使用的是RFID技術,可以以無線方式進行雙向通信,實現非接觸、批量讀取和遠程讀取、可識別高速運動物體、可實現真正的“一物一碼”,所以編碼也遵照一物一碼的原則進行編碼。
由于EPC碼是物品本身具有的屬性,即物品在出廠時會由生產廠商對其進行EPC編碼,寫入到電子標簽中。而EPC編碼是在生產廠商加入EPC global組織后,由組織分配給生產廠商分配一個編碼的空間以及一些編碼規則,讓企業自行編碼。本文設計中,為了方便操作,定義了12位的編碼。編碼規則如圖3所示。

圖3 物品編碼的編碼規則示意圖
其中流水號為同種物品的順序編號,例如:如果表中已經存在了編號為001001001001的物品,再加入生產廠商代號為001,客戶代號為001,種類編號為001的物品時系統對這個物品的編號就為001001001002,最后一位順序加一。
這種編碼規則的使用在實際操作中應該是在物品出廠的時候由生產廠商為出廠物品進行編碼,然后在物品入庫的時候物品都應該是帶有編碼的,倉儲物流自動化管理系統只需要根據物品的電子標簽上面的信息將物品入庫并將分配給物品的存放地點寫入電子標簽中即可。
3.2.4 數據庫中存儲過程及觸發器的設計
在數據庫中創建的存儲過程主要分為3類:插入數據的存儲過程、刪除數據的存儲過程、查詢數據的存儲過程。插入數據的存儲過程主要實現的是對數據庫中表的添加,例如在入庫表,出庫表,庫內移動表中插入倉庫操作數據;在客戶表,登錄表,倉庫表,物品表,職工表等表中插入數據,以添加各個實體數據;刪除數據的存儲過程實現的主要功能與插入相反,它主要是實現對客戶表,登錄表,倉庫表,物品表,職工表等表中的實體數據進行刪除操作;查詢數據的存儲過程主要應用在報表的生成上,各種報表調用相應的存儲過程以實現對需要用到的表進行查詢,顯示查詢結果作為報表的數據源。下面只簡單介紹一下添加新物品的存儲過程,因為這個存儲過程涉及到了自動為物品編碼的問題。
在添加新物品的存儲過程中,設立了6個輸入參數和一個輸出參數。6個輸入參數分別是要新增物品的名稱,生產廠商代號、種類代號、規格、等級和客戶代號;輸出參數為插入數據后系統分配給該物品的編號,返回給用戶。存儲過程按照編碼規則對物品進行編碼,先提取需要用于給物品進行編號的3個屬性生產廠商代號、客戶代號和種類編號作為物品代號的前9位,然后系統再根據這3個參數在物品列表中查找前9位與這個物品相同的物品,如果存在就將這些物品的代號的最后3位取出最大值加一作為新物品的最后三位,如果不存在就直接賦值為001。然后再將這個得出的標號作為新物品的編號和物品信息一起存入物品列表中,并將物品編號返回給用戶。其它存儲過程及觸發器的作用略。
4 結論
本文采用SQL SEVER 2000數據庫管理系統設計并完成了基于電子標簽技術的物流自動化管理系統后臺數據庫的開發任務,實現了系統的入庫、出庫、報表、儲位查詢、物品查詢、客戶查詢、倉庫及人員管理模塊等功能。
本文作者的創新點是:將射頻識別技術應用于物流自動化管理系統中,應用了電子標簽的非“可視性”和可寫性,在貨物出入庫時只需要進入讀寫器的能量場范圍內即可讀取,同時可以根據出、入庫的實際需要對標簽信息進行在線改寫。只要“讀”到標簽就可以知道貨物的存放及入庫信息,不僅不用拆包移垛而且避免了人工清點的復雜性合適物,大大提高了庫存盤點的準確性和工作效率。
參考文獻
[1] 廉小親,翁貽方等,基于電子標簽技術的物流自動化管理系統[J].微計算機信息.2006,5 22(5-3). Pp.137-138.
[2] K.Watson,M.Bellinaso等著,康博譯.C#入門經典(第3版)[M].北京:清華大學出版社.2006.5. Pp.1~864
[3] 數據庫設計三大范式應用實例剖析[電子文檔]
作者簡介:廉小親(1967-9),女,博士,副教授,研究領域:計算機控制。
Author brief introduction: LIAN Xiao-qin(1967-9). Female. Dr., Associate professor. Major subject: computer control.
(100037,北京工商大學信息工程學院)廉小親 馮允 張曉力 吳葉蘭
(100037, School of Information Engineering, Beijing Technology and Business University)LIAN Xiao-qin, FENG Yun, ZHANG Xiao-li, WU Ye-lan