bom演算法
① SAP中BOM的截止日期(9999-12-31)在哪個表裡我如果要在程序裡面用,該怎麼取請高手不吝賜教,急!
知道的不詳細,但希望能稍微有點兒用。
BOM master table STPO 里沒有
Structure CSIN -> field:DATUB 這個是Valid -to
估計沒有table 直接存這個日期。。。
SAP系統里咋現實的估計得參考一下check valid to date 的程序。。。
② 損耗率計算方法 請教
1、 損耗率=(損耗量/凈用量)×100%
用消耗量表示為:消耗量=凈用量×(1+損耗率)
是用於確定材料消耗定額的公式。其中的凈用量指直接用於建築和安裝工程的材料,損耗量為不可避免的施工廢料和材料損耗。主要用於各種工程預決算,全國通用,具有行業標准和法定意義。
2、損耗率=(損耗量/消耗量)×100%
用消耗量表示為:消耗量=凈耗量÷(1-損耗率)
不是用於確定材料消耗定額的公式。一般是施工單位用於計算材料采購量的公式,數值根據本單位的施工技術水平,施工條件,材料的采購來源和途徑,還有材料本身的加工特性等由自己確定,屬自用公式。
(2)bom演算法擴展閱讀:
商品損耗率指標主要用於那些易乾燥、風化、揮發、失重或破碎商品保管工作的考核。為了核定商品在保管過程中的損耗是否合理,一般對不同的商品規定能夠相應的損耗率標准,又稱為標准損耗率。若倉庫的實際商品損耗率低於該標准損耗率為合理損耗;
反之,為不合理損耗。商品損耗率是一個逆指標,指標越小說明商品保管工作做得越好。企業應力爭使商品的損耗率降到最低點。商品損耗率不僅是考核倉庫保管工作質量的指標,也是劃清倉庫與存貨單位商品損失責任界限的重要指標。
③ java script 和 html 什麼關系BOM 是什麼意思
HTML是負責靜態頁面的,javascript是用來做一些動態功能的(比如表單驗證、圖片切換、廣告懸浮等)。BOM類似於DOM,不過側重於瀏覽器相關的對象。
④ 關於BOM組件有報廢率時計算組件用量的問題
1000/(1-6%) 更合理, 因為如果是1000(1+6%)的話,這里買呢的1000*6%是因為報廢要另外采購的,但是這個新采購的量也有報廢率,所以這個量是不足以完成生產的
⑤ 尋求能夠用VB將一個產品BOM表用樹型結構的形式表達出來!
尋求能夠用VB將一個產品BOM表用樹型結構的形式表達出來!
放棄是一種美,美的很燦爛。
⑥ BOM物料清單的使用方法
在任何製造環境中,不同的部門和系統都為不同的目的使用BOM(下文的BOM在含義上屬於不同的種類,統一以BOM表達),每個部門和系統都從BOM中獲取特定的數據。主要的BOM用戶有:
設計部門
設計部門既是BOM的設計者,又是BOM的使用者。就使用而言,無論何時,當產品結構發生變化,或對某個零件進行重新設計,該部門都要從BOM中獲取所有零件的信息及其相互間的結構信息,只有得到這些信息,才能對其進行定義,描述或修改。
工藝部門
工藝部門根據BOM信息建立各零件的製造工藝和裝配件的裝配工藝。並確定加工製造過程中應使用的工裝,模具等。
生產部門
生產部門使用BOM來決定零件或最終產品的製造方法,決定領取的物料清單。
產品成本核算部門
該部門利用BOM中每個自製件或外購件的當前成本來確定最終產品的成本。
物料需求計劃(MRP)系統
BOM是MRP的主要輸入信息之一,它利用BOM決定主生產計劃項目時,需要哪些自製件和外購件,需要多少,何時需要。
ERP中BOM的構造問題
前面已經提到,BOM是系統中最重要的基礎資料庫,它幾乎與企業中的所有職能部門都有關系,ERP系統中BOM構造的好壞,直接影響到系統的處理性能和使用效果。因此,根據實際環境,,靈活地構造BOM是十分關鍵的。就一般情況而言,構造BOM應注意以下方面。
1、在BOM中,每一個項目(零件)必須有一個唯一的編碼。對於同一個項目,不管它出現在哪些產品中,都必須具有相同的編碼。對於相似的項目,不管它們的差別有多麼小,也必須使用不同的編碼。
2、為了管理上的方便,有時可以將同一零件的不同狀態視為幾個不同的項目,構造在產品的BOM中。
3、BOM中的零件,部件的層次關系一定要反映實際裝配過程,在實際裝配中,有時不一定把某些零件裝配成某個有名稱的組件,或者由於工藝上的考慮需要將某些零件歸在一起加工(例如箱子與箱蓋)。形成臨時組件,但這些組件在產品的零件明細表和裝配圖上並沒有反映出來,但必須在計劃管理中反映出來,這就需要在BOM中設置一種物理上並不存在的項目,通常稱為」虛單」或」虛擬件」,其目的是簡化MRP的編程過程和減少零件之間的影響。
4、根據生產實際情況,有時為了強化某些工裝,模具的准備工作,還可以將這些工具構造在BOM中。這樣就可以將一些重要的生產准備工作納入計劃中。有時為了控制某個重要的零件在加工過程中的某些重要環節,比如,進行質量檢測等,還可將同一個零件的不同加工狀態視為不同的零件,構造在BOM中。
5、為了滿足不同部門獲取零件的不同信息,可以靈活地設計BOM中每個項目的屬性。例如,計劃方面的,成本方面,庫存方面,訂單方面。
設計BOM向製造BOM轉換時常見的問題
1、設計BOM中的零部件父子關系與製造BOM中的父子關系可能不同,例如汽車行業一個代號為5401000總成在設計BOM中歸屬於5010000,但在製造BOM結構中歸於焊裝領料模塊,與5010000屬同級。也就是說設計BOM中的父子關系可能變成製造BOM中的兄弟關系。
2、設計BOM中的零部件圖號在製造BOM中有一部分需分為多個代碼(例如代號+車間碼),用於不同車間的領料。也就是說設計BOM里的一個零部件隨著生產路線變化可能在製造BOM中存在幾個對應的代碼,而且代碼之間根據生產路線流轉順序存在父子關系,一般是最後完成車間對應代碼是上級車間對應代碼的父級節點。
3、設計BOM上部分零部件可能代碼不變,但是由於在實際裝配或加工過程中需要分為幾部分歸屬於不同部件(這些部件可能是第二種情況產生的)分別用於不同車間領料,對應需要分拆成幾個子節點(每個節點關聯不同的領料數量)對應到不同的父節點下。
4、由於借用現象比較普遍,對於整體部件(局部不同類)的借用,出於製造BOM更改處理的需要,在製造BOM中是以增加件、減少件的型式建立結構的,零件數量存在負數情況。設計BOM中不存在負數的情況。
5、設計BOM中的零部件圖號在往製造BOM轉化時部分零部件需增加車間代碼(前綴),用於表示加工車間(出入庫的需要)。
6、設計BOM中的零部件往往只有產品代號,在製造BOM中往往需要轉化為物料代號,存在著產品編碼向物料編碼轉換的問題。而且很可能產品編碼和物料編碼或者其它行業編碼多種並存。
7、部分物料在設計BOM上多個不同的結構中存在,但在製造BOM中,可能來源於同一加工車間,所以有存在物料合並的情況。
設計BOM向製造BOM轉換方案
物料編碼的轉換:
把圖號(在物料號中)作為兩個BOM系統之間連接的橋梁。即當PDM的產品代號與MRP中的物料編碼中圖號相同時,認為它們是同一個物料。
PDM從MRP中提取信息時,以圖號作為PDM中的標識(即代號),如果該圖號在PDM中已存在,則認為該產品在PDM中已存在。如果兩者其它屬性信息有差異,可以提交給用戶來決定使用哪一個系統中的數據。
在PDM中添加的產品,可以添加到物料信息中,即根據MRP中的編碼規則來生成它的物料號。如果是在設計項目流程中出來的產品,在項目完成時添加到物料信息中。
標志可以保存數據轉換過程程中信息,同時也可以加快系統查詢轉換產品速度,可以在物料信息表和產品屬性表中添加一個欄位,用來標識該產品轉換的狀態、圖號是否存在等信息。下次轉換時可根據該欄位判斷是否需要處理。該標志可做如下功用:
標志的含義:
PDM中:該產品來自MRP
該產品來自MRP,在PDM中其結構或屬性信息發生了改變。
產品已轉入MRP,但在PDM中已發生改變。
產品在PDM中生成,未轉到MRP中。(默認)
產品在PDM中生成,已轉到MRP中。
MRP中:該產品來自PDM
產品在MRP中生成,已轉到PDM中。
產品在MRP中生成,未轉到PDM中。(默認)
產品已轉到PDM中,但在MRP中發生了改變。
從PDM數據轉化到MRP物料數據:這時,在MRP中尋找與PDM中代號相同的圖號,如果存在,即認為該產品在MRP中已存在,並分別在兩個系統中做標志。否則,認為PDM中的產品在MRP中是新產品,這時按照MRP的命名規范在MRP中添加相應的物料號、名稱、重量、圖號、規格等信息,並標志其從PDM中而來。
產品(物料)屬性和結構信息發生改變時,需要改變相應標志位,以在轉換時正確處理。
從MRP物料數據轉換PDM數據:這時與上述步驟相反,即MRP中的物料圖號如果在PDM 中存在這樣的代號,則認為其已經存在。否則,把圖號作為PDM中的代號插入到PDM中去。如果該物料沒有圖號,可以把該物料號作為PDM中的代號插入,並置標志標識其從MRP中而來。
MRP圖號與PDM代號相同但其它屬性不同的處理:有兩個辦法:
指定其中一個系統的數據為正確的,轉換時可以覆蓋另外一個系統的數據。由於PDM中的數據很多都是從圖紙裡面提取的,因此我們認為應該以PDM的數據為標准。
發現這種情況時,給出具體的提示信息,由用戶選擇是否覆蓋,從而把決定權交給使用者。
以上兩種方法可以做成選項方式,以方便使用。
產品結構的轉換
前已敘及,兩個系統的產品結構是不一致的。產品結構的轉換應該是在上述轉換過程中同步進行的。當轉換一個產品或物料時,必須首先遞歸提取其所有的子產品或物料信息,根據其標志判斷其是否已經被轉換過,如果沒有轉換過的話,按上面的方法進行處理。否則,可以略過。但必須按相應的結構信息轉換結構。具體的演算法這里不作考究。
製造BOM上虛擬件或工藝合件以及加工輔料信息輸入一般根據裝配工藝卡片上可以匯總出在整個工藝過程中系統利用到虛擬件和輔料信息,PDM可以提供操作將這些虛擬件和輔料在產品結構樹轉換成MRP系統里的製造樹之前先在PDM系統里建立完整的製造樹。PDM可以提供建立兩類和產品節點不同的節點,我們可以稱其為虛節點和材料節點功能,這些節點信息可以按照匯總出的裝配工藝關系按照一定的操作在PDM系統內先建立完整的製造BOM,然後將這些製造BOM樹導出到MRP系統中,同時進行編碼轉換。但虛節點信息和輔料信息在PDM系統中匯總時不進入產品明細表和產品圖紙明細欄中。
工藝路線和工藝信息
在MRP中,工藝路線信息和工藝信息與某一種物料是有對應關系的,它給出了一個物料在PDM中也可以得到CAPP或BOM中的工藝信息,該信息可以從PDM向MRP數據轉換時一並進行。
將在BOM系統里匯總出MRPⅡ系統需要的數據,通過BOM軟體的操作菜單將數據以指定格式(EXCEL文件、DBF、SQLSERVER數據表、ORACLE數據表都可以支持)輸出到指定位置。由MRPⅡ系統將數據讀取到自己的資料庫中
BOM的維護
BOM是任何管理系統中基礎中的基礎,如果沒有BOM,就無法製造出同樣的產品,為此要想提高生產管理系統的效率,BOM的正確與否是十分重要的。
不正確BOM造成影響
一些項目為BOM所遺漏,造成零件短缺。
BOM中列入了一些不必要的項目,導致零件過多儲備。
由於缺件的數量過多,導致製造的低效率。
訂單不能按期交貨。
質量低下。
計劃缺乏可信性。
不正確的產品成本。
廢棄的庫存。
BOM中發生錯誤的環節
工程部門產生BOM時
為BOM准備數據時
BOM數據錄入時
正確維護BOM的方法
指定專人負責維護BOM
經常監測BOM,檢查項目數量及其生效日期
對BOM數據改變進行分類
危機性改變——立即完成。如,產品不能實現其功能,或不利於安全時。
緊急性改變——迅速完成。如,工程部門設置一個合理日期來完成改變。
常規改變——從經濟實用角度要求變化時再完成。
臨時改變――臨時更改現場數據,不變動BOM數據。
實施軟體改變——製作好數據導入轉換規劃和編碼重新組織規劃,集中力量一次性批量導入。以完成主導系列主要產品數據維護。
⑦ 產品損耗計算方法
你那個太亂了,我給你整理一下。
我假設你就1噸
利潤=售價-成本
成本:進貨價400、進場運價10、加工費20、出場運價60*0.8(你損耗20%)=48
共計成本:478
售價:590*0.8(你賣的時候就剩下0.8噸了)=477
這下好了,你每噸虧1。是不是很清楚?條理很重要,要是按你那樣做賬,虧了賺了都搞不懂。
⑧ BOM同一種原材料兩種價格當月入庫一半,再制一半如何算產品成本
如果是同一種原材料的話,兩種價格肯定是不合格的,所以的話你應該用一種價格去計算。
⑨ 菜鳥 Sql語句求解 最好把每一句都解釋 一下 不勝感激、、
指定資料庫
USE [Student]
GO
以下為系統自動生成的,一般沒什麼用,除非你改變了系統的環境
/****** Object: Table [dbo].[C] Script Date: 04/19/2011 21:25:17 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
建立數據表
CREATE TABLE [dbo].[C](
指定欄位名稱,類型,長度,是否允許為空
[Cno] [nchar](10) NOT NULL,
[Cname] [nchar](20) NULL,
[Credit] [float] NULL,
[Property] [nchar](14) NULL,
設置主鍵
CONSTRAINT [PK_C] PRIMARY KEY CLUSTERED
(
[Cno] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
/****** Object: Check [CK_C] Script Date: 04/19/2011 21:25:17 ******/
增加檢查CK_C,並且作用於剛才新建的表
ALTER TABLE [dbo].[C] WITH CHECK ADD CONSTRAINT [CK_C] CHECK (([Credit]>(0)))
GO
ALTER TABLE [dbo].[C] CHECK CONSTRAINT [CK_C]
GO
靠記憶寫的,你對應查一下幫助就明白了
⑩ ASP中寫了一個計算BOM成本的遞歸演算法,但是運行不出結果。
思路:
你可以每一部都做一個response.write 看一下數據是否存在。。
必要的時候response.end一下。