> CLEO Tips > Cleo Harmony > Cleo Harmony/EDI Integrator Connection -- Part 1

Cleo Harmony/EDI Integrator Connection -- Part 1

22nd May 2020

The Cleo Harmony and Cleo EDI Integrator integration piece allows existing Harmony and EDI Integrator to easily ‘talk’ between the 2 solutions

Below are the notes from Cleo Harmony

Cleo Harmony Notes:

This connector is used to integrate inbound and outbound file transfers with Cleo EEI.  The inbox and outbox of each Cleo Harmony/VLTrader host to be integrated with Cleo EEI must point to an instance of this connector.

Only one Cleo EEI connector is needed for an integration with Cleo EEI.  Consider giving the EEI connector a meaningful name such as ‘Prod’ or 'Test’.  To use the Cleo EEI connector, set the host inbox to EEI:Prod/ and the host outbox to EEI:Prod/partner1, where 'Prod’ is the alias of the connector and 'partner1’ is the trading partner name configured in Cleo EEI.  Harmony/VLTrader allows you to map many EEI partners to one host connection by entering them as a comma-separated list in the Harmony/VLTrader host outbox, for example, EEI:Prod/partner1,partner2,partner3,partner4.  All outbound trading partner files are placed in the same outbound directory identified by the first partner in the list.  The first name in the list can actually correspond to what is referred to as a 'port’ in EEI.  If the trading partner is defined in more than one enabled host outbox, the file is not sent and EEI is sent an error notification.

When an integrated host receives an inbound file, Harmony/VLTrader attempts to connect with the Cleo EEI server.  If the server is unavailable, the transfer fails.  When a connection has been established, the data is streamed to the Cleo EEI inbound data queue.  For more information on how Cleo EEI processes the data, see the Cleo EEI User Guide.

For outbound data flow, Cleo EEI places data on its outbound data queue.  The integrated host’s <send> action can then be scheduled to run either periodically or automatically by polling Cleo EEI.  All data for the trading partner name specified in the Cleo EEI connector is then streamed to the trading partner.  For more information on how data is sent from Cleo EEI, see the Cleo EEI User Guide.  


When migrating a large number of trading partners from ESX, you can transition trading partners in batches either by migrating the associated hosts to Harmony/VLTrader in sets or by initially disabling all of the imported hosts and enabling a set of hosts at a time.  When a host is not found or is disabled in Harmony/VLTrader:

- Outbound messages in Cleo EEI will be placed on a secondary outbound data queue (EXTESXOUT2) that will be processed by ESX.  The secondary EXTESXOUT2 outbound data queue should be manually created in the same library as the EXTESXOUT data queue at the beginning of the migration phase and set as the outbound data queue in ESX.  The AS/400 command to create the EXTESXOUT2 outbound data queue is:


 After migration is complete, the command to remove the secondary outbound data queue is:


- Inbound AS2 messages for unknown trading partners can be redirected to ESX through Cleo VLProxy (Version 3.6.1 or later) by setting the 'Unknown Partner Message Action’ to (U)RL-Redirect and its value to the URL where ESX is installed.  See the Cleo VLProxy User Guide for further information.

By: on
load(''); $feed2 = array(); foreach ($rss2->getElementsByTagName('item') as $node2) { $item2 = array ( 'title' => $node2->getElementsByTagName('title')->item(0)->nodeValue, 'desc' => $node2->getElementsByTagName('description')->item(0)->nodeValue, 'link' => $node2->getElementsByTagName('link')->item(0)->nodeValue, 'date' => $node2->getElementsByTagName('pubDate')->item(0)->nodeValue, ); array_push($feed2, $item2); } $limit2 = 5; $rss3 = new DOMDocument(); $rss3->load(''); $feed3 = array(); foreach ($rss3->getElementsByTagName('item') as $node3) { $item3 = array ( 'title' => $node3->getElementsByTagName('title')->item(0)->nodeValue, 'link' => $node3->getElementsByTagName('link')->item(0)->nodeValue, ); array_push($feed3, $item3); } $limit3 = 5; $rss4 = new DOMDocument(); //$rss4->load(''); $rss4->load(''); $feed4 = array(); foreach ($rss4->getElementsByTagName('item') as $node4) { $item4 = array ( 'title' => $node4->getElementsByTagName('title')->item(0)->nodeValue, 'link' => $node4->getElementsByTagName('link')->item(0)->nodeValue, ); array_push($feed4, $item4); } $limit4 = 5; echo ' '; ?>