Nexeed
    • Introduction
    • User manual
      • Concept
        • iFNS MatLabelCheck
        • INTEGMA
          • eASN (Electronic Advanced Shipping Notice)
          • GRTO (Goods Receipt Transfer Order)
          • Pairing
          • Repacking
        • On setup label creation
      • Basic operation
        • Basic interaction elements
        • Filter tables via filter dialog
        • Search for materials
        • Export results table
        • Adjust table columns
        • Configuring a scanner
      • Material info
        • Material details tab
        • Blocks tab
        • MSD Info tab
        • Monitoring tab
        • Material history tab
        • Setup history tab
      • Material search
        • Label by ID tab
        • Material by ID tab
        • Extended search tab
      • MSD handling
        • Dry Box content tab
      • Inbound events
        • Details of an event
      • Material monitoring
        • Start a monitoring process
        • Add materials for monitoring window
        • Monitoring details page
        • State and state changes
          • Single Stage Thawing
          • Dual Stage Thawing
          • Solder paste monitoring
        • Roles and resources for material monitoring
      • Configuration
        • Blocking Rules tab
        • On setup label creation rules tab
        • Displaying and editing the configuration file
        • Monitoring location definitions tab
        • Monitoring process definitions tab
        • Printer settings tab
        • Printer templates tab
      • Desktop clients
        • Material InfoPanel desktop client
        • Mat climate control desktop client
    • Operations manual
      • Introduction
        • Nexeed Material Management
        • Application security
        • API documentation
        • Nexeed IAS Ops team
      • Overview
      • System architecture and interfaces
      • System requirements
        • mat/materialmanagement-backendservice
      • Migration from previous versions
        • Migrate Material Management from version 2.11 to 3.0
        • Migrate Material Management from version 3.0 to 3.1.x
        • Migrate Material Management from version 3.1.x to 3.2.x
        • Migrate Material Management from version 3.2.x to 3.3.x
        • Migrate Material Management from version 3.3.x to 3.4.x
        • Migrate Material Management from version 3.4.x to 3.5.x
        • Migrate Material Management from version 3.5.x to 3.6.x
        • Migrate Material Management from version 3.6.x to 3.7.x
        • Migrate Material Management from version 3.7.x to 3.8.x
        • Migrate Material Management from version 3.8.x to 3.9.x
        • Migrate Material Management from version 3.9.x to 3.10.x
        • Migrate Material Management from version 3.10.x to 3.11.x
        • Resources mapping from MES to IAS
      • Setup and configuration
        • Helm Configuration
          • materialmanagement-backendservice
          • materialmanagement-shared
        • Installation guide
        • Operation in hybrid mode - overview
        • Installing MatClimateControl with MES Installer
        • General information about configuration
        • Installing MaterialInfoPanel with MES Installer
        • General information about configuration
      • Start and shutdown
      • Regular operations
        • MSD Buffer timespan handling
        • Tenant data removal
        • Runtime configuration handling
        • Background jobs
      • Failure handling
        • Authorization troubleshooting
        • Database-migration troubleshooting
      • Backup and Restore
      • Logging and monitoring Material Management
      • Known limitations
        • Multitenancy capability
        • On premise
        • Database support
    • API documentation
      • HTTP API
      • Restricted HTTP API
    • Glossary
Material Management
  • Industrial Application System
  • Core Services
    • Block Management
    • Deviation Processor
    • ID Builder
    • Multitenant Access Control
    • Notification Service
    • Ticket Management
    • Web Portal
  • Shopfloor Management
    • Andon Live
    • Global Production Overview
    • KPI Reporting
    • Operational Routines
    • Shift Book
    • Shopfloor Management Administration
  • Product & Quality
    • Product Setup Management
    • Part Traceability
    • Process Quality
    • Setup Specs
  • Execution
    • Line Control
    • Material Management
    • Order Management
    • Packaging Control
    • Rework Control
  • Intralogistics
    • AGV Control Center
    • Stock Management
    • Transport Management
  • Machine & Equipment
    • Condition Monitoring
    • Device Portal
    • Maintenance Management
    • Tool Management
  • Enterprise & Shopfloor Integration
    • Archiving Bridge
    • Data Publisher
    • Direct Data Link
    • Engineering UI
    • ERP Connectivity
    • Gateway
    • Information Router
    • Master Data Management
    • Orchestrator

