Sponsored & Brought to you by
Azure Integration in Production with
Logic Apps and more
Alex Murov & Kelvin van Geene
http://www.twitter.com/AlexMurov
https://nl.linkedin.com/in/oleksandr-murov-a4a31012 https://nl.linkedin.com/in/kelvinvangeene
Azure Integration Solution
Logic apps and more in Production
Who are we?
Who are we?
Avanade
What will we share with you today?
Azure App Service
API Apps
Logic App
BizTalk Services
Cloud Services
Service Bus (Queues)
AS2 on Azure
BizTalk Services
vs
Logic App Connector
What will we share with you today?
First steps
First Production
Product
Implementation
shift
Introduction of
Logic Apps
Specific
implementations
Lessons learned Future
What will we share with you today?
First steps
First Production
Product
Implementation
shift
Introduction of
Logic Apps
Specific
implementations
Lessons learned Future
What will we share with you today?
First steps
First Production
Product
Implementation
shift
Introduction of
Logic Apps
Specific
implementations
Lessons learned Future
What will we share with you today?
First steps
First Production
Product
Implementation
shift
Introduction of
Logic Apps
Specific
implementations
Lessons learned Future
What will we share with you today?
First steps
First Production
Product
Implementation
shift
Introduction of
Logic Apps
Specific
implementations
Lessons learned Future
What will we share with you today?
First steps
First Production
Product
Implementation
shift
Introduction of
Logic Apps
Specific
implementations
Lessons learned Future
What will we share with you today?
First steps
First Production
Product
Implementation
shift
Introduction of
Logic Apps
Specific
implementations
Lessons learned Future
How it all started
 About 2,5 years ago
How it all started
 About 2,5 years ago
 Integration was required between local systems and CRM Online
How it all started
 About 2,5 years ago
 Integration was required between local systems and CRM Online
 Assumptions:
1. No Custom Development on CRM side
2. SAP-PI will be used as on-premise middleware system
3. AS2 connection must be used to integrate with SAP-PI
4. Costs for development and operations must be kept to the bare minimum
How it all started
 About 2,5 years ago
 Integration was required between local systems and CRM Online
 Selection fell on Azure BizTalk Services for realizing of PoC
How it all started
 About 2,5 years ago
 Integration was required between local systems and CRM Online
 Selection fell on Azure BizTalk Services for realizing of PoC
so we started building…
SAP-PI On-premise
ERP BI Other LOB
System
CRM
online
CRM
Online
HTTPS connection
CRM OrganizationServiceCRM OrganizationService
Azure Cloud
On-premise
CRM Online
SAP-PI On-premise
ERP BI Other LOB
System
CRM
online
CRM
Online
HTTPS connection
CRM OrganizationServiceCRM OrganizationService
Azure Cloud
On-premise
CRM Online
AS2 Agreement
BizTalk Services
BizTalk Services
SAP-PI On-premise
ERP BI Other LOB
System
CRM
online
XML
message
CRM
Online
HTTPS connection
CRM OrganizationServiceCRM OrganizationService
Azure Cloud
On-premise
CRM Online
Service Bus (Queue’s)
AS2 Agreement
BizTalk Services
Service Bus (Queue’s)
BizTalk Services
SAP-PI On-premise
ERP BI Other LOB
System
XML message
CRM
online
XML
message
CRM
Online
HTTPS connection
CRM OrganizationServiceCRM OrganizationService
Azure Cloud
On-premise
CRM Online
Service Bus (Queue’s)
XML message
AS2 Agreement
BizTalk Services
Cloud Services
Service Bus (Queue’s)
X
Logic App
Logic Apps
 Design simple but effective workflow with ease
What are Logic Apps?
 Design simple but effective workflow with ease
 Initiates based on a Trigger on which Actions are taken
What are Logic Apps?
 Design simple but effective workflow with ease
 Initiates based on a Trigger on which Actions are taken
 Extensible with Custom API Apps
What are Logic Apps?
Why start with Logic Apps?
 Simplicity / Flexibility
Why start with Logic Apps?
 Simplicity / Flexibility
 Most common adapters are already available
Why start with Logic Apps?
 Simplicity / Flexibility
 Most common adapters are already available
 Azure BizTalk Services deprecation
