SAP Extended Warehouse Management (EWM) Material Flow System (MFS) (Connecting A PLC)
SAP Extended Warehouse Management (EWM) Material Flow System (MFS) (Connecting A PLC)
Introduction
1 Introduction
SAP EWM allows direct control of automatic storage retrieval in the warehouse. This dispenses with any
additional warehouse control systems between SAP and programmable logic controllers (PLC). SAP EWM
communicates directly with the control level.
Besides dispensing with an additional software system, this offers the benefit of a close connection between
the material flow and warehouse management. Thus, warehouse management system (WMS) strategies can
be adjusted to the condition and utilization of automatic storage retrieval more easily. Additionally, the WMS
provides the material flow system (MFS) with functions and data, for destination inquiries, for example. In this
way, system mapping represents physical movements in the warehouse more closely.
The figure above shows a 3-aisle high rack storage area. A transfer car connects the prestorage area with the
infeed and outfeed conveyors of the three aisles. The prestorage area contains an automatic identification point
(ID point) and a pick point.
These devices are usually controlled by means of real-time systems1, which monitor and switch the sensors
and actuators involved (light barriers, switches, motors and so on). These real-time systems obtain their orders
from the superordinate warehouse control level which derives them from the warehouse requests.
Crucial differences between automated warehouses and warehouses operated manually or by radio frequency
are:
The resources are passive (as in the case of stacker cranes)
Capacity bottlenecks must be watched and controlled much more closely
Technical malfunctions must be taken into consideration
Logistical malfunctions must not block the material flow (for example: bin occupied, unknown HU on
automatic storage retrieval system)
1
PCs can also take on such functions in places. They may be connected to EWM in the same way as programmable logic controllers and
as such, "PLC" always also refers to equivalently deployed PC controllers in the following.
Architecture Variants
The following architecture variants are normally available for connecting automated warehouses to an SAP
system:
The scenario presented here should explain how an automated warehouse is connected to SAP EWM.
The system consists of an automatic high rack storage area with three aisles and automated put away and
removal. Each aisle is equipped with a stacker crane (SC). A transfer car (TCAR) links the put away and picking
area with the high rack storage area.
The storage bins are of single depth, TCARs and SCs each have one load handling attachment (LHA).
A scanner is installed at the ID point. At the same time, the handling unit (HU) is weighed there and its type
determined using base recognition and contour control. At this point, the PLC reports pallets to the EWM
system. The EWM system is to assign a storage bin and use that to derive a corresponding conveyor command
for the PLC. Faulty pallets are to be diverted to the clarification bin automatically.
When a pallet arrives at the transfer point before the SC, its label is scanned once more. This is meant to
prevent put away errors caused by order misalignment.
For picking, the HUs from which you want to remove material must be moved to the pick point and subsequently
returned to stock. Whole (remaining) quantities are removed by means of a separate conveyor next to the pick
point. Pick-HUs are also transferred there by means of the TCAR.
Putaway Process
In the goods receipt area, the delivered quantities are packed in HUs and equipped with bar code labels. The
bar code contains the HU number. One of the employees places the packed HUs onto the putaway conveyor.
The PLC moves it to the ID point anonymously. The ID point comprises a number of devices connected to the
PLC, such as
A scanner
A scale
A contour control
The PLC sends a logon telegram to the EWM system, containing the
HU identification
HU type
Weight
Error code
Faulty HUs are to be diverted to the clarification conveyor by the EWM system.
The MFS assigns a storage bin in accordance with the put away strategy and directs the HU to the appropriate
aisle. During this, the capacity of the infeed conveyor in front of the aisle should be taken into account, to
prevent the TCAR from being blocked.
On the infeed conveyor, the HUs are once more directed past a scanner. The PLC sends another logon
telegram. If there are any errors (offset), the HU must be transferred to the outfeed conveyor by means of the
SC and diverted to the clarification bin.
The SC is equipped with a sensor system that can recognize whether a bin is occupied. If this is the case, the
SC will confirm the transport order by issuing the error Bin occupied. The MFS is then required to assign an
alternative bin or divert the HU to the clarification bin.
Partial stock picks must be transported to the pick point. Here, a picking dialog takes place. When the goods
arrive at the pick point, the orders available for it should be displayed to the picker. The picker places the
quantities required on empty pallets and generates pick HUs. These are transported to the GI conveyor by
means of the transfer car. For withdrawal HUs that need to be returned to stock, a new storage bin search is
carried out at the point where they are transferred to the TCAR.
With a view to the processes in the example warehouse, we can set out the following general requirements for
a material flow control system.
Communication Requirements
The MFS must be able to communicate with a number of controllers in an efficient and reliable way. Problems
caused by link failures must be identified and solved automatically. The system must ensure that each message
is processed exactly once. Errors or delays in the processing of a message must not block the sender. The
communication interface should be suitable for different technical protocols (such as TCP/IP, RFC1006, RK512,
3964R) and different message types.
Errors occurring in the material flow, such as No Read at the scanner, must be treated in such a way as to
avoid any obstructions to the material flow in the warehouse.
For error situations, there must be logs enabling the user to trace the path taken by individual HUs. Telegrams
must be logged for troubleshooting and analysis purposes.
For differences between the logical status of the data and the physical status, the system must provide functions
enabling the user to synchronize both, such as posting changes for a HU, canceling an order, creating an order
manually and so on.
It must be possible to block individual leg stages and to interrupt communication with individual controllers
temporarily.
Events that call for manual interference must be made available to the control station and there must be a way
of directing this information to individual persons or functions.
The following section provides an overview of the functions available in SAP EWM MFS.
The following functions have been implemented in SAP EWM for communicating with controllers:
Telegram communication via TCP/IP using an RFC adapter. (from EWM 9.4 also without RFC adapter)
Securing communication by means of sequence numbers, telegram confirmation in SAP EWM
Automatic connection monitoring (automatic restart of the communication channel if necessary)
Options for starting and stopping connections
Telegram log
Configurable telegram formats and identifiers
Configurable action modules for reacting to incoming telegram types
Status overview for communication interfaces
Sequential communication for each communication channel
Parallel communication across communication channels with one or more controllers.
Unlike in the predecessor products (TRM, SAP EWM 5.0), both communication partners (both SAP EWM and
PLC) can now initiate a communication process.
Pull principle: PLC queries SAP EWM, SAP EWM replies.
Push principle: SAP EWM triggers an action, PLC carries it out and replies.
RFC Adapter
SAP EWM sends and receives telegrams on the basis of RFC calls. For the technical transfer of these
telegrams from RFC to the PLC and from the PLC to RFC, you need an adapter. This adapter has the purpose
of passing on the telegrams unchecked. It does not save them, supplement them or follow their status, nor
does it check whether they have been sent successfully or inform the sender in the case of failure.
The logic for securing transmission is integrated both in SAP EWM and in the PLC. Parameters for the
connections between SAP EWM and PLC are also set at the communication end points.
The logic for securing the connection and the adapter parameters only include the following:
The adapter actively ensures that it can be called from SAP – in other words, it checks at certain intervals
whether its connection to SAP is still active and logs back onto the SAP system if necessary.
For this, it needs access to SAP. The access data must be set in the adapter.
For other types of technology (such as RK512), you can and must use special adapters. The interface for these
is described in the appendix.
SAP EWM offers the following features for controlling the material flow by means of automated warehouses:
Configurable paths (storage control)
Configurable capacity limits
Consideration of equipment faults
Scanner connections
Automatic ID Point
Connection with conveyor lines
The concept for these communication points is an important aspect of warehouse planning. More
communication points lead to closer material flow tracking in EWM, but also to more intensive communication
and consequently more load on the EWM system. For each stage between communication points, a warehouse
task is created.
Avoiding Blocks
It is important, especially for vehicles that the control system take account of the capacity limits on pick-up and
drop-off points. Once a load has been picked up, the system must be able to drop it safely at its destination.
SAP EWM can avoid dead lock situations and is able to react to availability events spontaneously.
2
In the context of automated warehouses, the term ID point mostly refers to the point of storage bin allocation. Prepared and registered
HUs are identified automatically.
Equipment Faults
If parts of the equipment are unavailable, this can either be reported by PLC telegram or set manually at the
control station. The EWM system then holds back orders affecting those parts of the equipment. Alternative routes
can be stored in Customizing. You have to implement a Business Add-In (BAdI) to determine the way and extent
to which they are to be used.
Bin Errors
Logical bin errors (a destination bin is physically occupied due to a posting or material flow error, a source bin
is empty) are automatically identified by means of special sensors on the stacker cranes and reported to the
EWM system. The EWM can react to this automatically.
For HUs whose destination bin is occupied, SAP EWM equipped to determine an alternative destination. This
can either be a firmly defined alternative bin/clarification bin (to be stored in the resource master data) or a
storage bin that has been newly determined by means of a putaway strategy (BAdI implementation).
If the error Bin empty occurs, the corresponding order is cancelled on the grounds that it cannot be executed.
The Warehouse Cockpit provides an overview of the current state of the PLC communication channels. The
following screen represents a snapshot of the status of the 4 controllers for the example warehouse:
The RFC adapter is not registered (first column).
For this reason, none of the four controllers can be reached (second column).
There are no outbound telegrams in the EWM outbound buffer (third column).
There are no faulty telegrams in the EWM inbound buffer. All telegrams received before the connection
broke off or stopped have been processed (fourth column).
There are no malfunction reports for any of the resources connected via PLC (fifth column).
The system is currently running through the process responsible for repeating unconfirmed telegrams at
intervals and for checking the connection by means of LIFE telegrams.
The warehouse management monitor is the central instrument for the warehouse activity monitor. It offers you
various functions enabling you to monitor the warehouse and react to problems. This relates to both the objects
in the warehouse (communication points, segments, resources) and the HUs with their corresponding and the
telegrams exchanged on their behalf.
Telegram Log
The Alert Monitor is another important instrument. All important information, warning and error messages that
occur during warehouse operation are collected here.
The monitor is used by various functions in SAP EWM. You can limit the display to messages relevant for the
MFS.
Alerts are normally generated by EWM exceptions. You can establish a link between EWM exceptions and
other actions, such as notifying a control station employee by text messaging (SMS).
The largest part of MFS processing takes place in the background. This makes it all the more important to be
able to retrace how a certain error situation came about by means of processing logs.
The processing modules lay down granular accounts of their steps in the application logs. These can be
evaluated on the basis of dates and times. You can also find processing times here.
The majority of problems occurring in an automated warehouse can be solved by the system automatically,
such as by diverting unidentifiable HUs (NOREAD at the scanner). Orders for unprepared leg stages or devices
are held back. Some BAdIs enable you to use alternative routes in cases of overload or malfunction. HUs
reported at unexpected locations are reposted in the background and, if possible, transported to their original
destination without user interference.
There are, however, situations the program cannot solve by itself. These are usually deviations on the three
levels:
Physical state
Logical mapping in the PLC
Logical mapping in SAP EWM
SAP EWM provides authorized employees with a number of functions enabling them to amend the situation:
You can resend telegrams that have already been confirmed
You can confirm warehouse tasks manually
You can repost HUs to other locations from where they can be transported further
You can cancel orders
You can divert HUs from the system
You can lock communication points, segments or resources
You can stop communication for individual channels
3 MFS Basics
In order to keep the real-time systems PLC and EWM separate, you should avoid synchronous calls between
them. The interface is message-based. In order to ensure that each order and each confirmation is transmitted
exactly once, SAP EWM implements a communication protocol. This protocol must also be implemented on
the PLC side.
Communication Principle
The protocol is based on telegram sequence numbers: Each telegram is assigned an unambiguous number by
the sender. If these sequence numbers are used in the appropriate way, the following two potential problems
are avoided:
Telegram loss
Double processing
Avoiding telegram loss: the recipient acknowledges each telegram it receives. To do this, it returns it to the
sender with the original sequence number. The sender repeats telegrams for which it has not received an
acknowledgement within a certain period. It only sends the next telegram after the previous one has been
acknowledged.
Avoiding double processing: The recipient uses the sequence number to determine whether it has already
received the telegram or not. Telegrams received previously are confirmed but not processed. The sender
never sends a new telegram with the same sequence number as the previous one.
Both partners allow resetting the sequence number for the special purpose of setting up or synchronizing
communication.
Exceptions in Communication
Irregularities or errors in communication are handled as follows:
Conveyor Lines
SAP EWM provides you with the following message types for controlling conveyor lines:
SAP EWM: Warehouse task (HU – CP – FROM – TO)
PLC: Warehouse task confirmation (HU – CP – FROM – TO, with error code if appropriate4)
SAP EWM: Cancellation request for warehouse task (HU – FROM – TO)
PLC: Cancellation reply for warehouse task (HU – FROM – TO, with error code if appropriate)
PLC: Scanner message (HU – CP, with error code if appropriate)
SAP EWM: Status request for communication point, segment or segment group (CP/SEG/SEGGR)
PLC: Status message (ready/malfunctioning) for communication point, segment or segment group
(CP/SEG/SEGGR)
3
The sender can only “escape” this situation if a) the expected acknowledgement telegram arrives or b) by manual interference,
(by deleting the unacknowledged telegram from the outbound buffer). The telegram is then considered as sent. If the recipient has not
received it, you can send it manually from the telegram log (with a new sequence number).
4
In the case of negative confirmation, EWM needs to be able to determine if the error occurred at the source or at the destination (in other
words, whether the HU has left its source location or not). This is shown by the entry in the field “CP”, the “reporting” communication point.
If the CP field contains the source, the HU has not left its source location.
Resources
EWM provides the following message types for controlling resources:
Status:
SAP EWM: Status request for resource
PLC : Status message (ready/malfunctioning) for resource
Order cancellation:
SAP EWM: Cancellation request for warehouse task (HU – Resource – FROM – TO)
PLC: Cancellation reply for warehouse task (HU – Resource – FROM – TO, with error code if appropriate)
Note:
The standard function modules determine the meaning of a telegram not only on the basis of the telegram type
(telegram ID) but also on the basis of existing field entries. Thus, it is especially important for the different types
of order confirmations from PLC to SAP EWM that exactly the specified key fields are filled. The messages for
half movements in EWM are not organized in the following way:
Incorrect example:
Correct example:
During “pulling”, the “Destination” telegram field is empty, whereas the “Source” field is empty during “pushing”.
PLC: Routing Request - Case Conveyor System similar to scanner message Telegram
SAP EWM: Planned Routing - Case Conveyor System (HU – CP – FROM – TO) depending on CP and Routing
Table
PLC: Actual Routing – Case Conveyor System (HU – CP – FROM – TO) is used as an information to SAP EWM
to which destination the PLC is shipping the HU
Path Concept
3.3.1 Pallet Conveyor System and Rack Feeder
You can divide warehouse tasks into smaller steps using layout oriented storage control. You can achieve this
by defining intermediate destinations for certain source-destination relationships. If no intermediate destination
has been defined, the EWM system assumes that the warehouse task can be executed directly.
If you have defined an intermediate destination, the EWM system sets the status of the affected warehouse
task to inactive and creates another, active warehouse task for the intermediate destination. Once this has
been executed, the EWM system adjusts the current location in the passive warehouse task accordingly and
checks whether you have defined a further intermediate destination. The EWM system only activates the
inactive warehouse task if no further intermediate location has been defined.
If the chosen PLC Mode is one of the Case Conveyor possibilities. There can be, but not must be, only one
Warehouse Task from “start” to the “End” present for the whole movement. This WT will be read only at every CP
the HU is arriving at. The EWM System checks the Routing Table to find out the next destination in dependency
of the actual CP and the logical EWM Destination or Activity Area stored in the read WT.
If no entry will be found in the Routing Table the System falls back to the Layout Oriented Structure.
For monitoring purposes you can use the asynchronous Actions to execute immediate confirmation WT which
confirms the HU to the CP and correct the FROM position in the active WT.
Using very fast case conveyor there is the preference not to use Warehouse Tasks to move the HU from one CP
to another. After the HU check at Identification Point the HU can be moved by the EWM-MFS System just using
the logical EWM Destinations (OK, Default, Error…) to route the HU to the Aisle Pick Point. Not till then you will
need a WT to the final destination bin will be created with function (/SCWM/MFSACT_CASE_RSRC_PP)
If you also use a Rack Feeder with more than one HU place on it. You will be able to tell to the PLC all the HU
Numbers with only one telegram. For that you must fill out the BAdI (Determination of Handling Units used in
Telegrams) because of, the standard doesn’t know, how many HU Numbers will be sent with that one Telegram
and the HU Numbers starting by the second HU has to be filled into the Telegram Structure.
The possibility to move HUs correct across the conveyor without any Warehouse Task leads to a new and very
quick putaway strategy implemented since version 9.2. (chapter 3.3.2.4)
The Routing Table is a simple Customizing Table in which the System reads the next destination for an HU
depending on the actual CP and logical EWM Destination (will also work without any active WT) or Activity Area
stored in the active WT.
Example of Logical EWM Destinations. The Destination will be set by several synchronous Actions at specific
CPs after the Telegram incoming.
Use
In this Customizing activity, you define the logical destination for a programmable logic controller (PLC). A logical
destination for a PLC could be either a logical direction or an area where the handling unit (HU) has to be moved.
Example
At a decision point the system checks if the values of the HU are correct. The PLC needs to determine whether
there are any problems with the HU. If there are no problems, the logical destination 'OK' is used. Otherwise the
logical destination 'ERROR' is used. The logical destination in EWM will be mapped to the logical destination of the
PLC and sent to the PLC.
Due to a need of very quick HU movements for cases on a conveyor there is a new putaway strategy
implemented.
The main idea is to have a new putaway strategy explicitly for MFS. The focus is to have a different approach
than other existing putaway strategies. Today’s putaway strategies do not consider physics already in the first
place. Instead it is possible to check this later on, which is often time consuming. The new putaway strategy shall
a) Work without the necessity to create a concrete warehouse task upfront and
b) Keep even rough directions for HUs in a new table, which also acts as collector of workload for certain
areas in the warehouse and
c) Allow an iterative approach to find the final destination from coarse-grained to fine-grained and
d) Consider the layout of the automated warehouse as well as capacities, workload, MFS exceptions,
product/batch equal distribution.
e) Allow storing pre-picked pallets in multi-deep storage by using the consolidation group
(=customer/delivery) – priority 2
Product WTs are not supported. Other putaway strategies ignore the new logic.
To fulfill point a) and b) the system has to keep track of proposed HU movements without the need to create
warehouse tasks. For this purpose a new database table is introduced that contains these movements. Please
keep in mind that these movements do not necessarily contain a specific destination storage bin. It can also be
only a direction. Moreover, it is not carved in stone, yet. Instead the idea is to see this as a proposal based on the
current context – it is also called soft reservation.
Besides the PLC, HU number and proposed destination also the needed capacity (in the sense of HUs) is kept in
this table. This is needed to get a quick load overview for possible destinations in an automated warehouse.
The content of this table has to be refreshed as soon as an HU is touched by MFS coding. This means that it has
to be kept in the most current state all the time. So, every touch point for an HU should either update an entry or
delete an entry. WT confirmations to a final storage bin delete entries in this table.
For sure the content of this new table has to be evaluated during destination determination with the new putaway
strategy.
This strategy require some information about accessibility of warehouse parts like aisles, storage types and
intermediate points from the actual CP.
This customizing view has to be filled: (here an example, see Layout 7.5 )
PLC of Intermediate CP
PLC of the intermediate communication Point
Storage Type
From actual CP accessible Storage Type
In the Case Conveyor Systems is still the possibility to set the capacity but it will not be considered by the
Standard.
Availability Events
To ensure further transport if a capacity has become available again after a stop, the EWM system checks the
communication points and resources affected by an availability event. You can choose and set these in the
Customizing for each communication point.
3.5 Strategies
SC Interleaving
The EWM system assigns each stacker crane with one put away and one stock removal in turn in order to
reduce empty routes. (This function needs to be activated in Customizing.)
From this limited order pool, the system chooses one order for the next preferred direction (put away/stock
removal) for each crane.
If there are several orders for the currently preferred direction, the system chooses the one with the highest
priority and, if there are several of these, the one with the lowest warehouse order number.
Multi-Depth Storage
Available since EWM version 9.2
4 PLC Communication
With EWM 9.4 and NetWeaver 7.50 there is planned a direct Socket communication between the PLC
and EWM. (Q4/2016) The connection requirements and customizing steps will be improved a little.
RFC Adapter
Configure and start the RFC adapter
Test
Connection check
Test with EWM simulation module (internal to SAP)
Test with external simulation program
SAP EWM handles telegrams internally by means of a comprehensive structure that contains the superset of
the data fields provided in the standard for communicating with controllers. The specific telegram structures
are converted from or to /SCWM/S_MFS_TELETOTAL before they are sent or after they are received. This is
achieved by means of identical names for the fields. Therefore, it is important that the field names you create
for the specific telegrams are the same as the names of the corresponding fields in the
/SCWM/S_MFS_TELETOTAL structure. All data types, including figures and units of measurement, are
communicated as signs (no packed fields). Field lengths may differ.
Structure /SCWM/S_MFS_TELETOTAL:
If you need any fields not contained in this structure, you have to extend the include structure
/SCWM/INCL_EEW_MFSTELE. Its data fields then also have the same names and are thus transferred from
or to the relevant PLC telegram.
In the Data Dictionary, you have to define the telegram structures to be used in communicating with the
controllers. These structures should be created in the customer name space. To do this, you can call the
Repository Browser in transaction SE80 (ABAP Workbench Object Navigator). You need a structure for the
telegram header and one for the actual telegram data. We recommend that you use the same structure for all
telegram types.5
5
Example: A PLC reads 212 bytes in a cycle. In most cases it will not be worth defining shorter structures for shorter telegram types if the
longest structure you need is shorter than 213 bytes.
There are a number of parameters for the PLC interface. In order to only have to define these settings once for
a number of similar controllers, you can use interface types. This is especially useful for stacker cranes as there
are usually several of them that are addressed in the same way.
… assign this type to the PLC objects and relate all further settings to the interface type rather than the PLC.
Each telegram is identified by a telegram type. This is a character string which informs the recipient of the
telegram’s meaning. If you determine the telegram structure to be used in each case at the same time, then
this Customizing activity is called Define Telegram Structure:
Use the option “for PLC Interface Type” (“for PLC” is used to ensure compatibility with the earlier SAP EWM5.0)
…
… and first only define the telegram types needed to establish and secure the connection. SAP EWM provides
a number of predefined telegram categories for which you now define the identifiers used in the customer
project.
At the same time, you can specify the name of the previously defined telegram structure.
Recommendation: In general, it is more useful to work with uniform telegram lengths. The increased
throughput you achieve is insignificant and sometimes paid for with a greater programming effort on the PLC
side or more complicated protocol analyses.
Each external communication partner must be made known to the EWM system as a PLC. It makes no
difference if it actually is a PLC. A PC control or, in the extreme case, even an external subsystem that
independently controls a certain part of the warehouse, is, in this sense, a “PLC”.
If you are using head controls, you should only define these. They pass the tasks on to the appropriate local
controls.
The PLC is the communication partner for the EWM system. In this example warehouse, there are 4 PLCs:
You can access the Customizing under Material Flow System (MFS) Master Data:
Since EWM version 7.02 and 9.2 there are some more Attributes has to be defined for the PLC.
Interface Type
Interface type used (see 4.1.2 Defining the Interface Type).
As of SAP EWM., the putaway process type is stored at the communication point.
Needed in cases of Multi Deep Storage if a HU must be moved because it is blocking another HU. This Warehouse
Task is used to move the blocking HU to a different storage bin.
Mapping
Shows whether the communication point names need to be translated between EWM and PLC. If this is marked,
the program will search for PLC names for the EWM names and vice versa in a mapping table when telegrams
are converted. You can maintain the table in the application menu using transaction /SCWM/MFS_OBJMAP –
Map EWM to PLC objects. As storage bin addresses need to be unambiguous across storage types in SAP EWM
(and it is therefore recommended to include the storage type in the encryption), and as this specification is, on the
other hand, not needed for the PLC, mapping is usually required.
Identification
A sender ID which the EWM system is to enter in the telegrams to the PLC. (Name of EWM as PLC
communication partner). Has no meaning in SAP EWM. The PLC may expect a particular sender. If the Check
Telegram indicator is set in the communication channel, the EWM system checks whether this ID is entered as
the recipient when telegrams come in. If the Check Telegram option is on, telegrams without this recipient name
are not processed.
PLC Mode
Available since EWM 7.02
Here you define the PLC Mode, depend of the Conveyor technique. There are 3 options available:
The difference between the pallet and case conveyor is mainly, that the pallet conveyor technique uses the
layout oriented storage control only. Case conveyor uses the Routing Table to find out the next direction. But
if the Routing is not defined in the Routing Table. Case Conveyor then checks the layout oriented Table and
acts like a pallet conveyor in this case.
At least one communication channel must be defined for each PLC. The communication details are stored in it.
Telegram Retries
A value between 1 and 9. After the number of unsuccessful (unacknowledged) repetitions of a telegram to the
PLC entered here has been reached, the system triggers the exception defined below (see Exception
Code MFS).
Fill Character
Empty spaces in a telegram can be replaced by a special character so that it can be read more easily in
protocols or during transmission.
Handshake Confirmation
A character informing the recipient that this is an acknowledgement telegram (logical confirmation).
Handshake Request
A character informing the recipient that this is an order telegram, not an acknowledgement telegram.
Handshake Mode
Here you can specify if telegrams should be acknowledged and what information should be contained in the
acknowledgement. The following options are available:
S/R Switch
Indicator specifying whether the sender and recipient should be switched in the acknowledgement telegram.
Max. Processes
Define the maximum number of Work Processes for Parallel telegram Processing. (Available since EWM 7.02)
Start Character
You can choose a 1-place or 2-place start character for telegrams here. The start character can be used to
check whether a telegram has been wrongly compiled in the communication layer. If so agreed, telegrams
without this start character are rejected.
End Character
You can choose a 1-place or 2-place end character for telegrams. Used in the same way as the start character.
Note: Start and end characters are useful if you are working with different telegram lengths.
The end character is also necessary if the communication layer used (RFC – TCP/IP converter) does not
expand the telegrams received from SAP EWM to their full length6. The reason for this is that strings can
only be transferred from ABAP to the RFC layer if the complete length is used up. The telegram string is too
short if the last field is not filled.
Telegram Length
Specifying the telegram length. If there is an entry, you are working with a fixed telegram length. In other words,
the EWM system expects all telegrams, including acknowledgement telegrams, to be this long. Shorter or
longer telegrams are rejected.
Since EWM version 9.2 the maximum length of the Telegram is extended up to 4096 symbols.
Check Telegram
Here you can activate an additional check for fields that are usually not needed for processing. These are:
Sender, Recipient. If this check is activated, telegrams with the wrong sender/recipient are rejected.
Standard Error
Error code by which the EWM system signals to the PLC that an incoming telegram could not be processed. It
is set in the acknowledgement telegram to the PLC if no specific code for the actual error has been maintained
in Customizing (see 4.1.6).
6
When a communication channel is started, EWM transmits the telegram length to the RFC adapter. The RFC adapter should add as
many blank spaces to the messages received via RFC as are needed to reach that length.
No Sync
Here you can deactivate the synchronization telegram string which the EWM system uses to initiate or
reestablish a connection. Warning: In this case, you absolutely must activate the Life telegrams. Otherwise, the
connection will only be established with the first user telegram from EWM to PLC. The PLC cannot send any
telegrams until then.
This means you determine codes for errors affecting telegram communication. The following menu option
determines the codes that the EWM system uses to report errors in the communication protocol to the PLC.
H means: The sequence number was not checked because the counter in the warehouse management monitor
has been reset. The telegram has been processed nevertheless.
You can specify for all errors whether the communication channel is to be closed and restarted.
4.1.7 Communication Errors from PLC to EWM and the Reaction to Them
It is defined here which exceptions7 should be triggered in SAP EWM when communication errors occur.
Exception MBOF: Buffer Overflow: The PLC cannot receive any further telegrams at present. The EWM system
is requested to postpone the telegram and send it later.
Exception MSEQ: The PLC does not accept the sequence number (it has received a telegram with a higher
sequence number before). This can happen when the sequence number has been reset in EWM but not in the
PLC.
Exception MTEL: The PLC does not accept the telegram because it contains incorrect data, such as the wrong
recipient, or missing end character.
7
See appendix to Chapter 7.2. You will find an example for using and configuring exceptions in Chapter 5.7.3
Specify the timeout to a comparably low value. Do not use the default gateway value for CPI-C Timeout. Once
the RFC adapter is connected, the EWM telegram repetition process will be blocked for the specified time, if
the connection has been lost.
In the EWM system, the RFC destination must be set for each PLC. In the application menu, you can do this
using transaction /SCWM/MFS_PLC:
Here, a preliminary version of the future SAP RFC adapter is being used. Therefore, the setting is “SAP
Communication Layer”. Its interface is known to SAP EWM, thus you do not need to specify the function
modules here. (If you are planning to use other layers, you must enter their calling interfaces here.)
The Logging indicator activates the telegram log: All telegrams that are part of the communication with this PLC
are stored in the database and available for future evaluations.
The communication layer should be easily configured and only pass on data. This is why the PLC address is
also maintained in SAP EWM and not in the communication layer.
At the start call, the EWM system transmits these connection parameters to the communication layer.
It is always recommended to use the latest released version of PCo normally available for free for MFS Customer.
( ! ) Using Telegram length greater than 256 is only available with PCo Version 15 and above.
Here, the SAP RFC Adapter SAP Plant Connectivity is used. It contains an RFC interface and a socket
interface. The application is based on .NET and is completely transparent both in its messages and with regard
to the socket addresses. It has to be installed on a Windows system (like Windows 7/8/10 or some Windows
Server System). SAP Plant Connectivity is delivered with a “Management Console” and set up as a Windows
service. By use of the Management Console you define source channels and use them in agents. The agents
receive notifications, which are directed to destination channels.
An agent is installed as a Windows service by the Management Console automatically. It can be started and
stopped from the Management Console or using the Windows services.
A single agent can handle several channels. When a PLC communication channel is started in EWM, the IP
address and the port of the PLC are transmitted to the agent from SAP. A single socket channel and a single
RFC channel, connected by a single agent (service), can be used to address several PLCs, as shown in the
following picture:
Of course it is possible to setup more than one service and to have a separate service for each connection.
To configure a connection, first create a source channel. In SAP Plant Connectivity MDS, a source channel is
a PLC channel. The PLCs are connected via socket:
If the installation was right, there is only one choice: A socket Agent.
It is important that the option “Remove stream terminator when receiving data” is unchecked. Otherwise the
telegram strings, which are sent to SAP, will be too short.
Now create a new destination channel. The destination, in the words of SAP Plant Connectivity, is the SAP
system. To SAP there must be a RFC channel:
Select “RFCDestination” and name it like the SAP system and client (just as a proposal).
Then the client and server connection parameters have to be set. You have to specify the SAP connection
parameters and the program ID under which it is supposed to register in the system:
Make sure that the reliability option is activated. The RFC adapter then tries to reestablish the connection to
the SAP system at certain intervals (here 10 seconds) if an error has occurred. 8 Otherwise the channel won’t
reconnect to SAP automatically after a connection loss.
The user should be a specific technical user. (Required authorization: See 7.1)
8
EWM is responsible for monitoring the connection to the PLC. See 3.1 Communication Protocol
Once the two channels have been defined, the service must be created, which connects them. Add a new
agent instance:
Make sure that the right source channel is selected (if you have created more than one), and give the instance
a name. This name will appear as windows service:
The service will be created and added in the Agent Instances view:
It can be seen as Windows service under Start Administrative Tools Computer Management Services:
So far the agent only knows its source channel. To connect the destination channel to it, a notification has to
be added9:
Again, make sure you select the right agent name, if you have created more than one. The name of the
notification does not matter:
9
This comes from the fact, that PCo is used in the MII environment as well: Source channels receive notifications from the PLCs, and PCo
can scan these notifications to take a decision to which destination they should be addressed. This philosophy is used here in the EWM
environment as well, even if PCo doesn’t have to scan the messages but just address them all to one destination channel instead.
Please note the chain in the title bar (in blue): Source channel agent Notification.
The trigger type isn’t used in EWM environment. But now the destination has to be added, the RFC channel:
As soon as you have set up the connection data, you can carry out a connection check from PCo to EWM:
Start option a): Start the service manually from the Management Console:
Start option b): Start the service manually from the Windows Services Utility
Start option c) Set the Service Start Mode to Automatic. It then will be started automatically with the
computer:
You also have the option of using EWM to simulate a simple PLC using ABAP. To do this, choose a proprietary
communication layer instead of the SAP communication layer when maintaining the PLC. Moreover, you must
not specify an RFC destination, so that the simulation runs on the currently used application server. The
simulation itself is implemented in the function module /SCWM/MFS_SIM_RECEIVE. You must specify this as
the send module.
With these settings, you will have set up the PLC simulation by SAP EWM. The simulation evaluates the existing
Customizing settings for the appropriate PLC and replies accordingly. Further simulation customizing is neither
necessary nor available.
As soon as a telegram has come in, the simulation sends the appropriate acknowledgement telegram. After
another 3 seconds, the simulation sends the following replies, depending on the incoming telegram:
Synchronization setup Synchronization start
Synchronization start Synchronization end
Status request Status message
Warehouse task Warehouse task confirmation
Cancellation request for WT Cancellation confirmation for WT
By specifying the parameter /SCWM/MFSSIM_VEL_FAC in the user master data, you can vary the 3-second
response time. You can enter the response time you prefer in seconds. Values below 1 second are not
permitted.
Please note: The simulation does not process incoming telegrams in a strictly serialized manner. The replies
are reciprocated after the response time, depending on when they come in. Thus, telegrams may overtake one
another.
If you want to test an item under more realistic conditions, and as long as you do not have a real PLC, you are
well advised to use an external simulation program that will both implement the communication log and be able
to respond correctly to future warehouse task telegrams.10.
This is an example of how to use an external simulation tool: The tool opens a port and waits for EWM (or the
RFC adapter) to log on as a client.
10
Not included in the SAP delivery.
… under …
The way conveyor lines are connected to SAP EWM is here explained using the prestorage area as an
example. The following steps are necessary:
Setting up a warehouse type with storage bins and communication points
Setting up routes (storage control)
Defining how warehouse tasks are assigned to PLCs
Communicating warehouse tasks to the PLC
While a HUs are being transported through a warehouse, they are always in storage bins. All possible locations
of HUs must also be storage bins.
In an automated warehouse, the HUs move from one communication point to another. You can think of
communication points as additional attributes of storage bins. Every communication point is also a storage
bin, but only the storage bins on the automated storage retrieval system are also communication points,
whereas the storage bins in the actual warehouse are not.
You define all points in the system as both storage bins and communication points if they require any SAP
EWM action, such as
deciding on a subsequent transfer direction (setting the course),
taking account of capacity bottlenecks (priority control) or
Transferring a HU from PLC to PLC or from conveyor line to resource or vice versa (change of resource).
It is clear that the number of communication points is the decisive factor influencing performance. The more
communication points there are, the more transport steps are controlled by SAP EWM, the more warehouse
tasks are created and confirmed and the more communication with the PLC takes place.
In order to obtain a good Warehouse Management Monitor overview of what is happening, especially in an
automated warehouse, it is useful to set up a specific storage type for the storage bins in the prestorage area.11.
First, you must create a storage type. Then, you create storage bins and communication points and connect
them to each other.
In the following, you will find the standard settings for MFS-operated prestorage areas. The storage type role
H (automatic high rack storage area) is crucial. It controls the selection of MFS-relevant warehouse tasks and
HUs in the Warehouse Management Monitor.
11
The so-called storage groups (see the chapter on storage control) are another reason. In automated warehouses, storage groups (four-
character terms) are used more extensively than in manually operated warehouses. Within a storage type, storage groups are
unambiguous.
The ID Point Active and Pick Point Active indicators need not be set. As of SAP EWM, you can use layout-
oriented storage control for this logic.
For each communication point, you must create a storage bin and assign it to the communication point. The
storage bins need not have any particular attributes. However, the Storage Group (StGrp) characteristic you
define for them has an important role in storage control (see Chapter 5.2).
You are provided with a special tool for generating storage bins. To do this, you define a naming structure. This
tool then creates the storage bins automatically. However, if you want to give the storage bins “speaking names”
(similar to the communication points), a structure may not offer you the best options. In this case, it is better to
create storage bins manually. (It is probably not a good idea to dispense with speaking names for
communication points.) For the example warehouse, the result should look approximately as follows12:
It will thus give you a better overview if you express this identity in the names you assign. However, the following
restrictions apply:
Within the warehouse number, storage bin names are global
Communication point names have 18 characters and are valid both for the warehouse number and the
PLC
Storage groups have four characters and are valid for one storage type
Recommendation:
Communication point: as short as possible, for example CP04, or start with the abbreviation for the
storage type, for example VZ01-CP04
The storage group can then be identical (for example: CP04)
Storage bin names starting with the storage type (for example: VZ01-CP04).
When communicating with the PLC, the standard EWM system uses the storage bin names. If the PLC requires
shorter names (or other names) as transport addresses, you can use a conversion table:
PLC mapping assignment for storage bin (for example: VZ01-CP04 CP04) (see Chapter 5.5.1)
12
The storage bin type (BT – Bin type) is not clearly set in this example. Please ignore this. Also, the bin access type (Acc. Type) is not
yet important here. It can be helpful in resource control. (See Chapter 5.6.1.2)
Communication points can be characterized by various communication point types. Later, this is used to
distinguish different ways of processing incoming telegrams.
Communication points contain the additional attributes the MFS needs for storage bins on the retrieval
system.13
13
The example warehouse could probably be operated with fewer communication points. For exercise purposes, we have been generous
with these.
In Case Conveyor Technique following attributes are NOT relevant and cannot be set:
ID point,
Clarific. Bin,
Scanner,
No Follow-Up WT,
Capacity Mode,
Clarif. SPS,
Clarif.,
Clar.Storage Type,
Clar.Storage Section,
Clar. Bin,
Clar.Proc.Type.
Description of the communication point attributes (some are not yet important and will be used later in Chapter
5.6):
PLC
Here, you enter the PLC controlling this communication point. If this is a pick-up and drop-off point between
two controllers (such as putaway/removal station SC), this is the PLC that will report if the bin is available. The
assignment of warehouse tasks to controllers is controlled by warehouse task queues, not by the PLC
assignment of the communication points involved.
Communication Point
Unambiguous name of the communication point (within the warehouse number and PLC)
Descripti on
Explanatory text without control functions
Use
During rough destination bin determination in the material flow system, the system determines a storage bin in an
automatic high bay in which the handling unit (HU) should be put away. As rough destination bin determination
does not use SAP locks at storage-bin level, the system can determine the same storage bin in a parallel
determination process. However, you can group communication points in communication point groups. The
system sets a lock for communication point groups when there are rough destination bin determination processes
running in parallel. The system then runs each determination process separately.
Dependencies
You can define communication point groups in the Customizing activity Define Communication Point Groups
in Customizing for Extended Warehouse Management under Material Flow System (MFS) > Master Data. You can
define communication points and assign them to communication point groups in the Customizing activity Define
Communication Point.
Example
In the conveyor technique there are two aisle groups, A and B, and two communication points, ID-1 and ID-2.
Aisle group A contains aisles 1 to 4. Aisle group B contains aisles 5 to 8. There is a separate conveyor lane for
each aisle group. At each communication point, the system determines the aisle group to move the HU in the
direction of. As the system must not determine the aisle group at both communication points in parallel, you define
a communication point group and assign communication points ID-1 and ID-2 to it.
In front of aisle 1 there is communication point AD-A. At this communication point, the system determines an aisle
in aisle group A.
In front of aisle 2 there is communication point AD-B. At this communication point, the system determines an aisle
in aisle group B.
The aisle determination at these two communication points can run in parallel because they determine different
aisles. Therefore you do not need to assign these two communication points to a communication point group.
ID Point
A communication point marked this way is a storage bin allocation point. The storage bin search for all incoming
HUs is triggered here. Already existing warehouse tasks are cancelled. Any error codes attached to the HU are
deleted. Thus, further transportation is determined by the result of the putaway strategy (depending on the
material and process type).
If you do not wish this, you have to provide your own action module for processing the ID point telegram
(see Chapter 5.8.3)
End
Shows whether storage control is completed here.
In fact, this is a protection against Customizing gaps in automated warehouses. The indicator is meant to
convey to the program that it is not due to a configuration error if no further entry is found in the storage control
table.
With each WT confirmation, the program looks for a subsequent entry in storage control. If it finds such an
entry, the End indicator is not evaluated.
If it does not find such an entry, it activates the passive warehouse task if the End indicator is set. If the End
indicator is not set, the program assumes there has been a configuration error, and the inactive WT stays
inactive. The HU is stopped and no telegram is sent to the PLC.14
14
For more information on using the End indicator, also see Chapter 6.3
Clarification Bin
Shows that this is a clarification bin on the conveyor system. End point of diversion in case of error. A HU that
arrives here after being diverted on account of an error is not transported any further. An inactive warehouse
task is not activated.
If you want to access an external clarification bin, you can enter it under Clarification Storage Section. In that
case, the Clarification Bin indicator should not be set.
Scanner Non-Stop-Scanner
Communication point equipped with a scanner. HUs are not stopped while waiting for the next task.
With this flag you can deactivate the FIFO sequence for a CP if there are several HUs logically located at it at
the same time.
Deactivated: Material flow stops at this point. MFS will consider several HUs at this point to stand
sequentially behind each other and waiting for a move instruction from MFS. MFS will only try to move
them away by FIFO. If an HU “B” has arrived later than another HU “A” at this CP, and HU “A” can not
be moved away for any reason, HU “B” will not be moved away as well. This setting is recommended,
if the HU waits at the scanner (usually in pallet systems)
Activated: Material flow isn’t stopped at this point. If an HU is scanned here, any other HU before it is
considered to have moved away in between. MFS will send a task to move the HU away, even if there
is an older HU logically before it (arrived earlier) at the CP, and for this earlier one it wasn’t possible to
send a next task to the PLC. This setting is recommended, if the HU doesn’t wait at the scanner (usually
in case or tray systems)
Delete Error
If a HU arrives at a communication point marked in this way, any errors set for the HU are automatically deleted.
Reason: If a HU (for example, at the ID point) is diverted to the clarification bin, the reason for this diversion is
stored with the HU in the form of an exception code. This ensures that this information can also be accessed
at any intermediate communication points on the way to the clarification bin, even when the affected warehouse
task could not be created yet (such as because of a capacity bottleneck). When it arrives at the clarification
bin, you might wish that the error code be reset automatically so that the HU can be put on without further
inference from an operator, as when there has been a contour error displayed by the PLC. Thus, the operator
would not need any information from SAP EWM and would prefer to simply transfer the HU back to the ID point
after removing the contour error.
No Follow-Up WT
You can use this to deactivate the automatic creation of the WT for the next stage – even when you have
defined one. The automatic flow then stops here.
Useful for forced routes in the warehouse. The PLC registers a HU at a point (WT confirmation), but there are
no alternatives to the route to the next scanner, or these are not controlled by the EWM system. SAP EWM
then posts the HU to the communication point and it remains there for the time being. Only when it is registered
with the next scanner does the flow continue – from there.
Capacity
The number of HUs that are located or may be posted to this communication point at the same time (depends
on the capacity mode)
Capacity Mode
Controls the type of capacity check (see below)
STAY: Results in no WT being created in the case of a capacity bottleneck. The HU remains at the
communication point without an active WT until the next availability event.
NSND: Results in a subsequent WT being created but not sent to the PLC in the case of a capacity bottleneck.
The HU remains at the communication point with a prepared, active WT until the next availability event.
In the standard system, the capacity is never checked in advance but only for the next intermediate destination
to be reached according to storage control.
Clarification
The next communication point the HU should be moved to on the way from here to the clarification bin in case
of error. This considerably simplifies storage control. The routes to the clarification bin need not be configured
like “normal” destinations by specifying a final destination. They consist of individual steps of which only the
next one needs to be set at each point.
Clarification PLC
PLC to which the clarification communication point has been assigned (part of the communication point key).
No Check Capacity
You can deactivate the check for the capacity of the route to the clarification bin (next segment/CP).
Do Not Check
You can deactivate the check for the status (ready/malfunctioning) of the route to the clarification bin (next
segment/CP).
This is the least restrictive setting: The capacity is only limited by HUs that a) have already arrived there and
b) have not been assigned a warehouse task for further transport. (Inactive warehouse tasks are ignored.)
This option keeps a CP occupied even if there is already an active warehouse task for further transport.
However, this only lasts as long as the warehouse task does not have the status Started. The Started status
can be set by means of a start message to the PLC15.
However, this option does not take into account incoming HUs. In a situation where it is possible that a
subsequent HU should ask for capacity before the previous HU has been confirmed and posted, you should
not use this option.
Option C: HUs at Communication Point and HUs with Active WTs for the CP
15
This can be helpful for the stock removal stations of the aisles: The SC can start a new stock removal as soon as the drop-off space
is empty (and not only when the HU that has been removed has reached its destination). Without this start message, you either risk
blockage (in the worst case, the whole stacker crane is blocked) or you lose time.
Same as above, but now HUs that are moving towards the CP should also be taken into account. The
fact that a HU is moving towards a CP is determined by there being an active WT with this destination
for it.
This is the most restrictive option: It takes into account all HUs
that are located at the communication point and whose further transportation has not been started yet
and
also all that are in the immediately vicinity of the CP (with active warehouse task) or directly approaching
it (with already posted warehouse task).
However, it also does not take into account more distant HUs that are to pass this CP. For this, project-specific
enhancements should be provided if necessary.
Now you have to assign the storage bins to the communication points. As the storage bins are application data,
this is done in the application menu.
Anticipation of Chapter 0: For scanner communication points, you also have to specify a packaging material
number enabling you to create pseudo-HUs and divert these if unknown HUs have been registered or if there
are any Noread messages:
This can be predefined by the process (process-oriented storage control). This is not explained here. The MFS
is only relevant once this control decision has been made.
If the destination to be reached according to the process cannot be reached on a direct route, you can define
intermediate destinations using layout-oriented storage control.
One of the most important tricks is that only exceptions are defined, deviations from the direct route. If the
program cannot find a suitable entry in storage control, it opts for the direct route.16
The procedure is further simplified by the fact that the specifications of the source and the destination can be
differently broad.
Exact (referring to the individual storage bin)
Referring to a group of storage bins
For all bins of one storage type
For transports from/to all storage bins for which no narrower criterion has been specified.
You can use storage groups to distinguish the storage bins of one storage type with regard to storage control.
Several storage bins can be part of the same storage group.
So, you first define storage groups and then you use them for storage control.
The only purpose of storage groups is to control the material flow. They are a kind of intermediate layer between
storage types and storage bins and can be defined in more or less detail. In cases where the storage type is
sufficient for differentiation, you can do without storage groups.
In the retrieval system, each communication point must be approached specifically, so you must be able to
address each of these storage bins on the basis of its own storage group. You can usually group the storage
bins of a high rack storage area by aisles, so that one storage group per aisle is sufficient.
16
In the MFS, that is, when the HU is at a communication point, the “End” indicator must be set for this communication point. (See 5.1.4.2)
Storage groups are characteristics of storage bins. They must be entered in the storage bins. If you need to
change the storage bins of the communication points, you must change them individually. Using mass change,
you can change the storage bins of the high rack storage area on the basis of aisles.
“From” (source) and “to” (destination) are storage types and storage groups, whereas “via” is an individual
storage bin.
You do not have to give an exact specification for the source and destination. The following options are available
for these two specifications:
No specification – entry applies to all storage bins that do not have other entries.
Storage type specification – entry applies to all storage bins of the storage type.
Storage type and storage group specification – entry applies to all storage bins with this storage group.
Example:
All warehouse tasks to storage type 0280 via storage bin 0285-CP00:
All warehouse tasks from storage type 0280 to storage type 9020 via storage bin 0285-CP0817:
17
There is something special about this entry. It involves the pick point. We will come back to this later. For now, this entry is used only as
an example for the specification of source and destination.
As you have the option of setting exact specifications differently for source and target, it is important to know
the sequence in which the program searches for a suitable entry.18 This is shown in the following matrix:
18
We will go into the additional option of differentiating between HU type groups and partial or complete stock pick or empty pallets in
warehouse control later.
19
The headings “vlber” for the source storage section and “nlber” for destination storage section are wrong. What is meant are source
storage group and destination storage group.
Here is a section from the layout-oriented storage control for the example warehouse 20.
The intermediate location 0285-CP02 should move from communication point CP01 (identified using storage
group CP01 from its storage bin 0285-CP01) to storage type 0280.
Next, the intermediate destination 0285-CP11 should move from communication point CP02 (again identified
using the storage group of the storage bin assigned to the CP) to one of the storage bins in aisle 1 (storage
group RCK1).
You can enter alternative intermediate destinations under the same criteria. In this example, the path would
run from CP14 to 9020 via either CP05 (the normal outfeed conveyor) or CP03 (the clarification conveyor):
Note:
In the standard system, load distribution is not implemented between alternative routes. The program would
always choose the first entry (CP05 in the example) and would switch to CP03 only if there is a malfunction or
insufficient capacity. To achieve load distribution, you must program a BAdI:
20
This example anticipates the high rack storage area (control of individual aisles).
In an automated warehouse, the control system must be able to divert an HU to the clarification bin from any
point in the system if necessary. Following the principle of layout-oriented storage control as described above,
setting up the control system might be time-consuming in some circumstances. For this reason, there is another
mechanism available: you simply save the next communication point at each communication point on the way
to the clarification bin.
Example: An HU reported from scanner CP12 using NOREAD is diverted to the clarification bin through the
following entries for the clarification bin.
CP12 CP13
CP13 CP14
CP14 CP03
CP03 CP04
The Clarification bin indicator is set at CP04 (see the following section).
Oftentimes you may want to include an external clarification bin that is outside the automatic storage retrieval.
When an HU arrives at the last place of the conveyor line, the system should assign a forklift to take the HU
from the automatic storage retrieval. The actual clarification bin is located in the open space in front of the
equipment.
You can also enter this in the communication point. This example shows the communication point, CP04 that
is to be moved in the case of malfunctions (see next screenshot)
The EWM system creates another warehouse task with the specified warehouse process type for the transport
from CP04 to CLEARING. This applies only for HUs for which an exception is set and that are, therefore,
diverted to the clarification bin.
The Routing-Oriented Storage Control is based on the simple Routing Table which is defined in the Customizing
since EWM 7.02.
The Routing is based on the logical destination definition or the activity area that can be read from an active WT
for this HU. The logical destination will be calculated in the Action Module at this CP depends of which action is
customized for.
Furthermore, you can define the destination communication point to which the HU has to be posted in EWM. If
the PLC sends an explicit acknowledgement telegram that the HU was moved to a logical destination, the HU will
be posted to the associated destination storage bin in EWM which is assigned to the communication point.
The logical destination will be automatically evaluated from the CP Actions in Case Conveyor environment. The
Standard destinations are:
- OK
- Error
Definition of the logical destination for a programmable logic controller (PLC). A logical destination for a PLC could be
either a logical direction or an area where the handling unit (HU) has to be moved.
Example
At a decision point the system checks if the values of the HU are correct. The PLC needs to determine whether
there are any problems with the HU. If there are no problems, the logical destination 'OK' is used. Otherwise the
logical destination 'ERROR' is used. The logical destination in EWM will be mapped to the logical destination of
the PLC and sent to the PLC.
Comm. Pnt
Reorder Communication point for the conveyor technique. The HU is at this point at the Moment and need to be
routed.
Actv. Area
Activity Area to which a HU has to be moved. Estimated from The open Warehouse Order / Task.
Dest. PLC
Destination PLC of communication point to which a HU is posted.
Example
At a decision point the system checks if the values of the HU are correct. The PLC needs to determine
whether there are any problems with the HU. If there are no problems, the logical destination 'OK' is used.
Otherwise the logical destination 'ERROR' is used. EWM sends the logical destination to the PLC, and
the PLC sends the current logical destination back to EWM. EWM posts the HU to the associated storage
bin.
At a decision point the system checks the open warehouse orders and warehouse task for the HU. Based
on the assigned activity area the logical destination for the PLC is sent to the PLC, and the PLC sends
the current logical destination back to EWM. EWM posts the HU to the associated storage bin.
While manual warehouse tasks can, in principle, be carried out by several resources, the following rules apply
in regard to this in MFS:
Each queue can be carried out by only one PLC (MFS must know the PLC to which the warehouse tasks
should be transmitted).
Each warehouse order can contain only one warehouse task. MFS examines each warehouse task
separately and not in relation to the others. Each warehouse task is individually transferred to the PLC.
Therefore, (at least) one queue must be defined for each PLC21, and criteria must be set to control the
warehouse tasks in the queues and to create warehouse orders:
21
Advance: actually for each resource. In this context, conveyor lines are a special case. They are operated without resources. One queue
must be defined for the conveyor line orders of the PLC. If a transfer car is also controlled through the PLC and is mapped as a resource,
you need a second queue for the transfer car. The warehouse tasks of this queue are then also transmitted through this PLC.
Warehouse Order Creation Criteria. Each warehouse order contains only one warehouse task. The sort
sequence of the storage bins for each activity area and activity must be available for data-technical reasons.
Note: there are two customizing activities for defining queues. One under Cross-Process Settings/Resource
Management. We will need this later on.
Select operating environment 4 for conveyor lines. If the warehouse tasks of this queue are carried out by
vehicles (such as stacker cranes or transfer cars) and SAP EWM should run these vehicles as separate objects,
operating environment 5 must be set. See chapter 6.
This is the crucial point where the assignment of warehouse tasks for controls is determined. Not the affiliation
of communication points to controls and, as we will later see, not the settings for the resources.
Furthermore, the “only” thing still to do is to make sure that the storage tasks end up in this queue.
This means:
A queue can be carried out only by a PLC.
This is determined by customizing.
One PLC can carry out several queues.
MFS warehouse orders can each contain only one warehouse task.
Define a warehouse order creation rule for warehouse orders that have only one warehouse task:
SAP recommends using a separate activity for MFS tasks. You can switch off the functionality of Labor
Management for this activity, which will improve performance in MFS. Labor Management is intended for
manual resources. This activity is needed as storage bins must be sorted based on activities. (See 5.4.8)
The activity and warehouse order creation rule are selected in the warehouse process type:
If you need other warehouse process types, they must also be set in the same way.
Warehouse order creation and queue assignment are based on activity areas.
They define activity areas and assign storage bins to these activity areas. You also need to clarify the source-
destination relationships that you have in the warehouse and the controls from which each of these should be
operated. Here is an example:
Orders from activity area GR to CONV1 ate to be carried out by forklift, orders from CONV to CONV by the
conveyor PLC, orders from CONV1 to RCK1 or vice versa by the PLC that controls the stacker crane, and so
on22.
In the following, you will see a possibility to define the activity areas if you do not need make a distinction in
regard to the aisles of a high rack storage area. Activity area 0286 is the area for the clarification bin located
outside of the automatic storage retrieval that is moved by the forklift.
22
The advanced control from the putaway station to the stock removal station (would go to the conveyor PLC instead of the SC according
to these criteria) can be solved using the bin access type (see section 6).
Now you need to assign the storage bins to these activity areas. Since we have a separate storage type for the
storage bins operated by the PLC, assigning the bins is simple:
We are still missing a step for preparing the warehouse order creation.
Warehouse orders group together warehouse tasks according to certain criteria to be able to transfer the tasks
to resources that execute them. The easiest way to picture this is to think of multiple processing of a picker that
should be sent to the individual storage bins in a logical order. The warehouse tasks must also be sorted based
on the picker’s activity, picking in multiple processing. You can achieve this by sorting the storage bins of an
activity area based on activity.
In MFS, every warehouse task will now be handled individually and transferred to resources/PLC to be
executed. For data-technical reasons, however, a warehouse order must be created for the task. The order
contains only one warehouse task. Warehouse order creation requires that storage bins in the activity area are
sorted based on activity.
Since sorting does not play a role for MFS activities, you do not have to enter sort criteria. All you need is a
criteria record for the activity area and activity.
After you have stored all values for sorting, you can now sort the storage bins. During this process, an activity-
specific index for the affected storage bins is created.
Attention: You must repeat this step if new storage bins are added.
Based on activity areas, you can now set the queue in which the warehouse tasks should be placed. To do so,
define queue determination criteria and, in a control table, set the sequence in which these criteria should be
applied.
Setting the determination criteria for the PLC of the prestorage area is simple: all warehouse tasks that are
started from activity area 0285 and should be sent to activity area 0285 should be placed in queue CONSYS1.
Queue determination can, if necessary, be controlled with greater precision using the storage bin access type
of the source location, warehouse process type, and activity of the warehouse task. We will come back to this
later.
There are multiple steps for accessing the queue determination table23.
In this example, the program searches using the warehouse process type of the warehouse task. This is useful
in connection with automatic storage retrieval if you must make a posting change for the HUs in automatic
storage retrieval without a PLC order. When you create the storage task, use another warehouse process type
and control it into another queue:
If there is not an entry for the warehouse process type, the program searches using source activity area,
destination activity area, storage bin access type, and so on.
23
The heading “Stor. Bin” is short for “Storage Bin Access Type”.
Warehouse tasks are now divided into smaller stages and other warehouse tasks are created for these
individual steps. In addition, these warehouse tasks are placed in PLC-specific queues. In this example, this is
PLC queue CONSYS1.
Now these warehouse tasks and the relevant confirmations must be transmitted using the PLC. For this, you
will need appropriate telegram structures and message types. It also may be the case that the PLC uses other
names for the communication points than the one you created in SAP EWM (such as, for reasons of
comprehensibility).
In the PLC telegram, the EWM system uses the storage bin names for addressing source and destination. If
the storage bin names were selected differently from what the PLC expected, you may be able to use a
conversion table.
To do so, you must activate mapping in PLC customizing and then maintain the conversion table.
In customizing, go to …
SAP provides a tool for creating entries in the conversion table. The tool derives the name the PLC uses to
recognize the storage bin from the storage bin name. Define a rule for this according to the following procedure:
Use position “x” of the EWM storage bin name for position “y” of the PLC storage bin name.
If this rule is not sufficient, you can use the following BAdI:
If you cannot find a rule (or if all entries cannot be generated with it), you must go to the following table in
application menu ...
The telegram structure defined in section 4.1.1.2 already contains the necessary fields for transfer orders and
transfer confirmations. The relevant telegram types are still missing.
You need:
Warehouse task (EWM to PLC)
Warehouse task confirmation (PLC to EWM)24
If necessary, cancellation request for warehouse task (EWM to PLC)
Also if necessary, positive/negative cancellation reply (PLC to EWM)
When the warehouse task is sent to the PLC, the EWM system pulls the telegram type (telegram ID “WT”) and
the telegram structure to be used by using telegram category E (warehouse task). The telegram is sent to the
PLC.
After the warehouse task has been executed, the PLC sends a warehouse task confirmation. The function
module responsible for processing is determined through the telegram type (telegram ID “WTCO”) and possibly
the communication point type.
24
This is not to be confused with the confirmation telegram, “received telegram”, which serves only to ensure communication. (See Chapter
3.1)
Here, we are talking about a significant flexibility factor in the system: user-specific function modules
can be added in a simply way.
Since EWM 7.02 there are some improvements at this Point. The System is able to handle Function Modules
Synchronic, which means this action runs after the Telegram from the PLC arrives. The result of this action can
be a Telegram with the next destination. That will be send to the PLC.
New is the asynchrony function call, which can be started after the Telegram to PLC was sent.
Important is, that every synchronic “case” action has got an output reference (EV_NO_ANYNC), which can
prevent the asynchrony action to run. That means, if there is an Error calculated in the synchrony Action Function
there could be a need NOT to execute the asynchrony function module.
Not all Function Modules has got the exporting reference (EV_NO_ASNYC), also that “case” modules not.
14: Resource Pick Point to create a HU-WT into the high bay – Case (EV_NO_ASNYC)
Next, link these keys to telegram types. You can also differentiate according to communication point type.
In this example, telegram type WTCO should trigger action 02 independent of the communication point type.
This function module should also process a scanner telegram for an SP type communication point.
Furthermore, the PLC telegram can contain an error code to which you should respond.
You define exceptions that should be triggered as a result of certain PLC error codes.
In the example, “PLC temporarily refuses the order” (for example, because the order buffer was full, the device
was already busy, and so on):
The internal process code REDE controls processing after an exception occurs. In this case, the warehouse
task is reset to status Y Relevant for subsystem and resent at the next opportunity. See the exception overview
in the appendix, section.
Once the exception is defined, you can link it to a PLC error code:
For example, you determine that exception MDNY should be triggered if the PLC reports error code “90” in a
warehouse task confirmation.
Note the access sequence for the preceding table. You can set the criteria that the EWM system should
preferably use to determine the PLC exception.
In this example, the criteria are set in such a way that if the meaning of an error code is determined in the PLC
telegram, the interface type of the PLC reporting the error, the type of telegram that contains the error, the error
code itself, and the category of the object on which the telegram is based should be taken into account. Lastly,
if you add an entry without the Telegram error indicator, all other (possibly undefined) error codes with a
common exception are intercepted.
If there is no entry available, the error code applies independent of the object type.
If you use both entries together, exception MDNY is triggered if error “90” occurs in a telegram of type WTCO
of a PLC that uses interface type “F”.
Warehouse tasks sent to the PLC cannot be cancelled in SAP EWM as they are. The EWM system sends a
cancellation request to the PLC and the EWM system does not cancel the task until the request is granted. The
HU stays posted to its current storage bin, the source of the cancelled task. An inactive warehouse task that
may possibly exist must be cancelled separately if necessary. Since it is not transferred to the PLC, the task is
cancelled without consulting the PLC.
If you do not cancel the inactive warehouse task, a new, active warehouse task is immediately created
(independent of the state and utilization of the affected resources) when the active WT is cancelled.
The current status and success of this transaction can be seen by the Subsystem indicator (SUB ID) and by
the WT status in the warehouse management monitor.
1 = Cancellation was requested by the control station, telegram still not sent to PLC
2 = Cancellation requested at PLC
Telegram Category M. Is used by the PLC to acquire knowledge about the next destination point. It is similar to
the SCAN Telegram, but is used in the case conveyor environment.
Telegram Category N. Will be sent to the PLC to tell the next Destination the HU has to be moved to.
Telegram Category O. With this telegram the PLC tells the EWM to which direction the HU has been moved to.
Because the HU has already passed the actual CP.
A fundamental task of the material flow system is taking into consideration capacity bottlenecks and
malfunctions. SAP EWM offers functions for setting capacity limits, for status tracking if malfunctions occur,
and for restarting when blocks are removed.
Capacity limits are relevant ONLY for the pallet conveyor technique and will not be checked by standard,
if the chosen PLC Mode is NOT the pallet conveyor technique.
You can limit the capacity for conveyor lines through communication points and segments.
As previously described in section 5.1.4, you can limit the capacity of communication points. Limitation always
relates to the number of HUs. The system differentiates between different HU types (such as long and short
containers).
You can also set whether incoming or outgoing HUs should already or still be counted for the assignment (see
5.1.4.3).
In the standard system, the EWM system always checks only the capacity of the next communication point –
see below – and of the defined segment, if necessary. Capacity restrictions further ahead are not taken into
account. For this case, you need to implement a BAdI, if necessary.
A second option for capacity restrictions are conveyor segments. A conveyor segment forms the leg between
two communication points. You need conveyor segments only if you
would like to manage their status (ready/malfunction), or
their capacity is limited and you cannot or do not want to control this using the communication points
involved.
Often, managing the status and capacity on the communication points is sufficient. In this case, you do not
need conveyor segments at all.
You assign the segment in the layout-oriented storage control to the respective transfer step:
Only if the segment is entered here, is its capacity and availability taken into account when warehouse tasks
are created or sent.
If capacity bottlenecks occur, various reactions are appropriate depending on the situation:
Create warehouse task, but do not send it until the capacity is available again.
Do not create a warehouse task at the moment. Do not create a warehouse task until the capacity is
available again and the current relationships are taken into account (such as, another warehouse task may
be more urgent).
Find an alternative route.
Define Exception
The exceptions must be defined in the context “communication point” or “segment” and for the Background
processing operating environment.
25
This also applies if alternative routes should be used without a capacity bottleneck/malfunction.
Define exception:
5.6.3 Malfunction
The EWM system manages the availability status of communication points and segments in two characteristics
and separately manages them based on two actors.
Characteristic status:
Available
Not available
Actors:
PLC
User (control station)
Logically, what is available is only that which was not blocked by other actors, and a notice of readiness of an
actor does not change the status of the other.
Non-availability has exactly the same effect as non-capacity; meaning that the exception code stored at the
communication point controls the reaction.
The user lock is set by selecting an exception intended for this in the warehouse management monitor.
You must define the exception for all affected contexts and for each of the operating environments. The context
controls the type of object to which the exception applies26.
If the exception is defined in the Desktop operating environment, it can be set in the warehouse management
monitor. The Background operating environment must be added so that if the exception occurs, the program finds
the internal process code and, if necessary, creates an alert.
26
See appendix 7.2.
Alerts are normally generated by EWM exceptions. In case of a user lock where the exception is set by a user,
it might also be important for monitoring, to see when the lock on an MFS operating facility is released.
Exception Code MRDY (Operating Facility Ready) is the code that can show that status and put an info
message into the alert monitor. However, it is still an exception code, and by setting MRDY as an exception on
a resource or communication point, it will be interpreted as such: an exception, and not a readiness status.
To re-set the locking status, exception code MBLK, a blank exception code is to be set and sent to the exception
handling.
The Resource Monitor shows the user lock MBLK (Long-Term blocking) is set to resource SRM02. While SRM01
has not exception code set.
The Alert Monitor shows, that also on SRM01 an exception code MBLK had been set on 06.06.2013 17.22:13.
But it has been reset (set to blank) on 17:22:23.
The alert handling is called by setting the blank exception code, to reset the blocking status. It entered the
informational alert, customized for exception code MRDY.
This exception code needs to be mapped to the internal exception code MFS4 for resources and MFS5 for
communication points, for which an operating block has been released in customizing activity ‘Assign Internal
Exception Codes to Exception Codes’ (‘SCM EWM – Cross-Process Settings – Exception Handling) this
customizing table is evaluated in the exception handling, when a blank exception code is set, and then triggers
the alert to be created.
The alerts in the alert monitor are only visible once a number range is created. This can be done in Customizing
SCM EWM > SCM Basis > Alert Monitor > Define Number Ranges for Alerts .
In addition, an application specific and overall alert profile needs to be created in /SAPAPO/AMON1 .
To be able to receive malfunction reports from the PLC, a telegram type must be defined for it. The EWM system
can also actively request the status of a communication point or segment for each telegram at the PLC:
Then you determine the action that should be called when a telegram with type “status message” is received...
Lastly, you need to create the exception code that the PLC uses to report the “malfunction” status and define
an exception. You can do this in the same way as you did for the MBLK exception in the previous section.
However, you need only the Background operating environment (A0) as the exception is set through a PLC
telegram and not by an operator.
You can use segment groups to reduce the number of status messages. The PLC reports an entire area as
“malfunction” or “ready” in a single status telegram. For example, “Conveying to/from aisle 1”.
You define segments for the legs between the affected communication points (in the example, the putaway
conveyor and stock removal conveyor in aisle 1 and also a segment for leading through from putaway station
to stock removal station) and include these segments in a group. The PLC status telegram switches the status
of all affected segments27.
27
In the telegram, the field for the segment group from the structure /SCWM/S_MFS_TELETOTAL must be included (see section 4.1.1.1).
HUs that cannot be given further instruction for capacity reasons or due to malfunctions must be triggered when
the obstruction is no longer present. These availability events can be when the:
Communication point or segment/resource malfunction is removed (overall status changes to “available”)
Communication point is relieved because an outgoing HU reached the next target.
Communication point is relieved because an empty location message or an order-start telegram arrived.
Additional availability events that are not automatically evaluated in the standard system are when:
A warehouse task for an HU that wanted to start this communication point is cancelled.
An HU is manually posted away (per the control station order) by a communication point.
During these availability events a customizing table is evaluated in which you store the trigger: MFS objects
that should be triggered during these events to check whether warehouse tasks can be sent. In the following
example, the queue for the transfer car is started when communication point CP11 is discharged. In this queue,
there is an order for HU 2 that previously could not be carried out28:
28
Note: the requirement is that you have stored an exception in CP11 for the case of capacity bottlenecks that is be configured in such a
way that each follow-up WT is stored (NSND). Only then is the transportation need of HU 2 known in the TCAR queue. If you use internal
process code STAY, point CP10 (where HU 2 is in the example) must be included in the communication point dependencies. This
duplicates the trigger events when the transfer car is used.
Example:
During an availability event for communication point CP02, CP01 should be informed.
During an availability event for CP03, communication point CP01 should be informed as well as the
transfer car.
A communication point becomes available when one of the events described in section 5.6.4 occurs. You must
define a telegram for the empty location message of a communication point.
Assign action:
A warehouse task that started from a communication point for which a LOC_EMPTY telegram applies receives
SUB ID = W and is no longer counted in the schedule of a communication point from which it started.
To distinguish other telegram types, you can use a user-defined telegram type for scanner telegrams. This
example uses telegram type SCAN. This telegram type can later be used for the automatic ID point (see section
5.8).
Scanners that are used for material flow tracking (meaning they do not have a special function, such as the ID
point) can be processed in SAP EWM using the usual warehouse task confirmation function.
Prerequisite for 1)
There is an entry in the layout-oriented storage control for source and destination.
Or the scanner communication point is marked as an end point. The inactive WT is activated.
Or the scanner communication point is marked as a clarification bin. The HU stays where it is.
Prerequisite for 2)
In the communication point (application data), a material number for the packaging material is
maintained.
In the communication point (customizing), the next communication point is maintained in the direction of
the clarification bin.
Prerequisite for 3)
The error code reported by the PLC is linked to a EWM exception.
Otherwise the prerequisites from point 2 would apply.
The communication point where the storage bin allocation for the HUs to be stocked takes place is labeled as
an “ID point”. The HUs run a contour control. HUs containing errors are diverted.
For putaways with an ID point, the first warehouse task is created only up to the first ID point. This task ends
when it reaches the ID point, and a new warehouse task to the final storage bin is created.
The following sections contain further information on the necessary settings concerning the ID point.
As of SAP EWM, you can set an ID point using the layout-oriented storage control. In manual warehouses, a
separate storage type is no longer required for the ID point. In automated warehouses, SAP recommends the
previous way. The ID point is controlled by an entry of the following type:
Row 1 says that all movements to storage type 0280 (high rack storage area) that do not have a special entry
for their source should be controlled using intermediate location 0285-CP00, which serves as an ID point.
The program changes the destination of the warehouse task to the location entered here as the intermediate
location. With the ID point, this “intermediate location” is also used as the destination point. (The previous
destination, a place in the final storage type, is overwritten.)
Next, the program checks whether there is another entry for this new specification for the destination, using the
destination data of the ID point. If there is, the warehouse task is set to the “inactive” ID point, and another
active WT for the intermediate destination (that preceded the ID point) is created.
In the example warehouse, this is not the case, and the WT 9010 – CP00, for example, could have been
transferred to a forklift that picks up the HU from the goods receipt and places it on the automatic storage
retrieval.
You can use the SCAN telegram type introduced in section 5.7.1. Expand the general telegram structure if you
want to receive other data.29
29
Uniform telegram structures make it easier to read the telegram, and the costs involving data volume and performance are usually
negligible.
You can process the ID point telegram by using a user-defined function module. The module is controlled as
follows:
Configurable Action Modules
Legend:
Lokation leer Telegramm (Kategorie I) Location Empty Telegram (Category I)
Nachschub anstossen (Kategorie I) Storage Bin Empty (Category I)
I-Punkt Telegramm (Kategorie J) Starting Point (Category J)
Status Telegramm (Kategorie C) Status Message (Category C)
Lageraufgabe quittieren (Kategorie G) Confirmation of WT (Category G)
Lageraufgabe stornieren (Kategorie H) Cancellation of Warehouse Task (Category H)
Routing-Anfrage Behälter (Kategorie M) Routing Request Case Conv. (Category M)
Soll-Routing Behälter (Kategorie N) Planned Routing Case Conv. (Category N)
Ist-Routing Behälter (Kathegorie O) Actual Routing Case Conv. (Category O)
5.8.4 Consideration of System Status and Capacity Utilization for Putaway Strategy
… using BAdI:
In the standard system, this is intended only as a cross-line stock putaway: the free storage bins are cross-
sorted related to the putaway. In the example warehouse, this means that the foremost locations of the lowest
level in aisle 2 are assigned after the foremost locations of the lowest level in aisle 1 (left shelf, right shelf). The
next row is not assigned until the foremost locations of all aisles are full, and so on.
In the standard system, equal distribution in the aisles is not carried out with regard to the material.
In addition to the errors described in section 0 (such as NOREAD), the following errors might occur at the ID
point:
Incorrect contours
Excessive weight
Foot error
See section 0 for configuration of the follow-on action for these errors.
Verify Weight
… using BAdI:
Automated vehicles, that is facilities using conveyor technology that move to the source of a warehouse task,
take a load, and drop it of at the destination, can be mapped in SAP EWM as resources. The following options
are available for SAP EWM:
Manage the capacity of this conveyor
Assign the conveyor in interleaving between putaway and stock removal (only for stacker cranes)
Control the conveyor using “pull-push orders”
Basically, you have the option of telling SAP EWM to ignore a transfer car. Controlling its movements is left up
to the PLC. The EWM system treats the car like a network of intersection-free conveyor segments between the
pick-up and drop-off points that the car serves. This type of connection is no different than that of conveyor
lines. The connections do not have to be mapped.
If you want to take into account the status and capacity of a transfer car in SAP EWM, map the transfer car as
a resource.
Note: In the standard SAP EWM, there is not an option for optimizing the path of the transfer car. The orders
are transferred to the PLC in order of their priority and creation (LSD – latest start date).
This queue can be transferred through the same PLC as the queue that receives the warehouse tasks for the
conveyor lines.
The bin access type is a simple possibility for separately controlling warehouse tasks for the conveyor lines
and for the transfer cars.
The storage bins of the communication points, where the transfer car should make the pick up, are labeled with
their own bin access type, and this access type is used in the queue determination criteria.
It is important that the access sequence for this determination criteria table takes into account the bin access
type at the prominent location (row 2: third indicator from the left):
Interleaving
Use
By activating interleaving, you can avoid a situation where the resource travels empty from the aisle to the inclusion
point, after putaway. Instead, the resource is given a new stock removal warehouse tasks before it returns.
Interleaving therefore reduces the number of empty trips for the resource, and increases the throughput.
If you have activated interleaving at resource type level, you must keep in mind that a maximum number of
telegrams greater than one necessitates an optimization of the telegrams on the PLC.
Control of WT Confirmation
One-Step Confirmation:
The system creates the warehouse task and fills the Source Bin, Destination Bin, and Executing Resource fields.
It sends a telegram that contains the source bin as the source, and a destination bin as a destination.
The PLC sends an execution confirmation that the handling unit (HU) has been stored in the destination.
Two-Step Confirmation:
The system creates the warehouse task and fills the Source Bin, Destination Bin, and Executing Resource fields.
It sends a telegram that contains the source bin as the source, and the destination bin as a destination.
The PLC sends an execution confirmation that the HU was included in the resource.
The PLC sends an execution confirmation that the HU has been stored in the destination.
Two-Step Commissioning:
The system creates the warehouse task and fills the Source Bin, Destination Bin, and Executing Resource fields.
It sends a telegram that contains the source bin as the source and a resource.
The PLC sends an execution confirmation that the HU was included in the resource.
The warehouse task is confirmed and the subsequent warehouse task is created with a filled destination bin and
filled source resource.
A telegram is sent, which has the destination bin as its destination and a resource.
Specifies the number of seconds a system waits before reprocessing an incoming telegram that was processed
incorrectly.
Use
We recommend that you enter a value that does not generate unnecessary workload but that also reacts to
processing errors quickly.
Note that if the number of seconds is set to zero, the telegram is not reprocessed.
Dependencies
The retry is triggered by the background process for telegram repetition, which is started automatically as soon as a
communication channel is started.
Defines the maximum number of consecutive stock transfers allowed per handling unit (HU) in an automated aisle
before the HU must be moved out of the automated aisle.
NOTE:
Please refer to the PLC Vendor how many stock transfers are allowed.
Use
When the HU reaches the maximum number of consecutive stock transfers allowed, the system moves the HU out of
the automated aisle to a dedicated bin. This allows you to, for example, realign the content of the HU to ensure it is still
correctly placed in the HU.
As soon as the HU moves out of the automated aisle, the system resets the number of stock transfers to 0.
Dependencies
The maximum number of stock transfers is only applicable for automated storage types controlled by the material
flow system (MFS).
By default, the system moves the HU to the error bin you specify when maintaining the MFS resource. To maintain
the MFS resource, on the SAP Easy Access screen choose Extended Warehouse Management -> Master Data ->
Material Flow System (MFS) -> Maintain MFS Resource. Alternatively, you can use transaction
/SCWM/MFS_RSRC.
You can also specify which bin the system moves the HU to in Customizing for Extended Warehouse
Management under Business Add-Ins (BAdIs) for Extended Warehouse Management -> Material Flow System (MFS)
-> BAdIs for the Material Flow System -> BAdI: Filtering and Changing of WTs Before Sending Telegrams.
Example
You set the maximum number of consecutive stock transfers for a HU to 4. The putaway of the HU into an aisle
is counted as a stock transfer. The system then moves the HU 3 more times in the aisle for picking activities. The
HU has now reached the maximum number of consecutive stock transfers allowed. When another stock transfer
is required for this HU, the system moves the HU out of the automated aisle to a dedicated bin for realignment.
The system resets the number of stock transfers for the HU to 0.
5.9.4 Resource
You must create a resource for the resource type in the application menu.
Determine the location to which the EWM system can drop off a picked-up HU in the case of an error. In this
example, this is the clarification conveyor.
An important note:
The EWM and control generally communicate through the HU number. The data of a telegram must contain at
least:
HU number
Source bin
Destination bin
If resources are in use, you can use two-step commissioning (“pull-push” orders). The PLC should also follow
the procedure below so that the communication between SAP EWM and the PLC works.
If the telegram structure contains the CP field (current communication point), make sure that the field is not
filled in for resource orders.
In the example warehouse, the three stacker cranes now need to be connected to SAP EWM as well.
The following steps are necessary to do this:
Storage bins of the high rack storage area aisles must be created and added to the layout-oriented
storage control (3 storage groups)
Three activity areas are needed for the stacker cranes
Stacker cranes must be mapped as resources
The PLC and communication channels must be created
Queues are needed for the warehouse tasks of the stacker cranes and the appropriate determination
criteria
The high rack storage area must have storage type role J.
(… Special bin types are not necessary for MFS. Requests, if required, result only from the storage, as is so
for manual warehouses …)
You can affect queue determination through bin access types. SAP recommends using a separate bin access
type for each aisle:
The sample high rack storage area has 3 aisles. Each aisle has 5 columns (“SS”), 3 levels (“LL”), and 5 bins
for each field. In the aisles, there is a left (“D” = 1) and right (“D” = 2) for each of these bins.
30
For storage control, it is important that the storage bins belong to a storage group (aisle 1, aisle 2, …). When you create a procedure
for each aisle, you can enter the storage group right away. However, it is relatively easy to do at a later time from the application menu
(“Mass change”).
If there is not a status profile for the storage bins, you must create one:
Select a profile:
Preliminary Note
SAP EWM gives you the possibility to direct resources to storage bins on optimized routes. For this purpose,
warehouse tasks (WTs) are bundled into warehouse orders (WOs). “Sorting” controls the order in which the
WTs within a WO should be processed.
In some circumstances depending on the type of activity (putaway, stock removal, inventory and so on), you
may want to use a different sequence for processing the WTs of a WO. For this reason, you always need to
sort the storage bins based on activities.
Perform this activity for both storage types. Attention: You have to repeat these steps if new storage bins are
created.
Storage control must be extended to incorporate the paths in the three aisles.
Storage groups are used in the storage control. In the following image, the entries from ID point CP01 are
marked in aisle 131:
31
The meaning of the last row is explained in the following section 6.3.
Generally, the storage control does not need an entry for the last stage. If no other entry is found in the storage
control, the program assumes that it is dealing with the last stage and activates the passive WT. You may not
want this in an automated warehouse. Just because there is not an entry in the storage control, does not mean
that the resulting order is necessarily useful for the affected PLC. For example, an HU could be taken to the
wrong aisle due to an offset on the automatic storage retrieval. There is no entry in customizing of the storage
control for the stage from the putaway location to the actual destination (a storage bin in a different aisle).
Therefore, an unnecessary warehouse order would be sent to the PLC (depending on queue determination
rules).
You can also do this to control stock transfers within an aisle using customizing.
Example: last communication point before the destination (putaway aisle 1):
Storage control:
In interaction with the setting at communication point CP12, this entry in the storage control makes sure that
only HUs with the destination “aisle 1” are put away by CP12.
You need to follow the steps below for setting up a stacker crane as a resource.
Create PLC and communication channel (see section 4.1)
Create queue for warehouse tasks of the resource
Set up queue determination criteria
Create Resource Type
Create resource
Create queues:
The first and last three rows make sure that all orders that have one of the “RCKx” activity areas as source or
destination end up in the correct queue.
The three marked entries in the middle also control the stock transfer orders from putaway station to stock
removal station of a stacker crane in the appropriate stacker crane queue. The storage bin of the relevant
putaway station must have bin access type RCKx.
You need several resource types only if the resources to be controlled with regard to the criteria set here are
different: interleaving yes/no, size of order buffer, step sequence of telegram communication relating to an
order.
Interleaving
If interleaving is activated, SAP EWM alternately assigns the resource a putaway and a stock removal in each
case. Each putaway is followed by a stock removal (when available and executable). The opposite also applies.
Interleaving overlays the order priority (coming from the warehouse process type). This takes into account all
WTs
whose earliest start date has been reached,
whose destination is undisturbed and has free capacity,
whose latest classified start date is the most urgent of those in the queue.
A latest classified start date is a rounding of the “latest start date” (LSD). You can control rounding for the LSD
using the “mode” (see 6.4.4).
Example: see section 0.
Resource WT Confirmation
The following is a list of the WT confirmation options available:
A One-Step Confirmation (full movement) this is the standard case. The resource receives an order with
the task from source to destination and confirms the order after it is completed.
B Two-Step Confirmation (full movement with start message): the resource receives an order with the
task from source to destination, confirms the order at the source, and then confirms it at the destination.
Two-Step Commissioning (half movement): the resource confirms that an HU has been picked up and
waits for a target that it will also confirm after completion (also called “pull-push orders”).
Here you can also assign the order queues that should be processed by the relevant resource.
The error bin is the storage bin that should be used if the error Bin occupied occurs (the BAdI can override
this)32.
Order priority plays a big role for resources. It is determined by the warehouse process type. The latest start
date is even more important. Each order receives a latest start date (which usually comes from the delivery).
When selecting the next order for a resource, you should pay attention to a certain pool of orders of equal
importance to select the one among them that means the smallest empty route for the resource. For this reason,
classify the latest start date. You can set how much you want to round to be dependent on the activity.
32
See section 6.4.5.
The latest start date should be rounded to the hour (for example, 15:15 to 15:00).
You can set the reaction to the Bin occupied error through a EWM exception.
… to a EWM exception.
The context must be MF3 and the execution step A0 (if these attributes are set, the program searches for the
exception). Store BINO as an internal process code. This will trigger subsequent processing.
Creating an Alert
Add an alert to an exception.
A row with the name of the exception appears in the alert monitor:
You can enter the storage bin for error situations in the master data of the resource:
In the example warehouse, 0285-CP13 is the stock removal station of aisle 1. Since there is an error entered
in the HU, the HU is derived to the clarification bin if the BAdI is not successful.
In this case, Action 04 means that this involves the destination bin of the warehouse task:
The prerequisite is that the status profile is assigned to the storage bins.
You also have to define a EWM exception here and assign the error code of the telegram to this exception.
The BINE process code cancels the current warehouse task and tries to meet the related requirements with a
new warehouse task.
By using status management, you can set that the storage bin reported as empty is blocked for checking
purposes:
In this case, you can use the action ID to control that this involves the source bin ...
Product WT and HU WT
For stock removals, the system usually creates at least two warehouse tasks for each source HU:
A product warehouse task for the quantity to be taken from the HU (even for complete stock pick) and
An HU warehouse task for the HU to be moved.
If the HU warehouse task cannot be directly carried out according to the storage control requirement, a third
WT is additionally created (having regard to the system availability and settings):
An HU storage task for the first transfer step.
The product warehouse task is inactive. The original HU warehouse task is also inactive if it cannot be carried
out directly.
The original HU WT is active if the HU arrives at the storage bin from which it can directly reach the destination.
Using aisle 1 as an example, everything from a storage bin to the storage group RCK1 in storage type 0280 33
must then go through the stock removal station of aisle 1, communication point CP13.
Starting here, the GI zone (storage bin in storage type 9020) comes into play as a destination. Everything from
CP14 to 9020 through the conveyor for full pallet stock removal CP05:
The End indicator is set at communication point CP06. This means that this is where storage control ends
(in this example). The inactive warehouse task can be activated.
33
As long as there nothing that is defined in more detail, such as stock transfer from bin to bin in the aisle.
If there is malfunction in the aisles, the affected storage bins can be blocked automatically.
Storage Control
Partial picks must be controlled using the pick point. You can define this also in the layout-oriented storage
control. You define an entry with pick point that applies only for HUs from which a partial quantity can be
removed.
The following settings are available for the “Whole HU” parameter.
The program then changes the destination of the HU warehouse task to the specified intermediate location
(0285-CP08 in this example) and checks whether other intermediate destinations are defined for the way there.
In this example, there are meanwhile three warehouse tasks for this procedure:
An inactive product WT for the quantity to be commissioned
An inactive HU WT for the pick point
An active HU WT for each of the next intermediate locations
After arrival at pick point CP08, the product WT is still open (row 1). This is now processed in the packing
transaction.
Creating Pick HU
In the packing transaction for pick point 1, you can see the pick WT:
You create a pick HU at the communication point for pick HUs (CP09) – more precisely: at storage bin 0285-
CP09.
Picking
Then the quantity can be repacked using drag and drop and the picking process can then be confirmed.
Conveying Pick HU
When you close the pick HU (check symbol in the header), warehouse tasks are created for conveying the HU:
The HU is further transferred to 9020 according to the layout-oriented storage control using CP10, CP05, and
CP06.
7 Appendix
7.1 User Rights for PLC User
Scanner Telegram
No Read PLC Tele <MFSERR> Tele Back- MSCA a) none a) HU stays where it is a) -
ground b) CRCL b) Diversion to clarification bin b) HU
Unknown HU was reported EWM Code MFS7 Tele Back- MUFO a) none a) HU stays where it is a) -
ground b) HUNO b) Temp HU is created and diverted to b) HU
clarification bin
HU posting change to different EWM Custom PLC MLOC Tele Back- MLOC CHBD HU is reposted
position ground
Further treatment of HU reposted EWM Code MFS1 Tele Back- MLO2 a) none a) - a) -
to different destination ground b) CRCL b) Diversion to clarification bin b) HU
ID Point Telegram
No Read See scanner
Unknown HU See scanner
Reported at unexpected See scanner
destination
Incorrect contours PLC Tele <MFSERR> Tele Back- MCON a) none a) HU stays where it is a) -
ground b) CRCL b) Diversion to clarification bin b) HU
Undefined HU type PLC Tele <MFSERR> Tele Back- MHUT a) none a) HU stays where it is a) -
ground b) CRCL b) Diversion to clarification bin b) HU
Undefined HU type EWM Code Alert, Telegram is not processed
Excessive weight PLC Tele <MFSERR> Tele Back- MWEI a) none a) HU stays where it is a) -
ground b) CRCL b) Diversion to clarification bin b) HU
Excessive weight EWM BAdI BADI
Putaway strategy cannot find EWM Code Alert, HU stays where it is
storage bin
Weight/Quantity not plausible EWM BAdI BADI
Found stor. Bin, but is temporarily EWM BAdI BADI
not available. Somewhere in
transit capacity is missing or there
is a malfunction
Found stor. Bin, but is not available EWM BAdI BADI
in the long term. Somewhere in
transit long-term block
Create Follow-Up WT
No way to destination of EWM Code Alert, HU stays where it is
appropriate WT (no matching
entry in storage control)
Next segment no capacity EWM Customizing MCAP Seg Back- MCAP a) NSND a) Warehouse task is created, but not sent
segment ground b) STAY b) Warehouse task is not created
Next CP no capacity EWM Customizing MCAP CP Back- MCAP a) NSND a) Warehouse task is created, but not sent
CP ground b) STAY b) Warehouse task is not created
Resource no capacity EWM (WT is created, HU stays where it is)
Next segment is blocked EWM <Segment> Seg Back- MBLK a) NSND a) Warehouse task is created, but not sent
(long-term) ground b) STAY b) Warehouse task is not created
Next segment is malfunctioning EWM <Segment> Seg Back- MBRK a) NSND a) Warehouse task is created, but not sent
(short-term) ground b) STAY b) Warehouse task is not created
Next CP is blocked (long-term) EWM <Communica- CP Back- MBLK a) NSND a) Warehouse task is created, but not sent
tion point> ground b) STAY b) Warehouse task is not created
Next CP is malfunctioning EWM <Communica- CP Back- MBRK a) NSND a) Warehouse task is created, but not sent
(short-term) tion point> ground b) STAY b) Warehouse task is not created
Resource is blocked (long-term) EWM <Resource> Res Back- MBLK a) NSND a) Warehouse task is created, but not sent
ground b) STAY b) Warehouse task is not created
Resource is malfunctioning EWM <Resource> Res Back- MBRK a) NSND a) Warehouse task is created, but not sent
(short-term) ground b) STAY b) Warehouse task is not created
Process WT Confirmation
There are no open WTs for the EWM Code See scanner (different destination)
HU with destination reported by
PLC (open WTs with different
destination or no open WTs)
Order cannot be executed at the PLC Tele <MFSERR> Tele Back- MDNY REDE WT is reset to status Y (relevant for external
moment (for example, device ground system)
busy, not ready)
Order cannot be executed in PLC Tele <MFSERR> Tele Back- MTEL none Alert
general (for example, unknown ground
destination)
Source empty (storage bin) PLC Tele <MFSERR> Tele Back- MBNE a) - a) Alert is created, WT is not confirmed, a) -
(Note: PLC may not use this error ground b) BINE Resource still occupied b) Stor. bin
code for CP.) b) WT is cancelled, “Bin denial” logic posts (using
individual quantities/whole HU (?) to StatusMgmt)
difference and searches new stock. Stor. bin
block created using status management at
alert.
Destination occupied (storage bin) PLC Tele <MFSERR> Tele Back- MBNO a) - a) Alert is created, WT is not confirmed, a) -
(Note: PLC may not use this error ground b) BINO Resource still occupied b) Stor. bin
code for CP.) b) Searching for new stor. bin, WT is changed (using
and immediately sent. StatusMgmt)
Storage bin can be blocked and subsequent
processing can be triggered through
StatusMgmt and Workflow.
Process Confirmation of
Cancellation
PLC refuses cancellation PLC Tele <MFSERR> Tele Back- MCAN NOCN Status of warehouse order is reset to “sent”.
ground
Monitor
Set HU error Operator GUI CP Dialog MHUX CRCL Accesses when HU is triggered HU
Delete HU error Operator GUI Dialog No effect HU
Short-term communication point Operator GUI CP Dialog MBRK a) NSND Process code is evaluated during WT CP
malfunction b) STAY processing
Short-term segment malfunction Operator GUI Segm Dialog MBRK a) NSND Process code is evaluated during WT Segment
b) STAY processing
Short-term resource malfunction Operator GUI Res Dialog MBRK a) NSND Process code is evaluated during WT Resource
b) STAY processing
Long-term communication point Operator GUI CP Dialog MBLK a) NSND Process code is evaluated during WT CP
malfunction (block) b) STAY processing
Long-term segment malfunction Operator GUI Segm Dialog MBLK a) NSND Process code is evaluated during WT Segment
(block) b) STAY processing
Long-term resource malfunction Operator GUI Res Dialog MBLK a) NSND Process code is evaluated during WT Resource
(block) b) STAY processing
Unblocking communication point Operator GUI MFS5 CP Dialog MRDY none Unblock message is logged as alert.
Unblocking segment Operator GUI MFS2 Segm Dialog MRDY none Unblock message is logged as alert.
Unblocking resource Operator GUI MFS4 Res Dialog MRDY none Unblock message is logged as alert.
Stop communication channel Operator GUI Is not logged
Start a communication channel Operator GUI MFS6 Chan- Dialog MCO1 none Alert
nel
This code is carried out in function module /SCWM/MFS_REQ_EXCEPTION for context MF3 and step
A0.
SAP EWM uses an external communication layer to communicate with the controls. This communication layer
must be registered as an external program on the SAP system and offer the function modules described below:
Connection setup (optional),
Send telegram (mandatory),
Connection termination (optional),
Status check (optional).
The EWM system transfers the IP address and port of the control to be connected to the function Connection
setup.
The EWM system transfers the telegrams to be sent to the PLC through the Send telegram module.
When terminating a connection, the communication layer should close the affected socket.
The status check should give the EWM system information on whether the communication layer itself is intact.
You call this module to pass the necessary connection parameters to the communication layer. The
communication layer should be logged on as client at the designated port.
Name
The name of the function module can be set in IMG, for example, “START_CHANNEL”.
Input Parameters
Parameter Name Type Length Use
IV_PLC CHAR 8 Name for the PLC that should be used to establish the connection
IV_CHANNEL CHAR 1 Identification for this connection to this PLC (it is possible to operate
several channels to a PLC in parallel)
IV_TERMINATOR CHAR 2 Character string that identifies the end of the transferred message
Return Parameters
- None
Exceptions
Exception Meaning
1 Communication error, IP/port not available. The parameters are still held in the
communication layer and used when subsequent sending attempts are made.
99 Other error
You call this parameter to pass a telegram to the communication layer for forwarding to the PLC.
Name
The name of the function module can be set in IMG, for example, “SEND”.
Input Parameters
Parameter Name Type Length Use
IV_PLC CHAR 8 Name for the PLC that should be used to establish the connection
IV_CHANNEL CHAR 1 Identification for this connection to this PLC (it is possible to operate several
channels to a PLC in parallel)
Return Parameters
Parameter Name Type Length Use
Exceptions
Exception Meaning
1 Communication error
99 Other error
You call this parameter to pass a telegram received from the PLC to the EWM system.
Name
The name of the function module is: “/SCWM/MFS_RECEIVE2”.
Input Parameters
Parameter Name Type Length Use
IV_PLC CHAR 8 Name for the PLC that should be used to establish the connection (optional)
IV_CHANNEL CHAR 1 Identification for this connection to this PLC (it is possible to operate several
channels to a PLC in parallel) (optional)
If you choose the second alternative, the warehouse number, PLC, and communication channel are determined
from the IP address and port through customizing.
Return Parameters
Exceptions
Exception Meaning
1 Communication error
99 Other error
You call this module to pass a request to terminate the connection to the communication layer.
Name
The name of the function module can be set in IMG, for example, “CLOSE”.
Input Parameters
Parameter Name Type Length Use
IV_PLC CHAR 8 Name for the PLC that should be used to terminate the connection
IV_CHANNEL CHAR 1 Identification for this connection to this PLC (it is possible to operate several
channels to a PLC in parallel)
Return Parameters
None
Exceptions
Exception Meaning
1 Communication error
99 Other error
7.4.5 Function Module for Checking the Availability of the Communication Layer
You call this module to check the status of the communication layer.
Name
The name of the function module can be set in IMG, for example, “HEALTH_CHECK”.
Input Parameters
None
Return Parameters
Parameter Name Type Length Use
Exceptions
Exception Meaning
1 Communication error
99 Other error
Telegram types:
AF – Cat. O: Actual Routing
To download and use the Emulation you will need to download it from the Subversion Repository (SVN):
https://forge.sap.corp/svn/ewmplcemu
Therefor you need to install Eclipse (SAP Software Market Place) with additional SVN PlugIn
Then create a new SVN Project and checkout the latest version from repository.
List of Abbreviations
HU Handling unit
ID Point Identification point, mainly used for the point where the storage bin is
determined in relation to automated warehouses
SC Stacker crane
WT Warehouse task, task for moving an HU or a quantity from one storage bin to
another
General Disclaimer
SAP does not represent or endorse the accuracy or reliability of any of the information, content, or advertisements (collectively, the "Materials")
contained on, distributed through, or linked, downloaded, or accessed from any of the services contained on this Web site (the "Service"), nor the
quality of any products, information, or other materials displayed, purchased, or obtained by you as a result of an advertisement or any other
information or offer in or in connection with the Service (the "Products"). You hereby acknowledge that any reliance upon any Materials shall be at
your sole risk. SAP reserves the right, in its sole discretion and without any obligation, to make improvements to, or correct any error or omissions
in any portion of the Service or the Materials.
THE SERVICE AND THE MATERIALS ARE PROVIDED BY SAP ON AN "AS IS" BASIS, AND SAP EXPRESSLY DISCLAIMS ANY AND ALL
WARRANTIES, EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
PARTICULAR PURPOSE, WITH RESPECT TO THE SERVICE OR ANY MATERIALS AND PRODUCTS. IN NO EVENT SHALL SAP BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, PUNITIVE, OR CONSEQUENTIAL DAMAGES OF ANY KIND WHATSOEVER WITH RESPECT
TO THE SERVICE, THE MATERIALS, AND THE PRODUCTS.
SAP encourages you to exercise discretion while browsing the Internet using this site.
SAP makes no representations concerning any endeavor to review the content of sites linked to this site or any of the Materials, and so SAP isn't
responsible for the accuracy, copyright compliance, legality, or decency of material contained in sites listed in the directory or in the Materials.
SAP respects the rights (including the intellectual property rights) of others, and we ask our users to do the same. SAP may, in appropriate
circumstances and in its sole discretion, terminate the accounts of users that infringe or otherwise violate such rights of others.
If you believe that your work has been copied in a way that constitutes copyright infringement, please follow the instructions at the top of this
page.
No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of SAP AG. The
information contained herein may be changed without prior notice.
Some software products marketed by SAP AG and its distributors contain proprietary software components of other software vendors.
Microsoft, Windows, Excel, Outlook, and PowerPoint are registered trademarks of Microsoft Corporation.
IBM, DB2, DB2 Universal Database, System i, System i5, System p, System p5, System x, System z, System z10, System z9, z10, z9, iSeries,
pSeries, xSeries, zSeries, eServer, z/VM, z/OS, i5/OS, S/390, OS/390, OS/400, AS/400, S/390 Parallel Enterprise Server, PowerVM, Power
Architecture, POWER6+, POWER6, POWER5+, POWER5, POWER, OpenPower, PowerPC, BatchPipes, BladeCenter, System Storage, GPFS,
HACMP, RETAIN, DB2 Connect, RACF, Redbooks, OS/2, Parallel Sysplex, MVS/ESA, AIX, Intelligent Miner, WebSphere, Netfinity, Tivoli and
Informix are trademarks or registered trademarks of IBM Corporation.
Linux is the registered trademark of Linus Torvalds in the U.S. and other countries.
Adobe, the Adobe logo, Acrobat, PostScript, and Reader are either trademarks or registered trademarks of Adobe Systems Incorporated in the
United States and/or other countries.
Oracle is a registered trademark of Oracle Corporation.
UNIX, X/Open, OSF/1, and Motif are registered trademarks of the Open Group.
Citrix, ICA, Program Neighborhood, MetaFrame, WinFrame, VideoFrame, and MultiWin are trademarks or registered trademarks of Citrix
Systems, Inc.
HTML, XML, XHTML and W3C are trademarks or registered trademarks of W3C® , World Wide Web Consortium, Massachusetts Institute of
Technology.
JavaScript is a registered trademark of Sun Microsystems, Inc., used under license for technology invented and implemented by Netscape.
SAP, R/3, xApps, xApp, SAP NetWeaver, Duet, PartnerEdge, ByDesign, SAP Business ByDesign, and other SAP products and services
mentioned herein as well as their respective logos are trademarks or registered trademarks of SAP AG in Germany and in several other countries
all over the world. All other product and service names mentioned are the trademarks of their respective companies. Data contained in this
document serves informational purposes only. National product specifications may vary.
These materials are subject to change without notice. These materials are provided by SAP AG and its affiliated companies ("SAP Group") for
informational purposes only, without representation or warranty of any kind, and SAP Group shall not be liable for errors or omissions with respect
to the materials. The only warranties for SAP Group products and services are those that are set forth in the express warranty statements
accompanying such products and services, if any. Nothing herein should be construed as constituting an additional warranty.