Power Pick Global - Mid-Americalinktivity.mid-america.com/mabsinternalweb/files/GP.Cross... ·...

100
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.- © 2010 All rights reserved. Copyright by Kardex Software GmbH, D- This document - even partly - must not be format and content is subject to change w All trademarks in this document are prop Power Power Cross En -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.- -76744 Wörth, Germany. e printed and/or copied without the agreement of Kardex Soft without special announcement. perty of the respective owner, even though they are not extrao Pick Global r Pick Global nterprise Unit Version 3.1 tware GmbH. Changing in ordinarily marked.

Transcript of Power Pick Global - Mid-Americalinktivity.mid-america.com/mabsinternalweb/files/GP.Cross... ·...

-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.- © 2010 All rights reserved. Copyright by Kardex Software GmbH, D-This document - even partly - must not be printed and/or copied without the agreement of format and content is subject to change without special announcement.All trademarks in this document are property of the respective

Power Pick Global

Power Pick GlobalCross Enterprise Unit

-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-

-76744 Wörth, Germany. must not be printed and/or copied without the agreement of Kardex Software GmbH

format and content is subject to change without special announcement. All trademarks in this document are property of the respective owner, even though they are not extraordinarily marked.

Power Pick Global

Power Pick Global

Cross Enterprise Unit

Version 3.1

Kardex Software GmbH. Changing in

owner, even though they are not extraordinarily marked.

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

Date Version

22 March 2010 2.1

13 Sep 2010 2.1.2

25 Nov 2010 2.2.0

3 March 2011 2.3.0

4 April 2011 2.3.0

25 May 2011 2.3.1

09 Jun 2011 3.1

22 Nov 2011 3.1

23 Nov 2011 3.1

24 Dec 2012 3.1

30 Dec 2012 3.1

02 Feb 2012 3.1

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Revision History

Version Description

The document is prepared for release 2.1

Updated for SP2

Update for version 2.2

Update for version 2.3

Added the Web Service Documentation

Adjusted and extended samples for Web

Services

Added the Rename Material Service

Documentation

Update Figure 4...7

Update Material Service

Added StockSynchronization Service

Added the XML Channel Documentation

Update Database Channel

Rev. Date:

5.15.2012

Page 2 of 100

Author

A.Jamalian

A.Jamalian

A.Jamalian

A.Jamalian

A.Jamalian

N.Verzano

melalot

melalot

melalot

melalot

melalot

melalot

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

1. About Cross Enterprise Unit

1.1 Architecture

2. Access the Configuration

2.1 List of Main Parameters

2.2 Add, Remove a Job Profile

2.3 Modify a Job Profile –

2.4 Host Communication Wizard

2.5 Host Communication Wizard

2.6 Host Communication Wizard

3. Template

3.1 Starting Template Designer

3.2 Template Designer Window

3.3 Template – Field’s Format

3.4 Template – Expression

4. Using Data Transfer Form

4.1 Create New Profiles

4.2 Manual Start of the Jobs

5. Services

5.1 Material Service

5.2 OrderService

5.3 TransactionsService

5.4 Location Import Service

5.5 Rename Material Service

5.6 StockSynchronization Service

6. Channels

6.1 FileChannel

6.2 DatabaseChannel

6.3 XMLChannel

7. Web Services

7.1 Available Services

7.2 Activating the Web Services

7.3 Web Services Code Sample

7.4 Web Service function description

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Table of Contents

List of Main Parameters

Add, Remove a Job Profile

Access the Wizard

Host Communication Wizard – Page1

Host Communication Wizard – Page2

Host Communication Wizard – Page3

Starting Template Designer

Template Designer Window

Field’s Format

Manual Start of the Jobs

Location Import Service

Rename Material Service

StockSynchronization Service

Activating the Web Services

Web Services Code Sample

Web Service function description

Rev. Date:

5.15.2012

Page 3 of 100

4

4

4

5

5

7

8

9

10

11

11

12

15

16

16

16

17

18

18

21

24

28

31

32

33

33

35

38

44

44

48

48

64

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

1. About Cross Enterprise Unit

Cross Enterprise Unit is a subsystem which is responsible to communicate with external software systems.

The Cross Enterprise Unit will be called CEU for short.

1.1 Architecture

The Cross Enterprise Unit is a Windows NT Service, wh

communicate to a Host system via Channels. The Channel can be a simple text file, or a database table,

which contains the formatted data. The CEU can access the channel’s data and convert it or map it to the

internal data structure, and based on the configuration pass the prepared data structure to the internal

business logic. It can also receive the data from Business logic, map it to Host data format and send it to

host via channel. All of these actions are highly co

started manually by the user.

2. Access the Configuration

All the configuration of CEU is saved centrally as Station

in standard way via System Configurato

group number 800201

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Power Pick Global

About Cross Enterprise Unit

subsystem which is responsible to communicate with external software systems.

The Cross Enterprise Unit will be called CEU for short.

The Cross Enterprise Unit is a Windows NT Service, which runs as background process and can

communicate to a Host system via Channels. The Channel can be a simple text file, or a database table,

which contains the formatted data. The CEU can access the channel’s data and convert it or map it to the

data structure, and based on the configuration pass the prepared data structure to the internal

business logic. It can also receive the data from Business logic, map it to Host data format and send it to

host via channel. All of these actions are highly configurable, and can start on scheduled basis, or can be

started manually by the user.

Access the Configuration

All the configuration of CEU is saved centrally as Station-Based parameter in database and can be accessed

in standard way via System Configurator of the software. The CEU configuration is available under the

Figure 1: System Configuration in UI.Win

Rev. Date:

5.15.2012

Page 4 of 100

subsystem which is responsible to communicate with external software systems.

ich runs as background process and can

communicate to a Host system via Channels. The Channel can be a simple text file, or a database table,

which contains the formatted data. The CEU can access the channel’s data and convert it or map it to the

data structure, and based on the configuration pass the prepared data structure to the internal

business logic. It can also receive the data from Business logic, map it to Host data format and send it to

nfigurable, and can start on scheduled basis, or can be

Based parameter in database and can be accessed

r of the software. The CEU configuration is available under the

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

2.1 List of Main Parameters

Table 1: Main Parameters

Number Name

800201-01 Enabled

800201-02 Job Profiles

800201-03 Web Services

Enabled

800201-04 Web Services Port

800201-05 Secure Web Services

Enabled

800201-06 Secure Web Servic

Port

800201-07 Session Timeout

2.2 Add, Remove a Job Profile

Click on ’02 Job Profiles’ text, the button appears on the right

to access the contents of the Job Profiles Property.

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

List of Main Parameters

Description

Enabled If set to ‘True’, enables the automatic CEU service. This

setting does not change the behaviour of CEU in manual

mode.

Job Profiles A collection of data transfer profiles. Each profile contains a

configuration for a data transfer job

Web Services

Enabled

Enables the Web Services for the CEU running on the

selected station. The Web Services start only if the License

for Web Services Module or Mobile Devices is available.

Web Services Port The Port number of the Web Services. This port must be

free on the selected station, otherwise the web services may

not start and work properly.

Secure Web Services

Enabled

Enables or disables the secure web services

Secure Web Services The port number of the secure web services

Session Timeout The timeout in minutes to close a session if the

corresponding clinet is inactive.

Add, Remove a Job Profile

Click on ’02 Job Profiles’ text, the button appears on the right side. Click on the button to open the dialog

to access the contents of the Job Profiles Property.

Rev. Date:

5.15.2012

Page 5 of 100

If set to ‘True’, enables the automatic CEU service. This

setting does not change the behaviour of CEU in manual

A collection of data transfer profiles. Each profile contains a

fer job

Enables the Web Services for the CEU running on the

selected station. The Web Services start only if the License

for Web Services Module or Mobile Devices is available.

The Port number of the Web Services. This port must be

free on the selected station, otherwise the web services may

Enables or disables the secure web services

The port number of the secure web services

The timeout in minutes to close a session if the

side. Click on the button to open the dialog

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

The ‘CEUParamElement Collection Editor’ dialog appears which can be used to add, remove the Job

Profiles.

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Figure 2: Job Profiles

The ‘CEUParamElement Collection Editor’ dialog appears which can be used to add, remove the Job

Figure 3: Parameter Collection Editor

Rev. Date:

5.15.2012

Page 6 of 100

The ‘CEUParamElement Collection Editor’ dialog appears which can be used to add, remove the Job

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

Use Add or Remove Buttons to create a new job profile, or to remove an existing one. The changes will be

applied when this dialog is closed by clicking on OK button.

when the save button on the system configuration dialog is clicked.

Table 2: Job Profile Buttons

Number Name

N/A Enabled

N/A Job

N/A Name

2.3 Modify a Job Profile – Access the Wizard

The detailed configuration of a Job profile can be changed using the dedicated Wizard. To access the

wizard, click kon the Job property on the right pane of the ‘CEUParamElement Collection Editor’ dialog,

the edit button appears on the right side of the property value. Click on the button to start the Host

Communication Wizard.

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Use Add or Remove Buttons to create a new job profile, or to remove an existing one. The changes will be

applied when this dialog is closed by clicking on OK button. However the changes are saved to database

when the save button on the system configuration dialog is clicked.

Description

If set to ‘True’, enables the selected Job Profile. The CEU

Service discards the Job Profiles which are not Enabled.

However the disabled Job Profiles can be used in manual

mode.

The configuration of the job Profile, which can be created or

modified using the dedicated Wizard.

A Friendly name of the Job Profile. A Job profile is

identified by its ID which is in Guid Format, therefore there

is no restriction for the Job Profile name, if it is even empty

or not unique.

Access the Wizard

The detailed configuration of a Job profile can be changed using the dedicated Wizard. To access the

wizard, click kon the Job property on the right pane of the ‘CEUParamElement Collection Editor’ dialog,

the right side of the property value. Click on the button to start the Host

Rev. Date:

5.15.2012

Page 7 of 100

Use Add or Remove Buttons to create a new job profile, or to remove an existing one. The changes will be

However the changes are saved to database

If set to ‘True’, enables the selected Job Profile. The CEU

Service discards the Job Profiles which are not Enabled.

However the disabled Job Profiles can be used in manual

The configuration of the job Profile, which can be created or

ied using the dedicated Wizard.

A Friendly name of the Job Profile. A Job profile is

identified by its ID which is in Guid Format, therefore there

is no restriction for the Job Profile name, if it is even empty

The detailed configuration of a Job profile can be changed using the dedicated Wizard. To access the

wizard, click kon the Job property on the right pane of the ‘CEUParamElement Collection Editor’ dialog,

the right side of the property value. Click on the button to start the Host

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

2.4 Host Communication Wizard

This page deals with the Job’s scheduling. A Job can be in manual mode, which means it may not be

started automatically by CEU Service. If the Job is not in manual mode, then it is possible to specifiy the

scheduling information, which includes the first start date and time of the job, and then the repeat interval

in seconds.

If the Repeat Interval is set to zero, means the transfer job will not be repeated. The transfer Job starts only

once if the start date and time matches the date and time of the system with the running CEU service.

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Host Communication Wizard – Page1

This page deals with the Job’s scheduling. A Job can be in manual mode, which means it may not be

started automatically by CEU Service. If the Job is not in manual mode, then it is possible to specifiy the

scheduling information, which includes the first start date and time of the job, and then the repeat interval

Figure 4: Host Communication Wizard

If the Repeat Interval is set to zero, means the transfer job will not be repeated. The transfer Job starts only

once if the start date and time matches the date and time of the system with the running CEU service.

Rev. Date:

5.15.2012

Page 8 of 100

This page deals with the Job’s scheduling. A Job can be in manual mode, which means it may not be

started automatically by CEU Service. If the Job is not in manual mode, then it is possible to specifiy the

scheduling information, which includes the first start date and time of the job, and then the repeat interval

If the Repeat Interval is set to zero, means the transfer job will not be repeated. The transfer Job starts only

once if the start date and time matches the date and time of the system with the running CEU service.

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

2.5 Host Communication Wizard

In this page the data transfer service is selected and configured. The property grid shows the relevant

properties and settings for the selected service. Please refer to the section ‘Services’ in this document for a

list of available services and their relevant settings.

Figure

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Host Communication Wizard – Page2

In this page the data transfer service is selected and configured. The property grid shows the relevant

properties and settings for the selected service. Please refer to the section ‘Services’ in this document for a

t of available services and their relevant settings.

Figure 5: Choose Service in Host Communication Wizard

Rev. Date:

5.15.2012

Page 9 of 100

In this page the data transfer service is selected and configured. The property grid shows the relevant

properties and settings for the selected service. Please refer to the section ‘Services’ in this document for a

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

2.6 Host Communication Wizard

In this page the data transfer channel is selected and configured. The

properties and settings for the selected channel. Please refer to the section ‘Channels’ in this document for a

list of available channels and their relevant settings.

Figure 6: Choose Input Chann

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Host Communication Wizard – Page3

In this page the data transfer channel is selected and configured. The property grid shows the relevant

properties and settings for the selected channel. Please refer to the section ‘Channels’ in this document for a

list of available channels and their relevant settings.

: Choose Input Channel in Host Communication Wizard

Rev. Date:

5.15.2012

Page 10 of

100

property grid shows the relevant

properties and settings for the selected channel. Please refer to the section ‘Channels’ in this document for a

el in Host Communication Wizard

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

3. Template

The Template is a text string which specifies the details and format of the input or output information, used

to transfer the data. For example, if the input data is a text file, the template specifies whic

available in each line of the text file, what is the format of each column etc. As the Template is in text

format, it can be basically typed in per hand, however to avoid the possible mistakes, a Template designer

is available to assist the users to create the templates correctly.

3.1 Starting Template Designer

Click on the Property Name which is going to be designed using Template Designer (for example the

‘Pattern’ property of File Channel, or Database Channel)

Property value. Click on it to pop up the designer.

Figure

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

The Template is a text string which specifies the details and format of the input or output information, used

to transfer the data. For example, if the input data is a text file, the template specifies whic

available in each line of the text file, what is the format of each column etc. As the Template is in text

format, it can be basically typed in per hand, however to avoid the possible mistakes, a Template designer

sers to create the templates correctly.

Starting Template Designer

Click on the Property Name which is going to be designed using Template Designer (for example the

‘Pattern’ property of File Channel, or Database Channel) – A button appears on the right

Property value. Click on it to pop up the designer.

Figure 7: Pattern in Host Communication Wizard

Rev. Date:

5.15.2012

Page 11 of

100

The Template is a text string which specifies the details and format of the input or output information, used

to transfer the data. For example, if the input data is a text file, the template specifies which columns are

available in each line of the text file, what is the format of each column etc. As the Template is in text

format, it can be basically typed in per hand, however to avoid the possible mistakes, a Template designer

