Add Method (JobBom)
- Last UpdatedNov 06, 2025
- 6 minute read
The Add() method adds a new job BOM record to the Job_Bom table.
'Declaration
Public Shared Sub Add( _
ByVal sessionId As Integer, _
ByVal woId As String, _
ByVal operId As String, _
ByVal seqNo As Integer, _
ByVal bomPos As Integer, _
ByVal itemId As String, _
ByVal reqdGradeCd As DBInt, _
ByVal instruction As DBString, _
ByVal qtyPerParentItem As Double, _
ByVal maxQtyPerParentItem As DBDouble, _
ByVal minQtyPerParentItem As DBDouble, _
ByVal reqdStartValue As Nullable(Of Double), _
ByVal reqdStartValueIsPct As Nullable(Of Boolean), _
ByVal updateInv As Nullable(Of Boolean), _
ByVal backflush As Nullable(Of Boolean), _
ByVal defReasCd As DBInt, _
ByVal defLotNo As DBString, _
ByVal defSubLotNo As DBString, _
ByVal defStorageEntId As DBInt, _
ByVal defRejectEntId As DBInt, _
ByVal scalingFactor As DBDouble, _
ByVal mustConsumeFromInv As Nullable(Of Boolean), _
ByVal mayChooseAltInvLoc As Nullable(Of Boolean), _
ByVal mayCreateNewLots As Nullable(Of Boolean), _
ByVal mustConsumeFromWip As Nullable(Of Boolean), _
ByVal mustConsumeBeforeProd As Nullable(Of Boolean), _
ByVal constantQty As Nullable(Of Boolean), _
ByVal estTime As DBDouble, _
ByVal qtyReqd As DBDouble, _
ByVal serialNoSource As Nullable(Of Boolean), _
ByVal spare1 As DBString, _
ByVal spare2 As DBString, _
ByVal spare3 As DBString, _
ByVal spare4 As DBString, _
ByVal lastEditComment As DBString, _
ByRef modId As String _
)
'Usage
Dim sessionId As Integer
Dim woId As String
Dim operId As String
Dim seqNo As Integer
Dim bomPos As Integer
Dim itemId As String
Dim reqdGradeCd As DBInt
Dim instruction As DBString
Dim qtyPerParentItem As Double
Dim maxQtyPerParentItem As DBDouble
Dim minQtyPerParentItem As DBDouble
Dim reqdStartValue As Nullable(Of Double)
Dim reqdStartValueIsPct As Nullable(Of Boolean)
Dim updateInv As Nullable(Of Boolean)
Dim backflush As Nullable(Of Boolean)
Dim defReasCd As DBInt
Dim defLotNo As DBString
Dim defSubLotNo As DBString
Dim defStorageEntId As DBInt
Dim defRejectEntId As DBInt
Dim scalingFactor As DBDouble
Dim mustConsumeFromInv As Nullable(Of Boolean)
Dim mayChooseAltInvLoc As Nullable(Of Boolean)
Dim mayCreateNewLots As Nullable(Of Boolean)
Dim mustConsumeFromWip As Nullable(Of Boolean)
Dim mustConsumeBeforeProd As Nullable(Of Boolean)
Dim constantQty As Nullable(Of Boolean)
Dim estTime As DBDouble
Dim qtyReqd As DBDouble
Dim serialNoSource As Nullable(Of Boolean)
Dim spare1 As DBString
Dim spare2 As DBString
Dim spare3 As DBString
Dim spare4 As DBString
Dim lastEditComment As DBString
Dim modId As String
JobBom.Add(sessionId, woId, operId, seqNo, bomPos, itemId, reqdGradeCd, instruction, qtyPerParentItem, maxQtyPerParentItem, minQtyPerParentItem, reqdStartValue, reqdStartValueIsPct, updateInv, backflush, defReasCd, defLotNo, defSubLotNo, defStorageEntId, defRejectEntId, scalingFactor, mustConsumeFromInv, mayChooseAltInvLoc, mayCreateNewLots, mustConsumeFromWip, mustConsumeBeforeProd, constantQty, estTime, qtyReqd, serialNoSource, spare1, spare2, spare3, spare4, lastEditComment, modId)
public static void Add(
int sessionId,
string woId,
string operId,
int seqNo,
int bomPos,
string itemId,
DBInt reqdGradeCd,
DBString instruction,
double qtyPerParentItem,
DBDouble maxQtyPerParentItem,
DBDouble minQtyPerParentItem,
Nullable<double> reqdStartValue,
Nullable<bool> reqdStartValueIsPct,
Nullable<bool> updateInv,
Nullable<bool> backflush,
DBInt defReasCd,
DBString defLotNo,
DBString defSubLotNo,
DBInt defStorageEntId,
DBInt defRejectEntId,
DBDouble scalingFactor,
Nullable<bool> mustConsumeFromInv,
Nullable<bool> mayChooseAltInvLoc,
Nullable<bool> mayCreateNewLots,
Nullable<bool> mustConsumeFromWip,
Nullable<bool> mustConsumeBeforeProd,
Nullable<bool> constantQty,
DBDouble estTime,
DBDouble qtyReqd,
Nullable<bool> serialNoSource,
DBString spare1,
DBString spare2,
DBString spare3,
DBString spare4,
DBString lastEditComment,
out string modId
)
Parameters
- sessionId
Required. Holds the session ID and thus the user who is making this method call.
- woId
Required. Holds the ID of the work order for the job.
- operId
Required. Holds the ID of the operation for the job.
- seqNo
Required. Holds the operation sequence number of the job.
- bomPos
Required. Holds the BOM position.
- itemId
Required. Holds the ID of the item being produced or consumed.
- reqdGradeCd
Optional. Holds the required grade code for the BOM item. If null, an item of any grade code can be consumed.
- instruction
Optional. Holds the instructions on how to consume or produce this item.
- qtyPerParentItem
Required. Holds the nominal quantity of the item required per unit of the parent item.
- maxQtyPerParentItem
Optional. Holds the maximum acceptable quantity of this BOM component.
- minQtyPerParentItem
Optional. Holds the minimum acceptable quantity of this BOM component.
- reqdStartValue
Optional. Holds the amount of the component required before running the job.
- reqdStartValueIsPct
Optional. Holds a flag that, if set to true or false, specifies that the required start value is a percentage and, if set to false, specifies that the required start value is an absolute quantity. The default is true.
- updateInv
Optional. Holds a flag that, if set to true, specifies that the inventory table is updated with consumed items. The default is false.
- backflush
Optional. Holds a flag that, if set to true, specifies that consumption is backflushed. The default is false.
- defReasCd
Optional. Holds the default consumption or production code of the item. If null, it defaults to the value specified for the entity that runs the job.
- defLotNo
Optional. Holds the default lot number of the item.
- defSubLotNo
Optional. Holds the default sublot number of the item.
- defStorageEntId
Optional. Holds the ID of the default storage entity for the item or the by-product.
- defRejectEntId
Optional. Holds the ID of the default storage entity for the rejected production items. If null, the def_storage_ent_id is used.
- scalingFactor
Optional. Holds the number that specifies the scaling factor, which is used to get the correct units from counts if the counts are item dependent.
- mustConsumeFromInv
Optional. Holds a flag that, if set to true, specifies that consumption must occur from the inventory for this item. The default is false.
- mayChooseAltInvLoc
Optional. Holds a flag that, if set to true, specifies that the user can select alternate inventory locations when consuming or producing this item. The default is true.
- mayCreateNewLots
Optional. Holds a flag that, if set to true, specifies that the user can create new lots when consuming or producing this item. The default is true.
- mustConsumeFromWip
Optional. Holds a flag that, if set to true, specifies that the lots consumed during the job are limited to the lots produced to the Item_Inv table for the same work order in an upstream job. The default is false.
- mustConsumeBeforeProd
Optional. Holds a flag that, if set to true, specifies that the production transactions are prevented until 'acceptable' quantities of BOM components are consumed, as specified in the maxQtyPerParentItem and minQtyPerParentItemparameters. The default is false.
- constantQty
Optional. Holds a flag that, if set to true, specifies that the quantity of the consumed item is independent of the quantity of the parent item that is produced. The default is false.
- estTime
Optional. Holds the number of hours it should take to consume or produce the component per unit of BOM position zero. If BOM position is zero, this parameter is ignored.
- qtyReqd
Holds the required quantity for outputs for the disassembly parameter.
A floating point number which contains, for disassembly only, the amount required for outputs.
- serialNoSource
Optional. Holds a flag that, if set to true, specifies whether the produced item must inherit its serial numbers from this component. The default is false.
- spare1
Optional. Holds the contents of the user-defined spare1 field.
- spare2
Optional. Holds the contents of the user-defined spare2 field.
- spare3
Optional. Holds the contents of the user-defined spare3 field.
- spare4
Optional. Holds the contents of the user-defined spare4 field.
- lastEditComment
Optional. Holds comments that describe why this record is being added.
- modId
Output. Holds the modification ID assigned to this record when it is added. The modId parameter is used by other methods that modify or delete this type of record for optimistic concurrency control.
Return Value
Observe the following input parameter rules:
- Required non-DB* parameters: Must pass a value. Cannot be empty or null.
-
Optional non-DB* parameters: Either enter a value or pass a null. If passing a null and a default value has been defined, the default value will be used for the parameter.
-
Required DB* parameters: Must pass a value. To enter an empty value for the parameter, pass DB*.null (e.g., DBInt.null).
-
Optional DB* parameters: To enter no value for the parameter, pass DB*.null (e.g., DBInt.null). To use the default value for the parameter if one has been defined for the object being added, pass a null.