Advantages over Cloud Services
 Cost efficient
Advantages over Cloud Services
 Cost efficient
 Quick to deploy
 Start and Stop almost instantly
Advantages over Cloud Services
 Cost efficient
 Quick to deploy
 Start and Stop almost instantly
 Reusability of components
Advantages over Cloud Services
 Cost efficient
 Quick to deploy
 Start and Stop almost instantly
 Reusability of components
 Operations Monitoring in portal UI
Disadvantages of Logic Apps
 Not easy to retrieve information if something goes wrong
 Formatting of data in web viewer
Disadvantages of Logic Apps
 Not easy to retrieve information if something goes wrong
 Formatting of data in web viewer
 Simple Visual Studio integration (V1, V2 is better)
 Settings / Configuration management
Disadvantages of Logic Apps
 Not easy to retrieve information if something goes wrong
 Formatting of data in web viewer
 Simple Visual Studio integration (V1, V2 is better)
 Settings / Configuration management
 Still in preview, regular changes
Specific implementations
Master data flowMaster data
flow
Logic App
Big Data (volume data)
 Amount of data involved
 Process flow
Why not use logic apps
 Long running processes
 Timeouts on SQL
VolumeDataReportFlow
Data Warehouse
Web App –
1xPer OpCo
WebJob –
Process
Accounts
WebJob –
Upsert
Account
Service Bus
Queue – New
Account
Notification
Message
Storage blob –
New Account Object
DocumentDB –
1x Account per
Staging/
Production 1x
Collection Per
OpCo
SQL database –
Staging /
Production
SSIS
Web App –
API App
Windows App
Sales Orders
Sales Orders
Sales Orders
Windows app
App Back-end
(CRM Online)
Azure Service
Bus queue
Azure Logic
App
SAP-PI
( on-premise
integration
platform)
OpCo FTP
location
Azure
Cloud
on-
premise
E-mail to the
disctibutor
OpCo FTP
location
OpCo FTP
location
Message Validation
Message Validation
ApptoAzuretoSAP-PIApptoAzuretoSAP-PI
SimpleOrderCapturing
InterfacingMasterDatafromApptoSAP-PIInterfacingMasterDatafromApptoSAP-PI
InterfacingOrderstoon-premiseLOBsystems
New Account
In App back-end
(CRM Online)
Send to SAP-PI
Update Account
In App back-end
(CRM Online)
Send to SAP-PI
Account Create
message is send to
Azure via Azure
aware plugin
Service endpoint
configuration
Does the
message for
account create
contains
hsem_externalid
Yes
Ignore
No
Any OpCo
specific business
rules?
Yes
Process OpCo
business
requerments
No
Need to be
encoded as
base64 string?
For character
specific issues in
SAP-PI
No
Yes
Encode to base64
string
Need to be
encoded as
base64 string?
For character
specific issues in
SAP-PI
Encode to base64
string
Yes
No
Is validation On
for this Message
Type and this
OpCo
No
Yes
Validate and Send
Results to SQL Azure
Database
Is validation On
for this Message
Type and this
OpCo
Validate and Send
Results to SQL Azure
Database
Yes
No
New Orders
In App back-end
(CRM Online)
Send To SAP-PI
Check if Order
Headers have
Status
Confirmed
Yes
No
Get complete
orders, their order-
lines and
distributors from
CRM.
Send orders in one
xml batch file to
SAP-PI system
Is the distributor
E-mail only
reachable?
Filter out all orders
for E-mail only
and e-mail them to
their specified
addresses
Yes
No
Is validation On
for this Message
Type and this
OpCo
Validate and Send
Results to SQL Azure
Database
No
Yes
Future
Multi project Integration SeparationMulti project Integration Separation
Multi project Integration SeparationMulti project Integration Separation
Multi project Integration SeparationMulti project Integration Separation
Multi project Integration SeparationMulti project Integration Separation
• Different types of integration
• Multiple development and
operation teams
• Different contracts
Full Logic App Implementation
Full Logic App Implementation
In closing
Kelvin.van.geene@avanade.com
omurov@gmail.com
@AlexMurov

