> ## Documentation Index
> Fetch the complete documentation index at: https://developer.jtl-software.com/llms.txt
> Use this file to discover all available pages before exploring further.

# BillOfMaterialsItemChangesInput

> Changes an item of a bill of materials. Only the properties that are sent change. The underlying item and the parent component cannot be changed here; the parent component and the position are changed by moving the item.



**Kind**: `input`

## Fields

**`quantity`**: `Decimal`

The new quantity of this item required to produce the production item. Must be greater than zero.

---

**`measurementUnitId`**: `ID`

The ID of the new measurement unit in which the quantity is stated. Sending null states the quantity in the sales unit of the item.

---

**`operationStepId`**: `ID`

The ID of the new operation step the item is assigned to. Sending null removes the assignment.

---

**`componentPostingsShelfLifeEndDateRequirements`**: `ComponentPostingsInventoryAccountingDataRequirements`

The new requirements for the production input of this bill of materials item regarding the shelf life end dates of the stock accounts to be debited. Must not be set to a value other than Inherited if the item has no stock keeping with shelf life end date configured.

---

**`componentPostingsBatchNumberRequirements`**: `ComponentPostingsInventoryAccountingDataRequirements`

The new requirements for the production input of this bill of materials item regarding the batch numbers of the stock accounts to be debited. Must not be set to a value other than Inherited if the item has no stock keeping with batch number configured.

---

**`upwardQuantityDeviation`**: `QuantityDeviationConfigurationInput`

How far the actually used quantity may exceed the planned quantity, replacing the current configuration as a whole. Sending null means it must not exceed it.

---

**`downwardQuantityDeviation`**: `QuantityDeviationConfigurationInput`

How far the actually used quantity may fall below the planned quantity, replacing the current configuration as a whole. Sending null means it must not fall below it.