Nexeed Learning Portal

  • Material Management
  • Operations manual
  • Setup and configuration
  • Helm Configuration

Helm Configuration

From version 3.0.2 the module is disabled by default. Please make sure to enable the module in the custom-values file of the respective inventory in case it is desired to be used. Example:

modules:
    mat:
        enabled: true

Standardized Helm Configuration Parameters

This module in general follows the general IAS Operations Manual and the helm parameters that are described there e.g. for logging, databases, messaging, …​

Deployment configuration

Under the deployment section, there are various parameters which can alter how the service deployment will behave. These settings are common HELM parameters. The following settings are the ones which are not settable via environment variables, and have to be overridden on the specific server depending on the performance requirements:

mat:
  deployments:
    nexeed-mat-backend:
      resources:
        limits:
          memory: "3072M"
          cpu: "4000m"
        requests:
          memory: "500M"
          cpu: "100m"
      replicaCount: 2
ConfigurationKey Description Mandatory Default value

resources

Contains the configuration keys to adjust the resources of the nexeed-mat-backend pods.

no

-

limits

Contains the resource limits of the nexeed-mat-backend pods

no

-

requests

Contains the minimum resources the nexeed-mat-backend pods are going to request during pod-initialization

no

-

memory

Amount of memory which is set as limit or request

no

-

cpu

Amount of CPU cores which is set as limit or request

no

-

replicaCount

Defines how many replicas should be started for the deployment

no

2

Please see System requirements chapter for more information about resource requirements. Please see link for more information about the resources and possible settings.

Module Helm Configuration Parameters

There are a few global settings, which need to be set on the inventory of the server before starting the service for the first time. In the custom-values-<servername>.yaml file of the respected server, add the following section to the modules section

mat:
  enabled: true
  databases:
    mat:
      serverInstance: externaloracle
      name: <instanceName>
      userName: <user>
      type: ORACLE
      password: <password>
ConfigurationKey Description Mandatory Default value

enabled

As described above, set it to true, to enable Material Management

yes

false

databases

A section setting up the database connection

yes

-

serverInstance

The instance name of the database to use. Instances are set up at the start of the configuration file, which brings some properties like: host, port, tls, dbtype.

yes

depends on the server’s setup

name

The instance name of the Oracle database

yes

-

userName

The userName of the schema which Material Management will use

yes

-

type

Database type, currently only ORACLE is supported

yes

-

password

Password of the schema

yes

-

On top of the global settings, there are some local variables which can be set if required, with meaningful defaults. Example:

mat:
  local:
      logging: {}
      swaggerEnabled: false
      misc:
          servicePort: "2501"
      introspectionCaching:
          enabled: true
          enableUsageOfRiexp: true
          cachingDuration: 30
          enableIntrospectionResultRefreshing: true
      portal:
          replaceContextPathInIndexHtml: true
          registrationInitialDelay: 30
          softwareProvidingTenantId:
      quartz:
          maxConcurrency: 10
          enableClustering: true
      databaseMigration:
          jobDependencyLabelValue: "initial-database-migration-3.4.0.0"
          compressionEnabled: "FALSE"
          partitioningEnabled: "FALSE"
          parallelDegree: 2
       observability:
          otelAutoInjectEnvParams: true
       autoupdateJob:
          jobDependencyLabelValue: "autoupdate-service-job"
          targetVersion: "1.0.0.0 "

General section

ConfigurationKey Description Mandatory Default value

logging

The central logging object, which is required by the infrastructure. The loglevel of the module can be overridden here if required.

no

\{}

swaggerEnabled

Determines whether SwaggerUI is enabled

yes

empty

Misc section

ConfigurationKey

Description

Mandatory

Default value

servicePort

The port which the service will use

yes

"2501"

IntrospectionCaching section

ConfigurationKey Description Mandatory Default Value

enabled

Enables/disables usage of introspection caching

yes

true

enableUsageOfRiexp

Enables/disables usage of "riexp" claim during introspection caching. The introspection results will be cached for the timespan in the "riexp" claim if its available, otherwise the static cachingDuration will be used

yes

true

cachingDuration

Static caching duration in seconds. Will be used as fallback, if "riexp" claim is not available, or the usage is disabled.

