This is the multi-page printable view of this section. Click here to print.

Return to the regular view of this page.

FLASH/Inbound

1 -

1.1 -

Property Type Description

(Root)

object

    eventId*

string (uuid)

The uniq eventId
Global uniq Id

    traceId*

string (uuid)

The uniq traceId
Global uniq Id for tracing the flow of events

    spanId

string

The eventId of previous record or batchId
Optionally, if this record (event) is one of a sequence of records and the order is important, then here is the id of the previous record (event), recommended as uuid, Special usecases can be specify for some interfaces

    eventTime*

string

Time of occurrence of the event
Time at which this record(event) was technically generated in RFC3339 format. Strongly recommended: in UTC time.

    version*

The number of version schema
Number of version of this data structure. Only required if no $schema is specified!

    context

string

The context / business case
The context specified here means the business domain.

    eventType*

string (enum)

The type of operation
Typ der Nachricht

Any of: [ "INSERT", "UPDATE", "DELETE" ]

    metaData

object

additional meta information
optional, can be used with different characteristics for technical data per interface

        senderSystem*

string (enum)

system

Any of: [ "KR1_SHF", "KR1_HHSTR", "WMSX_SON", "WMSX_AKU", "KMOTION_ILO", "KMOTION_GHM", "COBRA", "LSAS", "IDEEFIX", "OBS", "RESY", "LDH", "RETAILSCHICHT", "BUBE", "FINE_INBOUND", "F2X", "WMSX_WEISMAIN", "LIGIS", "KR1_MANDANT" ]

        ownerCompany

string

The owner company belonging to the logistic product of one or more underlying stock movements of this storage order.
The owner company that is affected by the underlying stock movements of this storage order. It's null as long as no such movements with a product and thus a company exist for this storage order. This info is used to route storage order events only to those systems which are responsible/eligible for a certain owner company. Consumer systems may receive multiple copies of the same storage order event (varying in owner company) in case they are responsible/eligible for multiple companies.

Maximum Length: 50

    data*

object

        location

string (enum)

warehouse locations

Any of: [ "ANSBACH", "LOEHNE", "LANGENSELBOLD", "MOSINA", "OHRDRUF", "HALDENSLEBEN", "HALDENSLEBEN_RT", "SUEDHAFEN", "SONNEFELD", "ALTENKUNSTADT", "WEIDEN", "KRACANY", "ILOWA", "ILOWA_RT", "ILOWA_RSS", "GERNSHEIM", "ERFURT", "HAMBURG_RT", "OTELFINGEN_RT", "KRIMICE_RT", "STAHLAVY_RT", "OHRDRUF_RT", "LOEHNE_RT", "LANGENSELBOLD_RT", "LODZ_1_RT", "LODZ_2_RT", "BERGHEIM_RT", "ALTENKUNSTADT_RT", "LISTERHILLS_RT", "SUEDHAFEN_RT", "PILSEN_RT", "HAMBURG_SC", "LOEHNE_SC", "SCHWABHAUSEN_SC", "HALDENSLEBEN_RSS", "ALTENKUNSTADT_RSS", "LOEHNE_RSS", "OHRDRUF_RSS", "LANGENSELBOLD_RSS", "LOEHNE_CP" ]

        storageOrderId*

string

(techn.) ID eines Lagerauftrags

        parentStorageOrderId

string

(techn.) ID des übergeordneten Lagerauftrags

        targetLocation

string (enum)

warehouse locations
Ziel-Lager bei externen Umfuhren

Any of: [ "ANSBACH", "LOEHNE", "LANGENSELBOLD", "MOSINA", "OHRDRUF", "HALDENSLEBEN", "HALDENSLEBEN_RT", "SUEDHAFEN", "SONNEFELD", "ALTENKUNSTADT", "WEIDEN", "KRACANY", "ILOWA", "ILOWA_RT", "ILOWA_RSS", "GERNSHEIM", "ERFURT", "HAMBURG_RT", "OTELFINGEN_RT", "KRIMICE_RT", "STAHLAVY_RT", "OHRDRUF_RT", "LOEHNE_RT", "LANGENSELBOLD_RT", "LODZ_1_RT", "LODZ_2_RT", "BERGHEIM_RT", "ALTENKUNSTADT_RT", "LISTERHILLS_RT", "SUEDHAFEN_RT", "PILSEN_RT", "HAMBURG_SC", "LOEHNE_SC", "SCHWABHAUSEN_SC", "HALDENSLEBEN_RSS", "ALTENKUNSTADT_RSS", "LOEHNE_RSS", "OHRDRUF_RSS", "LANGENSELBOLD_RSS", "LOEHNE_CP" ]

        targetStorageHierarchy

string

Ziel-Lagereinheit – analog S08 - bei internen Umfuhren (targetLocation und targetStorageHierarchy treten nur exklusiv auf)

Maximum Length: 30

        intraWarehouseDestination

string

MfrZiel im KR1 - kann sowohl zusaetzlich zu targetLocation bzw. targetStorageHierarchy oder einzeln auftreten

Maximum Length: 10

        internalNumber

string

Im LVS verfügbare Nummer des Lagerauftrags

        externalNumber

string

Externe Nummer des Lagerauftrags.

        description

string

Description

        storageOrderTypeCode

string

Code des LVS für einen Lagerauftragstyp.

        sealNo

string

Plombennummer, sofern diese im Lagerauftrag vorhanden ist (z.B. bei der Verladung in einen Wechselaufbau) oder ggf. bei Öffnen einer Retouren-WAB.

        orderDate

string (date)

Auftragsdatum eines Lagerauftrags. Z.B. bei Replenishment-Umfuhren der Tag, für den die Umfuhren beauftragt werden.

2 -

2.1 -

Property Type Description

(Root)

object

    eventId*

string (uuid)

The uniq eventId
Global uniq Id

    traceId*

string (uuid)

The uniq traceId
Global uniq Id for tracing the flow of events

    spanId

string (uuid)

The uniq spanId
ID of the privious event (message). The ID is not given if there is no previous event. For transaction initiated by user the spanId of the executed event might be the userId.

    eventTime*

string

Time of occurrence of the event
Time at which this record(event) was technically generated in RFC3339 format. Strongly recommended: in UTC time.

    version*

The number of version schema
Number of version of this data structure. Only required if no $schema is specified!

    context

string

The context / business case
The context specified here means the business domain.

    eventType*

string (enum)

The type of operation
Typ der Nachricht

Any of: [ "INSERT", "UPDATE", "DELETE" ]

    metaData

object

        senderSystem

string (enum)

system

Any of: [ "KR1_SHF", "KR1_HHSTR", "WMSX_SON", "WMSX_AKU", "KMOTION_ILO", "KMOTION_GHM", "COBRA", "LSAS", "IDEEFIX", "OBS", "RESY", "LDH", "RETAILSCHICHT", "BUBE", "FINE_INBOUND", "F2X", "WMSX_WEISMAIN", "LIGIS", "KR1_MANDANT" ]

    data*

object

        location*

string (enum)

warehouse locations

Any of: [ "ANSBACH", "LOEHNE", "LANGENSELBOLD", "MOSINA", "OHRDRUF", "HALDENSLEBEN", "HALDENSLEBEN_RT", "SUEDHAFEN", "SONNEFELD", "ALTENKUNSTADT", "WEIDEN", "KRACANY", "ILOWA", "ILOWA_RT", "ILOWA_RSS", "GERNSHEIM", "ERFURT", "HAMBURG_RT", "OTELFINGEN_RT", "KRIMICE_RT", "STAHLAVY_RT", "OHRDRUF_RT", "LOEHNE_RT", "LANGENSELBOLD_RT", "LODZ_1_RT", "LODZ_2_RT", "BERGHEIM_RT", "ALTENKUNSTADT_RT", "LISTERHILLS_RT", "SUEDHAFEN_RT", "PILSEN_RT", "HAMBURG_SC", "LOEHNE_SC", "SCHWABHAUSEN_SC", "HALDENSLEBEN_RSS", "ALTENKUNSTADT_RSS", "LOEHNE_RSS", "OHRDRUF_RSS", "LANGENSELBOLD_RSS", "LOEHNE_CP" ]

        storageLocation*

object

            storageLocationId*

string

techn. Eindeutiger Key des Lagerplatzes.

            storageLocationCode*

string

BusinessKey: Darstellung des Lagerplatzes als fachlicher Schlüssel, wie dieser im LVS Front-End angezeigt wird

            type*

string (enum)

Beschreibt die Eigenschaft eines Platzes, ob dieser ein echter Lagerplatz oder ein virtueller Lagerplatz ist

Any of: [ "VIRTUAL", "PHYSICAL" ]

            building

string

            floor

string

            aisle

string

            layer

string

            field

string

            place

string

            lastInventoryDate

string

            occupied

string

            lockCode

string

Lagerplatzsperre, wenn höhere Sperren vorhanden sind, sollen sich diese auf den Platz vererben

            lock

string (enum)

ist der Platz gespeert oder nicht

Any of: [ "LOCKED", "NOT_LOCKED" ]

        rack

object

            width

object

                value

number

Weitenwert

                unit

string (enum)

unit length

Any of: [ "METER" ]

            length

object

                value

number

Längenwert

                unit

string (enum)

unit length

Any of: [ "METER" ]

            height

object

                value

number

Höhenwert

                unit

string (enum)

unit length

Any of: [ "METER" ]

            volume

object

                value

number

Volumenwert

                unit

string (enum)

unit volume

Any of: [ "CUBIC_METER", "LITER" ]

            typeCode

string

            type

string (enum)

Fachtypen

Any of: [ "BIN", "BOX", "PALETTE", "CORLETTE", "CARTON", "PULK", "UNKNOWN" ]

            capacity

integer

            maxWeight

object

                value

integer

Max. Gewichtswert

                unit

string (enum)

unit weight

Any of: [ "GRAM", "KILOGRAM" ]

        area*

object

            storageType*

string (enum)

Unterscheidung nach Kommissionierung / Reservelager / Rücksendestelle

Any of: [ "PICKING", "RESERVE", "RETURN", "OTHER" ]

            storageHierarchy

object

                level1

string

                level2

string

                level3

string

            heavyArea

string (enum)

when true, then this is a heavy area

Any of: [ "HEAVY", "NOT_HEAVY" ]

            priority

string (enum)

Any of: [ "LOW", "HIGH" ]

            valuableArea

string (enum)

Kennzeichnung ob der Lagerbereich diebstahlgefährdete Artikel enthält (Käfigbereich)

Any of: [ "NORMAL", "VALUABLE" ]

            forkliftControlSystem

boolean

Bereich für Staplerleitsystem geeingnet

            driverlessTransportSystem

boolean

Bereich für fahrerloses Transportsystem geeignet

            usageCoefficient

integer

Minimum: 0
Maximum: 100

            harzadousMaterialZone

string

Gefahrstoffzone

Maximum Length: 50

            harzadousMaterialZoneGroup

string

Gefahrstoffzonegruppe

Maximum Length: 10

            fireZone

string

Brandabschnitt

Maximum Length: 10

            harzadousMaterialZoneOverflow

string

Gefahrstoffzone Überlauf

Maximum Length: 10

            nonCommercialGoodsArea

string (enum)

Kennzeichnung, ob der Lagerbereich für Betriebsmittel ist

Any of: [ "YES", "NO" ]

        aisleProperties

object

Aisle detail properties

            strategyCode

string

            targetCode

string

            lockCode

string

            lock

string (enum)

Any of: [ "LOCKED", "NOT_LOCKED" ]

        layerProperties

object

            lockCode

string

            lock

string (enum)

Any of: [ "LOCKED", "NOT_LOCKED" ]

        fieldProperties

object

            lockCode

string

            lock

string (enum)

Any of: [ "LOCKED", "NOT_LOCKED" ]

3 -

3.1 -

Property Type Description

(Root)

object

    eventId*

string (uuid)

The uniq eventId
Global uniq Id

    traceId*

string (uuid)

The uniq traceId
Global uniq Id for tracing the flow of events

    spanId

string (uuid)

The uniq spanId
ID of the privious event (message). The ID is not given if there is no previous event. For transaction initiated by user the spanId of the executed event might be the userId.

    eventTime*

string

Time of occurrence of the event
Time at which this record(event) was technically generated in RFC3339 format. Strongly recommended: in UTC time.

    version*

The number of version schema
Number of version of this data structure. Only required if no $schema is specified!

    context

string

The context / business case
The context specified here means the business domain.

    eventType*

string (enum)

The type of operation
Typ der Nachricht

Any of: [ "INSERT", "UPDATE", "DELETE" ]

    metaData

object

        senderSystem*

string (enum)

system

Any of: [ "KR1_SHF", "KR1_HHSTR", "WMSX_SON", "WMSX_AKU", "KMOTION_ILO", "KMOTION_GHM", "COBRA", "LSAS", "IDEEFIX", "OBS", "RESY", "LDH", "RETAILSCHICHT", "BUBE", "FINE_INBOUND", "F2X", "WMSX_WEISMAIN", "LIGIS", "KR1_MANDANT" ]

        client

string (enum)

client
Client/mandant (messages of different clients have different processing rules and destination interfaces) - use FBO for Fulfillment by Otto (CORE, DeepSea…​)

Any of: [ "FBO", "MYTOYS", "BONPRIX", "WITT", "CORSO", "HEINE", "BAUMARKT_DIREKT", "BAUR", "OTTO", "ABOUTYOU", "F2X", "F2X_MANUFACTUM", "F2X_PERSONALSHOP", "F2X_SHEEGO", "F2X_CLEARANCE" ]

    data*

object

        location*

string (enum)

warehouse locations

Any of: [ "ANSBACH", "LOEHNE", "LANGENSELBOLD", "MOSINA", "OHRDRUF", "HALDENSLEBEN", "HALDENSLEBEN_RT", "SUEDHAFEN", "SONNEFELD", "ALTENKUNSTADT", "WEIDEN", "KRACANY", "ILOWA", "ILOWA_RT", "ILOWA_RSS", "GERNSHEIM", "ERFURT", "HAMBURG_RT", "OTELFINGEN_RT", "KRIMICE_RT", "STAHLAVY_RT", "OHRDRUF_RT", "LOEHNE_RT", "LANGENSELBOLD_RT", "LODZ_1_RT", "LODZ_2_RT", "BERGHEIM_RT", "ALTENKUNSTADT_RT", "LISTERHILLS_RT", "SUEDHAFEN_RT", "PILSEN_RT", "HAMBURG_SC", "LOEHNE_SC", "SCHWABHAUSEN_SC", "HALDENSLEBEN_RSS", "ALTENKUNSTADT_RSS", "LOEHNE_RSS", "OHRDRUF_RSS", "LANGENSELBOLD_RSS", "LOEHNE_CP" ]

        storageHandlingUnitId*

string

techn. Key einer Ladeinheit / eines Gebindes

        storageHandlingUnitCode*

string

Business-Key einer Ladeinheit / eines Gebindes

        storageHandlingUnitParentId

string

Falls das Gebinde schachtelbar ist, so ist hier der jeweilige Stapel zu referenzieren

        packageCode*

string

Kennzeichnung der Verpackungsnorm (z.B. Palette, Kolli N1 usw.)

        package*

string (enum)

Verpackungsnormen

Any of: [ "UNKNOWN_PACKAGE", "VIRTUAL_PACKAGE", "N1", "N2", "N3", "N4", "N5", "N6", "N7", "P1", "P2", "P3", "P4", "P5", "BIN", "HIGHBIN", "BOX", "HIGHBOX", "LARGE_FORMAT_PALETTE", "LARGE_FORMAT_CORLETTE", "TROLLEY", "GENERIC_UNIT", "LOGISTICS_UNIT", "HUNT", "SHOECARTON", "BULKBOX" ]

        packageGroup*

string (enum)

Verpackungsnormgruppen

Any of: [ "UNKNOWN_PACKAGEGROUP", "VIRTUAL_PACKAGEGROUP", "GERNERIC_PACKAGEGROUP", "CARTON", "PALETTE", "BIN", "BOX", "CORLETTE", "TROLLEY", "BULKBOX" ]

        sample

string (enum)

Kennzeichnung, ob es sich um ein Gebinde handelt, das in der Musterziehung erstellt wurde

Any of: [ "NO_SAMPLE", "SAMPLE" ]

        perforation

string (enum)

Kennzeichnung, ob eine Ladeeinheit durch eine automatische Perforation perforiert werden darf

Any of: [ "NO_PERFORATION", "PERFORATION", "UNKNOWN" ]

        damaged

string (enum)

Kennzeichnung, ob das Gebinde beim Wareneingang defekt war

Any of: [ "NOT_DAMAGED", "DAMAGED" ]

        orderRelatedHandlingUnit

string (enum)

Kennzeichnung für den Einzelteilprozess (z.B. bei Otto Market) zur Unterscheidung ob ein Auftrag für ein Artikel im Gebinde vorliegt

Any of: [ "YES", "NO" ]

        orderRelatedHandlingUnitCode

string

Interne Werte der Vereinnahmung des ETV-Prozesses (z.B. Codes für Auftragsware, Schmuck, Präventiv etc.) des jeweiligen LVS

        captureType

string (enum)

Art der Erfassung einer Ladeeinheit, aktuell nur für Kartons zutreffend.

Any of: [ "QR", "OCR", "MANUAL" ]

        weight

object

            value

integer

Gewichtswert

            unit

string (enum)

unit weight

Any of: [ "GRAM", "KILOGRAM" ]

        returnTargetCode

string

Interne Werte des Sortierzieles

Maximum Length: 10

4 -

4.1 -

Property Type Description

(Root)

object

Open Orders
this is use in topic 'flash.stock.openorders'

    COMMKEY*

integer

Item Option Communication Key

Minimum: 0
Maximum: 1000000000000000000

    DATUM*

string (date)

Datum
Date of latest NAB Change

Minimum Length: 10
Maximum Length: 10

    OFFENER_NAB*

integer

Offener NAB
Open backorders (Offener Nachlieferungsbestand): Der offene Nachlieferungsbestand (NAB) bildet die tägliche Veränderung aller Auftragspositionen ab, die keinen lieferbaren Bestand aufweisen. Sobald ein lieferbarer Bestand vorliegt, erfolgt entweder die Fakturierung oder eine Umbuchung in den reservierten NAB, wenn aus anderen Gründen auf die Fakturierung gewartet werden soll.

Minimum: 0

    RESERVIERTER_NAB*

integer

Reservierter NAB
Promissed backorders (reservierter Nachlieferungsbestand): Der reservierte Nachlieferungsbestand (NAB) bildet die tägliche Veränderung aller Auftragspositionen ab, die zwar einen lieferbaren Bestand aufweisen, aber dennoch nicht sofort ausgeliefert werden sollen. Gründe für ein solches Warten können z.B. sein, dass ein Kunde einen bestimmten späteren Liefertermin wünscht (Wunschtermin) oder auf die Komplettierung einer Bestellung gewartet wird.

Minimum: 0

    REPORTZEITSTEMPEL*

string (date-time)

Exportzeitstempel
Timestamp of export

    RUN_ID*

string

RUN_ID
Export ID of exporting system

Minimum Length: 16
Maximum Length: 16

5 -

5.1 -

Property Type Description

(Root)

object

Open Orders
this is use in topic 'flash.stock.openorders'

    COMMKEY*

integer

Item Option Communication Key

Minimum: 0
Maximum: 1000000000000000000

    DATUM*

string (date)

Datum
Date of latest NAB Change

Minimum Length: 10
Maximum Length: 10

    OFFENER_NAB*

integer

Offener NAB
Open backorders (Offener Nachlieferungsbestand): Der offene Nachlieferungsbestand (NAB) bildet die tägliche Veränderung aller Auftragspositionen ab, die keinen lieferbaren Bestand aufweisen. Sobald ein lieferbarer Bestand vorliegt, erfolgt entweder die Fakturierung oder eine Umbuchung in den reservierten NAB, wenn aus anderen Gründen auf die Fakturierung gewartet werden soll.

Minimum: 0

    RESERVIERTER_NAB*

integer

Reservierter NAB
Promissed backorders (reservierter Nachlieferungsbestand): Der reservierte Nachlieferungsbestand (NAB) bildet die tägliche Veränderung aller Auftragspositionen ab, die zwar einen lieferbaren Bestand aufweisen, aber dennoch nicht sofort ausgeliefert werden sollen. Gründe für ein solches Warten können z.B. sein, dass ein Kunde einen bestimmten späteren Liefertermin wünscht (Wunschtermin) oder auf die Komplettierung einer Bestellung gewartet wird.

Minimum: 0

    REPORTZEITSTEMPEL*

string (date-time)

Exportzeitstempel
Timestamp of export

    RUN_ID*

string

RUN_ID
Export ID of exporting system

Minimum Length: 16
Maximum Length: 16

6 -

6.1 -

Property Type Description

(Root)

object

Open Orders
this is use in topic 'flash.stock.openorders'

    COMMKEY*

integer

Item Option Communication Key

Minimum: 0
Maximum: 1000000000000000000

    DATUM*