Click on the Property Name which is going to be designed using Template Designer (for example the

A button appears on the right side of the

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

3.2 Template Designer Window

Using the template designer window, it is possible to choose the columns, specify the

column, and test the template against sample data.

Figure 8: Pattern Column Headers in Host Communication Wizard

To modify a column, click on the column header in the Grid on the top of the window. There is alw

empty column, which can be used to insert the new columns. Click on Column header, opens the Field

designer pop-up.

The ‘Sample’ field, among the import and export buttons is used to check the template configuration and

test the results by importing and exporting a sample line.

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Template Designer Window

Using the template designer window, it is possible to choose the columns, specify the

column, and test the template against sample data.

: Pattern Column Headers in Host Communication Wizard

To modify a column, click on the column header in the Grid on the top of the window. There is alw

empty column, which can be used to insert the new columns. Click on Column header, opens the Field

The ‘Sample’ field, among the import and export buttons is used to check the template configuration and

g and exporting a sample line.

Rev. Date:

5.15.2012

Page 12 of

100

Using the template designer window, it is possible to choose the columns, specify the format for each

To modify a column, click on the column header in the Grid on the top of the window. There is always an

empty column, which can be used to insert the new columns. Click on Column header, opens the Field

The ‘Sample’ field, among the import and export buttons is used to check the template configuration and

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

Figure

Choose the required field from the Combo box

field is not available in the combo box list.

Table 3: Description of Field Names from the Field Designer

Name

Format

Length

Lookup

Mapping

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Figure 9: Field Designer in Host Communication Wizard

Choose the required field from the Combo box – or type the field name in the combo box, if the required

field is not available in the combo box list.

: Description of Field Names from the Field Designer

Description

Format specifier string. The format specifier can by typed in, however

depending to the type of selected field, there will be some format examples

available, which can be used form the drop down list.

Please see the section below

Lookup is optional settings to find the given keywords and replace them by

another value. The lookup format is

[key1,value1][key2,value2] …

Which in this example. the key1 and key2 will be replaced by value1 and

value2

The lookup works for both import and export, during the export, the field is

first formatted and then the lookup takes place. For the import, first the lookup

is done, then the replaced values are passed to be imported. The lookup works

only for texts, this means either ASCII file channel, or the string fields of the

Database channel. The search is case sensitive and the white spaces and so on

are allowed (there is no trim to keys or values)

Using the characters [,] are reserved for lookup and if they are u

values, depending to the usage it may cause the malfunction of the lookup.

If the input is structured using named columns (like a database table), it will be

used to map the columns to the fields.

Rev. Date:

5.15.2012

Page 13 of

100

or type the field name in the combo box, if the required

Format specifier string. The format specifier can by typed in, however

depending to the type of selected field, there will be some format examples

available, which can be used form the drop down list.

up is optional settings to find the given keywords and replace them by

Which in this example. the key1 and key2 will be replaced by value1 and

The lookup works for both import and export, during the export, the field is

first formatted and then the lookup takes place. For the import, first the lookup

is done, then the replaced values are passed to be imported. The lookup works

s means either ASCII file channel, or the string fields of the

Database channel. The search is case sensitive and the white spaces and so on

Using the characters [,] are reserved for lookup and if they are used for keys or

values, depending to the usage it may cause the malfunction of the lookup.

If the input is structured using named columns (like a database table), it will be

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

Separator

Expression

Click on OK to accept the changes, or close to discard the changes.

will be closed when the user clicks outside the pop

button can be used to remove the selected column.

3.2.1 The import sequence

3.2.2 Length

The Length behavior is different by import or export. By Export the Length is the minimum length of the

field. If the exported field is smaller than specified, it will be padded with white spaces. The format of the

length for export is numeric. The length

By Import the length specifies the size of the field which will be extracted from input and passed to the

system. The Format of the length for import is

• n,m

where n is the start index and m i

Text

Data Column: Text

Separator

Length

Lookup

SetValue

(Format)

Expression

Figure 10: Import Sequence

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Separator is used as a Postfix text string. By export it will be simply appended

to the field, and by import it is used to detect the columns, or simply as a

postfix.

Please see the Section below

Click on OK to accept the changes, or close to discard the changes. Since the field designer is a pop

will be closed when the user clicks outside the pop-up area, this is equivalent to click on OK. The Delete

button can be used to remove the selected column.

The Length behavior is different by import or export. By Export the Length is the minimum length of the

field. If the exported field is smaller than specified, it will be padded with white spaces. The format of the

length for export is numeric. The length can be also negative, then the field will be padded on right.

By Import the length specifies the size of the field which will be extracted from input and passed to the

system. The Format of the length for import is

where n is the start index and m is the end index. The text between the start index and end index will be

Init

Data Column: Text

Data Column: Int,

Double, Date, …

SetValue

(Convcert)

: Import Sequence

Rev. Date:

5.15.2012

Page 14 of

100

Postfix text string. By export it will be simply appended

to the field, and by import it is used to detect the columns, or simply as a

Since the field designer is a pop-up, it

up area, this is equivalent to click on OK. The Delete

The Length behavior is different by import or export. By Export the Length is the minimum length of the

field. If the exported field is smaller than specified, it will be padded with white spaces. The format of the

can be also negative, then the field will be padded on right.

By Import the length specifies the size of the field which will be extracted from input and passed to the

s the end index. The text between the start index and end index will be

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

extracted and forwarded to the system. If only one number is specified, it will be used as end index and the

start index will be zero. The end Index is

be bigger than value of Start index.

The Length can be zero, in such a case, nothing will be extracted from the input text, but the value of the

field will be calculated and set. This can be used with Lookup or

3.2.2.1 Using FIND in Length

In place of either Start or End Index, the Find statement can be used to calculate the index based on the

data. The Syntax of FIND statement is:

• FIND(start, offset, occurrence,

FIND statement searches for the text specified inside the double quotes, beginning from the index specified

in start parameter. The value of offset parameter will be added to the resulted index. The Occurrence

specifies the occurrence of the Text, for exa

Example 1:

The following Length will find the text between the second and third semicolon in the input text:

Length = FIND(0, 1, 2, ";"), FIND(0, 0, 3, ";")

Input = A;BC;DEF;G;

Returned value = DEF

Or:

Input = A;BC;DEF123;G;

Returned value = DEF123

3.3 Template – Field’s Format

The field formats are basically provided by operating system and .NET Framework. Here is a list of the

links for more details. The Behavior of the Format is different

type (Import / Export)

3.3.1 Using Expressions for Enum Fields

Enum fields can be assigned using expressions with their numeric value. The Numeric value must be in

single quotes. The Enum fields cannot be assigned u

Example:

name=DirectionType; expression= IIF(OrderLine.Info2='A', '2', '1')

The DirectionType will be set to “Pick” if the value of OrderLine.Info2 is A, otherwise it will be set to

“Put”.

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

extracted and forwarded to the system. If only one number is specified, it will be used as end index and the

start index will be zero. The end Index is -1 means the whole text. If the value of end index is not

be bigger than value of Start index.

The Length can be zero, in such a case, nothing will be extracted from the input text, but the value of the

field will be calculated and set. This can be used with Lookup or Expressions.

Using FIND in Length

In place of either Start or End Index, the Find statement can be used to calculate the index based on the

data. The Syntax of FIND statement is:

FIND(start, offset, occurrence, “text”)

FIND statement searches for the text specified inside the double quotes, beginning from the index specified

in start parameter. The value of offset parameter will be added to the resulted index. The Occurrence

specifies the occurrence of the Text, for example to find the second or third instance of a given text.

The following Length will find the text between the second and third semicolon in the input text:

FIND(0, 1, 2, ";"), FIND(0, 0, 3, ";")

Field’s Format

The field formats are basically provided by operating system and .NET Framework. Here is a list of the

links for more details. The Behavior of the Format is different based on the field type as well as operation

Using Expressions for Enum Fields

Enum fields can be assigned using expressions with their numeric value. The Numeric value must be in

single quotes. The Enum fields cannot be assigned using their names or string values.

name=DirectionType; expression= IIF(OrderLine.Info2='A', '2', '1')

The DirectionType will be set to “Pick” if the value of OrderLine.Info2 is A, otherwise it will be set to

Rev. Date:

5.15.2012

Page 15 of

100

extracted and forwarded to the system. If only one number is specified, it will be used as end index and the

value of end index is not -1, it must

The Length can be zero, in such a case, nothing will be extracted from the input text, but the value of the

In place of either Start or End Index, the Find statement can be used to calculate the index based on the

FIND statement searches for the text specified inside the double quotes, beginning from the index specified

in start parameter. The value of offset parameter will be added to the resulted index. The Occurrence

mple to find the second or third instance of a given text.

The following Length will find the text between the second and third semicolon in the input text:

The field formats are basically provided by operating system and .NET Framework. Here is a list of the

based on the field type as well as operation

Enum fields can be assigned using expressions with their numeric value. The Numeric value must be in

sing their names or string values.

The DirectionType will be set to “Pick” if the value of OrderLine.Info2 is A, otherwise it will be set to

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

3.3.2 DateTime

For both Import and Export:

http://msdn.microsoft.com/en

3.3.3 Numeric Types (Int, Double)

http://msdn.microsoft.com/

NOTE: the formatting for the numeric fields is not used for the import. To import numeric types

successfully, they need to be valid numbers in the given culture settings.

3.3.4 String

Only for export it is possible to use length to

3.3.5 Enumeration

Enumeration types are those fields which the value can be selected from a fixed size list. For example

OrderType can be Put, Pick, Transfer, Count etc.

http://msdn.microsoft.com/en

3.3.6 Boolean

For both import and export there will be a custom formatting, where the true and false texts are separated

using a comma.

<true>,<false>

3.4 Template – Expression

It is possible to calculate the value of the current field based on the value of the other fields using an

expression. The fields used for such a calculation must be also available in the template. Expression can be

built from the field names appe

their descriptions:

http://msdn.microsoft.com/en

4. Using Data Transfer Form

Data Transfer form can be accessed in the main application, under the Tools menu. Using the Data Tranfer

Form, it is possible to create a new profile, modify existing one or remove the

active workstation.

4.1 Create New Profiles

Click on New Profile button, the wizard appears. If the profile name is empty, the wizard automatically

generates a name based on the selected service. If the profile name already exists, th

append a number to the name, to avoid the duplicate name. This is only for convenience, otherwise the

duplicated profile names or empty name string does not impact the behaviour of the software. The

automatic name generation is only avail

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

nd Export:

http://msdn.microsoft.com/en-us/library/az4se3k1.aspx

Numeric Types (Int, Double)

http://msdn.microsoft.com/en-us/library/dwhawy9k.aspx

NOTE: the formatting for the numeric fields is not used for the import. To import numeric types

successfully, they need to be valid numbers in the given culture settings.

Only for export it is possible to use length to pad the string with white spaces, either left or right aligned.

Enumeration types are those fields which the value can be selected from a fixed size list. For example

OrderType can be Put, Pick, Transfer, Count etc.

http://msdn.microsoft.com/en-us/library/c3s1ez6e.aspx

For both import and export there will be a custom formatting, where the true and false texts are separated

It is possible to calculate the value of the current field based on the value of the other fields using an

expression. The fields used for such a calculation must be also available in the template. Expression can be

built from the field names appear in template designer and the keywords. Here is a link to the keywords and

http://msdn.microsoft.com/en-us/library/system.data.datacolumn.expression%28v=VS.90%29.aspx

Using Data Transfer Form

Data Transfer form can be accessed in the main application, under the Tools menu. Using the Data Tranfer

Form, it is possible to create a new profile, modify existing one or remove the profiles assigned for the

Click on New Profile button, the wizard appears. If the profile name is empty, the wizard automatically

generates a name based on the selected service. If the profile name already exists, th

append a number to the name, to avoid the duplicate name. This is only for convenience, otherwise the

duplicated profile names or empty name string does not impact the behaviour of the software. The

automatic name generation is only available if the profiles are created using the Data Transfer Form.

Rev. Date:

5.15.2012

Page 16 of

100

NOTE: the formatting for the numeric fields is not used for the import. To import numeric types

pad the string with white spaces, either left or right aligned.

Enumeration types are those fields which the value can be selected from a fixed size list. For example

For both import and export there will be a custom formatting, where the true and false texts are separated

It is possible to calculate the value of the current field based on the value of the other fields using an

expression. The fields used for such a calculation must be also available in the template. Expression can be

ar in template designer and the keywords. Here is a link to the keywords and

datacolumn.expression%28v=VS.90%29.aspx

Data Transfer form can be accessed in the main application, under the Tools menu. Using the Data Tranfer

profiles assigned for the

Click on New Profile button, the wizard appears. If the profile name is empty, the wizard automatically

generates a name based on the selected service. If the profile name already exists, the system tries to

append a number to the name, to avoid the duplicate name. This is only for convenience, otherwise the

duplicated profile names or empty name string does not impact the behaviour of the software. The

able if the profiles are created using the Data Transfer Form.

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

4.2 Manual Start of the Jobs

Select a Job from the list on the left panel, then click on the Start Job button. The Job will start in manual

mode, even if the job is created for automatic mode.

4.2.1 Diagnostics Mode

It is possible to start the jobs in diagnostics mode, in this case no change will be done for the internal

database, however the external s

transfer. The Diagnostics mode cannot check the input for all the possible errors, because some of the

errors happen only if the data is transferred to internal business logic to be saved back to the database.

However, many errors regarding Template, Channel, local validation can

Mode.

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Manual Start of the Jobs

Select a Job from the list on the left panel, then click on the Start Job button. The Job will start in manual

mode, even if the job is created for automatic mode.

It is possible to start the jobs in diagnostics mode, in this case no change will be done for the internal

database, however the external system (Text file, external Database Table) will be affected like a normal

s mode cannot check the input for all the possible errors, because some of the

errors happen only if the data is transferred to internal business logic to be saved back to the database.

However, many errors regarding Template, Channel, local validation can be checked using Diagnostics

Rev. Date:

5.15.2012

Page 17 of

100

Select a Job from the list on the left panel, then click on the Start Job button. The Job will start in manual

It is possible to start the jobs in diagnostics mode, in this case no change will be done for the internal

stem (Text file, external Database Table) will be affected like a normal

s mode cannot check the input for all the possible errors, because some of the

errors happen only if the data is transferred to internal business logic to be saved back to the database.

be checked using Diagnostics

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

5. Services

5.1 Material Service

This service is responsible to import the materials from Host system. If the imported material already exists

in database, it will be modified using the new information provided by host sy

Full Name: GP.CrossEnterpriseUnit.Engine.Services.MaterialService

5.1.1 Properties

Table 4: Properties of MaterialService

Name

Create Family

Create Property

Create Supplement

Default Bin

Default Material Property

Family separator

Single Line

5.1.2 Fields

Table 5: Fields of MaterialService

Name

Materialbase.MaterialName

Materialbase.Info1

Materialbase.Info2

Materialbase.Info3

Materialbase.Info4

Materialbase.Info5

Materialbase.MaterialCommand

Materialcode.MaterialcodeName

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

This service is responsible to import the materials from Host system. If the imported material already exists

in database, it will be modified using the new information provided by host system.

Full Name: GP.CrossEnterpriseUnit.Engine.Services.MaterialService

: Properties of MaterialService

Description

Create the family, if the family not exist

Create the property, if the property not exist

Create the supplement, if the supplement not exist

The Name of a Bin which will be assigned to material, if the Bin Name is not

provided by Host.

NOTE: At any time if a new Bin is going to be assigned to a material where the

material does not have any assigned Bin, the system sets the new Bin as Default

Bin of the Material.

The Name of a material property which will be assigned to a material if it is not

provided by Host

Separator is used by import to detect the family and parent family.

• If true, the lines will be saved one by one. If one line fails, system

continues with other lines

• If false, the system buffers lines with same material in succession, and

sends them at once to the RuleEngine.

Type Description

String:50

String:80

String:80

String:80

String:80

String:80

Materialbase.MaterialCommand Enum Save: save material, is default

DeleteMaterial: delete material

DeleteStorageRule: delete storagerule

DeleteMaterialcode: delete material code

DeleteSupplement: delete supplement

DeleteStorageRuleAndMaterialcodeAndSupplemen

t

Name String:50 If this field is provided by host, it will be added to

the list of MaterialCodes assigned to a material,

Rev. Date:

5.15.2012

Page 18 of

100

This service is responsible to import the materials from Host system. If the imported material already exists

stem.

The Name of a Bin which will be assigned to material, if the Bin Name is not

to be assigned to a material where the

material does not have any assigned Bin, the system sets the new Bin as Default

The Name of a material property which will be assigned to a material if it is not

to detect the family and parent family.

If true, the lines will be saved one by one. If one line fails, system

If false, the system buffers lines with same material in succession, and

Save: save material, is default

DeleteMaterial: delete material

DeleteStorageRule: delete storagerule

DeleteMaterialcode: delete material code

DeleteSupplement: delete supplement

DeleteStorageRuleAndMaterialcodeAndSupplemen

If this field is provided by host, it will be added to

the list of MaterialCodes assigned to a material,

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

Materialcode.PackSize

Materialcode.Command

Materialproperty.PropertyName

Materialproperty.Description

Materialproperty.Dangerclass

Materialproperty.FiFoType

Materialproperty.isStrictFiFo

Materialproperty.isUncontrolled

Materialproperty.Inventory

Materialproperty.ExpiryDays

Materialproperty.PutdateResolutionType

Materialproperty.LotSeekStoreType

Materialproperty.LotSeekPickType

Materialproperty.isLotMixed

Materialproperty.SerialnumberSeekStoreType

Materialproperty.SerialnumberSeekPickType

Materialproperty.isSerialnumberMixed

Materialproperty.ExpirydateSeekStoreType

Materialproperty.ExpirydateSeekPickType

Materialproperty.isExpirydateMixed

Materialproperty.ProductiondateSeekStoreTyp

e

Materialproperty.ProductiondateSeekPickType

Materialproperty.isProductiondateMixed

Materialproperty.ReleasedateSeekStoreType

Materialproperty.ReleasedateSeekPickType

Materialproperty.isReleasedateMixed

Materialproperty.QualificationSeekStoreType

Materialproperty.QualificationSeekPickType

Materialproperty.isQualificationMixed

Materialproperty.Countingcycle

Materialproperty.Countingthreshold

Materialproperty.isLocalInventory

Materialproperty.Command

StorageRule.BinName

StorageRule.MaxStockPerBin

StorageRule.MinStockPerBin

StorageRule.RequiredCapacity

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

among the PackSize field. If Material already have

this Code, the value of the packsize will be updated.

Int If any MaterialCode

the relevant PackSize to the given MaterialCode

Enum Save: save material code, is default

DeleteMaterialcode: delete material code

Materialproperty.PropertyName String:50 Name of the MaterialPropert

Material. If this field is not provided, the Default

Material Property will be assigned to the imported

Material

Description String:80

Dangerclass String:50

Enum

isStrictFiFo boolean

isUncontrolled

Inventory

boolean

ExpiryDays int

PutdateResolutionType Enum

LotSeekStoreType Enum

LotSeekPickType Enum

isLotMixed boolean

SerialnumberSeekStoreType Enum

SerialnumberSeekPickType Enum

isSerialnumberMixed boolean

ExpirydateSeekStoreType Enum

ExpirydateSeekPickType Enum

isExpirydateMixed boolean

ProductiondateSeekStoreTyp Enum

ProductiondateSeekPickType Enum

isProductiondateMixed boolean

ReleasedateSeekStoreType Enum

ReleasedateSeekPickType Enum

isReleasedateMixed boolean

QualificationSeekStoreType Enum

QualificationSeekPickType Enum

isQualificationMixed boolean

Countingcycle int

Countingthreshold double

isLocalInventory boolean

Enum Save: save material property, is default

DeleteMaterialpropery: delete material property

String:50 Name of the Bin to be assigned to the material. If

this field is not provided, the Default Bin Name will

be assigned to the Material.

If the Material exists, the Bin will be ad

of Bins assigned to the Material

MaxStockPerBin Double The Maximum stock per Bin for the given

BinName

MinStockPerBin Double The Minimum stock per Bin for the given BinName

RequiredCapacity int The Required Capacity (0 to 100) the given

Rev. Date:

5.15.2012

Page 19 of

100

among the PackSize field. If Material already have

this Code, the value of the packsize will be updated.

If any MaterialCode is provided, this field specifies

the relevant PackSize to the given MaterialCode

Save: save material code, is default

DeleteMaterialcode: delete material code

Name of the MaterialProperty to be assigned to

Material. If this field is not provided, the Default

Material Property will be assigned to the imported

Save: save material property, is default

DeleteMaterialpropery: delete material property

Name of the Bin to be assigned to the material. If

this field is not provided, the Default Bin Name will

be assigned to the Material.

If the Material exists, the Bin will be added to a List

of Bins assigned to the Material

The Maximum stock per Bin for the given

The Minimum stock per Bin for the given BinName

The Required Capacity (0 to 100) the given

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

StorageRule.UnitOfMeasure

StorageRule.ValuePerUnit

StorageRule.WeightPerUnit

StorageRule.Reorderpoint

StorageRule.Canorderpoint

StorageRule.isBlocked

StorageRule.Blockreason

DynamicFields

Supplement

Supplement.SupplementName

Supplement.SuipplementLink

Supplement.SuipplementDataFile

5.1.3 Importing Dynamic Database Fields

The Dynamic Database fields for the Materials can be imported, their name must be typed in as:

DynamicFields.nnn

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

BinName

String:50 The name or title of the Unit of measurement

informational

Double The value per unit

Double Material weight per unit

Double Informational field indeicating Re

level

Double Informational Field indeicating Can

level

bool Sets or resets the

String:50 The reason for the blocked material

Numeric/

String

Used to import dynamic DB fields. The name of

dynamic DB field must be typed in manually (e.g.

DynamicFields.MyField)

Supplement.SupplementName String:50 Optional name for the Supplement. The Name must

be unique in database. If the name is not provided,

the file name (without extension) will be used as

supplement name. If a supplement with the same

name already exists in database, its content will be

updated. The imported supplement will be assigned

to the material. If the imported supplement is an

image and if the material does not have any image

already assigned, the imported supplement will be

also assigned as material image.

Supplement.SuipplementLink String:50 The filename and path of the supplement. Using

this field, only a link to the supplement will be

stored in database. The supplement file must be

available on the file system. The files with

following extensions are considered as Image:

jpg,jpeg,bmp,emf,exif,gif,ico,png,tiff,wmf

It is possible to use asterisk character (*) as

wildcard. In such a case, the Asterisk will be

replaced by the provided material name.

The file must be available during the import,

otherwise the wrong icon may be generat

Supplement.SuipplementDataFile String:50 Similar to the SupplementLink field, the only

difference is that if this field is used instead of

SupplementLink, the content of the supplement file

will be saved in the database in binary format.

This field will be discarded if the SupplementLink

field is used.

Importing Dynamic Database Fields

The Dynamic Database fields for the Materials can be imported, their name must be typed in as:

Rev. Date:

5.15.2012

Page 20 of

100

The name or title of the Unit of measurement – only

The value per unit – used by count orders

Material weight per unit

Informational field indeicating Re-Order Stock

Informational Field indeicating Can-Order Stock

Sets or resets the blocked status of the material

The reason for the blocked material

Used to import dynamic DB fields. The name of

dynamic DB field must be typed in manually (e.g.

DynamicFields.MyField)

Optional name for the Supplement. The Name must

be unique in database. If the name is not provided,

the file name (without extension) will be used as

supplement name. If a supplement with the same

name already exists in database, its content will be

d. The imported supplement will be assigned

to the material. If the imported supplement is an

image and if the material does not have any image

already assigned, the imported supplement will be

also assigned as material image.

The filename and path of the supplement. Using

this field, only a link to the supplement will be

stored in database. The supplement file must be

available on the file system. The files with

following extensions are considered as Image:

mp,emf,exif,gif,ico,png,tiff,wmf

It is possible to use asterisk character (*) as

wildcard. In such a case, the Asterisk will be

replaced by the provided material name.

The file must be available during the import,

otherwise the wrong icon may be generated.

Similar to the SupplementLink field, the only

difference is that if this field is used instead of

SupplementLink, the content of the supplement file

will be saved in the database in binary format.

This field will be discarded if the SupplementLink

The Dynamic Database fields for the Materials can be imported, their name must be typed in as:

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

where nnn is the exact field name used to create the dynamic DB field.

5.2 OrderService

Order Service is responsible to import the orders or Delete the existing orders or order lines.

Full Name: GP.CrossEnterpriseUnit.Engine.Services.OrderService

5.2.1 Properties

Table 6: Properties of OrderService

Name

Default Direction Type

Operation Mode

SingleLine

Validate Material

Copies

Printer Name

Report Name

Sql OrderBy

Sql Where

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

where nnn is the exact field name used to create the dynamic DB field.

Service is responsible to import the orders or Delete the existing orders or order lines.

GP.CrossEnterpriseUnit.Engine.Services.OrderService

Description

• Will be used, if the value is not provided by host

default direction type

• Put, Pick, Return, RESERVED and Count

o RESERVED type may not be used

future use.

• AutoDetect : Using Quantity

o Quantity > 0 : Put

o Quantity < 0: Pick

o Quantity = 0: Count

• Save: Saves the order lines, it adds the lines to the order, if it already

exists

• Save And Allocate: Allocates the order after save. If allocate fails,

either fully or partially, the order still remains in database.

• Delete: Sends the cancel request for the given order lines, or the

whole order. To cancel the single order lines, the Line Number

be provided by host. To cancel the whole order, none of the order line

fields must be available in the pattern. The Result of cancellation will

be available in History table.

• Save and validate: Validate the order before save it in to database.

NOTE: in the Save and SaveAndAllocate operation modes, it is possible to

mark the single order lines to be deleted. The field Command of the OrderLine

is then used to indicate whether the provided line must be deleted or not.

• If true, the lines will be saved one by one. If one line fails, system

continues with other lines

• If false, the system buffers all the related order lines, and sends them

at once to the RuleEngine. It saves then all the lines, or nothing will

be saved.

If it is set to true, the existence of the materials will be checked before the

order line is sent to RuleEngine to eliminate the unwanted Rollbacks and

Exceptions on databse. This works only if the OrderLine.MaterialName

used.

Number of copies of the report to be printed

Name of the printer to be used for printing

Name of the report as defined by report management

The sorting for the report items, containing comma separated field names and

the asc and desc keywords

The filter containing the keywords of the standard SQL where statement. If the

field names are preceeded by @ sign, their value will be used.

Rev. Date:

5.15.2012

Page 21 of

100

Service is responsible to import the orders or Delete the existing orders or order lines.

Will be used, if the value is not provided by host to indicate the

RESERVED type may not be used – it is reserved for the

: Saves the order lines, it adds the lines to the order, if it already

Allocate: Allocates the order after save. If allocate fails,

either fully or partially, the order still remains in database.

Delete: Sends the cancel request for the given order lines, or the

whole order. To cancel the single order lines, the Line Number must

be provided by host. To cancel the whole order, none of the order line

fields must be available in the pattern. The Result of cancellation will

Save and validate: Validate the order before save it in to database.

: in the Save and SaveAndAllocate operation modes, it is possible to

mark the single order lines to be deleted. The field Command of the OrderLine

is then used to indicate whether the provided line must be deleted or not.

will be saved one by one. If one line fails, system

If false, the system buffers all the related order lines, and sends them

at once to the RuleEngine. It saves then all the lines, or nothing will

it is set to true, the existence of the materials will be checked before the

order line is sent to RuleEngine to eliminate the unwanted Rollbacks and

OrderLine.MaterialName is

The sorting for the report items, containing comma separated field names and

the asc and desc keywords

The filter containing the keywords of the standard SQL where statement. If the

field names are preceeded by @ sign, their value will be used.

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

5.2.2 Fields

Table 7: Fields of OrderService

Name

DirectionType

MasterorderName

Unit

Owner

Recipient

Priority

Deadline

Info1

Info2

Info3

Info4

Info5

DynamicFields

Warehouse

OrderLine

OrderLine.Command

OrderLine.LineNumber

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Type Description

Enum The direction type of the order

• Put (1)

• Pick (2)

• Return (3)

• Count (5)

The values 0 and 4 are reserved and my not be used

in this version.

String:50 Master order name

String:50 Used to create a group of orders (batch)

String:50

String:50

Enum • NotSet (0)

• Low (1)

• Medium (2)

• High (3)

• Hot (4)

DateTime The order’s dead line.

String:50

String:50

String:50

String:50

String:50

The dynamic DB fields to be imported in

MasterOrder. The field name must be manually typed

in, after a dot (e.g. DynamicFields.MyField)

String:50 The name of warehouse which owns the imported

order. If it is not provided, the default warehouse will

be used. The default warehouse is the warehouse

which owns the active station.

Enum Possible values:

• Default

• Delete

Only in operation modes Save and SaveAndAllocate,

if the provided value is Delete, the line is marked for

deletion. The Line number must be provided to be

able to successfully cancel the order line.

Int The unique line number. If it is not provided by host,

the system automatically generates a unique number

Rev. Date:

5.15.2012

Page 22 of

100

The direction type of the order – Valid values are

The values 0 and 4 are reserved and my not be used

Used to create a group of orders (batch)

The dynamic DB fields to be imported in

MasterOrder. The field name must be manually typed

in, after a dot (e.g. DynamicFields.MyField)

The name of warehouse which owns the imported

order. If it is not provided, the default warehouse will

be used. The default warehouse is the warehouse

which owns the active station.

Only in operation modes Save and SaveAndAllocate,

if the provided value is Delete, the line is marked for

deletion. The Line number must be provided to be

able to successfully cancel the order line.

The unique line number. If it is not provided by host,

the system automatically generates a unique number

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

OrderLine.HostIdentification

OrderLine.Materialreference

OrderLine.MaterialreferenceType

OrderLine.MaterialName

OrderLine.Materialcode

OrderLine.Kitname

OrderLine.Quantity

OrderLine.Costcenter

OrderLine.Putdate

OrderLine.Lot

OrderLine.SerialNumber

OrderLine.ExpiryDate

OrderLine.ProductionDate

OrderLine.ReleaseDate

OrderLine.Qualification

OrderLine.BinName

OrderLine.Info1

OrderLine.Info2

OrderLine.Info3

OrderLine.Info4

OrderLine.Info5

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

for the order line.

HostIdentification String:50 The identification sent from host system, specially by

SAP and will be written to history

back to the host.

String:50 used as a generic field to specify the material name or

code or kit name etc. it must be used together with

MaterialreferenceType.

MaterialreferenceType Enum • NotSet: Not used

• Materialname: Material Name

material in table materialbase

• Materialcode: material code (i.e. EAN or

UPC) – must match materialcode in

materialcode table

• Kitname : Kit – must match a kit in kit table

• External : external (unknown) material

must NOT match material in materialbase

table

• HandlingUnit : requesting a handling unit

stored on a location

• Shelf : request to remove an entire shelf

not used

String:50 MaterialName – material must exist in database

otherwise the import fails

String:50 Material Code – material code must exist in material

code table

String:50 Kit must exist in kit table.

Double

String:50 The value of Cost Center which can be used for order

pick

DateTime Used by return orders to specify the original PutDate

of the material. If this value is not provided by host,

the current date will be used.

String:50

String:50

DateTime

DateTime

DateTime

String:50

String:50 The Bin name used for put orders. In the case of Host

Managed Inventory, the Bin name is used for all the

order types (Pick, Put, etc.) and a location will be

created using this Bin on the given coordinates, if no

location on that given coordinates exists. If no Bin is

provided in the case of Host Managed Inventory,

system creates automatically a Bin and uses that Bin

to create locations.

String:50

String:50

String:50

String:50

String:50

Rev. Date:

5.15.2012

Page 23 of

100

The identification sent from host system, specially by

SAP and will be written to history table to report it

used as a generic field to specify the material name or

code or kit name etc. it must be used together with

: Material Name – must match

material in table materialbase

material code (i.e. EAN or

must match materialcode in

must match a kit in kit table

external (unknown) material –

must NOT match material in materialbase

requesting a handling unit

stored on a location – not used

request to remove an entire shelf –

material must exist in database

material code must exist in material

Cost Center which can be used for order

Used by return orders to specify the original PutDate

of the material. If this value is not provided by host,

the current date will be used.

The Bin name used for put orders. In the case of Host

Inventory, the Bin name is used for all the

order types (Pick, Put, etc.) and a location will be

created using this Bin on the given coordinates, if no

location on that given coordinates exists. If no Bin is

provided in the case of Host Managed Inventory, the

system creates automatically a Bin and uses that Bin

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

OrderLine.DynamicFields

OrderLine.Location

OrderLine.Location.

StorageunitName

OrderLine Location.

CarrierName

OrderLine.Location. ShelfName

OrderLine.Location. Xcoordinate

OrderLine.Location. Ycoordinate

OrderLine.Location. Xgrid

OrderLine.Location. Ygrid

OrderLine.Location. Xstep

OrderLine.Location. Ystep

OrderLine.Location. Zstep

5.3 TransactionsService

Transactions Service is responsible to export the selected parts of the History, which holds the transaction

Journal. Starting this service, all the exported history rows will be marked as exported and will not be

exported again.

Full Name: GP.CrossEnterpriseUnit.Engine.Services.TransactionsService

5.3.1 Properties

Table 8: Propperties of TransactionService

Name

TypesMotivesToExport

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

The dynamic DB fields to be imported in

MasterOrderLine. The field name must be manually

typed in, after a dot (e.g.

OrderLine.DynamicFields.MyField)

String:50 Host Managed Inventory (HMI):

The name of storage unit to be used for pick / store

String:50 HMI: Name of carrier

ShelfName String:50 HMI: Name of shelf. If it is not provided, the system

automatically selects the available shelf for the

carrier. In this case, the carrier can have only one

shelf. Otherwise the shelf name must be explicitely

provided.

Xcoordinate Int Not used

Ycoordinate Int Not Used

Int HMI: The grid based coordinate of the location on X

axis (Position). If not provided, the default value is 1.

Int HMI: The grid based coordinate of the location on Y

axis (Depth). If not provided, the default value is 1.

Int Not used

Int Not used

Int Default value is -1

Transactions Service is responsible to export the selected parts of the History, which holds the transaction

Journal. Starting this service, all the exported history rows will be marked as exported and will not be

Full Name: GP.CrossEnterpriseUnit.Engine.Services.TransactionsService

TransactionService

Description

A List of Type and Motive combination which needs to be exported. If it is

empty (Default) everything from history will be exported.

Possible Values for Types:

• NotSet (0)

o Not used

• ManualPut (1)

• ManualPick (2)

• OrderPut (3)

• OrderPick (4)

• Transfer (5)

Rev. Date:

5.15.2012

Page 24 of

100

DB fields to be imported in

MasterOrderLine. The field name must be manually

OrderLine.DynamicFields.MyField)

Host Managed Inventory (HMI):

storage unit to be used for pick / store

HMI: Name of shelf. If it is not provided, the system

automatically selects the available shelf for the

carrier. In this case, the carrier can have only one

shelf. Otherwise the shelf name must be explicitely

based coordinate of the location on X

axis (Position). If not provided, the default value is 1.

HMI: The grid based coordinate of the location on Y

axis (Depth). If not provided, the default value is 1.

Transactions Service is responsible to export the selected parts of the History, which holds the transaction

Journal. Starting this service, all the exported history rows will be marked as exported and will not be

A List of Type and Motive combination which needs to be exported. If it is

empty (Default) everything from history will be exported.

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

Types To Export

Concentrate Multiple

Confirmations

5.3.2 Fields

Table 9: Fields of TransactionService

Name

HistoryNr

Type

MotiveType

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

• OrderCount (6)

• ContextCount(7)

o context driven location count during put/pick such a

location empty checking or counting if calculated quantity is

below a given threshold

• Reserved (8)

o Not used

• ManualCorrection (9)

• ContextCorrection(10)

o automatic stock correction during pick/store if a stock

shortage is indicated

Possible Values for Motives:

• All = -1

o All the motives will be exported

• NotSet = 0,

• StockUnavailable = 1,

• Shortage = 2,

• SpaceUnavailable = 3,

• SpaceFull = 4,

• Deleted = 5,

• Canceled = 6,

• RoundUpOverstock = 7,

• ResolveMissingQty = 8,

• Trim = 9

• CancelError = 10,

Not available anymore

Also known as “Send Only One Line To Host” – if this property is set to true,

there will be only one confirmation line sent back to to host related to eash

Master Order Line, even if the master order line is broken to multiple

workorder lines and partially confirmed.

: Fields of TransactionService

Type Description

Int (unique) sequence number indicating the order

the history entries were written

Enum See the “types to export” property

Enum The reason for the entry if

entry's quantityy does not match the

expectation

• NotSet (0)

• StockUnavailable

o insufficient stock

encountered during

Rev. Date:

5.15.2012

Page 25 of

100

ion count during put/pick such as

location empty checking or counting if calculated quantity is

automatic stock correction during pick/store if a stock

if this property is set to true,

there will be only one confirmation line sent back to to host related to eash

Master Order Line, even if the master order line is broken to multiple

(unique) sequence number indicating the order

the history entries were written

See the “types to export” property

The reason for the entry if the confirmation

entry's quantityy does not match the

StockUnavailable (1)

insufficient stock

encountered during

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

Materialreference

MaterialName

UserName

MasterorderName

WorkorderName

Linenumber

Hostidentification

CostcenterName

Lot

Serialnumber

Expirydate

Productiondate

Releasedate

Qualification

OwnerName

RecipientName

HandlingUnit

PickWarehouseName

PickStorageunitName

PickCarrierName

PickShelfName

PickZone

PickXStep

PickYStep

PickLocationName

PickBinName

PutWarehouseName

PutStorageunitName

PutCarrierName

PutShelfName

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

allocation

• Shortage (2)

o insufficient stock

encountered during actual

stock movemente

• SpaceUnavailable

o storage space

encountered during

allocation

• SpaceFull (4)

o storagespace insufficient

encountered during actual

stock movement

• Deleted (5)

o deletion of the order or

order line

• Cancelled (6)

o cause is an external cancel

request

String:50

String:50 Name of the affected material

String:50

String:50

String:50

int

String:50

String:50

String:50 Lot of the affected material

String:50 Serial number of the affected material

DateTime Expiry date of the affected material

DateTime Production date of the affected material

DateTime

String:50

String:50

String:50

String:50

String:50

String:50

String:50

String:50

String:50

Int

Int

String:50

String:50

String:50

String:50

String:50

String:50

Rev. Date:

5.15.2012

Page 26 of

100

allocation

(2)

insufficient stock

encountered during actual

stock movemente

SpaceUnavailable (3)

storage space insufficient

encountered during

allocation

SpaceFull (4)

storagespace insufficient

encountered during actual

stock movement

deletion of the order or

order line

(6)

cause is an external cancel

request

Name of the affected material

Lot of the affected material

Serial number of the affected material

Expiry date of the affected material

Production date of the affected material

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

PutZone

PutXStep

PutYStep

PutLocationName

PutBinName

QuantityRequested

QuantityConfirmed

QuantityDeviated

Reasoncode

HistMasterorderId

HistMasterorderlineId

HistWorkorderId

HistWorkorderlineId

HistTaskId

Creationdate

DynamicFields

TaskNr

MasterOrder

MasterOrder.MasterorderName

MasterOrder.DirectionType

MasterOrder.Type

MasterOrder.Unit

MasterOrder.HandlingUnit

MasterOrder.Warehouse

MasterOrder.Station

MasterOrder.Owner

MasterOrder.Recipient

MasterOrder.Priority

MasterOrder.Deadline

MasterOrder.Info1

MasterOrder.Info2

MasterOrder.Info3

MasterOrder.Info4

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

String:50

Int

Int

String:50

String:50

Double

Double

Double

String:50

Guid

Guid

Guid

Guid

Guid

DateTime

Dynamic database field of the history table.

The exact name of the field must be typed

manually in.

Int (opt) copy of the concerned task columnn

MasterOrder.MasterorderName String:50

Enum • NotSet (0)

• Put (1)

• Pick (2)

• Return (3)

• Transfer (4)

• Count (5)

Enum • NotSet (0)

• External (1)

• ExtManaged

• Internal (3)

• Manual (4)

• Auto (5)

String:50

String:50

String:50

String:50

String:50

Enum • NotSet (0)

• Low (1)

• Medium (2)

• High (3)

• Hot (4)

DateTime

String:50

String:50

String:50

String:50

Rev. Date:

5.15.2012

Page 27 of

100

Dynamic database field of the history table.

The exact name of the field must be typed

(opt) copy of the concerned task columnn

(4)

(1)

ExtManaged (2)

Medium (2)

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

MasterOrder.Info5

OrderLine

OrderLine.Linenumber

OrderLine.Hostidentification

OrderLine.Materialreference

OrderLine.MaterialreferenceType

OrderLine.Quantity

OrderLine.Costcenter

OrderLine.Putdate

OrderLine.Lot

OrderLine.Serialnumber

OrderLine.Expirydate

OrderLine.Productiondate

OrderLine.Releasedate

OrderLine.Qualification

OrderLine.Owner

OrderLine.PutLocation

OrderLine. PutBinName

OrderLine. PutHeight

OrderLine. PickLocation

OrderLine. PickBinName

OrderLine.Info1

OrderLine.Info2

OrderLine.Info3

OrderLine.Info4

OrderLine.Info5

5.4 Location Import Service

Location Import Service is used to initialize the system using the external data. Location Import Service

can create Materials, Bins, Locations, and can initialize the Locations with the provided

Warehouse and the Storage Units with the Carriers and Shelves must be defined before the Import

Full Name: GP.CrossEnterpriseUnit.Engine.Services.LocationImportService

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

String:50

Int

String:50

String:50

MaterialreferenceType Enum • NotSet

• Materialname

• Materialcode

• Kitname

• External

• HandlingUnit

• Shelf

Double

String:50 The value of the cost center which can be used

by order picking

DateTime

String:50

String:50

DateTime

DateTime

Datetime

String:50

String:50

String:50 Location name used for put

String:50

Double

String:50

String:50

String:50

String:50

String:50

String:50

String:50

Location Import Service is used to initialize the system using the external data. Location Import Service

can create Materials, Bins, Locations, and can initialize the Locations with the provided

Warehouse and the Storage Units with the Carriers and Shelves must be defined before the Import

Full Name: GP.CrossEnterpriseUnit.Engine.Services.LocationImportService

Rev. Date:

5.15.2012

Page 28 of

100

Materialname

Materialcode

HandlingUnit

The value of the cost center which can be used

Location name used for put

Location Import Service is used to initialize the system using the external data. Location Import Service

can create Materials, Bins, Locations, and can initialize the Locations with the provided Data. At least the

Warehouse and the Storage Units with the Carriers and Shelves must be defined before the Import

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

5.4.1 Properties

Table 10: Properties of LocationImportService

Name

Default Shelf

DefaultMaterialProperty

DefaultBin

5.4.2 Fields

Table 11: Fields of LocationImportService

Name

Warehouse

Material

Material.MaterialName

Material.Info1

Material.Info2

Material.Info3

Material.Info4

Material.Info5

Material.MaterialCode

Material.PackSize

Material.PropertyName

Material.BinName

Material.MaxStockPerBin

Material.UnitOfMeasure

Material.ValuePerUnit

Material.Reorderpoint

Material.Canorderpoint

Material.Command

Material.DynamicFields

Location

Location.StorageunitName

Location.CarrierName

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

ionImportService

Description

If the Shelf name is not provided, this value will be used as shelf name.

If Material Property is not provided, this value will be used as Property name

for the Materials. The Property must be created before.

If the Bin name is not provided, this value will be used as Bin to create the

location. In this case, the Bin must exist in database before the import.

LocationImportService

Type Description

String(50) The name of warehouse which contains the

given storage units. If this is not provided, the

default warehouse will be used. The default

warehouse in this case is the warehouse which

contains the active station. The active station

is the station which physic

operation.

String:50

String:80

String:80

String:80

String:80

String:80

String:50 discarded

Int discarded

String:50 Name of the MaterialProperty to be assigned

to Material. If this field is not provided, the

Default Material Property will be assigned to

the imported Material

String:50 Discarded

Double Discarded

String:50 Discarded

Double Discarded

Double Discarded

Double Discarded

Int Not Used – Reserved

Numeric/String Discarded

String(50) Name of the Storage Unit

String(50) Carrier Name

Rev. Date:

5.15.2012

Page 29 of

100

If the Shelf name is not provided, this value will be used as shelf name.

If Material Property is not provided, this value will be used as Property name

Property must be created before.

If the Bin name is not provided, this value will be used as Bin to create the

location. In this case, the Bin must exist in database before the import.

The name of warehouse which contains the

given storage units. If this is not provided, the

default warehouse will be used. The default

warehouse in this case is the warehouse which

contains the active station. The active station

is the station which physically runs the import

Name of the MaterialProperty to be assigned

to Material. If this field is not provided, the

Default Material Property will be assigned to

the imported Material

Reserved

Name of the Storage Unit

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

Location.ShelfName

Location.Xcoordinate

Location.Ycoordinate

Location.Xgrid

Location.Ygrid

Location.Xstep

Location.Ystep

Location.Zstep

LocationContent

LocationContent. QuantityCurrent

LocationContent. Putdate

LocationContent. Lot

LocationContent. Serialnumber

LocationContent. Expirydate

LocationContent. Productiondate

LocationContent. Releasedate

LocationContent. Qualification

LocationContent.isBlocked

LocationContent.Blockreason

Bin

Bin. BinName

Bin. Width

Bin. Depth

Bin. Height

Bin. Color

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

String(50) Shelf name. If not available, the value of

Default Shelf is used instead.

int Xcoordinate (mm or Inch100)

Default is 1

int Ycoordinate (mm or Inch100)

Default is 1

Int Default value is 1

Int Default value is 1

Int Discarded

Int Discarded

int Discarded

QuantityCurrent Double The current quantity

saved on location content level

DateTime

String(50)

Serialnumber String(50)

DateTime

Productiondate DateTime

Releasedate DateTime

Qualification String(50)

boolean

Blockreason String(50)

String(50)

Int

Int

Int

Class The value must be provided as integer.

Rev. Date:

5.15.2012

Page 30 of

100

Shelf name. If not available, the value of the

Default Shelf is used instead.

Xcoordinate (mm or Inch100)

Ycoordinate (mm or Inch100)

of the material to be

saved on location content level

The value must be provided as integer.

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

5.5 Rename Material Service

Rename Material Service is responsible to rename the Material names

Full Name: GP.CrossEnterpriseUnit.Engine.Services.RenameMaterialService

5.5.1 Fields

Table 122: Fields of RenameMaterialService

Name

OldMaterialName

NewMaterialName

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Rename Material Service

is responsible to rename the Material names.

Full Name: GP.CrossEnterpriseUnit.Engine.Services.RenameMaterialService

2: Fields of RenameMaterialService

Type Description

String:50

String:50

Rev. Date:

5.15.2012

Page 31 of

100

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

5.6 StockSynchronization Service

StockSynchonization Service is responsible to export the

automatically on a configured time period or manually. This is needed if the Host is not able to process all

the transactions to maintain the internal stock information.

Full Name: GP.CrossEnterpriseUnit.Engine.S

5.6.1 Fields

Table 132: Fields of RenameMaterialService

Name

Materialbase.MaterialName

Materialbase.Info1

Materialbase.Info2

Materialbase.Info3

Materialbase.Info4

Materialbase.Info5

Materialbase.isBlocked

Materialbase.Blockreason

LocContentbreakdown.Lot

LocContentbreakdown.StockPerLot

LocContentbreakdown.Qualification

LocContentbreakdown.StockPerQualif

ication

LocContentbreakdown.Serialnumber

LocContentbreakdown.StockPerSerial

number

LocContentbreakdown.Expirydate

LocContentbreakdown.StockPerExpiry

date

LocContentbreakdown.Releasedate

LocContentbreakdown.StockPerReleasedate

LocContentbreakdown.Productiondate

LocContentbreakdown.StockPerProduc

tiondate

Client.ClientName

Client.StockPerClientName

Warehouse.WarehouseName

Warehouse.StockPerWarehouseName

Storageuni.StorageunitName

StockPerStorageunitName

Zone.ZoneName

Zone.StockPerZoneName

Area.AreaName

Area.StockPerAreaName

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

StockSynchronization Service

StockSynchonization Service is responsible to export the stock information back to the Host either

automatically on a configured time period or manually. This is needed if the Host is not able to process all

the transactions to maintain the internal stock information.

Full Name: GP.CrossEnterpriseUnit.Engine.Services.StockSynchonisationService

2: Fields of RenameMaterialService

Type Description

String:50

String:80

String:80

String:80

String:80

String:80

boolean

String:50

Lot String:50

StockPerLot Double

Qualification String:50

StockPerQualif Double

Serialnumber String:50

StockPerSerial Double

Expirydate DateTime

StockPerExpiry

Double

Releasedate DateTime

StockPerReleas

Double

Productiondate DateTime

StockPerProduc Double

String:50

StockPerClientName Double

WarehouseName String:50

StockPerWarehouseName Double

StorageunitName String:50

StockPerStorageunitName Double

String:50

Double

String:50

Double

Rev. Date:

5.15.2012

Page 32 of

100

stock information back to the Host either

automatically on a configured time period or manually. This is needed if the Host is not able to process all

Service

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

6. Channels

CEU runs as windows Service under the “System” user account, however it is possible to configure the

windows operating system to run the CEU under any other account. If the CEU is configured to access any

file or other resources on loc

otherwise the CEU may not be able to access the specified files or resources.

This is different, when a data transfer tasks is started manually. In this case, the client application ru

under the current logged in windows user, and inherits the access rights of the interactive user.

6.1 FileChannel

The File Channel can transport the data via Text fiels. The content of the file is considered as a flat table,

containing one or more lines

can be separated by the column length, or the separator, which can be configured for each column.

All the lines have the same format, and each line will be mapped to the internal d

template, which in turn specifies the detailed format of each line. The text file may have any encoding like

UTF-8, UTF-16 etc which can be configured.

Full Name: GP.CrossEnterpriseUnit.Engine.Channels.FileChannel

6.1.1 Properties

Table 13: Properties of FileChannel

Name

FileName

ErrorFile

Comment Indicator

Culture

Encoding

Pattern

Prompt

Retry

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

CEU runs as windows Service under the “System” user account, however it is possible to configure the

windows operating system to run the CEU under any other account. If the CEU is configured to access any

file or other resources on local machine or on the network, the proper user rights must be provided,

otherwise the CEU may not be able to access the specified files or resources.

This is different, when a data transfer tasks is started manually. In this case, the client application ru

under the current logged in windows user, and inherits the access rights of the interactive user.

The File Channel can transport the data via Text fiels. The content of the file is considered as a flat table,

containing one or more lines separated by CR-LF, and each line contains one or more column. The columns

can be separated by the column length, or the separator, which can be configured for each column.

All the lines have the same format, and each line will be mapped to the internal d

template, which in turn specifies the detailed format of each line. The text file may have any encoding like

16 etc which can be configured.

Full Name: GP.CrossEnterpriseUnit.Engine.Channels.FileChannel

Description

The name of the file to be used to transfer the main data. If the channel is

used for import (depends on Service), the filename may contain wild cards

(e.g. C:\*.txt)

Error file is used to report the lines could not be imported. The lines will be

always appended to the error file if it already exists. The Error File may

contain wild cards or placeholders, as described in the next section of this

document.

If due to the usage of Wild card the generated error file name is the same as

the main file name, the error file name will be expanded by the ”.err”

extension.

If the ErrorFile does not have a path, the path of the main file will be used.

Indicates the comment specifier. The lines starting with the comment

specifier will be discarded by import.

Specifies the culture (Language) used to decode the values like DateTime or

numbers. Example of the culture is de-DE for German

English-USA

Specifies the Encoding of the main File, like utf-8 etc. It is possible to choose

the Encoding from drop down list.

Specifies the template, describing the format of the main file. Available fields

in the related Template Designer depends on the selected Service.

If it is true and only if the job profile is started in manual mode, the systems

prompts for the file name using standard windows file open dialog.

Number of retries to be done, before a failure is reported in the

Rev. Date:

5.15.2012

Page 33 of

100

CEU runs as windows Service under the “System” user account, however it is possible to configure the

windows operating system to run the CEU under any other account. If the CEU is configured to access any

al machine or on the network, the proper user rights must be provided,

This is different, when a data transfer tasks is started manually. In this case, the client application runs

under the current logged in windows user, and inherits the access rights of the interactive user.

The File Channel can transport the data via Text fiels. The content of the file is considered as a flat table,

LF, and each line contains one or more column. The columns

can be separated by the column length, or the separator, which can be configured for each column.

All the lines have the same format, and each line will be mapped to the internal data structure using a

template, which in turn specifies the detailed format of each line. The text file may have any encoding like

The name of the file to be used to transfer the main data. If the channel is

used for import (depends on Service), the filename may contain wild cards

report the lines could not be imported. The lines will be

always appended to the error file if it already exists. The Error File may

contain wild cards or placeholders, as described in the next section of this

e generated error file name is the same as

the main file name, the error file name will be expanded by the ”.err”

If the ErrorFile does not have a path, the path of the main file will be used.

. The lines starting with the comment

Specifies the culture (Language) used to decode the values like DateTime or

DE for German-Germany or en-US for

8 etc. It is possible to choose

Specifies the template, describing the format of the main file. Available fields

on the selected Service.

If it is true and only if the job profile is started in manual mode, the systems

prompts for the file name using standard windows file open dialog.

Number of retries to be done, before a failure is reported in the case that the

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

Starting Line

PostImportActions

PostImportActionParameter

Trigger File

6.1.2 Specifying the filename with wildcards and placeholders.

The filename can be generated using the wildcard Asterisk or the Date/Time place holders.

s

6.1.2.1 Supported Placeholders:

• {Filename} : will be replaced by the name of the main file (name without extension)

• {Extension} : will be replaced by the extension of the

• {Date} : will be replaced by the current date with the yyyyMMdd Format

• {Time} : will be replaced by the current time with the HHmmss Format

• {Timestamp} : will be replaced by the current date and time with the

format – where the

6.1.2.2 Supported wildcards

• Only asterisk is supported to replace the whole filename, or extension, or both.

Example:

Following table shows the generated filename if the imported file is C:

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

main file is not accessible.

By import, specifies the starting line number of the main file.

specifies the action which takes place after the Import is done.

• Default

o Only in automatic mode the file will be

mode no action takes place.

• Delete

o The File will be deleted, independent if the profile is

manually started or automatically.

• Move

o The file will be moved or renamed based on the

PostImportActionParameter which can be a constant

filename, but the wildcards and placeholders are also

supported. Please see the next section for more details. It

fails if the target file already exists.

• Archive

o The file will be archived in ZIP Format to the location

specified by PostImportActionParameter which c

the wildcards and placeholders. Please see the next section

for more details. If the Archive file exists, it will be

overwritten. The Archive can contain only one file.

• ArchiveAndDelete

o The file will be deleted after it is archived.

If the PostImportAction is Move,Archive or ArchiveAndDelete, this

parameter specifies the target file name for the given action.

If not empty, the import or export starts first when the trigger file exists. The

trigger file will not be opened or locked. After Import or Export the trigger

file will be deleted.

Specifying the filename with wildcards and placeholders.

The filename can be generated using the wildcard Asterisk or the Date/Time place holders.

Supported Placeholders:

: will be replaced by the name of the main file (name without extension)

{Extension} : will be replaced by the extension of the main file.

{Date} : will be replaced by the current date with the yyyyMMdd Format

{Time} : will be replaced by the current time with the HHmmss Format

{Timestamp} : will be replaced by the current date and time with the yyyyMMddHHmmssfff

where the fff represents the milliseconds

Supported wildcards

Only asterisk is supported to replace the whole filename, or extension, or both.

Following table shows the generated filename if the imported file is C:\HostTransfer\Order.txt

Rev. Date:

5.15.2012

Page 34 of

100

By import, specifies the starting line number of the main file.

specifies the action which takes place after the Import is done.

Only in automatic mode the file will be deleted. In manual

The File will be deleted, independent if the profile is

The file will be moved or renamed based on the

PostImportActionParameter which can be a constant

but the wildcards and placeholders are also

supported. Please see the next section for more details. It

fails if the target file already exists.

The file will be archived in ZIP Format to the location

specified by PostImportActionParameter which can contain

the wildcards and placeholders. Please see the next section

for more details. If the Archive file exists, it will be

overwritten. The Archive can contain only one file.

The file will be deleted after it is archived.

If the PostImportAction is Move,Archive or ArchiveAndDelete, this

parameter specifies the target file name for the given action.

If not empty, the import or export starts first when the trigger file exists. The

trigger file will not be opened or locked. After Import or Export the trigger

The filename can be generated using the wildcard Asterisk or the Date/Time place holders.

: will be replaced by the name of the main file (name without extension)

{Date} : will be replaced by the current date with the yyyyMMdd Format

{Time} : will be replaced by the current time with the HHmmss Format

yyyyMMddHHmmssfff

Only asterisk is supported to replace the whole filename, or extension, or both.

Order.txt

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

Table 14: Generated Filename

Settings

*.*

*.err

Error.*

C:\Temp\*.out

C:\Temp\RESULT_{Filename}.{Extension}

{Date}.{Extension}

Archive\{Filename}.zip

6.1.3 Importing the lines

If a line is read from the input file, it will be first converted to the internal data structure. If this step fails and

the line cannot be converted, the line will be discarded. This can mainly happen if the pattern does not match

the input line, or one or more properties are not convertible.

6.2 DatabaseChannel

The DatabaseChannel is used to transfer the data using one single database table. The Database table must

contain:

• A Unique Primary Key

actions (Like TransactionExport)

• An additional Integer Column to keep the transfer status. The status value is used to handshake

with the host system. Using the Status Mapping property it is possible to change the default values

of the status. There are 4 possible values for status:

o Ready: Default value is 0 and means the row is ready to be imported, or it is already

exported.

o Pending: Default value is 1 and means the import is in progress, the data is read but not

sent to the RuleEngine.

o Success: Default value is 2 and means the data has been successfully imported.

o Error : Default value is 3 and means there have been an error importing the data.

Full Name: GP.CrossEnterpriseUnit.Engine.Channels.DatabaseChannel

6.2.1 Properties

Table 145: Properties of DatabaseChannel

Name

Culture

Pattern

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Generated filename

C:\HostTransfer\Order.txt

C:\HostTransfer\Order.err

C:\HostTransfer\Error.txt

C:\Temp\Order.out

RESULT_{Filename}.{Extension} C:\Temp\RESULT_Order.txt

C:\HostTransfer\20100128.txt

C:\HostTransfer\Archive\Order.zip

If a line is read from the input file, it will be first converted to the internal data structure. If this step fails and

the line cannot be converted, the line will be discarded. This can mainly happen if the pattern does not match

r more properties are not convertible.

The DatabaseChannel is used to transfer the data using one single database table. The Database table must

A Unique Primary Key – The Key must be automatically generated by Database for th

actions (Like TransactionExport)

An additional Integer Column to keep the transfer status. The status value is used to handshake

with the host system. Using the Status Mapping property it is possible to change the default values

ere are 4 possible values for status:

Ready: Default value is 0 and means the row is ready to be imported, or it is already

exported.

Pending: Default value is 1 and means the import is in progress, the data is read but not

sent to the RuleEngine.

s: Default value is 2 and means the data has been successfully imported.

Error : Default value is 3 and means there have been an error importing the data.

Full Name: GP.CrossEnterpriseUnit.Engine.Channels.DatabaseChannel

: Properties of DatabaseChannel

Description

Specifies the culture (Language) used to decode the values like DateTime or

numbers. Example of the culture is de-DE for German

English-USA

Specifies the template used to map the transfer table columns to the internal

Rev. Date:

5.15.2012

Page 35 of

100

20100128.txt

Order.zip

If a line is read from the input file, it will be first converted to the internal data structure. If this step fails and

the line cannot be converted, the line will be discarded. This can mainly happen if the pattern does not match

The DatabaseChannel is used to transfer the data using one single database table. The Database table must

The Key must be automatically generated by Database for the Export

An additional Integer Column to keep the transfer status. The status value is used to handshake

with the host system. Using the Status Mapping property it is possible to change the default values

Ready: Default value is 0 and means the row is ready to be imported, or it is already

Pending: Default value is 1 and means the import is in progress, the data is read but not

s: Default value is 2 and means the data has been successfully imported.

Error : Default value is 3 and means there have been an error importing the data.

Specifies the culture (Language) used to decode the values like DateTime or

DE for German-Germany or en-US for

Specifies the template used to map the transfer table columns to the internal

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

Connection String

Database Provider

IDColumnName

StatusColumnName

Status Mapping

ErrorMessageColumnName

ErrorDateColumnName

TransferTableName

Retry

6.2.2 Column Formatting

The field “Mapping” in the template designer is used to map the database columns to the internal data

structures. CEU tries to convert the data types, if possible. The Length and Separator attributes are

discarded. The Format is used only if the database f

be used as in the text files.

6.2.3 Database Providers

To Access to the external database, it is necessary to have the matching ADO.NET Providers installed on

the system. Please refer to the instructio

package. There are standard providers available in .NET Framework for SQL Server and Oracle. It is

recommended to install the matching ADO.NET Provider supplied from Oracle instead of default

Using OLEDB and ODBC providers are not recommended

6.2.3.1 Microsoft Access 2003

Using System.Data.Odbc Provider:

Example of Connection string:

DBQ=c:\Temp\Transfer.mdb;Driver={Microsoft Access Driver (*.mdb)};DriverId=25;FIL=MS Access;

Using System.Data.OleDb

Example of Connection string:

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

data structure. See the next section about Column formatting.

Connection String to connect to the database. The connection string depends

on the Database provider and database type.

See the next section for example configuration.

Specifies the ADO.NET Database provider

• System.Data.ODBC

• System.Data.OleDb

• System.Data.SqlClient

• System.Data.OracleClient

There is a drop down list of all the installed ADO.NET Database providers for

this field, however the content can by typed in manually too. The value of this

field is case sensitive.

See the next section for example configuration.

Name of the primary key column

Name of the column used to keep the transfer status.

An array of the Status codes with their corresponding values.

Name of the message error column is from Data Type String:255

Name of the date message error column is from Data Type String:50

The name of the database table name used for data transfer.

Number of retries to be done to access the data, if any error happens.

The field “Mapping” in the template designer is used to map the database columns to the internal data

structures. CEU tries to convert the data types, if possible. The Length and Separator attributes are

discarded. The Format is used only if the database field’s type is Text. In this way the same formatting will

be used as in the text files.

To Access to the external database, it is necessary to have the matching ADO.NET Providers installed on

the system. Please refer to the instructions provided by Database Vendor to choose and install the correct

package. There are standard providers available in .NET Framework for SQL Server and Oracle. It is

recommended to install the matching ADO.NET Provider supplied from Oracle instead of default

Using OLEDB and ODBC providers are not recommended

Microsoft Access 2003

Provider:

Example of Connection string:

Transfer.mdb;Driver={Microsoft Access Driver (*.mdb)};DriverId=25;FIL=MS Access;

Provider:

Example of Connection string:

Rev. Date:

5.15.2012

Page 36 of

100

data structure. See the next section about Column formatting.

Connection String to connect to the database. The connection string depends

installed ADO.NET Database providers for

this field, however the content can by typed in manually too. The value of this

Name of the column used to keep the transfer status.

An array of the Status codes with their corresponding values.

Name of the message error column is from Data Type String:255 -nchar(255)-

is from Data Type String:50

The name of the database table name used for data transfer.

Number of retries to be done to access the data, if any error happens.

The field “Mapping” in the template designer is used to map the database columns to the internal data

structures. CEU tries to convert the data types, if possible. The Length and Separator attributes are

ield’s type is Text. In this way the same formatting will

To Access to the external database, it is necessary to have the matching ADO.NET Providers installed on

ns provided by Database Vendor to choose and install the correct

package. There are standard providers available in .NET Framework for SQL Server and Oracle. It is

recommended to install the matching ADO.NET Provider supplied from Oracle instead of default provider.

Transfer.mdb;Driver={Microsoft Access Driver (*.mdb)};DriverId=25;FIL=MS Access;

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:

6.2.3.2 SQL 2005 Express

Use System.Data.SqlClient

Using trusted connection, or windows NT authentication. The instance name

“SQLEXPRESS”

Example of Connection string:

Data Source=localhost\SQLEXPRESS;Initial Catalog=GPDatabase12;Trusted_Connection=True;

Using Standard Security, the user name and password is provided directly in connection string.

Example of Connection string:

Data Source=localhost\SQLEXPRESS;Initial Catalog=GPDatabase12;User

Id=myUsername;Password=myPassword;

6.2.3.3 SQL Server 2000

Use System.Data.SqlClient

Using trusted connection, or windows NT authentication.

Example of Connection string:

Server=myServerAddress;Database=myDataBase;Trusted_Connection=True;

Using Standard Security, the user name and password is provided directly in connection string.

Example of Connection string:

Data Source=myServerAddress;Initial

Connecting to an SQL Server instance

Example of Connection string:

Server=myServerName\theInstanceName;Database=myDataBase;Trusted_Connection=True;

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\Temp\Transfer.mdb;

System.Data.SqlClient provider.

Using trusted connection, or windows NT authentication. The instance name in this example is

Example of Connection string:

SQLEXPRESS;Initial Catalog=GPDatabase12;Trusted_Connection=True;

Using Standard Security, the user name and password is provided directly in connection string.

of Connection string:

SQLEXPRESS;Initial Catalog=GPDatabase12;User

Id=myUsername;Password=myPassword;

System.Data.SqlClient provider.

Using trusted connection, or windows NT authentication.

on string:

Server=myServerAddress;Database=myDataBase;Trusted_Connection=True;

Using Standard Security, the user name and password is provided directly in connection string.

Example of Connection string:

Data Source=myServerAddress;Initial Catalog=myDataBase;User Id=myUsername;Password=myPassword;

Connecting to an SQL Server instance:

Example of Connection string:

theInstanceName;Database=myDataBase;Trusted_Connection=True;

Rev. Date:

5.15.2012

Page 37 of

100

in this example is

SQLEXPRESS;Initial Catalog=GPDatabase12;Trusted_Connection=True;

Using Standard Security, the user name and password is provided directly in connection string.

Using Standard Security, the user name and password is provided directly in connection string.

Catalog=myDataBase;User Id=myUsername;Password=myPassword;

theInstanceName;Database=myDataBase;Trusted_Connection=True;

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

6.3 XMLChannel

Full Name: GP.CrossEnterpriseUnit.Engine.Channels.XMLChannel

XML stand for Extensible M

Via XML channel you can export data to XML format and import XML files.

6.3.1 XML File Structure

Each XML file consists of the following

• Declaration: The XML declaration must appear on the very first line of the document with no

preceding white space. It looks

<?xml version="1.0" standalone="yes" ?>

Or

<?xml version="1.0" encoding="utf

• Root element: in any markup language, the first element to appear is called the "root element",

which defines what kind of document the file will be.

Each XML document has exactly one single

• Elements: Each root element has one or more Elements.

• Attributtes: is equivalent

Note: the tag root text und all tags element

you can use also the mapping for Attribute text

The easiest way to explain XML file format is with examples.

6.3.2 Examples for Import

Pattern:

{name=Materialbase.MaterialName;separator=;length=

1;format=;mapping=;lookup=;expression=;}{name=StorageRule.BinName;separator=;length=

1;format=;mapping=;lookup=;expression=;}{name=StorageRule.MaxStockPerBin;separator=;length=

1;format=;mapping=;lookup=;express

1;format=;mapping=;lookup=;expression=;}{name=Materialcode.PackSize;separator=;length=

1;format=;mapping=;lookup=;expression=;}

Import one material and only one StorageRule and one material code

Example 1:

<?xml version="1.0" standalone="yes"

<ImportMaterial>

<Materialbase.MaterialName

<Materialcode.Packsize>10

<Materialcode.MaterialcodeName

<StorageRule.BinName>B200

<StorageRule.MaxStockPerBin

</ImportMaterial>

The content of the file is considered as a flat table

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

GP.CrossEnterpriseUnit.Engine.Channels.XMLChannel

Markup Language, the XML Channel can transport the data via XML files.

Via XML channel you can export data to XML format and import XML files.

the following parts:

The XML declaration must appear on the very first line of the document with no

preceding white space. It looks as in the following example:

<?xml version="1.0" standalone="yes" ?>

version="1.0" encoding="utf-8" ?>

in any markup language, the first element to appear is called the "root element",

which defines what kind of document the file will be.

document has exactly one single root element.

Each root element has one or more Elements.

equivalent the fields, which is defined in puttern

elements text aren’t constant but the Attribute text must same as Pattern Field or

you can use also the mapping for Attribute text

The easiest way to explain XML file format is with examples.

Materialbase.MaterialName;separator=;length=-

1;format=;mapping=;lookup=;expression=;}{name=StorageRule.BinName;separator=;length=

1;format=;mapping=;lookup=;expression=;}{name=StorageRule.MaxStockPerBin;separator=;length=

1;format=;mapping=;lookup=;expression=;}{name=Materialcode.MaterialcodeName;separator=;length=

1;format=;mapping=;lookup=;expression=;}{name=Materialcode.PackSize;separator=;length=

1;format=;mapping=;lookup=;expression=;}

Import one material and only one StorageRule and one material code:

xml version="1.0" standalone="yes" ?>

Materialbase.MaterialName>Mat1</Materialbase.MaterialName>

10</Materialcode.Packsize>

Materialcode.MaterialcodeName>Mat1C1</Materialcode.MaterialcodeName>

B200</StorageRule.BinName>

StorageRule.MaxStockPerBin>20</StorageRule.MaxStockPerBin>

The content of the file is considered as a flat table

Rev. Date:

5.15.2012

Page 38 of

100

anguage, the XML Channel can transport the data via XML files.

The XML declaration must appear on the very first line of the document with no

in any markup language, the first element to appear is called the "root element",

but the Attribute text must same as Pattern Field or

1;format=;mapping=;lookup=;expression=;}{name=StorageRule.BinName;separator=;length=-

1;format=;mapping=;lookup=;expression=;}{name=StorageRule.MaxStockPerBin;separator=;length=-

ion=;}{name=Materialcode.MaterialcodeName;separator=;length=-

1;format=;mapping=;lookup=;expression=;}{name=Materialcode.PackSize;separator=;length=-

>

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

Import material with more than StorageRule:

If you will to import materials with more than storage rule or more material code you need to add tag for every line

Example 2:

<?xml version="1.0" standalone="yes"

<ImportMaterial>

<Materialbase.MaterialName

<Materialcode.Packsize

<Materialcode.MaterialcodeName

<StorageRule>

<StorageRule.BinName

<StorageRule.MaxStockPerBin

</StorageRule>

<StorageRule>

<StorageRule.BinName

<StorageRule.MaxStockPerBin

</StorageRule>

</ ImportMateria>

Import more than one material In this case the XML file needs the root element, because e

element.

Example 3:

<?xml version="1.0" encoding="utf

<root>

<ImportMaterial>

<Materialbase.MaterialName

<Materialcode.Packsize>10

<Materialcode.MaterialcodeName

<StorageRule.BinName>B100

<StorageRule.MaxStockPerBin

</ImportMaterial>

<ImportMaterial>

<Materialbase.MaterialName

<Materialcode.Packsize>10

<Materialcode.MaterialcodeName

<StorageRule.BinName>B100

<StorageRule.MaxStockPerBin

</ImportMaterial>

</root>

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Import material with more than StorageRule:

If you will to import materials with more than storage rule or more material code you need to add tag for every line

xml version="1.0" standalone="yes" ?>

Materialbase.MaterialName>mat2</Materialbase.MaterialName

Materialcode.Packsize>10</Materialcode.Packsize>

Materialcode.MaterialcodeName>111cx</Materialcode.MaterialcodeName

StorageRule.BinName>B200</StorageRule.BinName>

StorageRule.MaxStockPerBin>20</StorageRule.MaxStockPerBin

StorageRule.BinName>B100</StorageRule.BinName>

StorageRule.MaxStockPerBin>10</StorageRule.MaxStockPerBin

In this case the XML file needs the root element, because each XML file must be have exactly one single

?xml version="1.0" encoding="utf-8" ?>

Materialbase.MaterialName>Mat3</Materialbase.MaterialName>

10</Materialcode.Packsize>

Materialcode.MaterialcodeName>Mat3C1</Materialcode.MaterialcodeName>

B100</StorageRule.BinName>

StorageRule.MaxStockPerBin>10</StorageRule.MaxStockPerBin>

Materialbase.MaterialName>Mat4</Materialbase.MaterialName>

10</Materialcode.Packsize>

Materialcode.MaterialcodeName>Mat4C1</Materialcode.MaterialcodeName>

B100</StorageRule.BinName>

StorageRule.MaxStockPerBin>10</StorageRule.MaxStockPerBin>

Rev. Date:

5.15.2012

Page 39 of

100

If you will to import materials with more than storage rule or more material code you need to add tag for every line

Materialbase.MaterialName>

Materialcode.MaterialcodeName>

StorageRule.MaxStockPerBin>

StorageRule.MaxStockPerBin>

file must be have exactly one single root

>

>

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

This is same for Masterorder with more than one Orderline

Example 4:

<?xml version="1.0" standalone="yes"

<root>

<ImportOrder>

<Masterorder.MasterorderName

<Masterorder.DirectionType

<Masterorderline>

<Masterorderline.Linenumber

<Masterorderline.MaterialName

<Masterorderline.Quant

</Masterorderline>

<Masterorderline>

<Masterorderline.Linenumber

<Masterorderline.MaterialName

<Masterorderline.Quantity

</Masterorderline>

</ImportOrder>

<ImportOrder>

<Masterorder.MasterorderName

<Masterorder.DirectionType

<Masterorderline>

<Masterorderline.Linenumber

<Masterorderline.MaterialName

<Masterorderline.Quantity

</Masterorderline>

<Masterorderline>

<Masterorderline.Linenumber

<Masterorderline.MaterialName

<Masterorderline.Quantity

</Masterorderline>

</ImportOrder>

</root>

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

This is same for Masterorder with more than one Orderline

xml version="1.0" standalone="yes" ?>

Masterorder.MasterorderName>ord1</Masterorder.MasterorderName

Masterorder.DirectionType>2</Masterorder.DirectionType>

Masterorderline.Linenumber>1</Masterorderline.Linenumber

Masterorderline.MaterialName>Mat1</Masterorderline.MaterialName

Masterorderline.Quantity>10.1</Masterorderline.Quantity

Masterorderline.Linenumber>2</Masterorderline.Linenumber

Masterorderline.MaterialName>Mat2</Masterorderline.MaterialName

Masterorderline.Quantity>12</Masterorderline.Quantity

Masterorder.MasterorderName>ord2</Masterorder.MasterorderName

Masterorder.DirectionType>3</Masterorder.DirectionType>

Masterorderline.Linenumber>1</Masterorderline.Linenumber

Masterorderline.MaterialName>Mat1</Masterorderline.MaterialName

Masterorderline.Quantity>10.1</Masterorderline.Quantity

Masterorderline.Linenumber>2</Masterorderline.Linenumber

Masterorderline.MaterialName>Mat2</Masterorderline.MaterialName

Masterorderline.Quantity>12</Masterorderline.Quantity

Rev. Date:

5.15.2012

Page 40 of

100

Masterorder.MasterorderName>

Masterorderline.Linenumber>

Masterorderline.MaterialName>

Masterorderline.Quantity>

Masterorderline.Linenumber>

Masterorderline.MaterialName>

Masterorderline.Quantity>

Masterorder.MasterorderName>

Masterorderline.Linenumber>

Masterorderline.MaterialName>

Masterorderline.Quantity>

Masterorderline.Linenumber>

Masterorderline.MaterialName>

Masterorderline.Quantity>

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

Using Mapping by import

If you don’t want to use the same attribute

Example 5:

<?xml version="1.0" encoding="utf

<ImportMaterial>

<Materialbase.MaterialName

<CodePacksize>10</

<code>Mat5C1</code

<StorageRule.BinName

<Max>20</Max>

</ImportMaterial>

Pattern:

{name=Materialbase.MaterialName;separator=;length=

1;format=;mapping=;lookup=;expression=;}{name=

1;format=;mapping=;lookup=;expression=;}{name=StorageRule.MaxStockPerBin;separator=;length=

1;format=;mapping=Max;lookup=;expression=;}{name=Materialcode.MaterialcodeName;separator=;length=

1;format=;mapping=code;lookup=;expression=;}{name=Materialcode.PackSize;separator=;length=

1;format=;mapping=CodePacksize;lookup=;expression=;}

Using a single element for each table

Example 6:

<?xml version="1.0" encoding="utf

<root>

<ImportMaterial>

<Materialbase>

<Materialbase.MaterialName

</Materialbase>

<StorageRule>

<StorageRule.MaxStockPerBin

<StorageRule.BinName

</StorageRule>

<StorageRule>

<StorageRule.MaxStockPerBin

StorageRule.BinName

</StorageRule>

<Materialcode>

<Materialcode.MaterialcodeName

<Materialcode.PackSize

</Materialcode>

</ImportMaterial>

</root>

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

attribute text at xml file as Pattern fields, than you can use

xml version="1.0" encoding="utf-8" ?>

Materialbase.MaterialName>Mat5</Materialbase.MaterialName

</CodePacksize>

code>

StorageRule.BinName>B200</StorageRule.BinName>

{name=Materialbase.MaterialName;separator=;length=-

1;format=;mapping=;lookup=;expression=;}{name=StorageRule.BinName;separator=;length=

1;format=;mapping=;lookup=;expression=;}{name=StorageRule.MaxStockPerBin;separator=;length=

1;format=;mapping=Max;lookup=;expression=;}{name=Materialcode.MaterialcodeName;separator=;length=

up=;expression=;}{name=Materialcode.PackSize;separator=;length=

1;format=;mapping=CodePacksize;lookup=;expression=;}

Using a single element for each table

xml version="1.0" encoding="utf-8" ?>

Materialbase.MaterialName>Mat6</Materialbase.MaterialName

StorageRule.MaxStockPerBin>11</StorageRule.MaxStockPerBin

StorageRule.BinName>B100</StorageRule.BinName>

StorageRule.MaxStockPerBin>12</StorageRule.MaxStockPerBin

StorageRule.BinName>B200</ StorageRule.BinName>

Materialcode.MaterialcodeName>Mat6C1</Materialcode.MaterialcodeName

Materialcode.PackSize>11</Materialcode.PackSize>

Rev. Date:

5.15.2012

Page 41 of

100

use the mapping.

Materialbase.MaterialName>

StorageRule.BinName;separator=;length=-

1;format=;mapping=;lookup=;expression=;}{name=StorageRule.MaxStockPerBin;separator=;length=-

1;format=;mapping=Max;lookup=;expression=;}{name=Materialcode.MaterialcodeName;separator=;length=-

up=;expression=;}{name=Materialcode.PackSize;separator=;length=-

Materialbase.MaterialName>

StorageRule.MaxStockPerBin>

StorageRule.MaxStockPerBin> <

Materialcode.MaterialcodeName>

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

6.3.3 Properties

Name

FileName

Culture

ErrorFile

Error Message Column

Name

Pattern

Prompt

Retry

PostImportActions

PostImportActionParameter

Trigger File

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Description

The name of the file to be used to transfer the main data. If the channel is

used for import (depends on Service), the filename may

(e.g. C:\*.xml)

Specifies the culture (Language) used to decode the values like DateTime

or numbers. Example of the culture is de-DE for German

US for English-USA

Error file is used to report the lines could not be imported. The lines will be

always appended to the error file if it already exists. The Error File may

contain wild cards or placeholders, as described in the next section of this

document.

If due to the usage of Wild card the generated error file name is the same as

the main file name, the error file name will be expanded by the ”.err”

extension.

If the ErrorFile does not have a path, the path of the main file will be used.

Name of the attribute used to keep the message error.

Specifies the template, describing the format of the main file. Available

fields in the related Template Designer depends on the selected Service.

If it is true and only if the job profile is started in manual mode, the

prompts for the file name using standard windows file open dialog.

Number of retries to be done, before a failure is reported in the case that the

main file is not accessible.

specifies the action which takes place after the Import is done.

• Default

o Only in automatic mode the file will be deleted. In

manual mode no action takes place.

• Delete

o The File will be deleted, independent if the profile is

manually started or automatically.

• Move

o The file will be moved or renamed

PostImportActionParameter which can be a constant

filename, but the wildcards and placeholders are also

supported. Please see the next section for more details. It

fails if the target file already exists.

• Archive

o The file will be archived in ZIP Format to the location

specified by PostImportActionParameter which can

contain the wildcards and placeholders. Please see the

next section for more details. If the Archive file exists, it

will be overwritten. The Archive can contain only one

file.

• ArchiveAndDelete

o The file will be deleted after it is archived.

If the PostImportAction is Move,Archive or ArchiveAndDelete, this

parameter specifies the target file name for the given action.

If not empty, the import or export starts first when the trigger file exists.

Rev. Date:

5.15.2012

Page 42 of

100

The name of the file to be used to transfer the main data. If the channel is

used for import (depends on Service), the filename may contain wild cards

Specifies the culture (Language) used to decode the values like DateTime

DE for German-Germany or en-

ould not be imported. The lines will be

always appended to the error file if it already exists. The Error File may

contain wild cards or placeholders, as described in the next section of this

file name is the same as

the main file name, the error file name will be expanded by the ”.err”

If the ErrorFile does not have a path, the path of the main file will be used.

ssage error.

Specifies the template, describing the format of the main file. Available

fields in the related Template Designer depends on the selected Service.

If it is true and only if the job profile is started in manual mode, the systems

prompts for the file name using standard windows file open dialog.

Number of retries to be done, before a failure is reported in the case that the

he Import is done.

Only in automatic mode the file will be deleted. In

manual mode no action takes place.

The File will be deleted, independent if the profile is

The file will be moved or renamed based on the

PostImportActionParameter which can be a constant

filename, but the wildcards and placeholders are also

supported. Please see the next section for more details. It

fails if the target file already exists.

IP Format to the location

specified by PostImportActionParameter which can

contain the wildcards and placeholders. Please see the

next section for more details. If the Archive file exists, it

will be overwritten. The Archive can contain only one

The file will be deleted after it is archived.

If the PostImportAction is Move,Archive or ArchiveAndDelete, this

parameter specifies the target file name for the given action.

If not empty, the import or export starts first when the trigger file exists.

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

The trigger file will not be opened or locked. After Import or Export the

trigger file will be deleted.

Rev. Date:

5.15.2012

Page 43 of

100

The trigger file will not be opened or locked. After Import or Export the

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

7. Web Services

Web Service is an industry standard defined by W3C organiz

two or more systems over network.

often used where the service oriented architecture (SOA) approach is put in place.

reduce the effort of integrating 3

to Power Pick Global 3rd party software

Global software through these web services

7.1 Available Services

Figure 11: Architectural view of Web Services in

Table 156: Available Services:

Service

ISession2

IOrder2

IMaterial2

ILocation2

IOrderProcessor2

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Web Service is an industry standard defined by W3C organization and is used for communication between

two or more systems over network. It is commonly used in a business-to-business (B2B) surrounding and

often used where the service oriented architecture (SOA) approach is put in place.

ce the effort of integrating 3rd party software in an existing it infrastructure of a company.

party software is able to access to some specific functions of the

hrough these web services with less effort.

: Architectural view of Web Services in Power Pick Global

Description

Used to establish the communication to CEU and to log on.

Access the order functionality, to create, modify and delete the orders

Used to access the Materials, to create, modify and delete the materials

Used to check and change locations

Used to start the order processing

Rev. Date:

5.15.2012

Page 44 of

100

ation and is used for communication between

business (B2B) surrounding and

often used where the service oriented architecture (SOA) approach is put in place. Therefore web services

party software in an existing it infrastructure of a company. According

to access to some specific functions of the Power Pick

Power Pick Global

Used to establish the communication to CEU and to log on.

Access the order functionality, to create, modify and delete the orders

Used to access the Materials, to create, modify and delete the materials

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Figure 12: ISession interface

Figure 13: IOrder / IOrder2 interface

Rev. Date:

5.15.2012

Page 45 of

100

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Figure 14: IMaterial / IMaterial2 interface

Figure 15: IOrderProcessor2 interface

Rev. Date:

5.15.2012

Page 46 of

100

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Figure 16: IDisplay interface

Rev. Date:

5.15.2012

Page 47 of

100

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

7.2 Activating the Web Services

Web Services are controlled with License. To u

option must be active. This option also controls the max.

License, the Web Services are also controlled by the main CEU parameters which are described in this

document.

7.3 Web Services Code Sampl

In this section some of the Web Service functionalities are described with Code Samples. The sample is

written in C# language under .NET

7.3.1 Setup

The Power Pick Global Software must be first fully installed and configu

configuration must be available. The CEU module (GP.CrossEnterpriseUnit.exe) hosts the Web Services,

therefore it must be running and available to proceed with the sample application. If

GP.CrossEnterpriseUnit.exe is running a

the messages whether the Web Services are started or not:

It is also possible to run the CEU as Windows Service. In this case, it is possible to use a web browser to

check whether the web services are available or not. use the following URL:

http://localhost:1353/GP.CrossEnterpriseUnit.Integrator/ISession2

Use the address of a PC which runs the CEU instead of localhost if the CEU is not running locally. Number

1353 is the port number which is configured in parameters. ISession

interface, it can be any interface listed in section 7.1

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Activating the Web Services

re controlled with License. To use Web Services of Power Pick Global

s option also controls the max. number of Web Service Clients. In addition to

License, the Web Services are also controlled by the main CEU parameters which are described in this

Web Services Code Sample

In this section some of the Web Service functionalities are described with Code Samples. The sample is

written in C# language under .NET 4 using Microsoft Visual Studio 2010

Software must be first fully installed and configured. The proper licensing and

configuration must be available. The CEU module (GP.CrossEnterpriseUnit.exe) hosts the Web Services,

therefore it must be running and available to proceed with the sample application. If

GP.CrossEnterpriseUnit.exe is running as console application (using /Console command line) it will show

the messages whether the Web Services are started or not:

Figure 17: CEU in console mode

It is also possible to run the CEU as Windows Service. In this case, it is possible to use a web browser to

check whether the web services are available or not. use the following URL:

http://localhost:1353/GP.CrossEnterpriseUnit.Integrator/ISession2

se the address of a PC which runs the CEU instead of localhost if the CEU is not running locally. Number

1353 is the port number which is configured in parameters. ISession2 is the name of the web service

interface, it can be any interface listed in section 7.1

Rev. Date:

5.15.2012

Page 48 of

100

Power Pick Global, the related License

number of Web Service Clients. In addition to

License, the Web Services are also controlled by the main CEU parameters which are described in this

In this section some of the Web Service functionalities are described with Code Samples. The sample is

red. The proper licensing and

configuration must be available. The CEU module (GP.CrossEnterpriseUnit.exe) hosts the Web Services,

therefore it must be running and available to proceed with the sample application. If

s console application (using /Console command line) it will show

It is also possible to run the CEU as Windows Service. In this case, it is possible to use a web browser to

se the address of a PC which runs the CEU instead of localhost if the CEU is not running locally. Number

e name of the web service

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

The Interface is technically described using the WSDL (Web Service Description Language) which can b

obtained for each interface. Many modern programming tools are able to directly import the WSDL and

generate source code to access the Web Service.

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Figure 18: Session Web Service in Browser

The Interface is technically described using the WSDL (Web Service Description Language) which can b

obtained for each interface. Many modern programming tools are able to directly import the WSDL and

generate source code to access the Web Service.

Figure 19: WSDL file displayed in Browser

Rev. Date:

5.15.2012

Page 49 of

100

The Interface is technically described using the WSDL (Web Service Description Language) which can be

obtained for each interface. Many modern programming tools are able to directly import the WSDL and

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

Use “Add Service Reference

generate the source code to access the Web Services:

Figure

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Reference->Advanced…->Add Web Reference” in Visual Studio to automatically

generate the source code to access the Web Services:

Figure 20: Adding Web Reference in Visual Studio

Rev. Date:

5.15.2012

Page 50 of

100

” in Visual Studio to automatically

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

7.3.2 Log on

Web Services in Power Pick Global

through the log on process. But beforehand it is necessary to establish a session to invoke the logon method.

Opening the session allows Power Pick Global

software or not. Depending on the li

session can’t be created. The returned session id is necessary for s

Services. Therefore it is mandatory to c

on session, it will be automatically timed out. The Timeo

To Log on, the Station must be defined under the warehouse management in the software. The User

defined as well in the user management

As shown in Figure 21 the log on pro

credentials are provided properly in the beginning of the log on process

and device name is needed. If the client is also needed then

Code sample for two steps process:

SessionClient m_session = new

string m_sessionID = null; //Possible the old ID

m_sessionID = m_session.Open(sessionID,

SessionLogOnArgs _logOnArgs =

_logOnArgs.UserName = m_userTextBox.Text

_logOnArgs.UserPassword = m_passwordTextBox.Text

_logOnArgs.StationName = m_stationTextBox.Text

_logOnArgs.OwnerName = null;

SessionLogOnResult _result = m_session.LogOn(m_sessionID,

if (!_result.Status != "cmdDone"

{

MessageBox.Show("Unable to log on"

}

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Power Pick Global can be invoked after a user has provided proper credentials and has passed

But beforehand it is necessary to establish a session to invoke the logon method.

Power Pick Global to determine if another client is allowed to establish a session to the

Depending on the license opening a session returns a new session id or an error message if the

The returned session id is necessary for successive method invocations of

Therefore it is mandatory to close the session at the end to release the resources. In the case of no activity

on session, it will be automatically timed out. The Timeout can be set using parameters.

og on, the Station must be defined under the warehouse management in the software. The User

user management of the software.

Figure 21: LogOn Process

the log on process can be completed within two. The two steps process is fulfilled if all

in the beginning of the log on process. In this case the creden

and device name is needed. If the client is also needed then it has to be provided as well.

SessionClient();

//Possible the old ID

sessionID, RemoteClientTypes.MobileClient);

_logOnArgs = new ISession2.SessionLogOnArgs();

m_userTextBox.Text;

m_passwordTextBox.Text;

m_stationTextBox.Text;

_result = m_session.LogOn(m_sessionID, _logOnArgs);

"cmdDone")

"Unable to log on", "ERROR", MessageBoxButtons.OK, MessageBoxIcon

Rev. Date:

5.15.2012

Page 51 of

100

can be invoked after a user has provided proper credentials and has passed

But beforehand it is necessary to establish a session to invoke the logon method.

to determine if another client is allowed to establish a session to the

cense opening a session returns a new session id or an error message if the

essive method invocations of GlobaPic Web

he session at the end to release the resources. In the case of no activity

og on, the Station must be defined under the warehouse management in the software. The User needs to be

process is fulfilled if all

this case the credentials user, password,

MessageBoxIcon.Error);

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

7.3.3 Create Order

Orders can be created through the Order Web Service. Mandatory data are the order name, direction type, material

name, and the quantity. The following lines show a sa

//Initialize the Order Web Service

Order2Client _order2Client = new Order2Client

//Initialize new Order header

WsBizMasterOrder _masterOrder = new

//Fill the mandatory properties

_masterOrder.MasterorderName = m_masterOrderNameTextBox.Text;

_masterOrder.DirectionType = WsDirectionTypes

_masterorder.DirectionTypeSpecified =

_masterOrder.Type = WsBizMasterOrder

_masterOrder.TypeSpecified = true;

//Take care of the Order Lines

List<WsBizMasterOrderLine> _lines =

for (int _index = 0; _index < m_dataGridView.Rows.Count; _index++)

{

//IMPORTANT: Do not create the BizMasterorderline object using new statement

WsBizMasterOrderLine _line = new

//add the data from a data grid view control

if (m_dataGridView.Rows[_index].Cells[

m_dataGridView.Rows[_index].Cells[

{

_line.Materialreference = m_dataGridView.Rows[_index].Cells[

_line.MaterialreferenceType =

_line.QuantityValue = Convert

_lines.Add(_line);

}

}

//Now save the order and let it be allocated too

_orderClient.MasterOrder_Save(m_sessionID, _masterOrder, _lines.ToArray(),

WsSaveActionTypes.SaveForImmediateProcessing

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Orders can be created through the Order Web Service. Mandatory data are the order name, direction type, material

The following lines show a sample way to create a pick order:

Order2Client();

new WsBizMasterOrder();

_masterOrder.MasterorderName = m_masterOrderNameTextBox.Text;

WsDirectionTypes.Pick;

DirectionTypeSpecified = true;

WsBizMasterOrderTypes.Internal;

> _lines = new List<WsBizMasterOrderLine>();

_index = 0; _index < m_dataGridView.Rows.Count; _index++)

//IMPORTANT: Do not create the BizMasterorderline object using new statement

new WsBizMasterOrderLine();

grid view control

(m_dataGridView.Rows[_index].Cells["Material"].Value != null &&

m_dataGridView.Rows[_index].Cells["Quantity"].Value != null)

_line.Materialreference = m_dataGridView.Rows[_index].Cells["Material"].Value.ToString();

_line.MaterialreferenceType = WsBizMasterOrderLineMaterialreferenceTypes.Materialname;

Convert.ToDouble(m_dataGridView.Rows[_index].Cells["Quantity"

//Now save the order and let it be allocated too

_orderClient.MasterOrder_Save(m_sessionID, _masterOrder, _lines.ToArray(),

SaveForImmediateProcessing, true, WsAllocationScopes.Station, true);

Rev. Date:

5.15.2012

Page 52 of

100

Orders can be created through the Order Web Service. Mandatory data are the order name, direction type, material

].Value.ToString();

.Materialname; "Quantity"].Value);

);

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

7.3.4 List of Orders

One way to process orders is to receive a list of orders, select orders to p

necessary steps are shown in Figure

Order _orderClient = new Order ();

WsPMOLOpenResult _openPageListRes =

m_filterTb.Text, IOrder2.

if (_openPageListRes.Status == "cmdFound"

{

IOrder2.WsPMOLPartResult _partPageListRes =

_orderClient.MasterOrder_PageListPart(m_sessionID, 0,

foreach (IOrder2.WsBizMasterOrder

{

ListViewItem _item = new ListViewItem

_item.Checked = false;

m_ordersListView.Items.Add(_item);

}

_orderClient.MasterOrder_PageListClose(

}

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

One way to process orders is to receive a list of orders, select orders to process, and process the selected orders. The

Figure 22.

Figure 22: Get and process orders

_openPageListRes = _orderClient.MasterOrder_PageListOpen(m_sessionID,

m_filterTb.Text, IOrder2.WsOrderLocales.All, IOrder2.WsDirectionTypes

"cmdFound")

_partPageListRes =

_orderClient.MasterOrder_PageListPart(m_sessionID, 0,

openPageListRes .MasterOrderCount);

WsBizMasterOrder _masterOrderItem in _partPageListRes.Orders)

ListViewItem(_masterOrderItem.MasterorderName);

m_ordersListView.Items.Add(_item);

er_PageListClose(m_sessionID);

Rev. Date:

5.15.2012

Page 53 of

100

rocess, and process the selected orders. The

m_sessionID,

WsDirectionTypes.Pick);

openPageListRes .MasterOrderCount);

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

7.3.5 Find Order

Determine if a given order is available in Order _orderClient = new Order ();

IOrder2.WsOrderExistsResult _getResult =

if (_getResult.Status == "cmdFound"

{

//Order is found - fetch the lines

WsOrderLinesResult _lineResult =

_orderClient

//Display the Lines in Grid

m_dataGridView.Rows.Clear();

foreach (WsBizMasterOrderLine _line

{

int _index = m_dataGridView.Rows.Add();

m_dataGridView.Rows[_index].Cells[

m_dataGridView.Rows[_index].Cells[

}

}

Order _orderClient = new Order ();

IOrder2. WsMasterOrderGetResult _result =

if (_result.Status == "cmdFound" && _getResult.

{

//Order is found - fetch the lines

WsOrderLinesResult _lineResult =

_orderClient

//Display the Lines in Grid

m_dataGridView.Rows.Clear();

foreach (WsBizMasterOrderLine _line

{

int _index = m_dataGridView.Rows.Add();

m_dataGridView.Rows[_index].Cells[

m_dataGridView.Rows[_index].Cells[

}

}

Order _orderClient = new Order ();

WsOrderLinesResult _lineResult =

_orderClient.MasterOrderLine_GetByMasterOrderName(

if (_lineResult.Status == "cmdDone"

{

//Display the Lines in Grid

m_dataGridView.Rows.Clear();

foreach (WsBizMasterOrderLine _line

{

int _index = m_dataGridView.Rows.Add();

m_dataGridView.Rows[_index].Cells[

m_dataGridView.Rows[_index].Cells[

}

}

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Determine if a given order is available in Power Pick Global use the following example:

_getResult = _orderClient.MasterOrder_Exit(m_sessionID,

m_orderName.Text);

"cmdFound")

fetch the lines

_lineResult =

_orderClient.MasterOrderLine_GetByMasterOrder(m_sessionID, _getResult.

_line in _lineResult.Lines)

_index = m_dataGridView.Rows.Add();

m_dataGridView.Rows[_index].Cells["Material"].Value = _line.Materialreference;

m_dataGridView.Rows[_index].Cells["Quantity"].Value = _line.Quantity;

esult = _orderClient. MasterOrder_GetByName(m_sessionID

m_orderName.Text);

&& _getResult.MasterOrder != null)

fetch the lines

_lineResult =

_orderClient.MasterOrderLine_GetByMasterOrder(m_sessionID,

_result.MasterOrder.MasterOrderID);

_line in _lineResult.Lines)

_index = m_dataGridView.Rows.Add();

m_dataGridView.Rows[_index].Cells["Material"].Value = _line.Materialreference;

m_dataGridView.Rows[_index].Cells["Quantity"].Value = _line.Quantity;

.MasterOrderLine_GetByMasterOrderName(m_sessionID, m_orderName.Text

")

_line in _lineResult.Lines)

_index = m_dataGridView.Rows.Add();

m_dataGridView.Rows[_index].Cells["Material"].Value = _line.Materialreference;

m_dataGridView.Rows[_index].Cells["Quantity"].Value = _line.Quantity;

Rev. Date:

5.15.2012

Page 54 of

100

m_orderName.Text);

m_sessionID, _getResult.ID);

_line.Materialreference;

m_sessionID,

m_orderName.Text);

m_sessionID,

MasterOrder.MasterOrderID);

].Value = _line.Materialreference;

m_sessionID, m_orderName.Text);

].Value = _line.Materialreference;

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

7.3.6 Process Order

As shown in Figure 22 the next step to

id is mandatory to proceed. The following example shows the way

Order2 _oClient = new Order ();

OrderProcessor2 _opClient = new OrderProcessor2

_opClient.Open(m_sessionID);

// get the order

IOrder2.WsOrderExistsResult _getResult =

if (_getResult.Status == "cmdFound"

{

// allocate order

WsAllocationResult _allocResult =

if (_allocResult.Status == "cmdDone"

&& _allocResult.AllocationResults != null

{

bool _hadOrders = false;

foreach (WsAllocationLineInfo

{

if (_allocResItem.RequiredQuantity >

{

// send order(s)

_opClient.QueueMasterOrder(

_hadOrders = true;

}

}

if (_hadOrders)

{

_opClient.Start(m_sessionID);

}

else

{

// now close the workflow connection

_opClient.Close(m_sessionID);

// also close the session

m_session.Close(m_sessionID);

//throw Exception("Order could not be started!");

}

}

}

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

the next step to process orders or rather one order after providing a list of orders a workflow

The following example shows the way to prepare the order and start

OrderProcessor2 ();

_getResult = _oClient.MasterOrder_Exit(m_sessionID, m_orderName.Text);

"cmdFound")

_allocResult = _oClient.MasterOrder_Allocate(m_sessionID, getResult.ID);

"cmdDone"

AllocationResults != null)

WsAllocationLineInfo _allocResItem in _allocResult.AllocationResults)

.RequiredQuantity > _allocResItem.MissingQuantity)

QueueMasterOrder(m_sessionID, allocResItem.OrderId, null, null)

m_sessionID);

// now close the workflow connection

m_sessionID);

// also close the session

m_session.Close(m_sessionID);

//throw Exception("Order could not be started!");

Rev. Date:

5.15.2012

Page 55 of

100

process orders or rather one order after providing a list of orders a workflow

to prepare the order and start a task.

m_orderName.Text);

m_sessionID, getResult.ID);

)

OrderId, null, null)

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

7.3.7 Confirm Order

Confirming an order is mandatory to finish the process of order processing.

to determine the proper state, but it can also be implemented in a thread.

Order2 _oClient = new Order ();

OrderProcessor2 _opClient = new OrderProcessor2

_opClient.Open(m_sessionID);

// get the order

IOrder2.WsOrderExistsResult _getResult =

if (_getResult.Status == "cmdFound"

{

// allocate order

WsAllocationResult _allocResult =

if (_allocResult.Status == "cmdDone"

&& _allocResult.AllocationResults != null

{

bool _hadOrders = false;

foreach (WsAllocationLineInfo

{

if (_allocResItem.RequiredQuantity >

{

// send order(s)

_opClient.QueueMasterOrder(

_hadOrders = true;

}

}

if (_hadOrders)

{

_opClient.Start(m_sessionID);

bool _stop = false;

while(!_stop)

{

WsWfStatus _wfStatus =

if (_wfStatus.Status ==

{

switch (_wfStatus.WfStatusType)

{

case WsWfLastActionTypes

case WsWfLastActionTypes

{

//

_stop =

}

break;

case WsWfLastActionTypes

{

//

WsWfAreasResult

_stop =

if

{

}

}

break;

case WsWfLastActionTypes

{

// get information of active process

WsWfProcStatus

if

{

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Confirming an order is mandatory to finish the process of order processing. The following example uses while loops

to determine the proper state, but it can also be implemented in a thread.

OrderProcessor2 ();

_getResult = _oClient.MasterOrder_Exit(m_sessionID, m_orderName.Text);

"cmdFound")

_allocResult = _oClient.MasterOrder_Allocate(m_sessionID, getResult.ID);

"cmdDone"

AllocationResults != null)

WsAllocationLineInfo _allocResItem in _allocResult.AllocationResults)

.RequiredQuantity > _allocResItem.MissingQuantity)

QueueMasterOrder(m_sessionID, allocResItem.OrderId, null, null)

m_sessionID);

_wfStatus = _opClient.GetWfStatus(m_sessionID);

wfStatus.Status == "cmdDone")

(_wfStatus.WfStatusType)

WsWfLastActionTypes.Finished:

WsWfLastActionTypes.Stopped:

// OrderProcessor finished

stop = true;

WsWfLastActionTypes.AreaSelection:

// loading possible Areas

WsWfAreasResult _areaInfoRes = _opClient.GetWfAreas(m_sessionID

stop = true;

(_areaInfoRes.Status == "cmdDone")

if (_areaInfoRes.Areas != null && _areaInfoRes.Areas.Length > 0)

{

// set area

_opClient.SetActiveArea(m_sessionID,

_areaInfoRes.Areas[0].AreaName);

_stop = false;

}

WsWfLastActionTypes.ActiveProcessesChanged:

// get information of active process

WsWfProcStatus _procStatusRes =

_opClient.GetProcState(m_sessionID ,

_wfStatus.ActiveProcessID);

(_procStatusRes.Status == "cmdDone")

// example has no barcode check or other spezial configuration.

// only quantity confirmation

if (_procStatusRes.ReqInput != null)

{

// “ReqInput” is the actual from CEU requestet field

_procStatusRes.ReqInput.Value =

_procStatusRes.ReqInput.DisplayValue;

Rev. Date:

5.15.2012

Page 56 of

100

The following example uses while loops

m_orderName.Text);

m_sessionID, getResult.ID);

)

OrderId, null, null)

m_sessionID);

_areaInfoRes.Areas.Length > 0)

_areaInfoRes.Areas[0].AreaName);

.GetProcState(m_sessionID ,

_wfStatus.ActiveProcessID);

// example has no barcode check or other spezial configuration.

// “ReqInput” is the actual from CEU requestet field

_procStatusRes.ReqInput.DisplayValue;

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

}

}

break;

}

}

else

{

_stop = true;

}

}

}

