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, without actually creating or modifying the location. Use this function to verify your parameters before executing operations that create or modify locations.

Syntax

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

Parameters

ParameterTypeNullableDescription
nameStringFalseThe name of the location.
descriptionStringTrueA detailed description of the location.
parentIdString (ULID)TrueThe ULID of the parent location.
typeStringFalseThe type of the location (e.g., ENTERPRISE, COMPANY, SITE, AREA, LINE, CELL_GROUP, CELL, UNIT). Default value is ENTERPRISE.
processTypeStringFalseThe process type for the location (e.g., STORAGE, CONTINUOUS, BATCH, DISCRETE, NONE). Default value is NONE.
sortOrderIntegerTrueDetermines the display order of the location. Default value is 0.
allowNegativeInventoryBooleanTrueAllows inventory to go negative at this location. Default value is false.
storageCapacityDoubleTrueMaximum storage capacity allowed at the location.
storageCapacityUnitIdString (ULID)TrueThe ULID for the storage capacity unit to be used as the default unit of measure for this location. See unit_of_measure.
lotStorageStrategyStringTrueDefines the lot storage strategy (e.g, ALLOW_MULTIPLE, ALLOW_SINGLE_OR_THROW, MERGE_INTO_PREVIOUS, MERGE_INTO_NEW, NO_STORAGE). Default value is NO_STORAGE.
lotUseStrategyStringTrueDefines the lot usage strategy, such as FIFO or FEFO. Default value is FIFO.
pathStringTruePath of the location within the hierarchy.
idString (ULID)TrueThe ULID of the location (optional, used for updating an existing location).
notesStringTrueNotes related to the location.
enabledBooleanTrueIndicates if the location is active and enabled. Default value is true.
spare1StringTrueAdditional field for user-defined context.
spare2StringTrueAdditional field for user-defined context.
spare3StringTrueAdditional 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.')