string (date)

Datum
Date of latest NAB Change

Minimum Length: 10
Maximum Length: 10

    OFFENER_NAB*

integer

Offener NAB
Open backorders (Offener Nachlieferungsbestand): Der offene Nachlieferungsbestand (NAB) bildet die tägliche Veränderung aller Auftragspositionen ab, die keinen lieferbaren Bestand aufweisen. Sobald ein lieferbarer Bestand vorliegt, erfolgt entweder die Fakturierung oder eine Umbuchung in den reservierten NAB, wenn aus anderen Gründen auf die Fakturierung gewartet werden soll.

Minimum: 0

    RESERVIERTER_NAB*

integer

Reservierter NAB
Promissed backorders (reservierter Nachlieferungsbestand): Der reservierte Nachlieferungsbestand (NAB) bildet die tägliche Veränderung aller Auftragspositionen ab, die zwar einen lieferbaren Bestand aufweisen, aber dennoch nicht sofort ausgeliefert werden sollen. Gründe für ein solches Warten können z.B. sein, dass ein Kunde einen bestimmten späteren Liefertermin wünscht (Wunschtermin) oder auf die Komplettierung einer Bestellung gewartet wird.

Minimum: 0

    REPORTZEITSTEMPEL*

string (date-time)

Exportzeitstempel
Timestamp of export

    RUN_ID*

string

RUN_ID
Export ID of exporting system

Minimum Length: 16
Maximum Length: 16

7 - S03 Stock Movement

Status

Version 1.0 published 07.06.2022

Approval
  1. DeepSea:

  2. NEON: abgestimmt mit Körber zur Umsetzung in NEON_Fein_Pflichtenheft_WEN1_ SST_v6.0

Comment
Assumption

_

1. Stakeholder

Role Application Responsible

Communication

Integration Layer

Leading App

FLASH

InterfaceOwner

Producer

kMotion

Producer

KR1

Producer

COBRA

Producer

WMSx/SON

Producer

F2X

Consumer

FLASH

Consumer

SOLAR

Consumer

F2X

2. Business Context

Goal of the interface: Distribution of goods movements (level single part) to a specific state.

3. Informationflow

Partner Direction FINE-Service Topic/API Description Status

WMS:WMSX

send

Stock

stock.stockmovement.v2

StockMovement.v2.0

ready

WMS:KR1

send

Stock

stock.stockmovement.kr1.v2

StockMovementWms.v2.1

ready

WMS:F2X

send

Stock

stock.stockmovement.f2xwms.v2

StockMovementWms.v2.1

planned

WMS:KMOTION

send

Stock

stock.stockmovement.kmotion.v2

StockMovementWms.v2.1

planned

FLASH

receive

Stock

stock.stockmovement.v2

StockMovement.v2.0

ready

FLASH

receive

Stock

stock.stockmovement.kr1.v2

StockMovementWms.v2.1

ready

FLASH

receive

Stock

stock.stockmovement.f2xwms.v2

StockMovementWms.v2.1

planned

FLASH

receive

Stock

stock.stockmovement.kmotion.v2

StockMovementWms.v2.1

planned

F2X:F2X

receive

Stock

stock.stockmovement.f2x.v2

StockMovementErp.v2.1

planned

Diagram

4. Interface

4.1. Direction WMS to FINE

4.1.1. Header

This interface uses the Service Header

Special expresion for this interface:

Table 1. Attribute
Fieldname Expresion

type

context

STOCK_MOVEMENT

4.1.2. Datamodel

Unresolved directive in <stdin> - include::autogenerated-schema-tables/StockMovementWms.v2.3.schema.adoc[]

4.1.3. Enumeration

Field: Type

Table 2. type
Meta Value Description Short Value

STORAGE

Einlagerung

REMOVAL

Auslagerung

RELOCATION

Umlagerung

4.1.4. Example

Message WMS to FINE
{
    "eventId": "00ce536f-923a-42f4-8128-be118faf1d87",
    "traceId": "00ce536f-923a-42f4-8128-be118faf1d85",
    "eventTime": "2016-04-16T16:06:05+02:00",  
    "version": "string",
    "context": "STOCK_MOVEMENT",
    "type": "MOVEMENT",
    "sender": "kMotion",
    "data": {
        "location": "LSB",
        "movementId":"123436262",
        "movementType":"STORAGE",
        "movementCode":"3323",
        "quantity": {
            "value": 123,
            "unit":"PIECES"
        }, 
        "processMovementTime": "2016-04-16T16:06:05+02:00",
        "storageOrder": {
            "id": "25363636263",
            "key":"737373737"
        },               
        "situation": "körber wert",
        "source":{
            "quantId":"123",
            "storageLocation": {
                "id": "H01-HRL/104-2-009-03"
            },
            "storageHandlingUnit": [{
                "level": "PARENT",
                "id":"63462343"
            }]             
        },
        "target":{
            "quantId":"84847373",
            "storageLocation": {
                "id": "H07-HRL/108-2-009-03"
            },
            "storageHandlingUnit": [{
                "level": "PARENT",
                "id":"737737"
            }],             
        "product": {
          "logisticProductId":"12351548516",
          "itemNumber":"920571",
          "itemSize":"46"
        },
        "supplier": {
          "id":"12351548516",
          "number":"920571"
        },
        "goodsIn": {
          "id":"12351548516",
          "positionId":"46"
       }
    }
 }
}

4.1.5. Schema

Table 3. Version FINE to WMS
Version Number File Published on Changes

previous version

1.0

Download

07.06.22

previous version

2.0

Download

20.09.22

- ServiceHeader Attriute spanId als optionales Feld einfügen

- ServiceHeader Attriute type umbenannt in eventType

- Service Header neues Objekt "metaData" einfügen und die Attribute "sender" in das neue Objekt verschieben

- Service Header die Attribute "messageNumber" und "lastMessageNumber" aus dem Schema entfernen

- bei Attribute "sender" das Schema des GlobalEnum "sender" verlinken

- unter Data\quantity Attibute "unit" das Schema des GlobalEnum unit verlinken

previous version

2.1

Download

25.01.23

- Aufnahme von "logisticsPackingunitId" und "packingUnitIndex" unter "product" für mehrteilige Artikel als optionale Felder

- Aufnahme von "BUID", "bestBeforeDate", "batch", "imei", "serialNo" unter "Data" als optionale Felder

- Verlinkung auf system v4 - Aufnahme von Client in metaData

current version

2.2

Download

29.11.23

- Änderung des Attriutes BUID auf BUAID

coming version

2.3

Download

25.09.2024

- Entfernung ENUM für company - Umstellung auf String; Entfernung ENUM für Client - Umstellung auf String

