




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、論文題目 中小型超市管理系統規劃 學生姓名 陳銳 學 號 指導教師 李志軍 專 業 計算機信息管理 年 級 2012級 學 校 浙江電大常山分校 目 錄一 需求分析1(一) 行業概念的理解1(二) 業務流程說明2(三)問題解決方案2(四) 數據流圖3二 系統設計3二 系統設計4(一)系統模塊的劃分4(二) 數據字典4三、程序的設計與編碼8(一) POS系統的開發81. 功能及實現方法82. 問題討論:交易流水號的確定9(二)管理信息系統的設計91.界面設計92. 各個功能模塊實現的要點和技術102.1 類繼承與重載102.2 windows消息機制112.3 關于權限設置122.4 應用Del
2、phi顯式事務控制132.5 存儲過程的使用13參考書錄20中小型超市管理系統規劃內容摘要:中小型超市管理信息系統是一個比較復雜和全面的管理系統,可以完成中小型超市的大部分業務。總的來說包括進貨管理,物價管理,庫存管理,銷售管理,供貨廠商管理,POS收款機子系統等。該系統界面樸素一致,但不失美觀大方;操作方便,查詢功能強大;數據全面、準確。系統采用了目前比較流行而技術非常成熟地客戶機服務器結構(C/S),前臺應用程序用Delphi開發,后臺數據庫是Microsoft SQL Server 2000。關鍵字: 面向對象的程序設計,繼承,WINDOWS消息,存儲過程,事務一 需求分析(一) 行業概
3、念的理解POS: Point Of Sells , 電子收款機系統,也就是直接與顧客打交道的收銀機系統。定單狀態:用來描述商品進貨方式,一般分為定單、日配、自采等。定單:表示該商品進貨必須先向供貨商發出定單,供貨商按定單上的商品明細發貨,超市則按定單上的商品明細收貨。日配:指那些每天都要進貨的商品或者補貨期較短的商品,例如水果,生鮮蔬菜等。如果按定單,時間不允許而且工作重復煩瑣。自采:顧名思義,超市自己負責商品的進貨。銷售狀態:用來描述某種商品當前的銷售狀態,一般定義為正常、促銷、折扣等,正常表示商品處于正常的售價狀態,即按正常的售價銷售。促銷:表示超市把某種商品讓利銷售,以此來吸引跟多的消費
4、者。一般低于正常售價甚至成本價。折扣:表示某種商品銷售情況不好,或者商品有瑕疵,或者保質期快到等情況發生時,使盡快商品銷售出去的一種手段。庫存調整:當非因正常銷售發生而實物數量變動時,通過調整庫存使其帳面數量與實物數量相符。日處理:當一天的銷售結束后,開始做日處理。把當天的銷售數據匯總,調整商品庫存。損益:商品出現損壞,變質,被盜等情況發生時,商品發生損益。損益通過調整庫存得到體現。商品變價:商品變價與促銷/折扣調整價格是兩個不同的概念。商品變價是指修改商品的正常售價,調整后在一定的時間內不會在發生改變。價格可能是升高也可能是降低,一般都是由于進價變動引起的。促銷/折扣期: 每一種商品促銷/折
5、扣都有一定的期限,即有一定的時間限制。一種商品不可能無期限的促銷/折扣。當期限超過,商品自動恢復正常售價。毛利、毛利百分比: 毛利商品售價商品進價 毛利百分比(商品售價商品進價)÷商品售價商品進價及成本核算: 在成本核算中,商品成本價的確定一般有最后進價,移動加權平均,按商品批次定價等幾種方式,由于后兩種核算方式較復雜,本系統采用簡單的最后進價方式。(二) 業務流程說明在實際管理中,有三種信息流動,即資金流,單據流和商品實物流。系統圍繞實物流展開,對商品從供應商那里進貨到商品銷售到顧客手中整個流程進行管理。簡單來說,就是商品的進銷存管理。每個環節通過相應的單據來連接,同時資金發生流動
6、。在商品管理方面,我們提出部門和商品分類的概念,這種分級管理方式簡潔高效。所謂部門,就是按照商品的基本屬性進行分類管理。例如,超市一般可分為食品部,生鮮部,日用品部等。部門下面再分類,所謂商品分類,指按商品的具體屬性劃分,例如,食品部下面可以有糖果餅干類,飲料類等,每個部門和每個商品類別都有相應的負責人負責。中小型超市管理信息系統完全體現了這種管理思想,商品的銷售和商品庫存都可以按部門級和分類級完成查詢等其他操作。作為一個超市的管理人員,及時了解銷售情況是非常必要的,以便及時調整進貨或者安排營銷策略,把握商機。而中小型超市管理信息系統正好滿足了這一要求,可以實時查詢前臺的銷售情況,并且數據準確
7、可信。(三)問題解決方案超市系統在運行過程中數據流量是非常巨大的。有時候會因數據流量過大而使網絡發生阻塞,使POS系統發生斷網,直接影響銷售活動的進行。這種情況是應該堅決避免的,應該盡量減少網絡的數據流量。這一思想在本系統中的直接體現就是采用日處理和運用本地緩存技術。日處理的主要目的就是把當天的銷售數據整理匯總,更新商品庫存表,為第二天的銷售做準備。與日處理不同的另一種處理方式就是每次商品銷售完成以后就立即更新庫存。但這樣會使得服務器的負荷非常的重,經常會使POS系統發生斷網。POS系統銷售商品時所取的商品信息是服務器上的數據,有效的保證了數據的一致性和集中控制。雖然商品信息來自服務器,但我們
8、使用了本地緩存。POS系統會把取得的數據暫時的存放在本地的內存,當要讀取商品信息時,會先在本地緩存里查找,如果成功的話,就不必訪問服務器。這樣一來就有效的減少了網絡的數據流量和服務器的負荷。此外,系統充分利用了客戶機服務器結構的特點,比較復雜的查詢更新等操作都用存儲過程來實現。存儲過程在服務器端執行完畢僅返回執行結果,能有效的減少網絡的通訊流量。(四) 數據流圖對整個業務活動進行分析歸納后,我得出如下的數據流圖:數 據 流 程 圖審核、打印采購定單商品入庫供應商定單信息定單商品入庫單驗收審核結算應付帳款入庫商品庫存變動商品庫存商品信息銷售分析銷售數據成本毛利財務核算商品銷售銷售明細銷售數量PO
9、S銷售采購信息采購定單庫存盤點報損、報益采購信息二 系統設計(一)系統模塊的劃分根據前面所作的需求分析,我把整個系統分為如下幾個模塊:管理信息系統系 統 管 理收 銀 臺 管 理銷 售 管 理進 貨 管 理商 品 管 理供 應 商 管 理其 他 管 理庫 存 管 理收 銀 臺 銷 售 (二) 數據字典商品入庫單明細ENTER_GOODS_DETAIL字段名稱數據類型描述ENTER_DAN_IDint入庫單IDGOODS_IDint商品IDQUANTITYnumeric(18, 2)入庫數量AMOUNTnumeric(18, 2)入庫金額STATUSchar(4)審核狀態WORK_PERSONs
10、mallint操作人員IDWORK_DATEdatetime記帳日期商品信息GOODS_INFO字段名稱數據類型描述GOODS_IDint商品IDBAR_IDint商品條形碼GUIGEchar(4)規格COST_PRICEmoney進價BUY_PRICE1money正常售價BUY_PRICE2money促銷/折扣銷售價格LARGE_TYPEsmallint所屬部門號SMALL_TYPEsmallint所屬類別MAX_STOREnumeric(18, 2)最大庫存MIN_STOREnumeric(18, 2)最小庫存GYS_CODEint供應商代碼STATUSchar(4)商品進貨狀態FLAGc
11、har(4)促銷/折扣標記BUYERint采購員IDVAR_DATEdatetime登記日期供應商信息GYS_INFO字段名稱數據類型描述GYS_CODEint廠商代碼NAMEvarchar(20)企業全稱ADDRESSvarchar(20)地址TEL char(20)電話號碼RELATIONchar(10)聯系人TYPEchar(4)類型BANKchar(4)開戶行ACCOUNTvarchar(20)帳號MENOvarchar(20)備注部門信息LARGE_TYPE字段名稱數據類型描述LARGE_TYPE_IDint部門代碼NAMEvarchar(10)部門名稱商品分類信息SMALL_TYP
12、E字段名稱數據類型描述SMALL_TYPE_IDint商品分類代碼NAMEvarChar(10)分類名稱人員信息PERSON_INFO字段名稱數據類型描述PERSON_IDint人員代碼NAMEvarchar(10)姓名SEXchar(2)性別AGEsmallint年齡DUTYchar(8)職務DEGREEchar(8)學歷LOGINvarbinary(20)口令MENOvarchar(20)備注前臺銷售表POS_SALE字段名稱數據類型描述GOODS_IDint商品IDBAR_IDvarchar(10)條形碼QUANTITYnumeric(18, 2)銷售數量AMOUNTmoney銷售金額C
13、ASHERsmallint收銀員IDP_NOint交易流水號收銀臺設置POS_SET字段名稱數據類型描述POS_IDsmallint收銀臺號WORK_PERSONsmallint收銀員ID商品變價記錄表PRICE_ADJUST字段名稱數據類型描述GOODS_IDsmallint商品IDCOST_PRICEsmallint商品進價LAST_PRICE1money當前售價一LAST_PRICE2money當前售價二NOW_PRICE1money所調售價一NOW_PRICE2money所調售價二ADJUST_REASONvarchar(20)變價原因WORK_PERSONint操作員IDWORK_D
14、ATEdatatime變價日期庫存調整記錄表STORE_ADJUST字段名稱數據類型描述WORK_DATEdatatime記帳日期GOODS_IDint商品IDQUANTITYnumeric(18,2)調整前數量AMOUNTmoney調整前金額ADJUST_QUANTITYnumeric(18,2)調整數量DJUST_AMOUNTMoney調整金額ADJUST_REASONint調整原因IDWORK_PERSONint操作員ID日處理歷史狀態DIALY_DAN庫存調整原因表STORE_ADJUST_REASON字段名稱數據類型描述ADJUST_IDint代號NAMEsmallint摘要商品庫存
15、表STORE_DETAIL字段名稱數據類型描述GOODS_IDint商品IDQUANTITYnumeric(18,2)數量AMOUNTmoney金額MENOvarchar(10)備注商品促銷/折扣記錄GOODS_PROMOTE_LOG字段名稱數據類型描述WORK_DATEdatatime記帳日期GOODS_IDint商品IDCURRENT_PRICEMoney當前售價PROMOTE_PRICEmoney促銷價BEGIN_DATEdatetime開始日期END_DATEdatetime結束日期WORK_PERSONint操作員權限表MENU_FLAG字段名稱數據類型描述IDsmallint代號N
16、142smallint標志字段名稱數據類型描述WORK_DATEsmalldatetime日處理時間STATUSchar (4)狀態WORK_PERSONint操作員ID三、程序的設計與編碼有了前面的工作,我們選擇就進入編碼階段了。(一) POS系統的開發1. 功能及實現方法POS系統是作為一個單獨的程序開發的,主要在POS機上運行,完成商品的交易任務。銷售的商品信息存儲在POS_SALE表中。我們把一次交易放在一個事務提交,保證了數據的完整性和數據的正確性。界面以灰色調為主,使得收銀員長時間工作眼睛不感到疲勞。收銀的操作也很簡單方便。交易流水號自動增加。當某種商品處于促銷或折扣銷售狀態時,P
17、OS系統自動取商品的促銷或折扣售價,無需人工干預,并且促銷或折扣期結束時,系統能自動識別恢復正常售價。這一個功能的實現是通過商品視圖來完成的。請看商品視圖源碼。前臺POS銷售時取商品信息時用到的視圖:CREATE VIEW V_SPXXASSELECT NAME , A.GOODS_ID,A.BAR_ID,A.GUIGE, BUY_PRICE= CASE WHEN (GETDATE()>B.END_DATE AND GETDATE()<B.BEGIN_DATE) OR A.FLAG='正常' THEN A.BUY_PRICE1 WHEN (GETDATE()<
18、B.END_DATE AND GETDATE()>B.BEGIN_DATE) AND A.FLAG='促銷' THEN A.BUY_PRICE2 WHEN (GETDATE()<B.END_DATE AND GETDATE()>B.BEGIN_DATE) AND A.FLAG='折扣' THEN A.BUY_PRICE2 ELSE A.BUY_PRICE1 END FROM GOODS_INFO A ,GOODS_PROMOTE_LOG B WHERE A.GOODS_ID*=B.GOODS_ID交易是在一個事務里完成的,請看交易完成數據提交的
19、代碼:if form_pos.Database1.InTransaction then try form_pos.query1.ApplyUpdates;把本地緩存修改的操作提交服務器 form_pos.Database1.Commit; 事務提交 form_pos.query1.CommitUpdates;清空本地緩存 if form_pos.Database1.InTransaction=false thenform_pos.Database1.StartTransaction; except form_pos.Database1.Rollback; 事務回滾end;2. 問題討論:交易流
20、水號的確定在實際運用中,可能十幾臺甚至幾十臺POS機同時工作,也就是存在大量的數據庫并發操作。怎樣使交易流水號唯一呢?我是這樣實現的,在每次事務提交之前,比較本機的流水號是否在后臺數據庫交易流水號中已經存在,如果存在,也就是說已經被別人占用,則重新取出最大交易流水號,然后提交整個事務。事務提交成功以后還要更新本地交易流水號。這是取最大流水號select max(P_NO) as p_no from pos_sale的SQL語句。(二)管理信息系統的設計1.界面設計本系統采用了帶導航欄的多文檔窗體設計風格,使操作變的簡單直觀。當使用某一個功能模塊時,只顯示相應的菜單,使人不會覺得眼花繚亂。系統完
21、全擯棄那種界面花哨,色彩絢麗等華而不實做法,但和傳統的風格有有所區別,傳統的風格顯得過于呆板。本系統的界面色調一致,簡單樸素,但不失美觀大方。窗體界面一致,操作也大同小異,絲毫沒有雜亂無章的感覺。我首先定義了幾個重要的窗體基類,其他的窗體基本上這幾個基類的派生類。在使用時在對窗體進行重載。所有的窗體都是在運行時動態加載的。需要運行那個窗體時,程序才加載該窗體,用完后立即釋放,這樣使用戶計算機系統資源得以最少得占用。請看一個窗體得創建例子:enter_dan:= Tenter_dan.Create(Self); 入庫單錄入窗體得創建 form_show(enter_dan,555 ,360,10
22、,2); form_show為自定義函數對所有子窗體顯示我自定義了一個函數form_show,減少了工作量和代碼量。procedure form_show(form:TForm;fwidth ,fheight,fleft,ftop :integer);begin with form do begin height:=fheight; width:=fwidth; Left:=fleft; top:=ftop; Show; end;end;窗體的釋放實現,例如釋放入庫單錄入界面窗體:procedure Tenter_dan.FormClose(Sender: TObject; var Actio
23、n: TCloseAction);begin action:=cafree; 在內存中釋放掉窗體end;2. 各個功能模塊實現的要點和技術這里我只把我在編碼過程中比較重要或者比較有代表性的技術和部分源碼闡述一下。詳情查看系統的源代碼。2.1 類繼承與重載在編碼過程中,我充分利用了面向對象編程的特定代碼的重用,具體實現起來依靠的是重載和繼承。把具有相同或相似屬性的類抽象出來作為一個基類。我定義了幾個重要的窗體基類,基類窗體包含了需要的公有控件和共有事件方法。其他的窗體基本上這幾個基類的派生類。在使用時在對窗體的控件的屬性和方法進行繼承或者重載。關于在DELPHI方法的重載,例如:procedur
24、e Action7Execute(Sender: TObject); OVERRIDE;procedure Tenter_goods_info.Action7Execute(Sender: TObject);begin try if (dbedit1.Text<>'') and (dbedit2.Text<>'') and (dbedit3.Text<>'')and (dbedit4.Text<>'')then begin query1.Post; addbutton.Enabled
25、:=true; delbutton.Enabled:=true; savebutton.Enabled:=false; end else showmessage('你的輸入不完整!'); except showmessage('代碼重復!'); end;end;2.2 windows消息機制當查詢窗體要返回結果時,我們用到了windows消息機制。首先定義一個全局的自定義消息常量。Const My_WM_USER=WM_USER+100; /自定義消息 向指定的窗體發送自定義消息,傳遞查詢結果。例如:procedure Tgoods_info_search.se
26、archbuttonClick(Sender: TObject);begin try price_adjust.Query1.Close; price_adjust.Query1.SQL.Clear; price_adjust.Query1.SQL:=query1.SQL; sendmessage(price_adjust.Handle,My_WM_USER,0,0); except beep; end; close; end;接收消息,并且處理它,例如:定義消息響應的方法procedure my_wm_user100(var msg:Tmessage); message My_WM_USER
27、;處理消息:procedure Tgoods_promote.my_wm_user100(var msg:Tmessage) ;begin with query1 doclose;sql.clear;sql.add(sql語句);open;end;2.3 關于權限設置權限設置是一個管理系統非常重要的一部分,直接關系到公司業務和財務安全性。因此,本系統在這方面的功能是較完善的。操作人員的權限可以定義到每級子菜單。對沒有賦權限的菜單項不予顯示。也就是說,系統能根據登陸人員的權限自動顯示具有權限的功能菜單。我們把人員的權限信息存放在MENU_FLAG表中,在系統啟動時加載相關的權限設置信息。權限設置
28、這一功能只有高級管理人員和系統管理員才能使用。根據權限顯示菜單算法 with damo.query1 do /query1關聯MENU_FLAG表 begin close; sql.Clear; sql.Add('select * from menu_flag where id=:id '); ParamByName('id').AsInteger:=person_id; open; end; for i:=1 to 42 do begin flag:=damo.query1.fieldsi.AsInteger;/flag為每項菜單的權限標志 for j:=0
29、to main_form.ComponentCount-1 do begin if (main_form.Componentsj is TMenuItem) and (main_form.Componentsj as TMenuItem).Tag=i-1 ) then if flag = 0 then (main_form.Componentsj as TMenuItem).Visible:=false else (main_form.Componentsj as TMenuItem).Visible:=true; end; end;2.4 應用Delphi顯式事務控制事務控制是一種能夠把數據
30、庫的一組修改作為整體提交給數據庫以保證數據的一致性和完整性的機制。如果其中有一個操作失敗,則所有操作失敗。2.5 存儲過程的使用在程序設計中,系統主要的復雜的操作我都都是通過存儲過程來實現的。例如:使用庫存調整操作時,我們用P_ADJUST_STORE來完成。procedure Tadjust_store.okbuttonClick(Sender: TObject);beginif not damo.Database1.InTransaction then damo.Database1.StartTransaction; 開始一個事務 with P_ADJUST_STORE do /P_ADJ
31、UST_STORE為存儲過程 begin Params1.AsInteger:=strtoint(edit_id.Text); Params2.AsFloat:=strtofloat(edit_adjust.Text); Params3.AsInteger:= table1.Fields0.AsInteger ;Params4.AsInteger:= person_id ;/ person_id為全局變量人員ID Prepare; execproc; end; try damo.Database1.Commit; 事務提交 except begin damo.Database1.Rollbac
32、k; 事務回滾 showmessage('數據提交失敗! '); end; end; 以下是幾種典型存儲過程。日處理存儲過程:CREATE PROCEDURE P_DIALY_DO dialy_date char(12), person_id smallint AS DECLARE goods_id int DECLARE quantity float DECLARE amount money DECLARE temp_cursor CURSOR FORSELECT A.GOODS_ID,SUM(A.QUANTITY),SUM(A.QUANTITY*B.COST_PRICE)
33、FROM POS_SALE A, GOODS_INFO BWHERE convert(char(12),WORK_DATE,102)=dialy_date AND A.GOODS_ID=B.GOODS_ID GROUP BY A.GOODS_ID OPEN temp_cursor FETCH NEXT FROM temp_cursor INTO goods_id, quantity, amount WHILE (FETCH_STATUS=0) BEGIN if EXISTS(SELECT * FROM STORE_DETAIL WHERE GOODS_ID = goods_id) BEGIN
34、UPDATE STORE_DETAILSET QUANTITY=QUANTITY-quantity , AMOUNT=AMOUNT-amountWHERE GOODS_ID = goods_id END FETCH NEXT FROM temp_cursor INTO goods_id,quantity,amount END INSERT DIALY_DAN VALUES( dialy_date,'已做',person_id) CLOSE temp_cursor DEALLOCATE temp_cursor查詢每日商品銷售匯總的存儲過程:CREATE PROCEDURE P_D
35、IALY_SALE ASCREATE TABLE #temp_table(amount float,work_date char(12),sale_cost float,gain float)INSERT INTO #temp_tableSELECT a.amount,convert(char(12),a.work_date,102) AS work_date, (c.cost_price*a.quantity) AS sale_cost, (a.amount-c.cost_price*a.quantity) AS gain FROM pos_sale a,small_type b,goods
36、_info c WHERE a.goods_id=c.goods_id AND c.small_type=b.small_type_idSELECT work_date, sum(amount) AS sum_amount , sum(sale_cost) AS sum_sale_cost , sum( gain ) AS sum_gainFROM #temp_table GROUP BY work_date, ORDER BY work_date商品審核入庫存儲過程CREATE PROCEDURE P_GOODS_ENTER enter_dan_id int AS DECLARE goods
37、_id int DECLARE quantity float DECLARE amount money DECLARE temp_cursor CURSOR FOR SELECT GOODS_ID,QUANTITY,AMOUNT FROM ENTER_GOODS_DETAIL WHERE ENTER_DAN_ID=enter_dan_id OPEN temp_cursor FETCH NEXT FROM temp_cursor INTO goods_id,quantity,amount WHILE (FETCH_STATUS=0) BEGIN if EXISTS(SELECT * FROM S
38、TORE_DETAIL WHERE GOODS_ID = goods_id) BEGIN UPDATE STORE_DETAILSET QUANTITY=QUANTITY+quantity , AMOUNT=AMOUNT+amount WHERE GOODS_ID = goods_id END ELSE BEGIN INSERT STORE_DETAIL VALUES(goods_id,quantity,amount,getdate() END FETCH NEXT FROM temp_cursor INTO goods_id,quantity,amount END CLOSE temp_cu
39、rsor DEALLOCATE temp_cursor查詢部門銷售匯總的存儲過程CREATE PROCEDURE P_SEARCH_DEP_SALE ASCREATE TABLE #temp_table(large_type_id int,dep_name char(10),quantity float,amount float,work_date char(12),sale_cost float,gain float)INSERT INTO #temp_tableSELECT b.large_type_id, AS dep_name, a.quantity,a.amount,co
40、nvert(char(12),a.work_date,102) AS work_date, (c.cost_price*a.quantity) AS sale_cost, (a.amount-c.cost_price*a.quantity) AS gain FORM pos_sale a,large_type b,goods_info c WHERE a.goods_id=c.goods_id AND c.large_type=b.large_type_idSELECT work_date, large_type_id ,dep_name, sum( quantity) AS sum_quan
41、tity , sum(amount) AS sum_amount , sum(sale_cost) AS sum_sale_cost , sum( gain ) AS sum_gainFROM #temp_table GROUP BY work_date, large_type_id ,dep_name ORDER BY work_date查詢商品分類匯總的存儲過程CREATE PROCEDURE P_SEARCH_KIND_SALE ASCREATE TABLE #temp_table(small_type_id int,kind_name char(10),quantity float,a
42、mount float,work_date char(12),sale_cost float,gain float)INSERT INTO #temp_tableSELECT b.small_type_id, AS kind_name, a.quantity,a.amount,convert(char(12),a.word_date,102) AS work_date, (c.cost_price*a.quantity) AS sale_cost, (a.amount-c.cost_price*a.quantity) AS gain FROM pos_sale a,small_ty
43、pe b,goods_info c WHERE a.goods_id=c.goods_id AND c.small_type=b.small_type_idSELECT work_date, small_type_id ,kind_name, sum( quantity) AS sum_quantity , sum(amount) AS sum_amount , sum(sale_cost) AS sum_sale_cost , sum( gain ) AS sum_gainFROM #temp_table GROUP BY work_date, small_type_id ,kind_name ORDER BY work_date查詢商品銷售的存儲過程:CREATE PROCEDURE P_SEARCH_GOODS_SALE ASCREATE TABLE #temp_table(goods_id int,bar_id int,goods_name char(20),guige char(4),quantity float,amount float,work_date char(12),sale_cost float,gain float,gain_rate float)INSERT INTO #temp_tableS
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 網絡文學有聲書版權授權與海外推廣合作協議
- 心理咨詢機構合伙人合作協議與業務拓展合作條款
- 高一音樂鑒賞專題講座計劃
- 2025年血橙提取物化妝品項目規劃申請報告模范
- 如何在課堂中有效運用《語文新課標》心得體會
- 高二上學期英語教學改革計劃
- 人教版道德與法治四年級上冊教學資源計劃
- 2025年小學健康教育評估與反饋計劃
- 科技公司平面設計項目計劃
- 2024-2025學年度小學防疫安全工作計劃
- 個體防護裝備PPE重要性課件
- 圖紙會審記錄表格
- 如何編制過程流程圖、PFMEA、控制計劃文件
- 湖南省2023年跨地區普通高等學校對口招生第一次聯考(語文對口)參考答案
- 液化石油氣充裝操作規程
- 研究生高分論文寫作(上篇)
- 工學一體化教學參考工具體例格式9:學習任務工作頁
- 抖音短視頻帳號策劃運營表
- 南昌大學理工科類實驗(尖子班)選拔考試
- 醫療質量與安全培訓課件
- 現澆混凝土箱梁專項施工方案
評論
0/150
提交評論