Integration Guide
Integration Guide
Foundation: Integration
Guide
Release 9.0
March 2010
Copyright Notice
Copyright © 1999 - 2010
Sterling Commerce, Inc.
ALL RIGHTS RESERVED
Ant-Contrib Software
The Sterling Commerce Software is distributed with or on the same storage media as the Anti-Contrib
software (Copyright © 2001-2003 Ant-Contrib project. All rights reserved.) (the "Ant-Contrib Software").
The Ant-Contrib Software is free software which is distributed under the terms of the following license:
The Apache Software License, Version 1.1
Copyright © 2001-2003 Ant-Contrib project. All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided
that the following conditions are met:
1.Redistributions of source code must retain the above copyright notice, this list of conditions and the
following disclaimer.
2.Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the
following disclaimer in the documentation and/or other materials provided with the distribution.
3. The end-user documentation included with the redistribution, if any, must include the following
acknowledgement:
"This product includes software developed by the Ant-Contrib project
(http://sourceforge.net/projects/ant-contrib)."
Alternately, this acknowledgement may appear in the software itself, if and wherever such third-party
acknowledgements normally appear.
4. The name Ant-Contrib must not be used to endorse or promote products derived from this software
without prior written permission. For written permission, please contact
[email protected].
5. Products derived from this software may not be called "Ant-Contrib" nor may "Ant-Contrib" appear in
their names without prior written permission of the Ant-Contrib project.
THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING,
BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE ANT-CONTRIB PROJECT OR ITS
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
The preceding license only applies to the Ant-Contrib Software and does not apply to the Sterling
Commerce Software or to any other Third Party Software.
ANTISAMY SOFTWARE
The Sterling Commerce Software is distributed with or on the same storage media as the AntiSamy
software (Copyright © 1998 Regents of the University of California. All rights reserved.) (the "AntiSamy
Software"). The AntiSamy Software is free software which is distributed under the terms of the following
license:
Copyright © 1998, Regents of the University of California
All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided
that the following conditions are met:
Redistributions of source code must retain the above copyright notice, this list of conditions and the
following disclaimer.
Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the
following disclaimer in the documentation and/or other materials provided with the distribution.
Neither the name of the <ORGANIZATION> nor the names of its contributors may be used to endorse or
promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY
WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
COOLBUTTONS SOFTWARE
The Sterling Commerce Software is also distributed with or on the same storage media as Coolbuttons.js
("Coolbuttons Software"), which is subject to the following license:
This Button Script was designed by Erik Arvidsson for WebFX. For more info and examples see:
http://webfx.eae.net or send email to [email protected]. Feel free to use this code as long as this disclaimer
is intact.
The preceding license only applies to the Coolbuttons Software and does not apply to the Sterling
Commerce Software, or any other Third Party Software.
DOM4J Software
The Sterling Commerce Software is distributed with or on the same storage media as the Dom4h
Software which is free software distributed under the terms of the following license:
Redistribution and use of this software and associated documentation ("Software"), with or without
modification, are permitted provided that the following conditions are met:
1.Redistributions of source code must retain copyright statements and notices. Redistributions must also
contain a copy of this document.
2.Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the
following disclaimer in the documentation and/or other materials provided with the distribution.
3.The name "DOM4J" must not be used to endorse or promote products derived from this Software
without prior written permission of MetaStuff, Ltd. For written permission, please contact
[email protected].
4.Products derived from this Software may not be called "DOM4J" nor may "DOM4J" appear in their
names without prior written permission of MetaStuff, Ltd. DOM4J is a registered trademark of MetaStuff,
Ltd.
5.Due credit should be given to the DOM4J Project - http://www.dom4j.org
THIS SOFTWARE IS PROVIDED BY METASTUFF, LTD. AND CONTRIBUTORS ``AS IS'' AND ANY
EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
SHALL METASTUFF, LTD. OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY
WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Copyright 2001-2004 © MetaStuff, Ltd. All Rights Reserved.
The preceding license only applies to the Dom4j Software and does not apply to the Sterling Commerce
Software, or any other Third Party Software.
THE ECLIPSE SOFTWARE FOUNDATION
The Sterling Commerce Software is also distributed with or on the same storage media as the following
software:
com.ibm.icu.nl1_3.4.4.v200606220026.jar, org.eclipse.ant.core.nl1_3.1.100.v200606220026.jar,
org.eclipse.ant.ui.nl1_3.2.0.v200606220026.jar, org.eclipse.compare.nl1_3.2.0.v200606220026.jar,
org.eclipse.core.boot.nl1_3.1.100.v200606220026.jar,
org.eclipse.core.commands.nl1_3.2.0.v200606220026.jar,
org.eclipse.core.contenttype.nl1_3.2.0.v200606220026.jar,
org.eclipse.core.expressions.nl1_3.2.0.v200606220026.jar,
org.eclipse.core.filebuffers.nl1_3.2.0.v200606220026.jar,
org.eclipse.core.filesystem.nl1_1.0.0.v200606220026.jar,
org.eclipse.core.jobs.nl1_3.2.0.v200606220026.jar,
org.eclipse.core.resources.nl1_3.2.0.v200606220026.jar,
org.eclipse.core.runtime.compatibility.auth.nl1_3.2.0.v200606220026.jar,
org.eclipse.core.runtime.compatibility.nl1_3.1.100.v200606220026.jar,
org.eclipse.core.runtime.nl1_3.2.0.v200606220026.jar,
org.eclipse.core.variables.nl1_3.1.100.v200606220026.jar,
org.eclipse.debug.core.nl1_3.2.0.v200606220026.jar,
org.eclipse.debug.ui.nl1_3.2.0.v200606220026.jar,
org.eclipse.equinox.common.nl1_3.2.0.v200606220026.jar,
org.eclipse.equinox.preferences.nl1_3.2.0.v200606220026.jar,
org.eclipse.equinox.registry.nl1_3.2.0.v200606220026.jar,
org.eclipse.help.appserver.nl1_3.1.100.v200606220026.jar,
org.eclipse.help.base.nl1_3.2.0.v200606220026.jar, org.eclipse.help.nl1_3.2.0.v200606220026.jar,
org.eclipse.help.ui.nl1_3.2.0.v200606220026.jar, org.eclipse.jdt.apt.core.nl1_3.2.0.v200606220026.jar,
org.eclipse.jdt.apt.ui.nl1_3.2.0.v200606220026.jar,
org.eclipse.jdt.core.manipulation.nl1_1.0.0.v200606220026.jar,
org.eclipse.jdt.core.nl1_3.2.0.v200606220026.jar,
org.eclipse.jdt.debug.ui.nl1_3.2.0.v200606220026.jar,
org.eclipse.jdt.doc.isv.nl1_3.2.0.v200606220026.jar,
org.eclipse.jdt.doc.user.nl1_3.2.0.v200606220026.jar,
org.eclipse.jdt.junit4.runtime.nl1_1.0.0.v200606220026.jar,
org.eclipse.jdt.launching.nl1_3.2.0.v200606220026.jar, org.eclipse.jdt.nl1_3.2.0.v200606220026.jar,
org.eclipse.jdt.ui.nl1_3.2.0.v200606220026.jar,
org.eclipse.jface.databinding.nl1_1.0.0.v200606220026.jar,
org.eclipse.jface.nl1_3.2.0.v200606220026.jar, org.eclipse.jface.text.nl1_3.2.0.v200606220026.jar,
org.eclipse.ltk.core.refactoring.nl1_3.2.0.v200606220026.jar,
org.eclipse.ltk.ui.refactoring.nl1_3.2.0.v200606220026.jar,
org.eclipse.osgi.nl1_3.2.0.v200606220026.jar, org.eclipse.osgi.services.nl1_3.1.100.v200606220026.jar,
org.eclipse.osgi.util.nl1_3.1.100.v200606220026.jar, org.eclipse.pde.core.nl1_3.2.0.v200606220026.jar,
org.eclipse.pde.doc.user.nl1_3.2.0.v200606220026.jar,
org.eclipse.pde.junit.runtime.nl1_3.2.0.v200606220026.jar,
org.eclipse.pde.nl1_3.2.0.v200606220026.jar, org.eclipse.pde.runtime.nl1_3.2.0.v200606220026.jar,
org.eclipse.pde.ui.nl1_3.2.0.v200606220026.jar,
org.eclipse.platform.doc.isv.nl1_3.2.0.v200606220026.jar,
org.eclipse.platform.doc.user.nl1_3.2.0.v200606220026.jar,
org.eclipse.rcp.nl1_3.2.0.v200606220026.jar, org.eclipse.search.nl1_3.2.0.v200606220026.jar,
org.eclipse.swt.nl1_3.2.0.v200606220026.jar, org.eclipse.team.core.nl1_3.2.0.v200606220026.jar,
org.eclipse.team.cvs.core.nl1_3.2.0.v200606220026.jar,
org.eclipse.team.cvs.ssh.nl1_3.2.0.v200606220026.jar,
org.eclipse.team.cvs.ssh2.nl1_3.2.0.v200606220026.jar,
org.eclipse.team.cvs.ui.nl1_3.2.0.v200606220026.jar, org.eclipse.team.ui.nl1_3.2.0.v200606220026.jar,
org.eclipse.text.nl1_3.2.0.v200606220026.jar, org.eclipse.ui.browser.nl1_3.2.0.v200606220026.jar,
org.eclipse.ui.cheatsheets.nl1_3.2.0.v200606220026.jar,
org.eclipse.ui.console.nl1_3.1.100.v200606220026.jar,
org.eclipse.ui.editors.nl1_3.2.0.v200606220026.jar,
org.eclipse.ui.externaltools.nl1_3.1.100.v200606220026.jar,
org.eclipse.ui.forms.nl1_3.2.0.v200606220026.jar, org.eclipse.ui.ide.nl1_3.2.0.v200606220026.jar,
org.eclipse.ui.intro.nl1_3.2.0.v200606220026.jar, org.eclipse.ui.navigator.nl1_3.2.0.v200606220026.jar,
org.eclipse.ui.navigator.resources.nl1_3.2.0.v200606220026.jar,
org.eclipse.ui.nl1_3.2.0.v200606220026.jar,
org.eclipse.ui.presentations.r21.nl1_3.2.0.v200606220026.jar,
org.eclipse.ui.views.nl1_3.2.0.v200606220026.jar,
org.eclipse.ui.views.properties.tabbed.nl1_3.2.0.v200606220026.jar,
org.eclipse.ui.workbench.nl1_3.2.0.v200606220026.jar,
org.eclipse.ui.workbench.texteditor.nl1_3.2.0.v200606220026.jar,
org.eclipse.update.configurator.nl1_3.2.0.v200606220026.jar,
org.eclipse.update.core.nl1_3.2.0.v200606220026.jar,
org.eclipse.update.scheduler.nl1_3.2.0.v200606220026.jar,
org.eclipse.update.ui.nl1_3.2.0.v200606220026.jar,
com.ibm.icu_3.4.4.1.jar,
org.eclipse.core.commands_3.2.0.I20060605-1400.jar,
org.eclipse.core.contenttype_3.2.0.v20060603.jar,
org.eclipse.core.expressions_3.2.0.v20060605-1400.jar,
org.eclipse.core.filesystem.linux.x86_1.0.0.v20060603.jar,
org.eclipse.core.filesystem_1.0.0.v20060603.jar, org.eclipse.core.jobs_3.2.0.v20060603.jar,
org.eclipse.core.runtime.compatibility.auth_3.2.0.v20060601.jar,
org.eclipse.core.runtime_3.2.0.v20060603.jar, org.eclipse.equinox.common_3.2.0.v20060603.jar,
org.eclipse.equinox.preferences_3.2.0.v20060601.jar, org.eclipse.equinox.registry_3.2.0.v20060601.jar,
org.eclipse.help_3.2.0.v20060602.jar, org.eclipse.jface.text_3.2.0.v20060605-1400.jar,
org.eclipse.jface_3.2.0.I20060605-1400.jar, org.eclipse.osgi_3.2.0.v20060601.jar,
org.eclipse.swt.gtk.linux.x86_3.2.0.v3232m.jar, org.eclipse.swt_3.2.0.v3232o.jar,
org.eclipse.text_3.2.0.v20060605-1400.jar,
org.eclipse.ui.workbench.texteditor_3.2.0.v20060605-1400.jar,
org.eclipse.ui.workbench_3.2.0.I20060605-1400.jar, org.eclipse.ui_3.2.0.I20060605-1400.jar,
runtime_registry_compatibility.jar, eclipse.exe, eclipse.ini, and startup.jar
(collectively, "Eclipse Software").
All Eclipse Software is distributed under the terms and conditions of the Eclipse Foundation Software
User Agreement (EFSUA) and/or terms and conditions of the Eclipse Public License Version 1.0 (EPL) or
other license agreements, notices or terms and conditions referenced for the individual pieces of the
Eclipse Software, including without limitation "Abouts", "Feature Licenses", and "Feature Update
Licenses" as defined in the EFSUA.
A copy of the Eclipse Foundation Software User Agreement is found at
<install_dir>/SI/repository/rcp/rcpdependencies/windows/eclipse/notice.html,
<install_dir>/SI/repository/rcp/rcpdependencies/windows/eclipse/plugins/notice.html,
<install_dir>/SI/repository/rcp/rcpdependencies/gtk.linux_x86/eclipse/notice.html, and
<install_dir>/SI/repository/rcp/rcpdependencies/gtk.linux_x86/eclipse/plugins/notice.html.
A copy of the EPL is found at
<install_dir>/SI/repository/rcp/rcpdependencies/windows/eclipse/plugins/epl-v10.htm,
<install_dir>/SI/repository/rcp/rcpdependencies/windows/eclipse/epl-v10.htm,
<install_dir>/SI/repository/rcp/rcpdependencies/gtk.linux.x86/eclipse/plugins/epl-v10.html, and
<install_dir>/SI/repository/rcp/rcpdependencies/gtk.linux.x86/eclipse/epl-v10.html.
The reference to the license agreements, notices or terms and conditions governing each individual piece
of the Eclipse Software is found in the directory files for the individual pieces of the Eclipse Software as
described in the file identified as installdir/SCI_License.txt.
These licenses only apply to the Eclipse Software and do not apply to the Sterling Commerce Software,
or any other Third Party Software.
The Language Pack (NL Pack) piece of the Eclipse Software, is distributed in object code form. Source
code is available at
http://archive.eclipse.org/eclipse/downloads/drops/L-3.2_Language_Packs-200607121700/index.php. In
the event the source code is no longer available from the website referenced above, contact Sterling
Commerce at 978-513-6000 and ask for the Release Manager. A copy of this license is located at
<install_dir>/SI/repository/rcp/rcpdependencies/windows/eclipse/plugins/epl-v10.htm and
<install_dir>/SI/repository/rcp/rcpdependencies/gtk.linux.x86/eclipse/plugins/epl-v10.html.
The org.eclipse.core.runtime_3.2.0.v20060603.jar piece of the Eclipse Software was modified slightly in
order to remove classes containing encryption items. The org.eclipse.core.runtime_3.2.0.v20060603.jar
was modified to remove the Cipher, CipherInputStream and CipherOutputStream classes and rebuild the
org.eclipse.core.runtime_3.2.0.v20060603.jar.
Ehcache Software
The Sterling Commerce Software is also distributed with or on the same storage media as the ehache
v.1.5 software (Copyright © 2003-2008 Luck Consulting Pty. Ltd.) ("Ehache Software"). Ehcache
Software is free software which is distributed under the terms of the Apache License Version 2.0. A copy
of License Version 2.0 is found in <install>/jar/smcfs/9.0/ehcache-1.5.0.jar (./LICENSE.txt).
The Ehcache Software was not modified. Neither the Sterling Commerce Software, modifications, if any,
to the Ehcache Software, nor other Third Party Code is a Derivative Work or a Contribution as defined in
License Version 2.0. License Version 2.0 applies only to the Ehcache Software which is the subject of the
specific directory file and does not apply to the Sterling Commerce Software or to any other Third Party
Software. License Version 2.0 includes the following provision:
"Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS
OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of
TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are
solely responsible for determining the appropriateness of using or redistributing the Work and assume
any risks associated with Your exercise of permissions under this License."
ESAPI SOFTWARE
The Sterling Commerce Software is also distributed with or on the same storage media
as the ESAPI software (Copyright © 2007, the OWASP Foundation) ("ESAPI Software"). ESAPI Software
Software is free software which is distributed under the terms of the following license:
Copyright © 2007, The OWASP Foundation
All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided
that the following conditions are met:
Redistributions of source code must retain the above copyright notice, this list of conditions and the
following disclaimer.
Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the
following disclaimer in the documentation and/or other materials provided with the distribution.
Neither the name of the OWASP Foundation nor the names of its contributors may be used to endorse or
promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY
WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
EZMorph Software
The Sterling Commerce Software is also distributed with or on the same storage media as the EZMorph
v. 1.0.4 software (Copyright © 2006-2008 Andres Almiray) ("EZMorph Software"). EZMorph Software is
free software which is distributed under the terms of the Apache License Version 2.0. A copy of License
Version 2.0 is found in <install>/jar/ezmorph/1_0_4/ezmorph-1.0.4.jar (./LICENSE.txt).
The EZMorph Software was not modified. Neither the Sterling Commerce Software, modifications, if any,
to the EZMorph Software, nor other Third Party Code is a Derivative Work or a Contribution as defined in
License Version 2.0. License Version 2.0 applies only to the EZMorph Software which is the subject of the
specific directory file and does not apply to the Sterling Commerce Software or to any other Third Party
Software. License Version 2.0 includes the following provision:
"Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS
OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of
TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are
solely responsible for determining the appropriateness of using or redistributing the Work and assume
any risks associated with Your exercise of permissions under this License."
JAVASCRIPT MINIFIER
The Sterling Commerce Software is distributed with or on the same storage media as the JSMin Software
which is free software distributed under the terms of the following license:
JSMin.java 2006-02-13; Updated 2007-08-20 with updates from jsmin.c (2007-05-22)
Copyright © 2006 John Reilly (www.inconspicuous.org)
This work is a translation from C to Java of jsmin.c published by Douglas Crockford. Permission is hereby
granted to use the Java version under the same conditions as the jsmin.c on which it is based.
jsmin.c 2003-04-21
Copyright © 2002 Douglas Crockford (www.crockford.com)
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and
associated documentation files (the "Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the
following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial
portions of the Software.
The Software shall be used for Good, not Evil.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
ICE SOFTWARE
The Sterling Commerce Software is distributed on the same storage media as the ICE Software
(Copyright © 1997 ICE Engineering, Inc./Timothy Gerard Endres.) ("ICE Software"). The ICE Software is
independent from and not linked or compiled with the Sterling Commerce Software. The ICE Software is
a free software product which can be distributed and/or modified under the terms of the GNU General
Public License as published by the Free Software Foundation; either version 2 of the License or any later
version.
A copy of the GNU General Public License is provided at installdir/jar/jniregistry/1_2/ICE_License.txt.
This license only applies to the ICE Software and does not apply to the Sterling Commerce Software, or
any other Third Party Software.
The ICE Software was modified slightly in order to fix a problem discovered by Sterling Commerce
involving the RegistryKey class in the RegistryKey.java in the JNIRegistry.jar. The class was modified to
comment out the finalize () method and rebuild of the JNIRegistry.jar file.
Source code for the bug fix completed by Sterling Commerce on January 8, 2003 is located at:
installdir/jar/jniregistry/1_2/RegistryKey.java. Source code for all other components of the ICE Software
is located at http://www.trustice.com/java/jnireg/index.shtml.
The ICE Software is distributed WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
JBOSS SOFTWARE
The Sterling Commerce Software is distributed on the same storage media as the JBoss Software
(Copyright © 1999-2002 JBoss.org) ("JBoss Software"). The JBoss Software is independent from and not
linked or compiled with the Sterling Commerce Software. The JBoss Software is a free software product
which can be distributed and/or modified under the terms of the GNU Lesser General Public License as
published by the Free Software Foundation; either version 2.1 of the License or any later version.
A copy of the GNU Lesser General Public License is provided at:
<install_dir>\jar\jboss\4_2_0\LICENSE.html
This license only applies to the JBoss Software and does not apply to the Sterling Commerce Software,
or any other Third Party Software.
The JBoss Software is not distributed by Sterling Commerce in its entirety. Rather, the distribution is
limited to the following jar files: el-api.jar, jasper-compiler-5.5.15.jar, jasper-el.jar, jasper.jar,
jboss-common-client.jar, jboss-j2ee.jar, jboss-jmx.jar, jboss-jsr77-client.jar, jbossmq-client.jar,
jnpserver.jar, jsp-api.jar, servlet-api.jar, tomcat-juli.jar.
The JBoss Software was modified slightly in order to allow the ClientSocketFactory to return a socket
connected to a particular host in order to control the host interfaces, regardless of whether the
ClientSocket Factory specified was custom or note. Changes were made to org.jnp.server.Main. Details
concerning this change can be found at
http://sourceforge.net/tracker/?func=detail&aid=1008902&group_id=22866&atid=376687.
Source code for the modifications completed by Sterling Commerce on August 13, 2004 is located at:
http://sourceforge.net/tracker/?func=detail&aid=1008902&group_id=22866&atid=376687. Source code
for all other components of the JBoss Software is located at http://www.jboss.org.
JGO SOFTWARE
The Sterling Commerce Software is distributed with, or on the same storage media, as certain
redistributable portions of the JGo Software provided by Northwoods Software Corporation under a
commercial license agreement (the "JGo Software"). The JGo Software is provided subject to the
disclaimers set forth above and the following notice:
U.S. Government Restricted Rights
The JGo Software and documentation are provided with RESTRICTED RIGHTS. Use, duplication, or
disclosure by the Government is subject to restrictions as set forth in subparagraph (C)(1)(ii) of the
Rights in Technical Data and Computer Software clause at DFARS 252.227-7013 or subparagraphs (C)(1)
and (2) of the Commercial Computer Software - Restricted Rights at 48 CFR 52.227-19, as applicable.
Contractor / manufacturer of the JGo Software is Northwoods Software Corporation, 142 Main St.,
Nashua, NH 03060.
JSLib Software
The Sterling Commerce Software is distributed with or on the same storage media as the JSLib software
product (Copyright © 2003-2009 Mozdev Group, Inc.) ("JSLib Software"). The JSLib Software is
distributed under the terms of the MOZILLA PUBLIC LICENSE Version 1.1. A copy of this license is
located at <install>/repository/eardata/platform_uifwk_ide/war/designer/MPL-1.1.txt. The JSLib
Software code is distributed in source form and is located at http://jslib.mozdev.org/installation.html.
Neither the Sterling Commerce Software nor any other Third Party Code is a Modification or Contribution
subject to the Mozilla Public License. Pursuant to the terms of the Mozilla Public License, the following
notice applies only to the JSLib Software (and not to the Sterling Commerce Software or any other Third
Party Software):
"The contents of the file located at http://www.mozdev.org/source/browse/jslib/ are subject to the
Mozilla Public License Version 1.1 (the "License"); you may not use this file except in compliance with the
License. You may obtain a copy of the License at http://www.mozilla.org/MPL/
Software distributed under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
KIND, either express or implied. See the License for the specific language governing rights and
limitations under the License.
The Original Code is Mozdev Group, Inc. code. The Initial Developer of the Original Code is Mozdev
Group, Inc. Portions created by_Mozdev Group, Inc. are Copyright © 2003 Mozdev Group, Inc. All Rights
Reserved. Original Author: Pete Collins <[email protected]>one Contributor(s):_____none
listed________.
Alternatively, the contents of this file may be used under the terms of the ____ license (the "[___]
License"), in which case the provisions of [___] License are applicable instead of those above. If you
wish to allow use of your version of this file only under the terms of the [___] License and not allow
others to use your version of this file under the MPL, indicate your decision by deleting the provisions
above and replace them with the notice and other provisions required by the [___] License. If you do not
delete the provisions above, a recipient may use your version of this file under either the MPL or the
[___] License."
The preceding license only applies to the JSLib Software and does not apply to the Sterling Commerce
Software, or any other Third Party Software.
Json Software
The Sterling Commerce Software is also distributed with or on the same storage media as the Json 2.2.2
software (Copyright © 2006-2008 Json-lib) ("Json Software"). Json Software is free software which is
distributed under the terms of the Apache License Version 2.0. A copy of License Version 2.0 is found in
<install>/jar/jsonlib/2_2_2/json-lib-2.2.2-jdk13.jar.
This product includes software developed by Douglas Crockford (http://www.crockford.com).
The Json Software was not modified. Neither the Sterling Commerce Software, modifications, if any, to
the Json Software, nor other Third Party Code is a Derivative Work or a Contribution as defined in
License Version 2.0. License Version 2.0 applies only to the Json Software which is the subject of the
specific directory file and does not apply to the Sterling Commerce Software or to any other Third Party
Software. License Version 2.0 includes the following provision:
"Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS
OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of
TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are
solely responsible for determining the appropriateness of using or redistributing the Work and assume
any risks associated with Your exercise of permissions under this License."
Prototype Software
The Sterling Commerce Software is distributed with or on the same storage media as the Prototype
software (Copyright © 2005-2008 Sam Stephenson) ("Prototype Software"), which is subject to the
following license:
Copyright © 2005-2008 Sam Stephenson
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and
associated documentation files (the "Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the
following conditions:
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Purple Technology
The Sterling Commerce Software is distributed with or on the same storage media as the Purple
Technology Software (Copyright © 1995-1999 Purple Technology, Inc.) ("Purple Technology Software"),
which is subject to the following license:
Copyright © 1995-1999 Purple Technology, Inc. All rights reserved.
PLAIN LANGUAGE LICENSE: Do whatever you like with this code, free of charge, just give credit where
credit is due. If you improve it, please send your improvements to [email protected]. Check
http://www.purpletech.com/code/ for the latest version and news.
LEGAL LANGUAGE LICENSE: Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this list of conditions and the
following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
the following disclaimer in the documentation and/or other materials provided with the distribution.
3. The names of the authors and the names "Purple Technology," "Purple Server" and "Purple Chat" must
not be used to endorse or promote products derived from this software without prior written permission.
For written permission, please contact [email protected].
THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND PURPLE TECHNOLOGY "AS IS'' AND ANY
EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
SHALL THE AUTHORS OR PURPLE TECHNOLOGY BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY
WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
The preceding license only applies to the Purple Technology Software and does not apply to the Sterling
Commerce Software, or any other Third Party Software.
Rico Software
The Sterling Commerce Software is also distributed with or on the same storage media as the Rico.js
software (Copyright © 2005 Sabre Airline Solutions) ("Rico Software"). Rico Software is free software
which is distributed under the terms of the Apache License Version 2.0. A copy of License Version 2.0 is
found in <install>/repository/eardata/platform/war/ajax/scripts/Rico_License.txt.
The Rico Software was not modified. Neither the Sterling Commerce Software, modifications, if any, to
the Rico Software, nor other Third Party Code is a Derivative Work or a Contribution as defined in License
Version 2.0. License Version 2.0 applies only to the Rico Software which is the subject of the specific
directory file and does not apply to the Sterling Commerce Software or to any other Third Party
Software. License Version 2.0 includes the following provision:
"Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS
OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of
TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are
solely responsible for determining the appropriateness of using or redistributing the Work and assume
any risks associated with Your exercise of permissions under this License."
Rhino Software
The Sterling Commerce Software is distributed with or on the same storage media as the Rhino js.jar
(Copyright © 1998-2009 Mozilla.org.) ("Rhino Software"). A majority of the source code for the Rhino
Software is dual licensed under the terms of the MOZILLA PUBLIC LICENSE Version 1.1. or the GPL v.
2.0. Additionally, some files (at a minimum the contents of
toolsrc/org/Mozilla/javascript/toolsdebugger/treetable) are available under another license as set forth in
the directory file for the Rhino Software.
Sterling Commerce's use and distribution of the Rhino Software is under the Mozilla Public License. A
copy of this license is located at <install>/jar/rhino/1_7R1/License.txt. The Rhino Software code is
distributed in source form and is located at http://mxr.mozilla.org/mozilla/source/js/rhino/src/. Neither
the Sterling Commerce Software nor any other Third Party Code is a Modification or Contribution subject
to the Mozilla Public License. Pursuant to the terms of the Mozilla Public License, the following notice
applies only to the Rhino Software (and not to the Sterling Commerce Software or any other Third Party
Software):
"The contents of the file located at <install>/jar/rhino/1_7R1/js.jar are subject to the Mozilla Public
License Version 1.1 (the "License"); you may not use this file except in compliance with the License. You
may obtain a copy of the License at http://www.mozilla.org/MPL/
Software distributed under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
KIND, either express or implied. See the License for the specific language governing rights and
limitations under the License.
The Original Code is Rhino code, released May 6, 1999. The Initial Developer is Netscape
Communications Corporation. Portions created by the Initial Developer are Copyright © 1997-1999. All
Rights Reserved. Contributor(s):_____none listed.
The preceding license only applies to the Rico Software and does not apply to the Sterling Commerce
Software, or any other Third Party Software
SLF4J Software
The Sterling Commerce Software is also distributed with or on the same storage media as the SLF4J
software (Copyright © 2004-2008) ("SLF4J Software"), which is subject to the following license:
Copyright © 2004-2008 QOS.ch All rights reserved.
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and
associated documentation files (the "Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the
following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial
portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Sun Microsystems
The Sterling Commerce Software is distributed with or on the same storage media
as the following software products (or components thereof): Sun JMX, and Sun JavaMail (collectively,
"Sun Software"). Sun Software is free software which is distributed under the terms of the licenses
issued by Sun which are included in the directory files located at:
SUN COMM JAR -installdir/jar/comm/2_0
SUN ACTIVATION JAR -installdir/jar/jaf/1_0_2
SUN JavaMail -installdir/jar/javamail/1_4
The Sterling Commerce Software is also distributed with or on the same storage media as the
Web-app_2_3.dtd software (Copyright © 2007 Sun Microsystems, Inc.) ("Web-App Software").
Web-App Software is free software which is distributed under the terms of the Common Development
and Distribution License ("CDDL"). A copy of
<install>/repository/eardata/platform/war/WEB-INF/web_app_License.txt.
The source code for the Web-App Software may be found at:http://java.sun.com/dtd/.
Such licenses only apply to the Sun product which is the subject of such directory and does not apply to
the Sterling Commerce Software or to any other Third Party Software.
The Sterling Commerce Software is also distributed with or on the same storage media as the Sun
Microsystems, Inc. Java (TM) look and feel Graphics Repository ("Sun Graphics Artwork"), subject to the
following terms and conditions:
Copyright 2000 by Sun Microsystems, Inc. All Rights Reserved.
Sun grants you ("Licensee") a non-exclusive, royalty free, license to use, and redistribute this software
graphics artwork, as individual graphics or as a collection, as part of software code or programs that you
develop, provided that i) this copyright notice and license accompany the software graphics artwork; and
ii) you do not utilize the software graphics artwork in a manner which is disparaging to Sun. Unless
enforcement is prohibited by applicable law, you may not modify the graphics, and must use them true
to color and unmodified in every way.
This software graphics artwork is provided "AS IS," without a warranty of any kind. ALL EXPRESS OR
IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE HEREBY
EXCLUDED. SUN AND ITS LICENSORS SHALL NOT BE LIABLE FOR ANY DAMAGES SUFFERED BY
LICENSEE AS A RESULT OF USING, MODIFYING OR DISTRIBUTING THE SOFTWARE GRAPHICS
ARTWORK.
IN NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE FOR ANY LOST REVENUE, PROFIT OR DATA, OR
FOR DIRECT, INDIRECT, SPECIAL, CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER
CAUSED AND REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT OF THE USE OF OR INABILITY
TO USE SOFTWARE GRAPHICS ARTWORK, EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF
SUCH DAMAGES.
If any of the above provisions are held to be in violation of applicable law, void, or unenforceable in any
jurisdiction, then such provisions are waived to the extent necessary for this Disclaimer to be otherwise
enforceable in such jurisdiction.
The preceding license only applies to the Sun Graphics Artwork and does not apply to the Sterling
Commerce Software, or any other Third Party Software.
WARRANTY DISCLAIMER
This documentation and the Sterling Commerce Software which it describes are licensed either "AS IS"
or with a limited warranty, as set forth in the Sterling Commerce license agreement. Other than any
limited warranties provided, NO OTHER WARRANTY IS EXPRESSED AND NONE SHALL BE IMPLIED,
INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR USE OR FOR A PARTICULAR
PURPOSE. The applicable Sterling Commerce entity reserves the right to revise this publication from time
to time and to make changes in the content hereof without the obligation to notify any person or entity
of such revisions or changes.
The Third Party Software is provided "AS IS" WITHOUT ANY WARRANTY AND ANY EXPRESSED OR
IMPLIED WARRANTIES, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY, AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. FURTHER, IF YOU
ARE LOCATED OR ACCESSING THIS SOFTWARE IN THE UNITED STATES, ANY EXPRESS OR IMPLIED
WARRANTY REGARDING TITLE OR NON-INFRINGEMENT ARE DISCLAIMED.
Without limiting the foregoing, the ICE Software and JBoss Software are distributed WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE.
Contents
Preface
Intended Audience ....................................................................................xxvii
Structure .................................................................................................xxvii
Selling and Fulfillment Foundation Documentation ......................................... xxix
Conventions ............................................................................................. xxxi
1 Introduction
1.1 Application Integration Architecture ...................................................... 2
1.2 Integration with Warehouse Management Systems ................................. 3
1.3 Integration with the Parcel Carrier Adapters........................................... 4
1.4 Integration with the Loftware Print Server and Label Manager .................. 4
1.5 Integration with Material Handling Equipment ........................................ 4
1.6 Integration with Enterprise Resource Planning Systems ........................... 5
1.7 Integration with Point of Sale Systems .................................................. 5
1.8 Integration with JMS Systems .............................................................. 5
1.9 Integration with Financial Systems ....................................................... 5
1.10 Rapid Deployment Features ................................................................. 6
xix
2.1.5 DCS Purchase Order Interface....................................................... 15
2.1.5.1 POHDR - Purchase Order Download Header................................ 15
2.1.5.2 PODTL - Purchase Order Download Detail .................................. 16
2.1.5.3 Sample Receive Order Output XML............................................ 17
2.1.5.4 RCPHDR - Purchase Order Receipt Header ................................. 17
2.1.5.5 RCPDTL - Purchase Order Receipt Detail .................................... 18
2.1.5.6 Receive Order Input XML Mapping ............................................ 18
2.2 DCS Shipment Interface .................................................................... 20
2.2.1 Understanding the Order Transactions............................................ 20
2.2.2 Configuring DCS Shipment Time-Triggered Transactions ................... 21
2.2.3 DCS Order Release Interface......................................................... 23
2.2.3.1 ORDHDR – Order Release Order Header .................................... 23
2.2.3.2 ORDDTL – Order Release Order Detail ....................................... 25
2.2.3.3 ORDADR – Order Release Order Address ................................... 27
2.2.3.4 ORDINS – Order Release Order Instruction ................................ 28
2.2.3.5 ORDBOM – Order Release Order Bill of Materials......................... 29
2.2.3.6 ORDNAM – Order Release Order Name ...................................... 30
2.2.4 DCS Shipment Confirmation.......................................................... 32
2.2.4.1 PCKHDR – Shipment Confirmation Pickticket Header ................... 32
2.2.4.2 CARHDR – Shipment Confirmation Carton Header ....................... 34
2.2.4.3 PCKINF – Shipment Confirmation Pick Information ...................... 35
2.2.4.4 CNCDTL – Shipment Confirmation Cancel Detail ......................... 36
2.2.4.5 SRLDTL - Pick Ticket Serial Record............................................ 36
2.3 DCS Inventory Interface.................................................................... 39
2.3.1 DCS Inventory Upload.................................................................. 39
2.3.1.1 TRNDTL – Inventory Change Upload Record ............................... 39
2.3.2 DCS Inventory Download.............................................................. 40
2.3.2.1 INVCHG - Inventory Change Download Record ........................... 42
2.4 DCS Returns Interface ...................................................................... 44
2.4.1 Return Order Integration Workflow ................................................ 44
2.4.2 Determining the Enterprise Code for Blind Return during Upload ........ 46
2.4.3 Configuring Return Order Integration with DCS ............................... 47
2.4.3.1 Configuring return release download to DCS .............................. 47
2.4.3.2 Configuration for Receiving Blind RMA ....................................... 48
2.4.4 Return Order Interface Data Mapping ............................................. 50
xx Integration Guide
2.4.4.1 Return Order Release Download Data Mapping ............................50
2.4.4.1.1 RMAHDR - Return Release Download Header..........................50
2.4.4.1.2 RMADTL - Return Release Download Detail ............................53
2.4.4.1.3 RMACMT- Return Release Download Comments ......................54
2.4.4.2 Return Receipt Upload Data Mapping .........................................55
2.4.4.2.1 Data mapping to create Return Order for blind return..............55
2.4.4.2.2 Data mapping to record return receipts .................................58
2.4.5 Assumptions and Limitations..........................................................59
xxi
4 Integrating with Third-Party Warehouse Management Systems
4.1 Third-Party Warehouse Management Systems ...................................... 83
4.1.1 Third-Party Shipment Advice......................................................... 84
4.1.2 Third-Party Inventory Change ....................................................... 84
xxiii
8.4.5.3 Receipt Upload from the Sterling WMS to an ERP System............153
xxv
13 Rapid Deployment Features
13.1 Interface Field Mapping Documents ...................................................201
13.1.1 Generating Interface Field Mapping Template Documents ................202
13.1.1.1 Generating Interface Field Mapping Template Documents Using the
Generation Tool .....................................................................202
13.1.1.2 Using Interface Field Mapping Template Documents ...................203
13.2 Initial Data Loading .........................................................................203
13.2.1 Initial Data-Loading Services .......................................................204
13.2.1.1 Item Configuration Data-Loading .............................................206
13.2.1.2 Shipping Carton Data-Loading.................................................209
13.2.1.3 Location Data-Loading ...........................................................210
13.2.1.4 SKU Dedication Data-Loading..................................................214
13.2.1.5 Location Inventory Data-Loading .............................................216
Index
Intended Audience
This manual is intended for use by those who are responsible for
integrating Selling and Fulfillment Foundation with other applications.
Structure
This manual contains the following sections:
Chapter 1, "Introduction"
This chapter discusses integration in general terms and provides an
overview of the application integration architecture.
xxvii
Chapter 4, "Integrating with Third-Party Warehouse
Management Systems"
This chapter describes how to integrate Selling and Fulfillment
Foundation with third-party warehouse management systems.
xxix
Q
Selling and Fulfillment Foundation: Customizing User Interfaces for
Mobile Devices Guide
Q
Selling and Fulfillment Foundation: Customizing Web UI Framework
Guide
Q
Selling and Fulfillment Foundation: Customizing Swing Interface
Guide
Q
Selling and Fulfillment Foundation: Extending the Condition Builder
Guide
Q
Selling and Fulfillment Foundation: Extending the Database Guide
Q
Selling and Fulfillment Foundation: Extending Transactions Guide
Q
Selling and Fulfillment Foundation: Using Sterling RCP Extensibility
Tool Guide
Q
Selling and Fulfillment Foundation: Integration Guide
Q
Selling and Fulfillment Foundation: Product Concepts Guide
Q
Sterling Warehouse ManagementTM System: Concepts Guide
Q
Selling and Fulfillment Foundation: Application Platform Configuration
Guide
Q
Sterling Distributed Order ManagementTM: Configuration Guide
Q
Sterling Supply Collaboration: Configuration Guide
Q
Sterling Global Inventory VisibilityTM: Configuration Guide
Q
Catalog ManagementTM: Configuration Guide
Q
Sterling Logistics Management: Configuration Guide
Q
Sterling Reverse LogisticsTM: Configuration Guide
Q
Sterling Warehouse Management System: Configuration Guide
Q
Selling and Fulfillment Foundation: Application Platform User Guide
Q
Sterling Distributed Order Management: User Guide
Q
Sterling Supply Collaboration: User Guide
Q
Sterling Global Inventory Visibility: User Guide
Q
Sterling Logistics Management: User Guide
Conventions
The following conventions may be used in this manual:
xxxi
Convention Meaning
... Ellipsis represents information that has been
omitted.
<> Angle brackets indicate user-supplied input.
Note: The Selling and Fulfillment Foundation documentation set uses the
following conventions in the context of the product name:
Q
Yantra is used for Release 7.7 and earlier.
xxxiii
Q
Sterling Supply Chain Applications is used for Releases 7.9 and 7.11.
Q
Sterling Multi-Channel Fulfillment Solution is used for Releases 8.0
and 8.2.
Q
Selling and Fulfillment Foundation is used for Releases 8.5 and 9.0.
Introduction 1
Application Integration Architecture
2 Integration Guide
Integration with Warehouse Management Systems
Introduction 3
Integration with Material Handling Equipment
4 Integration Guide
Integration with Financial Systems
Introduction 5
Rapid Deployment Features
6 Integration Guide
2
Integrating with the Distribution Center
System
8 Integration Guide
DCS Purchase Order Interface
External System
createOrder() 1
changeOrder()
5
Selling
2 PO R
PO d e
lo a U p lo c e ip t
D o n
w YFS_EXPORT ad
DCS
3
INFC_DNLD_TAB_1
INFC_UPLD_TAB_1 4
Order line is a DCS ship node. If the ship node is not a DCS ship
node, the transaction marks the record as processed and takes no
further action.
4. The vendor sends an advance shipment notice (ASN) to the DCS for
shipping the items on the Purchase Order. When items are received at
the receiving node, the DCS uploads Purchase Order Receipt records
to the DCS interface table.
The Purchase Order Receipt Upload time-triggered transaction picks
up the Purchase Order Receipt records from the DCS upload interface
table and calls the receiveOrder() API with the Receive Purchase
Order transaction. The status of items received is changed to
Received (3900).
If the Purchase Order is to be downloaded to Selling and Fulfillment
Foundation from an external system, the ON_SUCCESS event of the
Receive Purchase Order transaction can be configured to invoke an
action to publish the Purchase Order Receipt data to the YFS_EXPORT
table.
The data is then uploaded back to the external Purchase Order
system.
10 Integration Guide
DCS Purchase Order Interface
to 40 characters, the DCS limits the length of both the Order and the
Purchase Order number to a maximum of 13 characters. In addition, to
comply with the DCS requirements, Purchase Order numbers may
contain any combination of numbers and upper-case alphabetic
characters; lower-case alphabetic characters are not permitted.
All Purchase Order lines must use consecutive prime line numbers, with
all subline numbers as = 1. The PODTL Record Type does not take in
subline numbers. For more information see Section 2.1.5.2, "PODTL -
Purchase Order Download Detail".
When integrating with the DCS, all the advance shipment notifications
(Purchase Order Receipt) created and uploaded to the DCS interface
table are only for the Purchase Orders that were initially downloaded
from Selling and Fulfillment Foundation.
When passing parameters to the DCS interface table, be sure that the
length does not exceed that which is enabled by the DCS Purchase Order
header and detail records.
Parameters are passed to the DCS when Selling and Fulfillment
Foundation downloads Purchase Orders from an external system.
Note that the date for the Estimated Time of Arrival in the DCS is the
Requested Delivery Date at the time of the Purchase Order creation on
Selling and Fulfillment Foundation.
12 Integration Guide
DCS Purchase Order Interface
14 Integration Guide
DCS Purchase Order Interface
3. At the bottom of the left pane, click the Services tab to open the
Services tree.
4. Create a new service named YantraWMSPODownloadService that is
invoked synchronously, does not provide real time response, and
contains the following sequence of nodes:
a. Start node
b. Database node: specify the table name property as YFS_EXPORT
c. End node
5. Create an action. Click the Invoked Services tab and add the service
YantraWMSPODownloadService you created in Step 4.
6. Attach this action to the ON_SUCCESS events of the Create Order
and Change Order transactions in the Purchase Order Execution
repository. If necessary, add a condition to call this action only if the
receiving node is the WMS Node.
Table 2–2 POHDR Record Type - Purchase Order Download Header Interface Format
Selling and Fulfillment Foundation Field Start
DCS Parameter Parameter Size Position
whse OrderLine.ReceivingNode in CreateOrder 5 1
XML
record_type ‘POHDR’ 6 6
action_code Always ‘CH’ 2 12
recv_order_type ‘VN’ 2 14
Table 2–2 POHDR Record Type - Purchase Order Download Header Interface Format
Selling and Fulfillment Foundation Field Start
DCS Parameter Parameter Size Position
recv_order_no Order.OrderNo in CreateOrder XML 13 16
(Alphabetic characters must be upper-case)
recv_order_release_no ‘1’ 3 29
source Order.SellerOrganizationCode in 10 32
CreateOrder XML
Table 2–3 PODTL Record Type - Purchase Order Download Detail Interface Format
Selling and Fulfillment Foundation Field Start
DCS Parameter Parameter Size Position
whse OrderLine.ReceivingNode in CreateOrder XML 5 1
record_type ‘PODTL’ 6 6
action_code ‘CL’ Only for PO Line Close. (This happens when 2 12
the line ordered quantity is reduced to zero.)
‘CH’ for all other modifications, such as changing
the quantity (to nonzero), ETA, or adding lines.
recv_order_type ‘VN’ 2 14
recv_order_no Order.OrderNo in CreateOrder XML 13 16
(Alphabetic characters must be upper-case)
recv_order_release_no ‘1’ 3 29
recv_order_line_no OrderLine.PrimeLineNo in CreateOrder XML 5 32
item_id OrderLine.Item.ItemID in CreateOrder XML 24 37
product_class OrderLine.Item.ProductClass in CreateOrder XML 6 61
pack_type Always blank 4 67
order_qty OrderLine.OrderedQty in CreateOrder XML 9 71
pre_production Always blank 1 80
16 Integration Guide
DCS Purchase Order Interface
Table 2–3 PODTL Record Type - Purchase Order Download Detail Interface Format
Selling and Fulfillment Foundation Field Start
DCS Parameter Parameter Size Position
x_doc_recv_order Always blank 1 81
eta_date OrderLine.ReqShipDate in CreateOrder XML 8 82
unit_price OrderLine.LinePriceInfo.UnitPrice in CreateOrder 11 90
XML
country_of_origin OrderLine.Item.CountryOfOrigin in CreateOrder 5 101
XML
reference_1 Always blank 20 106
reference_2 Always blank 20 126
reference_3 Always blank 20 146
Table 2–4 RCPHDR Record Type - Purchase Order Receipt Header Interface Format
Selling and Fulfillment Foundation Field Start
DCS Parameter Parameter Size Position
whse OrderLine.ReceivingNode in CreateOrder XML 5 1
record_type ‘RCPHDR’ 6 6
action_code Always ‘AD’ 2 12
asn_no Advance Shipment Notice number 20 14
asn_type Advance Shipment Notice type 2 34
reference_1 Reference number 30 191
Table 2–5 RCPDTL Record Type - Purchase Order Receipt Detail Interface Format
Selling and Fulfillment Foundation Field Start
DCS Parameter Parameter Size Position
whse OrderLine.ReceivingNode in CreateOrder XML 5 1
record_type ‘RCPDTL’ 6 6
action_code Always ‘AD’ 2 12
asn_no Advance Shipment Notice number 20 14
asn_type Advance Shipment Notice type 2 34
recv_order_no Order.OrderNo in CreateOrder XML 13 66
(Alphabetic characters must be upper-case)
recv_order_line_no OrderLine.PrimeLineNo in CreateOrder XML 5 82
received_qty Quantity received in ASN against order line 7 119
number
18 Integration Guide
DCS Purchase Order Interface
Table 2–6 Selling and Fulfillment Foundation and DCS Order Header
Mapping
Selling and Fulfillment Foundation
XML Parameter DCS Parameter
orderheaderkey Always blank
orderreleasekey Always blank
receiptheaderkey Always blank
receiptno HEADER.ASN_NO
releaseno Always blank
Shipment Records
The receiveOrder() API input XML and the DCS Order map as shown in
Table 2–7, "Selling and Fulfillment Foundation Shipment and DCS Order
Mapping".
Table 2–7 Selling and Fulfillment Foundation Shipment and DCS Order
Mapping
Selling and Fulfillment Foundation
XML Parameter DCS Parameter
enterprisecode EnterpriseCode
orderno DETAIL.RECV_ORDER_NO
Table 2–8 Selling and Fulfillment Foundation and DCS Order Line
Mapping
Selling and Fulfillment Foundation
DCS Parameter Parameter
BreakIntoComponents Always blank
DispositionCode Always blank
InspectedBy Always blank
InspectionComments Always blank
InspectionDate Always blank
LotNumber Always blank
OrderLineKey Always blank
PrimeLineNo DETAIL.RECV_ORDER_LINE_NO
SubLineNo 1
Quantity DETAIL.RECEIVED_QTY
ReceiptLineNo Always blank
SerialNo Always blank
ShipByDate Always blank
<KitLines> Not used
20 Integration Guide
DCS Shipment Interface
Q
Inventory is reduced from the onhand supply when Selling and
Fulfillment Foundation receives and processes the shipment
confirmation transaction from DCS. DCS must not be configured to
upload separate inventory transactions for shipments.
Q
The SCAC and Service Code used by the Selling and Fulfillment
Foundation input XML corresponds to the SCAC field in the DCS
interface. Map each carrier defined in DCS to those in Selling and
Fulfillment Foundation by creating an identical configuration in the
Applications Manager > Application Platform > Participant Modeling.
For example, if DCS uses UPSG as the SCAC Code for United Parcel
Ground Service, in Selling and Fulfillment Foundation for the
participant called UPS, set the SCAC and Service Code as UPSG, and
specify the Service as Ground.
Q
DCS should disable cancellation from transaction 02012 (Order
Release list). Selling and Fulfillment Foundation only recognizes
cancellations with return ownership = Y when done from DCS
transaction 02013 (load/shipper list).
Q
The Order No for Shipment Advice can be a maximum length of 13
bytes and must be upper-case characters and numbers or just
numbers (lower-case characters are not allowed).
22 Integration Guide
DCS Shipment Interface
4. Schedule the time intervals for running the Send Release and WMS
Shipment Confirmation time-triggered transactions from DCS, as
described in the Selling and Fulfillment Foundation: Application
Platform Configuration Guide.
24 Integration Guide
DCS Shipment Interface
26 Integration Guide
DCS Shipment Interface
28 Integration Guide
DCS Shipment Interface
Table 2–13 ORDBOM Record Type - Order Bill of Materials Interface Format
Selling and Fulfillment Foundation Field Start
DCS Parameter Parameter Size Position
whse ShipNode 5 1
record_type Always 'ORDBOM' 6 6
action_code Always 'AD' 2 12
order_no Order Number 13 14
(Alphabetic characters must be upper-case)
order_rel_no Order Release Number 3 27
order_prime_line Order Prime Line Number 5 30
order_sub_line Order Sub Line Number 5 35
item_id ItemID in CreateOrder XML 24 40
product_class ProductClass in CreateOrder XML 6 64
quality_status Always blank 2 70
pack_type Always 'EACH' 4 72
bom_qty KitQty in CreateOrder XML 9 76
pick_slip_number Always blank 13 85
picking_line_detail_id Always blank 13 98
scrap_factor Always '0000000' 7 111
reference_field1 Always blank 40 118
reference_field2 Always blank 40 158
reference_field3 Always blank 40 198
reference_field4 Always blank 40 238
reference_field5 Always blank 40 278
wms_buffer Always blank 30 318
30 Integration Guide
DCS Shipment Interface
32 Integration Guide
DCS Shipment Interface
34 Integration Guide
DCS Shipment Interface
36 Integration Guide
DCS Shipment Interface
Table 2–19 SRLDTL Record Type - PickTicket Serial Record Interface Format
Selling and Fulfillment Foundation Field Start
DCS Parameter Parameter Size Position
whse ShipNode (Not used) 5 1
record_type SRLDTL 6 6
action_code Not used 2 12
pickticket_no Not used 20 14
item_id Shipment line's item ID 24 34
product_class Shipment line's product class 2 58
item_pseudo_no Not used 12 60
item_serial_no Serial number (Passed to the API) 20 72
component_item_id Not used 24 92
component_product_class Not used 2 116
component_pseudo_no Not used 12 118
component_serial_no Not used 20 130
quantity Quantity 9 150
country_of_origin Not used 5 159
customer_po_number Not used 25 164
pallet_scm CARHDR's pallet SCM. 20 189
carton_scm If the attribute length is 20, it is mapped to 20 209
the Carton SCM of the shipment line.
Otherwise, it is mapped to the Container
Number of the shipment line.
upc_code Not used 12 229
upc_case_code_scanned Not used 14 241
upc_case_code_number_of_ Not used 7 255
boxes
38 Integration Guide
DCS Inventory Interface
Note: For Work Orders, DCS sets the value of the Reference_
Field4 Selling and Fulfillment Foundation Parameter to KITD
for use by inventory costing.
For more information about the Inventory Upload transaction, see the
Selling and Fulfillment Foundation: Application Platform Configuration
Guide.
40 Integration Guide
DCS Inventory Interface
42 Integration Guide
DCS Inventory Interface
Table 2–21 INVCHG Record Type - Inventory Change Download Interface Format
Field Start
DCS Parameter Selling and Fulfillment Foundation Parameter Size Position
whse /YantraXML/XML/ShipNode 5 1
record_type INVCHG 6 6
action_code AD 2 12
tran_date Transaction date in 'CCYYMMDD' format 8 14
tran_time Transaction time in 'HHMMSS' format 6 22
tran_seq_no 001 3 28
tran_code WIMT 5 31
tran_type Always blank 5 36
tran_reason_code Always blank 4 41
item_id /YantraXML/XML/ItemID 40 45
product_class /YantraXML/XML/ProductClass 6 85
pack_type EACH 4 91
quality_status Always blank 2 95
unavailable_quantity 0 7 97
available_quantity /YantraXML/XML/Quantity 7 104
held_quantity 0 7 111
location /YantraXML/XML/WarehouseLocation 20 118
user_id User ID from the context 8 138
reference_field_1 Data maps to 30 146
/YantraXML/XML/WMSReferenceField1. No data is
passed, it maps to
/YantraXML/XML/SupplyReference.
Note: OrderNo is passed in
/YantraXML/XML/SupplyReference by the event.
reference_field_2 Data maps to 30 176
/YantraXML/XML/WMSReferenceField2. No data is
passed, it maps to /YantraXML/XML/SupplyType.
wms_buffer Always blank 30 206
44 Integration Guide
DCS Returns Interface
46 Integration Guide
DCS Returns Interface
48 Integration Guide
DCS Returns Interface
creates the Return Order with a ‘03’ order type in Selling and Fulfillment
Foundation.
Based on the pipeline determination condition given below, the Blind RMA
Pipeline is used for Blind RMA Return Order fulfillment.
Return releases are not created for these return orders. However, a
receipt is recorded against the Return Order.
The Blind RMA Pipeline should be configured according to the following
pipeline:
50 Integration Guide
DCS Returns Interface
Table 2–22 RMAHDR Record Type - Return Release Download Header Interface
Mapping
Selling and Fulfillment Foundation Field Start
DCS Parameter Parameter Size Position
WHSE OrderRelease/@ReceivingNode 5 1
RECORD-TYPE “RMAHDR” 6 6
ACTION-CODE “CH” or “CL” based on modification or 2 12
closure
RMA-NUMBER OrderRelease/Order/@OrderNo 15 14
RMA-RELEASE-NO OrderRelease/@ReleaseNo 3 29
RMA-TYPE OrderRelease/Order/@OrderType 2 32
EXPECTED-NO-OF-CASES N/A 5 34
EXPECTED-NUMBER-OF-PALLETS N/A 5 39
EXPECTED-NUMBER-OF-UNITS N/A 7 44
TRAILER-NO N/A 20 51
FREIGHT-COLLECT-FLAG OrderRelease/Order/@TermsCode 1 71
EXPECTED-DATE OrderRelease/Order/@OrderDate 8 72
CARRIER-CODE OrderRelease/Order/@SCAC 4 80
INVOICE-NUMBER N/A 20 84
SHIP-TO-CUST-ID OrderRelease/OrderLine/@ShipToID 10 104
BILL-TO-CUST-ID OrderRelease/Order/@BillToID 10 114
ENTRY-DATE OrderRelease/Order/@OrderDate 8 124
SHIP-TO-NAME OrderRelease/PersonInfoShipTo/ 25 132
@FirstName + @LastName
BILL-TO-SHORT-NAME OrderRelease/Order/PersonInfoBillTo/@Fi 12 157
rstName + @LastName
SHIP-TO-ADDR-1 OrderRelease/PersonInfoShipTo/ 30 169
@AddressLine1
SHIP-TO-ADDR-2 OrderRelease/PersonInfoShipTo/ 30 199
@AddressLine2
Table 2–22 RMAHDR Record Type - Return Release Download Header Interface
Mapping
Selling and Fulfillment Foundation Field Start
DCS Parameter Parameter Size Position
SHIP-TO-ADDR-3 OrderRelease/PersonInfoShipTo/ 30 229
@AddressLine3
SHIP-TO-CITY OrderRelease/PersonInfoShipTo/ 30 259
@City
SHIP-TO-STATE-CODE OrderRelease/PersonInfoShipTo/ 2 289
@State
SHIP-TO-ZIP OrderRelease/PersonInfoShipTo/ 9 291
@ZipCode
SHIP-TO-COUNTRY-CODE OrderRelease/PersonInfoShipTo/ 5 300
@Country
CLAIM-NO N/A 20 305
PICKTICKET-NO N/A 20 325
REASON-CODE N/A 4 345
PRO-NUMBER N/A 20 349
REFERENCE-FIELD-1 OrderRelease/Order/ 20 369
@EnterpriseCode
REFERENCE-FIELD-2 N/A 20 389
REFERENCE-FIELD-3 N/A 20 409
REFERENCE-FIELD-4 N/A 20 429
REFERENCE-FIELD-5 N/A 20 449
REFERENCE-FIELD-6 N/A 20 469
REFERENCE-FLAG-1 N/A 1 489
REFERENCE-FLAG-2 N/A 1 490
REFERENCE-FLAG-3 N/A 1 491
REFERENCE-FLAG-4 N/A 1 492
52 Integration Guide
DCS Returns Interface
Table 2–22 RMAHDR Record Type - Return Release Download Header Interface
Mapping
Selling and Fulfillment Foundation Field Start
DCS Parameter Parameter Size Position
REFERENCE-FLAG-5 N/A 1 493
REFERENCE-FLAG-6 N/A 1 494
WMS-BUFFER Defaulted with blank spaces 30 495
Table 2–23 RMADTL Record Type - Return Release Download Detail Interface Mapping
Field Start
DCS Parameter Selling and Fulfillment Foundation Parameter Size Position
WHSE OrderRelease/@Receiving Node 5 1
RECORD-TYPE “RMADTL” 6 6
ACTION-CODE “CH” or “CL” based on modification or closure 2 12
RMA-NUMBER OrderRelease/Order/@OrderNo 15 14
RMA-RELEASE-NO OrderRelease/@ReleaseNo 3 29
RMA-LINE-NO OrderRelease/OrderLine/@PrimeLineNo 5 32
RMA-SUB-NO Default value ‘0’ 5 37
ITEM-ID OrderRelease/OrderLine/Item/@ItemID 24 42
PRODUCT-CLASS OrderRelease/OrderLine/Item/@ProductClass 2 66
QUALITY-STATUS Defaulted in INTERFACE_DEFAULTS 2 68
PACK-TYPE Defaulted in INTERFACE_DEFAULTS 4 70
EXPECTED-QUANTITY OrderRelease/OrderLine/OrderStatuses/OrderStatus/@ 9 74
StatusQuantity
RMA-REASON-CODE OrderRelease/OrderLine/@ReturnReason 4 83
DISPOSITION-CODE N/A 2 87
CREDIT-FLAG OrderRelease/Order/@TermsCode 1 89
Table 2–23 RMADTL Record Type - Return Release Download Detail Interface Mapping
Field Start
DCS Parameter Selling and Fulfillment Foundation Parameter Size Position
PSEUDO-SERIAL-NUMBER N/A 20 90
INVOICE-NUMBER N/A 20 110
PICKTICKET-NO N/A 20 130
Table 2–24 RMACMT Record Type - Return Release Download Comments Interface
Mapping
Field Start
DCS Parameter Release 5.0 Parameter Size Position
WHSE OrderRelease/@Receiving Node 5 1
RECORD-TYPE “RMACMT” 6 6
ACTION-CODE “CH” or “CL” based on modification or closure 2 12
RMA-NUMBER OrderRelease/Order/@OrderNo 15 14
RMA-RELEASE-NO OrderRelease/@ReleaseNo 3 29
RMA-LINE-NO OrderRelease/OrderLine/@PrimeLineNo or ‘0’ for 5 32
header level comment
RMA-SUB-NO Default value ‘0’ 5 37
54 Integration Guide
DCS Returns Interface
Table 2–24 RMACMT Record Type - Return Release Download Comments Interface
Mapping
Field Start
DCS Parameter Release 5.0 Parameter Size Position
COMMENT-SEQ-NO OrderRelease/Order/Instructions/ 5 42
Instruction/@SequenceNo
OR
OrderRelease/Orderline/Instructions/
Instruction/@SequenceNo
COMMENT-TYPE Maps to appropriate DCS Comment Type 2 47
COMMENT-TEXT OrderLine-> InstructionText 80 49
OR
Order -> InstructionText– ‘0’ as return line
number
Table 2–25 Return Receipt Upload Interface mapping for input XML to
createOrder API for blind return
Selling and Fulfillment
Foundation DCS
Order/DocumentType Default value for Return Document ‘0003’
Order/OrderDate RARHDR.RECEIVED-DATE
Order/OrderNo RARHDR.RMA_NUMBER
Order/OrderType Default Value ‘03’
Order/SCAC RARHDR. CARRIER-CODE
Table 2–25 Return Receipt Upload Interface mapping for input XML to
createOrder API for blind return
Selling and Fulfillment
Foundation DCS
Order/TermsCode RARHDR. FREIGHT-COLLECT
Order/PersonInfoShipTo/ RARHDR. CUSTOMER-NAME
FirstName
Order/PersonInfoShipTo/ RARHDR. ADDRESS-1
AddressLine1
Order/PersonInfoShipTo/ RARHDR. ADDRESS-2
AddressLine2
Order/PersonInfoShipTo/ RARHDR. ADDRESS-3
AddressLine3
Order/PersonInfoShipTo/ RARHDR. CITY
City
Order/PersonInfoShipTo/ RARHDR. STATE
State
Order/PersonInfoShipTo/ RARHDR. ZIP
ZipCode
Order/PersonInfoShipTo/ RARHDR. COUNTRY-CODE
Country
Order/PersonInfoBillTo/ FirstName RARHDR. CUSTOMER-NAME
Order/PersonInfoBillTo/ RARHDR. ADDRESS-1
AddressLine1
Order/PersonInfoBillTo/ RARHDR. ADDRESS-2
AddressLine2
Order/PersonInfoBillTo/ RARHDR. ADDRESS-3
AddressLine3
Order/PersonInfoBillTo/ RARHDR. CITY
City
56 Integration Guide
DCS Returns Interface
Table 2–25 Return Receipt Upload Interface mapping for input XML to
createOrder API for blind return
Selling and Fulfillment
Foundation DCS
Order/PersonInfoBillTo/ RARHDR. STATE
State
Order/PersonInfoBillTo/ RARHDR. ZIP
ZipCode
Order/PersonInfoBillTo/ RARHDR. COUNTRY-CODE
Country
Order/EnterpriseCode RARHDR.REFERENCE-1, if the value of
RARHDR.REFERENCE-1 is a valid
Organization with Enterprise role.
If the value of RARHDR.REFERENCE-1 is
blank, this becomes the primary enterprise
of the receiving node’s organization.
If the value of RARHDR.REFERENCE-1 is
not a valid enterprise code, the system
throws an error.
OrderLine/ReceivingNode RARHDR.WHSE
Order/Instructions/ RARCMT.COMMENT-TEXT (if
RARCMT.RMA-LINE-NO=0)
InstructionText
Order/Instructions/ RARCMT.COMMENT-TYPE (if
RARCMT.RMA-LINE-NO=0)
InstructionType
Order/Instructions/ RARCMT.SEQ_NUMBER (if
RARCMT.RMA-LINE-NO=0)
SequenceNo
OrderLine/PrimeLineNo RARDTL.RMA-LINE-NO
OrderLine/OrderedQuantity RARDTL.QUANTITY
OrderLine/Item/ItemID RARDTL.ITEM_ID
OrderLine/Item/ProductClass RARDTL.PRODUCT_CLASS
OrderLine/SubLineNo Default Value ‘0’
OrderLine/Item/UnitofMeasure Default Value ‘EACH’
OrderLine/ReturnReason RARDTL.RMA-REASON-CODE
Table 2–25 Return Receipt Upload Interface mapping for input XML to
createOrder API for blind return
Selling and Fulfillment
Foundation DCS
OrderLine/Instructions/Instruction RARCMT.COMMENT-TEXT
/InstructionText
OrderLine/Instructions/Instruction RARCMT.COMMENT-TEXT
/InstructionType
OrderLine/Instructions/Instruction RARCMT.SEQ-NUMBER
/SequenceNo
Table 2–26 Return Receipt Upload Interface mapping for input XML to
receiveOrder API for return receipt
Selling and Fulfillment Foundation DCS
Receipt/ReceiptNo RARHDR.WORKSHEET-NO
Receipt/EnterpriseCode RARHDR.REFERENCE-1 if the receipt
is not against a blind RMA. Otherwise
the enterprise code is same as that of
the blind RMA.
Receipt/ReleaseNo RARHDR.RMA-RELEASE-NO
ReceiptLine/InspectedBy RARDTL.USERID
ReceiptLine/InspectionComments RARDTL.RMA-REASON-CODE
ReceiptLine/DispositionCode RARDTL.DISPOSITION-CODE
ReceiptLine/InspectionDate RARHDR.RECEIVED-DATE
Receipt/OrderNo RARDTL.RMA-NUMBER
ReceiptLine/PrimeLineNo RARDTL.RMA-LINE-NO
ReceiptLine/Quantity RARDTL.QUANTITY
58 Integration Guide
DCS Returns Interface
Table 2–26 Return Receipt Upload Interface mapping for input XML to
receiveOrder API for return receipt
Selling and Fulfillment Foundation DCS
ReceiptLine/SerialNo RARDTL.SERIAL-NO
ReceiptLine/SubLineNo Default Value ‘1’
Q
Order Level
– ADD_LINE: A new line can be added to the Return Order. This
line is added in the created status. Based on the ‘Consolidate
New Releases’ setting in the ‘Reverse Logistics’ document type
level, this new line is added into the existing release during
the release process and the entire release is downloaded to
DCS.
Q
Order Line Level
– Modifications are not allowed in the Return Order line level.
Q
Order Release Level
– ADD_LINE: A new release line can be added.
– CANCEL: Sterling Commerce recommends that you disallow
cancellation once the return release is sent to DCS. This is
because the return receipt upload agent throws an exception if
the return is being received or has already been received in
DCS while it is getting cancelled on Selling and Fulfillment
Foundation.
– ADD_QUANTITY: A release line quantity can be added.
– The other modifications allowed are Add Note, Change BillTo,
Change Carrier, Change Carrier Account No, Change Carrier
Service Code, Change Freight Terms, Change Delivery Code,
Change MarkFor, Change ReqShipDate, and Change ShipTo.
Q
Receipt overage is not allowed in DCS. A new return line must be
created on Selling and Fulfillment Foundation and downloaded to DCS
upon release.
Q
Return Orders with Kit items should be created as blind returns on
DCS. They cannot be created for sales orders in Selling and
Fulfillment Foundation.
Q
Return Orders with Kit items should contain return lines for kit
components.
Q
Return Orders can be created for multiple sales orders and can be
received in DCS.
Q
The return receipt upload agent does not upload instructions to
Selling and Fulfillment Foundation if the instruction text is blank.
60 Integration Guide
DCS Returns Interface
Q
The configuration assumptions for DCS are:
Q
The creation of a return in DCS is enabled only for blind returns.
Q
For blind returns on DCS, a new function should be configured to
"Create Blind RMA" with RMA_Type='03' defaulted and
protected.This ensures that blind RMAs are always created with
RMA_Type = '03'.
Q
The ability to receive an overage item or a different item on a
return is disabled.
For more information about configuring DCS Inventory updates, see the
Yantra 5x Configuration Guide.
62 Integration Guide
3
Integrating with Stand-Alone Sterling WMS
64 Integration Guide
Uploading Receipts
66 Integration Guide
Uploading Receipts
7. Click the green connector that connects the XSL Translator and the
WebLogic JMS. The JMS Sender properties displays as shown.
8. In the Runtime tab, make sure that the "Commit of this message
depends on parent transaction" box is checked.
For field value descriptions, refer to the Service Builder Nodes and
Parameters appendix of the Selling and Fulfillment Foundation:
Application Platform Configuration Guide.
68 Integration Guide
Uploading Receipts
7. Click the green connector that connects the XSL Translator and the
WebLogic JMS. The JMS Sender properties displays as shown.
8. In the Runtime tab, make sure that the "Commit of this message
depends on parent transaction" box is checked.
For field value descriptions, refer to the Service Builder Nodes and
Parameters appendix of the Selling and Fulfillment Foundation:
Application Platform Configuration Guide.
70 Integration Guide
Uploading Receipts
For field value descriptions of the fields, refer to the Service Builder
Nodes and Parameters appendix of the Selling and Fulfillment
Foundation: Application Platform Configuration Guide.
72 Integration Guide
Uploading Receipts
For field value descriptions, refer to the Service Builder Nodes and
Parameters appendix of the Selling and Fulfillment Foundation:
Application Platform Configuration Guide.
74 Integration Guide
Uploading Inventory Changes at a Node
7. Click the green connector that connects the XSL Translator and the
WebLogic JMS. The JMS Sender properties displays as shown.
76 Integration Guide
Uploading Inventory Changes at a Node
8. In the Runtime tab, make sure that the "Commit of this message
depends on parent transaction" box is checked.
For field value descriptions, refer to the Service Builder Nodes and
Parameters appendix of the Selling and Fulfillment Foundation:
Application Platform Configuration Guide.
78 Integration Guide
Uploading the Inventory Snapshot
For field value descriptions, refer to the Service Builder Nodes and
Parameters appendix of the Selling and Fulfillment Foundation:
Application Platform Configuration Guide.
These generated XML files can be shared by both WMS and DOM
instances through NFS mounts or can also be transferred through FTP to
the DOM instance.
80 Integration Guide
Uploading the Inventory Snapshot
82 Integration Guide
4
Integrating with Third-Party Warehouse
Management Systems
84 Integration Guide
5
Integrating with the Loftware Print Server
and Label Manager
This chapter deals with the specific settings required for a successful
integration of the Sterling WMS with the Loftware Print Server (LPS) and
Loftware Label Manager (LLM), and the configuration of custom prints
using the same.
For more information about installing and configuring the Loftware Print
Server, see the Selling and Fulfillment Foundation: Installation Guide.
For more information about server requirements and installation
guidelines of Loftware Label Manager, see the Loftware Print Server
User's Guide and Loftware Label Manager User's Guide.
For more information about configuring printers, see the Sterling
Warehouse Management System: Configuration Guide.
Sterling Commerce supports all capabilities of the Loftware Printer
Server, including cluster installations. For specific details, consult
http://www.loftware.com.
The Sterling WMS provides the following Standard Labels:
Q
UCC 128 Container Shipping Label
Q
VICS Bill Of Lading
Q
Packing Slip
Q
Batch Sheets
Q
Item Pick Batch Sheet
Q
Cart Manifest Batch sheet
Q
Count Sheet
86 Integration Guide
Table 5–1 Services provided in the Sterling WMS
Service Name Event Description
PrintTaskList Reprint Request from Prints a BatchSheet
console (CartManifest or
ItemPickBatch Sheet)
or a CountSheet, based
on the ActivityGroup
for the Batch. If the
Batch belongs to the
ActivityGroup COUNT,
the CountSheet is
printed.
PrintLoadBOL RECEIVE_IN_TRANSIT_ Prints a VICS BOL for
UPDATES.ON_SUCCESS Load
PrintWave PRINT_WAVE.ON_ Prints PickList
SUCCESS (BatchSheets),
Container Labels and
pre-generates
PackLists for
Shipments in the Wave
PrintPackList ADD_TO_CONTAINER.ON_ Prints a PackList
SHIPMENT_PACK_
COMPLETE
PickListPrint PRINT_PICKLIST.ON_ Prints PackLists for
SUCCESS Shipments in the
PickList
PrintTaskSheets COMPLETE_TASK.TASK_ Creates a Batch for
COMPLETED successor Tasks of the
completed task and
Prints a BatchSheet for
the same
PrintMoveTickets RELEASE_MOVE_ Creates a Batch for the
REQUEST.ON_SUCCESS MoveRequest and
prints a BatchSheet for
the same
PrintPostPickContainers POST_PICK_ Prints UCC-128
CONTAINERIZATION.ON_ Shipping Labels for
SUCCESS containers created as
part of Post Pick
Containerization
The Loftware Label Manager, used for designing labels, may be installed
on any compatible PC. For more information about server requirements
and installation guidelines, see Loftware Print Server User's Guide.
88 Integration Guide
Designing Custom Labels
Q
The last page of the label file created should be named in the format
<filename>_Last.lwl
The first page of the label and the last page of the label are always single
pages. The middle page, on the other hand, is used n number of times in
accordance with the total number of label pages to be printed.
For example, if a label print is six pages, the first page and last page
make two pages, and the middle page (<filename>_Mid.lwl) is
repeated four times.
You can print a label in single-page or multi-page format depending on
the number of lines in the label. If the number of lines can be
accommodated on the first page itself, you can print the label in
single-page format. For this, you must create a new label format
(<filename>_SinglePage.lwl). For more information about creating a
label format, see the Selling and Fulfillment Foundation: Application
Platform Configuration Guide. After you create the new label format, the
print service calls the xsl file to check the number of lines in the label.
Depending on the number of lines, a single-page or multi-page label is
printed. For example, the LTL Manifest Label can be printed in
single-page or multi-page format.
After you create the custom label, copy it to Runtime > Template > Label
> Extn directory.
<parameter1>
This should be the file name of the .tab file generated when the label
(.lwl) file is saved in Loftware Label Manager.
The full path, excluding the extension should be specified.
<parameter2>
This should be the file name of the XML file generated by the tool.
The full path, excluding the extension should be specified.
For example, to generate a Mapping XML for the label BOL.lwl, the .tab
file name is BOL.tab
In this example, the command used to invoke the tool is:
java -classpath platform_
afc.jar;log4j-1.2.12.jar;xercesImpl.jar
com.yantra.tools.labelxmlmapping.GenLabelMappingXML
<path-of-the-file>/BOL <path-of-file>/BOLMap
90 Integration Guide
Designing Custom Labels
<LabelField
Binding="/Shipment/SellerOrganization/CorporatePersonInfo/@AddressLine2"
LabelFieldName="FromAddressLine2" RepeatingElement=""/>
<LabelField
Binding="concat(/Shipment/SellerOrganization/CorporatePersonInfo/@FirstName,
' ',/Shipment/SellerOrganization/CorporatePersonInfo/@LastName)"
LabelFieldName="FromName" RepeatingElement="" DataType="Text"/>
<LabelField
Binding="/Shipment/SellerOrganization/CorporatePersonInfo/@City"
LabelFieldName="FromCity" RepeatingElement="" DataType="Text"/>
<LabelField
Binding="/Shipment/SellerOrganization/CorporatePersonInfo/@State"
LabelFieldName="FromState" RepeatingElement="" DataType="Text"/>
<LabelField
Binding="/Shipment/SellerOrganization/CorporatePersonInfo/@Country"
LabelFieldName="FromCountry" RepeatingElement="" DataType="Text"/>
<LabelField
Binding="/Shipment/SellerOrganization/CorporatePersonInfo/@ZipCode"
LabelFieldName="FromZip" RepeatingElement="" DataType="Text"/>
<LabelField Binding="/Shipment/@ShipmentNo" LabelFieldName="ShipmentNo"
RepeatingElement="" DataType="Text"/>
<LabelField Binding="/Shipment/@ActualShipmentDate"
LabelFieldName="ShipmentDate" RepeatingElement="" DataType="Date"/>
<LabelField Binding="concat(/Shipment/ToAddress/@FirstName,'
',/Shipment/ToAddress/@LastName)" LabelFieldName="ToName"
RepeatingElement="" DataType="Text"/>
<LabelField Binding="/Shipment/ToAddress/@AddressLine1"
LabelFieldName="ToAddressLine1" RepeatingElement="" DataType="Text"/>
<LabelField Binding="/Shipment/ToAddress/@AddressLine2"
LabelFieldName="ToAddressLine2" RepeatingElement="" DataType="Text"/>
<LabelField Binding="/Shipment/ToAddress/@City" LabelFieldName="ToCity"
RepeatingElement="" DataType="Text"/>
<LabelField Binding="/Shipment/ToAddress/@State"
LabelFieldName="ToState" RepeatingElement="" DataType="Text"/>
<LabelField Binding="/Shipment/ToAddress/@ZipCode"
LabelFieldName="ToZip" RepeatingElement="" DataType="Text"/>
<LabelField Binding="/Shipment/ToAddress/@Country"
LabelFieldName="ToCountry" RepeatingElement="" DataType="Text"/>
<LabelField
Binding="concat(/Shipment/BillingInformation/AlternateParty/@FirstName,'
',/Shipment/BillingInformation/AlternateParty/@LastName)"
LabelFieldName="BillToName" RepeatingElement="" DataType="Text"/>
<LabelField
Binding="/Shipment/BillingInformation/AlternateParty/@AddressLine1"
LabelFieldName="BillToAddressLine1" RepeatingElement="" DataType="Text"/>
<LabelField
Binding="/Shipment/BillingInformation/AlternateParty/@AddressLine2"
LabelFieldName="BillToAddressLine2" RepeatingElement="" DataType="Text"/>
<LabelField Binding="/Shipment/BillingInformation/AlternateParty/@City"
LabelFieldName="BillToCity" RepeatingElement="" DataType="Text"/>
<LabelField Binding="/Shipment/BillingInformation/AlternateParty/@State"
LabelFieldName="BillToState" RepeatingElement="" DataType="Text"/>
<LabelField
Binding="/Shipment/BillingInformation/AlternateParty/@ZipCode"
LabelFieldName="BillToZip" RepeatingElement="" DataType="Text"/>
<LabelField
Binding="/Shipment/BillingInformation/AlternateParty/@Country"
LabelFieldName="BillToCountry" RepeatingElement="" DataType="Text"/>
<LabelField Binding="/Shipment/Carrier/@ScacDesc" LabelFieldName="SCAC"
RepeatingElement="" DataType="Text"/>
<LabelField Binding="/Shipment/BillingInformation/@ShipmentChargeType"
LabelFieldName="FreightTerms" RepeatingElement="" DataType="Text"/>
<LabelField Binding="concat(/Shipment/MarkForAddress/@FirstName,'
',/Shipment/MarkForAddress/@LastName)" LabelFieldName="MarkFor"
RepeatingElement="" DataType="Text"/>
<LabelField
Binding="/Shipment/Instructions/Instruction[@InstructionType='SHIP']/@Instru
ctionText" LabelFieldName="SpecialInstruction" RepeatingElement=""
DataType="Text"/>
<LabelField
Binding="/Shipment/ShipmentLines/ShipmentLine/OrderLine/@CustomerPONo"
LabelFieldName="CustomerPONo" RepeatingElement="ShipmentLine"
DataType="Text"/>
<LabelField Binding="/Shipment/ShipmentLines/ShipmentLine/@ItemID"
LabelFieldName="ItemId" RepeatingElement="" DataType="Text"/>
<LabelField
Binding="/Shipment/ShipmentLines/ShipmentLine/OrderLine/Item/@CustomerItem"
LabelFieldName="CustItemId" RepeatingElement="ShipmentLine"
DataType="Text"/>
<LabelField
Binding="/Shipment/ShipmentLines/ShipmentLine/OrderLine/Item/@ItemDesc"
LabelFieldName="ItemDesc" RepeatingElement="ShipmentLine" DataType="Text"/>
<LabelField
Binding="/Shipment/ShipmentLines/ShipmentLine/@UnitOfMeasure"
LabelFieldName="UOM" RepeatingElement="ShipmentLine" DataType="Text"/>
<LabelField Binding="/Shipment/ShipmentLines/ShipmentLine/@OrderedQty"
LabelFieldName="OrdQty" RepeatingElement="ShipmentLine" DataType="Text"/>
<LabelField Binding="/Shipment/ShipmentLines/ShipmentLine/@Quantity"
LabelFieldName="Quantity" RepeatingElement="ShipmentLine" DataType="Text"/>
<LabelField
92 Integration Guide
Designing Custom Labels
Binding="/Shipment/ShipmentLines/ShipmentLine/@BackOrderedQty"
LabelFieldName="BOQty" RepeatingElement="ShipmentLine" DataType="Text"/>
<LabelField Binding="" LabelFieldName="Line" RepeatingElement=""
Sequence="Y" DataType="Text"/>
<RepeatingFields>
<RepeatingField LabelFieldName="CustomerPONo" MaxFirstPage="12"
MaxLastPage="12" MaxMidPage="12"/>
<RepeatingField LabelFieldName="ItemId" MaxFirstPage="12"
MaxLastPage="12" MaxMidPage="12"/>
<RepeatingField LabelFieldName="CustItemId" MaxFirstPage="12"
MaxLastPage="12" MaxMidPage="12"/>
<RepeatingField LabelFieldName="ItemDesc" MaxFirstPage="12"
MaxLastPage="12" MaxMidPage="12"/>
<RepeatingField LabelFieldName="UOM" MaxFirstPage="12"
MaxLastPage="12" MaxMidPage="12"/>
<RepeatingField LabelFieldName="OrdQty" MaxFirstPage="12"
MaxLastPage="12" MaxMidPage="12"/>
<RepeatingField LabelFieldName="Quantity" MaxFirstPage="12"
MaxLastPage="12" MaxMidPage="12"/>
<RepeatingField LabelFieldName="BOQty" MaxFirstPage="12"
MaxLastPage="12" MaxMidPage="12"/>
<RepeatingField LabelFieldName="Line" MaxFirstPage="12"
MaxLastPage="12" MaxMidPage="12"/>
</RepeatingFields>
</LabelFieldMap>
The map file (XML) generated for a label (LWL) must be edited to
associate the XML data to the fields required on the label.
Binding:
Each LabelField has to be associated with a XPath Binding. This Binding denotes the address of a part of an XML document.
3. Sequence:
Sequence="Y" setting is to be used in instances where a labelfield
represents a sequence of numbers. For example, serial numbers in a
table.
4. DataType:
Set up the relevant DataType for the LabelField. Valid values are
Text, Date, and DateTime.
5. Repeating Element:
Specify the RepeatingElement for the XPath Binding.
94 Integration Guide
Defining Custom Print Services
For more information about configuring Service Details, see the Selling
and Fulfillment Foundation: Application Platform Configuration Guide.
The Input XML to the service definition is transformed into the input of
the PrintDocumentSet() API using an XSL Translator.
For more information about the input to PrintDocumentSet() API and
the description of the XML attributes, refer to the JavaDocs.
The following is an example of a typical XSL that generates the input to
the PrintDocumentSet() API:
96 Integration Guide
Defining Custom Print Services
<xsl:attribute name="SellerOrganizationCode">
<xsl:text>xml:/Shipment/@SellerOrganizationCode</xsl:text>
</xsl:attribute>
</LabelPreference>
</xsl:when>
</xsl:choose>
<KeyAttributes>
<KeyAttribute>
<xsl:attribute name="Name"><xsl:text>ShipmentKey</xsl:text></xsl:attribute>
</KeyAttribute>
</KeyAttributes>
<InputData>
<xsl:attribute name="FlowName">
<xsl:text>GetPackListData</xsl:text>
</xsl:attribute>
<Shipment>
<xsl:choose>
<xsl:when test="name()="Print"">
<xsl:copy-of select="Shipment/@*" />
</xsl:when>
<xsl:when test="name()="Shipment"">
<xsl:copy-of select="@*" />
</xsl:when>
</xsl:choose>
</Shipment>
<Template>
<Api Name="getShipmentDetails">
<Template>
<Shipment>
<SellerOrganization>
<CorporatePersonInfo/>
</SellerOrganization>
<Carrier/>
<MarkForAddress/>
<BillingInformation>
<AlternateParty/>
</BillingInformation>
<Instructions>
<Instruction/>
</Instructions>
<FromAddress/>
<ToAddress/>
<ShipmentLines>
<ShipmentLine CountryOfOrigin="" FifoNo="" ItemDesc="" ItemID=""
OrderHeaderKey="" OrderLineKey="" OrderNo="" OrderReleaseKey=""
98 Integration Guide
Defining Custom Print Services
</xsl:stylesheet>
The Input XML to the above XSL translator should belong to either of the
following formats:
<Shipment ShipmentKey=""/>
OR
<Print><Shipment ShipmentKey=""/><LabelPreference
EnterpriseCode=""/><PrinterPreference UserId=""
UsergroupId=""/></Print>
The former input XML is passed when the service is invoked from an
event, while the latter is passed when the service is invoked from the
console (UI).
The following is an example of the XML generated after the XSL
Translation using the above mentioned XSL:
<KeyAttribute Name="ShipmentKey"/>
</KeyAttributes>
<InputData FlowName="GetPackListData">
<Shipment ShipmentKey=""/>
<Template>
<Api Name="getShipmentDetails">
<Template>
<Shipment ShipmentKey="" ShipmentNo="" ActualShipmentDate=""
ExpectedShipmentDate="">
<SellerOrganization OrganizationCode="">
<CorporatePersonInfo AddressLine1="" AddressLine2="" FirstName=""
MiddleName="" LastName="" City="" State="" Country="" ZipCode="" />
</SellerOrganization>
<Carrier Scac="" ScacDesc=""/>
<MarkForAddress/>
<BillingInformation ShipmentChargeType=""/>
<Instructions>
<Instruction InstructionType="" InstructionText=""/>
</Instructions>
<ToAddress/>
<ShipmentLines>
<ShipmentLine ItemDesc="" ItemID="" OrderHeaderKey="" OrderLineKey=""
OrderNo="" OrderReleaseKey="" PrimeLineNo="" Quantity="" ReleaseNo=""
ShipmentKey="" ShipmentLineKey="" ShipmentLineNo="" SubLineNo=""
UnitOfMeasure="" BackOrderedQty="" ShipmentSubLineNo="">
<Order OrderHeaderKey="" OrderNo="">
<PersonInfoBillTo AddressLine1="" AddressLine2="" FirstName="" MiddleName=""
LastName="" City="" State="" Country="" ZipCode="" />
</Order>
<OrderLine CustomerPONo="" OrderLineKey="" OrderedQty=""
OriginalOrderedQty="" Status="" StatusQuantity="" SubLineNo="" >
<Item CustomerItem=""/>
<OrderStatuses>
<OrderStatus OrderLineKey="" OrderReleaseStatusKey="" Status=""
StatusQty="" TotalQuantity=""/>
</OrderStatuses>
</OrderLine>
</ShipmentLine>
</ShipmentLines>
<ShipNode NodeOrgCode=""/>
</Shipment>
</Template>
</Api>
</Template>
</InputData>
</PrintDocument>
</PrintDocuments>
Integrating with the Loftware Print Server and Label Manager 101
Defining Custom Print Services
For more information about configuring Service Details, see the Selling
and Fulfillment Foundation: Application Platform Configuration Guide.
The GetPackListData service calls the GetShipmentDetails() API and
the output is transformed using the XSL Translator.
The XSL translator (as reproduced below) calculates the backordered
quantity for the shipment lines returned by the GetShipmentDetails()
API:
Integrating with the Loftware Print Server and Label Manager 103
Defining Custom Print Services
<xsl:value-of select="$qty"/>
</xsl:attribute>
<xsl:copy-of select="@*"/>
<xsl:copy-of select="OrderLine"/>
</ShipmentLine>
</xsl:for-each>
</ShipmentLines>
</Shipment>
</xsl:template>
</xsl:stylesheet>
The Parcel Carrier Adapters (Carrier Adapter) manages all the carrier
integration-related functions of Selling and Fulfillment Foundation. Selling
and Fulfillment Foundation interfaces with the Carrier Adapter to use its
carrier-integration functions.
The Carrier Adapter is regularly updated with the latest carrier data, such
as rates and special services, and can act as a centralized
carrier-integration database and business rules manager. The Carrier
Adapter helps you to quickly meet the changing requirements initiated by
both carriers and customers, in the most efficient way.
The Carrier Adapter has a data-driven design. The functionality is defined
in terms of the relations between data elements stored in the database.
Carriers having similar functionality can be incorporated into an
installation with minimal engineering effort.
The Carrier Adapter is now integrated into Selling and Fulfillment
Foundation. For more information about the Carrier Adapter and how to
configure it, see the Parcel Carrier: Adapter Guide.
Q
deleteCarton API
Q
closeManifest API
Table 6–2 Mapping to the Carrier Adapter shipCarton API (Input XML)
Field Name Comments Platform
UPSPLD
Carrier Required YFS_SHIPMENT.scac
PackageLevelDetail The Package Level Detail Record (0100) -
is written for every package shipped. This
is a mandatory record for both domestic
and international shipments.
ManifestNumber Required YFS_MANIFEST.manifest_no
(open manifest as obtained
by packShipment API for a
given shipnode and carrier)
ShipId Required YFS_SHIPMENT_
CONTAINER.container_no.
PickupDate Required YFS_MANIFEST.manifest_date
ShipperAccountNumber Required YFS_MANIFEST.shipper_
account_no
BookNumber Required YFS_MANIFEST.pickup_
summary_no (substring 0-7)
PageNumber Required YFS_MANIFEST.pickup_
summary_no (substring
8-10)
ShipmentNumber Required YFS_SHIPMENT.shipment_no
PackageTrackingNumber Required <spaces>
SPFVersion Required Default 0505
Acctnumber Conditional Computed based on YFS_
FREIGTH_TERMS.charges_
paid_by. It can be YFS_
SHIPMENT.Custcarrier_
Account_No/YFS_SCAC_
Ex.account1.
Table 6–2 Mapping to the Carrier Adapter shipCarton API (Input XML)
Field Name Comments Platform
CompanyName Required YFS_PERSON_INFO.company
corresponding to YFS_
SHIPMENT.to_address_key.
ConsigneeAttn Conditional YFS_PERSON_INFO.first_
name + YFS_PERSON_
INFO.middle_name + YFS_
PERSON_INFO.last_name
corresponding to YFS_
SHIPMENT.to_address_key.
CAddr1 Required YFS_PERSON_INFO.address_
line1 corresponding to YFS_
SHIPMENT.to_address_key.
CAddr2 Optional YFS_PERSON_INFO.address_
line2 corresponding to YFS_
SHIPMENT.to_address_key.
CAddr3 Optional YFS_PERSON_INFO.address_
line3 corresponding to YFS_
SHIPMENT.to_address_key.
CCity Required YFS_PERSON_INFO.city
corresponding to YFS_
SHIPMENT.to_address_key.
CStateProv Conditional YFS_PERSON_INFO.state
corresponding to YFS_
SHIPMENT.to_address_key.
CPostalCode Conditional YFS_PERSON_INFO.zip_code
corresponding to YFS_
SHIPMENT.to_address_key.
CPhone Conditional YFS_PERSON_INFO.day_
phone corresponding to YFS_
SHIPMENT.to_address_key.
ShipmentChgType Required Computed based on YFS_
FREIGHT_TERMS.charges_
paid_by and corresponding
YFS_SCAC_Ex entry. Possible
values are COL,TPB, PRE.
CWTInd Conditional Set to '0' (zero) to indicate
Not HunderedWeight.
Table 6–2 Mapping to the Carrier Adapter shipCarton API (Input XML)
Field Name Comments Platform
ServiceType Required YFS_SCAC_AND_
SERVICE.electronic_code
corresponding to YFS_
SHIPMENT.scac and YFS_
SHIPMENT.carrier_service_
code.
Packagetype Required "02" to indicate Package.
DeliveryZone Optional <spaces>
Actualweight Required YFS_SHIPMENT_
CONTAINER.container_gross_
weight after applying the
carrier locale weight UOM.
PkgpublishedDimWt Required Computed
UOMWeight Optional Weight UOM of the Ship Node
UOMDim UOM Dim Dimension UOM of the Ship
Node
CODAmount Required 0
CODFundsInd Conditional <spaces>
Currencycode Required YFS_SHIPMENT.currency.
CallTag_ARSInd Required 0 - to indicate no call tag.
Calltag_ARSSchedulePickDate Optional <spaces>
MerchandiseDescription Conditional <spaces>
SatDeliveryInd Required "0" for not opting for this
service.
SaturdayPickupInd Required "0" for not opting for this
service.
OversizePackageInd Required YFS_SHIPMENT_
CONTAINER.oversized_flag is
Y, then indicator is passed as
1, or else 0.
DeclaredValueInsurance Required YFS_SHIPMENT_
CONTAINER.declared_value
Table 6–2 Mapping to the Carrier Adapter shipCarton API (Input XML)
Field Name Comments Platform
ResInd Required YFS_PERSON_INFO.company
corresponding to YFS_
SHIPMENT.to_address_key is
nonblanks, it is assumed to
be 0 to indicate commercial
or else 1 for residential.
DCISType Conditional <spaces>
CustomerRefNumberType1 Optional <spaces>
CustomerRefNumber1 Optional <spaces>
CustomerRefNumberType2 Optional <spaces>
CustomerRefNumber2 Optional <spaces>
ShipmentReferenceNoType1 Optional <spaces>
ShipmentReferenceNo1 Optional <spaces>
ShipmentReferenceNoType2 Optional <spaces>
ShipmentReferenceNo2 Optional <spaces>
CODControlNumber Optional <spaces>
CallTag_ARSNumber Optional <spaces>
CODInd Required <spaces>
CODCurrencycode Conditional <spaces>
IncrementalPldInd Required <spaces>
DocInd Required Default to ‘3’ to indicate non
document/package.
ShipperEIN Optional <spaces>
ShipperCountry Required YFS_PERSON_INFO.country
corresponding to YFS_
SHIPMENT.shipnode_key's
YFS_SHIP_NODE.shipnode_
address_key.
SenderName Optional <spaces>
ConsigneeTagID Optional <spaces>
Table 6–2 Mapping to the Carrier Adapter shipCarton API (Input XML)
Field Name Comments Platform
ConsigneeCountry Required YFS_PERSON_INFO.country
corresponding to YFS_
SHIPMENT.to_address_key.
CalculatedRatesInd Required <spaces>
SourceTypeCode Required Default to ‘20’ to indicate
host access.
AccessorialRecord AccessorialRecord (0200) is valid for both
domestic and international shipments. This
record is written only when UPS special
services are used.
ShipperCreditCardNo Required <spaces>
ShipperCreditCardExpDate Required <spaces>
AdditionalHandlingInd Required Default to ‘0'.
ExtendedDestInd Required <spaces>
HazMat Required YFS_SHIPMENT.hazardous
material is Y, then indicator is
1, else 0.
HoldForPickupInd Required Default to '0' (do not hold for
pickup).
ModifyInd Required Default to ‘0’.
OCAIndicator Required Default to ‘0’.
VoidInd Required 0
PackageLength Required YFS_SHIPMENT_
CONTAINER.container_length
PackageWidth Required YFS_SHIPMENT_
CONTAINER.container_width
PackageHeight Required YFS_SHIPMENT_
CONTAINER.container_height
SpecialInstructions Optional <spaces>
Table 6–2 Mapping to the Carrier Adapter shipCarton API (Input XML)
Field Name Comments Platform
VerbalConfirmationName Conditional YFS_PERSON_INFO.first_
name + YFS_PERSON_
INFO.middle_name + YFS_
PERSON_INFO.last_name
corresponding to YFS_
SHIPMENT.to_address_key.
VerbalConfirmationPhone Conditional YFS_PERSON_INFO.day_
phone corresponding to YFS_
SHIPMENT.to_address_key.
EarliestDeliveryTime Optional <spaces>
ShipmentCreditCardNumber Conditional <spaces>
ShipmentCreditCardExpDate Conditional <spaces>
ConsigneeNumber Optional <spaces>
ConsigneeCreditCardNo Required <spaces>
ConsigneeCreditCardExpDate Required <spaces>
DCISNumber Optional <spaces>
ConsigneeFaxDestinationInd Optional <spaces>
ConsigneeFax Optional <spaces>
ExperssCODTrackingNumber Required <spaces>
CustomerReferenceNumberTy Optional <spaces>
pe3
CustomerReferenceNumber3 Optional <spaces>
CustomerReferenceNumberTy Optional <spaces>
pe4
CustomerReferenceNumber4 Optional <spaces>
CustomerReferenceNumberTy Optional <spaces>
pe5
CustomerReferenceNumber5 Optional <spaces>
PackageTrackingNumber Required YFS_Shipment_
Container.Tracking_No
Table 6–2 Mapping to the Carrier Adapter shipCarton API (Input XML)
Field Name Comments Platform
AlternatePartyRecord AlternateParty Record (0300) is valid for
both domestic and international
shipments. For domestic, this record is
written only when freight term is 'Third
Party Billing'. For International shipments,
this record is written for Importer and
Exporter Address.
AlternatePartyType Required For domestic shipments: This
field is set to '03'/'04'.
For international shipments:
This field is set to '02' always.
ID_AcctNumber Conditional YFS_SCAC_EX.account1
PODReplyType Conditional <spaces>
APCompanyName Required YFS_PERSON_INFO.company
corresponding to YFS_
SHIPMENT.enterprise_code's
billing_address_key.
APAttention Conditional YFS_PERSON_INFO.first_
name + YFS_PERSON_
INFO.last_name
corresponding to YFS_
SHIPMENT.enterprise_code's
billing_address_key.
APAddr1 Required YFS_PERSON_INFO.address_
line1 corresponding to YFS_
SHIPMENT.enterprise_code's
billing_address_key.
APAddr2 Optional YFS_PERSON_INFO.address_
line2 corresponding to YFS_
SHIPMENT.enterprise_code's
billing_address_key.
APAddr3 Optional YFS_PERSON_INFO.address_
line3 corresponding to YFS_
SHIPMENT.enterprise_code's
billing_address_key.
APCity Required YFS_PERSON_INFO.city
corresponding to YFS_
SHIPMENT.enterprise_code's
billing_address_key.
Table 6–2 Mapping to the Carrier Adapter shipCarton API (Input XML)
Field Name Comments Platform
APStateProv Conditional YFS_PERSON_INFO.state
corresponding to YFS_
SHIPMENT.enterprise_code's
billing_address_key.
Note: This field value can
only contain a maximum of 5
characters.
APPostalCode Conditional YFS_PERSON_INFO.zip_code
corresponding to YFS_
SHIPMENT.enterprise_code's
billing_address_key.
APcountry Required YFS_PERSON_INFO.country
corresponding to YFS_
SHIPMENT.enterprise_code's
billing_address_key. If
International it is hardcoded
to 'US'.
Filler1 Required
APPhone Conditional YFS_PERSON_INFO.day_
phone_no corresponding to
YFS_SHIPMENT.enterprise_
code's billing_address_key
APFaxDestInd Conditional <spaces>
APFax Optional <spaces>
LangCode Optional <spaces>
CreditCardNo Required <spaces>
CreditCardExpDate Required <spaces>
TaxId Optional <spaces>
AddrType Required <spaces>
PackageTrackingNumber Required YFS_Shipment_
Container.Tracking_No
AdvisoryInformationRecor AdvisoryInformationRecord (0400) is
d required for E-mail or Fax Shipment
Notification.
AdvisoryInfoLevel Required Default to 'P'.
Table 6–2 Mapping to the Carrier Adapter shipCarton API (Input XML)
Field Name Comments Platform
SNFaxDestInd1 Conditional If YFS_PERSON_INFO.day_
fax_no != "" set this field to
0. US, PR, CA, and VI
Fax/Phone only 1 Fax/Phone
to all other countries.
SNFaxNumber1 Conditional YFS_PERSON_INFO.day_fax_
no corresponding to YFS_
SHIPMENT.to_address_key.
SNLangCode Optional <spaces>
SNCompName1 Optional YFS_PERSON_INFO.company
corresponding to YFS_
SHIPMENT.to_address_key.
SNAttnName1 Conditional YFS_PERSON_INFO.first_
name + YFS_PERSON_
INFO.middle_name + YFS_
PERSON_INFO.last_name
corresponding to YFS_
SHIPMENT.to_address_key.
SNContactPhone1 Conditional YFS_PERSON_INFO.day_
phone corresponding to YFS_
SHIPMENT.to_address_key.
SNFaxDestInd2 Conditional <spaces>
SNFaxNumber2 Conditional <spaces>
SNLangCode2 Optional <spaces>
SNCompanyName2 Optional <spaces>
SNAttnName2 Conditional <spaces>
SNContactPhone2 Conditional <spaces>
AltrofileAccessNumber Required <spaces>
SNTypeDestination1 Required <spaces>
SNEmailAddrDest1 Conditional YFS_PERSON_INFO.email_id
corresponding to YFS_
SHIPMENT.to_address_key.
SNTypeDestination2 Required Set to ‘0’
SNEmailAddrDest2 Conditional <spaces>
Table 6–2 Mapping to the Carrier Adapter shipCarton API (Input XML)
Field Name Comments Platform
SNMemo Optional <spaces>
PackageTrackingNumber Required YFS_Shipment_
Container.Tracking_No
InternationalRecord InternationalRecord (0500) is required if
Importer, Exporter, Shipper To Consignee,
or Commodity information is provided and
whenever shipper and consignee countries
are not the same. This record is written
once for one shipment. If a shipper has 3
packages, only one 0500 record is written,
whereas three 0100 records are written.
RecordType Required 0500
InvoiceDate Optional YFS_MANIFEST.manifest_date
(manifest no from YFS_
SHIPMENT).
WaybillPrintInd Conditional 0
InvoiceLineTotals Required YFS_CONTAINER_
DETAILS.quantity * YFS_
ORDER_LINE * unit_price (for
all lines in the container).
InvoiceCurrencyCode Conditional YFS_SHIPMENT.currency
ShipmentInsuranceDeclaredVa Required YFS_MANIFEST.manifest_date
lue (manifest no from YFS_
SHIPMENT).
ConsolidatedClearQty Required 0
UltimateDestCountry Conditional YFS_PERSON_INFO.country
corresponding to YFS_
SHIPMENT.to_address_key.
Filler <spaces>
SEDCode Optional <spaces>
ShipmentSEDCASNum Optional <spaces>
InvoiceNumber Optional YFS_SHIPMENT.shipment_no
PONumber Optional <spaces>
Table 6–2 Mapping to the Carrier Adapter shipCarton API (Input XML)
Field Name Comments Platform
DescriptionOfGoods Required YFS_ITEM.nmfc_code. Item_
Id taken from CONTAINER_
DETAILS.item_id with YFS_
SHIPMENT_
CONTAINER.container_no
(leadpackage) as criteria.
SpecialInstructions Optional <spaces>
PartiesToTrans Conditional <spaces>
TermsOfShipment Optional <spaces>
PaymentTerms Optional <spaces>
Filler <spaces>
FreightCharges Required 0
InsuranceCharges< Required 0
DiscountRebate Required 0
OtherCharges Required 0
WaybillNumber/BrokerageID Conditional YFS_SHIPMENT.shipment_no
COCode Optional <spaces>
OtherDocCode Optional <spaces>
ReasonForExport Optional <spaces>
InvoiceSubTotal Required <spaces>
TotalInvoiceAmount Required <spaces>
BrokerCode Optional <spaces>
DestinationControl Conditional <spaces>
ShipmentCommodityOrigin Conditional <spaces>
Filler3 Required
PackageTrackingNumber Required <spaces>
Table 6–2 Mapping to the Carrier Adapter shipCarton API (Input XML)
Field Name Comments Platform
CommodityRecord CommodityRecord (0600) contains
commodity information that is used for
rating and customs clearance purposes. It
is required if the shipment travels within
the European Union and contains “Goods
Not in Free Circulation”. One 0600 record
is written for each line in the shipper. If a
shipper on the Sterling WMS has 4 records
in the YFS_SHIPMENT_DTL table, four
0600 records are written.
RecordType Required 0600
InvoiceLineNumber Required YFS_SHIPMENT_LINE.prime_
line_no for the corresponding
YFS_CONTAINER_DETAILS
record.
CommodityCode Optional YFS_ITEM.harmonized_code
of YFS_CONTAINER_
DETAILS.item_id (catalog org
and uom).
PartNumber Optional YFS_ITEM.item_id of YFS_
CONTAINER_DETAILS.item_id
(catalog org and uom).
LineOriginCountry Required YFS_ITEM.country_of_origin
of YFS_CONTAINER_
DETAILS.item_id (catalog org
and uom).
LineCurrencyCode Optional YFS_SHIPMENT.currency
ECCN Optional YFS_ITEM.eccn_no of YFS_
CONTAINER_DETAILS.item_id
(catalog org and uom).
LineUnitAmtPrice Required YFS_ORDER_LINE.line_price
of YFS_CONTAINER_
DETAILS.order_line_key *
YFS_CONTAINER_
DETAILS.quantity. If its
shipment container, we
compute by getting item
object from shipment and
shipment container.
Table 6–2 Mapping to the Carrier Adapter shipCarton API (Input XML)
Field Name Comments Platform
LineQuantity Required sum(YFS_CONTAINER_
DETAIL.quantity) for every
unique item.
LineQtyUOM Required YFS_CONTAINER_
DETAILS.uom
LineLicenseInfo Conditional YFS_SHIPMENT_
CONTAINER.export_license_
no
LineLicenseExpDate Conditional YFS_SHIPMENT_
CONTAINER.export_license_
exp_date
LineMerchDesc1 Required YFS_ITEM.item_desc of YFS_
CONTAINER_DETAILS.item_id
(catalog org and uom).
LineMerchDesc2 Optional <spaces>
LineMerchDesc3 Optional <spaces>
CertOfOriginNo Optional YFS_SHIPMENT.shipment_no
CertOfOriginCode Conditional <spaces>
AgreementType Optional <spaces>
CommodityRemarks Optional <spaces>
QuantityScheduledUnits Conditional YFS_CONTAINER_
DETAIL.quantity
Marks&Numbers Optional <spaces>
CommodityWeight Required YFS_ORDER_LINE.item_
weight of YFS_CONTAINER_
DETAILS.order_line_key *
YFS_CONTAINER_
DETAILS.quantity. If its
shipment conatainer, we
compute by getting the item
object from shipment and
shipment container.
NumberOfPackagesPerCmmdt Conditional <spaces>
y
Table 6–2 Mapping to the Carrier Adapter shipCarton API (Input XML)
Field Name Comments Platform
SEDLineAmt Required YFS_ORDER_LINE.line_price
of YFS_CONTAINER_
DETAILS.order_line_key *
YFS_CONTAINER_
DETAILS.quantity. If its
shipment conatainer, we
compute by getting the item
object from shipment and
shipment container.
COType Required Defaulted to 0.
SEDInd Required Defaulted to 0.
LineExtendedAmt Required YFS_ORDER_LINE.line_price
of YFS_CONTAINER_
DETAILS.order_line_key *
YFS_CONTAINER_
DETAILS.quantity. If its
shipment conatainer, we
compute by getting the item
object from shipment and
shipment container.
Filler <spaces>
PackageTrackingNumber Required YFS_Shipment_
Container.Tracking_No
AdditionalCommentsRecord AdditionalCommentsRecord (0700) contains
additional statements and information for
an international shipment.
RecordType Required 0700
DeclarationStatement Optional <spaces>
AdditionalComments Optional <spaces>
Filler1 <spaces>
PackageTrackingNumber Required <spaces>
SpecialServicesRecord SpecialServicesRecord contains
SpecialService child elements for each of
the special service the shipment/order
have.
Service Optional YFS_SPECIAL_SERVICE_
REF.service_code
Table 6–2 Mapping to the Carrier Adapter shipCarton API (Input XML)
Field Name Comments Platform
ExtraFieldsRecord ExtraFieldsRecord contains statements and
information extra fields.
LableFormatValue Optional <spaces>
ReferenceNotes Optional YFS_SHIPMENT.shipment_
no+YFS_SHIPMENT_
CONTAINER.container_Scm.
SunDeliveryInd Optional <spaces>
ThermalLabelPrinterID Optional Determined by calling
getPrinterId.
Table 6–3 Mapping to the Carrier Adapter shipCarton API (Output XML)
Field Name Platform
TotalErrors The total number of errors returned by the
Carrier Server
ErrorCode The error code returned by the Carrier Server
ErrorDescription The description of the error code returned by
the Carrier Server.
CODReturnTrackingNo YFS_SHIPMENT_CONTAINER.COD_Return_
tracking_No
TrackingNumber YFS_SHIPMENT_CONTAINER.tracking_no
TotalSurchargeAmt YFS_SHIPMENT_CONTAINER.special_services_
surcharge
NetCharge YFS_SHIPMENT_CONTAINER.actual_freight_
charge
BilledWeight YFS_SHIPMENT_CONTAINER.applied_weight
PrintBuffer The print buffer returned by the Carrier Server.
DeliveryDay YFS_SHIPMENT_CONTAINER.delivery_day
Table 6–3 Mapping to the Carrier Adapter shipCarton API (Output XML)
Field Name Platform
UPS_Routing_Code YFS_SHIPMENT_CONTAINER.UPS_Routing_
Code
APIs Involved
Q
createTask()
Q
changeTask()
Q
createBatch()
Q
getTaskList()
Q
cancelTask()
Events Raised
The following event is raised by the createTask() API:
Q
CREATE_TASK.TASK_CREATED
The following events are raised by the changeTask() API:
Q
CHANGE_TASK.TASK_CHANGED
Q
CHANGE_TASK.TASK_PUT_ON_HOLD
Q
CHANGE_TASK.TASK_RELEASED_FROM_HOLD
The following event is raised by the createBatch() API:
Q
CREATE_BATCH.BATCH_CREATED
The following event is raised by the cancelTask() API:
Q
CANCEL_TASK.TASK_CANCELED
For more information about the APIs, see the Selling and Fulfillment
Foundation: Javadocs.
2. References are scanned in the pick-to-light system and appropriate
slots are lit indicating quantity to pick.
3. Upon pick completion, status information is sent from the
pick-to-light system to the Sterling WMS. All serial/tag number level
APIs Involved
Q
registerTaskCompletion()
Q
registerBatchCompletion()
Q
changeTask()
Events Raised
The following events are raised by the registerTaskCompletion() and
registerBatchCompletion() APIs:
Q
COMPLETE_TASK.TASK_COMPLETED
Q
COMPLETE_BATCH.BATCH_COMPLETED
The following events are raised by the changeTask() API:
Q
CHANGE_TASK.TASK_CHANGED
Q
CHANGE_TASK.TASK_PUT_ON_HOLD
Q
CHANGE_TASK.TASK_RELEASED_FROM_HOLD
For more information about the APIs, see the Selling and Fulfillment
Foundation: Javadocs.
APIs Involved
Q
getShipmentDetails()
Q
createTask()
Q
changeTask()
Q
createBatch()
Q
getTaskList()
Q
cancelTask()
Events Raised
The following event is raised by the createTask() API:
Q
CREATE_TASK.TASK_CREATED
The following events are raised by the changeTask() API:
Q
CHANGE_TASK.TASK_CHANGED
Q
CHANGE_TASK.TASK_PUT_ON_HOLD
Q
CHANGE_TASK.TASK_RELEASED_FROM_HOLD
The following event is raised by the createBatch() API:
Q
CREATE_BATCH.BATCH_CREATED
The following event is raised by the cancelTask() API:
Q
CANCEL_TASK.TASK_CANCELED
For more information about the APIs, see the Selling and Fulfillment
Foundation: Javadocs.
2. Item Ids are scanned in the put-to-light system, and appropriate slots
are lit indicating quantity to be placed.
3. Container numbers are associated to each slot, and the container is
closed. This information is sent back to the Sterling WMS.
APIs Involved
Q
registerTaskCompletion()
Q
registerBatchCompletion()
Q
addToContainer()
Q
changeTask()
Events Raised
The following events are raised by the registerTaskCompletion() and
registerBatchCompletion() APIs:
Q
COMPLETE_TASK.TASK_COMPLETED
Q
COMPLETE_BATCH.BATCH_COMPLETED
The following events are raised by the addToContainer() API:
Q
CREATE_CONTAINER.ON_SUCCESS
Q
ADD_TO_CONTAINER.ON_SUCCESS
Q
ADD_TO_CONTAINER.ON_CONTAINER_PACK_COMPLETE
Q
ADD_TO_CONTAINER.ON_CONTAINER_PACK_PROCESS_COMPLETE
Q
ADD_TO_CONTAINER.ON_SHIPMENT_PACK_COMPLETE
Q
ADD_TO_CONTAINER.ON_SHIPMENT_PACK_PROCESS_COMPLETE
The following events are raised by the changeTask() API:
Q
CHANGE_TASK.TASK_CHANGED
Q
CHANGE_TASK.TASK_PUT_ON_HOLD
Q
CHANGE_TASK.TASK_RELEASED_FROM_HOLD
For more information about the APIs, see the Selling and Fulfillment
Foundation: Javadocs.
4. Quantities at the shipment level (each slot) are taken to appropriate
packing locations to complete packing steps.
APIs Involved
Q
createTask()
Q
createBatch()
Events Raised
The following event is raised by the createTask() API:
Q
CREATE_TASK.TASK_CREATED
The following event is raised by the createBatch() API:
Q
CREATE_BATCH.BATCH_CREATED
For more information about the APIs, see the Selling and Fulfillment
Foundation: Javadocs.
2. User scans item for putaway into carousel system, which retrieves
appropriate location/bin to the user station. Product is placed in the
bin.
3. Upon the location/bin being placed in appropriate slot, the task
completion information is sent to WMS. All serial/tag number level
information required for pack completion is also passed back to WMS
APIs Involved
Q
registerTaskCompletion()
Q
registerBatchCompletion()
Q
changeTask()
Events Raised
The following events are raised by the registerTaskCompletion() and
registerBatchCompletion() APIs:
Q
COMPLETE_TASK.TASK_COMPLETED
Q
COMPLETE_BATCH.BATCH_COMPLETED
The following events are raised by the changeTask() API:
Q
CHANGE_TASK.TASK_CHANGED
Q
CHANGE_TASK.TASK_PUT_ON_HOLD
Q
CHANGE_TASK.TASK_RELEASED_FROM_HOLD
For more information about the APIs, see the Selling and Fulfillment
Foundation: Javadocs.
APIs Involved
Q
createTask()
Q
createBatch()
Events Raised
The following event is raised by the createTask() API:
Q
CREATE_TASK.TASK_CREATED
The following event is raised by the createBatch() API:
Q
CREATE_BATCH.BATCH_CREATED
For more information about the APIs, see the Selling and Fulfillment
Foundation: Javadocs.
APIs Involved
Q
registerTaskCompletion()
Q
registerBatchCompletion()
Q
changeTask()
Events Raised
The following events are raised by the registerTaskCompletion() and
registerBatchCompletion() APIs:
Q
COMPLETE_TASK.TASK_COMPLETED
Q
COMPLETE_BATCH.BATCH_COMPLETED
The following events are raised by the changeTask() API:
Q
CHANGE_TASK.TASK_CHANGED
Q
CHANGE_TASK.TASK_PUT_ON_HOLD
Q
CHANGE_TASK.TASK_RELEASED_FROM_HOLD
For more information about the APIs, see the Selling and Fulfillment
Foundation: Javadocs.
3. Secondary step tasks are automatically created by the Sterling WMS
to putaway quantity to final destination location.
APIs Involved
Q
createTask()
Q
changeTask()
Q
createBatch()
Q
getTaskList()
Q
cancelTask()
Events Raised
The following event is raised by the createTask() API:
Q
CREATE_TASK.TASK_CREATED
The following events are raised by the changeTask() API:
Q
CHANGE_TASK.TASK_CHANGED
Q
CHANGE_TASK.TASK_PUT_ON_HOLD
Q
CHANGE_TASK.TASK_RELEASED_FROM_HOLD
The following event is raised by the createBatch() API:
Q
CREATE_BATCH.BATCH_CREATED
The following event is raised by the cancelTask() API:
Q
CANCEL_TASK.TASK_CANCELED
For more information about the APIs, see the Selling and Fulfillment
Foundation: Javadocs.
Upon completion of task the confirmation is sent back to the Sterling
WMS.
APIs Involved
Q
registerTaskCompletion()
Q
registerBatchCompletion()
Q
changeTask()
Events Raised
The following events are raised by the registerTaskCompletion() and
registerBatchCompletion() APIs:
Q
COMPLETE_TASK.TASK_COMPLETED
Q
COMPLETE_BATCH.BATCH_COMPLETED
The following events are raised by the changeTask() API:
Q
CHANGE_TASK.TASK_CHANGED
Q
CHANGE_TASK.TASK_PUT_ON_HOLD
Q
CHANGE_TASK.TASK_RELEASED_FROM_HOLD
For more information about the APIs, see the Selling and Fulfillment
Foundation: Javadocs.
APIs Involved
Q
startReceipt()
Q
getShipmentDetails()
Q
getActivityDemand()
Events Raised
The following event is raised by the startReceipt() API:
Q
START_RECEIPT.ON_START_RECEIPT
For more information about the APIs, see the Selling and Fulfillment
Foundation: Javadocs.
APIs Involved
Q
receiveOrder()
Events Raised
The following events are raised by the receiveOrder() API:
Q
RECEIVE_RECEIPT.ON_SUCCESS
Q
RECEIVE_RECEIPT.ON_SKU_RECEIPT
Q
RECEIVE_RECEIPT.ON_CASE_RECEIPT
Q
RECEIVE_RECEIPT.ON_PALLET_RECEIPT
Q
RECEIVE_ORDER.INVENTORY_COST_CHANGE
Q
RECEIVE_ORDER.INVENTORY_COST_WRITEOFF
Q
RECEIVE_ORDER.INVENTORY_VALUE_CHANGE
For more information about the APIs, see the Selling and Fulfillment
Foundation: Javadocs.
4. Putaway task is automatically generated on the Sterling WMS.
APIs Involved
Q
releaseWave()
Q
getShipmentDetails()
Events Raised
The following events are raised by the releaseWave() API:
Q
RELEASE_WAVE.ON_SUCCESS
Q
RELEASE_WAVE.SHORTAGES_DETECTED
For more information about the APIs, see the Selling and Fulfillment
Foundation: Javadocs.
3. Information from outbound sorter regarding cartons diverted or
quantity diverted can update a status value in the pipeline.
APIs Involved
Q
changeShipmentContainer()
Q
changeShipmentStatus()
Events Raised
The following events are raised by the changeShipmentContainer() API:
Q
CHANGE_CONTAINER.ON_SUCCESS
Q
CHANGE_CONTAINER_STATUS.ON_SUCCESS
The following event is raised by the changeShipmentStatus() API:
Q
CHANGE_SHIPMENT_STATUS.ON_SUCCESS
For more information about the APIs, see the Selling and Fulfillment
Foundation: Javadocs.
APIs Involved
Q
releaseWave()
Q
getShipmentDetails()
Events Raised
The following events are raised by the releaseWave() API:
Q
RELEASE_WAVE.ON_SUCCESS
Q
RELEASE_WAVE.SHORTAGES_DETECTED
For more information about the APIs, see the Selling and Fulfillment
Foundation: Javadocs.
3. Information from outbound sorter regarding cartons diverted or
quantity diverted can update a status value in the pipeline.
APIs Involved
Q
changeShipmentContainer()
Events Raised
The following events are raised by the changeShipmentContainer() API:
Q
CHANGE_CONTAINER.ON_SUCCESS
Q
CHANGE_CONTAINER_STATUS.ON_SUCCESS
For more information about the APIs, see the Selling and Fulfillment
Foundation: Javadocs.
APIs Involved
Q
manageItem()
Events Raised
The following events are raised by the manageItem() API:
Q
ITEM_DEFINITION.AFTER_MODIFY_ITEM
Q
ITEM_DEFINITION.AFTER_DELETE_ITEM
For more information about the APIs, see the Selling and Fulfillment
Foundation: Javadocs.
public CustomScaleConnector() {
}
The config XML format used for the Mettler Toledo Weighing Scale is as
follows:
<DeviceParamsXML>
<Attributes>
<Attribute Name="ClassName" Value="" />
<Attribute Name="PortId" Value="" />
<Attribute Name="BaudRate" Value="" />
<Attribute Name="DataBits" Value="" />
<Attribute Name="StopBits" Value="" />
<Attribute Name="Parity" Value="" />
<Attribute Name="FlowIn" Value="" />
<Attribute Name="FlowOut" Value="" />
<!-- other extended attributes specific to weighing scale
connector implementations -->
<Attribute Name="" Value="" />
</Attributes>
</DeviceParamsXML>
The config XML can be configured using the Device Configuration of Type
‘Weighing Scale’ in the Applications Manager. For more information see
the Sterling Warehouse Management System: Configuration Guide.
NOTE: The implementation of the YCPWeighingFactory interface must
ensure that an instance can be reused across invocations. The
YCPWeighingFactory interface calls init once during initialization, and
subsequently reuses the initialized instance.
For more details about integrating the Sterling WMS with other weighing
scales, see Java Doc referring to the com.yantra.ycp.ui.io package.
APIs Involved
Q
manageCustomer()
For more information about APIs, see the Selling and Fulfillment
Foundation: Javadocs.
APIs Involved
Q
createShipment()
Q
consolidateToShipment()
For more information about APIs, see the Selling and Fulfillment
Foundation: Javadocs.
APIs Involved
Q
confirmShipment()
Events Raised
The following events are raised by the confirmShipment() API:
Q
CONFIRM_SHIPMENT.ON_SUCCESS
Q
CREATE_CONFIRM_SHIPMENT.ON_SUCCESS
Q
SHIP_SHIPMENT.ON_SHIP_CONFIRM_POST_VOID
Q
SHIP_ORDER.ON_SHIP_CONFIRM_POST_VOID
Q
INVENTORY_CHANGE.ON_CHANGE
Q
INVENTORY_COST_CHANGE.INVENTORY_VALUE_CHANGE
For more information about the APIs, see the Selling and Fulfillment
Foundation: Javadocs.
APIs Involved
Q
manageVendor()
For more information about the APIs, see the Selling and Fulfillment
Foundation: Javadocs.
APIs Involved
Q
createOrder()
Q
changeOrder()
For more information about the APIs, see the Selling and Fulfillment
Foundation: Javadocs.
APIs Involved
Q
shortOrder()
For more information about the APIs, see the Selling and Fulfillment
Foundation: Javadocs.
APIs Involved
Q
confirmShipment()
For more information about the APIs, see the Selling and Fulfillment
Foundation: Javadocs.
APIs Involved
Q
closeReceipt() or
Q
receiveOrder()
Events Raised
The following events are raised by the closeReceipt() API:
Q
RECEIPT_COMPLETE.ON_RECEIPT_COMPLETE
The following events are raised by the receiveOrder() API:
Q
RECEIVE_RECEIPT.ON_SUCCESS
Q
RECEIVE_RECEIPT.ON_SKU_RECEIPT
Q
RECEIVE_RECEIPT.ON_CASE_RECEIPT
Q
RECEIVE_RECEIPT.ON_PALLET_RECEIPT
Q
INVENTORY_COST_CHANGE.INVENTORY_COST_CHANGE
Q
RECEIVE_ORDER.INVENTORY_COST_WRITEOFF
Q
RECEIVE_ORDER.INVENTORY_VALUE_CHANGE
For more information about the APIs, see the Selling and Fulfillment
Foundation: Javadocs.
APIs Involved
Q
manageItem()
For more information about the APIs, see the Selling and Fulfillment
Foundation: Javadocs.
APIs Involved
Q
manageItem()
Events Raised
The following events are raised by the manageItem() API:
Q
ITEM_DEFINITION.AFTER_MODIFY_ITEM
Q
ITEM_DEFINITION.AFTER_DELETE_ITEM
For more information about the APIs, see the Selling and Fulfillment
Foundation: Javadocs.
APIs Involved
Q
adjustInventory()
Events Raised
The following events are raised by the adjustInventory() API:
Q
INVENTORY_CHANGE.INVENTORY_CHANGE
Q
INVENTORY_CHANGE.SUPPLY_CHANGE
Q
INVENTORY_COST_CHANGE.INVENTORY_VALUE_CHANGE
For more information about the APIs, see the Selling and Fulfillment
Foundation: Javadocs.
APIs Involved
Q
getInventoryMismatch()
Q
getInventorySnapshot()
For more information about the APIs, see the Selling and Fulfillment
Foundation: Javadocs.
APIs Involved
Q
manageItem()
For more information about the APIs, see the Selling and Fulfillment
Foundation: Javadocs.
APIs Involved
Q
createWorkOrder()
For more information about the APIs, see the Selling and Fulfillment
Foundation: Javadocs.
APIs Involved
Q
createWorkOrder()
Q
cancelWorkOrder()
Q
modifyWorkOrder()
Events Raised
The following events are raised by the createWorkOrder() API:
Q
CREATE_WORK_ORDER.ON_SUCCESS
The following events are raised by the cancelWorkOrder() API:
Q
CANCEL_WORK_ORDER.ON_SUCCESS
Q
CANCEL_WORK_ORDER.WORK_ORDER_ACTIVITIES_COMPLETED
The following events are raised by the modifyWorkOrder() API:
Q
MODIFY_WORK_ORDER.ON_SUCCESS
For more information about the APIs, see the Selling and Fulfillment
Foundation: Javadocs.
APIs Involved
Q
confirmWorkOrderActivity()
Events Raised
The following events are raised by the confirmWorkOrderActivity() API:
Q
CONFIRM_WORK_ORDER.ON_SUCCESS
Q
CONFIRM_WORK_ORDER.WORK_ORDER_ACTIVITIES_COMPLETED
Q
CONFIRM_WORK_ORDER.LPN_ACTIVITIES_COMPLETED
Q
CONFIRM_WORK_ORDER.SKU_ACTIVITIES_COMPLETED
Q
CONFIRM_WORK_ORDER.SNO_ACTIVITIES_COMPLETED
For more information about the APIs, see the Selling and Fulfillment
Foundation: Javadocs.
APIs Involved
Q
changeWorkOrderStatus()
Events Raised
The following events are raised by the changeWorkOrderStatus() API:
Q
CHANGE_WORK_ORDER_STATUS.ON_SUCCESS
For more information about the APIs, see the Selling and Fulfillment
Foundation: Javadocs.
APIs Involved
Q
createOrder()
Q
changeOrder()
For more information about the APIs, see the Selling and Fulfillment
Foundation: Javadocs.
APIs Involved
Q
shortOrder()
For more information about the APIs, see the Selling and Fulfillment
Foundation: Javadocs.
APIs Involved
Q
closeReceipt() or
Q
receiveOrder()
Events Raised
The following events are raised by the closeReceipt() API:
Q
RECEIPT_COMPLETE.ON_RECEIPT_COMPLETE
The following events are raised by the receiveOrder() API:
Q
RECEIVE_RECEIPT.ON_SUCCESS
Q
RECEIVE_RECEIPT.ON_SKU_RECEIPT
Q
RECEIVE_RECEIPT.ON_CASE_RECEIPT
Q
RECEIVE_RECEIPT.ON_PALLET_RECEIPT
Q
RECEIVE_ORDER.INVENTORY_COST_CHANGE
Q
RECEIVE_ORDER.INVENTORY_COST_WRITEOFF
Q
RECEIVE_ORDER.INVENTORY_VALUE_CHANGE
passed and the inventory reason code passed does not have an
adjustment sequence associated with it.
If the adjustLocationInventory API is called with an inventory reason
code associated with an adjustment sequence and the Location ID is not
passed:
Q
Inventory is deducted consecutively from the locations or zones
specified in the adjustment sequence.
Q
Within a zone, inventory is deducted according to the pick sequence
of the locations in the zone. For locations having the same pick
sequence number, inventory is deducted in the alphabetical order of
the Location ID.
Q
Inventory in non-virtual locations is deducted only to the extent of
the available quantity of loose SKU (inventory in LPN is not
considered). Available inventory is deducted consecutively from the
configured locations until a virtual location, if configured in the
adjustment sequence, is reached. The balance of the demanded
quantity is then adjusted from this virtual location. If any other
locations have been configured in the adjustment sequence after the
virtual location, they are ignored.
Q
The transaction does not go through if there is insufficient inventory
in the locations or zones specified in the adjustment sequence and a
virtual location has not been configured in the adjustment sequence.
When the adjustLocationInventory API is called with a Location ID and an
inventory reason code associated with an adjustment sequence, the
inventory is adjusted in the specified location and the adjustment
sequence is ignored. The transaction does not go through if there is
insufficient inventory at the specified location.
When the adjustLocationInventory API is called for serialized items, the
location sequence associated with an inventory reason code is always
ignored.
Q
If the adjustLocationInventory API is called with a Location ID,
inventory is deducted from that location. The transaction does not go
through if the serial number is not found in the specified location.
Q
If the adjustLocationInventory API is called without a Location ID,
inventory is deducted from any location where the serial number is
Q
SendItemChanges
Q
ReceiveItemChanges
Q
SendCustomerChanges
Q
ReceiveCustomerChanges
These services function by either placing or retrieving information from a
JMS queue, and then passing this information to an internal or external
API or service.
<CustomerContactList >
<CustomerContact DayFaxNo="" DayPhone="" EmailID=""
EveningFaxNo=""
EveningPhone="" FirstName="" LastName="" MobilePhone=""
Title="" UserID="">
<CustomerAdditionalAddressList Reset="y" >
<CustomerAdditionalAddress
CustomerAdditionalAddressID="" IsShipTo=""
IsBillTo="" IsSoldTo="" IsDefaultShipTo="" IsDefaultBillTo=""
IsDefaultSoldTo="">
<PersonInfo AddressLine1="" AddressLine2=""
AddressLine3="" City="" Country=""
State="" ZipCode="" />
</CustomerAdditionalAddress>
</CustomerAdditionalAddressList>
<CustomerPaymentMethodList Reset="Y">
<CustomerPaymentMethod CreditCardExpDate=""
FirstName=""
MiddleName="" LastName="" CreditCardNo="" CreditCardType=""
PaymentType="" IsDefaultMethod="" />
</CustomerPaymentMethodList>
</CustomerContact>
</CustomerContactList>
</Customer>
YFS_CUSTOMER_CONTACT.LAST_NAME
YFS_CUSTOMER_CONTACT.FIRST_NAME
YFS_CUSTOMER_CONTACT.TITLE
YFS_CUSTOMER_CONTACT.EMAILID
YFS_CUSTOMER_PAYMENT_METHOD.PAYMENT_TYPE
YFS_CUSTOMER_PAYMENT_METHOD.CREDIT_CARD_NO
YFS_CUSTOMER_PAYMENT_METHOD.CREDIT_CARD_EXP_DATE
YFS_CUSTOMER_PAYMENT_METHOD.CREDIT_CARD_TYPE
YFS_CUSTOMER_PAYMENT_METHOD.FIRST_NAME
YFS_CUSTOMER_PAYMENT_METHOD.LAST_NAME
YFS_CUSTOMER.ORGANIZATION_CODE
YFS_PERSON_INFO.ADDRESS_LINE1
YFS_PERSON_INFO.ADDRESS_LINE2
YFS_PERSON_INFO.ADDRESS_LINE3
YFS_PERSON_INFO.CITY
YFS_PERSON_INFO.ZIP_CODE
YFS_PERSON_INFO.STATE
YFS_PERSON_INFO.COUNTRY
YFS_CUSTOMER_ADDNL_ADDRESS.IS_SOLD_TO
YFS_CUSTOMER_ADDNL_ADDRESS.IS_SHIP_TO
YFS_CUSTOMER_ADDNL_ADDRESS.IS_BILL_TO
YFS_CUSTOMER_ADDNL_ADDRESS.IS_DEFAULT_SOLD_TO
YFS_CUSTOMER_ADDNL_ADDRESS.IS_DEFAULT_SHIP_TO
YFS_CUSTOMER_ADDNL_ADDRESS.IS_DEFAULT_BILL_TO
YFS_CUSTOMER_CONTACT.<table_name>
Note: The <table_name> column is determined by the value of the CMGT_PHONES.PHONE_TYPE_CODE column. The
customer phone number is then stored in this column.
LeadTime YFS_ITEM.LEAD_TIME
MinOrderQuantity YFS_ITEM.MIN_ORDER_QUANTITY
ConfiguredModelKey YFS_ITEM.CONFIGURED_MODEL_KEY
IsConfigurable YFS_ITEM.IS_CONFIGURABLE The value of this field should be "Y" if the
product is of the type "CONFIGURABLE".
IsPreConfigured YFS_ITEM.IS_PRE_CONFIGURED
ItemInstructionList/ItemInstruction
InstructionText YFS_ITEM_
INSTRUCTION.INSTRUCTION_TEXT
InstructionType YFS_ITEM_
INSTRUCTION.INSTRUCTION_TYPE
SeqNo YFS_ITEM_INSTRUCTION.SEQ_NO
Components/Component
ComponentItemID YFS_KIT_ITEM.COMPONENT_ITEM_
KEY
Based on
ComponentItemID,ComponentOrganizatio
nCode, and ComponentUnitOfMeasure.
KitQuantity YFS_KIT_ITEM.KIT_QUANTITY
11. Within the newly configured JMS server, click Destinations and
configure all required JMS Queues. Now all of the JMS queues are
configured.
When configuring services that use WebLogic JMS, use the JNDI
Name value from the WLS configuration as the message queue name.
12. Restart the WebLogic server for these new settings to take effect.
For help with choosing an appropriate transaction time-out value for your
system, see your WebLogic documentation.
where <JNDI_ICF> is the Initial Context Factory (ICF) class for use
with the JNDI you have chosen. For example,
com.sun.jndi.fscontext.RefFSContextFactory. <JNDI_URL> is
the path of the provider URL which is provided in the format expected
by the JNDI server and ICF.
4. On the client computer, create a .scp command file that contains the
following parameters:
def qcf( <QCFName> ) qmgr(<QManagerName>) transport(CLIENT) host(<ipaddress
of Server> ) channel(SYSTEM.DEF.SVRCONN) port( <PORT> )
def q(getATP) qu(getATP)
def q(reply_getATP) qu(reply_getATP)
def q(createOrder) qu(createOrder)
end
Archive Files
Since this configuration uses the client transport, the
com.ibm.mqbind.jar file is not necessary. However, the client does use
the following MQ-specific JAR files:
Q
/mqclient/java/lib/com.ibm.mq.jar
Q
/mqclient/java/lib/com.ibm.mqjms.jar
Q
/mqclient/java/lib/connector.jar
Q
/mqclient/java/lib/fscontext.jar
Q
/mqclient/java/lib/jms.jar
Q
/mqclient/java/lib/jndi.jar
Q
/mqclient/java/lib/jta.jar
Q
/mqclient/java/lib/providerutil.jar
Note: The values for the Context Factory and the Provider
URL must match those in the JMSadmin.config file.
SYSTEM.TEST. (Of course, you must ensure that you have created
this queue on the queue manager as well.)
Finally, an end command is issued to shut down JMSAdmin.
Note that the .scp file can have any name, but the convention is
ivtsetup.scp (ivt=installation verification test).
def qcf(ivtQCF) qmgr(SYSTEM.TEST) transport(CLIENT) host(127.0.0.1)
CHANNEL(SYSTEM.DEF.SVRCONN) port (1414)
If you are running on an IBM AIX system, include the following line in the
script that launches the IntegrationAdapter:
export LDR_CNTRL=MAXDATA=0x30000000
For example:
– On AIX it is: LIBPAT
– On Linux it is: LD_LIBRARY_PATH
2. If Agent or Integration Servers communicate with the Websphere
Default Messaging, install the WAS client. The WAS client needs to be
the exact version, including fix pack as the WAS server.
3. Add the following command to the startIntegrationServer.sh
script prior to the java line:
${WAS_CLIENT_HOME}/bin/setupClient.sh
where ${WAS_CLIENT_HOME} is the installation location of the WAS
client.
4. Edit the startIntegrationServer.sh script to run the Agent or
Integration Server to add the following system property:
-Djava.ext.dirs=$WAS_EXT_DIRS $SERVER_ROOT $CLIENTSAS.
5. Ensure that the following changes are made to the
startIntegrationServer.sh (or cmd) startup script located in the
<INSTALL_DIR>/bin directory to include the changes made in Step 3
and Step 4.
WAS_CLIENT_HOME=<path of where WAS client installation>
export WAS_CLIENT_HOME
${WAS_CLIENT_HOME}/bin/setupClient.sh
java -Djava.ext.dirs=$WAS_EXT_DIRS $SERVER_ROOT $CLIENTSAS
${BOOTCLASSPATH} ${JAVA_OPTIONS} -cp ${CLASSPATH}
com.yantra.integration.adapter.IntegrationAdapter "$1"
To create a Queue:
1. Edit the <JBOSS_HOME>/server/<SERVER_
NAME>/deploy/jboss-messaging.sar/destination_service.xml
file to configure a queue. Table 11–1 provides a list of attributes to
use to configure a queue.
To use the data captured using the Selling and Fulfillment Foundation
Inventory Cost Management feature with your financial system, you
must:
Q
Load Initial Inventory Cost Data
Q
Configure Process-Specific Events
12.2.1.1 INVENTORY_COST_CHANGE
For more information about the data published by the event, see the
Selling and Fulfillment Foundation: Javadocs.
12.2.1.2 INVENTORY_COST_WRITEOFF
12.2.3.1 INVENTORY_VALUE_CHANGE
12.2.4.1 ON_INVOICE_CREATION
12.2.5.1 INVENTORY_COST_CHANGE
12.2.5.2 INVENTORY_COST_WRITEOFF
12.2.5.3 INVENTORY_VALUE_CHANGE
12.2.6.1 INVENTORY_VALUE_CHANGE
12.2.7.1 INVENTORY_VALUE_CHANGE
12.2.8.1 COULD_NOT_APPLY_INV_VALUE_CHANGE
Q
TITLE - The title that is displayed after you generate the XML
spreadsheet. Figure 13–1 shows the PO Download title.
This tool is located in <INSTALL_DIR>/bin directory. This can also be
used to generate XML spreadsheets for custom APIs.
Loading (IDL) tool utilizes the bare minimum information required by the
warehouse to be functional.
To begin the initial data loading process, the integration server should be
started by navigating <runtime>/bin folder and entering the following
command:
<runtime>/bin/startIntegrationServer.sh <servername>
The schema files used by each component of the service and the API
called by the service are as follows:
Q
Service Name: Items
Q
Service Group: InitialDataLoad
Q
Text Translator: ModifyItemSchema
Q
XSL Translator: ModifyItem
Q
API: manageItem
Q
Server Name: ItemLoader
The schema files used by each component of the service and the API
called by the service are as follows:
Q
Service Name: ShippingCartons
Q
Service Group: InitialDataLoad
Q
Text Translator: ShippingCartonSchema
Q
XSL Translator: ShippingCarton
Q
API: createItem
Q
Server Name: ShippingCartonLoader
The schema files used by each component of the service and the API
called by the service are as follows:
Q
Service Name: Locations
Q
Service Group: InitialDataLoad
Q
Text Translator: LocationSchema
Q
XSL Translator: Location
Q
API: manageLocation
Q
Server Name: LocationLoader
Table 13–4, "Format for SKU Dedication Data Loading Service" explains
the format of the headers and the sequence of items to be provided for
this service. For more information, see the Selling and Fulfillment
Foundation: Javadocs.
The schema files used by each component of the service and the API
called by the service are as follows:
Q
Service Name: SkuDedications
Q
Service Group: InitialDataLoad
Q
Text Translator: SkuDedicationSchema
Q
XSL Translator: SkuDedication
Q
API: modifyLocation
Q
Server Name: SkuDedicationLoader
The schema files used by each component of the service and the API
called by the service are as follows:
Q
Service Name: Inventory
Q
Service Group: InitialDataLoad
Q
Text Translator: AdjustLocationInventorySchema
Q
XSL Translator: AdjustLocationInventory
Q
API: adjustLocationInventory
Q
Server Name: InventoryLoader
219
Foundation to ERP, 143 shipping cartons, 204
inventory, 147 SKU dedications, 204
order management, 143 Text Translator, 205
overview, 142 XSL Translator, 205
purchasing, 145 shipping cartons, 209
returns, 152 SKU dedication, 214
WIP, 149 Initial Data Loading (IDL), 203
loading configuration data, 203 input XML
error handling mapping receiveOrder API to Sterling
Initial Data Loading (IDL), 205 WMS, 18, 19
SCAC and Service Code in Sterling WMS
integration, 21
F
Sterling WMS inventory download, 42
figures Sterling WMS transactions for confirmShipment
integration architecture, 2 API, 37
Sterling WMS purchase order workflow, 8 INSTALL_DIR, xxxii
Sterling WMS return order workflow, 44 INSTALL_DIR_OLD, xxxii
integrating
with ASRS
G product is being putaway, 130
getInventoryMismatch API with automatic guided vehicles, 133
inventory with Carousels, 129
getInventoryMismatch API, 84 with cube-a-scan, 137
with ERP systems, 141
getInventorySnapShot API, 84
with inbound sorters, 134
getUnprocessedImportDataEx API, 83
with Loftware Label Manager, 85
with Loftware Print Server, 85
I with material handling systems, 125
with Mettler Toledo Weighing Scale, 138
IDL (Initial Data Loading), 204 with MHE, 125
inbound sorters with other weighing scales, 138
integrating with, 134 with outbound sorters, 136
Initial Data Loading with pack sorters, 135
dedicate a location, 214 with pick-to-light systems, 126
error handling, 205 with put-to-light systems, 127
item configuration, 206 with Sterling Warehouse Management System.
loading configuration data, 203 See third-party WMS.Warehouse
location inventory, 216 Management Systems. See third-party
locations, 210 WMS.
services with weighing scales, 138
API component, 205 integration
File IO Receiver, 205 architecture illustration, 2
items, 204 inventory download service, 41
location inventory, 204 IntegrationOverview, 125
locations, 204 Interface Field Mapping, 201
M
R
material handling systems
integrating with, 125 Rapid Deployment Features, 6
MHE Rapid Deployment Features (RDT), 201
integrating with, 125 RCPDTL Sterling WMS table, 18
RCPHDR Sterling WMS table, 17, 55, 58
RDT (Rapid Deployment Tool), 201
221
S modifying, 11
splitting, 11
SDF (Service Definition Framework), 204 receiving goods, 12
See Also AGV, 133 supply type behavior, 10
See Also ASRS, 129 tables
See Also ERP systems, 141 PODTL, 16, 53
See Also POS systems, 155 POHDR, 15, 50
See Initial Data Loading, 204 RCPDTL, 18
See Service Definition Framework, 204 RCPHDR, 17, 55, 58
Service definitions workflow, 8
GetPackListData Sterling WMS purchase order time-triggered
configuring, 101 transactions
services configuring, 13
inventory download, 41 Sterling WMS return order interface
Print pack list workflow, 44
configuring, 94 Sterling WMS ship node
Sterling WMS configuring, 23
purchase order integration, 15 Sterling WMS shipment interface, 20
Sterling Parcel Carrier Adapter cancellations, 21
integrating with, 105 Interface field, 23
Sterling WMS inventory calculations, 21
order release interface, 23 order number syntax, 21
Sterling WMS inventory download services order release tables
customizing, 41 ORDADR, 27
Sterling WMS inventory interface, 39 ORDBOM, 29
configuring service, 41 ORDDTL, 25
inventory download, 40 ORDHDR, 23
downloadInventory API, 42 ORDINS, 28
input XML, 42 ORDNAM, 30
inventory download table SCAC and Service Code, 21
INVCHG, 42 shipment confirmation tables
inventory upload, 39 CARHDR, 34
inventory upload table CNCDTL, 36
TRNDTL, 39 PCKHDR, 32
Sterling WMS order shipment time-triggered PCKINF, 35
transactions SRLDTL, 37
configuring, 21 time-triggered transactions
Sterling WMS purchase order interface configuring, 21
best practices, 10 transmittal of order modifications, 20
order number requirements, 10 Synchronizing Inventory Changes with a Node, 74
pipeline configuration, 14
purchase orders
cancelling, 12
T
creating, 10 third-party warehouse management systems
modifications allowed, 11 integrating with, 83
U
Uploading a Receipt, 65
Uploading Inventory Snapshots, 79
W
weighing scales
integrating with, 138
Mettler Toledo
integrating with, 138
WMS 6.2
Interface field, 23
X
XML integration
with warehouse management systems, 83
Y
YCS
integrating with, 105
223
224 Integration Guide