Power Pick Global - Mid-Americalinktivity.mid-america.com/mabsinternalweb/files/GP.Cross... ·...
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)