diff --git a/csfunctions/events/__init__.py b/csfunctions/events/__init__.py index d6672ac..a7326a8 100644 --- a/csfunctions/events/__init__.py +++ b/csfunctions/events/__init__.py @@ -2,6 +2,7 @@ from pydantic import Field +from .bom_item_field_calculation import BOMItemFieldCalculationData, BOMItemFieldCalculationEvent from .custom_operations import ( CustomOperationDocumentData, CustomOperationDocumentEvent, @@ -37,6 +38,7 @@ | PartReleasedEvent | PartReleaseCheckEvent | PartFieldCalculationEvent + | BOMItemFieldCalculationEvent | FieldValueCalculationEvent | DummyEvent | EngineeringChangeReleasedEvent @@ -59,6 +61,7 @@ | PartReleasedData | PartReleaseCheckData | PartFieldCalculationData + | BOMItemFieldCalculationData | FieldValueCalculationData | DummyEventData | EngineeringChangeReleasedData @@ -81,6 +84,7 @@ "PartReleasedEvent", "PartReleaseCheckEvent", "PartFieldCalculationEvent", + "BOMItemFieldCalculationEvent", "FieldValueCalculationEvent", "DummyEvent", "EngineeringChangeReleasedEvent", @@ -91,6 +95,7 @@ "DocumentFieldCalculationData", "PartReleasedData", "PartReleaseCheckData", + "BOMItemFieldCalculationData", "FieldValueCalculationData", "DummyEventData", "EngineeringChangeReleasedData", diff --git a/csfunctions/events/base.py b/csfunctions/events/base.py index 1d4f717..7d40a6e 100644 --- a/csfunctions/events/base.py +++ b/csfunctions/events/base.py @@ -11,6 +11,7 @@ class EventNames(str, Enum): PART_RELEASED = "part_released" PART_RELEASE_CHECK = "part_release_check" PART_FIELD_CALCULATION = "part_field_calculation" + BOM_ITEM_FIELD_CALCULATION = "bom_item_field_calculation" ENGINEERING_CHANGE_RELEASED = "engineering_change_released" ENGINEERING_CHANGE_RELEASE_CHECK = "engineering_change_release_check" FIELD_VALUE_CALCULATION = "field_value_calculation" diff --git a/csfunctions/events/bom_item_field_calculation.py b/csfunctions/events/bom_item_field_calculation.py new file mode 100644 index 0000000..db24c3f --- /dev/null +++ b/csfunctions/events/bom_item_field_calculation.py @@ -0,0 +1,20 @@ +from typing import Literal + +from pydantic import BaseModel, Field + +from csfunctions.objects import BOMItem, Part +from csfunctions.objects.document import Document + +from .base import BaseEvent, EventNames + + +class BOMItemFieldCalculationData(BaseModel): + bom_item: BOMItem = Field(..., description="Current state of the BOM item") + action: Literal["create", "modify", "copy", "index"] = Field(..., description="Action being performed") + part: Part = Field(..., description="Part of the BOM item") + documents: list[Document] = Field(..., description="List of documents that are referenced by the part.") + + +class BOMItemFieldCalculationEvent(BaseEvent): + name: Literal[EventNames.BOM_ITEM_FIELD_CALCULATION] = EventNames.BOM_ITEM_FIELD_CALCULATION + data: BOMItemFieldCalculationData diff --git a/csfunctions/objects/part.py b/csfunctions/objects/part.py index 9ea78bd..29428fe 100644 --- a/csfunctions/objects/part.py +++ b/csfunctions/objects/part.py @@ -234,6 +234,8 @@ class Material(BaseObject): class BOMItem(BaseObject): object_type: Literal[ObjectType.BOM_ITEM] = ObjectType.BOM_ITEM + cdb_object_id: str | None = Field(None, description="Object ID") + baugruppe: str | None = Field(None, description="Assembly") b_index: str | None = Field(None, description="Assembly Index") component_materialnr_erp: str | None = Field(None, description="Material Number ERP Component") @@ -247,3 +249,139 @@ class BOMItem(BaseObject): mengeneinheit: str | None = Field(None, description="Unit of Measure") teilenummer: str = Field(..., description="part number") t_index: str = Field(..., description="part index") + + # Custom Char Fields + cca_char_bom_item_1: str | None = Field(None, description="Custom Char Field") + cca_char_bom_item_2: str | None = Field(None, description="Custom Char Field") + cca_char_bom_item_3: str | None = Field(None, description="Custom Char Field") + cca_char_bom_item_4: str | None = Field(None, description="Custom Char Field") + cca_char_bom_item_5: str | None = Field(None, description="Custom Char Field") + cca_char_bom_item_6: str | None = Field(None, description="Custom Char Field") + cca_char_bom_item_7: str | None = Field(None, description="Custom Char Field") + cca_char_bom_item_8: str | None = Field(None, description="Custom Char Field") + cca_char_bom_item_9: str | None = Field(None, description="Custom Char Field") + cca_char_bom_item_10: str | None = Field(None, description="Custom Char Field") + cca_char_bom_item_11: str | None = Field(None, description="Custom Char Field") + cca_char_bom_item_12: str | None = Field(None, description="Custom Char Field") + cca_char_bom_item_13: str | None = Field(None, description="Custom Char Field") + cca_char_bom_item_14: str | None = Field(None, description="Custom Char Field") + cca_char_bom_item_15: str | None = Field(None, description="Custom Char Field") + cca_char_bom_item_16: str | None = Field(None, description="Custom Char Field") + cca_char_bom_item_17: str | None = Field(None, description="Custom Char Field") + cca_char_bom_item_18: str | None = Field(None, description="Custom Char Field") + cca_char_bom_item_19: str | None = Field(None, description="Custom Char Field") + cca_char_bom_item_20: str | None = Field(None, description="Custom Char Field") + # Custom BigChar Fields + cca_bigchar_bom_item_1: str | None = Field(None, description="Custom BigChar Field") + cca_bigchar_bom_item_2: str | None = Field(None, description="Custom BigChar Field") + cca_bigchar_bom_item_3: str | None = Field(None, description="Custom BigChar Field") + cca_bigchar_bom_item_4: str | None = Field(None, description="Custom BigChar Field") + cca_bigchar_bom_item_5: str | None = Field(None, description="Custom BigChar Field") + cca_bigchar_bom_item_6: str | None = Field(None, description="Custom BigChar Field") + cca_bigchar_bom_item_7: str | None = Field(None, description="Custom BigChar Field") + cca_bigchar_bom_item_8: str | None = Field(None, description="Custom BigChar Field") + cca_bigchar_bom_item_9: str | None = Field(None, description="Custom BigChar Field") + cca_bigchar_bom_item_10: str | None = Field(None, description="Custom BigChar Field") + cca_bigchar_bom_item_11: str | None = Field(None, description="Custom BigChar Field") + cca_bigchar_bom_item_12: str | None = Field(None, description="Custom BigChar Field") + cca_bigchar_bom_item_13: str | None = Field(None, description="Custom BigChar Field") + cca_bigchar_bom_item_14: str | None = Field(None, description="Custom BigChar Field") + cca_bigchar_bom_item_15: str | None = Field(None, description="Custom BigChar Field") + cca_bigchar_bom_item_16: str | None = Field(None, description="Custom BigChar Field") + cca_bigchar_bom_item_17: str | None = Field(None, description="Custom BigChar Field") + cca_bigchar_bom_item_18: str | None = Field(None, description="Custom BigChar Field") + cca_bigchar_bom_item_19: str | None = Field(None, description="Custom BigChar Field") + cca_bigchar_bom_item_20: str | None = Field(None, description="Custom BigChar Field") + # Custom Integer Fields + cca_integer_bom_item_1: int | None = Field(None, description="Custom Integer Field") + cca_integer_bom_item_2: int | None = Field(None, description="Custom Integer Field") + cca_integer_bom_item_3: int | None = Field(None, description="Custom Integer Field") + cca_integer_bom_item_4: int | None = Field(None, description="Custom Integer Field") + cca_integer_bom_item_5: int | None = Field(None, description="Custom Integer Field") + cca_integer_bom_item_6: int | None = Field(None, description="Custom Integer Field") + cca_integer_bom_item_7: int | None = Field(None, description="Custom Integer Field") + cca_integer_bom_item_8: int | None = Field(None, description="Custom Integer Field") + cca_integer_bom_item_9: int | None = Field(None, description="Custom Integer Field") + cca_integer_bom_item_10: int | None = Field(None, description="Custom Integer Field") + cca_integer_bom_item_11: int | None = Field(None, description="Custom Integer Field") + cca_integer_bom_item_12: int | None = Field(None, description="Custom Integer Field") + cca_integer_bom_item_13: int | None = Field(None, description="Custom Integer Field") + cca_integer_bom_item_14: int | None = Field(None, description="Custom Integer Field") + cca_integer_bom_item_15: int | None = Field(None, description="Custom Integer Field") + cca_integer_bom_item_16: int | None = Field(None, description="Custom Integer Field") + cca_integer_bom_item_17: int | None = Field(None, description="Custom Integer Field") + cca_integer_bom_item_18: int | None = Field(None, description="Custom Integer Field") + cca_integer_bom_item_19: int | None = Field(None, description="Custom Integer Field") + cca_integer_bom_item_20: int | None = Field(None, description="Custom Integer Field") + # Custom Float Fields + cca_float_bom_item_1: float | None = Field(None, description="Custom Float Field") + cca_float_bom_item_2: float | None = Field(None, description="Custom Float Field") + cca_float_bom_item_3: float | None = Field(None, description="Custom Float Field") + cca_float_bom_item_4: float | None = Field(None, description="Custom Float Field") + cca_float_bom_item_5: float | None = Field(None, description="Custom Float Field") + cca_float_bom_item_6: float | None = Field(None, description="Custom Float Field") + cca_float_bom_item_7: float | None = Field(None, description="Custom Float Field") + cca_float_bom_item_8: float | None = Field(None, description="Custom Float Field") + cca_float_bom_item_9: float | None = Field(None, description="Custom Float Field") + cca_float_bom_item_10: float | None = Field(None, description="Custom Float Field") + cca_float_bom_item_11: float | None = Field(None, description="Custom Float Field") + cca_float_bom_item_12: float | None = Field(None, description="Custom Float Field") + cca_float_bom_item_13: float | None = Field(None, description="Custom Float Field") + cca_float_bom_item_14: float | None = Field(None, description="Custom Float Field") + cca_float_bom_item_15: float | None = Field(None, description="Custom Float Field") + cca_float_bom_item_16: float | None = Field(None, description="Custom Float Field") + cca_float_bom_item_17: float | None = Field(None, description="Custom Float Field") + cca_float_bom_item_18: float | None = Field(None, description="Custom Float Field") + cca_float_bom_item_19: float | None = Field(None, description="Custom Float Field") + cca_float_bom_item_20: float | None = Field(None, description="Custom Float Field") + # Custom Boolean Fields + cca_bool_bom_item_1: bool | None = Field(None, description="Custom Boolean Field") + cca_bool_bom_item_2: bool | None = Field(None, description="Custom Boolean Field") + cca_bool_bom_item_3: bool | None = Field(None, description="Custom Boolean Field") + cca_bool_bom_item_4: bool | None = Field(None, description="Custom Boolean Field") + cca_bool_bom_item_5: bool | None = Field(None, description="Custom Boolean Field") + cca_bool_bom_item_6: bool | None = Field(None, description="Custom Boolean Field") + cca_bool_bom_item_7: bool | None = Field(None, description="Custom Boolean Field") + cca_bool_bom_item_8: bool | None = Field(None, description="Custom Boolean Field") + cca_bool_bom_item_9: bool | None = Field(None, description="Custom Boolean Field") + cca_bool_bom_item_10: bool | None = Field(None, description="Custom Boolean Field") + cca_bool_bom_item_11: bool | None = Field(None, description="Custom Boolean Field") + cca_bool_bom_item_12: bool | None = Field(None, description="Custom Boolean Field") + cca_bool_bom_item_13: bool | None = Field(None, description="Custom Boolean Field") + cca_bool_bom_item_14: bool | None = Field(None, description="Custom Boolean Field") + cca_bool_bom_item_15: bool | None = Field(None, description="Custom Boolean Field") + cca_bool_bom_item_16: bool | None = Field(None, description="Custom Boolean Field") + cca_bool_bom_item_17: bool | None = Field(None, description="Custom Boolean Field") + cca_bool_bom_item_18: bool | None = Field(None, description="Custom Boolean Field") + cca_bool_bom_item_19: bool | None = Field(None, description="Custom Boolean Field") + cca_bool_bom_item_20: bool | None = Field(None, description="Custom Boolean Field") + # Custom Date Fields + cca_date_bom_item_1: datetime | None = Field(None, description="Custom Date Field") + cca_date_bom_item_2: datetime | None = Field(None, description="Custom Date Field") + cca_date_bom_item_3: datetime | None = Field(None, description="Custom Date Field") + cca_date_bom_item_4: datetime | None = Field(None, description="Custom Date Field") + cca_date_bom_item_5: datetime | None = Field(None, description="Custom Date Field") + cca_date_bom_item_6: datetime | None = Field(None, description="Custom Date Field") + cca_date_bom_item_7: datetime | None = Field(None, description="Custom Date Field") + cca_date_bom_item_8: datetime | None = Field(None, description="Custom Date Field") + cca_date_bom_item_9: datetime | None = Field(None, description="Custom Date Field") + cca_date_bom_item_10: datetime | None = Field(None, description="Custom Date Field") + cca_date_bom_item_11: datetime | None = Field(None, description="Custom Date Field") + cca_date_bom_item_12: datetime | None = Field(None, description="Custom Date Field") + cca_date_bom_item_13: datetime | None = Field(None, description="Custom Date Field") + cca_date_bom_item_14: datetime | None = Field(None, description="Custom Date Field") + cca_date_bom_item_15: datetime | None = Field(None, description="Custom Date Field") + cca_date_bom_item_16: datetime | None = Field(None, description="Custom Date Field") + cca_date_bom_item_17: datetime | None = Field(None, description="Custom Date Field") + cca_date_bom_item_18: datetime | None = Field(None, description="Custom Date Field") + cca_date_bom_item_19: datetime | None = Field(None, description="Custom Date Field") + cca_date_bom_item_20: datetime | None = Field(None, description="Custom Date Field") + + part: Part | None = Field(None, description="Part of the BOM item", exclude=True) + + def link_objects(self, data: "EventData"): + parts = get_items_of_type(data, Part) + for part in parts: + if part.teilenummer == self.teilenummer and part.t_index == self.t_index: + self.part = part + break diff --git a/csfunctions/util.py b/csfunctions/util.py index 50f2d67..bc66f84 100644 --- a/csfunctions/util.py +++ b/csfunctions/util.py @@ -26,4 +26,6 @@ def get_items_of_type(model: BaseModel, target_type: type[T]) -> list[T]: for item in attr: if isinstance(item, target_type): items.append(item) + elif isinstance(attr, target_type): + items.append(attr) return items diff --git a/docs/reference/events.md b/docs/reference/events.md index 452e395..33856c1 100644 --- a/docs/reference/events.md +++ b/docs/reference/events.md @@ -265,6 +265,25 @@ The event expects a DataResponse containing a dictionary of field names and thei | documents | list[[Document](objects.md#document)] | List of documents that belong to the part | +## BOMItemFieldCalculationEvent +`csfunctions.events.BOMItemFieldCalculationEvent` + +This event is fired when a BOM item is created, modified, copied or indexed. It is triggered after the field calculations defined in the datasheet editor are performed. + +The event expects a DataResponse containing a dictionary of field names and their new values. Fields that are not mentioned in the response are not updated. + +**BOMItemFieldCalculationEvent.name:** bom_item_field_calculation + +**BOMItemFieldCalculationEvent.data:** + +| Attribute | Type | Description | +| --------- | -------------------------------------------- | -------------------------------------------------- | +| bom_item | [BOMItem](objects.md#bomitem) | Current state of the BOM item | +| action | Literal["create", "modify", "copy", "index"] | Action being performed | +| part | [Part](objects.md#part) | Part of the BOM item | +| documents | list[[Document](objects.md#document)] | List of documents that are referenced by the part. | + + ## WorkflowTaskTriggerEvent `csfunctions.events.WorkflowTaskTriggerEvent` diff --git a/docs/reference/objects.md b/docs/reference/objects.md index c8bda9a..20ab890 100644 --- a/docs/reference/objects.md +++ b/docs/reference/objects.md @@ -17,6 +17,127 @@ |mengeneinheit|str \| None|Unit of Measure| |teilenummer|str|part number| |t_index|str|part index| +|cca_char_bom_item_1|str \| None|Custom Char Field| +|cca_char_bom_item_2|str \| None|Custom Char Field| +|cca_char_bom_item_3|str \| None|Custom Char Field| +|cca_char_bom_item_4|str \| None|Custom Char Field| +|cca_char_bom_item_5|str \| None|Custom Char Field| +|cca_char_bom_item_6|str \| None|Custom Char Field| +|cca_char_bom_item_7|str \| None|Custom Char Field| +|cca_char_bom_item_8|str \| None|Custom Char Field| +|cca_char_bom_item_9|str \| None|Custom Char Field| +|cca_char_bom_item_10|str \| None|Custom Char Field| +|cca_char_bom_item_11|str \| None|Custom Char Field| +|cca_char_bom_item_12|str \| None|Custom Char Field| +|cca_char_bom_item_13|str \| None|Custom Char Field| +|cca_char_bom_item_14|str \| None|Custom Char Field| +|cca_char_bom_item_15|str \| None|Custom Char Field| +|cca_char_bom_item_16|str \| None|Custom Char Field| +|cca_char_bom_item_17|str \| None|Custom Char Field| +|cca_char_bom_item_18|str \| None|Custom Char Field| +|cca_char_bom_item_19|str \| None|Custom Char Field| +|cca_char_bom_item_20|str \| None|Custom Char Field| +|cca_bigchar_bom_item_1|str \| None|Custom BigChar Field| +|cca_bigchar_bom_item_2|str \| None|Custom BigChar Field| +|cca_bigchar_bom_item_3|str \| None|Custom BigChar Field| +|cca_bigchar_bom_item_4|str \| None|Custom BigChar Field| +|cca_bigchar_bom_item_5|str \| None|Custom BigChar Field| +|cca_bigchar_bom_item_6|str \| None|Custom BigChar Field| +|cca_bigchar_bom_item_7|str \| None|Custom BigChar Field| +|cca_bigchar_bom_item_8|str \| None|Custom BigChar Field| +|cca_bigchar_bom_item_9|str \| None|Custom BigChar Field| +|cca_bigchar_bom_item_10|str \| None|Custom BigChar Field| +|cca_bigchar_bom_item_11|str \| None|Custom BigChar Field| +|cca_bigchar_bom_item_12|str \| None|Custom BigChar Field| +|cca_bigchar_bom_item_13|str \| None|Custom BigChar Field| +|cca_bigchar_bom_item_14|str \| None|Custom BigChar Field| +|cca_bigchar_bom_item_15|str \| None|Custom BigChar Field| +|cca_bigchar_bom_item_16|str \| None|Custom BigChar Field| +|cca_bigchar_bom_item_17|str \| None|Custom BigChar Field| +|cca_bigchar_bom_item_18|str \| None|Custom BigChar Field| +|cca_bigchar_bom_item_19|str \| None|Custom BigChar Field| +|cca_bigchar_bom_item_20|str \| None|Custom BigChar Field| +|cca_integer_bom_item_1|int \| None|Custom Integer Field| +|cca_integer_bom_item_2|int \| None|Custom Integer Field| +|cca_integer_bom_item_3|int \| None|Custom Integer Field| +|cca_integer_bom_item_4|int \| None|Custom Integer Field| +|cca_integer_bom_item_5|int \| None|Custom Integer Field| +|cca_integer_bom_item_6|int \| None|Custom Integer Field| +|cca_integer_bom_item_7|int \| None|Custom Integer Field| +|cca_integer_bom_item_8|int \| None|Custom Integer Field| +|cca_integer_bom_item_9|int \| None|Custom Integer Field| +|cca_integer_bom_item_10|int \| None|Custom Integer Field| +|cca_integer_bom_item_11|int \| None|Custom Integer Field| +|cca_integer_bom_item_12|int \| None|Custom Integer Field| +|cca_integer_bom_item_13|int \| None|Custom Integer Field| +|cca_integer_bom_item_14|int \| None|Custom Integer Field| +|cca_integer_bom_item_15|int \| None|Custom Integer Field| +|cca_integer_bom_item_16|int \| None|Custom Integer Field| +|cca_integer_bom_item_17|int \| None|Custom Integer Field| +|cca_integer_bom_item_18|int \| None|Custom Integer Field| +|cca_integer_bom_item_19|int \| None|Custom Integer Field| +|cca_integer_bom_item_20|int \| None|Custom Integer Field| +|cca_float_bom_item_1|float \| None|Custom Float Field| +|cca_float_bom_item_2|float \| None|Custom Float Field| +|cca_float_bom_item_3|float \| None|Custom Float Field| +|cca_float_bom_item_4|float \| None|Custom Float Field| +|cca_float_bom_item_5|float \| None|Custom Float Field| +|cca_float_bom_item_6|float \| None|Custom Float Field| +|cca_float_bom_item_7|float \| None|Custom Float Field| +|cca_float_bom_item_8|float \| None|Custom Float Field| +|cca_float_bom_item_9|float \| None|Custom Float Field| +|cca_float_bom_item_10|float \| None|Custom Float Field| +|cca_float_bom_item_11|float \| None|Custom Float Field| +|cca_float_bom_item_12|float \| None|Custom Float Field| +|cca_float_bom_item_13|float \| None|Custom Float Field| +|cca_float_bom_item_14|float \| None|Custom Float Field| +|cca_float_bom_item_15|float \| None|Custom Float Field| +|cca_float_bom_item_16|float \| None|Custom Float Field| +|cca_float_bom_item_17|float \| None|Custom Float Field| +|cca_float_bom_item_18|float \| None|Custom Float Field| +|cca_float_bom_item_19|float \| None|Custom Float Field| +|cca_float_bom_item_20|float \| None|Custom Float Field| +|cca_bool_bom_item_1|bool \| None|Custom Boolean Field| +|cca_bool_bom_item_2|bool \| None|Custom Boolean Field| +|cca_bool_bom_item_3|bool \| None|Custom Boolean Field| +|cca_bool_bom_item_4|bool \| None|Custom Boolean Field| +|cca_bool_bom_item_5|bool \| None|Custom Boolean Field| +|cca_bool_bom_item_6|bool \| None|Custom Boolean Field| +|cca_bool_bom_item_7|bool \| None|Custom Boolean Field| +|cca_bool_bom_item_8|bool \| None|Custom Boolean Field| +|cca_bool_bom_item_9|bool \| None|Custom Boolean Field| +|cca_bool_bom_item_10|bool \| None|Custom Boolean Field| +|cca_bool_bom_item_11|bool \| None|Custom Boolean Field| +|cca_bool_bom_item_12|bool \| None|Custom Boolean Field| +|cca_bool_bom_item_13|bool \| None|Custom Boolean Field| +|cca_bool_bom_item_14|bool \| None|Custom Boolean Field| +|cca_bool_bom_item_15|bool \| None|Custom Boolean Field| +|cca_bool_bom_item_16|bool \| None|Custom Boolean Field| +|cca_bool_bom_item_17|bool \| None|Custom Boolean Field| +|cca_bool_bom_item_18|bool \| None|Custom Boolean Field| +|cca_bool_bom_item_19|bool \| None|Custom Boolean Field| +|cca_bool_bom_item_20|bool \| None|Custom Boolean Field| +|cca_date_bom_item_1|datetime \| None|Custom Date Field| +|cca_date_bom_item_2|datetime \| None|Custom Date Field| +|cca_date_bom_item_3|datetime \| None|Custom Date Field| +|cca_date_bom_item_4|datetime \| None|Custom Date Field| +|cca_date_bom_item_5|datetime \| None|Custom Date Field| +|cca_date_bom_item_6|datetime \| None|Custom Date Field| +|cca_date_bom_item_7|datetime \| None|Custom Date Field| +|cca_date_bom_item_8|datetime \| None|Custom Date Field| +|cca_date_bom_item_9|datetime \| None|Custom Date Field| +|cca_date_bom_item_10|datetime \| None|Custom Date Field| +|cca_date_bom_item_11|datetime \| None|Custom Date Field| +|cca_date_bom_item_12|datetime \| None|Custom Date Field| +|cca_date_bom_item_13|datetime \| None|Custom Date Field| +|cca_date_bom_item_14|datetime \| None|Custom Date Field| +|cca_date_bom_item_15|datetime \| None|Custom Date Field| +|cca_date_bom_item_16|datetime \| None|Custom Date Field| +|cca_date_bom_item_17|datetime \| None|Custom Date Field| +|cca_date_bom_item_18|datetime \| None|Custom Date Field| +|cca_date_bom_item_19|datetime \| None|Custom Date Field| +|cca_date_bom_item_20|datetime \| None|Custom Date Field| +|part|[Part](objects.md#part) \| None|Part of the BOM item| ## Briefcase `csfunctions.objects.Briefcase` diff --git a/json_schemas/request.json b/json_schemas/request.json index 3ed5a7d..bc3d6e1 100644 --- a/json_schemas/request.json +++ b/json_schemas/request.json @@ -1,5 +1,1842 @@ { "$defs": { + "BOMItem": { + "properties": { + "object_type": { + "const": "bom_item", + "default": "bom_item", + "title": "Object Type", + "type": "string" + }, + "cdb_object_id": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Object ID", + "title": "Cdb Object Id" + }, + "baugruppe": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Assembly", + "title": "Baugruppe" + }, + "b_index": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Assembly Index", + "title": "B Index" + }, + "component_materialnr_erp": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Material Number ERP Component", + "title": "Component Materialnr Erp" + }, + "netto_durchm": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Net. Diameter", + "title": "Netto Durchm" + }, + "netto_hoehe": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Net. Height", + "title": "Netto Hoehe" + }, + "netto_laenge": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Net. Length", + "title": "Netto Laenge" + }, + "netto_breite": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Net. Width", + "title": "Netto Breite" + }, + "position": { + "anyOf": [ + { + "type": "integer" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Position", + "title": "Position" + }, + "menge": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Quantity", + "title": "Menge" + }, + "stlbemerkung": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Remarks", + "title": "Stlbemerkung" + }, + "mengeneinheit": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Unit of Measure", + "title": "Mengeneinheit" + }, + "teilenummer": { + "description": "part number", + "title": "Teilenummer", + "type": "string" + }, + "t_index": { + "description": "part index", + "title": "T Index", + "type": "string" + }, + "cca_char_bom_item_1": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Char Field", + "title": "Cca Char Bom Item 1" + }, + "cca_char_bom_item_2": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Char Field", + "title": "Cca Char Bom Item 2" + }, + "cca_char_bom_item_3": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Char Field", + "title": "Cca Char Bom Item 3" + }, + "cca_char_bom_item_4": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Char Field", + "title": "Cca Char Bom Item 4" + }, + "cca_char_bom_item_5": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Char Field", + "title": "Cca Char Bom Item 5" + }, + "cca_char_bom_item_6": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Char Field", + "title": "Cca Char Bom Item 6" + }, + "cca_char_bom_item_7": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Char Field", + "title": "Cca Char Bom Item 7" + }, + "cca_char_bom_item_8": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Char Field", + "title": "Cca Char Bom Item 8" + }, + "cca_char_bom_item_9": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Char Field", + "title": "Cca Char Bom Item 9" + }, + "cca_char_bom_item_10": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Char Field", + "title": "Cca Char Bom Item 10" + }, + "cca_char_bom_item_11": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Char Field", + "title": "Cca Char Bom Item 11" + }, + "cca_char_bom_item_12": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Char Field", + "title": "Cca Char Bom Item 12" + }, + "cca_char_bom_item_13": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Char Field", + "title": "Cca Char Bom Item 13" + }, + "cca_char_bom_item_14": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Char Field", + "title": "Cca Char Bom Item 14" + }, + "cca_char_bom_item_15": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Char Field", + "title": "Cca Char Bom Item 15" + }, + "cca_char_bom_item_16": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Char Field", + "title": "Cca Char Bom Item 16" + }, + "cca_char_bom_item_17": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Char Field", + "title": "Cca Char Bom Item 17" + }, + "cca_char_bom_item_18": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Char Field", + "title": "Cca Char Bom Item 18" + }, + "cca_char_bom_item_19": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Char Field", + "title": "Cca Char Bom Item 19" + }, + "cca_char_bom_item_20": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Char Field", + "title": "Cca Char Bom Item 20" + }, + "cca_bigchar_bom_item_1": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom BigChar Field", + "title": "Cca Bigchar Bom Item 1" + }, + "cca_bigchar_bom_item_2": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom BigChar Field", + "title": "Cca Bigchar Bom Item 2" + }, + "cca_bigchar_bom_item_3": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom BigChar Field", + "title": "Cca Bigchar Bom Item 3" + }, + "cca_bigchar_bom_item_4": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom BigChar Field", + "title": "Cca Bigchar Bom Item 4" + }, + "cca_bigchar_bom_item_5": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom BigChar Field", + "title": "Cca Bigchar Bom Item 5" + }, + "cca_bigchar_bom_item_6": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom BigChar Field", + "title": "Cca Bigchar Bom Item 6" + }, + "cca_bigchar_bom_item_7": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom BigChar Field", + "title": "Cca Bigchar Bom Item 7" + }, + "cca_bigchar_bom_item_8": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom BigChar Field", + "title": "Cca Bigchar Bom Item 8" + }, + "cca_bigchar_bom_item_9": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom BigChar Field", + "title": "Cca Bigchar Bom Item 9" + }, + "cca_bigchar_bom_item_10": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom BigChar Field", + "title": "Cca Bigchar Bom Item 10" + }, + "cca_bigchar_bom_item_11": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom BigChar Field", + "title": "Cca Bigchar Bom Item 11" + }, + "cca_bigchar_bom_item_12": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom BigChar Field", + "title": "Cca Bigchar Bom Item 12" + }, + "cca_bigchar_bom_item_13": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom BigChar Field", + "title": "Cca Bigchar Bom Item 13" + }, + "cca_bigchar_bom_item_14": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom BigChar Field", + "title": "Cca Bigchar Bom Item 14" + }, + "cca_bigchar_bom_item_15": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom BigChar Field", + "title": "Cca Bigchar Bom Item 15" + }, + "cca_bigchar_bom_item_16": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom BigChar Field", + "title": "Cca Bigchar Bom Item 16" + }, + "cca_bigchar_bom_item_17": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom BigChar Field", + "title": "Cca Bigchar Bom Item 17" + }, + "cca_bigchar_bom_item_18": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom BigChar Field", + "title": "Cca Bigchar Bom Item 18" + }, + "cca_bigchar_bom_item_19": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom BigChar Field", + "title": "Cca Bigchar Bom Item 19" + }, + "cca_bigchar_bom_item_20": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom BigChar Field", + "title": "Cca Bigchar Bom Item 20" + }, + "cca_integer_bom_item_1": { + "anyOf": [ + { + "type": "integer" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Integer Field", + "title": "Cca Integer Bom Item 1" + }, + "cca_integer_bom_item_2": { + "anyOf": [ + { + "type": "integer" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Integer Field", + "title": "Cca Integer Bom Item 2" + }, + "cca_integer_bom_item_3": { + "anyOf": [ + { + "type": "integer" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Integer Field", + "title": "Cca Integer Bom Item 3" + }, + "cca_integer_bom_item_4": { + "anyOf": [ + { + "type": "integer" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Integer Field", + "title": "Cca Integer Bom Item 4" + }, + "cca_integer_bom_item_5": { + "anyOf": [ + { + "type": "integer" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Integer Field", + "title": "Cca Integer Bom Item 5" + }, + "cca_integer_bom_item_6": { + "anyOf": [ + { + "type": "integer" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Integer Field", + "title": "Cca Integer Bom Item 6" + }, + "cca_integer_bom_item_7": { + "anyOf": [ + { + "type": "integer" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Integer Field", + "title": "Cca Integer Bom Item 7" + }, + "cca_integer_bom_item_8": { + "anyOf": [ + { + "type": "integer" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Integer Field", + "title": "Cca Integer Bom Item 8" + }, + "cca_integer_bom_item_9": { + "anyOf": [ + { + "type": "integer" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Integer Field", + "title": "Cca Integer Bom Item 9" + }, + "cca_integer_bom_item_10": { + "anyOf": [ + { + "type": "integer" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Integer Field", + "title": "Cca Integer Bom Item 10" + }, + "cca_integer_bom_item_11": { + "anyOf": [ + { + "type": "integer" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Integer Field", + "title": "Cca Integer Bom Item 11" + }, + "cca_integer_bom_item_12": { + "anyOf": [ + { + "type": "integer" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Integer Field", + "title": "Cca Integer Bom Item 12" + }, + "cca_integer_bom_item_13": { + "anyOf": [ + { + "type": "integer" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Integer Field", + "title": "Cca Integer Bom Item 13" + }, + "cca_integer_bom_item_14": { + "anyOf": [ + { + "type": "integer" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Integer Field", + "title": "Cca Integer Bom Item 14" + }, + "cca_integer_bom_item_15": { + "anyOf": [ + { + "type": "integer" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Integer Field", + "title": "Cca Integer Bom Item 15" + }, + "cca_integer_bom_item_16": { + "anyOf": [ + { + "type": "integer" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Integer Field", + "title": "Cca Integer Bom Item 16" + }, + "cca_integer_bom_item_17": { + "anyOf": [ + { + "type": "integer" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Integer Field", + "title": "Cca Integer Bom Item 17" + }, + "cca_integer_bom_item_18": { + "anyOf": [ + { + "type": "integer" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Integer Field", + "title": "Cca Integer Bom Item 18" + }, + "cca_integer_bom_item_19": { + "anyOf": [ + { + "type": "integer" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Integer Field", + "title": "Cca Integer Bom Item 19" + }, + "cca_integer_bom_item_20": { + "anyOf": [ + { + "type": "integer" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Integer Field", + "title": "Cca Integer Bom Item 20" + }, + "cca_float_bom_item_1": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Float Field", + "title": "Cca Float Bom Item 1" + }, + "cca_float_bom_item_2": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Float Field", + "title": "Cca Float Bom Item 2" + }, + "cca_float_bom_item_3": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Float Field", + "title": "Cca Float Bom Item 3" + }, + "cca_float_bom_item_4": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Float Field", + "title": "Cca Float Bom Item 4" + }, + "cca_float_bom_item_5": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Float Field", + "title": "Cca Float Bom Item 5" + }, + "cca_float_bom_item_6": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Float Field", + "title": "Cca Float Bom Item 6" + }, + "cca_float_bom_item_7": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Float Field", + "title": "Cca Float Bom Item 7" + }, + "cca_float_bom_item_8": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Float Field", + "title": "Cca Float Bom Item 8" + }, + "cca_float_bom_item_9": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Float Field", + "title": "Cca Float Bom Item 9" + }, + "cca_float_bom_item_10": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Float Field", + "title": "Cca Float Bom Item 10" + }, + "cca_float_bom_item_11": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Float Field", + "title": "Cca Float Bom Item 11" + }, + "cca_float_bom_item_12": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Float Field", + "title": "Cca Float Bom Item 12" + }, + "cca_float_bom_item_13": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Float Field", + "title": "Cca Float Bom Item 13" + }, + "cca_float_bom_item_14": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Float Field", + "title": "Cca Float Bom Item 14" + }, + "cca_float_bom_item_15": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Float Field", + "title": "Cca Float Bom Item 15" + }, + "cca_float_bom_item_16": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Float Field", + "title": "Cca Float Bom Item 16" + }, + "cca_float_bom_item_17": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Float Field", + "title": "Cca Float Bom Item 17" + }, + "cca_float_bom_item_18": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Float Field", + "title": "Cca Float Bom Item 18" + }, + "cca_float_bom_item_19": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Float Field", + "title": "Cca Float Bom Item 19" + }, + "cca_float_bom_item_20": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Float Field", + "title": "Cca Float Bom Item 20" + }, + "cca_bool_bom_item_1": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Boolean Field", + "title": "Cca Bool Bom Item 1" + }, + "cca_bool_bom_item_2": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Boolean Field", + "title": "Cca Bool Bom Item 2" + }, + "cca_bool_bom_item_3": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Boolean Field", + "title": "Cca Bool Bom Item 3" + }, + "cca_bool_bom_item_4": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Boolean Field", + "title": "Cca Bool Bom Item 4" + }, + "cca_bool_bom_item_5": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Boolean Field", + "title": "Cca Bool Bom Item 5" + }, + "cca_bool_bom_item_6": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Boolean Field", + "title": "Cca Bool Bom Item 6" + }, + "cca_bool_bom_item_7": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Boolean Field", + "title": "Cca Bool Bom Item 7" + }, + "cca_bool_bom_item_8": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Boolean Field", + "title": "Cca Bool Bom Item 8" + }, + "cca_bool_bom_item_9": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Boolean Field", + "title": "Cca Bool Bom Item 9" + }, + "cca_bool_bom_item_10": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Boolean Field", + "title": "Cca Bool Bom Item 10" + }, + "cca_bool_bom_item_11": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Boolean Field", + "title": "Cca Bool Bom Item 11" + }, + "cca_bool_bom_item_12": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Boolean Field", + "title": "Cca Bool Bom Item 12" + }, + "cca_bool_bom_item_13": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Boolean Field", + "title": "Cca Bool Bom Item 13" + }, + "cca_bool_bom_item_14": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Boolean Field", + "title": "Cca Bool Bom Item 14" + }, + "cca_bool_bom_item_15": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Boolean Field", + "title": "Cca Bool Bom Item 15" + }, + "cca_bool_bom_item_16": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Boolean Field", + "title": "Cca Bool Bom Item 16" + }, + "cca_bool_bom_item_17": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Boolean Field", + "title": "Cca Bool Bom Item 17" + }, + "cca_bool_bom_item_18": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Boolean Field", + "title": "Cca Bool Bom Item 18" + }, + "cca_bool_bom_item_19": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Boolean Field", + "title": "Cca Bool Bom Item 19" + }, + "cca_bool_bom_item_20": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Boolean Field", + "title": "Cca Bool Bom Item 20" + }, + "cca_date_bom_item_1": { + "anyOf": [ + { + "format": "date-time", + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Date Field", + "title": "Cca Date Bom Item 1" + }, + "cca_date_bom_item_2": { + "anyOf": [ + { + "format": "date-time", + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Date Field", + "title": "Cca Date Bom Item 2" + }, + "cca_date_bom_item_3": { + "anyOf": [ + { + "format": "date-time", + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Date Field", + "title": "Cca Date Bom Item 3" + }, + "cca_date_bom_item_4": { + "anyOf": [ + { + "format": "date-time", + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Date Field", + "title": "Cca Date Bom Item 4" + }, + "cca_date_bom_item_5": { + "anyOf": [ + { + "format": "date-time", + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Date Field", + "title": "Cca Date Bom Item 5" + }, + "cca_date_bom_item_6": { + "anyOf": [ + { + "format": "date-time", + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Date Field", + "title": "Cca Date Bom Item 6" + }, + "cca_date_bom_item_7": { + "anyOf": [ + { + "format": "date-time", + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Date Field", + "title": "Cca Date Bom Item 7" + }, + "cca_date_bom_item_8": { + "anyOf": [ + { + "format": "date-time", + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Date Field", + "title": "Cca Date Bom Item 8" + }, + "cca_date_bom_item_9": { + "anyOf": [ + { + "format": "date-time", + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Date Field", + "title": "Cca Date Bom Item 9" + }, + "cca_date_bom_item_10": { + "anyOf": [ + { + "format": "date-time", + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Date Field", + "title": "Cca Date Bom Item 10" + }, + "cca_date_bom_item_11": { + "anyOf": [ + { + "format": "date-time", + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Date Field", + "title": "Cca Date Bom Item 11" + }, + "cca_date_bom_item_12": { + "anyOf": [ + { + "format": "date-time", + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Date Field", + "title": "Cca Date Bom Item 12" + }, + "cca_date_bom_item_13": { + "anyOf": [ + { + "format": "date-time", + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Date Field", + "title": "Cca Date Bom Item 13" + }, + "cca_date_bom_item_14": { + "anyOf": [ + { + "format": "date-time", + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Date Field", + "title": "Cca Date Bom Item 14" + }, + "cca_date_bom_item_15": { + "anyOf": [ + { + "format": "date-time", + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Date Field", + "title": "Cca Date Bom Item 15" + }, + "cca_date_bom_item_16": { + "anyOf": [ + { + "format": "date-time", + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Date Field", + "title": "Cca Date Bom Item 16" + }, + "cca_date_bom_item_17": { + "anyOf": [ + { + "format": "date-time", + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Date Field", + "title": "Cca Date Bom Item 17" + }, + "cca_date_bom_item_18": { + "anyOf": [ + { + "format": "date-time", + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Date Field", + "title": "Cca Date Bom Item 18" + }, + "cca_date_bom_item_19": { + "anyOf": [ + { + "format": "date-time", + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Date Field", + "title": "Cca Date Bom Item 19" + }, + "cca_date_bom_item_20": { + "anyOf": [ + { + "format": "date-time", + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Custom Date Field", + "title": "Cca Date Bom Item 20" + }, + "part": { + "anyOf": [ + { + "$ref": "#/$defs/Part" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Part of the BOM item" + } + }, + "required": [ + "teilenummer", + "t_index" + ], + "title": "BOMItem", + "type": "object" + }, + "BOMItemFieldCalculationData": { + "properties": { + "bom_item": { + "$ref": "#/$defs/BOMItem", + "description": "Current state of the BOM item" + }, + "action": { + "description": "Action being performed", + "enum": [ + "create", + "modify", + "copy", + "index" + ], + "title": "Action", + "type": "string" + }, + "part": { + "$ref": "#/$defs/Part", + "description": "Part of the BOM item" + }, + "documents": { + "description": "List of documents that are referenced by the part.", + "items": { + "$ref": "#/$defs/Document" + }, + "title": "Documents", + "type": "array" + } + }, + "required": [ + "bom_item", + "action", + "part", + "documents" + ], + "title": "BOMItemFieldCalculationData", + "type": "object" + }, + "BOMItemFieldCalculationEvent": { + "properties": { + "name": { + "const": "bom_item_field_calculation", + "default": "bom_item_field_calculation", + "title": "Name", + "type": "string" + }, + "event_id": { + "description": "unique identifier", + "title": "Event Id", + "type": "string" + }, + "data": { + "$ref": "#/$defs/BOMItemFieldCalculationData" + } + }, + "required": [ + "event_id", + "data" + ], + "title": "BOMItemFieldCalculationEvent", + "type": "object" + }, "Briefcase": { "description": "Briefcases are used by Workflows and can contain parts, documents or engineering changes.", "properties": { @@ -8059,6 +9896,7 @@ "event": { "discriminator": { "mapping": { + "bom_item_field_calculation": "#/$defs/BOMItemFieldCalculationEvent", "custom_operation_document": "#/$defs/CustomOperationDocumentEvent", "custom_operation_part": "#/$defs/CustomOperationPartEvent", "document_create_check": "#/$defs/DocumentCreateCheckEvent", @@ -8100,6 +9938,9 @@ { "$ref": "#/$defs/PartFieldCalculationEvent" }, + { + "$ref": "#/$defs/BOMItemFieldCalculationEvent" + }, { "$ref": "#/$defs/FieldValueCalculationEvent" },