Interface WMS to FINE
{
    "$schema": "http://json-schema.org/draft-07/schema",
    "$comment": "Schema for movements in a warehouse Version 2.3",
    "$id": "https://doc.fine.gcp.osp-dev.de/registry/Stock/StockMovementWms.v2.3.schema.json",
    "type": "object",
    "properties": {
      "eventId": {
        "type": "string",
        "format": "uuid",
        "title": "The uniq eventId",
        "description": "Global uniq Id",
        "examples": [
            "00ce536f-923a-42f4-8128-be118faf1d87"
        ]
    },
      "traceId": {
        "type": "string",
        "format": "uuid",
        "title": "The uniq traceId",
        "description": "Global uniq Id for tracing the flow of events",
        "examples": [
            "00ce536f-923a-42f4-8138-33418faf1342"
        ]
    },
      "spanId": {
        "type": "string",
        "title": "The eventId of previous record or batchId",
        "description": "Optionally, if this record (event) is one of a sequence of records and the order is important, then here is the id of the previous record (event), recommended as uuid, Special usecases can be specify for some interfaces",
        "examples": [
            "00ce536f-923a-42f4-5463-32a41877b3c2"
        ]
    },    
      "eventTime": {
        "type": "string",
        "title": "Time of occurrence of the event",
        "description": "Time at which this record(event) was technically generated in RFC3339 format. Strongly recommended: in UTC time.",
        "examples": [
            "2022-03-22T09:52:00.000+01:00"
        ]
    },
      "version": {
      "title": "The number of version schema",
      "description": "Number of version of this data structure. Only required if no $schema is specified!",
      "oneOf": [
          {
              "type": "string",
              "pattern": "\\d+\\.\\d{1,2}",
              "maxLength": 6,
              "examples": ["1.01", "01.02"]
          },
          {
              "type": "integer",
              "minimum": 1,
              "maximum": 99999,              
              "examples": [1, 2]
          }
      ]
    },
      "context": {
        "type": "string",
        "title": "The context / business case",
        "description": "The context specified here means the business domain.",
        "examples": [
            "STOCK_MOVEMENT"
        ]
    },
      "eventType": {
        "type": "string",
        "title": "The concrete type = kind of record(event)",
        "description": "This attribute is to be used if the data set can have more than one characteristic. E.g. goods delivery start or goods delivery end. The possible values are to be co-ordinated here as Enum between the partners.",
        "examples": ["INSERT", "UPDATE", "DELETE"]
    },
    "metaData": {
      "type": "object",
      "title": "additional meta information",
      "description": "optional, can be used with different characteristics for technical data per interface",
      "properties": {
        "senderSystem": {
          "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/system.v4.schema.json"
    },
        "client": {
          "title": "client",
          "description": "Client/mandant (messages of different clients have different processing rules and destination interfaces) - use FBO for Fulfillment by Otto (CORE, DeepSea...)",
          "type": "string",
          "maxLength": 50,
          "examples": ["FBO","F2X"]
    },
      "required": [
        "senderSystem"
      ]     
    },
    "data": {
        "type": "object",
        "properties": { 
            "location": {
                "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/warehouselocations.v1.schema.json"
            },
            "movementId": {
              "description": "ID einer Bewegung. Möglichst technischer Key.",
              "type": "string",
              "title": "Movemtent ID",
              "examples":["1234"]
            },     
            "movementCode": {
              "description": "Bewegungsart (LVS spezifisch)",
              "type": "string",
              "title": "Movement Code",
              "example": ["1071"]
            },
            "BUAID": {
              "description": "BI UUID, eindeutige Kennzeichnung eines Einzelteils (Quanten) im logistischen Prozess.",
              "type": "string",
              "title": "BUAID",
              "examples":["2344545-334542-465g45ddf"]
            },
            "bestBeforeDate": {
              "description": "Mindesthaltbarkeitsdatum",
              "type": "string",
              "title": "bestBeforeDate",
              "examples":["2022-12-31"]
            },
            "batch": {
              "description": "Chargennummer des Lieferanten",
              "type": "string",
              "title": "batch",
              "examples":["124345d"]
            },
            "imei": {
              "description": "IMEI eines techn. Geräts",
              "type": "string",
              "title": "imei",
              "examples":["2345-45452-43365-5643"]
            },
            "serialNo": {
              "description": "Seriennummer des Herstellers",
              "type": "string",
              "title": "serialNo",
              "examples":["D345-gkjpo-3112"]
            },
            "quantity": {
              "type": "object",
              "properties": {
                "value": {
                  "type": "integer",
                  "description": "the quantity for this item size/order"
                },
                "unit": {
                  "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/unit.v1.schema.json"
                  }
                }
            },  
            "processMovementTime": {
              "description": "Zeitpunkt der Bewegung",
              "type": "string",
              "format": "date-time",
              "title": "processtime movement",
              "examples":["2022-03-22T09:52:00.000+01:00"]
            },
            "storageOrder": {
              "type": "object",
              "properties": {
                "id": {
                  "description": "Referenz auf den Lagerauftrag (gibt es im KR1)",
                  "type": "string",
                  "title": "",
                  "examples":["123"]
                },
                "key": {
                  "description": "Belegnummer der Bewegung",
                  "type": "string",
                  "title": "",
                  "examples":["123"]
                }  
              }
            },
            "situation": {
              "description": "körber spezifere Eigenschaft des Dialoges aus dem die Bewegung generiert wird",
              "type": "string",
              "title": "",
              "example": [""]
            },
            "source": {
              "type": "object",
              "properties": {
                "quantId": {
                  "description": "ID der feinsten bestandstrennenden Einheit",
                  "type": "string",
                  "title": "",
                  "examples":["1189582"]
                },  
                "storageLocationId": {
                  "description": "Eindeutige Identifikation eines Lagerplatzes. Weitere Details des Lagerplatzes sind aus masterdata.storageLocation ableitbar.",
                  "type": "string",
                  "title": "",
                  "examples":["123"]
                },
                "storageHandlingUnitId": {
                  "description": "Eindeutige Identifikation eines Ladungsträgers. Weitere Details des Ladungsträgers sind aus masterdata.storageHandlingUnit ableitbar.",
                  "type": "string",
                  "title": "",
                  "examples":["123"]
                }
              }
            },
            "target": {
              "type": "object",
              "properties": {
                "quantId": {
                  "description": "ID der feinsten bestandstrennenden Einheit",
                  "type": "string",
                  "title": "",
                  "examples":["1189582"]
                },  
                "storageLocationId": {
                  "description": "Eindeutige Identifikation eines Lagerplatzes. Weitere Details des Lagerplatzes sind aus masterdata.storageLocation ableitbar.",
                  "type": "string",
                  "title": "",
                  "examples":["123"]                                             
                },
                "storageHandlingUnitId": {
                  "description": "Eindeutige Identifikation eines Ladungsträgers. Weitere Details des Ladungsträgers sind aus masterdata.storageHandlingUnit ableitbar.",
                  "type": "string",
                  "title": "",
                  "examples":["123"]
                }
              }
           },
           "product": {
              "type": "object",
              "properties": {
                "logisticProductId": {
                    "description": "master communication key",
                    "type": "string",
                    "title": "¨Logistic Product Id",
                    "examples":["123"]
                },
                "itemNumber": {
                    "description": "the item number",
                    "type": "string",
                    "title": "Item Number",
                    "examples":["4"]
                },
                "itemSize": {
                    "description": "the item size (binary size, not alphanumeric)",
                    "type": "string",
                    "title": "Item Size",
                    "examples":["960"]
                },
                "company": {
                    "title": "Company",
                    "description": "actual owner company",
                    "type": "string",
                    "maxLength": 50,
                    "examples": [
                        "OTTO"
                    ]
                },
				"logisticsPackingunitId": {
                  "description": "master communication key from LSAS for products with multiple parts",
                  "type": "string",
                  "title": "¨Logistic PackingUnit Id",
                  "examples":["123"]
                },
                "packingUnitIndex": {
                  "description": "Part Number for products with multiple parts - deprecated",
                  "type": "string",
                  "title": "¨Logistic PackingUnit Number",
                  "examples":["123"]
                }
              }               
          },                                          
          "supplier": {
            "type": "object",
            "properties": {
              "id": {
                "description": "Lieferanten ID",
                "type": "string",
                "title": "¨",
                "examples":["123"]
              },
              "number": {
                "description": "LKZ - Solange der Lieferantenstamm aus LSAS noch nicht an FINE angebunden ist, wird dieses Feld benötigt",
                "type": "string",
                "title": "",
                "examples":["258369"]
              },
			  "company": {
				  "description": "Solange der Lieferantenstamm aus LSAS noch nicht an FINE angebunden ist, wird dieses Feld benötigt",
                  "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/company.v1.schema.json"
              }
              }                                   
          },
          "goodsIn": {
            "type": "object",
            "properties": {
              "id": {
                "description": "eindeutige Kennzeichnung der Wareneingang-Kopfdaten. Weitere Details des Wareneingangs sind über die Verknüpfung dieser ID mit inbound.goodsInId möglich.",
                "type": "string",
                "title": "",
                "examples":["123"]
              },
              "positionId": {
                "description": "eindeutige Kennzeichnung der Wareneingang-Positionsdaten. Weitere Details des Wareneingangs sind über die Verknüpfung dieser ID mit inbound.goodsInPositionId möglich.",
                "type": "string",
                "title": "",
                "examples":["4"]
              }              
            }                                          
          }
        },
         "required": [
            "location",
            "movementId",
            "movementCode",
            "processMovementTime"
          ]              
        }
    },
    "required": [
      "eventId",
      "traceId",
      "eventTime",
      "version",
      "eventType",
      "data"
    ]
  }

4.2. Direction FINE to ERP

4.2.1. Header

This interface uses the Service Header

Table 4. Attribute
Fieldname Expresion

4.2.2. Datamodel

4.2.3. Enumeration

Field: Type

Table 5. type
Meta Value Description Short Value

4.2.4. Example

Message FINE to ERP

4.2.5. Schema

Table 6. Version FINE to ERP

Version

Number

File

Published on

Changes

previous version

current version

2.1

Download

01.06.23

- Aufnahme von "erpPackingUnitId" und "packingUnitIndex" unter "product" für mehrteilige Artikel als optionale Felder - Aufnahme von "BUID", "bestBeforeDate", "batch", "imei", "serialNo" unter "Data" als optionale Felder - Verlinkung auf system v4 - Aufnahme von Client in metaData

coming version

2.2

Download

29.11.23

- Änderung des Attriutes BUID auf buaid

Interface FINE to ERP
{
  "$schema": "http://json-schema.org/draft-07/schema",
  "$comment": "Schema for movements in a warehouse Version 2.1",
  "$id": "https://doc.fine.gcp.osp-dev.de/registry/Stock/StockMovementErp.v2.1.schema.json",
  "type": "object",
  "properties": {
    "eventId": {
      "type": "string",
      "format": "uuid",
      "title": "The uniq eventId",
      "description": "Global uniq Id",
      "examples": [
        "00ce536f-923a-42f4-8128-be118faf1d87"
      ]
    },
    "traceId": {
      "type": "string",
      "format": "uuid",
      "title": "The uniq traceId",
      "description": "Global uniq Id for tracing the flow of events",
      "examples": [
          "00ce536f-923a-42f4-8138-33418faf1342"
      ]
    },
    "spanId": {
      "type": "string",
      "title": "The eventId of previous record or batchId",
      "description": "Optionally, if this record (event) is one of a sequence of records and the order is important, then here is the id of the previous record (event), recommended as uuid, Special usecases can be specify for some interfaces",
      "examples": [
        "00ce536f-923a-42f4-5463-32a41877b3c2"
      ]
    },    
    "eventTime": {
      "type": "string",
      "title": "Time of occurrence of the event",
      "description": "Time at which this record(event) was technically generated in RFC3339 format. Strongly recommended: in UTC time.",
      "examples": [
          "2022-03-22T09:52:00.000+01:00"
      ]
    },
    "version": {
      "title": "The number of version schema",
      "description": "Number of version of this data structure. Only required if no $schema is specified!",
      "oneOf": [
        {
          "type": "string",
          "pattern": "\\d+\\.\\d{1,2}",
          "maxLength": 6,
          "examples": ["1.01", "01.02"]
        },
        {
          "type": "integer",
          "minimum": 1,
          "maximum": 99999,              
          "examples": [1, 2]
        }
      ]
    },
    "context": {
      "type": "string",
      "title": "The context / business case",
      "description": "The context specified here means the business domain.",
      "examples": [
          "STOCK_MOVEMENT"
      ]
    },
    "eventType": {
      "type": "string",
      "title": "The concrete type = kind of record(event)",
      "description": "This attribute is to be used if the data set can have more than one characteristic. E.g. goods delivery start or goods delivery end. The possible values are to be co-ordinated here as Enum between the partners.",
      "examples": ["INSERT", "UPDATE", "DELETE"]
    },
    "metaData": {
      "type": "object",
      "title": "additional meta information",
      "description": "optional, can be used with different characteristics for technical data per interface",
      "properties": {
        "senderSystem": {
          "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/system.v4.schema.json"
        },
        "client": {
          "title": "client",
          "description": "Client/mandant (messages of different clients have different processing rules and destination interfaces) - use FBO for Fulfillment by Otto (CORE, DeepSea...)",
          "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/company.v4.schema.json"
        }
      },
      "required": [
        "senderSystem"
      ]     
    },
    "data": {
      "type": "object",
      "properties": { 
        "location": {
          "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/warehouselocations.v1.schema.json"
        },
        "movementId": {
          "description": "ID einer Bewegung. Möglichst technischer Key.",
          "type": "string",
          "title": "Movemtent ID",
          "examples":["1234"]
        },     
        "movementCode": {
          "description": "Bewegungsart (LVS spezifisch)",
          "typeCode": "string",
          "title": "Movement Code",
          "example": ["1071"]
        },
        "BUID": {
          "description": "BI UUID, eindeutige Kennzeichnung eines Einzelteils (Quanten) im logistischen Prozess.",
          "type": "string",
          "title": "BUID",
          "examples":["2344545-334542-465g45ddf"]
        },
        "bestBeforeDate": {
          "description": "Mindesthaltbarkeitsdatum",
          "type": "string",
          "title": "bestBeforeDate",
          "examples":["2022-12-31"]
        },
        "batch": {
          "description": "Chargennummer des Lieferanten",
          "type": "string",
          "title": "batch",
          "examples":["124345d"]
        },
        "imei": {
          "description": "IMEI eines techn. Geräts",
          "type": "string",
          "title": "imei",
          "examples":["2345-45452-43365-5643"]
        },
        "serialNo": {
          "description": "Seriennummer des Herstellers",
          "type": "string",
          "title": "serialNo",
          "examples":["D345-gkjpo-3112"]
        },
        "quantity": {
          "type": "object",
          "properties": {
            "value": {
              "type": "integer",
              "description": "the quantity for this item size/order"
            },
            "unit": {
              "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/unit.v1.schema.json"
            }
          }
        },  
        "processMovementTime": {
          "description": "Zeitpunkt der Bewegung",
          "type": "string",
          "format": "date-time",
          "title": "processtime movement",
          "examples":["2022-03-22T09:52:00.000+01:00"]
        },
        "storageOrder": {
          "type": "object",
          "properties": {
            "id": {
              "description": "Referenz auf den Lagerauftrag (gibt es im KR1)",
              "type": "string",
              "title": "",
              "examples":["123"]
            },
            "key": {
              "description": "Belegnummer der Bewegung",
              "type": "string",
              "title": "",
              "examples":["123"]
            }  
          }
        },
        "situation": {
          "description": "körber spezifere Eigenschaft des Dialoges aus dem die Bewegung generiert wird",
          "typeCode": "string",
          "title": "",
          "example": [""]
        },
        "source": {
          "type": "object",
          "properties": {
            "quantId": {
              "description": "ID der feinsten bestandstrennenden Einheit",
              "type": "string",
              "title": "",
              "examples":["1189582"]
            },  
            "storageLocationId": {
              "description": "Eindeutige Identifikation eines Lagerplatzes. Weitere Details des Lagerplatzes sind aus masterdata.storageLocation ableitbar.",
              "type": "string",
              "title": "",
              "examples":["123"]
            },
            "storageHandlingUnitId": {
              "description": "Eindeutige Identifikation eines Ladungsträgers. Weitere Details des Ladungsträgers sind aus masterdata.storageHandlingUnit ableitbar.",
              "type": "string",
              "title": "",
              "examples":["123"]
            }
          }
        },
        "target": {
          "type": "object",
          "properties": {
            "quantId": {
              "description": "ID der feinsten bestandstrennenden Einheit",
              "type": "string",
              "title": "",
              "examples":["1189582"]
            },  
            "storageLocationId": {
              "description": "Eindeutige Identifikation eines Lagerplatzes. Weitere Details des Lagerplatzes sind aus masterdata.storageLocation ableitbar.",
              "type": "string",
              "title": "",
              "examples":["123"]                                             
            },
            "storageHandlingUnitId": {
              "description": "Eindeutige Identifikation eines Ladungsträgers. Weitere Details des Ladungsträgers sind aus masterdata.storageHandlingUnit ableitbar.",
              "type": "string",
              "title": "",
              "examples":["123"]
            }
          }
        },
        "product": {
          "type": "object",
          "properties": {
            "erpProductId": {
              "title": "ERP product ID",
              "description": "ERP product ID - the id of the product in erp received from LSAS",
              "type": "string",
              "examples": ["9f721a53-2679-573f-bbfe-f6f21c4f6725"]
            },
            "erpPackingUnitId": {
              "title": "ERP packign unit ID",
              "description": "GL/bulky items: ID for the part/packing unit based on item - size - part from ERP (LSAS gets it from MOLA)",
              "type": "string",
              "examples": ["5fa54ec6-c538-36c2-85bf-adc5633dbab5"]
            },
            "itemNumber": {
                "description": "the item number",
                "type": "string",
                "title": "Item Number",
                "examples":["4"]
            },
            "itemSize": {
                "description": "the item size (binary size, not alphanumeric)",
                "type": "string",
                "title": "Item Size",
                "examples":["960"]
            },
            "company": {
              "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/company.v1.schema.json"
            },
            "packingUnitIndex": {
              "description": "Part Number for products with multiple parts - deprecated",
              "type": "string",
              "title": "¨Logistic PackingUnit Number",
              "examples":["123"]
            }
          }               
        },                                          
        "supplier": {
          "type": "object",
          "properties": {
            "id": {
              "description": "Lieferanten ID",
              "type": "string",
              "title": "¨",
              "examples":["123"]
            },
            "number": {
              "description": "LKZ - Solange der Lieferantenstamm aus LSAS noch nicht an FINE angebunden ist, wird dieses Feld benötigt",
              "type": "string",
              "title": "",
              "examples":["258369"]
            },
            "company": {
              "description": "Solange der Lieferantenstamm aus LSAS noch nicht an FINE angebunden ist, wird dieses Feld benötigt",
                "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/company.v1.schema.json"
            }
          }                                   
        },
        "goodsIn": {
          "type": "object",
          "properties": {
            "id": {
              "description": "eindeutige Kennzeichnung der Wareneingang-Kopfdaten. Weitere Details des Wareneingangs sind über die Verknüpfung dieser ID mit inbound.goodsInId möglich.",
              "type": "string",
              "title": "",
              "examples":["123"]
            },
            "positionId": {
              "description": "eindeutige Kennzeichnung der Wareneingang-Positionsdaten. Weitere Details des Wareneingangs sind über die Verknüpfung dieser ID mit inbound.goodsInPositionId möglich.",
              "type": "string",
              "title": "",
              "examples":["4"]
            }              
          }                                          
        }
      },
      "required": [
        "location",
        "movementId",
        "movementCode",
        "processMovementTime"
      ]              
    }
  },
  "required": [
    "eventId",
    "traceId",
    "eventTime",
    "version",
    "eventType",
    "data"
  ]
}

8 - S07 Storage Order

Status

Version 1.0 published 21.09.2022

Approval
Comment
Assumption

_

1. Stakeholder

Role Application Responsible

Communication

Integration Layer

Leading App

FLASH

InterfaceOwner

Producer

KR1

Consumer

FLASH

Consumer

F2X

2. Business Context

Mit dem Service werden die Lageraufträge von den LVS Systemen an die

Events:

  • Einfügen eines Lagerauftrags

  • Änderung eines Lagerauftrags

  • Löschen eines Lagerauftrags

3. Informationflow

Partner Direction FINE-Service Topic/API Description Status

WMS:KR1

send

Stock

stock.stock.storageorder

StorageOrderWms.v1.1

ready

FLASH

receive

Stock

stock.stock.storageorder

StorageOrderWms.v1.1

ready

F2X:F2X

receive

Stock

stock.storageorder.f2x.v1

StorageOrderErp.v1.1

planned

Diagram

4. Interface

4.1. Direction WMS to FINE

4.1.1. Header

This interface uses the Service Header

Special expresion for this interface:

Table 1. Attribute
Fieldname Expresion

type

context

RETURNSPROCESSING, STORAGELOCATION

4.1.2. Datamodel

Property Type Description

(Root)

object

    eventId*

string (uuid)

The uniq eventId
Global uniq Id

    traceId*

string (uuid)

The uniq traceId
Global uniq Id for tracing the flow of events

    spanId

string

The eventId of previous record or batchId
Optionally, if this record (event) is one of a sequence of records and the order is important, then here is the id of the previous record (event), recommended as uuid, Special usecases can be specify for some interfaces

    eventTime*

string

Time of occurrence of the event
Time at which this record(event) was technically generated in RFC3339 format. Strongly recommended: in UTC time.

    version*

The number of version schema
Number of version of this data structure. Only required if no $schema is specified!

    context

string

The context / business case
The context specified here means the business domain.

    eventType*

string (enum)

The type of operation
Typ der Nachricht

Any of: [ "INSERT", "UPDATE", "DELETE" ]

    metaData

object

additional meta information
optional, can be used with different characteristics for technical data per interface

        senderSystem*

string (enum)

system

Any of: [ "KR1_SHF", "KR1_HHSTR", "WMSX_SON", "WMSX_AKU", "KMOTION_ILO", "KMOTION_GHM", "COBRA", "LSAS", "IDEEFIX", "OBS", "RESY", "LDH", "RETAILSCHICHT", "BUBE", "FINE_INBOUND", "F2X", "WMSX_WEISMAIN", "LIGIS", "KR1_MANDANT" ]

        ownerCompany

string

The owner company belonging to the logistic product of one or more underlying stock movements of this storage order.
The owner company that is affected by the underlying stock movements of this storage order. It's null as long as no such movements with a product and thus a company exist for this storage order. This info is used to route storage order events only to those systems which are responsible/eligible for a certain owner company. Consumer systems may receive multiple copies of the same storage order event (varying in owner company) in case they are responsible/eligible for multiple companies.

Maximum Length: 50

    data*

object

        location

string (enum)

warehouse locations

Any of: [ "ANSBACH", "LOEHNE", "LANGENSELBOLD", "MOSINA", "OHRDRUF", "HALDENSLEBEN", "HALDENSLEBEN_RT", "SUEDHAFEN", "SONNEFELD", "ALTENKUNSTADT", "WEIDEN", "KRACANY", "ILOWA", "ILOWA_RT", "ILOWA_RSS", "GERNSHEIM", "ERFURT", "HAMBURG_RT", "OTELFINGEN_RT", "KRIMICE_RT", "STAHLAVY_RT", "OHRDRUF_RT", "LOEHNE_RT", "LANGENSELBOLD_RT", "LODZ_1_RT", "LODZ_2_RT", "BERGHEIM_RT", "ALTENKUNSTADT_RT", "LISTERHILLS_RT", "SUEDHAFEN_RT", "PILSEN_RT", "HAMBURG_SC", "LOEHNE_SC", "SCHWABHAUSEN_SC", "HALDENSLEBEN_RSS", "ALTENKUNSTADT_RSS", "LOEHNE_RSS", "OHRDRUF_RSS", "LANGENSELBOLD_RSS", "LOEHNE_CP" ]

        storageOrderId*

string

(techn.) ID eines Lagerauftrags

        parentStorageOrderId

string

(techn.) ID des übergeordneten Lagerauftrags

        targetLocation

string (enum)

warehouse locations
Ziel-Lager bei externen Umfuhren

Any of: [ "ANSBACH", "LOEHNE", "LANGENSELBOLD", "MOSINA", "OHRDRUF", "HALDENSLEBEN", "HALDENSLEBEN_RT", "SUEDHAFEN", "SONNEFELD", "ALTENKUNSTADT", "WEIDEN", "KRACANY", "ILOWA", "ILOWA_RT", "ILOWA_RSS", "GERNSHEIM", "ERFURT", "HAMBURG_RT", "OTELFINGEN_RT", "KRIMICE_RT", "STAHLAVY_RT", "OHRDRUF_RT", "LOEHNE_RT", "LANGENSELBOLD_RT", "LODZ_1_RT", "LODZ_2_RT", "BERGHEIM_RT", "ALTENKUNSTADT_RT", "LISTERHILLS_RT", "SUEDHAFEN_RT", "PILSEN_RT", "HAMBURG_SC", "LOEHNE_SC", "SCHWABHAUSEN_SC", "HALDENSLEBEN_RSS", "ALTENKUNSTADT_RSS", "LOEHNE_RSS", "OHRDRUF_RSS", "LANGENSELBOLD_RSS", "LOEHNE_CP" ]

        targetStorageHierarchy

string

Ziel-Lagereinheit – analog S08 - bei internen Umfuhren (targetLocation und targetStorageHierarchy treten nur exklusiv auf)

Maximum Length: 30

        intraWarehouseDestination

string

MfrZiel im KR1 - kann sowohl zusaetzlich zu targetLocation bzw. targetStorageHierarchy oder einzeln auftreten

Maximum Length: 10

        internalNumber

string

Im LVS verfügbare Nummer des Lagerauftrags

        externalNumber

string

Externe Nummer des Lagerauftrags.

        description

string

Description

        storageOrderTypeCode

string

Code des LVS für einen Lagerauftragstyp.

        sealNo

string

Plombennummer, sofern diese im Lagerauftrag vorhanden ist (z.B. bei der Verladung in einen Wechselaufbau) oder ggf. bei Öffnen einer Retouren-WAB.

        orderDate

string (date)

Auftragsdatum eines Lagerauftrags. Z.B. bei Replenishment-Umfuhren der Tag, für den die Umfuhren beauftragt werden.

4.1.3. Enumeration

Field: Type

Table 2. type
Meta Value Description Short Value

4.1.4. Example

Message WMS to FINE

4.1.5. Schema

Table 3. Version WMS to FINE
Version Number File Published on Changes

previous version

1.0

Download

21.09.22

- ServiceHeader Attriute spanId als optionales Feld einfügen

- ServiceHeader Attriute type umbenannt in eventType

- Service Header neues Objekt "metaData" einfügen und die Attribute "sender" in das neue Objekt verschieben

- Service Header instance entfernt da diese mit dem sender und dessen Auspräung obsolet ist

previous version

0.1

Download

01.07.22

previous version

1.1

Download

05.06.2023

current version

1.2

Download

10.04.2024

Aufnahme vom ownerCompany in MetaData

coming version

1.3

Download

Interface WMS to FINE
{
  "$schema": "http://json-schema.org/draft-07/schema",
  "$comment": "Schema for StorageOrder.",
  "$id": "https://doc.fine.gcp.osp-dev.de/registry/Stock/StorageOrderWms.v1.3.schema.json",
  "type": "object",
  "properties": {
    "eventId": {
      "type": "string",
      "format": "uuid",
      "title": "The uniq eventId",
      "description": "Global uniq Id",
      "examples": [
        "00ce536f-923a-42f4-8128-be118faf1d87"
      ]
    },
    "traceId": {
      "type": "string",
      "format": "uuid",
      "title": "The uniq traceId",
      "description": "Global uniq Id for tracing the flow of events",
      "examples": [
        "00ce536f-923a-42f4-8138-33418faf1342"
      ]
    },
    "spanId": {
      "type": "string",
      "title": "The eventId of previous record or batchId",
      "description": "Optionally, if this record (event) is one of a sequence of records and the order is important, then here is the id of the previous record (event), recommended as uuid, Special usecases can be specify for some interfaces",
      "examples": [
        "00ce536f-923a-42f4-5463-32a41877b3c2"
      ]
    },
    "eventTime": {
      "type": "string",
      "title": "Time of occurrence of the event",
      "description": "Time at which this record(event) was technically generated in RFC3339 format. Strongly recommended: in UTC time.",
      "examples": [
        "2016-04-16T16:06:05.000+02:00"
      ]
    },
    "version": {
      "title": "The number of version schema",
      "description": "Number of version of this data structure. Only required if no $schema is specified!",
      "oneOf": [
        {
          "type": "string",
          "pattern": "\\d+\\.\\d{1,2}",
          "examples": [
            "1.01",
            "01.02"
          ]
        },
        {
          "type": "integer",
          "examples": [
            1,
            2
          ]
        }
      ]
    },
    "context": {
      "type": "string",
      "title": "The context / business case",
      "description": "The context specified here means the business domain.",
      "examples": [
        "returnsprocessing",
        "storageLocation"
      ]
    },
    "eventType": {
      "type": "string",
      "title": "The type of operation",
      "description": "Typ der Nachricht",
      "examples": [
        "INSERT",
        "UPDATE",
        "DELETE"
      ],
      "enum": [
        "INSERT",
        "UPDATE",
        "DELETE"
      ]
    },
    "metaData": {
      "type": "object",
      "title": "additional meta information",
      "description": "optional, can be used with different characteristics for technical data per interface",
      "properties": {
        "senderSystem": {
          "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/system.v4.schema.json"
        },
        "ownerCompany": {
          "type": "string",
          "maxLength": 50,
          "description": "The owner company that is affected by the underlying stock movements of this storage order. It's null as long as no such movements with a product and thus a company exist for this storage order. This info is used to route storage order events only to those systems which are responsible/eligible for a certain owner company. Consumer systems may receive multiple copies of the same storage order event (varying in owner company) in case they are responsible/eligible for multiple companies.",
          "title": "The owner company belonging to the logistic product of one or more underlying stock movements of this storage order."
        }
      },
      "required": [
        "senderSystem"
      ]
    },
    "data": {
      "type": "object",
      "properties": {
        "location": {
          "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/warehouselocations.v1.schema.json"
        },
        "storageOrderId": {
          "description": "(techn.) ID eines Lagerauftrags",
          "type": "string",
          "examples": [
            "2153738"
          ]
        },
        "parentStorageOrderId": {
          "description": "(techn.) ID des übergeordneten Lagerauftrags",
          "type": "string",
          "examples": [
            "2153738"
          ]
        },
        "targetLocation": {
          "description": "Ziel-Lager bei externen Umfuhren",
          "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/warehouselocations.v1.schema.json"
        },
        "targetStorageHierarchy": {
          "description": "Ziel-Lagereinheit – analog S08 - bei internen Umfuhren (targetLocation und targetStorageHierarchy treten nur exklusiv auf)",
          "type": "string",
          "maxLength": 30,
          "examples": [
            "RL Hovelmann"
          ]
        },
        "intraWarehouseDestination": {
          "description": "MfrZiel im KR1 - kann sowohl zusaetzlich zu targetLocation bzw. targetStorageHierarchy oder einzeln auftreten ",
          "type": "string",
          "maxLength": 10,
          "examples": [
            "091AKU___"
          ]
        },
        "internalNumber": {
          "description": "Im LVS verfügbare Nummer des Lagerauftrags",
          "type": "string",
          "examples": [
            "1685204"
          ]
        },
        "externalNumber": {
          "description": "Externe Nummer des Lagerauftrags.",
          "type": "string",
          "examples": [
            "1000"
          ]
        },
        "description": {
          "description": "Description",
          "type": "string",
          "examples": [
            "AUS-Import Datei Ausimport_HRL_SOFE_28.06.22.CSV"
          ]
        },
        "storageOrderTypeCode": {
          "description": "Code des LVS für einen Lagerauftragstyp.",
          "type": "string",
          "examples": [
            "132"
          ]
        },
        "sealNo": {
          "description": "Plombennummer, sofern diese im Lagerauftrag vorhanden ist (z.B. bei der Verladung in einen Wechselaufbau) oder ggf. bei Öffnen einer Retouren-WAB.",
          "type": "string",
          "examples": [
            "1234"
          ]
        },
        "orderDate": {
          "description": "Auftragsdatum eines Lagerauftrags. Z.B. bei Replenishment-Umfuhren der Tag, für den die Umfuhren beauftragt werden.",
          "type": "string",
          "format": "date",
          "examples": [
            "2022-06-28"
          ]
        }
      },
      "required": [
        "storageOrderId"
      ]
    }
  },
  "required": [
    "eventId",
    "traceId",
    "eventTime",
    "version",
    "eventType",
    "data"
  ]
}

4.2. Direction FINE to ERP

4.2.1. Header

This interface uses the Service Header

Table 4. Attribute
Fieldname Expresion

4.2.2. Datamodel

4.2.3. Enumeration

Field: Type

Table 5. type
Meta Value Description Short Value

4.2.4. Example

Message FINE to ERP

4.2.5. Schema

Table 6. Version FINE to ERP

Version

Number

File

Published on

Changes

previous version

1.1

Download

05.06.2023

current version

1.2

Download

10.04.2024

Aufnahme von ownerCompany in MetaData

coming version

Interface FINE to ERP
{
  "$schema": "http://json-schema.org/draft-07/schema",
  "$comment": "Schema for StorageOrder.",
  "$id": "https://doc.fine.gcp.osp-dev.de/registry/Stock/StorageOrderErp.v1.2.schema.json",
  "type": "object",
  "properties": {
    "eventId": {
      "type": "string",
      "format": "uuid",
      "title": "The uniq eventId",
      "description": "Global uniq Id",
      "examples": [
        "00ce536f-923a-42f4-8128-be118faf1d87"
      ]
    },
    "traceId": {
      "type": "string",
      "format": "uuid",
      "title": "The uniq traceId",
      "description": "Global uniq Id for tracing the flow of events",
      "examples": [
        "00ce536f-923a-42f4-8138-33418faf1342"
      ]
    },
    "spanId": {
      "type": "string",
      "title": "The eventId of previous record or batchId",
      "description": "Optionally, if this record (event) is one of a sequence of records and the order is important, then here is the id of the previous record (event), recommended as uuid, Special usecases can be specify for some interfaces",
      "examples": [
          "00ce536f-923a-42f4-5463-32a41877b3c2"
      ]
    }, 
    "eventTime": {
      "type": "string",
      "title": "Time of occurrence of the event",
      "description": "Time at which this record(event) was technically generated in RFC3339 format. Strongly recommended: in UTC time.",
      "examples": [
        "2016-04-16T16:06:05.000+02:00"
      ]
    },
    "version": {
      "title": "The number of version schema",
      "description": "Number of version of this data structure. Only required if no $schema is specified!",
      "oneOf": [
        {
          "type": "string",
          "pattern": "\\d+\\.\\d{1,2}",
          "examples": [
            "1.01",
            "01.02"
          ]
        },
        {
          "type": "integer",
          "examples": [
            1,
            2
          ]
        }
      ]
    },
    "context": {
      "type": "string",
      "title": "The context / business case",
      "description": "The context specified here means the business domain.",
      "examples": [
        "returnsprocessing",
        "storageLocation"
      ]
    },
    "eventType": {
      "type": "string",
      "title": "The type of operation",
      "description": "Typ der Nachricht",
      "examples": [
        "INSERT",
        "UPDATE",
        "DELETE"
      ],
      "enum": [
        "INSERT",
        "UPDATE",
        "DELETE"
      ]
    },
    "metaData": {
      "type": "object",
      "title": "additional meta information",
      "description": "optional, can be used with different characteristics for technical data per interface",
      "properties": {
        "senderSystem": {
          "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/system.v4.schema.json"
        },
        "ownerCompany": {
          "type": "string",
          "maxLength": 50,
          "description": "The owner company that is affected by the underlying stock movements of this storage order. It's null as long as no such movements with a product and thus a company exist for this storage order. This info is used to route storage order events only to those systems which are responsible/eligible for a certain owner company. Consumer systems may receive multiple copies of the same storage order event (varying in owner company) in case they are responsible/eligible for multiple companies.",
          "title": "The owner company belonging to the logistic product of one or more underlying stock movements of this storage order."
        }
      },
      "required": [
        "senderSystem"
      ]     
    },
    "data": {
      "type": "object",
      "properties": {
		 "location": {
            "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/warehouselocations.v1.schema.json"
        },
        "storageOrderId": {
          "description": "(techn.) ID eines Lagerauftrags",
          "type": "string",
          "examples": [
            "2153738"
          ]
        },
        "internalNumber": {
          "description": "Im LVS verfügbare Nummer des Lagerauftrags",
          "type": "string",
          "examples": [
            "1685204"
          ]
        },
        "externalNumber": {
          "description": "Externe Nummer des Lagerauftrags.",
          "type": "string",
          "examples": [
            "1000"
          ]
        },
        "description": {
          "description": "Description",
          "type": "string",
          "examples": [
            "AUS-Import Datei Ausimport_HRL_SOFE_28.06.22.CSV"
          ]
        },
        "storageOrderTypeCode": {
          "description": "Code des LVS für einen Lagerauftragstyp.",
          "type": "string",
          "examples": [
            "132"
          ]
        },
        "sealNo": {
          "description": "Plombennummer, sofern diese im Lagerauftrag vorhanden ist (z.B. bei der Verladung in einen Wechselaufbau) oder ggf. bei Öffnen einer Retouren-WAB.",
          "type": "string",
          "examples": [
            "1234"
          ]
        },
        "orderDate": {
          "description": "Auftragsdatum eines Lagerauftrags. Z.B. bei Replenishment-Umfuhren der Tag, für den die Umfuhren beauftragt werden.",
          "type": "string",
          "format": "date",
          "examples": [
            "2022-06-28"
          ]
        }
      },
      "required": [
        "storageOrderId"
      ]
    }
  },
  "required": [
    "eventId",
    "traceId",
    "eventTime",
    "version",
    "eventType",
    "data"
  ]
}

9 - S08 Storage Location

Status

Version 1.0 published 17.06.2022

Approval
  1. NEON: abgestimmt mit Körber zur Umsetzung in NEON_Fein_Pflichtenheft_WEN1_ SST_v6.0

Comment

Für neue Anforderungen aus Otto'' wurde eine Version 2.0 erstellt und unter "coming version" enisehbar. Diese ist unabhängig nutzbar und beeinflusst nicht den Integrationstest von NEON.

Assumption

_

1. Stakeholder

Role Application Responsible

Communication

Integration Layer

Leading App

FLASH

InterfaceOwner

Producer

kMotion

Producer

KR1

Producer

COBRA

Producer

WMSx/SON

Producer

F2X

Consumer

FLASH

Consumer

SOLAR

2. Business Context

Mit dem Service werden die Stammdaten zu den Lagerplätzen von den LVS Systemen an die

Events:

  • Einfügen eines Lagerplatzes

  • Änderung eines Lagerplatzes

  • Löschen eines Lagerplatzes

3. Informationflow

Partner Direction FINE-Service Topic/API Description Status

WMS:WMSX

send

Stock

stock.storagelocation

StorageLocationWms.v1.0

ready

WMS:KR1

send

Stock

stock.storagelocation.v2

StorageLocationWms.v2.1

ready

WMS:F2X

send

Stock

stock.storagelocation.f2xwms.v2

StorageLocationWms.v2.1

planned

WMS:KMOTION

send

Stock

stock.storagelocation.kmotion.v2

StorageLocationWms.v2.1

planned

FLASH

receive

Stock

stock.storagelocation

StorageLocationWms.v1.0

ready

FLASH

receive

Stock

stock.storagelocation.v2

StorageLocationWms.v2.1

ready

FLASH

receive

Stock

stock.storagelocation.f2xwms.v2

StorageLocationWms.v2.1

planned

FLASH

receive

Stock

stock.storagelocation.kmotion.v2

StorageLocationWms.v2.1

planned

Otto

receive

Stock

stock.storagelocation.v1.otto

ready

Otto

receive

Stock

stock.storagelocation.v2.otto

StorageLocationFineBrain.v2.0

ready

Diagram

4. Interface

4.1. Direction WMS to FINE

4.1.1. Header

This interface uses the Service Header

Special expresion for this interface:

Table 1. Attribute
Fieldname Expression

type

context

STORAGE_LOCATION

4.1.2. Datamodel

Property Type Description

(Root)

object

    eventId*

string (uuid)

The uniq eventId
Global uniq Id

    traceId*

string (uuid)

The uniq traceId
Global uniq Id for tracing the flow of events

    spanId

string (uuid)

The uniq spanId
ID of the privious event (message). The ID is not given if there is no previous event. For transaction initiated by user the spanId of the executed event might be the userId.

    eventTime*

string

Time of occurrence of the event
Time at which this record(event) was technically generated in RFC3339 format. Strongly recommended: in UTC time.

    version*

The number of version schema
Number of version of this data structure. Only required if no $schema is specified!

    context

string

The context / business case
The context specified here means the business domain.

    eventType*

string (enum)

The type of operation
Typ der Nachricht

Any of: [ "INSERT", "UPDATE", "DELETE" ]

    metaData

object

        senderSystem

string (enum)

system

Any of: [ "KR1_SHF", "KR1_HHSTR", "WMSX_SON", "WMSX_AKU", "KMOTION_ILO", "KMOTION_GHM", "COBRA", "LSAS", "IDEEFIX", "OBS", "RESY", "LDH", "RETAILSCHICHT", "BUBE", "FINE_INBOUND", "F2X", "WMSX_WEISMAIN", "LIGIS", "KR1_MANDANT" ]

    data*

object

        location*

string (enum)

warehouse locations

Any of: [ "ANSBACH", "LOEHNE", "LANGENSELBOLD", "MOSINA", "OHRDRUF", "HALDENSLEBEN", "HALDENSLEBEN_RT", "SUEDHAFEN", "SONNEFELD", "ALTENKUNSTADT", "WEIDEN", "KRACANY", "ILOWA", "ILOWA_RT", "ILOWA_RSS", "GERNSHEIM", "ERFURT", "HAMBURG_RT", "OTELFINGEN_RT", "KRIMICE_RT", "STAHLAVY_RT", "OHRDRUF_RT", "LOEHNE_RT", "LANGENSELBOLD_RT", "LODZ_1_RT", "LODZ_2_RT", "BERGHEIM_RT", "ALTENKUNSTADT_RT", "LISTERHILLS_RT", "SUEDHAFEN_RT", "PILSEN_RT", "HAMBURG_SC", "LOEHNE_SC", "SCHWABHAUSEN_SC", "HALDENSLEBEN_RSS", "ALTENKUNSTADT_RSS", "LOEHNE_RSS", "OHRDRUF_RSS", "LANGENSELBOLD_RSS", "LOEHNE_CP" ]

        storageLocation*

object

            storageLocationId*

string

techn. Eindeutiger Key des Lagerplatzes.

            storageLocationCode*

string

BusinessKey: Darstellung des Lagerplatzes als fachlicher Schlüssel, wie dieser im LVS Front-End angezeigt wird

            type*

string (enum)

Beschreibt die Eigenschaft eines Platzes, ob dieser ein echter Lagerplatz oder ein virtueller Lagerplatz ist

Any of: [ "VIRTUAL", "PHYSICAL" ]

            building

string

            floor

string

            aisle

string

            layer

string

            field

string

            place

string

            lastInventoryDate

string

            occupied

string

            lockCode

string

Lagerplatzsperre, wenn höhere Sperren vorhanden sind, sollen sich diese auf den Platz vererben

            lock

string (enum)

ist der Platz gespeert oder nicht

Any of: [ "LOCKED", "NOT_LOCKED" ]

        rack

object

            width

object

                value

number

Weitenwert

                unit

string (enum)

unit length

Any of: [ "METER" ]

            length

object

                value

number

Längenwert

                unit

string (enum)

unit length

Any of: [ "METER" ]

            height

object

                value

number

Höhenwert

                unit

string (enum)

unit length

Any of: [ "METER" ]

            volume

object

                value

number

Volumenwert

                unit

string (enum)

unit volume

Any of: [ "CUBIC_METER", "LITER" ]

            typeCode

string

            type

string (enum)

Fachtypen

Any of: [ "BIN", "BOX", "PALETTE", "CORLETTE", "CARTON", "PULK", "UNKNOWN" ]

            capacity

integer

            maxWeight

object

                value

integer

Max. Gewichtswert

                unit

string (enum)

unit weight

Any of: [ "GRAM", "KILOGRAM" ]

        area*

object

            storageType*

string (enum)

Unterscheidung nach Kommissionierung / Reservelager / Rücksendestelle

Any of: [ "PICKING", "RESERVE", "RETURN", "OTHER" ]

            storageHierarchy

object

                level1

string

                level2

string

                level3

string

            heavyArea

string (enum)

when true, then this is a heavy area

Any of: [ "HEAVY", "NOT_HEAVY" ]

            priority

string (enum)

Any of: [ "LOW", "HIGH" ]

            valuableArea

string (enum)

Kennzeichnung ob der Lagerbereich diebstahlgefährdete Artikel enthält (Käfigbereich)

Any of: [ "NORMAL", "VALUABLE" ]

            forkliftControlSystem

boolean

Bereich für Staplerleitsystem geeingnet

            driverlessTransportSystem

boolean

Bereich für fahrerloses Transportsystem geeignet

            usageCoefficient

integer

Minimum: 0
Maximum: 100

            harzadousMaterialZone

string

Gefahrstoffzone

Maximum Length: 50

            harzadousMaterialZoneGroup

string

Gefahrstoffzonegruppe

Maximum Length: 10

            fireZone

string

Brandabschnitt

Maximum Length: 10

            harzadousMaterialZoneOverflow

string

Gefahrstoffzone Überlauf

Maximum Length: 10

            nonCommercialGoodsArea

string (enum)

Kennzeichnung, ob der Lagerbereich für Betriebsmittel ist

Any of: [ "YES", "NO" ]

        aisleProperties

object

Aisle detail properties

            strategyCode

string

            targetCode

string

            lockCode

string

            lock

string (enum)

Any of: [ "LOCKED", "NOT_LOCKED" ]

        layerProperties

object

            lockCode

string

            lock

string (enum)

Any of: [ "LOCKED", "NOT_LOCKED" ]

        fieldProperties

object

            lockCode

string

            lock

string (enum)

Any of: [ "LOCKED", "NOT_LOCKED" ]

4.1.3. Enumeration

Field: storagelocation.type

Table 2. storagelocation.type

Meta Value

Description

Short Value

VIRTUAL

virtuelle Plätze

PHYSICAL

physische Plätze

Field: lock

Table 3. lock

Meta Value

Description

Short Value

LOCKED

gesperrt

NOT_LOCKED

nicht gesperrt

Field: rack.type

Table 4. rack.type

Meta Value

Description

Short Value

BIN

Fachtyp für blaue Retourenmischwannen

BOX

Fachtyp für Mischkisten

PALETTE

Fachtyp für Paletten

CORLETTE

Fachtyp für Corletten

CARTON

Fachtyp für Kartons (Normkartons)

PULK

Fachtyp für PULK-Flächen mit physischer Lagerplatzentsprechung

Field: area.heavyArea

Table 5. area.heavyArea

Meta Value

Description

Short Value

HEAVY

Schwerlastbereich

NOT_HEAVY

kein Schwerlastbereich

Field: area.priority

Table 6. area.priority

Meta Value

Description

Short Value

LOW

niedrige Priorität

HIGH

hohe Priorität

Field: area.priority

Table 7. area.priority

Meta Value

Description

Short Value

NORMAL

Normalbereich

VALUABLE

Wertebereich

4.1.4. Example

Message WMS to FINE
//include::StorageLocationWms.v0.2_sampleMessage.json[]

4.1.5. Schema

Table 8. Version WMS to FINE
Version Number File Published on Changes

previous version

1.0

Download

17.06.22

für lastInventoryDate und EventTime sind Beispiele hinzugefügt

previous version

0.2

Download

19.05.22

previous version

2.0

Download

20.09.22

- ServiceHeader Attriute spanId als optionales Feld einfügen

- ServiceHeader Attriute type umbenannt in eventType

- Service Header neues Objekt "metaData" einfügen und die Attribute "sender" in das neue Objekt verschieben

- bei Attribute "sender" das Schema des GlobalEnum "sender" verlinken

- unter Data\rack\width Attibute "unit" das Schema des GlobalEnum unit verlinken

- unter Data\rack\length Attibute "unit" das Schema des GlobalEnum unit verlinken

- unter Data\rack\height Attibute "unit" das Schema des GlobalEnum unit verlinken

- unter Data\rack\volume Attibute "unit" das Schema des GlobalEnum unit verlinken

- unter Data\rack\maxWeight Attibute "unit" das Schema des GlobalEnum unit verlinken

current version

2.1

Download

25.01.23

- neuer ENUM "UNKNOWN" für "rack" → "type" - Verlinkung auf system.v3 - Aufnahme von harzadousMaterialZone und harzadousMaterialZoneOverflow für Gefahrstoffzone

coming version

2.2

Download

29.11.23

- neue Datentypen für width, length, height, volume → Änderung von integer auf number (multipleofPrecision 0.001) - occupied→ Beispiele aufgenommen 0,50,100

coming version

2.3

Download

02.05.2024

- harzadousMaterialZoneGroup und fireZone als neue optionale Attribute hinzugefügt

coming version

2.4

Download

04.12.2024

- NonCommercialGoodsArea ENUM YES

Interface WMS to FINE
{
    "$schema": "http://json-schema.org/draft-07/schema",
    "$comment": "Schema for StorageLocation in a warehouse Version 2.4",
    "$id": "https://doc.fine.gcp.osp-dev.de/registry/Stock/StorageLocationWms.v2.4.schema.json",
    "type": "object",
    "properties": {
      "eventId": {
        "type": "string",
        "format": "uuid",
        "title": "The uniq eventId",
        "description": "Global uniq Id",
        "examples": [
            "00ce536f-923a-42f4-8128-be118faf1d87"
        ]
    },
    "traceId": {
        "type": "string",
        "format": "uuid",
        "title": "The uniq traceId",
        "description": "Global uniq Id for tracing the flow of events",
        "examples": [
            "00ce536f-923a-42f4-8138-33418faf1342"
        ]
    },
    "spanId": {
      "type": "string",
      "format": "uuid",
      "title": "The uniq spanId",
      "description": "ID of the privious event (message). The ID is not given if there is no previous event. For transaction initiated by user the spanId of the executed event might be the userId.",
      "examples": [
          "00ce536f-923a-42f4-8128-be118faf1d85"
      ]
  },
    "eventTime": {
        "type": "string",
        "title": "Time of occurrence of the event",
        "description": "Time at which this record(event) was technically generated in RFC3339 format. Strongly recommended: in UTC time.",
        "examples": [
            "2016-04-16T16:06:05.000+02:00"
        ]
    },
    "version": {
      "title": "The number of version schema",
      "description": "Number of version of this data structure. Only required if no $schema is specified!",
      "oneOf": [
          {
              "type": "string",
              "pattern": "\\d+\\.\\d{1,2}",
              "examples": ["1.01", "01.02"]
          },
          {
              "type": "integer",
              "examples": [1, 2]
          }
      ]
    },
    "context": {
        "type": "string",
        "title": "The context / business case",
        "description": "The context specified here means the business domain.",
        "examples": [
            "STORAGE_LOCATION"
        ]
    },
    "eventType": {
        "type": "string",
        "title": "The type of operation",
        "description": "Typ der Nachricht",
        "examples": ["INSERT", "UPDATE", "DELETE"],
        "enum": ["INSERT", "UPDATE", "DELETE"]
    },
    "metaData":{
        "type":"object",
        "properties": {
          "senderSystem": {
            "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/system.v4.schema.json"
        }
      }
    },
    "data": {
        "type": "object",
        "properties": {
          "location": {
            "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/warehouselocations.v1.schema.json"
          },
          "storageLocation": {
            "type": "object",
            "properties": {
              "storageLocationId": {
                "type": "string",
                "description": "techn. Eindeutiger Key des Lagerplatzes."
              },
              "storageLocationCode": {
                "type": "string",
                "description": "BusinessKey: Darstellung des Lagerplatzes als fachlicher Schlüssel, wie dieser im LVS Front-End angezeigt wird"
              },
              "type": {
                "type": "string",
                "description": "Beschreibt die Eigenschaft eines Platzes, ob dieser ein echter Lagerplatz oder ein virtueller Lagerplatz ist",
                "enum": ["VIRTUAL", "PHYSICAL"]
              },
              "building": {
                "type": "string"
              },
              "floor": {
                "type": "string"
              },
              "aisle": {
                "type": "string"
              },
              "layer": {
                "type": "string"
              },
              "field": {
                "type": "string"
              },
              "place": {
                "type": "string"
              },
              "lastInventoryDate": {
                "type": "string",
                "examples": [
                  "2016-04-16T16:06:05.000+02:00"
              ]
              },
              "occupied": {
                "type": "string",
                "examples": ["0","50","100"]
              },
              "lockCode": {
                "type": "string",
                "description": "Lagerplatzsperre, wenn höhere Sperren vorhanden sind, sollen sich diese auf den Platz vererben"
              },
              "lock": {
                "type": "string",
                "description": "ist der Platz gespeert oder nicht",
                "enum": ["LOCKED", "NOT_LOCKED"]
              }
            },
            "required": [
              "storageLocationId",
              "storageLocationCode",
              "type"
            ]
          },
          "rack": {
            "type": "object",
            "properties": {
              "width": {
                "type": "object",
                "properties": {
                  "value": {
                    "type": "number",
                    "multipleOfPrecision": 0.001,
                    "description": "Weitenwert"
                  },
                  "unit": {
                    "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/unitLength.v1.schema.json"
                    }
                }
              },
              "length": {
                "type": "object",
                "properties": {
                  "value": {
                    "type": "number",
                    "multipleOfPrecision": 0.001,
                    "description": "Längenwert"
                  },
                  "unit": {
                    "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/unitLength.v1.schema.json"
                    }
                }
              },
              "height": {
                "type": "object",
                "properties": {
                  "value": {
                    "type": "number",
                    "multipleOfPrecision": 0.001,
                    "description": "Höhenwert"
                  },
                  "unit": {
                    "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/unitLength.v1.schema.json"
                    }
                }
              },
              "volume": {
                "type": "object",
                "properties": {
                  "value": {
                    "type": "number",
                    "multipleOfPrecision": 0.001,
                    "description": "Volumenwert"
                  },
                  "unit": {
                    "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/unitVolume.v1.schema.json"
                    }
                }
              },
              "typeCode": {
                "type": "string"
              },
              "type": {
                "type": "string",
                "description": "Fachtypen",
                "enum": ["BIN", "BOX", "PALETTE", "CORLETTE", "CARTON", "PULK", "UNKNOWN"]
              },
              "capacity": {
                "type": "integer"
              },
              "maxWeight": {
                "type": "object",
                "properties": {
                  "value": {
                    "type": "integer",
                    "description": "Max. Gewichtswert"
                  },
                  "unit": {
                    "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/unitWeight.v1.schema.json"
                    }
                }
              }
            }
          },
          "area": {
            "type": "object",
            "properties": {
              "storageType": {
                "type": "string",
                "description": "Unterscheidung nach Kommissionierung / Reservelager / Rücksendestelle",
                "enum": ["PICKING", "RESERVE", "RETURN", "OTHER"]
              },
              "storageHierarchy":{
                "type": "object",
                "properties": {
                  "level1": {
                    "type": "string"
                  },
                  "level2": {
                  "type": "string"
                  },
                  "level3": {
                    "type": "string"
                  }
                }
              },
              "heavyArea": {
                "type": "string",
                "enum": ["HEAVY", "NOT_HEAVY"],
                "description": "when true, then this is a heavy area"
              },
              "priority": {
                "type": "string",
                "enum": ["LOW", "HIGH"]
              },
              "valuableArea": {
                "type": "string",
                "description": "Kennzeichnung ob der Lagerbereich diebstahlgefährdete Artikel enthält (Käfigbereich)",
                "enum": ["NORMAL", "VALUABLE"]
              },
              "forkliftControlSystem": {
                "type": "boolean",
                "description": "Bereich für Staplerleitsystem geeingnet"
              },
              "driverlessTransportSystem": {
                "type": "boolean",
                "description": "Bereich für fahrerloses Transportsystem geeignet"
              },
              "usageCoefficient": {
                "type": "integer",
                "minimum": 0,
                "maximum": 100
              },
              "harzadousMaterialZone": {
                "type": "string",
                "maxLength": 50,
                "description": "Gefahrstoffzone",
                "examples": [ "DZ4X_01_B1", "DZ4X_04_B2"]
              },
              "harzadousMaterialZoneGroup": {
                "type": "string",
                "maxLength": 10,
                "description": "Gefahrstoffzonegruppe",
                "examples": ["B"]
              },
              "fireZone": {
                "type": "string",
                "maxLength": 10,
                "description": "Brandabschnitt",
                "examples": ["B4","B6"]
              },
              "harzadousMaterialZoneOverflow": {
                "type": "string",
                "maxLength": 10,
                "description": "Gefahrstoffzone Überlauf"
			        },
              "nonCommercialGoodsArea": {
                "type": "string",
                "description": "Kennzeichnung, ob der Lagerbereich für Betriebsmittel ist",
                "enum": ["YES", "NO"]
			  }
			},
            "required": ["storageType"]
          },
          "aisleProperties": {
            "type": "object",
            "description": "Aisle detail properties",
            "properties": {
              "strategyCode": {
                "type": "string"
              },
              "targetCode": {
                "type": "string"
              },
              "lockCode": {
                "type": "string"
              },
              "lock": {
                "type": "string",
                "enum": ["LOCKED", "NOT_LOCKED"]
              }
            }
          },
          "layerProperties": {
            "type": "object",
            "properties": {
              "lockCode": {
                "type": "string"
              },
              "lock": {
                "type": "string",
                "enum": ["LOCKED", "NOT_LOCKED"]
              }
            }
          },
          "fieldProperties": {
            "type": "object",
            "properties": {
              "lockCode": {
                "type": "string"
              },
              "lock": {
                "type": "string",
                "enum": ["LOCKED", "NOT_LOCKED"]
              }
            }
          }
        },
        "required": [
          "location",
          "storageLocation",
          "area"
        ]
      }
    },
    "required": [
      "eventId",
      "traceId",
      "eventTime",
      "version",
      "eventType",
      "data"
    ]
  }

4.2. Direction FINE to ERP

4.2.1. Header

This interface uses the Service Header

Table 9. Attribute
Fieldname Expresion

4.2.2. Datamodel

4.2.3. Enumeration

Field: Type

Table 10. type
Meta Value Description Short Value

4.2.4. Example

Message FINE to ERP

4.2.5. Schema

Table 11. Version FINE to ERP

current version

2.1

Download

Interface FINE to ERP
{
    "$schema": "http://json-schema.org/draft-07/schema",
    "$comment": "Schema for StorageLocation in a warehouse Version 2.01",
    "$id": "https://doc.fine.gcp.osp-dev.de/registry/Stock/StorageLocationErp.v2.1.schema.json",
    "type": "object",
    "properties": {
      "eventId": {
        "type": "string",
        "format": "uuid",
        "title": "The uniq eventId",
        "description": "Global uniq Id",
        "examples": [
            "00ce536f-923a-42f4-8128-be118faf1d87"
        ]
    },
    "traceId": {
        "type": "string",
        "format": "uuid",
        "title": "The uniq traceId",
        "description": "Global uniq Id for tracing the flow of events",
        "examples": [
            "00ce536f-923a-42f4-8138-33418faf1342"
        ]
    },
    "spanId": {
      "type": "string",
      "format": "uuid",
      "title": "The uniq spanId",
      "description": "ID of the privious event (message). The ID is not given if there is no previous event. For transaction initiated by user the spanId of the executed event might be the userId.",
      "examples": [
          "00ce536f-923a-42f4-8128-be118faf1d85"
      ]
  },
    "eventTime": {
        "type": "string",
        "title": "Time of occurrence of the event",
        "description": "Time at which this record(event) was technically generated in RFC3339 format. Strongly recommended: in UTC time.",
        "examples": [
            "2016-04-16T16:06:05.000+02:00"
        ]
    },
    "version": {
      "title": "The number of version schema",
      "description": "Number of version of this data structure. Only required if no $schema is specified!",
      "oneOf": [
          {
              "type": "string",
              "pattern": "\\d+\\.\\d{1,2}",
              "examples": ["1.01", "01.02"]
          },
          {
              "type": "integer",
              "examples": [1, 2]
          }
      ]
    },
    "context": {
        "type": "string",
        "title": "The context / business case",
        "description": "The context specified here means the business domain.",
        "examples": [
            "STORAGE_LOCATION"
        ]
    },
    "eventType": {
        "type": "string",
        "title": "The type of operation",
        "description": "Typ der Nachricht",
        "examples": ["INSERT", "UPDATE", "DELETE"],
        "enum": ["INSERT", "UPDATE", "DELETE"]
    },
    "metaData":{
        "type":"object",
        "properties": {
          "senderSystem": {
            "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/system.v4.schema.json"
        }
      }
    },
    "data": {
        "type": "object",
        "properties": {
          "location": {
            "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/warehouselocations.v1.schema.json"
          },
          "storageLocation": {
            "type": "object",
            "properties": {
              "storageLocationId": {
                "type": "string",
                "description": "techn. Eindeutiger Key des Lagerplatzes."
              },
              "storageLocationCode": {
                "type": "string",
                "description": "BusinessKey: Darstellung des Lagerplatzes als fachlicher Schlüssel, wie dieser im LVS Front-End angezeigt wird"
              },
              "type": {
                "type": "string",
                "description": "Beschreibt die Eigenschaft eines Platzes, ob dieser ein echter Lagerplatz oder ein virtueller Lagerplatz ist",
                "enum": ["VIRTUAL", "PHYSICAL"]
              },
              "building": {
                "type": "string"
              },
              "floor": {
                "type": "string"
              },
              "aisle": {
                "type": "string"
              },
              "layer": {
                "type": "string"
              },
              "field": {
                "type": "string"
              },
              "place": {
                "type": "string"
              },
              "lastInventoryDate": {
                "type": "string",
                "examples": [
                  "2016-04-16T16:06:05.000+02:00"
              ]
              },
              "occupied": {
                "type": "string"
              },
              "lockCode": {
                "type": "string",
                "description": "Lagerplatzsperre, wenn höhere Sperren vorhanden sind, sollen sich diese auf den Platz vererben"
              },
              "lock": {
                "type": "string",
                "description": "ist der Platz gespeert oder nicht",
                "enum": ["LOCKED", "NOT_LOCKED"]
              }
            },
            "required": [
              "storageLocationId",
              "storageLocationCode",
              "type"
            ]
          },
          "rack": {
            "type": "object",
            "properties": {
              "width": {
                "type": "object",
                "properties": {
                  "value": {
                    "type": "integer",
                    "description": "Weitenwert"
                  },
                  "unit": {
                    "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/unitLength.v1.schema.json"
                    }
                }
              },
              "length": {
                "type": "object",
                "properties": {
                  "value": {
                    "type": "integer",
                    "description": "Längenwert"
                  },
                  "unit": {
                    "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/unitLength.v1.schema.json"
                    }
                }
              },
              "height": {
                "type": "object",
                "properties": {
                  "value": {
                    "type": "integer",
                    "description": "Höhenwert"
                  },
                  "unit": {
                    "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/unitLength.v1.schema.json"
                    }
                }
              },
              "volume": {
                "type": "object",
                "properties": {
                  "value": {
                    "type": "integer",
                    "description": "Volumenwert"
                  },
                  "unit": {
                    "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/unitVolume.v1.schema.json"
                    }
                }
              },
              "typeCode": {
                "type": "string"
              },
              "type": {
                "type": "string",
                "description": "Fachtypen",
                "enum": ["BIN", "BOX", "PALETTE", "CORLETTE", "CARTON", "PULK", "UNKNOWN"]
              },
              "capacity": {
                "type": "integer"
              },
              "maxWeight": {
                "type": "object",
                "properties": {
                  "value": {
                    "type": "integer",
                    "description": "Max. Gewichtswert"
                  },
                  "unit": {
                    "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/unitWeight.v1.schema.json"
                    }
                }
              }
            }
          },
          "area": {
            "type": "object",
            "properties": {
              "storageType": {
                "type": "string",
                "description": "Unterscheidung nach Kommissionierung / Reservelager / Rücksendestelle",
                "enum": ["PICKING", "RESERVE", "RETURN", "OTHER"]
              },
              "storageHierarchy":{
                "type": "object",
                "properties": {
                  "level1": {
                    "type": "string"
                  },
                  "level2": {
                  "type": "string"
                  },
                  "level3": {
                    "type": "string"
                  }
                }
              },
              "heavyArea": {
                "type": "string",
                "enum": ["HEAVY", "NOT_HEAVY"],
                "description": "when true, then this is a heavy area"
              },
              "priority": {
                "type": "string",
                "enum": ["LOW", "HIGH"]
              },
              "valuableArea": {
                "type": "string",
                "description": "Kennzeichnung ob der Lagerbereich diebstahlgefährdete Artikel enthält (Käfigbereich)",
                "enum": ["NORMAL", "VALUABLE"]
              },
              "forkliftControlSystem": {
                "type": "boolean",
                "description": "Bereich für Staplerleitsystem geeingnet"
              },
              "driverlessTransportSystem": {
                "type": "boolean",
                "description": "Bereich für fahrerloses Transportsystem geeignet"
              },
              "usageCoefficient": {
                "type": "integer",
                "minimum": 0,
                "maximum": 100
              },
              "harzadousMaterialZone": {
                "type": "string",
                "maxLength": 50,
				"description": "Gefahrstoffzone"
			  },
			  "harzadousMaterialZoneOverflow": {
                "type": "string",
                "maxLength": 10,
				"description": "Gefahrstoffzone Überlauf"
			  },
			},
            "required": ["storageType"]
          },
          "aisleProperties": {
            "type": "object",
            "description": "Aisle detail properties",
            "properties": {
              "strategyCode": {
                "type": "string"
              },
              "targetCode": {
                "type": "string"
              },
              "lockCode": {
                "type": "string"
              },
              "lock": {
                "type": "string",
                "enum": ["LOCKED", "NOT_LOCKED"]
              }
            }
          },
          "layerProperties": {
            "type": "object",
            "properties": {
              "lockCode": {
                "type": "string"
              },
              "lock": {
                "type": "string",
                "enum": ["LOCKED", "NOT_LOCKED"]
              }
            }
          },
          "fieldProperties": {
            "type": "object",
            "properties": {
              "lockCode": {
                "type": "string"
              },
              "lock": {
                "type": "string",
                "enum": ["LOCKED", "NOT_LOCKED"]
              }
            }
          }
        },
        "required": [
          "location",
          "storageLocation",
          "area"
        ]
      }
    },
    "required": [
      "eventId",
      "traceId",
      "eventTime",
      "version",
      "eventType",
      "data"
    ]
  }

4.3. Direction FINE to BRAIN

4.3.1. Header

This interface uses the Service Header

Special expresion for this interface:

Table 12. Attribute
Fieldname Expression

type

context

STORAGE_LOCATION

4.3.2. Datamodel

4.3.3. Enumeration

Field: storagelocation.type

Table 13. storagelocation.type

Meta Value

Description

Short Value

VIRTUAL

virtuelle Plätze

PHYSICAL

physische Plätze

Field: lock

Table 14. lock

Meta Value

Description

Short Value

LOCKED

gesperrt

NOT_LOCKED

nicht gesperrt

Field: rack.type

Table 15. rack.type

Meta Value

Description

Short Value

BIN

Fachtyp für blaue Retourenmischwannen

BOX

Fachtyp für Mischkisten

PALETTE

Fachtyp für Paletten

CORLETTE

Fachtyp für Corletten

CARTON

Fachtyp für Kartons (Normkartons)

PULK

Fachtyp für PULK-Flächen mit physischer Lagerplatzentsprechung

Field: area.heavyArea

Table 16. area.heavyArea

Meta Value

Description

Short Value

HEAVY

Schwerlastbereich

NOT_HEAVY

kein Schwerlastbereich

Field: area.priority

Table 17. area.priority

Meta Value

Description

Short Value

LOW

niedrige Priorität

HIGH

hohe Priorität

Field: area.priority

Table 18. area.priority

Meta Value

Description

Short Value

NORMAL

Normalbereich

VALUABLE

Wertebereich

4.3.4. Example

4.3.5. Schema

Table 19. Version FINE to BRAIN
Version Number File Published on Changes

previous version

1.0

Download

17.06.22

für lastInventoryDate und EventTime sind Beispiele hinzugefügt

previous version

0.2

Download

19.05.22

current version

2.0

Download

20.09.22

- ServiceHeader Attriute type umbenannt in eventType

- Service Header neues Objekt "metaData" einfügen und die Attribute "sender" in das neue Objekt verschieben

- bei Attribute "sender" das Schema des GlobalEnum "sender" verlinken

- unter Data\rack\width Attibute "unit" das Schema des GlobalEnum unit verlinken

- unter Data\rack\length Attibute "unit" das Schema des GlobalEnum unit verlinken

- unter Data\rack\height Attibute "unit" das Schema des GlobalEnum unit verlinken

- unter Data\rack\volume Attibute "unit" das Schema des GlobalEnum unit verlinken

- unter Data\rack\maxWeight Attibute "unit" das Schema des GlobalEnum unit verlinken

2.1

Download

25.01.23

- neuer ENUM "UNKNOWN" für "rack" → "type"

- neues optionales Feld "productGroup" unter "area"

Interface FINE to BRAIN
{
    "$schema": "http://json-schema.org/draft-07/schema",
    "$comment": "Schema for filtered StorageLocation for Otto Topics in a warehouse Version 2.00",
    "$id": "https://doc.fine.gcp.osp-dev.de/registry/Stock/StorageLocationFineBrain.v2.0.schema.json",
    "type": "object",
    "properties": {
      "eventId": {
        "type": "string",
        "format": "uuid",
        "title": "The uniq eventId",
        "description": "Global uniq Id",
        "examples": [
            "00ce536f-923a-42f4-8128-be118faf1d87"
        ]
    },
    "traceId": {
        "type": "string",
        "format": "uuid",
        "title": "The uniq traceId",
        "description": "Global uniq Id for tracing the flow of events",
        "examples": [
            "00ce536f-923a-42f4-8138-33418faf1342"
        ]
    },
    "eventTime": {
        "type": "string",
        "title": "Time of occurrence of the event",
        "description": "Time at which this record(event) was technically generated in RFC3339 format. Strongly recommended: in UTC time.",
        "examples": [
            "2016-04-16T16:06:05.000+02:00"
        ]
    },
    "version": {
      "title": "The number of version schema",
      "description": "Number of version of this data structure. Only required if no $schema is specified!",
      "oneOf": [
          {
              "type": "string",
              "pattern": "\\d+\\.\\d{1,2}",
              "examples": ["1.01", "01.02"]
          },
          {
              "type": "integer",
              "examples": [1, 2]
          }
      ]
    },
    "context": {
        "type": "string",
        "title": "The context / business case",
        "description": "The context specified here means the business domain.",
        "examples": [
            "returnsprocessing", "STORAGE_LOCATION"
        ]
    },
    "eventType": {
        "type": "string",
        "title": "The type of operation",
        "description": "Typ der Nachricht",
        "examples": ["INSERT", "UPDATE", "DELETE"],
        "enum": ["INSERT", "UPDATE", "DELETE"] 
    },
    "metaData":{
        "type":"object",
        "properties": {
          "senderSystem": {
            "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/system.v1.schema.json"
        }
      } 
    },  
    "data": {
        "type": "object",
        "properties": {
          "location": {
            "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/warehouselocations.v1.schema.json"
          },
          "storageLocation": {
            "type": "object",
            "properties": {
              "storageLocationId": {
                "type": "string",
                "description": "techn. Eindeutiger Key des Lagerplatzes."
              },
              "storageLocationCode": {
                "type": "string",
                "description": "BusinessKey: Darstellung des Lagerplatzes als fachlicher Schlüssel, wie dieser im LVS Front-End angezeigt wird"
              },
              "type": {
                "type": "string",
                "description": "Beschreibt die Eigenschaft eines Platzes, ob dieser ein echter Lagerplatz oder ein virtueller Lagerplatz ist",
                "enum": ["VIRTUAL", "PHYSICAL"]
              },
              "building": {
                "type": "string"
              },
              "floor": {
                "type": "string"
              },
              "aisle": {
                "type": "string"
              },
              "layer": {
                "type": "string"
              },
              "field": {
                "type": "string"
              },
              "place": {
                "type": "string"
              },
              "lastInventoryDate": {
                "type": "string",
                "examples": [
                  "2016-04-16T16:06:05.000+02:00"
              ]
              },
              "occupied": {
                "type": "string"
              },
              "lockCode": {
                "type": "string",
                "description": "Lagerplatzsperre, wenn höhere Sperren vorhanden sind, sollen sich diese auf den Platz vererben"
              },
              "lock": {
                "type": "string",
                "description": "ist der Platz gespeert oder nicht",
                "enum": ["LOCKED", "NOT_LOCKED"]
              }
            },
            "required": [
              "storageLocationId",
              "storageLocationCode",
              "type"
            ]
          },
          "rack": {
            "type": "object",
            "properties": {
              "width": {
                "type": "object",
                "properties": {
                  "value": {
                    "type": "integer",
                    "description": "Weitenwert"
                  },
                  "unit": {
                    "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/unitLength.v1.schema.json"
                    }
                } 
              },
              "length": {
                "type": "object",
                "properties": {
                  "value": {
                    "type": "integer",
                    "description": "Längenwert"
                  },
                  "unit": {
                    "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/unitLength.v1.schema.json"
                    }
                } 
              },
              "height": {
                "type": "object",
                "properties": {
                  "value": {
                    "type": "integer",
                    "description": "Höhenwert"
                  },
                  "unit": {
                    "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/unitLength.v1.schema.json"
                    }
                } 
              },
              "volume": {
                "type": "object",
                "properties": {
                  "value": {
                    "type": "integer",
                    "description": "Volumenwert"
                  },
                  "unit": {
                    "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/unitVolume.v1.schema.json"
                    }
                } 
              },                    
              "typeCode": {
                "type": "string"
              },
              "type": {
                "type": "string",
                "description": "Fachtypen",
                "enum": ["BIN", "BOX", "PALETTE", "CORLETTE", "CARTON", "PULK"]
              },
              "capacity": {
                "type": "integer"
              },
              "maxWeight": {
                "type": "object",
                "properties": {
                  "value": {
                    "type": "integer",
                    "description": "Max. Gewichtswert"
                  },
                  "unit": {
                    "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/unitWeight.v1.schema.json"
                    }
                } 
              }            
            }
          },
          "area": {
            "type": "object",
            "properties": {
              "storageType": {
                "type": "string",
                "description": "Unterscheidung nach Kommissionierung / Reservelager / Rücksendestelle",
                "enum": ["PICKING", "RESERVE", "RETURN", "OTHER"]
              },
              "storageHierarchy":{
                "type": "object",
                "properties": {
                  "level1": {
                    "type": "string"
                  },
                  "level2": {
                  "type": "string"
                  },
                  "level3": {
                    "type": "string"
                  }
                }  
              },
              "heavyArea": {
                "type": "string",
                "enum": ["HEAVY", "NOT_HEAVY"],
                "description": "when true, then this is a heavy area"
              },
              "priority": {
                "type": "string",
                "enum": ["LOW", "HIGH"]
              },
              "valuableArea": {
                "type": "string",
                "description": "Kennzeichnung ob der Lagerbereich diebstahlgefährdete Artikel enthält (Käfigbereich)",
                "enum": ["NORMAL", "VALUABLE"]
              },
              "forkliftControlSystem": {
                "type": "boolean",
                "description": "Bereich für Staplerleitsystem geeingnet"
              },
              "driverlessTransportSystem": {
                "type": "boolean",
                "description": "Bereich für fahrerloses Transportsystem geeignet"
              },
              "usageCoefficient": {
                "type": "integer",
                "minimum": 0,
                "maximum": 100
              }
            },
            "required": ["storageType"]
          },
          "aisleProperties": {
            "type": "object",
            "description": "Aisle detail properties",
            "properties": {
              "strategyCode": {
                "type": "string"
              },
              "targetCode": {
                "type": "string"
              },
              "lockCode": {
                "type": "string"
              },
              "lock": {
                "type": "string",
                "enum": ["LOCKED", "NOT_LOCKED"]                  
              }
            }
          },
          "layerProperties": {
            "type": "object",
            "properties": {
              "lockCode": {
                "type": "string"
              },
              "lock": {
                "type": "string",
                "enum": ["LOCKED", "NOT_LOCKED"]              
              }
            }
          },
          "fieldProperties": {
            "type": "object",
            "properties": {
              "lockCode": {
                "type": "string"
              },
              "lock": {
                "type": "string",
                "enum": ["LOCKED", "NOT_LOCKED"]
              }
            }
          }
        },
        "required": [
          "location",
          "storageLocation",
          "area"
        ]
      }
    },
    "required": [
      "eventId",
      "traceId",
      "eventTime",
      "version",
      "eventType",
      "data"
    ]
  }

4.3.6. Filter

Filter on source topic for location IN ('LOEHNE', 'ANSBACH', 'SONNEFELD', 'HALDENSLEBEN', 'SUEDHAFEN', 'OHRDRUF', 'ERFURT', 'MOSINA', 'LANGENSELBOLD')

10 - S09 Storage Handling Unit

Status

Version 1.0 published 17.06.2022

Approval
  1. NEON: abgestimmt mit Körber zur Umsetzung in NEON_Fein_Pflichtenheft_WEN1_ SST_v6.0

  2. Otto'':

Comment

Für neue Anforderungen aus Otto'' wurde eine Version 2.0 erstellt und unter "coming version" enisehbar. Diese ist unabhängig nutzbar und beeinflusst nicht den Integrationstest von NEON.

Assumption

_

1. Stakeholder

Role Application Responsible

Communication

Integration Layer

Leading App

FLASH

InterfaceOwner

Producer

kMotion

Producer

KR1

Producer

COBRA

Producer

WMSx/SON

Producer

F2X

Consumer

FLASH

Consumer

SOLAR

Consumer

Nemo

2. Business Context

Daten sollen bei allen Änderungen (Create, Update, Delete) der unten stehenden Spalten übertragen werden.

3. Informationflow

Partner Direction FINE-Service Topic/API Description Status

WMS:WMSX

send

Stock

stock.storagehandlingunit

StorageHandlingUnitWms.v1.0

ready

WMS:KR1

send

Stock

stock.storagehandlingunit.v2

StorageHandlingUnitWms.v2.2

ready

WMS:F2X

send

Stock

stock.storagehandlingunit.f2xwms.v2

StorageHandlingUnitWms.v2.1

planned

WMS:KMOTION

send

Stock

stock.storagehandlingunit.kmotion.v2

StorageHandlingUnitWms.v2.1

planned

FLASH

receive

Stock

stock.storagehandlingunit

StorageHandlingUnitWms.v1.0

ready

FLASH

receive

Stock

stock.storagehandlingunit.v2

StorageHandlingUnitWms.v2.2

ready

FLASH

receive

Stock

stock.storagehandlingunit.f2xwms.v2

StorageHandlingUnitWms.v2.1

planned

FLASH

receive

Stock

stock.storagehandlingunit.kmotion.v2

StorageHandlingUnitWms.v2.1

planned

Otto

receive

Stock

stock.storagehandlingunit.v1.otto

StorageHandlingUnitFineBrainv1.0

ready

Otto

receive

Stock

stock.storagehandlingunit.v2.otto

StorageHandlingUnitFineBrain.v2.0

ready

Diagram

4. Interface

4.1. Direction WMS to FINE

4.1.1. Header

This interface uses the Service Header

Special expresion for this interface:

Table 1. Attribute
Fieldname Expresion

type

context

STORAGE_HANDLING_UNIT

4.1.2. Datamodel

Property Type Description

(Root)

object

    eventId*

string (uuid)

The uniq eventId
Global uniq Id

    traceId*

string (uuid)

The uniq traceId
Global uniq Id for tracing the flow of events

    spanId

string (uuid)

The uniq spanId
ID of the privious event (message). The ID is not given if there is no previous event. For transaction initiated by user the spanId of the executed event might be the userId.

    eventTime*

string

Time of occurrence of the event
Time at which this record(event) was technically generated in RFC3339 format. Strongly recommended: in UTC time.

    version*

The number of version schema
Number of version of this data structure. Only required if no $schema is specified!

    context

string

The context / business case
The context specified here means the business domain.

    eventType*

string (enum)

The type of operation
Typ der Nachricht

Any of: [ "INSERT", "UPDATE", "DELETE" ]

    metaData

object

        senderSystem*

string (enum)

system

Any of: [ "KR1_SHF", "KR1_HHSTR", "WMSX_SON", "WMSX_AKU", "KMOTION_ILO", "KMOTION_GHM", "COBRA", "LSAS", "IDEEFIX", "OBS", "RESY", "LDH", "RETAILSCHICHT", "BUBE", "FINE_INBOUND", "F2X", "WMSX_WEISMAIN", "LIGIS", "KR1_MANDANT" ]

        client

string (enum)

client
Client/mandant (messages of different clients have different processing rules and destination interfaces) - use FBO for Fulfillment by Otto (CORE, DeepSea…​)

Any of: [ "FBO", "MYTOYS", "BONPRIX", "WITT", "CORSO", "HEINE", "BAUMARKT_DIREKT", "BAUR", "OTTO", "ABOUTYOU", "F2X", "F2X_MANUFACTUM", "F2X_PERSONALSHOP", "F2X_SHEEGO", "F2X_CLEARANCE" ]

    data*

object

        location*

string (enum)

warehouse locations

Any of: [ "ANSBACH", "LOEHNE", "LANGENSELBOLD", "MOSINA", "OHRDRUF", "HALDENSLEBEN", "HALDENSLEBEN_RT", "SUEDHAFEN", "SONNEFELD", "ALTENKUNSTADT", "WEIDEN", "KRACANY", "ILOWA", "ILOWA_RT", "ILOWA_RSS", "GERNSHEIM", "ERFURT", "HAMBURG_RT", "OTELFINGEN_RT", "KRIMICE_RT", "STAHLAVY_RT", "OHRDRUF_RT", "LOEHNE_RT", "LANGENSELBOLD_RT", "LODZ_1_RT", "LODZ_2_RT", "BERGHEIM_RT", "ALTENKUNSTADT_RT", "LISTERHILLS_RT", "SUEDHAFEN_RT", "PILSEN_RT", "HAMBURG_SC", "LOEHNE_SC", "SCHWABHAUSEN_SC", "HALDENSLEBEN_RSS", "ALTENKUNSTADT_RSS", "LOEHNE_RSS", "OHRDRUF_RSS", "LANGENSELBOLD_RSS", "LOEHNE_CP" ]

        storageHandlingUnitId*

string

techn. Key einer Ladeinheit / eines Gebindes

        storageHandlingUnitCode*

string

Business-Key einer Ladeinheit / eines Gebindes

        storageHandlingUnitParentId

string

Falls das Gebinde schachtelbar ist, so ist hier der jeweilige Stapel zu referenzieren

        packageCode*

string

Kennzeichnung der Verpackungsnorm (z.B. Palette, Kolli N1 usw.)

        package*

string (enum)

Verpackungsnormen

Any of: [ "UNKNOWN_PACKAGE", "VIRTUAL_PACKAGE", "N1", "N2", "N3", "N4", "N5", "N6", "N7", "P1", "P2", "P3", "P4", "P5", "BIN", "HIGHBIN", "BOX", "HIGHBOX", "LARGE_FORMAT_PALETTE", "LARGE_FORMAT_CORLETTE", "TROLLEY", "GENERIC_UNIT", "LOGISTICS_UNIT", "HUNT", "SHOECARTON", "BULKBOX" ]

        packageGroup*

string (enum)

Verpackungsnormgruppen

Any of: [ "UNKNOWN_PACKAGEGROUP", "VIRTUAL_PACKAGEGROUP", "GERNERIC_PACKAGEGROUP", "CARTON", "PALETTE", "BIN", "BOX", "CORLETTE", "TROLLEY", "BULKBOX" ]

        sample

string (enum)

Kennzeichnung, ob es sich um ein Gebinde handelt, das in der Musterziehung erstellt wurde

Any of: [ "NO_SAMPLE", "SAMPLE" ]

        perforation

string (enum)

Kennzeichnung, ob eine Ladeeinheit durch eine automatische Perforation perforiert werden darf

Any of: [ "NO_PERFORATION", "PERFORATION", "UNKNOWN" ]

        damaged

string (enum)

Kennzeichnung, ob das Gebinde beim Wareneingang defekt war

Any of: [ "NOT_DAMAGED", "DAMAGED" ]

        orderRelatedHandlingUnit

string (enum)

Kennzeichnung für den Einzelteilprozess (z.B. bei Otto Market) zur Unterscheidung ob ein Auftrag für ein Artikel im Gebinde vorliegt

Any of: [ "YES", "NO" ]

        orderRelatedHandlingUnitCode

string

Interne Werte der Vereinnahmung des ETV-Prozesses (z.B. Codes für Auftragsware, Schmuck, Präventiv etc.) des jeweiligen LVS

        captureType

string (enum)

Art der Erfassung einer Ladeeinheit, aktuell nur für Kartons zutreffend.

Any of: [ "QR", "OCR", "MANUAL" ]

        weight

object

            value

integer

Gewichtswert

            unit

string (enum)

unit weight

Any of: [ "GRAM", "KILOGRAM" ]

        returnTargetCode

string

Interne Werte des Sortierzieles

Maximum Length: 10

4.1.3. Enumeration

Field: package

Table 2. package
Meta Value Description Short Value

N1

Normkarton 1

N2

Normkarton 2

N3

Normkarton 3

N4

Normkarton 4

N5

Normkarton 5

N6

Normkarton 6

N7

Normkarton 7

BIN

Retourenmischwanne

HIGHBIN

gedeckelte Retourenmischwanne

BOX

Mischkiste

HIGHBOX

hohe Mischkiste

P1

N21 Höhe 1,65m inkl. Palette

P2

N22 Höhe 2,10m inkl Palette

P3

N23 Höhe 2,10m + die Ware steht seitlich über das Palettengrundmaß hinaus

P4

N24 Höhe 0,70m inkl. Palette

LARGE_FORMAT_PALETTE

Großpalette

LARGE_FORMAT_CORLETTE

Großcorlette

TROLLEY

Trolley

VIRTUAL_UNIT

Virtuelle Ladeinheit

BULKBOX

Bulkbox

Field: packageGroup

Table 3. packageGroup
Meta Value Description Short Value

CARTON

Normkarton

PALETTE

Palette

BIN

Wanne

BOX

Mischkiste

CORLETTE

Corlette

TROLLEY

Trolley

VIRTUAL_UNIT

Virtuelle Ladeinheit

BULKBOX

Bulkbox

Field: sample

Table 4. sample
Meta Value Description Short Value

NO_SAMPLE

kein Musterkarton

SAMPLE

Musterkarton

Field: perforation

Table 5. perforation
Meta Value Description Short Value

NO_PERFORATION

keine automatische Perforation

PERFORATION

automatische Perforation

UNKNOWN

nicht definiert

Field: damaged

Table 6. damaged
Meta Value Description Short Value

NOT_DAMAGED

kein Umpacker

DAMAGED

Umpacker

Field: orderRelatedHandlingUnit

Table 7. orderRelatedHandlingUnit
Meta Value Description Short Value

YES

Kundenauftrag vorhanden

NO

Kundenauftrag nicht vorhanden

Field: captureType

Table 8. captureType
Meta Value Description Short Value

QR

QR

OCR

OCR

MANUAL

manuell

4.1.4. Example

Message WMS to FINE
{
	"eventId": "00ce536f-923a-42f4-8128-be118faf1d87",
	"traceId": "00ce536f-923a-42f4-8128-be118faf1d85",
	"spanId": null,
	"eventTime": "2016-04-16T16:06:05+02:00",
	"version": "1",
	"context": "storageNotification",
	"type": "INSERT",
	"sender": "WMSX_SONNEFELD",
	"instance": "WMSX_SONNEFELD",
    "data":{
        "location":"SONNEFELD",	
        "storageHandlingUnitId":"218530844",
        "storageHandlingUnitCode":"8522677816",
        "storageHandlingUnitParentId":"85226778",	
        "packageCode":"Palette",
        "package":"P5",
        "packageGroup":"PALETTE",	
        "sample":"NO_SAMPLE",
        "perforation":"NO_PERFORATION",		
        "damaged":"NOT_DAMAGED",
        "orderRelatedHandlingUnit":"YES",
        "orderRelatedHandlingUnitCode":"Schmuck"
    }	
}

4.1.5. Schema

Table 9. Version Wms to FINE
Version Number File Published on Changes

previous version

1.0

Download

17.06.22

- Service Header Attribute wurden um Title, Format, Description und Example hinzugefügt

- Neue ENUM Werte bei "package" "UNKNOWN_PACKAGE", "VIRTUAL_PACKAGE"

- Neue ENUM Werte bei "packageGroup" "UNKNOWN_PACKAGEGROUP", "VIRTUAL_PACKAGEGROUP", "GERNERIC_PACKAGEGROUP"

previous version

2.0

Download

20.09.22

- ServiceHeader Attriute spanId als optionales Feld einfügen

- ServiceHeader Attriute type umbenannt in eventType

- Service Header neues Objekt "metaData" einfügen und die Attribute "sender" in das neue Objekt verschieben

- bei Attribute "sender" das Schema des GlobalEnum "sender" verlinken

- ServiceHerder Attribute "instance" aus Schema entfernen wird über "sender" abgebildet

- object weight mit value und unit hinzugefügt

previous version

2.1

Download

12.04.23

Verlinkung auf system.v3 für WMSX_WEISMAIN

- Aufnahme von client - Aufnahme neuer ENUMs für package "LOGISTICS_UNIT", "HUNT", "SHOECARTON"

current version

2.2

Download

23.10.23

Einfügen neuer ENUM für package und packagroup: BULKBOX Einfügen eines neuen Felders "returnTargetCode" als String mit Länge 10

Interface WMS to FINE
{
  "$schema": "http://json-schema.org/draft-07/schema",
  "$comment": "Schema for StorageHandlungUnit",
  "$id": "https://doc.fine.gcp.osp-dev.de/registry/Stock/StorageHandlingUnitWms.v2.2.schema.json",
  "type": "object",
  "properties": {
    "eventId": {
      "type": "string",
      "format": "uuid",
      "title": "The uniq eventId",
      "description": "Global uniq Id",
      "examples": [
          "00ce536f-923a-42f4-8128-be118faf1d87"
      ]
    },
    "traceId": {
      "type": "string",
      "format": "uuid",
      "title": "The uniq traceId",
      "description": "Global uniq Id for tracing the flow of events",
      "examples": [
          "00ce536f-923a-42f4-8138-33418faf1342"
      ]
    },
    "spanId": {
      "type": "string",
      "format": "uuid",
      "title": "The uniq spanId",
      "description": "ID of the privious event (message). The ID is not given if there is no previous event. For transaction initiated by user the spanId of the executed event might be the userId.",
      "examples": [
          "00ce536f-923a-42f4-8128-be118faf1d85"
      ]
  },
    "eventTime": {
      "type": "string",
      "title": "Time of occurrence of the event",
      "description": "Time at which this record(event) was technically generated in RFC3339 format. Strongly recommended: in UTC time.",
      "examples": [
          "2016-04-16T16:06:05.000+02:00"
      ]
    },
    "version": {
    "title": "The number of version schema",
    "description": "Number of version of this data structure. Only required if no $schema is specified!",
    "oneOf": [
        {
            "type": "string",
            "pattern": "\\d+\\.\\d{1,2}",
            "examples": ["1.01", "01.02"]
        },
        {
            "type": "integer",
            "examples": [1, 2]
        }
    ]
    },
    "context": {
      "type": "string",
      "title": "The context / business case",
      "description": "The context specified here means the business domain.",
      "examples": [
          "STORAGE_HANDLING_UNIT"
      ]
    },
    "eventType": {
      "type": "string",
      "title": "The type of operation",
      "description": "Typ der Nachricht",
      "examples": ["INSERT", "UPDATE", "DELETE"],
      "enum": ["INSERT", "UPDATE", "DELETE"]
    },
    "metaData":{
      "type":"object",
      "properties": {
        "senderSystem": {
          "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/system.v4.schema.json"
        },
        "client": {
          "title": "client",
          "description": "Client/mandant (messages of different clients have different processing rules and destination interfaces) - use FBO for Fulfillment by Otto (CORE, DeepSea...)",
          "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/company.v4.schema.json"
        }
      },
      "required": [
        "senderSystem"
      ]
    }, 
    "data": {
      "type": "object",
      "properties": {
        "location": {
          "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/warehouselocations.v1.schema.json"
        },
        "storageHandlingUnitId": {
          "type": "string",
          "description": "techn. Key einer Ladeinheit  / eines Gebindes",
          "examples": ["218530844"]
        },
        "storageHandlingUnitCode": {
          "type": "string",
          "description": "Business-Key einer Ladeinheit  / eines Gebindes",
          "examples": ["8522677816"]
        },
        "storageHandlingUnitParentId": {
          "type": "string",
          "description": "Falls das Gebinde schachtelbar ist, so ist hier der jeweilige Stapel zu referenzieren",
          "examples": ["85226778"]
        },
        "packageCode": {
          "type": "string",
          "description": "Kennzeichnung der Verpackungsnorm (z.B. Palette, Kolli N1 usw.)",
          "examples": ["Palette"]
        },
        "package": {
          "type": "string",
          "description": "Verpackungsnormen",
          "examples": ["P5", "N2"],
          "enum": ["UNKNOWN_PACKAGE", "VIRTUAL_PACKAGE", "N1", "N2", "N3", "N4", "N5", "N6", "N7", "P1", "P2", "P3", "P4", "P5", "BIN", "HIGHBIN", "BOX", "HIGHBOX", "LARGE_FORMAT_PALETTE", "LARGE_FORMAT_CORLETTE", "TROLLEY", "GENERIC_UNIT", "LOGISTICS_UNIT", "HUNT", "SHOECARTON","BULKBOX"]
        },
        "packageGroup": {
          "type": "string",
          "description": "Verpackungsnormgruppen",
          "examples": ["PALETTE", "CARTON"],
          "enum": ["UNKNOWN_PACKAGEGROUP", "VIRTUAL_PACKAGEGROUP", "GERNERIC_PACKAGEGROUP", "CARTON", "PALETTE", "BIN", "BOX", "CORLETTE", "TROLLEY","BULKBOX"]
        },
        "sample": {
          "type": "string",
          "description": "Kennzeichnung, ob es sich um ein Gebinde handelt, das in der Musterziehung erstellt wurde",
          "examples": ["NO_SAMPLE", "SAMPLE"],
          "enum": ["NO_SAMPLE", "SAMPLE"]
        },
        "perforation": {
          "type": "string",
          "description": "Kennzeichnung, ob eine Ladeeinheit durch eine automatische Perforation perforiert werden darf",
          "examples": ["NO_PERFORATION", "PERFORATION", "UNKNOWN"],
          "enum": ["NO_PERFORATION", "PERFORATION", "UNKNOWN"]
        },
        "damaged": {
          "type": "string",
          "description": "Kennzeichnung, ob das Gebinde beim Wareneingang defekt war",
          "examples": ["NOT_DAMAGED", "DAMAGED"],
          "enum": ["NOT_DAMAGED", "DAMAGED"]          
        },
        "orderRelatedHandlingUnit": {
          "type": "string",
          "description": "Kennzeichnung für den Einzelteilprozess (z.B. bei Otto Market) zur Unterscheidung ob ein Auftrag für ein Artikel im Gebinde vorliegt",
          "examples": ["YES", "NO"],
          "enum": ["YES", "NO"]
        },
        "orderRelatedHandlingUnitCode": {
          "type": "string",
          "description": "Interne Werte der Vereinnahmung des ETV-Prozesses (z.B. Codes für Auftragsware, Schmuck, Präventiv etc.) des jeweiligen LVS",
          "examples": ["Schmuck"]
        },
        "captureType": {
          "type": "string",
          "description": "Art der Erfassung einer Ladeeinheit, aktuell nur für Kartons zutreffend.",
          "enum": ["QR","OCR","MANUAL"],
		  "examples": ["QR","OCR","MANUAL"]
        },
        "weight": {
          "type": "object",
          "properties": {
            "value": {
              "type": "integer",
              "description": "Gewichtswert"
            },
            "unit": {
              "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/unitWeight.v1.schema.json"
              }
          } 
        },
        "returnTargetCode": {
          "type": "string",
          "maxLength": 10,
          "description": "Interne Werte des Sortierzieles",
          "examples": ["9369"]
        }    
      },
      "required": [
        "location",
        "storageHandlingUnitId",
        "storageHandlingUnitCode",
        "packageCode",
        "package",
        "packageGroup"
      ]
    }
  },
  "required": [
    "eventId",
    "traceId",
    "eventTime",
    "version",
    "eventType",
    "data"
  ]
}

4.2. Direction FINE to ERP

4.2.1. Header

This interface uses the Service Header

Table 10. Attribute
Fieldname Expresion

4.2.2. Datamodel

4.2.3. Enumeration

Field: Type

Table 11. type
Meta Value Description Short Value

4.2.4. Example

Message FINE to ERP

4.2.5. Schema

Table 12. Version FINE to ERP

current version

2.1

Download

01.06.23

previous version

coming version

Interface FINE to ERP
{
  "$schema": "http://json-schema.org/draft-07/schema",
  "$comment": "Schema for StorageHandlungUnit",
  "$id": "https://doc.fine.gcp.osp-dev.de/registry/Stock/StorageHandlingUnitErp.v2.1.schema.json",
  "type": "object",
  "properties": {
    "eventId": {
      "type": "string",
      "format": "uuid",
      "title": "The uniq eventId",
      "description": "Global uniq Id",
      "examples": [
          "00ce536f-923a-42f4-8128-be118faf1d87"
      ]
    },
    "traceId": {
      "type": "string",
      "format": "uuid",
      "title": "The uniq traceId",
      "description": "Global uniq Id for tracing the flow of events",
      "examples": [
          "00ce536f-923a-42f4-8138-33418faf1342"
      ]
    },
    "spanId": {
      "type": "string",
      "format": "uuid",
      "title": "The uniq spanId",
      "description": "ID of the privious event (message). The ID is not given if there is no previous event. For transaction initiated by user the spanId of the executed event might be the userId.",
      "examples": [
          "00ce536f-923a-42f4-8128-be118faf1d85"
      ]
  },
    "eventTime": {
      "type": "string",
      "title": "Time of occurrence of the event",
      "description": "Time at which this record(event) was technically generated in RFC3339 format. Strongly recommended: in UTC time.",
      "examples": [
          "2016-04-16T16:06:05.000+02:00"
      ]
    },
    "version": {
    "title": "The number of version schema",
    "description": "Number of version of this data structure. Only required if no $schema is specified!",
    "oneOf": [
        {
            "type": "string",
            "pattern": "\\d+\\.\\d{1,2}",
            "examples": ["1.01", "01.02"]
        },
        {
            "type": "integer",
            "examples": [1, 2]
        }
    ]
    },
    "context": {
      "type": "string",
      "title": "The context / business case",
      "description": "The context specified here means the business domain.",
      "examples": [
          "STORAGE_HANDLING_UNIT"
      ]
    },
    "eventType": {
      "type": "string",
      "title": "The type of operation",
      "description": "Typ der Nachricht",
      "examples": ["INSERT", "UPDATE", "DELETE"],
      "enum": ["INSERT", "UPDATE", "DELETE"]
    },
    "metaData":{
      "type":"object",
      "properties": {
        "senderSystem": {
          "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/system.v3.schema.json"
        },
        "client": {
          "title": "client",
          "description": "Client/mandant (messages of different clients have different processing rules and destination interfaces) - use FBO for Fulfillment by Otto (CORE, DeepSea...)",
          "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/company.v4.schema.json"
        },
      },
      "required": [
        "senderSystem",
        "client"
      ]
    }, 
    "data": {
      "type": "object",
      "properties": {
        "location": {
          "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/warehouselocations.v1.schema.json"
        },
        "storageHandlingUnitId": {
          "type": "string",
          "description": "techn. Key einer Ladeinheit  / eines Gebindes",
          "examples": ["218530844"]
        },
        "storageHandlingUnitCode": {
          "type": "string",
          "description": "Business-Key einer Ladeinheit  / eines Gebindes",
          "examples": ["8522677816"]
        },
        "storageHandlingUnitParentId": {
          "type": "string",
          "description": "Falls das Gebinde schachtelbar ist, so ist hier der jeweilige Stapel zu referenzieren",
          "examples": ["85226778"]
        },
        "packageCode": {
          "type": "string",
          "description": "Kennzeichnung der Verpackungsnorm (z.B. Palette, Kolli N1 usw.)",
          "examples": ["Palette"]
        },
        "package": {
          "type": "string",
          "description": "Verpackungsnormen",
          "examples": ["P5", "N2"],
          "enum": ["UNKNOWN_PACKAGE", "VIRTUAL_PACKAGE", "N1", "N2", "N3", "N4", "N5", "N6", "N7", "P1", "P2", "P3", "P4", "P5", "BIN", "HIGHBIN", "BOX", "HIGHBOX", "LARGE_FORMAT_PALETTE", "LARGE_FORMAT_CORLETTE", "TROLLEY", "GENERIC_UNIT", "LOGISTICS_UNIT", "HUNT", "SHOECARTON"]
        },
        "packageGroup": {
          "type": "string",
          "description": "Verpackungsnormgruppen",
          "examples": ["PALETTE", "CARTON"],
          "enum": ["UNKNOWN_PACKAGEGROUP", "VIRTUAL_PACKAGEGROUP", "GERNERIC_PACKAGEGROUP", "CARTON", "PALETTE", "BIN", "BOX", "CORLETTE", "TROLLEY"]
        },
        "sample": {
          "type": "string",
          "description": "Kennzeichnung, ob es sich um ein Gebinde handelt, das in der Musterziehung erstellt wurde",
          "examples": ["NO_SAMPLE", "SAMPLE"],
          "enum": ["NO_SAMPLE", "SAMPLE"]
        },
        "perforation": {
          "type": "string",
          "description": "Kennzeichnung, ob eine Ladeeinheit durch eine automatische Perforation perforiert werden darf",
          "examples": ["NO_PERFORATION", "PERFORATION", "UNKNOWN"],
          "enum": ["NO_PERFORATION", "PERFORATION", "UNKNOWN"]
        },
        "damaged": {
          "type": "string",
          "description": "Kennzeichnung, ob das Gebinde beim Wareneingang defekt war",
          "examples": ["NOT_DAMAGED", "DAMAGED"],
          "enum": ["NOT_DAMAGED", "DAMAGED"]          
        },
        "orderRelatedHandlingUnit": {
          "type": "string",
          "description": "Kennzeichnung für den Einzelteilprozess (z.B. bei Otto Market) zur Unterscheidung ob ein Auftrag für ein Artikel im Gebinde vorliegt",
          "examples": ["YES", "NO"],
          "enum": ["YES", "NO"]
        },
        "orderRelatedHandlingUnitCode": {
          "type": "string",
          "description": "Interne Werte der Vereinnahmung des ETV-Prozesses (z.B. Codes für Auftragsware, Schmuck, Präventiv etc.) des jeweiligen LVS",
          "examples": ["Schmuck"]
        },
        "captureType": {
          "type": "string",
          "description": "Art der Erfassung einer Ladeeinheit, aktuell nur für Kartons zutreffend.",
          "enum": ["QR","OCR","MANUAL"],
		  "examples": ["QR","OCR","MANUAL"]
        },
        "weight": {
          "type": "object",
          "properties": {
            "value": {
              "type": "integer",
              "description": "Gewichtswert"
            },
            "unit": {
              "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/unitWeight.v1.schema.json"
              }
          } 
        }  
      },
      "required": [
        "location",
        "storageHandlingUnitId",
        "storageHandlingUnitCode",
        "packageCode",
        "package",
        "packageGroup"
      ]
    }
  },
  "required": [
    "eventId",
    "traceId",
    "eventTime",
    "version",
    "eventType",
    "data"
  ]
}

4.3. Direction FINE to Brain

4.3.1. Header

Interface FINE to Brain

This interface uses the Service Header

Special expresion for this interface:

Table 13. Attribute
Fieldname Expresion

type

context

STORAGE_HANDLING_UNIT

4.3.2. Datamodel

4.3.3. Enumeration

Field: package

Table 14. package
Meta Value Description Short Value

N1

Normkarton 1

N2

Normkarton 2

N3

Normkarton 3

N4

Normkarton 4

N5

Normkarton 5

N6

Normkarton 6

N7

Normkarton 7

BIN

Retourenmischwanne

HIGHBIN

gedeckelte Retourenmischwanne

BOX

Mischkiste

HIGHBOX

hohe Mischkiste

P1

N21 Höhe 1,65m inkl. Palette

P2

N22 Höhe 2,10m inkl Palette

P3

N23 Höhe 2,10m + die Ware steht seitlich über das Palettengrundmaß hinaus

P4

N24 Höhe 0,70m inkl. Palette

LARGE_FORMAT_PALETTE

Großpalette

LARGE_FORMAT_CORLETTE

Großcorlette

TROLLEY

Trolley

VIRTUAL_UNIT

Virtuelle Ladeinheit

BULKBOX

Bulkbox

Field: packageGroup

Table 15. packageGroup
Meta Value Description Short Value

CARTON

Normkarton

PALETTE

Palette

BIN

Wanne

BOX

Mischkiste

CORLETTE

Corlette

TROLLEY

Trolley

VIRTUAL_UNIT

Virtuelle Ladeinheit

BULKBOX

Bulkbox

Field: sample

Table 16. sample
Meta Value Description Short Value

NO_SAMPLE

kein Musterkarton

SAMPLE

Musterkarton

Field: perforation

Table 17. perforation
Meta Value Description Short Value

NO_PERFORATION

keine automatische Perforation

PERFORATION

automatische Perforation

UNKNOWN

nicht definiert

Field: damaged

Table 18. damaged
Meta Value Description Short Value

NOT_DAMAGED

kein Umpacker

DAMAGED

Umpacker

Field: orderRelatedHandlingUnit

Table 19. orderRelatedHandlingUnit
Meta Value Description Short Value

YES

Kundenauftrag vorhanden

NO

Kundenauftrag nicht vorhanden

Field: captureType

Table 20. captureType
Meta Value Description Short Value

QR

QR

OCR

OCR

MANUAL

manuell

4.3.4. Example

4.3.5. Schema

Table 21. Version FINE to Brain
Version Number File Published on Changes

previous version

1.0

Download

17.06.22

- Service Header Attribute wurden um Title, Format, Description und Example hinzugefügt

- Neue ENUM Werte bei "package" "UNKNOWN_PACKAGE", "VIRTUAL_PACKAGE"

- Neue ENUM Werte bei "packageGroup" "UNKNOWN_PACKAGEGROUP", "VIRTUAL_PACKAGEGROUP", "GERNERIC_PACKAGEGROUP"

previous version

1.0

02.06.22

current version

2.0

Download

20.09.22

- ServiceHeader Attriute spanId als optionales Feld einfügen

- ServiceHeader Attriute type umbenannt in eventType

- Service Header neues Objekt "metaData" einfügen und die Attribute "sender" in das neue Objekt verschieben

- bei Attribute "sender" das Schema des GlobalEnum "sender" verlinken

- ServiceHerder Attribute "instance" aus Schema entfernen wird über "sender" abgebildet

- object weight mit value und unit hinzugefügt

Interface FINE to Brain
{
  "$schema": "http://json-schema.org/draft-07/schema",
  "$comment": "Schema for filtered StorageHandlungUnit for Otto Topic",
  "$id": "https://doc.fine.gcp.osp-dev.de/registry/Stock/StorageHandlingUnitFineBrain.v2.0.schema.json",
  "type": "object",
  "properties": {
    "eventId": {
      "type": "string",
      "format": "uuid",
      "title": "The uniq eventId",
      "description": "Global uniq Id",
      "examples": [
          "00ce536f-923a-42f4-8128-be118faf1d87"
      ]
    },
    "traceId": {
      "type": "string",
      "format": "uuid",
      "title": "The uniq traceId",
      "description": "Global uniq Id for tracing the flow of events",
      "examples": [
          "00ce536f-923a-42f4-8138-33418faf1342"
      ]
    },
    "eventTime": {
      "type": "string",
      "title": "Time of occurrence of the event",
      "description": "Time at which this record(event) was technically generated in RFC3339 format. Strongly recommended: in UTC time.",
      "examples": [
          "2016-04-16T16:06:05.000+02:00"
      ]
    },
    "version": {
    "title": "The number of version schema",
    "description": "Number of version of this data structure. Only required if no $schema is specified!",
    "oneOf": [
        {
            "type": "string",
            "pattern": "\\d+\\.\\d{1,2}",
            "examples": ["1.01", "01.02"]
        },
        {
            "type": "integer",
            "examples": [1, 2]
        }
    ]
    },
    "context": {
      "type": "string",
      "title": "The context / business case",
      "description": "The context specified here means the business domain.",
      "examples": [
          "STORAGE_HANDLING_UNIT"
      ]
    },
    "eventType": {
      "type": "string",
      "title": "The type of operation",
      "description": "Typ der Nachricht",
      "examples": ["INSERT", "UPDATE", "DELETE"],
      "enum": ["INSERT", "UPDATE", "DELETE"]
    },
    "metaData":{
      "type":"object",
      "properties": {
        "senderSystem": {
          "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/system.v1.schema.json"
        }
      } 
    }, 
    "data": {
      "type": "object",
      "properties": {
        "location": {
          "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/warehouselocations.v1.schema.json"
        },
        "storageHandlingUnitId": {
          "type": "string",
          "description": "techn. Key einer Ladeinheit  / eines Gebindes",
          "examples": ["218530844"]
        },
        "storageHandlingUnitCode": {
          "type": "string",
          "description": "Business-Key einer Ladeinheit  / eines Gebindes",
          "examples": ["8522677816"]
        },
        "storageHandlingUnitParentId": {
          "type": "string",
          "description": "Falls das Gebinde schachtelbar ist, so ist hier der jeweilige Stapel zu referenzieren",
          "examples": ["85226778"]
        },
        "packageCode": {
          "type": "string",
          "description": "Kennzeichnung der Verpackungsnorm (z.B. Palette, Kolli N1 usw.)",
          "examples": ["Palette"]
        },
        "package": {
          "type": "string",
          "description": "Verpackungsnormen",
          "examples": ["P5", "N2"],
          "enum": ["UNKNOWN_PACKAGE", "VIRTUAL_PACKAGE", "N1", "N2", "N3", "N4", "N5", "N6", "N7", "P1", "P2", "P3", "P4", "P5", "BIN", "HIGHBIN", "BOX", "HIGHBOX", "LARGE_FORMAT_PALETTE", "LARGE_FORMAT_CORLETTE", "TROLLEY", "GENERIC_UNIT"]
        },
        "packageGroup": {
          "type": "string",
          "description": "Verpackungsnormgruppen",
          "examples": ["PALETTE", "CARTON"],
          "enum": ["UNKNOWN_PACKAGEGROUP", "VIRTUAL_PACKAGEGROUP", "GERNERIC_PACKAGEGROUP", "CARTON", "PALETTE", "BIN", "BOX", "CORLETTE", "TROLLEY"]
        },
        "sample": {
          "type": "string",
          "description": "Kennzeichnung, ob es sich um ein Gebinde handelt, das in der Musterziehung erstellt wurde",
          "examples": ["NO_SAMPLE", "SAMPLE"],
          "enum": ["NO_SAMPLE", "SAMPLE"]
        },
        "perforation": {
          "type": "string",
          "description": "Kennzeichnung, ob eine Ladeeinheit durch eine automatische Perforation perforiert werden darf",
          "examples": ["NO_PERFORATION", "PERFORATION", "UNKNOWN"],
          "enum": ["NO_PERFORATION", "PERFORATION", "UNKNOWN"]
        },
        "damaged": {
          "type": "string",
          "description": "Kennzeichnung, ob das Gebinde beim Wareneingang defekt war",
          "examples": ["NOT_DAMAGED", "DAMAGED"],
          "enum": ["NOT_DAMAGED", "DAMAGED"]          
        },
        "orderRelatedHandlingUnit": {
          "type": "string",
          "description": "Kennzeichnung für den Einzelteilprozess (z.B. bei Otto Market) zur Unterscheidung ob ein Auftrag für ein Artikel im Gebinde vorliegt",
          "examples": ["YES", "NO"],
          "enum": ["YES", "NO"]
        },
        "orderRelatedHandlingUnitCode": {
          "type": "string",
          "description": "Interne Werte der Vereinnahmung des ETV-Prozesses (z.B. Codes für Auftragsware, Schmuck, Präventiv etc.) des jeweiligen LVS",
          "examples": ["Schmuck"]
        },
        "captureType": {
          "type": "string",
          "description": "Art der Erfassung einer Ladeeinheit, aktuell nur für Kartons zutreffend.",
          "enum": ["QR","OCR","MANUAL"],
		  "examples": ["QR","OCR","MANUAL"]
        },
        "weight": {
          "type": "object",
          "properties": {
            "value": {
              "type": "integer",
              "description": "Gewichtswert"
            },
            "unit": {
              "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/unitWeight.v1.schema.json"
              }
          } 
        }  
      },
      "required": [
        "location",
        "storageHandlingUnitId",
        "storageHandlingUnitCode",
        "packageCode",
        "package",
        "packageGroup"
      ]
    }
  },
  "required": [
    "eventId",
    "traceId",
    "eventTime",
    "version",
    "eventType",
    "data"
  ]
}

4.3.6. Filter

Filter on source topic for location IN ('LOEHNE', 'ANSBACH', 'SONNEFELD', 'HALDENSLEBEN', 'SUEDHAFEN', 'OHRDRUF', 'ERFURT', 'MOSINA', 'LANGENSELBOLD')


11 - S11 Open Orders

Status

Version 0.1 published 20.06.2022

Approval

-

Comment

-

Assumption

_

1. Stakeholder

Role Application Responsible

Communication

Integration Layer

Leading App

FLASH

InterfaceOwner

Producer

BRAIN(COIN)

Consumer

FLASH

2. Business Context

Mit dem Service werden die offenen und reservierten Nachlieferungsbestände pro ItemOptionCommunicationKey zum Zeitpunkt des Reportzeitstempels geliefert

KPI_187_OFFENER_NAB_STUECK — Kennzahl aus COIN (KPI_187_OFFENER_NAB_STUECK):
Der offene Nachlieferungsbestand (NAB) bildet die tägliche Veränderung aller Auftragspositionen ab, die keinen lieferbaren Bestand aufweisen. Sobald ein lieferbarer Bestand vorliegt, erfolgt entweder die Fakturierung oder eine Umbuchung in den reservierten NAB, wenn aus anderen Gründen auf die Fakturierung gewartet werden soll.

KPI_190_RESERVIERTER_NAB_STUECK — Kennzahl aus COIN (KPI_190_RESERVIERTER_NAB_STUECK):
Der reservierte Nachlieferungsbestand (NAB) bildet die tägliche Veränderung aller Auftragspositionen ab, die zwar einen lieferbaren Bestand aufweisen, aber dennoch nicht sofort ausgeliefert werden sollen. Gründe für ein solches Warten können z.B. sein, dass ein Kunde einen bestimmten späteren Liefertermin wünscht (Wunschtermin) oder auf die Komplettierung einer Bestellung gewartet wird.

3. Informationflow

flow

4. Interface

4.1. Direction BRAIN COIN to FINE

4.1.1. Header

Special expresion for this interface:

4.1.2. Datamodel

Property Type Description

(Root)

object

Open Orders
this is use in topic 'flash.stock.openorders'

    COMMKEY*

integer

Item Option Communication Key

Minimum: 0
Maximum: 1000000000000000000

    DATUM*

string (date)

Datum
Date of latest NAB Change

Minimum Length: 10
Maximum Length: 10

    OFFENER_NAB*

integer

Offener NAB
Open backorders (Offener Nachlieferungsbestand): Der offene Nachlieferungsbestand (NAB) bildet die tägliche Veränderung aller Auftragspositionen ab, die keinen lieferbaren Bestand aufweisen. Sobald ein lieferbarer Bestand vorliegt, erfolgt entweder die Fakturierung oder eine Umbuchung in den reservierten NAB, wenn aus anderen Gründen auf die Fakturierung gewartet werden soll.

Minimum: 0

    RESERVIERTER_NAB*

integer

Reservierter NAB
Promissed backorders (reservierter Nachlieferungsbestand): Der reservierte Nachlieferungsbestand (NAB) bildet die tägliche Veränderung aller Auftragspositionen ab, die zwar einen lieferbaren Bestand aufweisen, aber dennoch nicht sofort ausgeliefert werden sollen. Gründe für ein solches Warten können z.B. sein, dass ein Kunde einen bestimmten späteren Liefertermin wünscht (Wunschtermin) oder auf die Komplettierung einer Bestellung gewartet wird.

Minimum: 0

    REPORTZEITSTEMPEL*

string (date-time)

Exportzeitstempel
Timestamp of export

    RUN_ID*

string

RUN_ID
Export ID of exporting system

Minimum Length: 16
Maximum Length: 16

4.1.3. Enumeration

Table 1. type
Meta Value Description Short Value

4.1.4. Example

Message COIN to FINE
{
    "COMMKEY": 1168078707,
    "DATUM": "2022-06-07",
    "OFFENER_NAB": 0,
    "RESERVIERTER_NAB": 1,
    "REPORTZEITSTEMPEL": "2022-06-22 03:04:39.394000",
    "RUN_ID": "20220622010436"
}

4.1.5. Schema

Table 2. Version COIN to FINE
Version Number File Published on Changes

current version

0.1

Download

20.06.22

Interface COIN to FINE
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "$id": "https://doc.fine.gcp.osp-dev.de/registry/Stock/OpenOrdersCoin.v0.1.schema.json",
  "title": "Open Orders",
  "description": "this is use in topic 'flash.stock.openorders'",
  "properties": {
    "COMMKEY": {
      "type": "integer",
      "minimum": 0,
      "maximum": 999999999999999999,
      "description": "Item Option Communication Key",
      "examples": [1168078707]
    },
    "DATUM": {
      "type": "string",
      "title": "Datum",
      "minLength": 10,
      "maxLength": 10,
      "description": "Date of latest NAB Change",
      "format": "date",
      "examples": ["2022-06-07"]
    },
    "OFFENER_NAB": {
      "type": "integer",
      "title": "Offener NAB",
      "minimum": 0,
      "description": "Open backorders (Offener Nachlieferungsbestand): Der offene Nachlieferungsbestand (NAB) bildet die tägliche Veränderung aller Auftragspositionen ab, die keinen lieferbaren Bestand aufweisen. Sobald ein lieferbarer Bestand vorliegt, erfolgt entweder die Fakturierung oder eine Umbuchung in den reservierten NAB, wenn aus anderen Gründen auf die Fakturierung gewartet werden soll.",
      "examples": [0]
    },
    "RESERVIERTER_NAB": {
      "type": "integer",
      "title": "Reservierter NAB",
      "minimum": 0,
      "description": "Promissed backorders (reservierter Nachlieferungsbestand): Der reservierte Nachlieferungsbestand (NAB) bildet die tägliche Veränderung aller Auftragspositionen ab, die zwar einen lieferbaren Bestand aufweisen, aber dennoch nicht sofort ausgeliefert werden sollen. Gründe für ein solches Warten können z.B. sein, dass ein Kunde einen bestimmten späteren Liefertermin wünscht (Wunschtermin) oder auf die Komplettierung einer Bestellung gewartet wird.",
      "examples": [3]
    },
    "REPORTZEITSTEMPEL": {
      "type": "string",
      "title": "Exportzeitstempel",
      "format": "date-time",
      "description": "Timestamp of export",
      "examples": ["2022-06-22 03:04:39.394000"]
    },
    "RUN_ID": {
      "type": "string",
      "title": "RUN_ID",
      "maxLength": 16,
      "minLength": 16,
      "description": "Export ID of exporting system",
      "examples": ["20220622010436"]
    }
  },
  "required": [
    "COMMKEY",
    "DATUM",
    "OFFENER_NAB",
    "RESERVIERTER_NAB",
    "REPORTZEITSTEMPEL",
    "RUN_ID"
  ],
  "type": "object"
}