Azure Integration in Production with Logic Apps and more

  • 1.
    Sponsored & Broughtto you by Azure Integration in Production with Logic Apps and more Alex Murov & Kelvin van Geene http://www.twitter.com/AlexMurov https://nl.linkedin.com/in/oleksandr-murov-a4a31012 https://nl.linkedin.com/in/kelvinvangeene
  • 2.
    Azure Integration Solution Logicapps and more in Production
  • 3.
  • 4.
  • 5.
  • 6.
    What will weshare with you today? Azure App Service API Apps Logic App BizTalk Services Cloud Services Service Bus (Queues) AS2 on Azure BizTalk Services vs Logic App Connector
  • 7.
    What will weshare with you today? First steps First Production Product Implementation shift Introduction of Logic Apps Specific implementations Lessons learned Future
  • 8.
    What will weshare with you today? First steps First Production Product Implementation shift Introduction of Logic Apps Specific implementations Lessons learned Future
  • 9.
    What will weshare with you today? First steps First Production Product Implementation shift Introduction of Logic Apps Specific implementations Lessons learned Future
  • 10.
    What will weshare with you today? First steps First Production Product Implementation shift Introduction of Logic Apps Specific implementations Lessons learned Future
  • 11.
    What will weshare with you today? First steps First Production Product Implementation shift Introduction of Logic Apps Specific implementations Lessons learned Future
  • 12.
    What will weshare with you today? First steps First Production Product Implementation shift Introduction of Logic Apps Specific implementations Lessons learned Future
  • 13.
    What will weshare with you today? First steps First Production Product Implementation shift Introduction of Logic Apps Specific implementations Lessons learned Future
  • 14.
    How it allstarted  About 2,5 years ago
  • 15.
    How it allstarted  About 2,5 years ago  Integration was required between local systems and CRM Online
  • 16.
    How it allstarted  About 2,5 years ago  Integration was required between local systems and CRM Online  Assumptions: 1. No Custom Development on CRM side 2. SAP-PI will be used as on-premise middleware system 3. AS2 connection must be used to integrate with SAP-PI 4. Costs for development and operations must be kept to the bare minimum
  • 17.
    How it allstarted  About 2,5 years ago  Integration was required between local systems and CRM Online  Selection fell on Azure BizTalk Services for realizing of PoC
  • 18.
    How it allstarted  About 2,5 years ago  Integration was required between local systems and CRM Online  Selection fell on Azure BizTalk Services for realizing of PoC so we started building…
  • 19.
    SAP-PI On-premise ERP BIOther LOB System CRM online CRM Online HTTPS connection CRM OrganizationServiceCRM OrganizationService Azure Cloud On-premise CRM Online
  • 20.
    SAP-PI On-premise ERP BIOther LOB System CRM online CRM Online HTTPS connection CRM OrganizationServiceCRM OrganizationService Azure Cloud On-premise CRM Online AS2 Agreement BizTalk Services
  • 22.
    BizTalk Services SAP-PI On-premise ERPBI Other LOB System CRM online XML message CRM Online HTTPS connection CRM OrganizationServiceCRM OrganizationService Azure Cloud On-premise CRM Online Service Bus (Queue’s) AS2 Agreement BizTalk Services Service Bus (Queue’s)
  • 26.
    BizTalk Services SAP-PI On-premise ERPBI Other LOB System XML message CRM online XML message CRM Online HTTPS connection CRM OrganizationServiceCRM OrganizationService Azure Cloud On-premise CRM Online Service Bus (Queue’s) XML message AS2 Agreement BizTalk Services Cloud Services Service Bus (Queue’s)
  • 31.
  • 32.
  • 33.
  • 34.
     Design simplebut effective workflow with ease What are Logic Apps?
  • 35.
     Design simplebut effective workflow with ease  Initiates based on a Trigger on which Actions are taken What are Logic Apps?
  • 36.
     Design simplebut effective workflow with ease  Initiates based on a Trigger on which Actions are taken  Extensible with Custom API Apps What are Logic Apps?
  • 37.
    Why start withLogic Apps?  Simplicity / Flexibility
  • 38.
    Why start withLogic Apps?  Simplicity / Flexibility  Most common adapters are already available
  • 39.
    Why start withLogic Apps?  Simplicity / Flexibility  Most common adapters are already available  Azure BizTalk Services deprecation
  • 40.
    Advantages over CloudServices  Cost efficient
  • 41.
    Advantages over CloudServices  Cost efficient  Quick to deploy  Start and Stop almost instantly
  • 42.
    Advantages over CloudServices  Cost efficient  Quick to deploy  Start and Stop almost instantly  Reusability of components
  • 43.
    Advantages over CloudServices  Cost efficient  Quick to deploy  Start and Stop almost instantly  Reusability of components  Operations Monitoring in portal UI
  • 44.
    Disadvantages of LogicApps  Not easy to retrieve information if something goes wrong  Formatting of data in web viewer
  • 45.
    Disadvantages of LogicApps  Not easy to retrieve information if something goes wrong  Formatting of data in web viewer  Simple Visual Studio integration (V1, V2 is better)  Settings / Configuration management
  • 46.
    Disadvantages of LogicApps  Not easy to retrieve information if something goes wrong  Formatting of data in web viewer  Simple Visual Studio integration (V1, V2 is better)  Settings / Configuration management  Still in preview, regular changes
  • 47.
  • 48.
    Master data flowMasterdata flow Logic App
  • 51.
    Big Data (volumedata)  Amount of data involved  Process flow Why not use logic apps  Long running processes  Timeouts on SQL VolumeDataReportFlow Data Warehouse Web App – 1xPer OpCo WebJob – Process Accounts WebJob – Upsert Account Service Bus Queue – New Account Notification Message Storage blob – New Account Object DocumentDB – 1x Account per Staging/ Production 1x Collection Per OpCo SQL database – Staging / Production SSIS Web App – API App Windows App
  • 52.
  • 53.
  • 54.
    Sales Orders Windows app AppBack-end (CRM Online) Azure Service Bus queue Azure Logic App SAP-PI ( on-premise integration platform) OpCo FTP location Azure Cloud on- premise E-mail to the disctibutor OpCo FTP location OpCo FTP location
  • 55.
  • 56.
    Message Validation ApptoAzuretoSAP-PIApptoAzuretoSAP-PI SimpleOrderCapturing InterfacingMasterDatafromApptoSAP-PIInterfacingMasterDatafromApptoSAP-PI InterfacingOrderstoon-premiseLOBsystems New Account InApp back-end (CRM Online) Send to SAP-PI Update Account In App back-end (CRM Online) Send to SAP-PI Account Create message is send to Azure via Azure aware plugin Service endpoint configuration Does the message for account create contains hsem_externalid Yes Ignore No Any OpCo specific business rules? Yes Process OpCo business requerments No Need to be encoded as base64 string? For character specific issues in SAP-PI No Yes Encode to base64 string Need to be encoded as base64 string? For character specific issues in SAP-PI Encode to base64 string Yes No Is validation On for this Message Type and this OpCo No Yes Validate and Send Results to SQL Azure Database Is validation On for this Message Type and this OpCo Validate and Send Results to SQL Azure Database Yes No New Orders In App back-end (CRM Online) Send To SAP-PI Check if Order Headers have Status Confirmed Yes No Get complete orders, their order- lines and distributors from CRM. Send orders in one xml batch file to SAP-PI system Is the distributor E-mail only reachable? Filter out all orders for E-mail only and e-mail them to their specified addresses Yes No Is validation On for this Message Type and this OpCo Validate and Send Results to SQL Azure Database No Yes
  • 57.
  • 58.
    Multi project IntegrationSeparationMulti project Integration Separation
  • 59.
    Multi project IntegrationSeparationMulti project Integration Separation
  • 60.
    Multi project IntegrationSeparationMulti project Integration Separation
  • 61.
    Multi project IntegrationSeparationMulti project Integration Separation • Different types of integration • Multiple development and operation teams • Different contracts
  • 62.
    Full Logic AppImplementation
  • 63.
    Full Logic AppImplementation
  • 64.

Editor's Notes

  • #59 Client is scaling up with multiple types Azure/Integration projects, done by multiple external parties Different types of contracts Only 1 PI endpoint
  • #60 Client is scaling up with multiple types Azure/Integration projects, done by multiple external parties Different types of contracts Only 1 PI endpoint
  • #61 Client is scaling up with multiple types Azure/Integration projects, done by multiple external parties Different types of contracts Only 1 PI endpoint