Skip to main content

system.mes.location.validateLocation

Description

Validates the specified parameters for a Locations record and returns any validation errors. This only checks if the location object can be saved based on the attributes given.

Syntax

system.mes.location.validateLocation(**location_data)

Parameters

ParameterTypeDescription
nameStringThe name of the location.
descriptionStringA detailed description of the location.
parentIdString (ULID)The ULID of the parent location.
typeStringThe type of the location (e.g., ENTERPRISE, COMPANY, SITE, AREA, LINE, CELL_GROUP, CELL, UNIT).
processTypeStringThe process type for the location (e.g., STORAGE, CONTINUOUS, BATCH, DISCRETE, NONE).
sortOrderIntegerDetermines the display order of the location.
allowNegativeInventoryBooleanAllows inventory to go negative at this location.
storageCapacityDoubleMaximum storage capacity allowed at the location.
storageCapacityUnitIdString (ULID)The ULID for the storage capacity unit to be used as the default unit of measure for this location. See unit_of_measure.
lotStorageStrategyStringDefines the lot storage strategy (e.g, ALLOW_MULTIPLE, ALLOW_SINGLE_OR_THROW, MERGE_INTO_PREVIOUS, MERGE_INTO_NEW, NO_STORAGE).
lotUseStrategyStringDefines the lot usage strategy, such as FIFO or FEFO.
pathStringPath of the location within the hierarchy.
idString (ULID)The ULID of the location (optional, used for updating an existing location).
notesStringNotes related to the location.
enabledBooleanIndicates if the location 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 object where keys are field names and values are lists of validation violation messages.

Code Examples

# Generate the object structure for a new location object
location_data = system.mes.location.newLocation()

# Set basic attributes for the new location
location_data['name'] = 'Warehouse'
location_data['description'] = 'Main storage location for raw materials.'
location_data['type'] = 'AREA'
location_data['processType'] = 'STORAGE'
location_data['sortOrder'] = 1
# (You can continue setting other properties as needed here)

# Validate location parameters
validation_errors = system.mes.location.validateLocation(**location_data)

if len(validation_errors) > 0:
print('Validation errors found:', validation_errors)
else:
print('Location parameters are valid.')