12 - S12 Open Order Core

Status

Version 0.1 published 27.09.2022

Approval

-

Comment

Die Bewirtschaftung der Daten wird durch eine Abfrage in dem Source Stream von der Oracle Datenbank durchgeführt (Source Stream).

Assumption

_

1. Stakeholder

Role Application Responsible

Communication

Integration Layer

Leading App

FLASH

InterfaceOwner

Producer

CORE

Consumer

FLASH

2. Business Context

Die Nachlieferungen (Open Order, alias Kundenzusagen) werden täglich für die Umfuhren zur Replenishment/Nachlieferungen von Otto aus der Hamburger Straße an Südhafen benutzt.

3. Informationflow

flow

4. Interface

Aus dem VALUE Projekt entstandene (Pull nicht-standart) Schnittstelle. JSON Streams

4.1. Direction CORE to FINE

4.1.1. Header

4.1.2. Datamodel

Property Type Description

(Root)

object

Open Orders
this is use in topic 'flash.stock.openorders'

    COMMKEY*

integer

Item Option Communication Key

Minimum: 0
Maximum: 1000000000000000000

    DATUM*

string (date)

Datum
Date of latest NAB Change

Minimum Length: 10
Maximum Length: 10

    OFFENER_NAB*

integer

Offener NAB
Open backorders (Offener Nachlieferungsbestand): Der offene Nachlieferungsbestand (NAB) bildet die tägliche Veränderung aller Auftragspositionen ab, die keinen lieferbaren Bestand aufweisen. Sobald ein lieferbarer Bestand vorliegt, erfolgt entweder die Fakturierung oder eine Umbuchung in den reservierten NAB, wenn aus anderen Gründen auf die Fakturierung gewartet werden soll.