// now close the workflow connection

_opClient.Close(m_sessionID);

// also close the session

m_session.Close(m_sessionID);

}

}

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

// send value to CEU � WorkFlow

_opClient.SetInput(m_sessionID, _procStatusRes.ProcessId,

_procStatusRes.ReqInput);

}

// now close the workflow connection

m_sessionID);

m_session.Close(m_sessionID);

Rev. Date:

5.15.2012

Page 57 of

100

.SetInput(m_sessionID, _procStatusRes.ProcessId,

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

7.3.8 Find Material

Determine if a given material is available in Power Pick Global use the following example: Material2 _materialClient = new Material2

IMaterial2.WsMaterialExistsResult _getResult =

if (_getResult.Status == "cmdFound"

{

}

else

{

throw Exception("Material not found!

}

==================================================================================

Material2 _materialClient = new Material2

IMaterial2.WsMaterialBaseGetResult

if (_getResult.Status == "cmdFound"

{

}

else

{

_getResult = _materialClient.Material_

if (_getResult.Status == "cmdFound"

{

}

else

{

throw Exception("Material not found!

}

}

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Determine if a given material is available in Power Pick Global use the following example:

Material2 ();

_getResult = _materialClient.Material_Exit(m_sessionID

m_materialName.Text);

"cmdFound")

Material not found!");

==================================================================================

Material2 ();

Result _getResult = _ materialClient.Material_GetBaseByName

m_materialName.Text);

"cmdFound")

.Material_GetBaseByAlias(m_sessionID, m_materialName.Text);

"cmdFound")

Material not found!");

Rev. Date:

5.15.2012

Page 58 of

100

Determine if a given material is available in Power Pick Global use the following example:

m_sessionID,

m_materialName.Text);

==================================================================================

GetBaseByName(m_sessionID,

m_materialName.Text);

m_materialName.Text);

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

