Nexeed
    • Introduction
    • User manual
      • Concept
        • iFNS MatLabelCheck
        • INTEGMA
          • eASN (Electronic Advanced Shipping Notice)
          • GRTO (Goods Receipt Transfer Order)
          • Pairing
          • Repacking
        • On setup label creation
        • Block synchronization
      • 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
        • Migrate Material Management from version 3.11.x to 3.12.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
        • Block Synchronization
      • 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
    • Engineering UI
    • ERP Connectivity
    • Gateway
    • Information Router
    • Master Data Management
    • Orchestrator

Nexeed Learning Portal

  • Material Management
  • User manual
  • Concept
  • Block synchronization

Block synchronization

The Block Synchronization feature of Material Management takes care of synchronizing block creations and deletions in Material Management to Block Management. The data is created automatically whenever a change occurs, and is sent to Block Management in batches with configurable intervals and batch sizes.

Flow

Block Synchronization - Flow

Creation of synchronization data

The BlockSynchronizationTrigger acts as a trigger on the MAT_BLOCKS table. Its purpose is to update the contents of the BlockSync table based on changes occurring in MAT_BLOCKS. Any addition or deletion in MAT_BLOCKS will result in a corresponding modification in the BlockSync table.

Data handling

The BlockSynchronizationTrigger ensures that the BlockSync table remains consistent with the MAT_BLOCKS table.

Operation BlockSync Table Behavior

Add/Create

When a new block is created in MAT_BLOCKS, an entry with the BlockId and Priority 0 is added to the BlockSync table.

Update

Updates to existing blocks in MAT_BLOCKS, like changing the reasonText of a manual block, are not handled by this synchronization trigger. This means that such changes will not be reflected in Block Management. The BlockSync table remains unchanged for update operations on MAT_BLOCKS.

Delete

When a block is deleted from MAT_BLOCKS, the following logic applies to the BlockSync table:

  • If the BlockId is not present in BlockSync, a new entry with type DELETE and the BlockId is created.

  • If the BlockId is present and the status is WAITING or FAILED, the existing entry is deleted.

  • If the BlockId is present and the status is SYNCING, the existing entry is kept, and a new entry with type DELETE and Priority 0 is added.

Mapping of Material Management data to Block Management data

The following mappings describe how Material Management data is transformed into requests for the Block Management API.

Create block

When creating a block in Block Management, the following mapping is used for the PUT /bms-backend/api/v1/{tenantId}/blocks endpoint:

Block Management Field Material Management Mapping

sourcePlant

The configured source plant

sourceApplication

Material Management

sourceApplicationToken

The Multitenant Access Control client identifier of Material Management

sourceBlockIdentifier

The block identifier

reason

The block’s reason text

blockType

Material

blockItems

The block’s material identifier

inherited

False

severity

Mapped from the block’s priority

sourceBlockToken

The block identifier

info

The block’s reason text

Release block

Deleting material in Material Management triggers the release of a block in Block Management. The following mapping applies to the PUT /bms-backend/api/v1/{tenantId}/blocks/{blockId}/release endpoint:

Block Management Field Material Management Mapping

ROUTE blockId

The block identifier in Block Management

sourceApplicationToken

The Multitenant Access Control client identifier of Material Management

releaseBlockId

The block identifier in Block Management

releasedAt

The date and time when the delete event happened in Material Management

isClient

true

BODY blockId

The block identifier in Block Management

reason

'Released by Material Management'

Use cases

Create a block

When a block is created in Material Management, the BlockSynchronizationTrigger adds an entry to the BlockSync table with the BlockId and Priority 0. The BlockSync Job will then process this entry by calling the PUT /bms-backend/api/v1/{tenantId}/blocks endpoint in Block Management to create the corresponding block.

Release a block

When a block is deleted in Material Management, the BlockSynchronizationTrigger updates the BlockSync table based on the existing entry’s status:

  • If an entry for the BlockId exists with Status WAITING or FAILED, the entry is deleted.

  • If the entry’s status is SYNCING, the entry is kept, and a new entry with type DELETE is added.

  • If no entry exists, a new DELETE entry is created.

The BlockSync Job will process these DELETE entries by calling the PUT /bms-backend/api/v1/{tenantId}/blocks/{blockId}/release endpoint in Block Management to release the corresponding block.

Synchronization of material block events from Block Management

Synchronization of material block events from Block Management towards Material Management is currently not supported.

Error correction job

To address potential communication faults and ensure data consistency, a daily error correction job is implemented. This job operates on the premise that Material Management’s data flow is correct and any discrepancies should be synchronized towards Material Management, with Block Management acting as the master source for this specific process.

Logic

Prerequisites

  • Data will be checked in batches.

  • Block Management is considered the master source of truth for this synchronization.

  • The data check occurs once every day.

  • The job saves the current progress to allow for continuation in subsequent runs.

Flow

A job fetches blocks from Block Management and cross-references these blocks with corresponding blocks in Material Management. This job will be scheduled daily. If blocks are missing in Material Management that are present in Block Management, the blocks should be created in Material Management. If blocks exist in Material Management but not in Block Management, a block will only be deleted from Material Management if Block Management explicitly shows that the block was released.

The job reschedules itself for upcoming batches until all blocks have been processed. After processing all blocks, the next schedule time should revert to the next day’s original schedule time.

Contents

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

Changelog Corporate information Legal notice Data protection notice Third party licenses