Minimum: 0

    RESERVIERTER_NAB*

integer

Reservierter NAB
Promissed backorders (reservierter Nachlieferungsbestand): Der reservierte Nachlieferungsbestand (NAB) bildet die tägliche Veränderung aller Auftragspositionen ab, die zwar einen lieferbaren Bestand aufweisen, aber dennoch nicht sofort ausgeliefert werden sollen. Gründe für ein solches Warten können z.B. sein, dass ein Kunde einen bestimmten späteren Liefertermin wünscht (Wunschtermin) oder auf die Komplettierung einer Bestellung gewartet wird.

Minimum: 0

    REPORTZEITSTEMPEL*

string (date-time)

Exportzeitstempel
Timestamp of export

    RUN_ID*

string

RUN_ID
Export ID of exporting system

Minimum Length: 16
Maximum Length: 16

4.1.3. Example

Message CORE to FINE
{
    "REPORTZEITSTEMPEL": 1664290260000,
    "COMMUNICATIONKEY": 1168078707,
    "ARTIKELNUMMER": 10998537,
    "ARTIKELGROESSE": 907,
    "FT": 65,
    "WBKZ": 1,
    "LIEFERTERMIN":7952342400000,
    "NAB_HHS": 12,
    "NAB_SUED": 1,
    "NAB_SONN": 0,
    "ONAB_HHS": 0
}

