0% found this document useful (0 votes)
69 views110 pages

Ramp Systems Interchange: User Guide

Uploaded by

neilcohen
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
69 views110 pages

Ramp Systems Interchange: User Guide

Uploaded by

neilcohen
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 110

Ramp Systems Interchange

User Guide

This document contains information for all levels of EDI Developers using the Ramp Interchange
Software
Ramp Interchange Consulting team
Version 2.0.0
Contents
Accessing the Interchange Client .................................................................................................................. 4

Logging into Ramp Interchange ................................................................................................................ 4

The Client IDE ............................................................................................................................................ 4

Design........................................................................................................................................................ 6

System ....................................................................................................................................................... 6

Components .............................................................................................................................................. 7

Trading Partners............................................................................................................................................ 9

System Certificates ..................................................................................................................................... 12

Importing Partner Certificates ............................................................................................................ 12

Generating a Certificate ...................................................................................................................... 13

Deleting or Exchanging a Certificate ................................................................................................... 14

Adapters ...................................................................................................................................................... 16

Disk .......................................................................................................................................................... 16

FTP ........................................................................................................................................................... 17

AS2 .......................................................................................................................................................... 19

Database ................................................................................................................................................. 21

Email, POP3 and SMTP ............................................................................................................................ 23

POP3 .................................................................................................................................................... 23

SMTP ................................................................................................................................................... 24

Email.................................................................................................................................................... 25

Mapping ...................................................................................................................................................... 26

Default Values ......................................................................................................................................... 28

Map Functions ........................................................................................................................................ 29

SQL and Stored Procedure .................................................................................................................. 29

Prepend and Append .......................................................................................................................... 33

Math Operations (Add, Subtract, Multiple, Divide) ............................................................................ 34

Concatenate and Concatenate (Keep Space) ...................................................................................... 35

Ramp Systems Interchange Users Guide 1|Page


Rounding ............................................................................................................................................. 36

Trim (Left to Length), (Right To Length), Trim Space, Trim Left Space ............................................... 37

Trim Leading Characters and Trim Trailing Characters ....................................................................... 37

Current Date/Time .............................................................................................................................. 37

Adding a Function to a Map .................................................................................................................... 37

Creating or Modifying Setups ..................................................................................................................... 39

Orchestrations ........................................................................................................................................ 40

Schedules ................................................................................................................................................ 42

Activating a Schedule .......................................................................................................................... 45

Database Resources .................................................................................................................................... 47

Messages..................................................................................................................................................... 50

Database Messages................................................................................................................................. 50

Component Map ................................................................................................................................. 57

XML ......................................................................................................................................................... 59

Flat File ........................................................................................................................................................ 64

Multi Format Flat Files ............................................................................................................................ 67

EDI X12 ........................................................................................................................................................ 70

Defining an X12 Message .................................................................................................................... 70

856 ASN ............................................................................................................................................... 76

EDI Control Segments ......................................................................................................................... 77

Logging and Execution ................................................................................................................................ 79

Execution................................................................................................................................................. 79

Logging .................................................................................................................................................... 79

Document Tracking ..................................................................................................................................... 83

Branch ......................................................................................................................................................... 85

Rules ............................................................................................................................................................ 86

Check Based on File Name ...................................................................................................................... 86

Check for Value in Document ................................................................................................................. 86

Ramp Systems Interchange Users Guide 2|Page


Sort X12 Data by Type ............................................................................................................................. 87

Check Source Data Using SQL ................................................................................................................. 87

Spinner ........................................................................................................................................................ 90

Message Processes ..................................................................................................................................... 92

Setting a Trading Partner Relationship ................................................................................................... 92

Setting a File Name ................................................................................................................................. 93

Breaking up Inbound or Outbound Data ................................................................................................ 94

Search and Replace ................................................................................................................................. 94

Extensions ................................................................................................................................................... 96

Embedded Extension .............................................................................................................................. 96

External Program .................................................................................................................................... 96

Stored Procedure Call ............................................................................................................................. 97

SQL Statement Execution ........................................................................................................................ 97

Print ............................................................................................................................................................. 99

System ....................................................................................................................................................... 102

System Settings ..................................................................................................................................... 102

System Alerts ........................................................................................................................................ 104

System Codes ........................................................................................................................................ 105

Ramp Interchange Tips and Tricks ............................................................................................................ 107

Naming Objects ..................................................................................................................................... 107

Automap Segment Elements ................................................................................................................ 107

Testing SMTP Adapters ......................................................................................................................... 107

Sample Database Connection Strings ................................................................................................... 108

Changing Outbound ISA/GS Control Number ....................................................................................... 108

Ramp Systems Interchange Users Guide 3|Page


Accessing the Interchange Client
The Interchange Main Client may be accessed via a shortcut, program group or by accessing Interchange
Client.exe in Program Files\Ramp Systems\Interchange\client on the drive where Ramp is installed.

Logging into Ramp Interchange


When the Interchange Main Client is launched, the following login screen appears

The default username is SYSADMIN and the default password is CHANGE. Server will in most cases be
set to LOCAL

 If the system returns a popup message


o For an incorrect username or password message appears, select OK with the mouse or
spacebar and then retype the information. Selecting Enter sometimes causes the data
to be resubmitted and the same error message returned.
o For a message indicating the name of the Ramp database or of the DB server, please
ensure the database is fully online and the Ramp server can connect to it.
o If the message returned is “Connection Timed Out”, verify the Ramp server is
operational by checking the Ramp Interchange Service (Windows Control Panel) or
process id (Unix)

The Client IDE


Once logged in, the user will see a white space along with a tool bar on the left-hand side of the screen.

Ramp Systems Interchange Users Guide 4|Page


The tool bar has three options at the bottom and the view changes depending on which option is
selected. The following are examples of the different views depending on what option is selected. They
are shown side by side for comparison purposes only and one view will appear at a time.

Ramp Systems Interchange Users Guide 5|Page


Design
 Design shows all the objects available for use in setup
o Adapters – Used for feeding data in or sending data out of Ramp. This allows for
commonly used communication protocols such as AS2 and FTP along with basic setups
like disk reads and support for less common protocols such as AS1. In an orchestration,
the adapter that feeds data in should be defined by assigning it in the Start Shape, which
can be accessed by double clicking it, instead of being a separate object in the layout.
o Maps – Allows the user to define how the data is presented to Ramp, how it needs to
look and what data from the source should be used to create the desired output.
o Branch – Allows for routing the same data down multiple paths with no checks of the
data. Branch objects support up to 100 different paths which are executed in order and
the same data set would be send down each. The user does have an option to set
whether the system should proceed should the data error.
o Rule – Used for routing the data based on logic checks. Unlike a Branch that sends data
down multiple paths, a Rule shape allows for routing data based on content.
o Spinner – used to help control how Ramp processes certain data sets
o Message Process – Additional message processing such as assigning EDI Trading
Partners, setting up File Names and other functionalities. Refer to the Online Learning
Center for more information on functionality.
o Notification – Customized email messages that can utilize data being processed in the
setup. This setup cannot be used when sending System Alerts of job failures as Ramp
has a separate functionality for that.
o Extension – used to call Stored Procedures, Custom Classes, External Programs and SQL
commands when they need to be called outside of other objects such as Maps.
o Orchestration – in some instances it’s easier to create a setup that triggers another
setup. This object allows the user to call a separate Orchestration from an existing job.
o Finish – all setups must include a Finish shape as the final step for all paths defined. The
Finish shape does not have an arrow following it as it’s assumed to be the final step. If
there are multiple branches in a setup, each one must terminate with a Finish shape.

System
 System allows access to system settings, logging and document tracking as well as the ability to
manually execute objects
o System Setup
 System Settings – Access to general settings used by the Ramp application.
 System Alerts – The user can enable system alerts notifying users of issues. This
requires an interface to an email server.
 System Keys
 System Codes – allows for customization of certain drop-down menus in the
Ramp client
o System Security
 Used to set customized usernames and passwords.
 Currently Ramp does NOT track activity by specific users

Ramp Systems Interchange Users Guide 6|Page


o System Manager
 Allows user to control Ramp Scheduler and manually execute setups
o System Monitor
 Provides access to logging of Adapters and Orchestrations
o Document Tracking
 Provides logging of inbound and outbound data at the document level.
o Reporting
 Limited reporting functionality based on Document Tracking.

Components
 Components provides access to objects and setups previously created and allows users to create
and edit individual objects for use later in a setup.
o Trading Partners – used for defining EDI Trading Partners
o Resources
 Database Connections
 Defines databases the Ramp environment may need to connect to
 Connections are made utilizing JDBC drivers with syntax being specific
to the type of database required. Here are some examples.
o MSSQL: jdbc:jtds:sqlserver://LOCALHOST:1433/RAMP
o Oracle: jdbc:oracle:thin:@192.120.201.5:1522:TESTA11
o DB2: jdbc:db2://192.168.3.40:50000/SANDBOX
o ODBC: JDBC:ODBC:DSNNAME where DSNNAME is a System DSN
residing on the Ramp server. Note that even though ODBC
connection screens in Windows will store the username and
password, that information is required in the Ramp connection
setup for the connection to work correctly.
 Ports defined in the examples are the default ports used by the
database platforms referenced. If a non-standard port is used, the
connection string should be adjusted accordingly
 While IPs are referenced in some examples, DNS names are supported
 System Certificate – generates self-signed certificates and stores public
certificate files received from other customers or partners.
o Adapters
 Allows the user to define new adapters or change setups on existing adapters.
 The screens are customized by option selected. For example, the FTP adapter
screen only shows FTP options whereas the Disk adapter screen only shows disk
options.
 Certain options on each screen are greyed out depending on whether it’s a data
pull or data push
o Messages – used for defining the layouts to be used. The message layouts must match
what partner is sending or expecting. There is no generic message layout for any
document in Ramp.
o Translation

Ramp Systems Interchange Users Guide 7|Page


 Functions – used within maps for additional functionality
 Maps
o Components
 Notifications – Customized email notifications setup by the end user which can
utilize source data
 Rules – Logic checks which can determine data routing. Explained later in the
document.
 Message Process – a “Swiss Army Knife” object that can manipulate the data in
a document in various ways depending on which Message is used.
 Extensions – allows for the calling of Stored Procedures, SQL Commands, Class
or Batch Files.
o Execution
 Schedules – suggested use once a setup is ready for go-live. Allows a setup to
be scheduled so it can run without user intervention.
 Tasks – used to execute an Adapter on a Schedule
 Orchestrations – set of instructions organized by the end user to perform an
action or set of actions.

Ramp Systems Interchange Users Guide 8|Page


Trading Partners
EDI documents have what are referred to as “Control Segments” which define information about the
document being traded such as who the sender is, who the recipient is and a unique control number
value

While this is not required initially if one is just testing a document internally as Ramp would just
populate these values with NULL, it will be required when the time comes to exchange data with the
other partner in testing or production.

When creating a trading partner, go to the Components screen and select Trading Partners under Setup.
If you have an existing trading partner to use, you can select Search to locate it. If it doesn’t exist, you
can select New

Once selected, 9 tabs are available

 Main
o Name - this is where the user-friendly name of a trading partner can be defined

Ramp Systems Interchange Users Guide 9|Page