7.3.9 Find Material Property

The following code shows how to get the property of a specific material, for example to check if it is lot handled: // the material knows the property id

WsMaterialPropertyGetResult _matlPropRes =

if (_matlPropRes.Status == "cmdKnown"

{

switch (_matlPropRes.LotSeekStoreType

{

case WsBizMaterialPropertyAttributeSeekTypes

// lot has to be given by creating the storing line

break;

case WsBizMaterialPropertyAttributeSeekTypes

// lot can be difined by creating the storing line,

// if not by confimation it has to enter

break;

case WsBizMaterialPropertyAttributeSeekTypes

case WsBizMaterialPropertyAttributeSeekTypes

// Material is not “lot” controlled

break;

}

switch (_matlPropRes.LotSeekPick

{

case WsBizMaterialPropertyAttributeSeekTypes

// lot has to be given by creating the storing line

break;

case WsBizMaterialPropertyAttributeSeekTypes

// lot can be difined by creating the storing line,

// if not by confimation it has to enter

break;

case WsBizMaterialPropertyAttributeSeekTypes

case WsBizMaterialPropertyAttributeSeekTypes

// Material is not “lot” controlled

break;

}

}

else

{

throw Exception("Material Property not found!"

}

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

The following code shows how to get the property of a specific material, for example to check if it is lot handled:

the material knows the property id

_matlPropRes = _materialClient.MaterialProperty_GetByName(

"cmdKnown")

LotSeekStoreType)

WsBizMaterialPropertyAttributeSeekTypes.Given: lot has to be given by creating the storing line

WsBizMaterialPropertyAttributeSeekTypes.Optional:

lot can be difined by creating the storing line,

if not by confimation it has to enter

WsBizMaterialPropertyAttributeSeekTypes.NotSet:

WsBizMaterialPropertyAttributeSeekTypes.Prompt:

Material is not “lot” controlled

PickType)

WsBizMaterialPropertyAttributeSeekTypes.Given: lot has to be given by creating the storing line

WsBizMaterialPropertyAttributeSeekTypes.Optional:

lot can be difined by creating the storing line,

if not by confimation it has to enter

WsBizMaterialPropertyAttributeSeekTypes.NotSet:

WsBizMaterialPropertyAttributeSeekTypes.Prompt:

Material is not “lot” controlled

"Material Property not found!");

Rev. Date:

5.15.2012

Page 59 of

100

The following code shows how to get the property of a specific material, for example to check if it is lot handled:

(m_sessionID,

"Property001");

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

7.3.10 Find Material Property

The following code shows how to get the property of a specific material, for example to check if it is lot handled: Material2 _materialClient = new Material2

IMaterial2.WsMaterialBaseGetResult

if (_getResult.Status == "cmdNotFound"

{

// value not found as material name, not try as alias

_getResult = _materialClient.Material_GetBaseByAlias(

}

if (_getResult.Status == "cmdFound"

{

// the material knows the property id

WsMaterialPropertyGetResult _matlPropRes =

if (_matlPropRes.Status == "cmdKnown"

{

switch (_matlPropRes.LotSeekStoreType

{

case WsBizMaterialPropertyAttributeSeekTypes

// lot has to be given by creating the storing line

break;

case WsBizMaterialPropertyAttributeSeekTypes

// lot can be difined by creating

// if not by confimation it has to enter

break;

case WsBizMaterialPropertyAttributeSeekTypes

case WsBizMaterialPropertyAttributeSeekTypes

// Material is not “lot” controlled

break;

}

switch (_matlPropRes.LotSeek

{

case WsBizMaterialPropertyAttributeSeekTypes

// lot has to be given by creating the storing line

break;

case WsBizMaterialPropertyAttributeSeekTypes

// lot can be difined by creating the storing line,

// if not by confimation it has to enter

break;

case WsBizMaterialPropertyAttributeSeekTypes

case WsBizMaterialPropertyAttributeSeekTypes

// Material is not “lot” controlled

break;

}

}

else

{

throw Exception("Material Property not found!"

}

}

else

{

throw Exception("Material not found!"

}

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

The following code shows how to get the property of a specific material, for example to check if it is lot handled:

Material2 ();

WsMaterialBaseGetResult _getResult = _ materialClient.Material_GetBaseByName(

m_materialName.Text);

"cmdNotFound")

value not found as material name, not try as alias

.Material_GetBaseByAlias(m_sessionID, m_materialName.Text);

"cmdFound")

the material knows the property id

_matlPropRes = _materialClient.MaterialProperty_Get(m_sessionID

_getResult.MaterialBase.MaterialpropertyId

"cmdKnown")

LotSeekStoreType)

WsBizMaterialPropertyAttributeSeekTypes.Given: lot has to be given by creating the storing line

WsBizMaterialPropertyAttributeSeekTypes.Optional:

lot can be difined by creating the storing line,

if not by confimation it has to enter

WsBizMaterialPropertyAttributeSeekTypes.NotSet:

WsBizMaterialPropertyAttributeSeekTypes.Prompt:

is not “lot” controlled

LotSeekPickType)

WsBizMaterialPropertyAttributeSeekTypes.Given: lot has to be given by creating the storing line

WsBizMaterialPropertyAttributeSeekTypes.Optional:

lot can be difined by creating the storing line,

if not by confimation it has to enter

WsBizMaterialPropertyAttributeSeekTypes.NotSet:

WsBizMaterialPropertyAttributeSeekTypes.Prompt:

Material is not “lot” controlled

Property not found!");

"Material not found!");

Rev. Date:

5.15.2012

Page 60 of

100

The following code shows how to get the property of a specific material, for example to check if it is lot handled:

.Material_GetBaseByName(m_sessionID,

m_materialName.Text);

m_materialName.Text);

m_sessionID,

MaterialBase.MaterialpropertyId);

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

7.3.11 Find Location

Determine if a given location is available in Power Pick Global use the following example: Location2 _locClient = new Location

ILocation2.WsLocationExistResult _getResult =

if (_getResult.Status == "cmdFound"

{

}

else

{

throw Exception("Location not found!

}

==================================================================================

Location2 _locClient = new Location2

ILocation2.WsLocationViewGetResult

double _freeQty = 0.0;

if (_getResult.Status == "cmdFound"

{

if (_getResult.Status == "cmdFound"

{

// Analyse now all LocContent and LocContentBreakdown

// LocContent:

foreach (WsBizLocContentView

{

// LocContent:

foreach (WsBizLocContentBreakdown

{

_freeQty += (_break

}

}

}

}

else

{

throw Exception("Location not found!"

}

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Determine if a given location is available in Power Pick Global use the following example:

Location2 ();

_getResult = _ locClient.Location_Exit(m_sessionID,

m_locationNameTb

"cmdFound")

Location not found!");

==================================================================================

Location2 ();

WsLocationViewGetResult _getResult = _ locClient.Location_GetViewByName(m_sessionID

m_locationNameTb.Text);

"cmdFound")

"cmdFound" && _getResult.LocationView != null)

// Analyse now all LocContent and LocContentBreakdown

WsBizLocContentView _locCon in _getResult.LocationView.BizLocContentViews

WsBizLocContentBreakdown _break in _locCon.LocContentBreakdowns)

_break.QyuantityCurrent - _break.QyuantityDedicated);

"Location not found!");

Rev. Date:

5.15.2012

Page 61 of

100

Determine if a given location is available in Power Pick Global use the following example:

m_locationNameTb.Text);

==================================================================================

m_sessionID,

m_locationNameTb.Text);

LocationView.BizLocContentViews)

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

7.3.12 Direct store

Determine if a given location is available in Power Pick Global and

use the following example: Location2 _locClient = new Location2

ILocation2.WsLocationExistResult _locRes =

Material2 _materialClient = new Material2

IMaterial2.WsMaterialExistsResult _matlRes =

if (_locRes.Status == "cmdFound" &&

{

WsMaterialAttributeParameter _attribs =

_attribs.Lot = "Lot001";

_locClient.Location_DirectPutPick(

}

else

{

throw Exception("Location not found

}

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Determine if a given location is available in Power Pick Global and store directly material on the location,

Location2 ();

_locRes = _ locClient.Location_Exit(m_sessionID,

m_locationNameTb.Text);

Material2 ();

_matlRes = _materialClient.Material_Exit(m_sessionID

m_materialName.Text);

&& _matlRes.Status == "cmdFound")

_attribs = new WsMaterialAttributeParameter();

Location_DirectPutPick(m_sessionID, _locClient.LocationID, _materialClient.MaterialId,

false, true, Convert.ToDouble(m_quantityTb.Text),

"Location not found / Material not found!");

Rev. Date:

5.15.2012

Page 62 of

100

store directly material on the location,

m_locationNameTb.Text);

m_sessionID,

m_materialName.Text);

_locClient.LocationID, _materialClient.MaterialId,

, true, _attribs);

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

7.3.13 Location quantity correction

Determine if a given material is placed on a given location in Power Pick Global

use the following example: Location2 _locClient = new Location2

ILocation2.WsLocationExistResult _locRes =

Material2 _materialClient = new Material2

IMaterial2.WsMaterialExistsResult _matlRes =

if (_locRes.Status == "cmdFound" &&

{

WsMaterialAttributeParameter _attribs =

_attribs.Lot = "Lot001";

_locClient.Location_QtyCorrection

}

else

{

throw Exception("Location not found

}

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Location quantity correction

Determine if a given material is placed on a given location in Power Pick Global change the quantity,

Location2 ();

_locRes = _ locClient.Location_Exit(m_sessionID,

m_locationNameTb.Text);

Material2 ();

_matlRes = _materialClient.Material_Exit(m_sessionID

m_materialName.Text);

&& _matlRes.Status == "cmdFound")

_attribs = new WsMaterialAttributeParameter();

QtyCorrection(m_sessionID, _locClient.LocationID, _materialClient.MaterialId,

Convert.ToDouble(m_quantityTb.Text), true, _attribs);

"Location not found / Material not found!");

Rev. Date:

5.15.2012

Page 63 of

100

change the quantity,

m_locationNameTb.Text);