4.1.4. Schema

Table 1. Version CORE to FINE
Version Number File Published on Changes

current version

0.1

Download

27.09.22

Interface CORE to FINE
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "$id": "https://doc.fine.gcp.osp-dev.de/registry/Stock/OpenOrderCore.v0.1.schema.json",
  "title": "Open Order Core",
  "description": "the schema of the FINE Kafka topic 'flash.stock.openorder.core'",
  "properties": {
  "REPORTZEITSTEMPEL": {
    "type": "string",
    "title": "Exportzeitstempel",
    "format": "date-time",
    "description": "Timestamp of export",
    "examples": ["1664290260000"]
  },
    "COMMUNICATIONKEY": {
      "type": "integer",
      "minimum": 0,
      "maximum": 2147483647,
      "description": "Item Option Communication Key, a UUID for a sales/purchase item",
      "examples": [1168078707]
    },
    "ARTIKELNUMMER": {
      "type": "integer",
      "minimum": 0,
      "maximum": 2147483647,
      "description": "Sales/purchase item number",
      "examples": [1168078707]
    },
    "ARTIKELGROESSE": {
      "type": "integer",
      "minimum": 0,
      "maximum": 32767,
      "description": "Item size",
      "examples": [907]
    },
    "FT": {
      "type": "integer",
      "minimum": 0,
      "maximum": 32767,
      "description": "ZZZZZZZZZZ",
      "examples": [69]
    },
    "WBKZ": {
      "type": "integer",
      "minimum": 0,
      "maximum": 32767,
      "description": "ZZZZZZZZZZZZ",
      "examples": [1]
    },
    "LIEFERTERMIN": {
      "type": "string",
      "title": "Liefertermin",
      "format": "date-time",
      "description": "Timestamp of the estimated delivery date",
      "examples": ["1664290260000"]
    },
    "NAB_HHS": {
      "type": "integer",
      "title": "NAB Hamburger Strasse",
      "minimum": 0,
      "description": "Outstanding backorder quantity in the location Hamburger Strasse(Offener Nachlieferungsbestand).",
      "examples": [0]
    },
    "NAB_SUED": {
      "type": "integer",
      "title": "NAB Suedhafen",
      "minimum": 0,
      "description": "Outstanding backorder quantity in the location Suedhafen (reservierter Nachlieferungsbestand).",
      "examples": [1]
    },
    "NAB_SONN": {
      "type": "integer",
      "title": "NAB Sonnefeld",
      "minimum": 0,
      "description": "Outstanding backorder quantity in the location Sonnefeld (reservierter Nachlieferungsbestand).",
      "examples": [2]
    },
    "ONAB_HHS": {
      "type": "integer",
      "title": "ONAB Hamburger Strasse",
      "minimum": 0,
      "description": "Outstanding backorder quantity Hamburger Strasse",
      "examples": [0]
    }
  },
  "required": [
    "REPORTZEITSTEMPEL",
    "COMMUNICATIONKEY",
    "ARTIKELNUMMER",
    "ARTIKELGROESSE",
    "FT",
    "WBKZ",
    "LIEFERTERMIN",
    "NAB_HHS",
    "NAB_SUED",
    "NAB_SONN",
    "ONAB_HHS"
  ],
  "type": "object"
}

