Professional Documents
Culture Documents
AssocDev Slides March2020
AssocDev Slides March2020
Dell, EMC, Dell EMC, Dell Boomi, AtomSphere and other trademarks are trademarks of Dell Inc. or its subsidiaries. Other trademarks may be
trademarks of their respective owners.
Associate Integration Developer
Lecture Activity
Associate Integration Developer
Prospect
Info
Info
Developer
Integration Goal: Prospect Tracking
• Query the Salesforce Account object for modified Prospect records
• Insert main account information into the MySQL (orgtrack) database
• Add lookup logic to query the CUSTOMER table for existing records
• Route out existing records from the Process flow
DB
XML
Prospect?
XML
Application Connectors
HANDS ON ACTIVITY
Set up Folders
Download process
endpoints from the
Process Library
Configuring Connectors
Types
Configuring Connectors
1. Connection
Configuring an Application Connector Shape
The main shape that contains all information needed to connect to a single
third party system or application
Combination of two components:
2. Operation
Configuring a Connection Component
• URL: Production or Sandbox URL path to the Salesforce API
• User: Email for integration user with appropriate access rights
• Password: User password concatenated with the Salesforce Security Token
HANDS ON ACTIVITY
View the Salesforce
Read Connector
Configuring Connectors
Click the
Import Button
Configuring an Operation Component
Use the Salesforce connector components to ensure successful connectivity to your account
Salesforce
authentication
Configuring an Operation Component
Use the Salesforce connector components to ensure successful connectivity to your account
Select objects to
integrate
Configuring an Operation Component
Setting Parameters
Objectives
By the end of this lesson you should be able to:
Reference
elements from
document(s)
Setting Parameters
Common interface for configuring runtime inputs
Reference
system date
Setting Parameters
Define lookup
Setting Parameters
Common interface for configuring runtime inputs
Dynamic
messaging
and
notifications
Setting Parameters
HANDS ON ACTIVITY
Set the Salesforce
Runtime Parameter
Class Name
Java class name of the
JDBC driver
Connection URL
JDBC URL syntax
Database Connectivity Testing
Use the “Test Connection” button to ensure successful connectivity to your
database instance
1
2
HANDS ON ACTIVITY
View the database
Connection
Configuring Connectors
Configuring Operations
Objectives
By the end of this lesson, you should be able to:
Authenticating the
database log-in
Configuring an Operation
Use the database connector components and the Atom to ensure successful
connectivity to your database instance
Available tables to
integrate
Configuring a Operation
Write Profile
• Statically or dynamically define Write statements
against a table or stored procedure inputs
• Use the Import Wizard to dynamically poll a table
and auto-list the columns with field types
Commit Options
• Option: Commit statement(s) based on number of
rows or statement sets defined in Profile
• Batch Count: Specify the commit interval or leave
as 0 to indicate no limit
• JDBC Batching: Sets the behavior for whether
batches of SQL statements are executed at the
JDBC operation level
HANDS ON ACTIVITY
Create a Database
Write Operation
Create a Database
Write Profile
Configuring Connectors
Creating a profile
Objective
By the end of this lesson you should be able to:
Test Mode
Objective
At the end of this lesson you will be able to
Executed
process
flow
Documents
List
Test
Results
Test Results
▪ Click on a specific shape to view test result information
▪ Each shape will display up to 3 tabs – Logs, Shape Source Data, Connection Data
Multi-browser tabs for Build and Test Mode
Logs
Objective
At the end of this lesson you will be able to
▪ Logs tab provides a finer level of detail, not found in the View
logs
▪ Display log data for a document processed by a particular
shape
You can click on icon under View Source to view or download the source
document
Working in Test Mode
What is a Map?
Objective
By the end of this lesson you will
Input Output
Map Source and Destination Fields
▪ Each Map component has a Source and Destination Profile
▪ Source fields can be mapped to one or more destination fields
Map Source and Destination Fields
▪ Each Map component has a Source and Destination Profile
▪ Source fields can be mapped to one or more destination fields
▪ Destination fields can be assigned a Default value
Map Functions
NOTE: Null values from a profile element or connector call are treated as empty
strings (‘ ’) for comparison. To compare against a null value in the inbound data, the
second value field’s static value setting in the decision shape should be left empty.
HANDS ON ACTIVITY
Add a Decision shape
to query the database
Integration Scenario Wrap Up
Prospect Tracking
How You Did It
Scenario:
Daily Customer Wins
Objective
In this lesson we will
Modified Notification
Recently? Sent
Closed
Won?
SaaS Training Integration Scenario
Integration Goal (Process 2 – Daily Customer Wins):
• Query the Organization Tracking System for modified Customer records
• Update Salesforce Account records to SLA ‘Gold’
• Email monitoring user dynamic content about new customer records
• Update Database System showing emails have been sent
XML
DB
Start the process:
Configure an Operation
Objective
By the end of this lesson you will be able to
Objective:
‘Daily Customer Wins’ Process to query the database to see if
there are any updated records
How:
Define the start shape as a database connector and configure
the database operation
Configure a Query Operation (DB)
Query Profile
• Statically or dynamically define a
SELECT statement against table(s) or a
stored procedure output
• Obtain list of available tables and auto-
list the columns with field types
Grouping Options
• Link Element: The common field in a
record group to batch document(s)
• Batch Count: Define an interval for the
grouping behavior
• Max Rows: The maximum number of
rows to return in a single read request
HANDS ON ACTIVITY
Create a database
read process
Set a database
runtime parameter
Branch 1:
Salesforce Connector
Objectives
By the end of this lesson you should be able to
Note: All Mail options listed here can be static or dynamically defined in a Set Properties Shape positioned
before the Mail connector.
HANDS ON ACTIVITY
Overview
Objective
By the end of this lesson you should have an
Prospect Tracking
• Automate the process to query newly modified accounts
• Package the Components and Deploy to an environment
• Manage live transactions
• Develop and release Process updates for advanced logging
Deploy a Process
Objectives
By the end of this lesson you should be to
Build Deploy
Schedule a Process
Deploy vs Execute
• Deploying a process does not execute the process into an
active production state
• Once a Process is Deployed, it needs to be executed either
by:
• Manual execution or
• Scheduled execution
Deployed Executed
(Manual or Schedule)
Process Automation
One Minute Intervals
Process Automation
Internal Scheduling External Scheduling Event Driven Integration
• Schedule indicates when • Request process • Process executions are
process is set to run execution via triggered by external
AtomSphere API from events
• Create schedules to customer-preferred
intervals of 1-minute external scheduler • Supports event-driven
integration
• Create advanced
schedules to execute on • Choice of:
specific minutes
• Web Service Publishing
• Retry schedule indicates • Subscribing to event
when failed documents queues.
are retried
INSTRUCTOR TO DEMONSTRATE
Connection
Licenses
Connection Licensing: Best Practices
License Management
Process Reporting
Objective
By the end of this lesson you should be able to
View Process
• Open the Process on the Build Tab
Track executions in
process reporting
Every 5 minutes
AtomSphere Email Alerts
Revision History
Objectives
By the end of this lesson you should be able to
Located below
the Process
Canvas
Deploy Latest Revision of Process
HANDS ON ACTIVITY
Review Revision
History
HANDS ON ACTIVITY
View Alerts
Notify Shape
Objective
By the end of this lesson you will be able to
Configure a Notify
shape
Process Deactivation
Objective
By the end of this lesson you should be able to
Deactivate a process
Process Deactivation
Stop the Process Schedule Undeploy the Process
Manage > Atom Management > Atom > Deployed Processes > Stop Schedules
Deploy > Deployments > Actions > Undeploy
HANDS ON ACTIVITY
Process Deactivation
Development Life Cycle:
Overview
Objectives
By the end of this section you should be able to
1. Gather
Requirements
5. Release 2. Design
4. Test 3. Development
Importance of the Development Life Cycle
To configure an
Some shapes are integration, drag and drop
components, versioned shapes from the pallet and
separately and reused connect them
How is AtomSphere Different?
AtomSphere is graphical in nature:
▪ Code techniques do not work
▪ Source control is “built-in”
▪ Development is linear
▪ Everyone works on the latest version, no “check-in/check-out”
Build Components
Objectives
By the end of this lesson you should be able to
Map: changes data from one format to another (from one profile to another)
Results
Use numbers or
Create common
special characters
component
to force folders to
folders
the top or bottom
Folder Structure Example
Company
Company ABC
CodeMark CodeMark
Project US
Tradelist
EMEA
Folder Structure Example
Company
Company ABC
Be consistent
No automated
No individual
No trunk vs. way to merge
copies of
branch concept revision
process
differences
Development Considerations
• Build tab is a shared development environment
• Enterprise Editions - component locking prevents concurrent editing
(similar to check-out/check-in)
Common Components
Process 1 and Process 2 both reference Map A and are deployed
• Change Map A but only re-deploy Process 1. Process 1 is using Map A version 2,
while Process 2 is still using Map A version 1
Sub Processes
Sub processes are included in the deployment of the main process
• If a sub process is deployed (e.g. to retry docs) or a change is made to the sub
process, deploy both main and sub processes to avoid version mismatch
Change Management in Action
Development Packaged Components QA Production
Initial Deploy to QA
development for testing
Create
Process Rev 4 PC Ver 1, Process Deploy
Rev 4 PC Ver1
Found
issue
Deploy fix
Testing OK, deploy to
Fix issue production
Create Deploy
Deploy
Process Rev 6 PC Ver 2, Process PC Ver2 PC Ver2
Rev 6
2=2
Properties Overview
Objective
By the end of this lesson we will
Value is assigned on the process level – Value is assigned on the document level and
the value remains the same unless can be different per document
changed by a process step
Once set, available anywhere in the Once set, only available as long as the
process including child processes document exists – will continue across
branches (if set before the Branch shape), but
does not continue across Message shapes or
outbound Connectors
Business Use Case
• A process continually checks if a given Account record exists in a company’s
data storage system to determine whether to perform a Create or Update call
• The process retrieves an Account’s internal system ID using a Connector Call
output parameter as a Dynamic Document Property and then creates a new
Account or updates an existing Account
Dynamic Document Property Activity
• Add a Connector Call in the Set Properties shape
• Configure the Decision shape
• Configure the Create and Update Maps
• Run a Test and observe the results
HANDS ON ACTIVITY
Dynamic Document
Properties Activity
Process Property Component
Objective
By the end of this lesson you will be able to
Overview
Objective
By the end of this lesson you will be able to
8888888888888888888888888888888888888888888888
8888888888888888888888888888888888888888888888
888888888888888888888888
888888888888888888888888888888888888
88888888888888888888888888888
8888888888888888888888888
888888888888888888888888888888888888
8888888888888888888888888
888888888888888888888888888888888
888888888888888888888888888888888
8888888888888888888888
88888888888888888888
8888888888888888888888888888888888
888888888888888888888888888
8888888888888888888888888
888888888888888888888888888888888888
888888888888888888888888
8888888888888888888888888888
8888888888888888888888888888888888888
88888888888888888888888888888888
88888888888888888888888888888888
8888888888 8888888888
8888888 8888888
888888888 888888888
88888888 88888888
8888888888 8888888888
888888 888888
8888888888 8888888888
8888888888 8888888888
8888888 8888888
888888888 888888888
88888888 88888888
8888888888 8888888888
888888 888888
8888888888 8888888888
Document Flow: Concepts
Objectives
By the end of this lesson you will be able to
DB
Branch creates a
duplicate set of
documents for each
path XML XML
Duplicate documents
in original state are
processed in Branch 2
Documents with Multiple Records
A document may contain a single record or a batch of multiple logical records
• Shapes configured to reference individual profile elements
(e.g., Decision) will use the value from the first record in the
document only
• Shapes that reference the entire profile (e.g., Map) will
iterate through all logical records
• Any type of data can be a “batch” document
• Records within a single document can be aggregated in
Maps
Original Document ID
• Documents are identified by their original ID. When an error occurs the document ID is
marked as a failure
• Split documents: each shares the same original Document ID. If one split document fails, the
original document ID is marked as failed. All split documents fail and stop processing
• Combine documents: If a combined document encounters an error, all the original
documents are marked as failed and stop processing
Document Error Example
One document errors
in connector, the other
document continues.
Branch shape
Documents duplicates inbound
loaded from documents. Only failed documents stop
database query. processing. Other documents
complete normally.
Document Error Example with Split
One document errors, causing
all documents that began as part
of the original FTP file to fail
Original document
splits into multiple
documents
Consideration
• Notable performance decrease as every shape’s logic is initialized multiple times vs. once per
group so only use if appropriate for scenario.
Use Cases
• Cases where one record post impacts the next.
• Incremental inventory counts.
• Detecting duplicates across documents with the group.
Document Flow Summary
▪ Documents flow together (shape execution): all documents are processed by a
shape then continue on as a group to the next shape
• Documents flow down a specific execution path but can have different paths
• Documents can flow as a batch of logical records or as a single logical record
• Shapes act differently on batch documents. Documents can be modified and
grouped into batches or split out of batches
• Branch-type shapes impact document flow
▪ Branches are independent and process sequentially to completion
▪ Decision shape paths have precedence.