m_sessionID,

m_materialName.Text);

_locClient.LocationID, _materialClient.MaterialId,

, _attribs);

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

7.4 Web Service function description

7.4.1 ISession2

SessionOpenResult Open(stringCreate a session to CEU.

The result session ID is needed for all other Web Service communications.

Parameter: sessionId

remoteClientType

Result: • InterfaceName

Name of the based function interface.

• FunctionName

Name of the actual function.

• Status

Result code, informed about the success of the action.

• MessageCode

A code (example “MSG00001”) that informed about the success of the action.

• ErrorMessage

Plain error, especially after exceptions.

• SessionID

Id assigned to the session.

Result Codes: cmdDone

cmdException

SessionAliveResult CheckAlive(stringTo check the session status.

Parameter: sessionId

Result: • InterfaceName

Name of the based function interface.

• FunctionName

Name of the actual function.

• Status

Result code, informed about the success of the action.

• MessageCode

A code (example “MSG00001”) that informed about the success of the action.

• ErrorMessage

Plain error, especially after exceptions.

Result Codes: cmdSessionNotKnown

cmdNoLoginInfo

cmdDone

cmdIsValid

cmdWfOpened

cmdWfRuns

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

function description

string sessionId, WsRemoteClientTypes remoteClientType)

session ID is needed for all other Web Service communications.

The old session ID. If that ID is still valid it is handled like a reconnect. Otherwise if it is

not valid or “null” CEU will create a new session.

Client type mode:

WsRemoteClientTypes.MobileClient

WsRemoteClientTypes.WebserviceClient

Name of the based function interface.

Result code, informed about the success of the action.

A code (example “MSG00001”) that informed about the success of the action.

Plain error, especially after exceptions.

Not handled Exception, check “ErrorMessage“ for more details.

string sessionId)