13 - S13 Major Customer Reservation

Status

Version 0.1 published 27.09.2022

Approval

-

Comment

Die Bewirtschaftung der Daten wird durch eine Abfrage in dem Source Stream von der Oracle Datenbank durchgeführt (Source Stream).

Assumption

_

1. Stakeholder

Role Application Responsible

Communication

Integration Layer

Leading App

FLASH

InterfaceOwner

Producer

CORE

Consumer

FLASH

2. Business Context

Major Customer Reservations dienen dem Vergleich der von Grosskunden reservierten AK Mengen mit den Beständen der Standorte Südhafen und Sonnefeld. Bei einer Defferenz wird die entsprechende Menge in die Bestandsumfuhr mit aufgenommen.

3. Informationflow

flow

4. Interface

4.1. Direction Core to FINE

4.1.1. Header

4.1.2. Datamodel

Property Type Description

(Root)

object

Open Orders
this is use in topic 'flash.stock.openorders'

    COMMKEY*

integer

Item Option Communication Key

Minimum: 0
Maximum: 1000000000000000000

    DATUM*

string (date)

Datum
Date of latest NAB Change

Minimum Length: 10
Maximum Length: 10

    OFFENER_NAB*

integer

Offener NAB
Open backorders (Offener Nachlieferungsbestand): Der offene Nachlieferungsbestand (NAB) bildet die tägliche Veränderung aller Auftragspositionen ab, die keinen lieferbaren Bestand aufweisen. Sobald ein lieferbarer Bestand vorliegt, erfolgt entweder die Fakturierung oder eine Umbuchung in den reservierten NAB, wenn aus anderen Gründen auf die Fakturierung gewartet werden soll.

