Skip to main content

system.mes.productionOrder.getProductionOrderPropertyOrCreateNew

Description

Retrieves a Production Order Properties record if an existing production order property exists with the specified ID or name. Otherwise, creates a new Production Order Properties record with the specified name and attributes.

Syntax

system.mes.productionOrder.getProductionOrderPropertyOrCreateNew(**property_data)

Parameters

ParameterTypeDescription
nameStringThe name of the production order property.
descriptionStringA description of the production order property.
dataTypeStringThe data type of the property (e.g., Integer, String, Float).
lowLimitDoubleThe minimum value allowed for a numerical property.
highLimitDoubleThe maximum value allowed for a numerical property.
formatStringThe format of the property, if applicable.
unitOfMeasureIdString (ULID)The ULID of the unit of measure for this production order property.
unitOfMeasureNameStringThe name of the unit of measure for the production order property. For display purposes only.
unitOfMeasureSymbolStringThe symbol of the unit of measure for the production order property. For display purposes only.
optionsStringList of possible values for the property (e.g., "[option1, option2]").
nullableBooleanDefines if the property can accept null values.
defaultValueMixedThe default value assigned to the property if none is provided. The type is mixed as it depends on what dataType is.
idString (ULID)The ULID of the production order property (optional, for retrieving the existing property).
notesStringNotes related to the production order property.
enabledBooleanIndicates if the property is active and enabled.
spare1StringAdditional field for user-defined context.
spare2StringAdditional field for user-defined context.
spare3StringAdditional field for user-defined context.

Returns

Returns a JSON representation of the production order property.

Code Examples

# Generate the object structure for a new production order property object
production_order_property = system.mes.productionOrder.newProductionOrderProperty()

# Define property details
production_order_property['name'] = 'Batch Size'
production_order_property['description'] = 'Batch size property'
# (You can continue setting other properties as needed here)

# Get the property if it exists, otherwise creates it with the given attributes
property = system.mes.productionOrder.getProductionOrderPropertyOrCreateNew(**production_order_property)

# Output the JSON representation of the property
print(property)