ID for this session is now in demand.

Name of the based function interface.

Result code, informed about the success of the action.

A code (example “MSG00001”) that informed about the success of the action.

Plain error, especially after exceptions.

MSG90000001 Given session id is not valid.

Run function “ISession2.Open”.

MSG90000002 Session has no login information.

Run function “ISession2.LogOn”.

Session id valid and last communication time

MSG91000008 Workflow is initialized.

MSG91000009 Workflow is still active with any processes.

Rev. Date:

5.15.2012

Page 64 of

100

remoteClientType)

The old session ID. If that ID is still valid it is handled like a reconnect. Otherwise if it is

ErrorMessage“ for more details.

Session id valid and last communication time is resettled.

Workflow is still active with any processes.

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

void Close(string sessionID) Close the session.

LogOff and WorkFlow.Close will call internally.

Parameter: sessionId

Result:

Result Codes:

SessionLogOnResult LogOn(stringUser log to the system.

Parameter: sessionId

logOnArgs

Result: • InterfaceName

Name of the based function interface.

• FunctionName

Name of the actual function.

• Status

Result code, informed about the success of the action.

• MessageCode

A code (example “MSG00001”) that informed about the success of

• ErrorMessage

Plain error, especially after exceptions.

• UserLang

Country code in the user set in the user management.

Result Codes: cmdSessionNotKnown

cmdDone

cmdOwnerNotValid

cmdUserNameNotValid

cmdUserPasswordNotValid

cmdStationNotValid

cmdNotPossible

cmdConcurrentClientLimitExceeded

cmdException

void LogOff(string sessionID) To logoff the session, without closing.

LogOff and WorkFlow.Close will call internally.

Parameter: sessionId

Result:

Result Codes:

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

LogOff and WorkFlow.Close will call internally.

ID for this session is now in demand.

string sessionId, SessionLogOnArgs logOnArgs)

ID for this session is now in demand.

Log on informations.

Name of the based function interface.

Result code, informed about the success of the action.

A code (example “MSG00001”) that informed about the success of the action.

Plain error, especially after exceptions.

Country code in the user set in the user management.

MSG90000001 Given session id is not valid.

Run function “ISession2.Open”.

MSG91000004 Given owner not found

MSG91000005 Given user name not found

MSG91000006 Password does not match the user

MSG91000007 Given station name not found

MSG91000005 Log on was not possible

MSG91000010 Log on was not possible, because of the license limitation

Not handled Exception, check “ErrorMessage“ for more details.

LogOff and WorkFlow.Close will call internally.

ID for this session is now in demand.

Rev. Date:

5.15.2012

Page 65 of

100

Log on was not possible, because of the license limitation

ErrorMessage“ for more details.

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

7.4.2 IOrder2

WsOrderExistsResult MasterOrder_Exist(To check if an order name sill existing.

Parameter: sessionId

masterOrderName

Result: • InterfaceName

Name of the based function interface.

• FunctionName

Name of the actual function.

• Status

Result code, informed about the success of the action.

• MessageCode

A code (example “MSG00001”) that informed about the success of the action.

• ErrorMessage

Plain error, especially after exceptions.

• ID

Internal id of the found master order.

• Name

Internal name of the found master order.

Result Codes: cmdSessionNotKnown

cmdNoLoginInfo

cmdKnown

cmdNotKnown

cmdContainsToBatch

cmdException

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

MasterOrder_Exist(string sessionID, string masterOrderName)

ID for this session is now in demand.

Name of order to find.

Name of the based function interface.

Result code, informed about the success of the action.

A code (example “MSG00001”) that informed about the success of the action.

Plain error, especially after exceptions.

Internal id of the found master order.

Internal name of the found master order.

MSG90000001 Given session id is not valid.

Run function “ISession2.Open”.

MSG90000002 Session has no login information.

Run function “ISession2.LogOn”.

MSG94000002 Found order.

MSG94000001 Order not found in the system.

MSG94000014 Order found, but is part of a static batch.

Not handled Exception, check “ErrorMessage“ for more details.

Rev. Date:

5.15.2012

Page 66 of

100

masterOrderName)

Order found, but is part of a static batch.

ErrorMessage“ for more details.

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