Minimum: 0

    RESERVIERTER_NAB*

integer

Reservierter NAB
Promissed backorders (reservierter Nachlieferungsbestand): Der reservierte Nachlieferungsbestand (NAB) bildet die tägliche Veränderung aller Auftragspositionen ab, die zwar einen lieferbaren Bestand aufweisen, aber dennoch nicht sofort ausgeliefert werden sollen. Gründe für ein solches Warten können z.B. sein, dass ein Kunde einen bestimmten späteren Liefertermin wünscht (Wunschtermin) oder auf die Komplettierung einer Bestellung gewartet wird.

Minimum: 0

    REPORTZEITSTEMPEL*

string (date-time)

Exportzeitstempel
Timestamp of export

    RUN_ID*

string

RUN_ID
Export ID of exporting system

Minimum Length: 16
Maximum Length: 16

4.1.3. Example

Message CORE to FINE
{
    "NAME": "LASCANA-RESERV",
    "COMMKEY": 1168078707,
    "ID_RESERVATIONASSIGNMENT":20,
    "ACTUALQUANTITY": 0,
    "DELIVEREDQUANTITY": 1,
    "TARGETQUANTITY": 1,
    "COMMITEDQUANTITY": 0,
    "TIMESTAMPEXPORT": "2022-06-07"
}

4.1.4. Schema

Table 1. Version CORE to FINE
Version Number File Published on Changes

current version

0.1

Download

27.09.22

Interface CORE to FINE
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "$id": "https://doc.fine.gcp.osp-dev.de/registry/Stock/MajorCustomerReservation.v0.1.schema.json",
  "title": "Major Customer Reservation",
  "description": "the schema of the FINE Kafka topic 'flash.stock.majorcustomerreservation.core'",
  "properties": {
    "NAME": {
      "type": "string",
      "title": "Name",
      "description": "Name",
      "examples": ["LASCANA-RESERV"]
    },
    "COMMKEY": {
      "type": "integer",
      "minimum": 0,
      "maximum": 999999999999999999,
      "description": "Item Option Communication Key",
      "examples": [1168078707]
    },
  "ID_RESERVATIONASSIGNMENT": {
    "type": "integer",
    "minimum": 0,
    "maximum": 32767,
    "description": "Id of the reservation assignment",
    "examples": [20]
  },
    "ACTUALQUANTITY": {
      "type": "integer",
      "title": "Actual Quantity",
      "minimum": 0,
      "maximum": 2147483647,
      "description": "",
      "examples": [0]
    },
    "DELIVEREDQUANTITY": {
      "type": "integer",
      "title": "Delivered quantity",
      "minimum": 0,
      "maximum": 2147483647,
      "description": "ZZZZZZZZZZZZZZZZZZZZZZZZZZZ",
      "examples": [3]
    },
    "TARGETQUANTITY": {
      "type": "integer",
      "title": "Target Quantity",
      "minimum": 0,
      "maximum": 2147483647,
      "description": "ZZZZZZZZZZZZ",
      "examples": [3]
    },
    "COMMITEDQUANTITY": {
      "type": "integer",
      "title": "Commited Quantity",
      "minimum": 0,
      "description": "ZZZZZZZZZZ",
      "examples": [3]
    },
    "TIMESTAMPEXPORT": {
      "type": "string",
      "title": "Exportzeitstempel",
      "format": "date-time",
      "description": "Timestamp of export",
      "examples": ["2022-06-22 03:04:39.394000"]
    }
  },
  "required": [
    "NAME",
    "COMMKEY",
    "ID_RESERVATIONASSIGNMENT",
    "ACTUALQUANTITY",
    "DELIVEREDQUANTITY",
    "TARGETQUANTITY",
    "COMMITEDQUANTITY",
    "TIMESTAMPEXPORT"
  ],
  "type": "object"
}

14 - S16 HRL Haldensleben

Status

Version 1.0 published 27.09.2024

Approval
Comment
Assumption

_

1. Stakeholder

Role Application Responsible

Communication

Integration Layer

Leading App

FLASH

InterfaceOwner

FLASH

Producer

MFC TUP Thomas und Partner

Consumer

FLASH

2. Business Context

Mit dem Service werden die Statusinformationen der Regalbediengeräte aus dem Hochregallager in Haldensleben übermittelt

Events:

STATUS_CHANGE, PROCESS_COMPLETED, OVERFLOW

3. Informationflow

Partner Direction FINE-Service Topic/API Description Status

MFC

send

Stock

stock.hrlhaldenslben

hrlhaldenslben.mfc.v1

planned

FLASH

receive

Stock

stock.hrlhaldenslben

hrlhaldenslben.mfc.v1

planned

Diagram

4. Interface

4.1. Direction WMS to FINE

4.1.1. Header

This interface uses the Service Header

Special expresion for this interface:

Table 1. Attribute
Fieldname Expresion

context

MFC_HRL_HALDENSLEBEN

4.1.2. Datamodel

Unresolved directive in <stdin> - include::autogenerated-schema-tables/HrlHaldensleben.v1.0.schema.adoc[]

4.1.3. Enumeration

Field: Type

Table 2. type
Meta Value Description Short Value

4.1.4. Example

Message WMS to FINE
{
    "eventId": "00ce536f-923a-42f4-8128-be118faf1d87",
    "traceId": "00ce536f-923a-42f4-8128-be118faf1d85",
    "spanId": "00ce536f-923a-42f4-8128-be118faf1d85",
    "eventTime": "2022-03-31T12:41:06.036+01:00",
    "version": "1.0",
    "context": "MFC_HRL_HALDENSLEBEN",
    "eventType": "PROCESS_COMPLETED",
    "metaData" : {
        "senderSystem": "MFC_HRL_HHSTR"
    },
    "data": {
        "processBusinessTime":"2022-03-31T12:41:06.036+01:00",
        "businessEventCode": "xxxxxxx",
        "businessEventType": "PROCESS_COMPLETED",
        "transportUnitCode": "1",
        "aisle": "4",
        "mfcTargetCode": "091AKU___",
        "cartonQuanity": 10,
        "location": "HALDENSLEBEN"     

    }
}

4.1.5. Schema

Table 3. Version WMS to FINE
Version Number File Published on Changes

coming version

1.0

Download

27.09.24

Interface WMS to FINE
{
    "$schema": "http://json-schema.org/draft-07/schema",
    "$comment": "Schema for MFC events with a transport unit",
    // "$id": "https://doc.fine.gcp.osp-dev.de/registry/stock/HrlHaldensleben.v1.0.schema.json",
    "type": "object",
    "properties": {
        "eventId": {
            "type": "string",
            "format": "uuid",
            "title": "The uniq eventId",
            "description": "Global uniq Id",
            "examples": [
                "00ce536f-923a-42f4-8128-be118faf1d87"
            ]
        },
        "traceId": {
            "type": "string",
            "format": "uuid",
            "title": "The uniq traceId",
            "description": "Global uniq Id for tracing the flow of events",
            "examples": [
                "00ce536f-923a-42f4-8138-33418faf1342"
            ]
        },
        "spanId": {
            "type": "string",
            "title": "The eventId of previous record or batchId",
            "description": "Optionally, if this record (event) is one of a sequence of records and the order is important, then here is the id of the previous record (event), recommended as uuid, Special usecases can be specify for some interfaces",
            "examples": [
                "00ce536f-923a-42f4-5463-32a41877b3c2"
            ]
        },
        "eventTime": {
            "type": "string",
            "title": "Time of occurrence of the event",
            "description": "Time at which this record(event) was technically generated in RFC3339 format. Strongly recommended: in UTC time.",
            "examples": [
                "2016-04-16T16:06:05Z"
            ]
        },
        "version": {
            "title": "The number of version schema",
            "description": "Number of version of this data structure. Only required if no $schema is specified!",
            "oneOf": [
                {
                    "type": "string",
                    "pattern": "\\d+\\.\\d{1,2}",
                    "maxLength": 6,
                    "examples": [
                        "1.01",
                        "01.02"
                    ]
                },
                {
                    "type": "integer",
                    "minimum": 1,
                    "maximum": 99999,
                    "examples": [
                        1,
                        2
                    ]
                }
            ]
        },
        "context": {
            "type": "string",
            "title": "The context / business case",
            "description": "The context specified here means the business domain.",
            "examples": [
                "MFC_HRL_HALDENSLEBEN"
            ]
        },
        "eventType": {
            "description": "This attribute is to be used if the data set can have more than one characteristic. E.g. goods delivery start or goods delivery end. The possible values are to be co-ordinated here as Enum between the partners.",
            "type": "string",
            "title": "Event Type",
            "examples": [
                "STATUS_CHANGE",
                "PROCESS_COMPLETED",
                "OVERFLOW"
            ]
        },
        "metaData": {
            "type": "object",
            "title": "additional meta information",
            "description": "optional, can be used with different characteristics for technical data per interface",
            "properties": {
                "senderSystem": {
                    "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/system.v10.schema.json"
                }
            },
            "additionalProperties": false,
            "required": [
                "senderSystem"
            ]
        },
        "data": {
            "type": "object",
            "description": "contains the process data and the quantity information for a given process",
            "properties": {
                "processBusinessTime": {
                    "description": "business timestamp of the process",
                    "type": "string",
                    "format": "date-time",
                    "title": "business process time",
                    "examples": [
                        "2022-03-22T09:52:00.000+01:00"
                    ]
                },
                "businessEventCode": {
                    "description": "Eventcode, can be decoded with reference data",
                    "type": "string",
                    "title": "eventCode"
                },
                "businessEventType": {
                    "description": "Describes the EventCode to a process or statusevent",
                    "type": "string",
                    "title": "Event Type",
                    "examples": [
                        "STATUS_CHANGE",
                        "PROCESS_COMPLETED",
                        "OVERFLOW"
                    ]
                },
                "transportUnitCode": {
                    "description": "Code of the transport unit, e.g. the stacker crane",
                    "type": "string",
                    "title": "transportUnitCode"
                },
                "aisle": {
                    "description": "Aisle, in which the event happened",
                    "type": "string",
                    "title": "transportUnitCode"
                },
               "mfcTargetCode": {
                    "description": "Code of the MFC Target, reference data needed",
                    "type": "string",
                    "title": "transportUnitCode"
                },
                "cartonQuanity": {
                    "description": "if the event contains a quanity, e.g. overflow at handover station, then the overflow quantity should be transmitted",
                    "type": "integer",
                    "title": "cartonQuanity"
                },
                "location": {
                    "$ref": "https://doc.fine.gcp.osp-dev.de/registry/MetaData/warehouselocations.v1.schema.json"
                }
            },
            "additionalProperties": false,
            "required": [
                "processBusinessTime",
                "eventCode",
                "transportUnitCode",
                "location"
            ]
        }
    },
    "additionalProperties": false,
    "required": [
        "eventId",
        "traceId",
        "eventTime",
        "version",
        "eventType",
        "data"
    ]
}