o Description – Any additional information regarding the trading partner. Not a
mandatory field
o Set as Default – setting this value to Yes will tell Ramp to treat any document that
comes from an un-identified trading partner as this trading partner. Please note that
there can only be one Default trading partner in an environment
 Contact
o This screen may be populated with contact information for the trading partner. This
screen is not mandatory
 Adapters
o This screen may be utilized to setup automatic archiving of X12 documents and to
generate 997s
 Inbound Document Archive Location – a full path must be specified (ex
C:\Document\Archive\PartnerName\In. This archives any data incoming to
Ramp from that partner. The archive is a general archive and this tab does not
allow the sorting by document type. If that is needed, that can be done via an
orchestration
 Outbound Document Archive Location – like the previous setting. This archives
any data for that partner that is generated by Ramp
 Outbound Adapter Type and Outbound Adapter Name can be set to generate
997s for any document for this partner that is received. The ISA/GS settings will
match the inbound document received
 Security
o This screen will advise if a security certificate is associated with the trading partner.
Please note that this value is not editable and is for reference only.
o Only one certificate per trading partner can be applied. If a partner provides a chain of
certificates, this is not supported and the partner must provide the primary certificate to
use.
o A partner may choose to use a secure communications method such as AS2 but not
exchange non X12 or EDIFACT data. In this case, a Trading Partner entry will still be
needed as Ramp stores security certificate with the partner entry.
 EDI Execution
o This tab may be utilized to have Ramp automatically run a specific object in the event
data for this trading partner is received.
 Transaction Type – Inbound or Outbound
 Transaction - ALL is specified by default however individual entries can be
specified instead for each document type
 The remaining options specify what should be done with the data
 The end user can select a Map, Task or Orchestration and then specify
the related object to execute
 Alternatively, the end user can specify an adapter type and name to
execute.
 Either option can be selected but not both
 X12 Settings

Ramp Systems Interchange Users Guide 10 | P a g e


o On this screen the end user will specify the values either defined by their organization or
the partner. Please note that only one instance of each address specified by the partner
can exist in Ramp. If a Partner is using the same ID for test and production, only one
Trading Partner record can be specified
o Document Settings
 Some of the values will populate with default information as there are specific
values already in the X12 standard that must be used. These values may be
modified by selecting the drop down next to each
 Author Information Code
 ISA Standard
 Interchange ID Qualifier
 Repetition Separator
 End Character
 Responsible Agency
 Request Acknowledgment – This value should be set to No even if 997s
are expected unless the customer requests it
 Test Indicator – this populates ISA15 in the header with either a T or P
 Interchange ID is the trading partner value that will appear on the ISA line.
Application Code is the trading partner value that will appear on the GS line.
Please note that if one value is populated the other is required. This value is
editable and can be changed as needed
o Control Settings
 Control Number Share Mode – use this value to determine if Ramp should use
the same counter for all outbound documents or a unique counter for each
 Consolidation Mode
 Acknowledgement Mode -determines what types of FAs should be created. FAs
are only generated if the adapter value is set on the Adapters tab
 Acknowledge Functional Groups
 Acknowledge Transaction Sets
 X12 Control
o This tab keeps track of all control numbers for outbound transmissions from Ramp to
that partner
 EDIFACT Settings
o This tab has settings relevant to any EDIFACT implementation
 EDIFACT Control
o This tab keeps track of all control numbers for outbound transmissions from Ramp to
that partner
Once a Trading Partner is created, Ramp will log any EDI X12 document received that has the relevant
data as coming from that Trading Partner.
To set a trading partner on an outbound document, use a message process. Please see that section for
specific instructions.

Ramp Systems Interchange Users Guide 11 | P a g e


System Certificates
A partner may require a certificate for secure communication. Ramp has the ability to import the
partners certificate as well as create a self-signed cert. A third party certificate can also be imported if
the partner requires a certificate other than a self-signed certificate.

Importing Partner Certificates


Certificates are associated with Trading Partners and there can only be one certificate assigned per
partner. If a customer has a test and production certificate, the user may create two trading partners or
remove one certificate and install the other should the certificate change.

To Import a partner certificate, select the following

The certificate must have the file extension .cer if it is a Trading Partner certificate

Ramp Systems Interchange Users Guide 12 | P a g e


.

 Alias – A user defined name associated to the customer.


 Certificate Type
o Trading Partner Certificate – the most common option
o SSL Certificate
o All Purpose – may be used as Trading Partner and SSL Cert
 Assign To Trading Partner – select the trading partner this certificate should be associated with
 Import
o Path To Import File – indicate where the file is located
o Password to Key File – used if importing a third party certificate

Generating a Certificate
Ramp is a self-signing application and has the ability to create its own certificates. Like with a partner’s
certificate, there may be only one certificate per Trading Partner entry

To generate a certificate, the end user must be running the application directly on the physical server
where Ramp is located. The user may also, in the case of a Windows installation, be required to select
the option Run As Administrator when executing the Ramp Interchange Client

Ramp Systems Interchange Users Guide 13 | P a g e


Some items to note on this screen

 Certain applications validate entries in these fields and some values may not be acceptable to
other trading partners. For example, for Country, US (if in the United States) is preferable to
USA.
 By default, each certificate is only valid for a year but that may be modified. If the request is to
have a 10 year certificate, adding a 0 to the end of the value will accomplish this. Some partners
however have restrictions on how long a cert may be valid for. A partner may not accept a 10
year certificate and may require a certificate that is only valid for 4 years. Such requirements
will need to be kept in mind when generating certificates and it may require an organization to
have more than one certificate if established customers are using a certificate with a longer
term.

Deleting or Exchanging a Certificate


At some point a certificate may need to be replaced or removed entirely. To do this, go to the System
Certificates screen then right click and select Search. Locate the specific row for the certificate in
question then right click and select Delete.

Ramp Systems Interchange Users Guide 14 | P a g e


Please note that once a Certificate is deleted this action cannot be undone.

If replacing the certificate, right click and select Import after deleting the existing certificate. The same
Alias may be used if desired. If the correct certificate is installed however there are decryption errors,
the Ramp service can be reset to see if it clears the issue

Ramp Systems Interchange Users Guide 15 | P a g e


Adapters
Adapters are used by Ramp to either receive in data to Ramp or send data out from Ramp.

The adapter screen options will vary depending on what type is selected and whether the data is being
pulled in or pushed out of Ramp.

Ramp supports multiple types of connections (of which there can be several of each type) and this
documentation will cover the most common options. Please contact Ramp Support for additional
information on any adapter not covered here.

Disk
Disk adapters are the most basic

Disk adapter options are as follows

 Name: Assigned by the end user to identify the object


 Description: A non-mandatory field which can be used to provide additional information
 Action: What the adapter should do
o Read – Reads the source data but leaves it in the original location
o Read and Delete – Reads the source data and removes the source data before
processing begins
o Write – Writes output to the final destination.
 Directory: This can be a local drive or a UNC path. If a UNC path, the user that the Ramp service
is running on must have rights to the location. Ramp also cannot utilize a shared drive letter
that might be on the server. For example, if the network has H:\OrdersIn and H:\ is a network
drive, Ramp must have H:\ replaced with the full network path - \\machinename\share

Ramp Systems Interchange Users Guide 16 | P a g e


 File Filter: This option is useful on a read if there are multiple source files and the end user
wishes to restrict by type or file name (ex orders.xls or *.xls). This option should not be used on
a file write as Ramp will not generate output.
 Recurse: Used if an end user wishes to pull data from the main directory and all subdirectories in
the path. Setting the option to Read and Delete will delete the source data but will not delete
any subdirectories.
 Document Processing: This option does some initial validation on the file before sending it to
Ramp. Setting the option to Disable Document Processing will tell Ramp to pass the data as it
receives it to the next step. When Ramp receives a 997 file it will attempt to reconcile it against
what has been processed out of Ramp so using this option will prevent Ramp from consuming
the 997. If additional data files are coming in that may need to be mapped, Disable Document
Reconciliation can be used
 Overwrite Existing Files: This option is only available on a write. The end user can select from
one of three options
o Rename – give the new file a slightly different name
o Overwrite – Overwrite the existing file
o Append – add to the end of the existing file
 Execution – this tab allows the end user to set a schedule on an adapter. This is useful for
outbound transmissions, so they may be batched instead of sent real time. Scheduling an
adapter inbound is usually not recommended as the orchestration it’s attached to will be the
one to call it.

FTP
Ramp does not have an FTP server, but an FTP adapter can be used to interact with an FTP server
external to the Ramp application.

Ramp Systems Interchange Users Guide 17 | P a g e


FTP Adapter options are as follows:

 Name: Assigned by the end user to identify the object


 Description: A non-mandatory field which can be used to provide additional information
 Action: What the adapter should do
o Get – Reads the source data but leaves it in the original location
o Get and Delete – Reads the source data and removes the source data before processing
begins
o Put – Writes output to the final destination.
 Host Address: DNS Name or IP address of the FTP server to interact with
 Port: This defaults to the standard of 21 however depending on a customer’s security or firewall
rules, this can be altered as needed.
 Username and Password
 Remote Directory: The directory on the server to work with . If the login will be accessing root,
this field can be blank
 File Filter: This option is useful on a read if there are multiple source files and the end user
wishes to restrict by type or file name (ex orders.xls or *.xls). This option should not be used on
a file write as Ramp will not generate output.
 Transfer Type: Binary or Ascii
 Connection Mode: Active or Passive
 Local Port : If needed otherwise leave blank
 Rename To: This option is used if the file must be relocated on the FTP server after it’s uploaded
 Recurse: Used if an end user wishes to pull data from the main directory and all subdirectories in
the path. Setting the option to Read and Delete will delete the source data but will not delete
any subdirectories.
 Document Processing: This option does some initial validation on the file before sending it to
Ramp. Setting the option to Disable Document Processing will tell Ramp to pass the data as it
receives it to the next step. When Ramp receives a 997 file it will attempt to reconcile it against
what has been processed out of Ramp so using this option will prevent Ramp from consuming
the 997. If additional data files are coming in that may need to be mapped, Disable Document
Reconciliation can be used
 Overwrite Existing Files: This option is only available on a write. The end user can select from
one of three options
o Rename – give the new file a slightly different name
o Overwrite – Overwrite the existing file
o Append – add to the end of the existing file
 Execution – this tab allows the end user to set a schedule on an adapter. This is useful for
outbound transmissions so they may be batched instead of sent real time. Scheduling an
adapter inbound is usually not recommended as the orchestration it’s attached to will be the
one to call it.

Ramp Systems Interchange Users Guide 18 | P a g e


AS2
AS2 is a secure web protocol which allows partners to exchange data. It is the preferred protocol for
many and Ramp has a built in AS2 server for this.

Ramp supports multiple AS2 connections and determines the connections by the IDs used.

In an AS2 environment, certificates are utilized to secure the data. Each side provides their public key
while retaining their private key. Certificates are associated at the Trading Partner level and may not be
the trading partner that the transmission is assigned to. For example, a partner may utilize a 3rd party to
send/receive their data (such as a VAN) but have their own EDI IDs. The EDI ids would be assigned via a
Message Process before the data reaches the adapter with the adapter having a different trading
partner which has the certificate required.

The options for an AS2 Adapter are as follows:

 Name: Assigned by the end user to identify the object


 Description: A non-mandatory field which can be used to provide additional information
 Action: What the adapter should do
o RECEIVE – Receives the data from the partner
o SEND – Sends the data to the customer
 URL: Only valid on a SEND, this is the URL that should be used to connect to the partner. Please
note that http:// or https:// is mandatory on the URL. If a specific port is defined by the partner,
the URL may need to be altered to include the port as there is not a separate field for this.
Ramp Systems Interchange Users Guide 19 | P a g e
 Source Id and Destination Id – the user defined or partner defined Id for communication. Ramp
matches up which transmission belongs to which AS2 adapter based on the Source
Id/Destination Id pair.
 Subject – Available on a SEND if requested by the partner. Otherwise may be defaulted to blank
 Content Type – by default this can be left to Determined by System. The usage of this option is
if interacting with an older AS2 system that cannot determine the content type upon receipt
 Document Processing: This option does some initial validation on the file before sending it to
Ramp. Setting the option to Disable Document Processing will tell Ramp to pass the data as it
receives it to the next step. When Ramp receives a 997 file it will attempt to reconcile it against
what has been processed out of Ramp so using this option will prevent Ramp from consuming
the 997. If additional data files are coming in that may need to be mapped, Disable Document
Reconciliation can be used
 Security – there are four options available
o Signed
o Signed & Compressed
o Signed & Encrypted – this is the most common. If unsure, default to this
o Signed, Encrypted & Compressed
 Algorithm
o DES-EDE3 – this is the most common. If unsure, default to this
o DES
o RC2-128
o RC2-64
o RC2-40
 Source Trading Partner – the partner that is sending the data
 Destination Trading Partner – the partner that will receive the data
 MDN – there are five options available
o Do Not Request an MDN
o Request Synchronous MDN – Request an MDN during the communication session
o Request Asynchronous MDN – Request an MDN but it may be received after the
communication session has ended.
o Request Synchronous Signed MDN – Request a Signed MDN during the communication
session
o Request Asynchronous Signed MDN – Request a Signed MDN but it may be received
after the communication session has ended.
 Use SSL
o Client Alias

Ramp Systems Interchange Users Guide 20 | P a g e


Database
Database adapters allow the end user to associate a Database Message (discussed later in the
documentation) with a specific database connection

The options for a Database Adapter are as follows:

 Name: Assigned by the end user to identify the object. In this instance, it is recommended that
the message name and database connection be factored into creating a meaningful name as
there may be multiple connections to the same database
 Description: A non-mandatory field which can be used to provide additional information
 Action: What the adapter should do. This should factor in the associated message
o Read – any action that pulls data from the database
o Write – any action that inserts data into the database
 Execution Option and Path to SQL File: This option is active on a Write and determines whether
Ramp should act against the specific database or if it should Generate SQL and Save to File. The
latter option can be used in the instance of troubleshooting if an error is being reported and the
cause is unclear or if the end user is testing but doesn’t want to create records. Path to SQL File
should contain the full path and filename of where Ramp should generate this data if the
Generate option is selected. Please note that if a file is specified, this file will be appended to
each time the adapter is executed.
 Commit Option
o Auto Commit – the default option
o Commit on Message – Commit on each message in a document
o Commit on Document – Commit on the Document regardless of how many messages
o Commit on Session – Commit once the communication session has concluded
 Database Message: The message to be used with the adapter
 Database Resource: The database connection to be used.

Ramp Systems Interchange Users Guide 21 | P a g e


 Execution – this tab allows the end user to set a schedule on an adapter. This is useful for
outbound transmissions so they may be batched instead of sent real time. Scheduling an
adapter inbound is usually not recommended as the orchestration it’s attached to will be the
one to call it.
 Criteria – this option can be selected if the SQL has wildcards. For example, if the same SQL is
used to generate an invoice and the only difference is CustomerName and CompanyNumber,
the end user can put place holders of ? for these values and create a customized adapter for
each job. In the setup the same database message and database resource would be utilized but
the additional variables would be added under the criteria tab

Ramp Systems Interchange Users Guide 22 | P a g e


Email, POP3 and SMTP
There are three different adapter types for interfacing with an email environment. POP3 and SMTP are
basic adapters that only pull or push data. An Email adapter requires also a POP3 or SMTP adapter
depending on what the purpose of the adapter is for and has additional functionality

POP3

There are multiple options in a POP3 adapter

 Name: Assigned by the end user to identify the object.


 Description: A non-mandatory field which can be used to provide additional information
 Host Address: DNS Name or IP address of POP3 server
 Port: By default, this is 110 however it can be modified if needed. Many POP3 environments use
a port other than the standard for security reasons
 Username and Password: POP3 requires a username and password as that determines what
mailbox is used
 Filter By Sender and Filter By Recipient – these options allow the end user to select which emails
to pull. If only emails from a specific address are desired, the full SMTP address should be
specified. Emails from a specific domain only can also be indicated by *@domainname.com
 MDN Send Adapter – whether MDNS should be returned and if so what adapter should be
used?
 Trading Partner Name
 Use SPA
 Use SSL
Ramp Systems Interchange Users Guide 23 | P a g e
SMTP

SMTP adapters have the following options

 Name: Assigned by the end user to identify the object.


 Description: A non-mandatory field which can be used to provide additional information
 Host Address: DNS Name or IP address of SMTP server
 Port: By default, this is 25 however it can be modified if needed. Many SMTP environments use
a port other than the standard for security reasons
 Use Auth: Required if the email system is not an open relay.
 Username and Password: Login required to secure the connection. If the mail host is either an
open relay or is restricted by network address and not login, these values are not required.
 Use SPA
 Use SSL

Ramp Systems Interchange Users Guide 24 | P a g e


Email

Email adapters work with either a POP3 or SMTP adapter and extend the functionality of each

In an Email adapter setup, the options for POP3 or SMTP are enabled depending on whether the Action
is set to RECEIVE or SEND. Using the option Content Disposition, the end user can either set the adapter
as INLINE (meaning the data is viewable in the email) or ATTACHMENT (meaning the data is generated
as an attachment in the email)

Ramp Systems Interchange Users Guide 25 | P a g e


Mapping
The mapping icon is used to generate the requested output using the current input. Maps can be very
simple or complex and there can be more than one map in a setup. One map can even feed data
directly to another map.

In the first screen there are 6 fields

 Name: Assigned by the end user to identify the object. It’s recommended that the name be
relevant to the purpose of the map so it’s clear what it’s for
 Description: A non-mandatory field which can be used to provide additional information
 Source Message Type – the type of data that will be fed into the map. Depending on which
option is selected, this will control what the end user sees on the next field
 Source Message Name – This allows the end user to select a message that is already defined,
sorted by type. If Flat File Message was selected as the previous option, only Flat File messages
will be shown. If the requested message is not already defined, select New to create it. If the
message exists but needs review, select Edit.
o This allows the user to define how the data will initially come inbound to Ramp, whether
it be from a customer or an internal system
 Destination Message Type – the type of data that the map is expected to generate. As with
Source Message Type, the option selected will control what the end user sees on the next field
 Destination Message Name – This allows the end user to select a message that is already
defined, sorted by type.
o This allows the user to define how the data will be generated outbound from Ramp,
whether it be from a customer or an internal system

Note that the option Map Components is greyed out. This is because the map cannot be defined until
Ramp knows the type and message for each

Ramp Systems Interchange Users Guide 26 | P a g e


To illustrate how to map once you have the messages set, the following example will be used

The message types and names have been set so Map Components is now enabled. Once this tab is
clicked the following screen will appear.

The source message is on the left and the destination message is on the right. The grey workspace in
the center is where the end user will define how to convert the data.

To start, locate the field on the source data that you wish to start with and select it. This will
automatically create a line on the map. For example, assume W0502 in the EDI needs to map to Order
Number. First W0502 is selected

Then select Order Number on the opposite side to complete the link

Ramp Systems Interchange Users Guide 27 | P a g e


The same source value can be mapped to multiple destination values. Multiple source values though
cannot be mapped directly to one field. A Map Function must be used to control how that data is
mapped. If the wrong option is selected for a line, just click on the line and manually make the change
by reselecting either the source or destination option

Default Values
There may be instances where the values needed for the destination message do not exist on the source
or the end user wishes to default a value should the source value not exist.

Right click on an existing line and select New. If one doesn’t already exist, select the field from the
destination message to start the line

For a Static value, enter the value in the Default Value field. This will be a static value that Ramp will use
regardless of the data on the source. Please note that since Ramp will initially be looking to complete
the line, the end user should repeat selecting the New option after adding the value. Click on the new
line then select the option from the left. Click on the line again and select the option from the right.
This will restore the automatic mapping and allow for the other line to just have a Destination
Parameter and Value with no source value

For a Default value, select the source value then select the destination value. Enter the Default value in
the Default Value field. Ramp will interpret this as if the data exists on the source, use the source data
else use the default value. Since the line is being modified in addition to the automatic mapping,
following the steps after creating a static value to reset the mapping may be needed.

There are additional options available by right clicking on the workspace in the map

 Delete – Removes a single line from the map. Bulk deletion is currently not supported so each
line to be deleted will need to be removed one at a time
 Insert – Allows the end user to add a line at any part of the map. Select the line where the new
line should go to add
Ramp Systems Interchange Users Guide 28 | P a g e
 Move Up and Move Down – these options allow the lines to be moved as needed. The order of
the lines in the map may assist in troubleshooting however Ramp uses the destination message
to determine how the final output should be laid out, not the order of the lines in the map
 Comment Line and Activate Line – There may be instances where a line is mapped but shouldn’t
actually map the data. This may be due to troubleshooting or possibly a change request where
a field change needs to occur. When a line is commented, it turns yellow and Ramp ignores it
when executing the map. Activate Line is only available on a line that has been commented out
and restores the line functionality.

Map Functions
There might be an instance where some additional data manipulation is required in a map and a simple
one to one mapping does not suffice. Map functions allow the end user to do this and the following are
some examples of how to implement this useful feature.

A function can be used in more than one map even if the orchestrations are running in parallel. The
results are restricted to the map they are running so any lookups will stay with the setups they are
running in. It’s recommended functions have a meaningful name but also a generic name unless the
function will only be for that setup.

To create a new function or add an existing function, select the option from the upper left portion of the
map

SQL and Stored Procedure


There might be an instance where the customer is sending item data that doesn’t match what is in the
destination system. SQL and Stored Procedure Functions allow for lookups while the map is running to
locate the required information. Ramp can use SQL to format data as well however a database
connection is still required even though a lookup is not taking place.

Ramp Systems Interchange Users Guide 29 | P a g e


 Step – there can be multiple steps in a SQL function with multiple lookups taking place
 Type – SQL
 Database Resource Name – the database connection to use
 Object Name – if a stored procedure is being used, this option is available
 Enable Cache – this can be used to enhance performance. For example, if during the execution
of an orchestration Ramp determines a lookup needs to occur that it’s already done, it will
return the value that was found on the previous lookup attempt. This setting is enabled by
default but can be turned off if needed
 Command – the SQL command to execute when the orchestration runs. Values can be passed
from the source data using the symbol ? as a parameter marker
 Parameters – this is required and indicates placeholders for the values being passed in and
returned. If Parameter markers are used in the SQL, there must be an Input parameter and it
would need to be a one to one match to the markers.

The following is an example of a SQL Function

Ramp Systems Interchange Users Guide 30 | P a g e


In this hypothetical example, the partner is sending their own SKU on inbound orders and this function is
being used to access a cross reference table to return the SKU the warehouse requires.

The input parameter is Position 1 with the value incrementing for any additional Input parameters. The
parameter is assigned ? on the SQL statement. There must be a one to one ratio for Input parameters to
? symbols. If VendorSKU is being passed more than once, it must have multiple ? indicating each
location in the SQL that it’s being passed.

The output parameter is also in Position 1 as it’s the first Output returned. If multiple fields are being
pulled by the SQL statement then there would be multiple Output parameters.

SQL functions cannot return more than one row of data otherwise they may error so the SQL should be
designed to limit the output to one row of data.

A SQL Function can have multiple steps in case additional calculations are needed with values from each
step either being standalone or passed to the next step.

For example, assume for illustration purposes that a default SKU should be inserted if the Warehouse
SKU doesn’t exist. While this technically could be done in one step, this simple example is solely to
illustrate the functionality

Ramp Systems Interchange Users Guide 31 | P a g e


In this example, WhseSKU which was the Output parameter in the previous step is now the Input
parameter in this step. If there is no value, the system should return 99999999 else return the value
found in the previous step

Step 2 could also hypothetically have been a completely separate lookup with the values from Step 1
and 2 being passed to a Step 3. Even though the parameter WhseSKU was passed as an input to Step 2,
it is also available for mapping if needed.

A Stored procedure function has a slightly different setup

Ramp Systems Interchange Users Guide 32 | P a g e


In a stored procedure, all the SQL is defined in the procedure so the user would just define the name of
the procedure.

Input parameter would be defined as needed and if there are no input parameters, one should still be
defined to trigger the procedure

Unlike a SQL function where the output parameters start at position 1 and increment, the stored
procedure output parameters start at position 2. Each output parameter from the stored procedure will
need to be defined regardless of whether it will be used on the map.

While most functionality may be handled by using SQL, Ramp has built in functions to handle certain
operations.

Prepend and Append


This option is used if a value needs to be added to either the beginning or end of another value. For
example, assume a WMS is using a keycounter for records. Every time a record is created, the value
increments. The counter is an integer however in the WMS, the request is to have all counter values be
the same length.

Using the following with either Append or Prepend will fix the length of the value

Ramp Systems Interchange Users Guide 33 | P a g e


In this example, the value is being passed as an Input and the request is to Append 0 to the value until it
reaches the length (Factor) of 10 positions

If the counter generates the value of 9 and the option is set to Append, then it will return 9000000000.
If the value is 99999 then the value returned will be 9999900000 and so on. If the function is set to
Prepend, then the values would be 0000000009 and 0000099999 respectively.

Math Operations (Add, Subtract, Multiple, Divide)


Math operations can be completed without using SQL if desired by specifying the parameters and the
map operation to perform.

If one value is a specific value not in the source data (such as dividing or multiplying by 100), use the
field Value next to Name to define the static value. Data Type next to Name also may need to be
modified to indicate a numeric value vs a string

Multiple math operations of different types cannot be combined in the same step using this method. A
SQL function is recommended in those cases.

Ramp Systems Interchange Users Guide 34 | P a g e


Concatenate and Concatenate (Keep Space)
This allows the end user to join two or more strings together to create a singular output value. If a static
value should be joined to one of the values, use the field Value next to Name to define the static value

Ramp Systems Interchange Users Guide 35 | P a g e


Rounding
The system has multiple options for rounding a value

 Round Up
 Round Down
 Set Precision Round Up
 Set Precision Round Down
 Set Precision Truncate

In the following screen, value will be rounded up or down depending on the Type selected. Factor
indicates the number of decimal places.

Ramp Systems Interchange Users Guide 36 | P a g e


Setting Factor to a value of 2 rounds to two decimal places. Setting to Factor 0 removes all decimal
places.

Additional function options are

Trim (Left to Length), (Right To Length), Trim Space, Trim Left Space
These options can be used to remove spaces and trim an input value down to a specific length

Trim Leading Characters and Trim Trailing Characters


This option will remove specific characters from a string

Current Date/Time
This is the only function that does not have an input parameter. It is designed to generate the current
system date and time and return that to the end user.

Adding a Function to a Map


Once a function is added to a map, access to the input and output parameters are added

Ramp Systems Interchange Users Guide 37 | P a g e


Expand each option and it will list the parameters available for input and output

To map, take the value(s) from the source that will be sent to the function and map to the input
parameter

Then take the output parameter from the Source menu and map that to the destination field. Review
the example below

In this example, W0105 at the detail level was mapped to Vendor SKU in Sample SQL Function.

SKUtoUse was then mapped to the destination field Item.

WhseSku appears as an Input and Output Parameter as it’s the output of Step 1 but also the Input of
Step 2.

In the case of a function with multiple steps, the initial inputs and final outputs are usually mapped. A
parameter would also be mapped if it is needed on an intermediary step that but isn’t passed on a prior
step.

Ramp Systems Interchange Users Guide 38 | P a g e


Exporting and Importing Objects
A backup of any object in the system may be created by selecting either Export or Import after right
clicking on any menu.

To Export, first click on the record to export then select Export. If the record is not selected, Ramp will
return a popup indicating “Please Select a Record to Export”. Once Export is selected, the end user may
select a path and filename to save the file. It’s recommended the file name indicate the name and type
of an object. The file extension used for these objects is .RDO (for Ramp Database Object) and may be
added afterwards if not selected on the export. This export may then be sent to Ramp Support if
needed or reimported to any Ramp setup. Before reimporting, be sure that the object in question
doesn’t already exist as Ramp will overwrite all settings related to an object. If for example, a map is
being reimported the source and destination messages will also be reimported along with any functions
or other settings on the map. If other objects use these, a reimport may also affect those setups.

To Import, select Import and then select file to import. The user must be in the relevant menu to do the
import as a Map Object cannot be imported into a Database Message screen. Ramp will return an error
if the wrong association is made and will note in the error the type of object that is being imported. This
should assist the user in selecting the correct object.

Ramp Systems Interchange Users Guide 39 | P a g e


Creating or Modifying Setups
Orchestrations
Before the user can create a setup which in Ramp is referred to as an “Orchestration”, a workspace must
be created. To do so, select File then New Orchestration. You can also select Open Orchestration if you
have a previously saved object. This documentation will assume a new setup.

Once New Orchestration is selected, a screen like the following appears.

The “Start Shape” feeds data into the setup. To define the Start shape, double click on the Start Shape.
The default option is Automatic, meaning not yet defined OR fed by another Orchestration or setup.
Setting it to use an adapter may be set by selecting the drop-down arrow

Ramp Systems Interchange Users Guide 40 | P a g e


Once Use Adapter is selected, the user will have the option to indicate the type of adapter to use.

Once Adapter Type is set, Adapter Name is filtered based on Adapter Type. For example, if AS2 is
selected, only AS2 adapters defined in the system are shown. The user can also choose to create a new
adapter if one does not already exist.

Please note the Start shape will not show all adapters as it filters out those that send data. Only those
that are setup to receive data are shown on this screen. If creating a new adapter, it is recommended
that the type be included in the name (such as Test Disk Read) as the adapter shape doesn’t change
based on type after creation.

Additional instructions are set by dragging objects from the Design screen onto the workspace. Each
object has a red arrowhead. The arrowhead should be dragged to the next object in the sequence using
the mouse and then released. When the arrowhead turns from red to green, that means the objects are
connected.

Please note the arrowhead must be dragged to the object to connect it. The object cannot be backed
into the arrowhead to make the connection. Even if the objects appear to be touching, if the arrowhead
is not green, they are not connected.

Objects should be connected in the order that they will be executed and not all objects are required for
each setup. An Orchestration at a minimum must have a Start and a Finish shape so a user may save a
work in progress by adding a Finish shape to it. If a setup does not have a Finish shape, it may not
properly save.

Ramp Systems Interchange Users Guide 41 | P a g e


The following is an example of a simple orchestration

In the example above, the Start shape is associated with a disk read. This pulls data into the
Orchestration and passes it through the map. The output from the map is returned to a disk location
followed by a Finish shape advising Ramp that all steps in the job have been completed.

Please note that objects may be used in multiple orchestrations and deleting them from an
orchestration will not delete it from Ramp. If the object is deleted from any menus, that will delete the
object permanently and the deletion cannot be undone. Great care should be taken before
permanently deleting any object as if another setup uses that object, Ramp will encounter performance
issues when the other setup attempts to locate the now deleted object. If an object was deleted in
error, it should be recreated with all settings including the same name that the previous object had. If
the end user had exported the object out of Ramp prior to deletion, the object may be reimported.

Schedules
A schedule allows a setup to run unattended at an interval of the end users choosing. Data is logged as
if it was run manually so the user has access to logging in case any review is needed

There are three ways to define and set a schedule. Two of them are illustrated below

Ramp Systems Interchange Users Guide 42 | P a g e


Select ComponentsExecutionSchedules to access the schedule menu to create or modify a schedule
or select FileSettings from the Orchestration menu and select New next to schedule name. If using
the Orchestration interface and an existing schedule exists, there is no need to select New. The user may
just select the Schedule Name from the drop down.

If creating a new schedule, the screen below will appear.

 Name: Assigned by the end user to identify the object. It’s recommended that the name of the
schedule reflect its purpose such as “Run Every 30 Minutes”
 Description: A non-mandatory field which can be used to provide additional information

Then select Schedule Components to define the actual schedule

Ramp Systems Interchange Users Guide 43 | P a g e


Certain options will either be available or greyed out depending on what is selected.

 Run Time
o Batch – Time Window: Allows the end user to indicate specific start and end times with
a specific “sleep time” in between runs.
o Batch – 24 Hour: Indicates to run all day with a specific “sleep time” in between runs.
o Fixed Time – Daily
o Fixed Time – Weekly
o Fixed Time Monthly
 Interval (in Seconds) – Indicates a sleep time in seconds. For example, if the job should run
every 30 minutes then it would be 60 seconds x 30 minutes which would result in 1800 seconds
as a sleep time. Please note the sleep time should be a reasonable time which would allow
Ramp to process data if it finds it. Setting a sleep time to anything lower than 5 minutes may
cause performances issues.
 Days To Run – at least one day must be selected before the schedule is enabled. The end user
may select Monday – Friday, Monday – Sunday or another combination of days. Failure to
select a value before enabling the schedule may cause performance issues.

If the Schedule option is set to Fixed, some of the options will change

Ramp Systems Interchange Users Guide 44 | P a g e


A schedule, like a message, may have multiple components so if a schedule needs to run at certain times
on different days, multiple components may be added. When adding different schedules to the same
object, be sure to review them to ensure they don’t conflict.

Activating a Schedule
Once a schedule has been defined to an object, it must be enabled if the schedule is not already set to
Enabled. Please note schedules are independent of any objects in the system so the same may be
associated with multiple objects. It may be enabled for one but not another.

To enable a schedule for a specific Orchestration, open it and select FileSettings

Ramp Systems Interchange Users Guide 45 | P a g e


Ensure a Schedule Name is set then select Schedule Status. Enabled will turn on a Schedule for that
object and Disabled will turn it off. If Schedule Status is set to Enabled and no schedule name is set, the
logs will report an error for the job indicating that the next run time could not be determined.

The scheduler inside of Ramp must then be refreshed to ensure the schedule is activated. To do this, a
full reset of Ramp is NOT required. Select SystemSystem ManagerManage System. The following
box should then appear

Select Stop to stop the current scheduler then refresh to refresh all settings and finally select Start to
restart it. When stopping the scheduler, ensure the status returned is Stopped. If the reset returns an
error message indicating that the scheduler cannot be stopped, it’s most likely due to job still running in
the background and the end user should give a few minutes to allow for completion. If this doesn’t
clear, then stop and restart the Ramp Service on the server. Restarting the service automatically
refreshes the scheduler and only takes a few moments. A full restart of the machine is not required.

Restarting the scheduler is preferred to restarting the service as it normally allows any jobs in process to
complete.

If the schedule does not need to be come active until the next day, no action is needed as Ramp
automatically resets it’s scheduler at midnight.
Ramp Systems Interchange Users Guide 46 | P a g e
Database Resources
Before interfacing with a database, a resource object must be created in Ramp to tell Ramp how to
connect to it.

To do so, select Components from the lower left-hand corner, then Resources from the blue area
followed by Database Connections. If you have not created a new database connection yet, right click
and select New. Otherwise Search should be used to pull up all existing database connections at which
point the user can select one and either Edit or Delete it.

If the user selects New, they will see a screen like on the left side of the image. Otherwise, an existing
one will show up as on the right side of the image.

Database URL indicates the connection string to connect to the database. It will vary depending on
which database platform the user is interfacing with however it requires the use of the
JDBC syntax. The example above is for Microsoft SQL Server

In this connection string jdbc:jtds:sqlserver://127.0.0.1:1433/RAMP:

Ramp Systems Interchange Users Guide 47 | P a g e


 The IP 127.0.0.1 indicates the SQL server resides locally on the machine where Ramp is installed.
LOCALHOST can be substituted in that instance and if the database is on another server the DNS
name or IP address for that machine can be used.
 1433 is the default port used by SQL Server. Whatever database server is being used, the port
should be static not dynamic as Ramp cannot connect to a database application on a dynamic
port.
 RAMP is the name of the database. If more than one database exists on the server and Ramp
will be connecting to both, more than one entry is required in the Database Resource screen.
For example, there might be one entry for database Ramp as
jdbc:jtds:sqlserver://127.0.0.1:1433/RAMP and one entry for say database CUSTEDI as
jdbc:jtds:sqlserver://127.0.0.1:1433/Custedi. They both reside on the same database server
however each requires its own entry in Database Resource.

Once the information has been entered, it may be validated using the Test Connection option

If the test is successful, the box on the right-hand screen will appear. If there is an issue, a box will
appear indicating what might be the issue

Ramp Systems Interchange Users Guide 48 | P a g e


Select OK to clear the error after noting it and make whatever changes are needed. In some instances, it
may be necessary to revisit the connection setup after any needed changes are made to the object (such
as permissions or logins)

A connection can be created and saved without being tested. The testing option allows for validation of
the connection but the step is not required.

Ramp Systems Interchange Users Guide 49 | P a g e


Messages
Before Ramp can process data for mapping, the data layouts must be defined. These layouts are
referred to as Messages.

There are multiple message definitions available in Ramp

 X12 EDI – utilizes the X12 Standard


 EDIFACT – utilizes the EDIFACT Standard
 XML – Message layout is in an XML format
 Flat File – a structured file that doesn’t fall under the first three categories. Examples include
o XLS and XLSX formatted files
o Data Positioned Flat Files
o Delimited Flat Files
 Database – interacts with a database

Database Messages
Database Messages indicate how Ramp should interact with the database once it connects. To create a
Message, the user should select Components from the lower left followed by Messages and then
Database from the blue area. If the user is already in the components submenu, there is no need to
reselect Components

When setting up a new Message, the user should first provide the name of the object. It should be a
descriptive name that indicates what the object will do (ex: Sales Order Select). The Description field is
not required.

If the user selects New, they will see a screen like the following. Type has been selected in this image to
show the various options available

Ramp Systems Interchange Users Guide 50 | P a g e


There are multiple types of Database Messages and the Messages can include more than one type.

 Insert – Singular or Multi-table insert into a database. If doing an insert into more than one
table, they can only exist in the same database. The user cannot use the same database
message to insert into multiple tables in different databases.
 Insert or Update – check to see if the record exists and act accordingly. A message key is
required for this functionality to work
 Insert if Not Exists – Similar to Insert or Update except that it only acts if the record does not
exist.
 Update
 Delete
 Stored Procedure – calls a specific stored procedure as designated by the user. Like with inserts,
being used in a database message with multiple types, the stored procedure must exist in the
database the other objects are referencing

Ramp Systems Interchange Users Guide 51 | P a g e


 Select – can be setup to perform a Single or Multi-table select. While an insert can be setup
with multiple objects pointed at different tables, a select should be a single object referencing a
single table or multiple tables via a join.
 Execute Script – can be utilized if the user has a specific script to run or if the database
requirement falls outside one of the existing setups.

A Database Resource is normally not required prior to creating the Message however it is useful in
setting up the message as the user can utilize the Database Component Builder to assist in setup. It also
has the added benefit of helping the user test the connection to ensure no issues

To activate the Database Component Builder, the user should select Edit – Database Component Builder
from the Database Message screen

If the Database Component Builder will be used, any settings already in place on the Database Message
(except for the name) will be overridden.

If the User has SQL they already have defined and wish to use that instead, they can copy the SQL into
the Select portion of the database message screen and select Build Component Parameters

When the user selects either Database Component Builder or Build Component Parameters, the
following screen appears

Ramp Systems Interchange Users Guide 52 | P a g e


It initially comes up with option of N/A and the user should select the drop-down arrow to indicate
which database connection should be used.

If the user selects OK, the client may initially appear to have frozen while the connection is established.
If Build Component Parameters was selected, the system does not proceed past this step once it
validates the SQL and creates parameters.

With the Database Component Builder, once the connection is made, the system pulls a copy of the
schema that the login has rights to. Depending on the network resources and size of the database, it
may take a few minutes to retrieve the data initially. Once this has been done once, the system should
cache this information so the user doesn’t need to keep waiting if they rerun the builder.

If the connection errors, the user can retry by modifying settings in the screen. These settings however
will not update the Database Resource so once any issues are resolved, the user should go back to the
Database Resource screen to make any corrections.

Once the connection is established, a screen will appear like the following

Under Database Component Type, select what type of Database Message is required

Under Object, select the table needed

Once both have been selected, the user can either select Move All (recommended for single table) or
drag and drop individual fields from left to right (recommended when one or two fields are required or
in conjunction with a Move All if doing a multi-table select). If doing a select and a multi-table select is
required, select an additional object then repeat the process before selecting OK. Otherwise select OK.

Here is an example of a Sample Insert

Ramp Systems Interchange Users Guide 53 | P a g e


If an additional table insert is required, it’s recommended the user do the following

1. Change Name under Current Component from DEFAULT to something meaningful


2. Right click under Component List and select New.
3. Give the additional component a meaningful name and then select Database Component
Builder again.

If doing an “Insert if Not Exists” or “Insert Or Update”, the system will key off either a singular or
multiple value to check to see if the value exists in the database before proceeding. Those values can be
selected by selecting the specific parameter(s) from the Parameter list and change Type from Input –
Normal to Type Input – Message Key.

Here’s an example of a multi-table insert with a message key and Insert if Not Exists set

Ramp Systems Interchange Users Guide 54 | P a g e


Ideally the user should select a limited number of values to be Message Keys. Having too many may
cause additional processing overhead.

Here’s an example of a Single Table Select followed by an example of a Multi Table Select

Ramp Systems Interchange Users Guide 55 | P a g e


In both instances the table name is prepended to the field name in the SQL however in the multi-table
select, the field name is prepended on the Parameter Name as well. This is because two fields can share
the same name but exist in two separate tables and this allows the user to differentiate each when
mapping.

Also, note that the parameters are of type “Output” on the Select as they are values returned to Ramp
whereas on the Insert it is type “Input” as it’s being inserted into the database. In the case of a Select,
there should be one parameter per field being returned on the SQL. For example, if the select is
returning 26 fields, the number of parameters should also equal 26.

If the user needs to edit the statement to add or subtract fields, the parameter list can either be
manually modified or the user can run Build Component Parameters to reset the list to reference the
most current number of fields.

In the instance of a Stored Procedure, there will be Input AND Output values depending on whether
data is being fed into the Stored Procedure or if it’s just being called. The following is an example of a
Stored Procedure in a database message. Note this is the same DB message from the Multi Table insert
however it’s a different step

Ramp Systems Interchange Users Guide 56 | P a g e


Object Name indicates the name of the procedure. In this example, the procedure is called GEN_ID

Parameter Type Input indicates the value(s) to be passed in. These can come from a Map Object or they
can be hardcoded (as shown above). In this case, the hardcoded value is GEN_PDETAIL_LINE_ID

Output indicates the value to be returned. There should be one output parameter per field returned.

Component Map
When doing a database insert it may be necessary to generate a key value that then gets passed to the
associated parts of the message – for example a primary key on a header record that must also be
placed in the detail records

This can be accomplished utilizing a component map

Ramp Systems Interchange Users Guide 57 | P a g e


In this example, a stored procedure is called as the first step which generates the value required

The component map tab then specifies what field this value should be inserted into at each step of the
insert

Ramp Systems Interchange Users Guide 58 | P a g e


XML
As XML messages do not have a standard definition and can be user defined, it is best to review an
example of the document the user is attempting to setup to understand the flow before proceeding.

Ramp can utilize a sample message as a template to create the desired message layout.

1. In Interchange Main Client, go to ComponentsMessagesXML Message


2. Right Click and Select New
3. Assign it a name and select XML Hierarchy

4. Select EditXML Message Builder

5. Select XML Text and then FileOpen XML File


6. Select a sample file and select OK. A greyed-out version of the file should appear in the
background. If you receive an error, please confirm you can open the XML outside of Ramp and
contact Ramp support if you can
7. Select EditCreate Message Nodes.

Ramp Systems Interchange Users Guide 59 | P a g e


8. Depending on the XML content, it may take the user to some additional popups. The user can
either choose to accept with no additional criteria or to use additional criteria such as an
attribute

The left screenshot would be if the user accepts the existing option. The second screenshot
requires the user to select the option from Repeating Node Type. The user must then key in the
Attribute name to use as that does not auto populate. An example of when a user might use the
latter is below

Ramp Systems Interchange Users Guide 60 | P a g e


9. Once all popup boxes are cleared, the screen will return a listing of what Ramp perceives to be
all elements in the XML. The data from the sample XML is not transferred over as Ramp only
uses it for a Template

10. The user would then break the data out into components as needed – for example breaking up
the data into Header and Detail information. For reference purposes the user can highlight the
first row then scroll down to the XPATH to confirm where in the layout Ramp is referencing.

Ramp Systems Interchange Users Guide 61 | P a g e


a. Select the first row of the grouping and then scroll down to the last row to be assigned
to that group. Using the shift key, select it and it should highlight all rows to be
Assigned
b. Select Edit - Assign Selected Rows to Component and give it a Component Name,
Hierarchical Level and Sequence.

Ramp Systems Interchange Users Guide 62 | P a g e


If the user is not sure what values to assign for the last two options, it is recommended
initially that the numbers be incremented as Components are defined. This can be
changed after initial setup if needed.
c. Repeat the process until all lines are assigned.
11. Once all lines are assigned, select Ok then FileSave

Ramp Systems Interchange Users Guide 63 | P a g e


Flat File
A flat file has a defined structure but is not an X12 or XML file. The structure must be meaningful to
allow Ramp to parse and map the data.

The three main types are

 Delimited – single or multi line with a defined delimiter


 Positional – single or multi line with each field in a specific position
 Spreadsheet XLS or XLSX - single or multisheet

Because a flat file is user defined, the user must explicitly state all positions that could appear in the file
regardless of whether they are being mapped.

When creating a flat file, the first screen has the following options

 Name: Assigned by the end user to identify the object.


 Description: A non-mandatory field which can be used to provide additional information
 Type
 Columns Identified – if the source data have column headers that take up one row, Ramp will
ignore the first row if this option is selected
 Delimiter – what delimiter the file uses if applicable
 Text Character – if the file has delimiters, would be used to note a text value that might contain
the delimiter so Ramp will ignore it
 Pad and Escape Characters if applicable

Ramp Systems Interchange Users Guide 64 | P a g e


 Ignore Undefined Lines – by default this option is set to no. There might be an instance where
this value should be enabled – for example if the customer is known to send a line or set of lines
in the file that may not be able to be defined and that Ramp should ignore .
o Please note that when this setting is enabled, Ramp will log that it’s ignoring a specific
line but will not error. This may be beneficial in avoiding errors, but the caveat is that
you will not get an error so if the partner changes the file format, there will be no
notification until the partner reports issues with mapping.
o There may be instances where despite setting this value, Ramp will still throw an error if
it’s unable to start parsing the file.
o As a general rule, it’s recommended this be set to No unless no other workaround is
available.

Once the initial options are set, click on Message Components

The Name field can be edited to replace DEFAULT with an alternate value or it may be left as is. In a
single format flat file, changing the value is not required however in a multiline multiformat flat file, it’s
required.

Right click under Data Elements to add the number of positions required and field names. The option
Add Multiple allows for adding of multiple fields at one time. Please note that Ramp requires a name
for each field before it will allow the profile to be saved so if multiple fields exist in the file, it may be
helpful to add them in batches of 5 or 10 in case it needs to be saved and revisited later.

If the source data has column headers, a sample file can be used to automatically create these values.

Ramp Systems Interchange Users Guide 65 | P a g e


When adding fields, the field names must be unique even if they may not be in the source data. So if
the source file is formatted as:

Name
Address
Address
City
State

It will need to be entered into Ramp as something similar to the following to ensure each field name is
unique:

Name
AddressOne
AddressTwo
City
State

If the fields are entered and duplicate fields exist, Ramp will place a red bar on the field that appears to
be the issue and show a message indicating the field in error

Ramp Systems Interchange Users Guide 66 | P a g e


As fields in a delimited file are parsed by the delimiter, the fields Column Start, Length, Minimum Length
and Maximum Length do not need to be filled in. If the file is defined as a positional file, then the end
user will need to fill Column Start and Length in. Minimum Length and Maximum Length will auto
populate. As a short cut, just length can be populated and when the message is saved, Column Start will
autopopulate

Please note that Ramp considers the start position in a file to be position 0, not position 1. It would also
be helpful to obtain from a third party a positional text editor as such editors report the rows and field
positions in a data set. There may be instances where a specification for a positional file does not match
the actual data provided and a positional editor can assist in narrowing down the cause.

Multi Format Flat Files


A flat file may come in with multiple rows of data – each row having a specific meaning. Each unique
line requires it’s own entry in Component List.

Assume the following example

H,PO-123456,Caleb Sessums, 425 Main Street, Anytown, US


D,654924, “Deluxe Charcoal Grill with Tools”, 1, EA

Each line would need to be defined separately with each field defined

In the first component, the name was changed from DEFAULT to Header as it was more descriptive

Ramp Systems Interchange Users Guide 67 | P a g e


Note also the first line is set to Type Line Identifier (which can be set by changing the value via a drop
down menu) and a Value of H. This tells Ramp when reading the file to use this entry for any line that
starts with an H.

The OrderNumber field was also changed to Normal – Message Key telling Ramp there is a new order
each time this value changes. Ramp only validates that the value changes, not that Ramp has or has not
already processed it. If the OrderNumber repeats in the file, it will repeat in the destination. It is up to
the partner to ensure quality data is passed.

Ramp Systems Interchange Users Guide 68 | P a g e


In addition to setting a Line Identifier (with value of D) like the Header, the value Child of is set. This
mimics EDI looping and may or may not be required depending on how the source data is provided. In a
structured file it tells Ramp how the data is associated so it may be correctly mapped.

Ramp Systems Interchange Users Guide 69 | P a g e


EDI X12
Unlike most other message definitions that are user defined in some way, X12 EDI follows a specific
standard. There are multiple versions of EDI available with the most common being Version 4010.

Because X12 follows a standard in regards to how the documents are identified, read and processed,
Ramp automatically understands how to process the data and has the standards preloaded to assist in
setup

Defining an X12 Message


While EDI follows a standard, there is no “standard” of any document in EDI. For example, there are
multiple segments that can appear in an EDI document depending on the purpose and use of the
document. The user must select, from the available segments, which ones would apply to their specific
needs.

In the first tab, the user should define the following. What is selected on this screen determines what is
shown on the following screens.

 Name: Unless your organization is defining the requirements for partners to send to you, it’s
recommended that a layout be created for each partner.
o Tip: Putting the name followed by the document number groups setups for each partner
together in the message list
 Description: This is for the user’s own reference and is not used by Ramp
 Standard: Either X, U, or VICS.
o Tip: If unsure of what the standard is, leave it as X. It may be changed later
 Version: 4010 is selected by default. If another version is needed but not loaded, contact Ramp
Support
 Transaction Set: The user may select the document number from the drop down or may start
typing the document number to fast track to the document required.

Ramp Systems Interchange Users Guide 70 | P a g e


Once the first tab is completed, select X12 Segments and Elements.

While the user does have the ability to manually create lines, the use of the X12 Message builder is the
suggested approach.

Right click on the Edit menu and two options appear

 Choose X12 EDI Segments – This allows the user to define the initial layout. If a layout already
exists and this is selected, it will replace the existing layout
 Add X12 EDI Segments – This allows the user to update an existing layout, in the event of a
change

If the user selects Choose, the following screen appears

On the left are all the possible segments that could exist in a 940, which was selected on the previous
screen. Click on each segment that is required and select Add to move it over to the right-hand column

Multiple source segments may be selected by holding down the Ctrl key and using the mouse. There is
no “Move All” on this screen because only the segments that will be received should be selected.

Note that lines such as ISA, GS, ST, ST, GE and IEA do not appear on this list. That is because they are EDI
Control segments that appear in every EDI document and as such are added by default.

Ramp Systems Interchange Users Guide 71 | P a g e


If an incorrect segment is selected, it may be highlighted on the right and removed using the Remove
button

If the segment list doesn’t match what you need, select Cancel and go back to the previous tab to
ensure the correct document number was set

Segments are listed in the order that they appear in the standard and at times there can be more than
one instance of the same segment. Use a specification or sample document as a guide to ensure the
correct segments are selected.

In the example for fictional company Scuba, the N9 and G62 lines repeat however in the EDI layout they
only need to be defined once for now

If after creating the EDI layout, it’s determined a segment was not selected, select Add from the Edit
menu and then select the segment(s) required. Once that is done, the initial view of the EDI layout may
change and it may appear that it’s not loading correctly. That is because the screen resorts by position
number where as the original screen sorted by Segment Type and Position Number.

Once you have selected all the required segments, select OK. A screen like the following should appear

Ramp Systems Interchange Users Guide 72 | P a g e


Selecting any row from the top will show the defined positions for that row

Now, as indicated earlier, the N9 and G62 segments repeat. For values in these fields to be properly
captured for mapping purposes, qualifiers must be set.

Qualifiers are needed when the data repeats and the Qualifying position (which varies by segment)
changes the business meaning of the data.

Ramp Systems Interchange Users Guide 73 | P a g e


For example, in the data below G6201 (which holds either 68, 10, or 01 in this case) indicates the
meaning of the date.

G62*68*20181219~
G62*10*20181206~
G62*01*20181219~

Some companies may send the same segment multiple times with different qualifiers but only one or
two may be needed by the recipient. In that instance, only the required qualifiers should be defined. All
others can be ignored.

To add qualifiers, highlight the segment then highlight the element to be qualified

That should bring up the following window

Ramp Systems Interchange Users Guide 74 | P a g e


Loop Id is blank because there is no loop id defined in the standard on that line. If a line with a loop id
had been selected, then Loop ID would be filled in.

To add qualifiers, type in the first qualifier and then select Add&New and continue to add as many as are
needed. Once all qualifiers are added for that segment, select OK. If Add&New is accidentally selected,
just select Cancel and all qualifiers previously added will remain.

If an error was made on any qualifier or to review what qualifiers have been added, select X12 Qualifiers
from the X12 Message screen. Qualifiers may be edited, deleted and added on this screen.

Note if you add qualifiers on this screen, be sure to select the correct loop id and Segment Type else
Ramp will not be able to match up the qualifiers to the segments.

When viewing the X12 Profile on the Mapping Screen, the layout with no qualifiers defined appears on
the left. The same layout with qualifiers defined appears on the right

Ramp Systems Interchange Users Guide 75 | P a g e


856 ASN
An 856 is a unique document in the EDI standard in that there are defined levels where the same
segment can appear multiple times. The document usually informs of a Shipment, the Orders on that
shipment and the various attributes related to each Order and the Shipment as a whole.

Ramp handles this document by having the user define one instance of each segment that could appear
then the Level structure. For example, if TD1 (Weight and Pieces) appears at the Shipment and Order
levels, it only would be defined once in the X12 layout initially

Ramp Systems Interchange Users Guide 76 | P a g e


To assign levels, select segment HL, then element HL03 and then right click to add qualifiers. Qualifiers
should be placed in order depending on the document structure. If editing of the level qualifiers is
required, select X12 Qualifiers and modify the values as needed.

In the mapping tool, this layout would appear like the image on the left without HL qualifiers defined
and on the right with HL qualifiers defined.

EDI Control Segments


When mapping an EDI profile, the grouping Control appears along with the segments that were defined
by the user.

Ramp Systems Interchange Users Guide 77 | P a g e


It is not necessary to map from or to this grouping as the values are set normally on the relevant trading
partners.

It’s available as part of the source message should the end user require a value from it. On the outbound
message, it may be mapped to if the end user needs to override a value on the trading partner when
generating the document, such as if the value in ISA11 must be replaced with a non-standard value

Ramp Systems Interchange Users Guide 78 | P a g e


Logging and Execution
Execution
Once a user has completed an initial setup, it may be manually executed by selecting the System tab
from the lower left corner of the screen followed by System Manager then Manage Orchestrations. This
will return a listing of all Orchestrations saved by the user.

To manually execute a setup, right click on it and select the desired option from the popup box

 The user may make modifications to the job by selecting Edit OR by closing the screen and going
to File then Open Orchestration.
o If an Orchestration is being modified while Manage Orchestrations is open, the Manage
Orchestration screen should be closed and reopened before running that Orchestration
as the Manage Orchestration screen will execute based on how the setups were built
when the screen was opened.
o Selecting Edit from the Manage Orchestrations screen when modifying a job will update
it to have the most current information on an Orchestration.
 Enable and Disable are only used if the job has a schedule attached. Selecting Disable does not
prevent the job from being run manually.
 Once the user selects Execute
o If a popup appears, that may indicate an issue with the setup
o If the screen appears to hang for a brief period, it could indicate either a large data set
or setup issue
o If the box disappears, that means the job completed without error. It does not
necessarily mean that the desired output has been achieved

Logging
To check the status of a setup after execution, the user should select System Monitor followed by
Execution Logs then Orchestration Log. Once the screen appears the user can either right click and
Ramp Systems Interchange Users Guide 79 | P a g e
select all activity or add filters. It’s recommended initially that no filters be set until the user has
confirmed activity on the system.

 Range – specifies time period to search. Default is last hour


 Orchestration Name – indicate the specific orchestration to return activity for. Default is all
 Status – there are four options that can be selected
o Any – all activity
o Error – only jobs that have errored
o “Success – Data Processed” – the job found data and completed without an error
condition being returned
o “Success” – Also includes instances where the job ran without error however no data
was found. This will appear in the activity window as “Success – No Data Processed”.
 Depending on the setup in place, this can be used to advise a user that a setup is
running correctly or of a potential error condition if there are repeated
occurrences of no data found when data is expected.

Once activity is returned, a screen like the following will be returned. In the example, a specific job and
time frame was selected. All entries within the specific time period are returned along with indications
of when they ran (Start Time) and time completed (End Time)

The user may right click on a specific entry for more information.

Ramp Systems Interchange Users Guide 80 | P a g e


 Search – Repeats the search using defined criteria. Depending on options selected, it either
refreshes or replaces the data set returned
 Reset – clears the screen of all results but does not reset search criteria
 View Log – Displays a text file indicating all steps taken when the Orchestration was running
o Error conditions are indicated in Red text whereas general logging is in black text.
o If a job is in error a notation will appear at the end of the log however the user may
have to scroll through the log to see where the full error message is logged.
o If the logging is verbose, the user can either save the log to disk via the File menu in that
window or copy to a preferred text editor using keyboard shortcuts. For example, in
Windows Ctrl A will select all, Ctrl C will copy to the Clipboard and Ctrl V will paste to the
preferred text editor after which the user can search on the word Error.
 View Documents – Allows the user to view the source data fed into Ramp as well as the output
data returned. See example below
 Retry – when a specific entry is highlighted, this option will re-execute the orchestration, even if
it is in a Success condition.
 Retry All – this will retry all orchestrations currently displayed regardless of what their status is.

The following is an example of what the user might see when selecting View Documents. The first tab
indicates data fed into Ramp and the second tab indicates output returned. By right clicking on the
Document entry, the user may view the input or output in Ramp.

The user also has an option this screen to retry the document.

Ramp Systems Interchange Users Guide 81 | P a g e


Ramp Systems Interchange Users Guide 82 | P a g e
Document Tracking

In addition to the Orchestration Logs, Ramp provides document tracking broken down by document
type and direction

Inbound Document Tracking refers to data coming inbound to Ramp whether it be from a customer or
from a system internal to your organization

Outbound Document Tracking refers to all outputs created by Ramp whether they are destined for a
customer or are being sent inbound to internal systems.

The view will vary depending on the data type selected. For example, an X12 layout will appears
follows. Please note that due the number of columns in the X12 view, two screenshots are used.

If the user is doing a search based on flat files, the screen will appear as follows

Ramp Systems Interchange Users Guide 83 | P a g e


On these screens the users have the ability to search by message name or a specific reference number in
the message if a field in the message definition in Ramp has been setup to be tracked. In the instance of
X12 messages, reference numbers such as ISA, GS and ST control numbers are tracked by default.

If the document is an X12 document, the fields Sending Trading Partner and Receiving Trading Partner
will be filled in with the user defined Trading Partner name.

If they are blank then either the trading partner is not yet setup or the values used do not match what
was actually received.

Ramp Systems Interchange Users Guide 84 | P a g e


Branch
A Branch shape has a simple purpose. It gives the user the ability to route the same source data (or
modifications of it) down multiple paths. The Branch shape is located on the Design tab.

There only two options in a branch

The first is the number of Branches. The minimum number is two however there is a maximum set of
100. A Branch shape can also connect to another Branch shape which may assist if there may be
additional paths to select.

The second option is Continue When Branch Errors. The purpose of this option is to instruct Ramp if it
should proceed if an exception occurs. For example, if the system is reading a database message to
generate a file and the output errors, does the end user wish to mark the records so they aren’t
reprocessed.

If for example, the end user selects two Branches, the icon on the left is what will appear. The end user
can then use their mouse to split the arrow into the two Branch options. Note that while the middle
icon has 1 on the top and 2 on the bottom, the third icon has the reverse. In either case, branch 1 will
be executed before branch 2

Ramp Systems Interchange Users Guide 85 | P a g e


Rules
A Rule shape is used to check for specific data conditions when processing data. There are three tabs in
a rule shape

 Main – indicates name of Rule and for some types provides additional commands to run
 Rule Parameters – value to check for
 Rule Output – value to check against

Rules can only check for one condition at a time so if multiple conditions need to be checked, a rule
shape should route to another rule shape.

Unlike other objects, Rules have multiple arrows when created. There is an arrow for each potential
output along with one designated as “Not Matched” meaning the data did not meet any of the
conditions in the check. This allows the user to control what happens to data that doesn’t meet the
conditions being checked. In those instances the data can be routed to a rule, sent using an adapter or
even dropped by routing to a Finish shape.

The following are a few examples of ways a Rule shape may be utilized.

Check Based on File Name


To check for this condition, provide a rule name on Main. The following is an example of what might
appear on the additional tabs

The Rule Parameters tab indicates that the document property of File Name should be checked and the
Rule Output tab indicates the values to check for.

Note that as the Position value under Rule Parameters is 1, the position value for Rule Output is also 1

Check for Value in Document


The Rule Parameters tab indicates that a specific value in a specific message layout should be checked
and the Rule Output tab indicates the values to check for.

Ramp Systems Interchange Users Guide 86 | P a g e


Sort X12 Data by Type
Unlike the previous example where a specific message layout is used, this example references only the
EDI control segments. This is because the rule is used to determine which document type is being
received.

Check Source Data Using SQL


When using this option, the user has the ability to check a database for a specific condition or check for
a specific condition in SQL data sent in via the Start Shape

In the first tab, the user is defining a specific SQL command to use. Please note for this specific example,
the SQL is being run against the data being passed to it and as a result the data set must be the output
of a database select or stored procedure.

Alternatively, the user could use SQL that checks a database for a specific record or condition passing a
value from the source data.

In the SQL defined, the ? symbol is used as a placeholder to indicate where the parameter value should
be passed in.

Ramp Systems Interchange Users Guide 87 | P a g e


On the second tab, the user indicates which field from source data should be used to complete the
statement

On the third tab the user indicates what output value to check for

Ramp Systems Interchange Users Guide 88 | P a g e


Once the Rule Object has been defined, if it is dragged into (or created in) an Orchestration, it will
appear similar to the first object. The user can then separate the arrows to view all outputs

Ramp Systems Interchange Users Guide 89 | P a g e


Spinner
Spinners are used to process huge files or large amounts of files one message contained within at a time

Spinners should be placed after the Start Shape at the beginning of the Orchestration

There are two ways a Spinner can be utilized

1. File Spinner – An example of where this might be used is if you have a Start Shape with an FTP
receives 5 files. Instead of passing all files to next step, for example a map, it sends one file at a
time thru the entirety of the rest of the Orchestration, then comes back and gets the next file. It
can be modified to allow continuation on error.

2. Message Spinner – In this example, any number of files are passed. Ramp reads all of them into
messages. If you had one 940 file with 10 orders, Ramp sees that as one file with 10 messages.
It would send each message one at a time thru the rest of the orchestration, same as above.

The Spinner Options are as follows

 Name: Name assigned to the Spinner


 Description: Additional text descriptions if needed. This is not required
 Spinner Type: Message or File Spinner
 Message Type: Message Type being Received

Ramp Systems Interchange Users Guide 90 | P a g e


 Message Name: Specific Message Layout to be used. This value is filtered based on the Message
Type indicated
 Continue On Error: If the system encounters an issue, should it continue to process the data or
stop on error

Ramp Systems Interchange Users Guide 91 | P a g e


Message Processes
Message Processes provide additional formatting capabilities for inbound and outbound documents.
They are located under the Components Tab.

There are multiple options available and the following are some of the more common uses

Please note the Sequence numbers could change based on the number of options specified in the
message process (as multiple options can be set in the same Message Process

To add any step to a Message Process, right click and select New then select the relevant options on the
right

Setting a Trading Partner Relationship


To automatically assign a trading partner relationship to an outbound EDI X12 document, the following
steps should appear in a message process. This process shape should appear before the adapter that
writes out the data

Sequence: 1
Action: Set Document Property
Source Type: Static Value
Property Name: Sending Trading Partner
Value: This value will be the user friendly Trading Partner Name which appears as the first column when
selecting the Trading Partners lookup screen
Ramp Systems Interchange Users Guide 92 | P a g e
Trading partner assignments are done in pairs so repeat the process for the Destination or Receiving
Trading partner.
Sequence: 2
Action: Set Document Property
Source Type: Static Value
Property Name: Receiving Trading Partner
Value: This value will be the user friendly Trading Partner Name which appears as the first column when
selecting the Trading Partners lookup screen

Setting a File Name


Ramp by default will set a file name on any file created. There are times however where either the end
user wishes to have a standard file name format or the partner requests such. This process shape
should appear before the adapter that writes out the data

The first option when formatting the file name should be Set File Name. Append To File Name and
Prepend to File Name will not work correctly if there is not an initial file name

A sample file name (PARTNERNAME_UNIQUEVALUE.EDI) can be created as follows

Sequence: 1
Action: Set File Name
Source Type: Static Value
Value: PARTNERNAME_

There are multiple ways to set a unique value and below are some examples

Sequence: 2
Action: Append to File Name
Source Type: Current Time in Milliseconds
OR
Sequence: 2
Action: Append to File Name
Source Type: Sequential Number
Value: The value that the sequential number should start at. Please note this doesn’t reset to zero on
each run but can be edited to have a specific start value
Length: This may be used to set a specific length for the sequential value. For example, if Length is 5 and
Sequential value is 1, the value would appear as 00001
OR
Sequence: 2
Action: Append to File Name
Source Type: Current Date (Set Mask)

Ramp Systems Interchange Users Guide 93 | P a g e


Mask: How the date (or date time) should appear using Java data characters as placeholders. Please
note any combination of these values can be used and not all are required. These values are case
sensitive
 MM – Month as a two digit value.
 dd – Day
 yyyy – Year (can also be yy for two position year)
 HH – Hours
 mm – minute
 ss – Seconds
 S - Miliseconds

Finally, to add the file extension

Sequence: 3
Action: Append to File Name
Source Type: Static Value
Value: .EDI

Breaking up Inbound or Outbound Data


There may be times where multiple sets of data are processed and Ramp needs to break the data up
either before processing or before generating the final output.

There are two options for this

 Break Document by Message


 Break Document By Lines

Search and Replace


This option is used if data needs to be removed from the inbound file or outbound file

On inbound this value can be set however on outbound, the option Generate Document Data must
precede it as Ramp must have a physical file (vs a file in memory) in order to do the search on

For Value, the format should be the value that is being searched for followed by /? followed by the value
to replace it with

For example, a request to replace the value N9A with the value N9 would be formatted as follows

Ramp Systems Interchange Users Guide 94 | P a g e


Ramp Systems Interchange Users Guide 95 | P a g e
Extensions
An Extension shape allows the user to call additional coding where needed

Embedded Extension
In this example, a Custom Class object was added to Ramp Interchange by Ramp Support to handle a
condition that the base code could not or to simplify a process that the base code might have needed
more steps to run. For more information on Custom Classes, please contact Ramp Support.

External Program
In this example, an external executable is called

Ramp Systems Interchange Users Guide 96 | P a g e


Stored Procedure Call
In this example, the end user is calling a specific stored procedure either from the application in use or
that they created.

SQL Statement Execution


In this example, the assumption is a database select is being sent to a map to send data outbound to the
customer. Once the data has been sent, the user must mark the records in the source tables so the data
will not be sent again. This is best sent to a branch where the first branch goes to the map and the
second map goes to the Extension object.

Ramp Systems Interchange Users Guide 97 | P a g e


In the second screen, the user indicates which value from the source data should be used to replace the
? in the SQL statement

Ramp Systems Interchange Users Guide 98 | P a g e


Print

Ramp Systems Interchange Users Guide 99 | P a g e


The following is an example of a Print Object that uses a database query

The parameters tab uses a mixture of Static values and a value from the query to complete the setup

Ramp Systems Interchange Users Guide 100 | P a g e


Ramp Systems Interchange Users Guide 101 | P a g e
System
System Settings
The top portion of the system tab provides configuration information for the Ramp environment. The
data on these screens also shares information located in the configuration file server.ini which is in
DRIVE:\Program Files\Ramp Systems\Interchange\server

 Database User Name – the name of the login for the Ramp environment. The user ramp must
be a database owner on the Ramp database with full rights to it
 Database Password – the password to access the Ramp database. This is not the same login as
the Ramp client
 Database URL – connection information on where the database is located

 Web Server Port – what port the built in web server is listening on. This can be changed if
needed
 Client Request Port – what port the Ramp client should connect to the Ramp server on
 External IP Address – if AS2 is utilized, this value is required to be a value other than
UNDEFINED. It should represent the external IP or DNS address that AS2 will come in on. Only
one value can be declared here
 Web Server Path – Path to the built in web server for Ramp

Ramp Systems Interchange Users Guide 102 | P a g e


The settings on this tab control how long Ramp should hold on to logging information. Ramp initially
stores the data in the database and, after a period of time, sweeps the data to disk locations which are
then cleared at regular intervals.

Users can archive source input and output as part of their orchestrations or trading partner setups if a
file was created.

While the amount of time can be adjusted as needed, please note it will affect the size of the Ramp
database and amount of available disk space. Setting the value too high might negatively impact
performance. If it is found the settings need to be lowered, they should be adjusted and the Ramp
service will then need to be restarted. At that point, Ramp will do automatic cleanup which may
temporarily impact performance depending on how significant the difference in settings was.

Ramp Systems Interchange Users Guide 103 | P a g e


System Alerts
System Alerts will generate emails that will be sent to users or distribution groups in the event of some
fault in the Ramp environment. It is a useful monitoring tool which will help users keep track of errors
and determine when manual intervention is required

There can be multiple alerts defined in the Ramp environment and access to an SMTP server is required.

The following are options for an Alert

 Name: Assigned by the end user to identify the object.


 Description: A non-mandatory field which can be used to provide additional information
 Alert Type
o All Errors – this is the default option and is recommended for those supporting the
Ramp environment
o All Errors and Stack Traces – this is also a recommended option however as it provides
much more detail, the emails will be longer. If more detail is preferred, use this option
o Specific Errors (and Specific Errors and Stack Traces) - if a group or user needs to receive
an alert regarding a specific setup but doesn’t need to receive all alerts. The setups
must be individually defined under Alert Components
o Specific Success – this is useful if confirmation is needed that a job or set of jobs has run
at the scheduled times. This is not recommended for all setups as the end users would
receive multiple messages each time a job runs whether or not data was processed.
o Specific Execution Error and Success – this option is useful if a group or end user needs
to monitor a specific process
o System Email Address – an email address for the Ramp environment to use for alerts. It
can be a spoofed address or a valid address. If validation against an SMTP server will be
done, it’s recommended that a valid email address be used. Please note this should be
an address dedicated to the Ramp environment. It will work if an end user puts in their
own email however support emails will get mixed with their emails and it may not be

Ramp Systems Interchange Users Guide 104 | P a g e


clear what requires immediate action. Also, if a user leaves the organization and their
email account is terminated, the system may stop sending alerts. If using a dedicated
account, the account should bypass any corporate policies regarding passwords as if the
password expires that could also prevent Ramp from sending alerts.
o Subscriber Email Address – this should be the email address(es) or distribution list of
who should receive the emails. If using an internal distribution list, be sure the list is set
up with an SMTP address as Ramp cannot use just the list name.
 Please note Ramp Support has seen instances where some emails do not get
delivered if internal and external addresses are mixed on an alert. This appears
to be related to internal email security issues at an organization which Ramp has
no control over. To get around this, external users to the company (such as
Ramp Support) and internal users can be setup as two separate alerts.
o SMTP Adapter – which SMTP connection should be used. Be sure to check with your
email administrator to validate whether or not the SMTP connection requires a login.

If the specific option is selected, Alert Components is then enabled. The end user will need to right click
and select New, then specific the Object Type and Object Name to be monitored

System Codes
System Codes shows the available options for some of the screens in Ramp. The following groupings are
available

 DELIMITERS – delimiters for flat files


 EDIFACTDATAELEMENTDELIMITER
 EDIFACTRELEASECHARACTER
 EDIFACTREPELEMENTDELIMITER
 EDIFACTSEGMENTTERMINATOR
 EDIFACTSUBELEMENTDELIMITER
 ESCAPECHARACTERS
 PADCHARACTERS
 TEXTCHARACTERS
 X12ENDCHARACTER
Ramp Systems Interchange Users Guide 105 | P a g e
 X12REPETITIONSEPARATOR
 XMLENCODING

This table may be edited by the user to add options that may not exist. To add a value, right click and
select New then enter the required information

 List Name – the grouping associated with the entry. It cannot be a new name and must match
an existing list
 Code – the value to be added
 Description- a user defined description of what value has been added. For example, delimiters
appear on the list as the name of the delimiter followed by the character.

Deleting values is not recommended unless a value was added in error. Please contact Ramp Support if
the wrong values were deleted and the user is unsure how to add them back correctly.

Ramp Systems Interchange Users Guide 106 | P a g e


Ramp Interchange Tips and Tricks
Naming Objects
There is not a specific set of requirements in regard to how objects may be named in Ramp however
there are some recommendations

Objects are sorted alphabetically on the menus so if you have multiple documents for a partner, you
may want to add the customer name followed by the document set or type

Special characters especially reserve SQL server characters should not be used as this will potentially
create errors. All objects are stored in the database and accessed via the front end so a special
character may throw an error when attempting to retrieve an object. If this occurs, please contact Ramp
Support for further guidance

Automap Segment Elements


These are segments that will generate automatically if both the Segment and Element are marked as
Mandatory

 X12 856
o BSN*03 (Date)
o BSN*04 (Time)
o HL*01 (Segment Loop Counter)
o CTT*01 (Number of Line Items)
 X12 945
o LX*01 (Sequential Loop Counter)
o W03*01 (Total Items Shipped)

If mapping a document where the parameter names in the source and destination maps are close, Auto
Map can be selected. Ramp will attempt to match the source parameters to the destination
parameters, filling in rows on the map. It may require editing afterwards however depending on the
names of the parameter it may assist in mapping.

Testing SMTP Adapters


When setting up an SMTP adapter for alerts, the end user may want to test it to ensure data is running
smoothly. To test, it’s recommended that the end user setup a basic orchestration that will fail and see
if the corresponding error is received by those defined in the alerts

For example, setup an orchestration with a disk adapter that reads from an invalid drive letter or is not
properly formatted in the path (ex X:\ or C:\\pathdoesnotexist)

Ramp Systems Interchange Users Guide 107 | P a g e


Ramp will log in the SMTP adapter log if it created a notification and who it was sent to. This can then
be used by the Ramp and Email administrators to research any delivery failures.

Sample Database Connection Strings


Ramp utilizes JDBC to connect to all database platforms. The port may vary however it must be set as a
specific (not dynamic) port on the database platform and DNS names can be used instead of IP
addresses. The format of the JDBC string will vary depending on what database platform is specified

 jdbc:oracle:thin:@127.0.0.1:1521:dbname
 jdbc:jtds:sqlserver://127.0.0.1:1433/dbname
 jdbc:db2://127.0.0.1:50000/dbname
 jdbc:postgresql://127.0.0.1:5432/dbname
 ODBC
o as400:
o jdbc:odbc:dbname_SYS_DSN (replace dbname_SYS_DSN with the name of the DSN)
o Please note that even if the user id and password were used to set up the DSN it must
still be entered in Ramp
o The DSN must exist as a system DSN on the Ramp server
o JDBC drivers are more stable than ODBC drivers so ODBC is not preferred. This option
should only be used if a JDBC connection format is not available for the resource.

Changing Outbound ISA/GS Control Number


The EDI Control number is generated automatically by Ramp Interchange each time an X12 document is
transmitted outbound using the message process object to indicate the Sender and Receiver.

The counter will start at 1 and continue to increment by one for each document generated. By default,
the same control number counter will be used for all outbound documents including EDI 997 Functional
Acknowledgements.

If it was ever requested to change the control number, edit the value in X12 Control tab for the trading
partner. If the value doesn’t already exist, right click and Select New if a specific starting number should
be used. If the value does exist and the counter just needs to be changed, edit the entry to the starting
value – 1. So if the previous value was 5 and the next document created should be 500, the value should
be edited to 499.

Deleting the entry in the X12 Control tab will reset the counter back to 1.

There may be an instance where its requested to have separate control number counters by document
type, in this example a 944 and 945. If the entry for ALL already exists, modify the first line and then add
a second line. Please note that the functional group for each document type must be specified.

To have Ramp do this by default when creating the counters initially, set Control Number Share Mode
on the X12 settings tab to “Do Not Share Across Transactions”

In the examples below the same value is used for ISA and GS. Please note that Ramp does support
instances where the values are not the same. In that case, edit the counter to have a different value for
ISA and GS after the first documents are created and Ramp will use those for that point forward.
Ramp Systems Interchange Users Guide 108 | P a g e
X12 Control where the same counter is used for all documents

X12 Control where a unique counter is used for all documents

Ramp Systems Interchange Users Guide 109 | P a g e

You might also like