yes

30

enableIntrospectionResultRefreshing

Enables/disables the automatic refreshing mechanism of Introspection results

yes

true

Portal section

ConfigurationKey Description Mandatory DefaultValue

replaceContextPathInIndexHtml

A flag, which determines if the contextPath should be replaced in the Index.html file. Should be set to true in most cases.

yes

true

registrationInitialDelay

The amount of seconds, the service will wait to initiate the registration in the portal.

yes

30

softwareProvidingTenantId

Operating tenant of the module. The value is used in environmental variables for portal registration. The TenantIds of incoming requests to the service must match this value. Falls back to "nexeedMacmaTenant0Id" if its not set. Unless the installation is a custom one, where the module has to be provided in an other tenant, this value can be left as empty.

no

empty

Quartz section

ConfigurationKey Description Mandatory DefaultValue

maxConcurrency

Sets the maxmimum amount of concurrent threads in Quartz. https://www.quartz-scheduler.net/documentation/quartz-3.x/configuration/reference.html#quartz-threadpool-maxconcurrency

yes

10

enableClustering

Flag to enable/disable clustering mode for Quartz. Clustering is required if the module has more than 1 replicas operating

yes

true

Database migration section

ConfigurationKey Description Mandatory DefaultValue

jobDependencyLabelValue

Internal variable used for dependency in the database-update job. Should not be changed.

yes

"initial-database-migration-x.y.z.w" where x/y/z/w are set during the release of the module

compressionEnabled

Enables or disables compression of the tables of MaterialManagement. Only capital values are accepted: "TRUE" or "FALSE". Please note that you need to have the appropriate Oracle License (e.g. AdvancedCompressionLicense) for this option to work.

yes

FALSE

partitioningEnabled

Enables or disables partitioning on the tables of MaterialManagement. Only capital values are accepted: "TRUE" or "FALSE". Please note that you need to have the appropriate Oracle License for this option to work.

yes

FALSE

parallelDegree

Sets the degree of parallelism for database migration jobs, where required. See link for more details on parallel hints, and link for more details about parallel degrees. This setting has an effect on overall tablespace usage, and can cause a migration error(s). See long_operations_-_ora-01652 for more information.

yes

2

Observability section

ConfigurationKey Description Mandatory DefaultValue

otelAutoInjectEnvParams

Whether or not to automatically inject OpenTelemetry environment variables into the application’s configuration.

yes

true

Auto update service section

ConfigurationKey Description Mandatory DefaultValue

jobDependencyLabelValue

Internal variable used for dependency in the Auto-update service job. Should not be changed.

yes

"autoupdate-service-job

targetVersion

Internal variable used for target version of the auto update service job.

yes

"3.12.0.0". This value will be replaced during the release of the module.

In case the product is installed in a Bosch factory which is still having MES related installations, then due to the dependencies defined MES Module Dependencies, several manual configuration efforts will be required.

Description of the Environment variables

The environmental variables are coming with specific prefixes. Two prefixes are currently used, 'NEXEED_MATERIALCONTROL_SERVICE' and 'NEXEED_MATERIALCONTROL_COMMON'. The former is specific to the current MaterialManagement Service, while the latter is shared, and could be used by other microservices. That being said, currently only MaterialManagement Service is deployed. As an additional note, the prefixes contain the name as 'MATERIALCONTROL' which is used internally in the code, and changing it would be a lot of effort, and could easily break deployments. Hence this naming convention will stay as is for now.

  • materialmanagement-backendservice

  • materialmanagement-shared

1. Other configuration

1.1. DDL (Direct Data Link)

For Material Management it is crucial to be able to communicate with the machines in production. To be able to do this, a properly configured DDL is required.

Please check the DDL’s technical manual for detailed information.

DDL is having an AccessModule called MatControlAccess to be able to forward the relevant calls from the machines to Material Management. MatControlAccess should be configured in each OSS projects where Material Management is required. Please note that a minimum of v2.29.0.0 version of OSS (Opcon Server System) is required.

Example:

matcontrolaccess oss configuration