WsOrderExistsResult MasterOrder_Get(WsOrderExistsResult MasterOrder_GetByName(To get the information’s of a specific order.

Parameter: sessionId

masterOrderId

masterOrderName

Result: • InterfaceName

Name of the based function interface.

• FunctionName

Name of the actual function.

• Status

Result code, informed about the success of the

• MessageCode

A code (example “MSG00001”) that informed about the success of the action.

• ErrorMessage

Plain error, especially after exceptions.

• MasterOrder

Object of master order header information’s.

Result Codes: cmdSessionNotKnown

cmdNoLoginInfo

cmdKnown

cmdNotKnown

cmdContainsToBatch

cmdException

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

MasterOrder_Get(string sessionID, string masterOrderId) MasterOrder_GetByName(string sessionID, string masterOrderName)

of a specific order.

ID for this session is now in demand.

Internal ID of the order.

Name of order to find.

Name of the based function interface.

Result code, informed about the success of the action.

A code (example “MSG00001”) that informed about the success of the action.

Plain error, especially after exceptions.

Object of master order header information’s.

MSG90000001 Given session id is not valid.

Run function “ISession2.Open”.

MSG90000002 Session has no login information.

Run function “ISession2.LogOn”.

MSG94000002 Found order.

MSG94000001 Order not found in the system.

MSG94000014 Order found, but is part of a static batch.

Not handled Exception, check “ErrorMessage“ for more details.

Rev. Date:

5.15.2012

Page 67 of

100

masterOrderName)

Order found, but is part of a static batch.

ErrorMessage“ for more details.

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

WsHuGetMasterOrderIdResult MasterOrder_GetIdByHU(To check for master order id´s they already assigned to a handling unit.

Parameter: sessionId

handlingUnit

Result: • InterfaceName

Name of the based function interface.

• FunctionName

Name of the actual function.

• Status

Result code, informed about the success of the action.

• MessageCode

A code (example “MSG00001”) that informed about the success of the action.

• ErrorMessage

Plain error, especially after exceptions.

• Ids

String-Array of found master order id´s

Result Codes: cmdSessionNotKnown

cmdNoLoginInfo

cmdFound

cmdNotFound

WsHuGetMasterOrderResult MasterOrder_GetByHU(To check for master orders they already assigned to a handling

Parameter: sessionId

handlingUnit

Result: • InterfaceName

Name of the based function interface.

• FunctionName

Name of the actual function.

• Status

Result code, informed about the success of the action.

• MessageCode

A code (example “MSG00001”) that informed about the success of the action.

• ErrorMessage

Plain error, especially after exceptions.

• MasterOrders

Array of found master order header information objects.

Result Codes: cmdSessionNotKnown

cmdNoLoginInfo

cmdFound

cmdNotFound

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

MasterOrder_GetIdByHU(string sessionID, string for master order id´s they already assigned to a handling unit.

ID for this session is now in demand.

HandlingUnit name that should assigned to order.

Name of the based function interface.

Result code, informed about the success of the action.

A code (example “MSG00001”) that informed about the success of the action.

Plain error, especially after exceptions.

Array of found master order id´s

MSG90000001 Given session id is not valid.

Run function “ISession2.Open”.

MSG90000002 Session has no login information.

Run function “ISession2.LogOn”.

MSG94000015 One or more orders found

MSG94000016 No HandlingUnit to order assignment found.

MasterOrder_GetByHU(string sessionID, string handlingUnit)To check for master orders they already assigned to a handling unit.

ID for this session is now in demand.

HandlingUnit name that should assigned to order.

Name of the based function interface.

informed about the success of the action.

A code (example “MSG00001”) that informed about the success of the action.

Plain error, especially after exceptions.

Array of found master order header information objects.

MSG90000001 Given session id is not valid.

Run function “ISession2.Open”.

MSG90000002 Session has no login information.

Run function “ISession2.LogOn”.

MSG94000015 One or more orders found

MSG94000016 No HandlingUnit to order assignment found.

Rev. Date:

5.15.2012

Page 68 of

100

handlingUnit)

No HandlingUnit to order assignment found.

handlingUnit)

No HandlingUnit to order assignment found.

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

WsOrderLinesResult MasterOrderLine_GetByMasterOrder(WsOrderLinesResult MasterOrderLine_GetByMasterOrderName( To get the order line information’s of a specific order.

Parameter: sessionId

masterOrderId

masterOrderName

Result: • InterfaceName

Name of the based function interface.

• FunctionName

Name of the actual function.

• Status

Result code, informed about the success of the action.

• MessageCode

A code (example “MSG00001”) that informed about the success of the action.

• ErrorMessage

Plain error, especially after exceptions.

• Lines

Object´s of found master order lines they related to the given master order information.

Result Codes: cmdSessionNotKnown

cmdNoLoginInfo

cmdNotFound

cmdOrderIdWrong

cmdDone

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

MasterOrderLine_GetByMasterOrder(string sessionId, stringMasterOrderLine_GetByMasterOrderName(string sessionId,

string masterOrderName)To get the order line information’s of a specific order.

ID for this session is now in demand.

Internal ID of the order.

Name of order to find.

Name of the based function interface.

Result code, informed about the success of the action.

A code (example “MSG00001”) that informed about the success of the action.

Plain error, especially after exceptions.

Object´s of found master order lines they related to the given master order information.

MSG90000001 Given session id is not valid.

Run function “ISession2.Open”.

MSG90000002 Session has no login information.

Run function “ISession2.LogOn”.

MSG94000001 Order not found.

MSG94000005 Order id has not a valid GUID format.

Rev. Date:

5.15.2012

Page 69 of

100

string masterOrderId) sessionId, masterOrderName)

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

WsSaveMasterOrderResult MasterOrder_Save( Create or expand a master order and master order lines.

Parameter: sessionId

orderHead

lines

saveActionType

allocationScope

Result: • InterfaceName

Name of the based function interface.

• FunctionName

Name of the actual function.

• Status

Result code, informed about the success of the action.

• MessageCode

A code (example “MSG00001”) that informed about the success of the action.

• ErrorMessage

Plain error, especially after exceptions.

• AllocationResult

Provides information on the success of allocation.

• OrderId

Master order id.

• AllocationResults

Detail information about the al

Result Codes: cmdSessionNotKnown

cmdNoLoginInfo

cmdDifferentDirectionType

cmdNotSaved

cmdDone

cmdException

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

MasterOrder_Save(string sessionId, WsBizMasterOrder orderHead, WsBizMasterOrderLine[] lines, WsSaveActionTypes saveActionType, WsAllocationScopes allocationScope)

and master order lines.

ID for this session is now in demand.

Object of the order header.

Array of the lines (positions).

Save action:

• SaveOnly

Creating / saving only.

• SaveAndValidate

Validate datas befor creating / saving.

• SaveForImmediateProcessing

Save, validate, allocate and p reparing for a direct run

Allocation range:

• Station

Only locations they connected to the actual station will consider.

• Warehouse

All locations they placed in the actual warehouse will consider.

Name of the based function interface.

Result code, informed about the success of the action.

“MSG00001”) that informed about the success of the action.

Plain error, especially after exceptions.

Provides information on the success of allocation.

Detail information about the allocation per master order line.

MSG90000001 Given session id is not valid.

Run function “ISession2.Open”.

MSG90000002 Session has no login information.

Run function “ISession2.LogOn”.

MSG94000003 Order name already exist, update is not possible because of different

direction type at the order header.

MSG94000004 It was not possible to create / save that order.

Not handled Exception, check “ErrorMessage“ for more details.

Rev. Date:

5.15.2012

Page 70 of

100

orderHead,

saveActionType, allocationScope)

to the WorkFlow then.

Only locations they connected to the actual station will consider.

locations they placed in the actual warehouse will consider.

Order name already exist, update is not possible because of different

It was not possible to create / save that order.

ErrorMessage“ for more details.

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

WsRemoveMasterOrderResult MasterOrder_Remove(

WsRemoveMasterOrderResult MasterOrder_RemoveByName(Remove a complete master order or a part of a master order.

Parameter: sessionId

masterOrderId

masterOrderLineId

masterOrderName

Result: • InterfaceName

Name of the based function interface.

• FunctionName

Name of the actual function.

• Status

Result code, informed about the success of the action.

• MessageCode

A code (example “MSG00001”) that informed about the success

• ErrorMessage

Plain error, especially after exceptions.

• RemoveResults

String-Array plain text information if error occurred by an order.

Result Codes: cmdSessionNotKnown

cmdNoLoginInfo

cmdOrderIdWrong

cmdOrderLineIdsWrong

cmdDone

cmdException

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

MasterOrder_Remove(string sessionId, string masterOrderId, params string[] masterOrderLineId)

MasterOrder_RemoveByName(string sessionId, stringpart of a master order.

ID for this session is now in demand.

Internal ID of the order.

If only any lines should remove and not the complete order, array of specific line id´s.

Name of order to find.

Name of the based function interface.

Result code, informed about the success of the action.

A code (example “MSG00001”) that informed about the success of the action.

Plain error, especially after exceptions.

Array plain text information if error occurred by an order.

MSG90000001 Given session id is not valid.

Run function “ISession2.Open”.

MSG90000002 Session has no login information.

Run function “ISession2.LogOn”.

MSG94000005 Order id has not a valid GUID format.

MSG94000006 Any line id has not a valid GUID format.

Not handled Exception, check “ErrorMessage“ for more details.

Rev. Date:

5.15.2012

Page 71 of

100

[] masterOrderLineId) string masterOrderName)

If only any lines should remove and not the complete order, array of specific line id´s.

ErrorMessage“ for more details.

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

WsAllocationResult MasterOrder_Allocate(

Allocate (location assignment) of one or more master orders.

Parameter: sessionId

allocationScope

masterOrderId

Result: • InterfaceName

Name of the based function interface.

• FunctionName

Name of the actual function.

• Status

Result code, informed about the success of the action.

• MessageCode

A code (example “MSG00001”) that informed about the success of the action.

• ErrorMessage

Plain error, especially after exceptions.

• AllocationOrderResult

Provides information on the success of allocation.

• OrderId

Master order id.

• AllocationResults

Detail information about the allocation per master order line.

Result Codes: cmdSessionNotKnown

cmdNoLoginInfo

cmdNotAValidAllocationScope

cmdNotFound

cmdNotOrderIdGiven

cmdDone

cmdException

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

MasterOrder_Allocate(string sessionId, WsAllocationScopes allocationScope, params string[] masterOrderId) Allocate (location assignment) of one or more master orders.

ID for this session is now in demand.

Allocation range:

• Station

Only locations they connected to the actual station will consider.

• Warehouse

All locations they placed in the actual warehouse will consider.

Array of the internal order id´s.

Name of the based function interface.

Result code, informed about the success of the action.

A code (example “MSG00001”) that informed about the success of the action.

especially after exceptions.

Provides information on the success of allocation.

Detail information about the allocation per master order line.

MSG90000001 Given session id is not valid.

Run function “ISession2.Open”.

MSG90000002 Session has no login information.

Run function “ISession2.LogOn”.

MSG94000007 Given allocation scope is not valid.

Order behind not found.

MSG94000005 Array of order id´s is not filled.

Not handled Exception, check “ErrorMessage“ for more details.

Rev. Date:

5.15.2012

Page 72 of

100

allocationScope,

Only locations they connected to the actual station will consider.

All locations they placed in the actual warehouse will consider.

ErrorMessage“ for more details.

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

WsDeAllocationResult MasterOrder_Deallocate( Take back the location assignment of the complete order or a part of a order.

Parameter: sessionId

masterOrderId

masterOrderLineId

Result: • InterfaceName

Name of the based function interface.

• FunctionName

Name of the actual function.

• Status

Result code, informed about the success of the action.

• MessageCode

A code (example “MSG00001”) that

• ErrorMessage

Plain error, especially after exceptions.

• RemoveResults

String-Array plain text information if error occurred by an order.

Result Codes: cmdSessionNotKnown

cmdNoLoginInfo

cmdOrderIdWrong

cmdOrderLineIdsWrong

cmdDone

cmdException

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

MasterOrder_Deallocate(string sessionId, string masterOrderId, params string[] masterOrderLineId) Take back the location assignment of the complete order or a part of a order.

ID for this session is now in demand.

Array of the internal order id´s.

If only any lines should reallocate and not the complete order, array of specific line id´s.

Name of the based function interface.

Result code, informed about the success of the action.

A code (example “MSG00001”) that informed about the success of the action.

Plain error, especially after exceptions.

Array plain text information if error occurred by an order.

MSG90000001 Given session id is not valid.

Run function “ISession2.Open”.

MSG90000002 Session has no login information.

Run function “ISession2.LogOn”.

MSG94000005 Order id has not a valid GUID format.

MSG94000006 Any line id has not a valid GUID format.

Not handled Exception, check “ErrorMessage“ for more details.

Rev. Date:

5.15.2012

Page 73 of

100

complete order, array of specific line id´s.

ErrorMessage“ for more details.

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

WsPMOLOpenResult MasterOrder_PageListOpen(

Create a result list in the memory.

Parameter: sessionId

orderNameContainFilter

locales

directionType

Result: • InterfaceName

Name of the based function interface.

• FunctionName

Name of the actual function.

• Status

Result code, informed about the success of the action.

• MessageCode

A code (example “MSG00001”) that informed about the success

• ErrorMessage

Plain error, especially after exceptions.

• MasterOrderCount

Number of cached recors.

Result Codes: cmdSessionNotKnown

cmdNoLoginInfo

cmdNotAValidDirectionType

cmdNotFound

cmdFound

cmdException

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

MasterOrder_PageListOpen(string sessionId, string orderNameContainFilter, WsOrderLocales locales, params WsDirectionTypes[] directionType)

ID for this session is now in demand.

If not NULL, it will used for a “IN” filtering of the order name.

Range:

• Local

Only orders they allocated and accessible from the actual station.

• LocalAndNotAllocated

Only orders they allocated and accessible from the actual station. And not yet

allocated orders.

• All

Take all orders without considering accessibly.

Array of the preferred order direction type´s.

Name of the based function interface.

Result code, informed about the success of the action.

A code (example “MSG00001”) that informed about the success of the action.

Plain error, especially after exceptions.

MSG90000001 Given session id is not valid.

Run function “ISession2.Open”.

MSG90000002 Session has no login information.

Run function “ISession2.LogOn”.

MSG94000008 One or all given direction types not valid.

MSG94000001 No order found.

MSG94000002 One or more order found.

Not handled Exception, check “ErrorMessage“ for more details.

Rev. Date:

5.15.2012

Page 74 of

100

orderNameContainFilter,

directionType)

accessible from the actual station.

Only orders they allocated and accessible from the actual station. And not yet

One or all given direction types not valid.

ErrorMessage“ for more details.

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

WsPMOLPartResult MasterOrder_PageListPart(

To retrieve a list of elements of the buffered elements.

Parameter: sessionId

startIndex

count

Result: • InterfaceName

Name of the based function interface.

• FunctionName

Name of the actual function.

• Status

Result code, informed about the success of the action.

• MessageCode

A code (example “MSG00001”) that informed about the success of the action.

• ErrorMessage

Plain error, especially after exceptions.

• StartIndex

Beginning point

• OrderCount

Number of cached recors.

• Orders

Array of identified elements

Result Codes: cmdSessionNotKnown

cmdNoLoginInfo

cmdNoBuffer

cmdDone

cmdException

void MasterOrder_PageListClose(To clear the buffer list.

Parameter: sessionId

Result:

Result Codes:

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

MasterOrder_PageListPart(string sessionId, int startIndex, int count) To retrieve a list of elements of the buffered elements.

ID for this session is now in demand.

Index of the first return element to the list.

Number of elements to be given back.

Name of the based function interface.

Result code, informed about the success of the action.

(example “MSG00001”) that informed about the success of the action.

Plain error, especially after exceptions.

MSG90000001 Given session id is not valid.

Run function “ISession2.Open”.

MSG90000002 Session has no login information.

Run function “ISession2.LogOn”.

MSG94000009 No buffer information’s found.

Run function “IOrder2. MasterOrder_PageListOpen

Not handled Exception, check “ErrorMessage“ for more details.

MasterOrder_PageListClose(string sessionId)

ID for this session is now in demand.

Rev. Date:

5.15.2012

Page 75 of

100

MasterOrder_PageListOpen”.

ErrorMessage“ for more details.

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

WsOrderExistsResult Workorder_Exist(To check if an order name sill existing.

Parameter: sessionId

batchOrderName

Result: • InterfaceName

Name of the based function interface.

• FunctionName

Name of the actual function.

• Status

Result code, informed about the success of the action.

• MessageCode

A code (example “MSG00001”) that informed about the success of the

• ErrorMessage

Plain error, especially after exceptions.

• ID

Internal id of the found work order (=batch order).

• Name

Internal name of the found work order (=batch order).

Result Codes: cmdSessionNotKnown

cmdNoLoginInfo

cmdKnown

cmdNotKnown

cmdException

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Workorder_Exist(string sessionID, string batchOrderName)

ID for this session is now in demand.

Name of work order to find.

Name of the based function interface.

Result code, informed about the success of the action.

A code (example “MSG00001”) that informed about the success of the action.

Plain error, especially after exceptions.

Internal id of the found work order (=batch order).

Internal name of the found work order (=batch order).

MSG90000001 Given session id is not valid.

Run function “ISession2.Open”.

MSG90000002 Session has no login information.

Run function “ISession2.LogOn”.

MSG94000011 Found work order.

MSG94000010 Work order not found in the system.

Not handled Exception, check “ErrorMessage“ for more details.

Rev. Date:

5.15.2012

Page 76 of

100

batchOrderName)

ErrorMessage“ for more details.

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

WsBatchGetResult Workorder_Get(WsBatchGetResult Workorder_GetByName(To get the information’s of a specific order.

Parameter: sessionId

masterOrderId

masterOrderName

Result: • InterfaceName

Name of the based function interface.

• FunctionName

Name of the actual function.

• Status

Result code, informed about the success of the action.

• MessageCode

A code (example “MSG00001”) that informed about the success of the action.

• ErrorMessage

Plain error, especially after exceptions.

• BatchOrder

Object of work order (=batch order) head

Result Codes: cmdSessionNotKnown

cmdNoLoginInfo

cmdKnown

cmdNotKnown

cmdException

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Workorder_Get(string sessionID, string batchOrderId) Workorder_GetByName(string sessionID, string batchOrderName)

To get the information’s of a specific order.

ID for this session is now in demand.

Internal ID of the work order.

Name of work order to find.

Name of the based function interface.

Result code, informed about the success of the action.

A code (example “MSG00001”) that informed about the success of the action.

Plain error, especially after exceptions.

Object of work order (=batch order) header information’s.

MSG90000001 Given session id is not valid.

Run function “ISession2.Open”.

MSG90000002 Session has no login information.

Run function “ISession2.LogOn”.

MSG94000011 Found work order.

MSG94000010 Work order not found in the system.

Not handled Exception, check “ErrorMessage“ for more details.

Rev. Date:

5.15.2012

Page 77 of

100

batchOrderName)

ErrorMessage“ for more details.

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

WsAllocationResult Workorder_Allocate( Allocate (location assignment) of one or more work orders

Parameter: sessionId

allocationScope

batchOrderId

Result: • InterfaceName

Name of the based function interface.

• FunctionName

Name of the actual function.

• Status

Result code, informed about the success of the action.

• MessageCode

A code (example “MSG00001”) that informed about the success of the action.

• ErrorMessage

Plain error, especially after exceptions.

• AllocationOrderResult

Provides information on the success of allocation.

• OrderId

Work order id.

• AllocationResults

Detail information about the allocation per master order line.

Result Codes: cmdSessionNotKnown

cmdNoLoginInfo

cmdNotAValidAllocationScope

cmdNotBatchOrderIdGiven

cmdDone

cmdException

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Workorder_Allocate(string sessionId, WsAllocationScopes allocationScope, params string[] batchOrderId) Allocate (location assignment) of one or more work orders (batch orders).

ID for this session is now in demand.

Allocation range:

• Station

Only locations they connected to the actual station will consider.

• Warehouse

All locations they placed in the actual warehouse will consider.

Array of the internal work order id´s.

Name of the based function interface.

the success of the action.

A code (example “MSG00001”) that informed about the success of the action.

Plain error, especially after exceptions.

Provides information on the success of allocation.

Detail information about the allocation per master order line.

MSG90000001 Given session id is not valid.

Run function “ISession2.Open”.

MSG90000002 Session has no login information.

Run function “ISession2.LogOn”.

MSG94000007 Given allocation scope is not valid.

MSG94000012 Array of order id´s is not filled.

Not handled Exception, check “ErrorMessage“ for more details.

Rev. Date:

5.15.2012

Page 78 of

100

Only locations they connected to the actual station will consider.

locations they placed in the actual warehouse will consider.

ErrorMessage“ for more details.

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

WsPrepareBatchResult Batch_PrepareByOrder( WsPrepareBatchResult Batch_PrepareByLines( Quickly preparation of a batch order.

Parameter: sessionId

batchName

masterOrderIds

masterOrderLineIds

Result: • InterfaceName

Name of the based function interface.

• FunctionName

Name of the actual function.

• Status

Result code, informed about the success of the action.

• MessageCode

A code (example “MSG00001”) that informed about the success of the action.

• ErrorMessage

Plain error, especially after exceptions.

• Ids

Created or updated work order id´s (batch id´s)

Result Codes: cmdSessionNotKnown

cmdNoLoginInfo

cmdNoIdsGiven

cmdDone

cmdException

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Batch_PrepareByOrder(string sessionId, string batchName, params string[] masterOrderIds)

Batch_PrepareByLines(string sessionId, string batchName, params string[] masterOrderLineIds)

ID for this session is now in demand.

Name of the target batch.

Array of the internal order id´s.

Array of the internal order line id´s.

Name of the based function interface.

the success of the action.

A code (example “MSG00001”) that informed about the success of the action.

Plain error, especially after exceptions.

Created or updated work order id´s (batch id´s)

MSG90000001 Given session id is not valid.

Run function “ISession2.Open”.

MSG90000002 Session has no login information.

Run function “ISession2.LogOn”.

MSG94000005 Not any id is given in valid GUID format.

Not handled Exception, check “ErrorMessage“ for more details.

Rev. Date:

5.15.2012

Page 79 of

100

[] masterOrderLineIds)

Not any id is given in valid GUID format.

ErrorMessage“ for more details.

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

WsPrepareBatchResult Batch_Update(

Parameter: sessionId

batchOrder

elements

Result: • InterfaceName

Name of the based function interface.

• FunctionName

Name of the actual function.

• Status

Result code, informed about the success of the action.

• MessageCode

A code (example “MSG00001”) that informed about the success of the

• ErrorMessage

Plain error, especially after exceptions.

• Ids

Created or updated work order id´s (batch id´s)

Result Codes: cmdSessionNotKnown

cmdNoLoginInfo

cmdOneElementIdWasntGuid

cmdNoElementsGiven

cmdDone

cmdException

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Batch_Update(string sessionId, WsBizBatchOrder batchOrder, WsBatchElement[] elements)

ID for this session is now in demand.

Object of the batch header information’s.

Array of the elements they added to the batch.

Name of the based function interface.

Result code, informed about the success of the action.

A code (example “MSG00001”) that informed about the success of the action.

Plain error, especially after exceptions.

Created or updated work order id´s (batch id´s)

MSG90000001 Given session id is not valid.

Run function “ISession2.Open”.

MSG90000002 Session has no login information.

Run function “ISession2.LogOn”.

MSG94000005 Any id was not given as valid GUID format.

MSG94000005 No element was given.

Not handled Exception, check “ErrorMessage“ for more details.

Rev. Date:

5.15.2012

Page 80 of

100

Any id was not given as valid GUID format.

ErrorMessage“ for more details.

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

WsPBLOpenResult Batch_PageListOpen( Create a result list in the memory.

Parameter: sessionId

orderNameContainFilter

locales

Result: • InterfaceName

Name of the based function interface.

• FunctionName

Name of the actual function.

• Status

Result code, informed about the success of the action.

• MessageCode

A code (example “MSG00001”) that

• ErrorMessage

Plain error, especially after exceptions.

• BatchCount

Number of cached recors.

Result Codes: cmdSessionNotKnown

cmdNoLoginInfo

cmdNotFound

cmdFound

cmdException

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Batch_PageListOpen(string sessionId, string orderNameContainFilter, WsOrderLocales locales)

ID for this session is now in demand.

If not NULL, it will used for a “IN” filtering of the order name.

Range:

• Local

Only batches they allocated and accessible from the actual station.

• LocalAndNotAllocated

Only batches they allocated and accessible from the actual station. And not yet

allocated orders.

• All

Take all batches without considering accessibly.

Name of the based function interface.

Result code, informed about the success of the action.

A code (example “MSG00001”) that informed about the success of the action.

Plain error, especially after exceptions.

MSG90000001 Given session id is not valid.

Run function “ISession2.Open”.

MSG90000002 Session has no login information.

Run function “ISession2.LogOn”.

MSG94000011 No batch found.

MSG94000010 One or more batch found.

Not handled Exception, check “ErrorMessage“ for

Rev. Date:

5.15.2012

Page 81 of

100

Only batches they allocated and accessible from the actual station.

Only batches they allocated and accessible from the actual station. And not yet

ErrorMessage“ for more details.

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

WsPBLPartResult Batch_PageListPart(To retrieve a list of elements of the buffered elements.

Parameter: sessionId

startIndex

count

Result: • InterfaceName

Name of the based function interface.

• FunctionName

Name of the actual function.

• Status

Result code, informed about the success of the action.

• MessageCode

A code (example “MSG00001”) that informed about the success of the action.

• ErrorMessage

Plain error, especially after exceptions.

• StartIndex

Beginning point

• BatchCount

Number of cached recors.

• Batches

Array of identified elements

Result Codes: cmdSessionNotKnown

cmdNoLoginInfo

cmdNoBuffer

cmdDone

cmdException

void Batch_PageListClose(stringTo clear the buffer list.

Parameter: sessionId

Result:

Result Codes:

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Batch_PageListPart(string sessionId, int startIndex, int count) To retrieve a list of elements of the buffered elements.

ID for this session is now in demand.

Index of the first return element to the list.

Number of elements to be given back.

Name of the based function interface.

Result code, informed about the success of the action.

(example “MSG00001”) that informed about the success of the action.

Plain error, especially after exceptions.

MSG90000001 Given session id is not valid.

Run function “ISession2.Open”.

MSG90000002 Session has no login information.

Run function “ISession2.LogOn”.

MSG94000009 No buffer information’s found.

Run function “IOrder2.Batch_PageListOpen

Not handled Exception, check “ErrorMessage“ for more details.

string sessionId)

ID for this session is now in demand.

Rev. Date:

5.15.2012

Page 82 of

100

Batch_PageListOpen”.

ErrorMessage“ for more details.

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

7.4.3 IMaterial2

WsMaterialExistsResult Material_Exist(To check if a material name sill existing.

Parameter: sessionId

materialName

Result: • InterfaceName

Name of the based function interface.

• FunctionName

Name of the actual function.

• Status

Result code, informed about the success of the action.

• MessageCode

A code (example “MSG00001”) that informed about the success of the

• ErrorMessage

Plain error, especially after exceptions.

• MaterialId

Internal id of the found material.

Result Codes: cmdSessionNotKnown

cmdNoLoginInfo

cmdKnown

cmdNotKnown

cmdException

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Material_Exist(string sessionID, string materialName)

ID for this session is now in demand.

Name of order to find.

Name of the based function interface.

Result code, informed about the success of the action.

A code (example “MSG00001”) that informed about the success of the action.

Plain error, especially after exceptions.

MSG90000001 Given session id is not valid.

Run function “ISession2.Open”.

MSG90000002 Session has no login information.

Run function “ISession2.LogOn”.

MSG92000002 Material base found.

MSG92000001 Material base not found.

Not handled Exception, check “ErrorMessage“ for more details.

Rev. Date:

5.15.2012

Page 83 of

100

ErrorMessage“ for more details.

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

WsMaterialBaseGetResult Material_GetBase(WsMaterialBaseGetResult Material_GetBaseByName(WsMaterialBaseGetResult Material_GetBaseByAlias(To get the information’s of a specific material

Parameter: sessionId

materialId

materialName

Result: • InterfaceName

Name of the based function interface.

• FunctionName

Name of the actual function.

• Status

Result code, informed about the success of the action.

• MessageCode

A code (example “MSG00001”) that informed about the success of the action.

• ErrorMessage

Plain error, especially after exceptions.

• MaterialBase

Object of material base information’s.

Result Codes: cmdSessionNotKnown

cmdNoLoginInfo

cmdKnown

cmdNotKnown

cmdException

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Material_GetBase(string sessionID, string materialId) Material_GetBaseByName(string sessionID, string materialName)Material_GetBaseByAlias(string sessionID, string materialName)

material.

ID for this session is now in demand.

Internal ID of the material.

Name of material to find.

Name of the based function interface.

Result code, informed about the success of the action.

A code (example “MSG00001”) that informed about the success of the action.

Plain error, especially after exceptions.

information’s.

MSG90000001 Given session id is not valid.

Run function “ISession2.Open”.

MSG90000002 Session has no login information.

Run function “ISession2.LogOn”.

MSG92000002 Material base found.

MSG92000001 Material base not found.

Not handled Exception, check “ErrorMessage“ for more details.

Rev. Date:

5.15.2012

Page 84 of

100

materialName)

materialName)

ErrorMessage“ for more details.

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

WsStorageRulesGetForMaterialResult To get the information’s of a specific material

Parameter: sessionId

materialId

getAlsoNotLinked

Result: • InterfaceName

Name of the based function interface.

• FunctionName

Name of the actual function.

• Status

Result code, informed about the success of the action.

• MessageCode

A code (example “MSG00001”) that informed about the success of t

• ErrorMessage

Plain error, especially after exceptions.

• StorageRuleViews

Object array of storage rule information’s.

• MaterialstorageruleId

Internal id of the storage rule data line

• BinName

Bin name

• Width

Width of bin

• Depth

depth of bin

• Height

height of bin

• MaterialStorageRule

Information’s of the storage rule, between material and bin.

Result Codes: cmdSessionNotKnown

cmdNoLoginInfo

cmdKnown

cmdNotKnown

cmdException

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

WsStorageRulesGetForMaterialResult StorageRules_GetForMaterial(string sessionID, string materialId, bool getAlso

material.

ID for this session is now in demand.

Internal ID of the material.

FALSE, to receive only already linked bin´s.

TRUE, to receive also not yet linked bin´s.

Name of the based function interface.

Result code, informed about the success of the action.

A code (example “MSG00001”) that informed about the success of the action.

Plain error, especially after exceptions.

information’s.

Internal id of the storage rule data line

Information’s of the storage rule, between material and bin.

MSG90000001 Given session id is not valid.

Run function “ISession2.Open”.

MSG90000002 Session has no login information.

Run function “ISession2.LogOn”.

MSG92000004 Material known.

MSG92000003 Material not known.

Not handled Exception, check “ErrorMessage“ for more details.

Rev. Date:

5.15.2012

Page 85 of

100

sessionID, materialId,

getAlsoNotLinked)

ErrorMessage“ for more details.

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

WsMaterialPropertyGetResult MaterialProperty_Get(WsMaterialPropertyGetResult MaterialProperty_GetByName(To get the information’s of a specific material

Parameter: sessionId

propertyId

propertyName

Result: • InterfaceName

Name of the based function interface.

• FunctionName

Name of the actual function.

• Status

Result code, informed about the success of the action.

• MessageCode

A code (example “MSG00001”) that informed about the success of the action.

• ErrorMessage

Plain error, especially after exceptions.

• MaterialProperty

Material property information’s.

Result Codes: cmdSessionNotKnown

cmdNoLoginInfo

cmdKnown

cmdNotKnown

cmdException

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

MaterialProperty_Get(string sessionID, string propertyId)MaterialProperty_GetByName(string sessionID, string

material property.

ID for this session is now in demand.

Internal ID of the material property.

Name of material property to find.

Name of the based function interface.

the success of the action.

A code (example “MSG00001”) that informed about the success of the action.

Plain error, especially after exceptions.

MSG90000001 Given session id is not valid.

Run function “ISession2.Open”.

MSG90000002 Session has no login information.

Run function “ISession2.LogOn”.

MSG92000005 Material property found.

MSG92000006 Material property not found.

Not handled Exception, check “ErrorMessage“ for more details.

Rev. Date:

5.15.2012

Page 86 of

100

propertyId) string propertyName)

ErrorMessage“ for more details.

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

7.4.4 ILocation2

WsLocationExistResult Location_ExistByName(To check if a location name existing.

Parameter: sessionId

locationName

Result: • InterfaceName

Name of the based function interface.

• FunctionName

Name of the actual function.

• Status

Result code, informed about the success of the action.

• MessageCode

A code (example “MSG00001”) that informed about the success of the action.

• ErrorMessage

Plain error, especially after exceptions.

• LocationID

Internal id of the found location.

• LocationName

Original location name

Result Codes: cmdSessionNotKnown

cmdNoLoginInfo

cmdKnown

cmdNotKnown

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Location_ExistByName(string sessionID, string locationName)

ID for this session is now in demand.

Location name to find

Name of the based function interface.

Result code, informed about the success of the action.

code (example “MSG00001”) that informed about the success of the action.

Plain error, especially after exceptions.

MSG90000001 Given session id is not valid.

Run function “ISession2.Open”.

MSG90000002 Session has no login information.

Run function “ISession2.LogOn”.

MSG93000002 Location found.

MSG93000001 Location not found.

Rev. Date:

5.15.2012

Page 87 of

100

locationName)

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

WsLocationViewGetResult Location_GetViewByName(To check if a location name existing.

Parameter: sessionId

locationName

Result: • InterfaceName

Name of the based function interface.

• FunctionName

Name of the actual function.

• Status

Result code, informed about the success of the action.

• MessageCode

A code (example “MSG00001”) that informed about the success of the action.

• ErrorMessage

Plain error, especially after exceptions.

• LocationView

Object with the location and related location content and location content break down information´s

Result Codes: cmdSessionNotKnown

cmdNoLoginInfo

cmdKnown

cmdNotKnown

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Location_GetViewByName(string sessionID, string locationName)

ID for this session is now in demand.

Location name to find

the based function interface.

Result code, informed about the success of the action.

A code (example “MSG00001”) that informed about the success of the action.

especially after exceptions.

Object with the location and related location content and location content break down information´s

MSG90000001 Given session id is not valid.

Run function “ISession2.Open”.

MSG90000002 Session has no login information.

Run function “ISession2.LogOn”.

MSG93000002 Location found.

MSG93000001 Location not found.

Rev. Date:

5.15.2012

Page 88 of

100

locationName)

Object with the location and related location content and location content break down information´s

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

WsLocationQtyCorResult Location_QtyCorrection( To check if a location name existing.

Parameter: sessionId

locationID

materialID

quantity

attributes

Result: • InterfaceName

Name of the based function interface.

• FunctionName

Name of the actual function.

• Status

Result code, informed about the success of the action.

• MessageCode

A code (example “MSG00001”) that informed about the success of the action.

• ErrorMessage

Plain error, especially after exceptions.

Result Codes: cmdSessionNotKnown

cmdNoLoginInfo

cmdQtyNotValid

cmdLocNotFound

cmdMaterialPropertyMissed

cmd[Lot]IsNotDefined

cmd[Lot]IsNotAllowed

cmdMoreThanOneBreakFound

cmdChanged

cmdCreated

cmdNotDone

cmdException

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Location_QtyCorrection(string sessionID, string locationID, string materialID, double quantity, WsMaterialAttributeParameter

ID for this session is now in demand.

Internal id of location that has to modify

Internal id of material that is located at the location id that has to modify

New quantity

Additional attributes (LOT, SERIALNUMBER, …)

Name of the based function interface.

Result code, informed about the success of the action.

A code (example “MSG00001”) that informed about the success of the action.

especially after exceptions.

MSG90000001 Given session id is not valid.

Run function “ISession2.Open”.

MSG90000002 Session has no login information.

Run function “ISession2.LogOn”.

MSG93000003 Quantity value is not valid.

MSG93000001 Location not found.

MSG93000004 Material not assigned to a material property

MSG93000005 Attribute is missed.

MSG93000006 Attribute is defined but not needed.

MSG93000007 More than one break down found.

MSG93000010 Location content changed

MSG93000009 Location content created

MSG93000008 Action was not possible.

Not handled Exception, check “ErrorMessage“ for more details.

Rev. Date:

5.15.2012

Page 89 of

100

attributes)

Internal id of material that is located at the location id that has to modify

Material not assigned to a material property

ErrorMessage“ for more details.

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

WsLocationQtyCorResult Location_DirectPutPick( To check if a location name existing.

Parameter: sessionId

locationID

materialID

isPick

quantity

attributes

Result: • InterfaceName

Name of the based function interface.

• FunctionName

Name of the actual function.

• Status

Result code, informed about the success of

• MessageCode

A code (example “MSG00001”) that informed about the success of the action.

• ErrorMessage

Plain error, especially after exceptions.

Result Codes: cmdSessionNotKnown

cmdNoLoginInfo

cmdQtyNotValid

cmdLocNotFound

cmdMaterialPropertyMissed

cmd[Lot]IsNotDefined

cmd[Lot]IsNotAllowed

cmdMoreThanOneBreakFound

cmdChanged

cmdCreated

cmdNotDone

cmdException

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

Location_DirectPutPick(string sessionID, string locationID, string materialID, bool isPick, double quantity, WsMaterialAttributeParameter

ID for this session is now in demand.

Internal id of location that has to modify

Internal id of material that is located at the location id that has to modify

TRUE = is direct pick

FALSE = is direct put

New quantity

Additional attributes (LOT, SERIALNUMBER, …)

Name of the based function interface.

Result code, informed about the success of the action.

A code (example “MSG00001”) that informed about the success of the action.

Plain error, especially after exceptions.

MSG90000001 Given session id is not valid.

Run function “ISession2.Open”.

MSG90000002 Session has no login information.

Run function “ISession2.LogOn”.

MSG93000003 Quantity value is not valid.

MSG93000001 Location not found.

MSG93000004 Material not assigned to a material property

MSG93000005 Attribute is missed.

MSG93000006 Attribute is defined but not needed.

MSG93000007 More than one break down found.

MSG93000010 Location content changed

MSG93000009 Location content created

MSG93000008 Action was not possible.

Not handled Exception, check “ErrorMessage“ for more details.

Rev. Date:

5.15.2012

Page 90 of

100

attributes)

Internal id of material that is located at the location id that has to modify

Material not assigned to a material property

ErrorMessage“ for more details.

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

7.4.5 IOrderProcessor2

WsBaseResult Open(string sessionID)

WsBaseResult OpenAsync(stringTo start a WorkFlow on that session. Starting means initialisation of the connected units and periphery.

Parameter: sessionId

Result: • InterfaceName

Name of the based function interface.

• FunctionName

Name of the actual function.

• Status

Result code, informed about the success of the action.

• MessageCode

A code (example “MSG00001”) that informed about the success of the action.

• ErrorMessage

Plain error, especially after exceptions.

Result Codes: cmdSessionNotKnown

cmdNoLoginInfo

cmdDone

void Close(string sessionID) To close the session based WorkFlow.

If at that time any processes still running, the will stopped automatically.

Parameter: sessionId

Result:

Result Codes:

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

sessionID)

string sessionID) To start a WorkFlow on that session. Starting means initialisation of the connected units and periphery.

ID for this session is now in demand.

of the based function interface.

Result code, informed about the success of the action.

A code (example “MSG00001”) that informed about the success of the action.

especially after exceptions.

MSG90000001 Given session id is not valid.

Run function “ISession2.Open”.

MSG90000002 Session has no login information.

Run function “ISession2.LogOn”.

If at that time any processes still running, the will stopped automatically.

ID for this session is now in demand.

Rev. Date:

5.15.2012

Page 91 of

100

To start a WorkFlow on that session. Starting means initialisation of the connected units and periphery.

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

WsBaseResult QueueMasterOrder( WsBaseResult QueueBatch(stringBefore starting the WorkFlow that function has to called to inform the WorkFlow witch orders or batch has to start.

QueueMasterOrder can called several times to start more than one master order. QueueBatch is only allowed one time. A

combination of QueueMasterOrder and QueueBatch is also not allowed.

Parameter: sessionId

masterOrderId

batchID

HUNam

HURank

Result: • InterfaceName

Name of the based function interface.

• FunctionName

Name of the actual function.

• Status

Result code, informed about the success of the action.

• MessageCode

A code (example “MSG00001”) that informed about the success of the action.

• ErrorMessage

Plain error, especially after exceptions.

Result Codes: cmdSessionNotKnown

cmdNoLoginInfo

cmdDone

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

QueueMasterOrder(string sessionID, string masterOrderID, string HUNam, int? HURank)

string sessionID, string batchID) Before starting the WorkFlow that function has to called to inform the WorkFlow witch orders or batch has to start.

several times to start more than one master order. QueueBatch is only allowed one time. A

combination of QueueMasterOrder and QueueBatch is also not allowed.

ID for this session is now in demand.

Internal GUID master order id

Internal GUID batch oder id (=work order id)

Handling unit that should assign to the master order

Handling rank of the master order

Name of the based function interface.

Result code, informed about the success of the action.

A code (example “MSG00001”) that informed about the success of the action.

Plain error, especially after exceptions.

MSG90000001 Given session id is not valid.

Run function “ISession2.Open”.

MSG90000002 Session has no login information.

Run function “ISession2.LogOn”.

Rev. Date:

5.15.2012

Page 92 of

100

Before starting the WorkFlow that function has to called to inform the WorkFlow witch orders or batch has to start.

several times to start more than one master order. QueueBatch is only allowed one time. A

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

WsBaseResult Start(string sessionID)To start / process now the before "QUEUE” master order or batch.

Parameter: sessionId

Result: • InterfaceName

Name of the based function interface.

• FunctionName

Name of the actual function.

• Status

Result code, informed about the success of the

• MessageCode

A code (example “MSG00001”) that informed about the success of the action.

• ErrorMessage

Plain error, especially after exceptions.

Result Codes: cmdSessionNotKnown

cmdNoLoginInfo

cmdDone

void Stop(string sessionID) To stop processing the WorkFlow. The buffered orders or batch will be release.

Difference to Close, the WorkFlow is still active and ready to start again after transfer orders or batch by using Queue...

Parameter: sessionId

Result:

Result Codes:

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

sessionID) "QUEUE” master order or batch.

ID for this session is now in demand.

Name of the based function interface.

Result code, informed about the success of the action.

A code (example “MSG00001”) that informed about the success of the action.

Plain error, especially after exceptions.

MSG90000001 Given session id is not valid.

Run function “ISession2.Open”.

MSG90000002 Session has no login information.

Run function “ISession2.LogOn”.

To stop processing the WorkFlow. The buffered orders or batch will be release.

the WorkFlow is still active and ready to start again after transfer orders or batch by using Queue...

ID for this session is now in demand.

Rev. Date:

5.15.2012

Page 93 of

100

the WorkFlow is still active and ready to start again after transfer orders or batch by using Queue...

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

WsWfStatus GetWfStatus(string To get the actual status of the WorkFlow.

Parameter: sessionId

Result: • InterfaceName

Name of the based function interface.

• FunctionName

Name of the actual function.

• Status

Result code, informed about the success of the

• MessageCode

A code (example “MSG00001”) that informed about the success of the action.

• ErrorMessage

Plain error, especially after exceptions.

• WfStatusId

A GUID id to have the possibility to check if the server hat a status change.

Each time when WorkFlow has a status change, CEU creates a snapshot of the information´s an create a new WfStatusID.

• WfStatusType

Last status type (mode).

• AreaSelection

WorkFlow need a “area selection” from the user / client.

• NewProcessInitialized

Processes starting now (for example after area selection). Please wait for next step.

Client can request the process list to show the process status, but cannot change the active process or area in the mean

time.

• ActiveProcessesChanged

A new process set as active process, for th

Depending to the CEU settings the client can call SetActiveProcess for a other process.

• Finished / Stopped

All processes stopped or finished now.

• ActiveProcessID

The internal id of the currently active process.

Result Codes: cmdSessionNotKnown

cmdNoLoginInfo

cmdDone

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

sessionID) actual status of the WorkFlow.

ID for this session is now in demand.

Name of the based function interface.

Result code, informed about the success of the action.

A code (example “MSG00001”) that informed about the success of the action.

Plain error, especially after exceptions.

A GUID id to have the possibility to check if the server hat a status change.

rkFlow has a status change, CEU creates a snapshot of the information´s an create a new WfStatusID.

WorkFlow need a “area selection” from the user / client.

(for example after area selection). Please wait for next step.

Client can request the process list to show the process status, but cannot change the active process or area in the mean

A new process set as active process, for that process the confirmation is allowed.

Depending to the CEU settings the client can call SetActiveProcess for a other process.

All processes stopped or finished now.

The internal id of the currently active process.

MSG90000001 Given session id is not valid.

Run function “ISession2.Open”.

MSG90000002 Session has no login information.

Run function “ISession2.LogOn”.

Rev. Date:

5.15.2012

Page 94 of

100

rkFlow has a status change, CEU creates a snapshot of the information´s an create a new WfStatusID.

Client can request the process list to show the process status, but cannot change the active process or area in the mean

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

WsWfAreasResult GetWfAreas(stringIf the WorkFlow status switched to “AreaSelection”,

Parameter: sessionId

Result: • InterfaceName

Name of the based function interface.

• FunctionName

Name of the actual function.

• Status

Result code, informed about the success of the action.

• MessageCode

A code (example “MSG00001”) that informed about the success of the action.

• ErrorMessage

Plain error, especially after exceptions.

• Areas

Array of area objects.

Result Codes: cmdSessionNotKnown

cmdNoLoginInfo

cmdNoAreas

cmdDone

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

string sessionID) If the WorkFlow status switched to “AreaSelection”, can this function be used to receive a list of possible

ID for this session is now in demand.

Name of the based function interface.

Result code, informed about the success of the action.

A code (example “MSG00001”) that informed about the success of the action.

Plain error, especially after exceptions.

MSG90000001 Given session id is not valid.

Run function “ISession2.Open”.

MSG90000002 Session has no login information.

Run function “ISession2.LogOn”.

MSG96000001

Rev. Date:

5.15.2012

Page 95 of

100

possible area´s get.

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

WsWfProcStatus GetProcState(stringTo receive the status / situation of one specific process.

Parameter: sessionId

processID

Result: • InterfaceName

Name of the based function interface.

• FunctionName

Name of the actual function.

• Status

Result code, informed about the success of the action.

• MessageCode

A code (example “MSG00001”) that informed about the success of the action.

• ErrorMessage

Plain error, especially after exceptions.

• ProcStatusId

A GUID id to have the possibility to check if the server had a status change.

Each time when WorkFlow has a status change on that process, CEU creates a snapshot of the information´s an create a new

ProcStatusId.

• ProcessId

Internal id to specify that process

• ProcessName

Internal name

• CurrentState

Detailed status (is driving, is starting or waiting of confirmation...)

• CurrentStatus

Short status is in progress, has an error or wait of confirmation.

• IsActiveProcess

Boolean.

• ReqInput

Objects about the actual requestet input from the user / client.

Result Codes: cmdSessionNotKnown

cmdNoLoginInfo

cmdProcessNotKnown

cmdDone

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

string sessionID, string processID) To receive the status / situation of one specific process.

ID for this session is now in demand.

ID of the specific process

Name of the based function interface.

Result code, informed about the success of the action.

A code (example “MSG00001”) that informed about the success of the action.

especially after exceptions.

A GUID id to have the possibility to check if the server had a status change.

Each time when WorkFlow has a status change on that process, CEU creates a snapshot of the information´s an create a new

Detailed status (is driving, is starting or waiting of confirmation...)

Short status is in progress, has an error or wait of confirmation.

Objects about the actual requestet input from the user / client.

MSG90000001 Given session id is not valid.

Run function “ISession2.Open”.

MSG90000002 Session has no login information.

Run function “ISession2.LogOn”.

MSG96000002 Specific process not found.

Rev. Date:

5.15.2012

Page 96 of

100

Each time when WorkFlow has a status change on that process, CEU creates a snapshot of the information´s an create a new

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

WsWfAllProcStatus GetAllProcStates(To receive the status / situation of all process.

Parameter: sessionId

Result: • InterfaceName

Name of the based function interface.

• FunctionName

Name of the actual function.

• Status

Result code, informed about the success of the action.

• MessageCode

A code (example “MSG00001”) that informed about the success of

• ErrorMessage

Plain error, especially after exceptions.

• Processes

Array of processes (please check descri

• ActiveProcessID

The internal id of the currently active process.

Result Codes: cmdSessionNotKnown

cmdNoLoginInfo

cmdProcessNotKnown

cmdDone

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

GetAllProcStates(string sessionID) To receive the status / situation of all process.

ID for this session is now in demand.

Name of the based function interface.

Result code, informed about the success of the action.

A code (example “MSG00001”) that informed about the success of the action.

Plain error, especially after exceptions.

Array of processes (please check description of function “GetProcState”)

The internal id of the currently active process.

MSG90000001 Given session id is not valid.

Run function “ISession2.Open”.

MSG90000002 Session has no login information.

Run function “ISession2.LogOn”.

MSG96000002 Specific process not found.

Rev. Date:

5.15.2012

Page 97 of

100

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

WsBaseResult SetActiveProcess(If the WorkFlow status switched to “AreaSelection”,

Parameter: sessionId

processID

Result: • InterfaceName

Name of the based function interface.

• FunctionName

Name of the actual function.

• Status

Result code, informed about the success of the action.

• MessageCode

A code (example “MSG00001”) that informed

• ErrorMessage

Plain error, especially after exceptions.

Result Codes: cmdSessionNotKnown

cmdNoLoginInfo

cmdProcessNotKnown

cmdDone

WsBaseResult SetActiveArea(stringIf the WorkFlow status switched to “AreaSelection”,

Parameter: sessionId

areaName

Result: • InterfaceName

Name of the based function interface.

• FunctionName

Name of the actual function.

• Status

Result code, informed about the success of the action.

• MessageCode

A code (example “MSG00001”) that informed about the success of the action.

• ErrorMessage

Plain error, especially after exceptions.

Result Codes: cmdSessionNotKnown

cmdNoLoginInfo

cmdDone

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

SetActiveProcess(string sessionID, string processID) If the WorkFlow status switched to “AreaSelection”, can this function be used to receive a list of possible

ID for this session is now in demand.

Internal id of the process that should be set

Name of the based function interface.

Result code, informed about the success of the action.

A code (example “MSG00001”) that informed about the success of the action.

Plain error, especially after exceptions.

MSG90000001 Given session id is not valid.

Run function “ISession2.Open”.

MSG90000002 Session has no login information.

Run function “ISession2.LogOn”.

MSG96000002 Process not found.

string sessionID, string areaName) If the WorkFlow status switched to “AreaSelection”, can this function be used to receive a list of possible

ID for this session is now in demand.

Name of the area that should be set

Name of the based function interface.

Result code, informed about the success of the action.

A code (example “MSG00001”) that informed about the success of the action.

Plain error, especially after exceptions.

MSG90000001 Given session id is not valid.

Run function “ISession2.Open”.

MSG90000002 Session has no login information.

Run function “ISession2.LogOn”.

Rev. Date:

5.15.2012

Page 98 of

100

possible area´s get.

possible area´s get.

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

WsWfRestartResult RestartProcess(To restart the actual task.

Parameter: sessionId

processID

Result: • InterfaceName

Name of the based function interface.

• FunctionName

Name of the actual function.

• Status

Result code, informed about the success of the action.

• MessageCode

A code (example “MSG00001”) that informed about the success of the action.

• ErrorMessage

Plain error, especially after exceptions.

Result Codes: cmdSessionNotKnown

cmdNoLoginInfo

cmdProcessNotKnown

cmdDone

WsWfSkipTaskResult SkipTask(To skip the actual task. The task will moved to the end of the internal task list.

Parameter: sessionId

processID

Result: • InterfaceName

Name of the based function interface.

• FunctionName

Name of the actual function.

• Status

Result code, informed about the success of the action.

• MessageCode

A code (example “MSG00001”) that informed about the success of the action.

• ErrorMessage

Plain error, especially after exceptions.

Result Codes: cmdSessionNotKnown

cmdNoLoginInfo

cmdProcessNotKnown

cmdDone

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

RestartProcess(string sessionID, string processID)

ID for this session is now in demand.

Internal id of the process

Name of the based function interface.

success of the action.

A code (example “MSG00001”) that informed about the success of the action.

Plain error, especially after exceptions.

MSG90000001 Given session id is not valid.

Run function “ISession2.Open”.

MSG90000002 Session has no login information.

Run function “ISession2.LogOn”.

MSG96000002 Process not found.

SkipTask(string sessionID, string processID) To skip the actual task. The task will moved to the end of the internal task list.

ID for this session is now in demand.

Internal id of the process

Name of the based function interface.

Result code, informed about the success of the action.

A code (example “MSG00001”) that informed about the success of the action.

Plain error, especially after exceptions.

MSG90000001 Given session id is not valid.

Run function “ISession2.Open”.

MSG90000002 Session has no login information.

Run function “ISession2.LogOn”.

MSG96000002 Process not found.

Rev. Date:

5.15.2012

Page 99 of

100

Title:

Power Pick Global - Cross Enterprise Unit

KARDEX Software GmbH., 2012

WsWfCancelTaskResult CancelTask(To cancel the actual task.

Parameter: sessionId

processID

Result: • InterfaceName

Name of the based function interface.

• FunctionName

Name of the actual function.

• Status

Result code, informed about the success of the action.

• MessageCode

A code (example “MSG00001”) that informed about the success of the action.

• ErrorMessage

Plain error, especially after exceptions.

Result Codes: cmdSessionNotKnown

cmdNoLoginInfo

cmdProcessNotKnown

cmdDone

WsWfSetInputResult SetInput(stringTo confirm a requested input.

Parameter: sessionId

processed

input

Result: • InterfaceName

Name of the based function interface.

• FunctionName

Name of the actual function.

• Status

Result code, informed about the success of the action.

• MessageCode

A code (example “MSG00001”) that informed about the success of

• ErrorMessage

Plain error, especially after exceptions.

Result Codes: cmdSessionNotKnown

cmdNoLoginInfo

cmdProcessNotKnown

cmdFieldTypeNotKnown

cmdFieldReqNoInput

cmdDone

Cross Enterprise Unit

Rev:

191

Rev. Date:

5.15.2012

2012

CancelTask(string sessionID, string processID)

ID for this session is now in demand.

Internal id of the process that should be set

function interface.

Result code, informed about the success of the action.

A code (example “MSG00001”) that informed about the success of the action.

exceptions.

MSG90000001 Given session id is not valid.

Run function “ISession2.Open”.

MSG90000002 Session has no login information.

Run function “ISession2.LogOn”.

MSG96000002 Process not found.

string sessionID, string processID, WsWfReqFieldInput

ID for this session is now in demand.

Internal id of the process

Input informations

Name of the based function interface.

Result code, informed about the success of the action.

A code (example “MSG00001”) that informed about the success of the action.

Plain error, especially after exceptions.

MSG90000001 Given session id is not valid.

Run function “ISession2.Open”.

MSG90000002 Session has no login information.

Run function “ISession2.LogOn”.

MSG96000002 Process not found.

MSG96000004 Field type is not known.

MSG96000005 Field request no input.

Rev. Date:

5.15.2012

Page 100 of

100

WsWfReqFieldInput input)