The necessary required parameters to be filled to have the communication established for Material Management are:

  • Base address (The address where IAS Material Management is installed)

  • Client identifier (The clientId of DDL, which was created in MACMA, and having the necessary Material Management roles assigned)

  • Client secret (The clientSecret for the clientId of DDL in MACMA)

  • MatControlAccess scope (Should contain aud:\{clientId of Material Management}. \{clientId of Material Management} should be resolved by the current environments' clientId present in MACMA)

  • Send to IAS (Should be set to true)

  • Tenant identifier (Should be set to the tenantId of the specific tenant)

1.2. Runtime Configuration

The runtime configuration can be used to control various aspects of the application’s behavior. The settings are typically defined by the development team (via default values), but they may also be customizable by the end-users.

1.2.1. Uploading new configuration

On the portal, in the 'Configuration' menu, there is an option to upload a new configuration, or to download an existing one. If an update is necessary, the existing one can be downloaded first, the changes can be implemented, then it can be uploaded.

runtime config portal
Concurrent configuration updates are handled with locking+retry mechanism. In case there are parallel updates happening, the result is not deterministic. Please make sure that the configuration update was successful after an upload.

1.2.2. General information about RuntimeConfiguration

Material Management’s new RuntimeConfiguration uses a similar structure, like the old MatControl.config did. However, there are some differences:

  • There are some additional fields

    • BlockSynchronization

    • PsaTransferClient

    • DefaultBatch

    • QueryLimiting

    • CustomLabelPattern

    • TimeCorrections

  • In some older MatControl.config cases, there might be some values (most probably MSL (Moisture Sensitivity Level) definition ones), that need to be adjusted, in order to pass the xsd validation

In case there is an ongoing update from 2.11 to 3.0 these additional fields will be required:

<BlockSynchronization isEnabled="false" syncInterval="0.00:00:10" batchSize="1000"></BlockSynchronization>
<PsaTransferClient isEnabled="false"/>
<DefaultBatch useDefaultBatchWhenUnset="false" defaultValue=100/>
<QueryLimiting limitSetupHistoryReturnedResults="true" setupHistoryMaxReturnedResults=1000 limitMaterialHistoryReturnedResults="true" materialHistoryMaxReturnedResults=1000 limitFindMaterialReturnedResults="true" findMaterialMaxReturnedResults=100000/>
<CustomLabelPattern value=""/>
<TimeCorrections expirationDateCorrectionOffset=0.00:00:00 dateOfManufactureCorrectionOffset=0.00:00:00/>

1.2.3. Creating RuntimeConfiguration from the old MatControl.config

In order to check the missing fields, download the latest configuration file from the Portal:

config download

After determining what is missing, copy the necessary fields into the existing MatControl.config[] - example:

config migrate example

In order to fill it up with values, open the old Opcon.Settings.XML[], and search for the corresponding field:

config migrate value fromopcon example

1.2.4. Block synchronization related changes

Replace this section <LineControlBlockSynchronization isEnabled="false" blockSeverity="100"/> with this Block Synchronization section <BlockSynchronization isEnabled="false" syncInterval="0.00:00:10" batchSize="1000"></BlockSynchronization>

These are default values provided by the system. Customers may override them, but they must now be explicitly included in MatControl.config for IAS compatibility.

1.2.5. Remove the below keys from the respective sections

Service method

Field name

StoreMaterialData

sendLabelNotVerifiedBlockToLineControllers

StoreMaterialData

sendRuleBasedBlocksToLineControllers

UpdateMaterialData

sendRuleBasedBlocksToLineControllers

GetMaterialData

sendRuleBasedBlocksToLineControllers

AddBlockingRule

sendRuleBasedBlocksToLineControllers

UpdateBlockingRule

sendRuleBasedBlocksToLineControllers

BlockMaterial

sendRuleBasedBlocksToLineControllers

StoreMaterialData

sendNotReleasedToManufacturingBlockToLineControllers

MSDHandling

sendMSDBlocksToLineControllers

BlockMaterial

sendManualBlocksToLineControllers

Block synchronization related changes

Replace this section <LineControlBlockSynchronization isEnabled="false" blockSeverity="100"/> with this Block Synchronization section <BlockSynchronization isEnabled="false" syncInterval="0.00:00:10" batchSize="1000"></BlockSynchronization>

These are default values provided by the system. Customers may override them, but they must now be explicitly included in MatControl.config for IAS compatibility.
Remove the below keys from the respective sections

Service method

Field name

StoreMaterialData

sendLabelNotVerifiedBlockToLineControllers

StoreMaterialData

sendRuleBasedBlocksToLineControllers

UpdateMaterialData

sendRuleBasedBlocksToLineControllers

GetMaterialData

sendRuleBasedBlocksToLineControllers

AddBlockingRule

sendRuleBasedBlocksToLineControllers

UpdateBlockingRule

sendRuleBasedBlocksToLineControllers

BlockMaterial

sendRuleBasedBlocksToLineControllers

StoreMaterialData

sendNotReleasedToManufacturingBlockToLineControllers

MSDHandling

sendMSDBlocksToLineControllers

BlockMaterial

sendManualBlocksToLineControllers

Material Management validates the uploaded configuration file, so in case there is an error uploading it, check the returned error message, which indicates where did the validation fail.
Description of the runtime configuration values

The runtime configuration’s file contains these three major sections:

  • DefaultServiceSettings

    • This section describes the default configuration values for each configurable service method

Service method Field name Possible values Comment

StoreMaterialData

createNotReleasedToManufacturingBlock

true, false

A flag, whether a 'NotReleasedManufacturing' block should be created on storing the material or not

StoreMaterialData

createLabelNotVerifiedBlock

true, false

A flag, whether a 'LabelNotVerified' block should be created on storing the material or not

StoreMaterialData

evaluateBlockingRules

true, false

A flag to evaluate the blocking rules during storing the material

StoreMaterialData

rollbackBatchOnError

true, false

A flag whether the whole batch is rolled back in case of an error or not

StoreMaterialData

returnBlocks

true, false

A flag whether the blocks found during the operation are returned to the caller

ReplaceLabel

allowReplacingOfSplicedMaterial

true, false

-

ReplaceLabel

checkQuantityOfReplacementsForPlausability

true, false

If set to true the source quantity can not be lower than the sum of replacing quantities during ReplaceLabel process

SuggestLabelData

numberOfRecords

20 or any integer

The number of records to use for suggesting label data

SuggestLabelData

minNumberOfRecords

5 or any integer

The minimum number of records to use for suggesting label data

UpdateMaterialData

evaluateBlockingRules

true, false

A flag whether blocking rules should be evaluated or not

TrackRemovalFromProtectedEnvironment

ifAlreadyRemoved

"Ignore", "ReturnError", "ThrowFaultException"

Sets how the error should be handled when a material was already removed

TrackStorageInProtectedEnvironment

ifNeverOpened

"Ignore", "ReturnError", "ThrowFaultException"

Sets how the error should be handled when a material was never opened

TrackStorageInProtectedEnvironment

ifCurrentlyInProtectedEnvironment

"Ignore", "ImplicitlyOpenAndStoreAfterwards", "ReturnError", "ThrowFaultException"

Sets how the error should be handled if a material is in a protected environment

TrackSetupChange

checkSetupLocation

"Ignore", "Masked", "Exact"

Sets how the location should be checked to see, if a material is actually set-up to that location

TrackSetupChange

checkSetupLocationMask

"Plant", "Product", "Area", "Line", "Station", "StationIndex", "FunctionUnit", "WorkingPosition", "ToolPosition", "LevelPlant", "LevelProduct", "LevelArea", "LevelLine", "LevelStation", "LevelStationIndex", "LevelFunctionUnit", "LevelWorkingPosition", "LevelToolPosition", "Setup", "StationInfo"

The values are Flags, meaning the ability, that multiple values can be combined using bitwise operators (such as '|') to represent a combination of flags. The "Level" prefix is the reference layer, meaning every flag is set in the location sequence, e.g: "LevelProduct" means Plant | Product - Sets the location comparison mask

TrackSetupChange.setup

allowImplicitTeardownIfSetupElsewhere

true, false

A flag whether a material should be teared down from another location, if it is still set-up there

TrackSetupChange.setup

allowImplicitTeardownIfTargetNotEmpty

true, false

A flag whether a material should be teared down from the target location, if the target is not empty

TrackSetupChange.setup

allowImplicitOpen

true, false

A flag whether a material should be implicitly opened when set-up

TrackSetupChange.setup

materialUsedUpThreshold

-5%, 0, 5 - see comment

Sets a threshold value that defines when a material is used up. Positive values require to a small remainder of the material (physically not fully used up), negative values allow the material to be overbooked (negative remaining qty). If the value is followed by a %-sign, the value is treated as a percentage value of the original quantity, otherwise is is an absolute value

TrackSetupChange.setupAndSplice

ifPreviousMaterialNotSetupToThisLocation

"SetupMaterial", "SpliceAnyways"

Sets options for a situation when a material should be spliced to a prev material that is not set-up to this location

TrackSetupChange.setupAndSplice

setupIfNoImplicitPreviousMaterialFound

true, false

Sets options for a situation when an implicit splice was tried (splice without explicit prev MatId) but there was no prev material found

TrackSetupChange.setupAndSplice

setupIfMultipleImplicitPreviousMaterialsFound

"TearDownPreviousAndSetupNewMaterial", "SpliceToNewestPreviousMaterialAndTearDownAllOthers"

Sets options for a situation when an implicit splice was tried (splice without explicit prev MatId) but there were multiple prev material found

TrackSetupChange.setupAndSplice

materialUsedUpThreshold

-5%, 0, 5 - see comment

See above

TrackSetupChange.setupAndSplice

setupIfNoExplicitPreviousMaterialFound

true, false

-

TrackSetupChange.setupAndSplice

allowImplicitOpen

true, false

A flag whether a material should be implicitly opened when set-up

TrackSetupChange.setupAndSplice

allowImplicitTeardownIfTargetNotEmpty

true, false

See above

TrackSetupChange.setupAndSplice

maxSpliceChainLength

3 or any integer

Sets a the maximum length of a splice chain (number of material)

TrackSetupChange.setupAndSplice

allowSplicingToDifferentCustomerPartNumber

true, false

-

ValidateSetupAndUpdateData

checkSetupLocation

"Ignore", "Masked", "Exact"

Sets how the location should be checked to see, if a material is actually set-up to that location

ValidateSetupAndUpdateData

checkSetupLocationMask

""Plant", "Product", "Area", "Line", "Station", "StationIndex", "FunctionUnit", "WorkingPosition", "ToolPosition", "LevelPlant", "LevelProduct", "LevelArea", "LevelLine", "LevelStation", "LevelStationIndex", "LevelFunctionUnit", "LevelWorkingPosition", "LevelToolPosition", "Setup", "StationInfo""

The values are Flags, meaning the ability, that multiple values can be combined using bitwise operators (such as '|') to represent a combination of flags. The "Level" prefix is the reference layer, meaning every flag is set in the location sequence, e.g: "LevelProduct" means Plant | Product - sets the location comparison mask

ValidateSetupAndUpdateData

allowImplicitSetup

true, false

Sets a flag if material that is not set-up to this location should implicitly be set-up

ValidateSetupAndUpdateData

returnOnlyErrors

true, false

Sets a flag if only errors should be returned in the result set or all results

ValidateSetupAndUpdateData

materialUsedUpThreshold

-5%, 0, 5 - see comment

See above

ValidateSetupAndUpdateData

behaviorOnDuplicateMatID

"Merge", "ReportError", "ReportErrorAndBlockMaterial"

Sets what the validation behaviour should be, if the material’s Id is duplicated

ValidateSetupAndUpdateData

rollbackBatchOnError

true, false

Sets a flag whether the whole batch is rolled back in case of an error or not

ValidateSetupAndUpdateData

blockSynchronization

"UseMaterialLocation", "UseStationLocation"

Sets a flag whether the block syncronization to linecontrol should use the material’s current location, or the location of the consumption

CyclicTasks

expiredMaterialCheckInterval

0.00:01:00

Sets the interval for the ExpiredMaterialCheck timer timespan-format

CyclicTasks

blockOverexposedMaterialInterval

1.00:00:00

Sets the interval for the BlockOverexposedMaterial (MSD checking) timer timespan-format

CyclicTasks

findInactiveMaterialInterval

7.00:00:00

Sets the interval for the find inactive material timer timespan-format

CyclicTasks

inactiveMaterialThreshold

28.00:00:00

Sets the interval after which a material is marked inactive

CyclicTasks

clearJobHistoryInterval

3.00:00:00

Sets the interval for the clear job history timer timespan-format

CyclicTasks

historyCutOffInDays

3

Sets the amount of days that will be cut off from the job history

CyclicTasks

rebuildIndexInterval

1.00:00:00

Sets the interval for the rebuild index job timer timespan-format

MSDHandling

maxNoOfBakings

10 or any integer

Sets the maximum number of allowed backing cycles

MSDHandling

maxBakingInterruption

00:01:00

Sets the maximum interruption allowed during baking

MSDHandling.mslDefinitions>MSL

level

"1, 01, 2, 02, 2a, 3, 03, 4, 04, 5, 05, 5a, x"

The MSLDefinitions collection - The values here are the default values, in case a new MSL level is necessary, it has to be created

MSDHandling.mslDefinitions>MSL

floorLife

365.00:00:00

timespan-format

MSDHandling.mslDefinitions>MSL

floorLifePauseThreshold

365.00:00:00

timespan-format

MSDHandling.mslDefinitions>MSL

bakingTimeThreshold

3.00:00:00

timespan-format

MSDHandling.mslDefinitions>MSL

bakingTime

5.00:00:00

timespan-format

MSDHandling.mslDefinitions>MSL

bakingTimeExceedingThreshold

8.00:00:00

timespan-format

MSDHandling.mslDefinitions>MSL

shortTimeExposureThreshold

12:00:00

timespan-format

MSDHandling.mslDefinitions>MSL

shortTimeExposureMultiplier

5

-

MiscSettings

blockingRulesEvaluationThreshold

28.00:00:00

timespan-format

MiscSettings

sendBlocksToLineControllers

true, false

Sets the master switch for the communication between MatControl MES and the LineController(s). This setting is not currently used in Material Management.

BlockSynchronization

isEnabled

true, false

Sets whether block synchronization is active in IAS

BlockSynchronization

syncInterval

TimeSpan (e.g., 0.00:00:10)

Defines how often the synchronization starts at the best case. If the execution of a batch takes longer than the specified timespan, the next synchronization only starts when the previous one has been completed.

BlockSynchronization

batchSize

Integer (e.g., 1000)

Number of records processed per synchronization batch

PsaTransferClient

isEnabled

true, false

-

DefaultBatch

useDefaultBatchWhenUnset

true, false

Set a default value on receiving INTEGMA labels with unset VendorBatch / Batch1 (TrackSetupChange)

DefaultBatch

defaultValue

"NO_BATCH"

Default value for unset VendorBatch / Batch1 (TrackSetupChange)

QueryLimiting

limitSetupHistoryReturnedResults

true, false

-

QueryLimiting

setupHistoryMaxReturnedResults

1000

-

QueryLimiting

limitMaterialHistoryReturnedResults

true, false

-

QueryLimiting

materialHistoryMaxReturnedResults

1000

-

QueryLimiting

limitFindMaterialReturnedResults

true, false

-

QueryLimiting

findMaterialMaxReturnedResults

100000

timespan-format

CustomLabelPattern

value

""

Custom regular expression which is used to parse label strings, if the other definitions do not match. This pattern is only evaluated if it is not empty

TimeCorrections

expirationDateCorrectionOffset

0.00:00:00

timespan-format

TimeCorrections

dateOfManufactureCorrectionOffset

0.00:00:00

timespan-format

TimeSpan formats for the config values: [-]d.hh:mm:ss where d: days, hh: hours, mm: minutes, ss: seconds, [-]: optional negative sign

  • DefaultSanctions

    • This section describes the actions triggered on errors

Service method Field name Example value Comment (The values are Flags, meaning the ability, that multiple values can be combined using bitwise operators (such as '|') to represent a combination of flags).

TrackSetupChange > teardown

onUnknownMatId

"Ignore", "WriteToEventLog", "WriteToSetupHistory", "BlockMaterial", "BlockLocation"

Sets the sanctions for the unknown MatId error

TrackSetupChange > teardown

onMaterialNotOnThisLocation

"Ignore", "WriteToEventLog", "WriteToSetupHistory", "BlockMaterial", "BlockLocation"

Sets the sanctions for the material not on this location error

TrackSetupChange > setup

onUnknownMatId

"Ignore", "WriteToEventLog", "WriteToSetupHistory", "BlockMaterial", "BlockLocation"

Sets the sanctions for the unknown MatId error

TrackSetupChange > setup

onMaterialAlreadySetupElsewhere

"Ignore", "WriteToEventLog", "WriteToSetupHistory", "BlockMaterial", "BlockLocation"

Sets the sanctions for the material already setup elsewhere error

TrackSetupChange > setup

onMaterialNotOpened

"Ignore", "WriteToEventLog", "WriteToSetupHistory", "BlockMaterial", "BlockLocation"

Sets the sanctions for the material not opened error

TrackSetupChange > setup

onMaterialBlocked

"Ignore", "WriteToEventLog", "WriteToSetupHistory", "BlockMaterial", "BlockLocation"

Sets the sanctions for the material blocked error

TrackSetupChange > setup

onMaterialUsedUp

"Ignore", "WriteToEventLog", "WriteToSetupHistory", "BlockMaterial", "BlockLocation"

Sets the sanctions for the material used up error

TrackSetupChange > setup

onOtherMaterialSplicedToThisMaterial

"Ignore", "WriteToEventLog", "WriteToSetupHistory", "BlockMaterial", "BlockLocation"

Sets the sanctions for the other material spliced to this material error

TrackSetupChange > setup

onTargetLocationNotEmpty

"Ignore", "WriteToEventLog", "WriteToSetupHistory", "BlockMaterial", "BlockLocation"

Sets the sanctions for the target location not empty error

TrackSetupChange > setupAndSplice

onUnknownMatId

"Ignore", "WriteToEventLog", "WriteToSetupHistory", "BlockMaterial", "BlockLocation"

Sets the sanctions for the unknown MatId error

TrackSetupChange > setupAndSplice

onMaterialBlocked

"Ignore", "WriteToEventLog", "WriteToSetupHistory", "BlockMaterial", "BlockLocation"

Sets the sanctions for the material blocked error

TrackSetupChange > setupAndSplice

onPreviousMaterialNotSetupToThisLocation

"Ignore", "WriteToEventLog", "WriteToSetupHistory", "BlockMaterial", "BlockLocation"

Sets the sanctions for the previous material not on this location error

TrackSetupChange > setupAndSplice

onNoImplicitPreviousMaterialFound

"Ignore", "WriteToEventLog", "WriteToSetupHistory", "BlockMaterial", "BlockLocation"

Sets the sanctions for the no implicit previous material found error

TrackSetupChange > setupAndSplice

onMultipleImplicitPreviousMaterialsFound

"Ignore", "WriteToEventLog", "WriteToSetupHistory", "BlockMaterial", "BlockLocation"

Sets the sanctions for the multiple implicit previous materials found error

TrackSetupChange > setupAndSplice

onLocationCannotBeVerified

"Ignore"

Sets the sanctions for the on location cannot be verified error

TrackSetupChange > setupAndSplice

onDifferentCustomerPartNumberForPreviousMaterial

"Ignore", "WriteToEventLog", "WriteToSetupHistory", "BlockMaterial", "BlockLocation"

Sets the sanctions for the onDifferentCustomerPartNumberForPreviousMaterial error

ValidateSetupAndUpdateData

onUnknownMatId

"Ignore", "WriteToEventLog", "WriteToSetupHistory", "BlockMaterial", "BlockLocation"

Sets the sanctions for the unknown MatId error

ValidateSetupAndUpdateData

onMaterialUsedUp

"Ignore", "WriteToEventLog", "WriteToSetupHistory", "BlockMaterial", "BlockLocation"

Sets the sanctions for the material used up error

ValidateSetupAndUpdateData

onDuplicateMaterial

"Ignore", "WriteToEventLog", "WriteToSetupHistory", "BlockMaterial", "BlockLocation"

Sets the sanctions for the duplicate material error

ValidateSetupAndUpdateData

onExpiredMaterial

"BlockMaterial"

Sets the sanctions for the duplicate material error

  • LocationSpecificSettings

    • This section defines for which locations do more specific configuration parameters apply

    • Achieved by using a new wrapper tag, setting

    • Usually used with a dotted short notation OpConLocation String

Wrapper tag Field name Example value Comment

Setting

locationId

"10.1.1"

-

Setting

locationElementsMask

"LevelStationIndex"

Sets the location comparison mask

Contents

© Robert Bosch Manufacturing Solutions GmbH 2023-2025, all rights reserved

Changelog Corporate information Legal notice Data protection notice Third party licenses