initiation à lintégration avec biztalk server

Post on 22-Jan-2018

836 Views

Category:

Education

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

BIZTALK SERVERInitiation à l’intégration avec

Formation

• Bac+5 à l’école Marocaine des sciences de l’ingénieur Option MIAGE

• Master 2 MIAGE option nouvelles technologies et directions de projet

Expériences professionnelles

• Consultant Technico-Fonctionnel sur plateforme EDI - CAPGEMINI

• Consultant IT sur les technologies Microsoft spécialement BizTalk Server autour d’une plateforme EAI/SOA -ATOS

BENTALBA SALAH-EDDINE

LE SYSTÈME D’INFORMATION ET SON ÉVOLUTION

• Système d’Information monolithique ( séquentielles, isolées) : application majeure sans connexion avec l’extérieur.

• Les Systèmes d’Information évoluent souvent selon deux stratégies :• La stratégie du tout intégré : mettre en place un ERP• La stratégie best of breed : logiciels spécialisés

• L’ouverture de l’entreprise vers l’extérieur vis-à-vis ses clients, fournisseurs ou partenaires une nécessité pour son besoin.

• Nouvelles contraintes : respect des standards, contraintes de sécurité…

LES ARCHITECTURES D’INTÉGRATION : EAI

• Répondre aux nouveaux enjeux.

• Développement des Interfaces.

• Objectifs d’un EAI : fournir des services, des outils et des méthodes pour implémenter des interfaces entre applications

A

DC

B

EAI

Portail

Facturation

RH

CRM

ERP

Stock

LES ARCHITECTURES D’INTÉGRATION : EAI

LES ARCHITECTURES D’INTÉGRATION : EAI

• Une approche et des outils pour la modernisation des applications de l‘entreprise

• Typiquement pour simplifier et améliorer l’utilisation et maximiser l’automatisation des processus

• Aussi connu sous le nom Middleware

• Selon Gartner

• “unrestricted sharing of data and business processes among any connected application or data sources in the enterprise.”

LES ARCHITECTURES D’INTÉGRATION : EAI

Portail

Facturation

RH

CRM

ERP

Stock

EAI

LES ARCHITECTURES D’INTÉGRATION : EAI

• Chaque application communique seulement avec l’EAI

• Complexité moindre pour développer les flux

• Surveillance centralisée

• Trace de l’activité facilitée

• Aucune perte de communication

• EAI stocke les messages en erreur

• EAI peut rejouer les messages en erreur

Portail

Facturation

RH

CRM

ERP

Stock

EAI

LES ARCHITECTURES D’INTÉGRATION : EAI

• La combinaison des processus

• l‘intégration des applications

• L’automatisation

• L’ interopérabilité

• Echanges de données

• Suivie et monitoring

• Administration

BIZTALK SERVER

• Connexion de plusieurs systèmes :

• Protocoles différents

• Intelligence de Biztalk server

• Adaptation avec les autres systèmes

BIZTALK SERVER

ERP

Base de données

Service logistique

Service clientèle

Banques Fournisseurs

SOAP

BIZTALK : VUE GÉNÉRALE

Votre entreprise

CRM

Service Financier

B

I

Z

T

A

L

K

Port de réception

Port d’envoie

• Architecture de Publication / Souscription

• Quand un message arrive dans BTS :• Prise en charge par un port de réception• Transformation si nécessaire• Application d’une ou plusieurs règles de routage

• Détermination du port d’envoi

• Transformation si nécessaire• Transmission à un port d’envoi

• Fonctionnement• Publication du message par le port de réception• Règle de routage appliquée par abonnement des ports

d’envoi• Plusieurs abonnements possibles à un message

Règles de routage

ARCHITECTURE DU PRODUIT

ARCHITECTURE DU PRODUIT

ReceiveLocation

Adaptateur et pipeline pour recevoir et traiter le message, et livraison au Message Box

2

Une expression de filtrage définit les propriétés auxquelles un abonné est intéressé

1

Propriétés des messages sont évaluées pour déterminer les abonnés

3

XML or Flat File

Une copie du message est délivrée à chaque abonné

4

ReceiveAdapter

ReceivePipeline

XML

Abonné

Business Process

AbonnéMessageDatabase

Send Port

ARCHITECTURE DE PUBLICATION ET D’ABONNEMENT

Message Routing

Receive Location

ReceiveAdapter

Send Port CReceivePipeline

MessageBoxDatabase

Send Port B

Send Port A

Routes directly to a port

Based on a filter expression

Configured on the send port

Filter Expression Port

If CustomerName = Contoso A

If Price > 1000 B

If Qty > 500 and Price < 1000 C

LE ROUTAGE DES MESSAGES

Receive Port

Receive Locations

PORTS DE RÉCEPTION

File

HTTP

Receive pipeline

Receive pipeline

MessageBox

PORTS DE RÉCEPTION

PORTS DE RÉCEPTION

PORTS D’ENVOI

MessageBox

Receive Port

Receive Locations

FileXML Receive

Send Port

FileXML Transmit

PORTS D’ENVOI

PORTS D’ENVOI

• Précision d’options

• Nombre de tentatives

• Intervalle entre 2 essais

• Horaires de traitement

• …

PORTS D’ENVOI

• Définition d’un transport

secondaire

• Déclenchement quand le

Transport principal ne peut

pas être contacté

• Exemple :

Ftp non joignable

• Définition du filtre

• Permet l’abonnement à des

messages contenus dans

Biztalk

• Permet de s’abonner selon

de multiples critères

• ReceivePortName

• MesageType

• …

PORTS D’ENVOI

BIZTALK

• Cœur de Biztalk

• Base de données contenant

• Liste des abonnés ainsi que leurs filtres

• Messages réceptionnés par Biztalk et devant être consommé par les abonnés

• Fonctionnement identique à une boite de réception de mail

• Contient chaque message entrant

• Permet d’identifier facilement les messages non consommé.

Publication Souscription

MESSAGE BOX

Message Box

Receive port Send port

• Chaque message qui arrive dans la MessageBox• Doit être au format XML• Doit avoir au moins un abonnement• Contient des propriétés de contexte

• MessageID : Elément interne auto généré qui l’identifie pour BTS• Informations de transport (nom du fichier d’entrée, …)• Informations sur le port emprunté pour entrer dans BTS

• Remarques• BTS travaille exclusivement avec des messages au format XML• Quel que soit le format d’entrée dans Biztalk, il doit être transformé en XML• BTS encapsule les messages non XML dans une coquille XML

MESSAGE BOX

SCHEMAS

• Un schéma d'un document définit:

• les éléments possibles dans le document

• les attributs associés à ces éléments

• la structure du document et les types de données

• Le schéma est spécifié en XML

• pas de nouveau langage

• balisage de déclaration

• domaine spécifique xsd:

Message Type Details

XML Supports native XML message types

Defined in XML Schema definition language (XSD)

Flat FileSupports delimited or positional file formats

XML tags used to represent values

Tag information stored using the annotation capabilities of XSD

EDISpecially formatted text message

BizTalk supports EDIFACT and X12 formats

XSD annotations used to define format

Node Structure Start Length

DescriptionDelimited 0 50

UnitPrice Delimited 50 10

Quantity Delimited 60 10

TotalPrice Delimited 70 10

ItemID Delimited 80 10

Status Delimited 99 1

UnitPrice

ItemDescriptionQuantity

TotalPriceItemID

Status

ISA:00: :00: :01:1515151515 :01:515151 :041201:1217:U:00403:000032123:0:P:*~GS:CT:9988776655:1122334455:20041201:1217:128:X:004030~ST:831:00128001~BGN:00:88200001:20041201~N9:BT:88200001~TRN:1:88200001~AMT:2:10

SCHEMAS

SCHEMAS

• Permettent de s’intégrer à un système, un protocole ou une technologie

• Gérer les accès depuis et vers l ’extérieur, masquer les disparités des différents canaux d ’acheminement et de distribution

• Assurer la transformation en un format canonique interne en mode message

• Réduire les efforts d’intégration par l ’apport de modules préfabriqués

• Encapsuler les API ( Application Programming Interface) propriétaires des applications à connecter et gérer les protocoles d ’échanges

ADAPTATEURS

Protocoles

• FTP

• HTTP

• MSMQ

• POP3

• SMTP

• SOAP

• Web Sphere MQ

Applications

• SAP

• Siebel

• Oracle

• SQL Server

• PeopleSoft

• JD Edwards

• Microsoft SharePoint

• TIBCO

• IBM mainframes

• Web Sphere MQ

WCF

• WCF-WsHttp

• WCF-BasicHttp

• WCF-NetTcp

• WCF-NetMsmq

• WCF-NetNamedPipe

• WCF-Custom

TYPES D’ADAPTATEURS

CONFIGURER UN ADAPTATEUR

Receive Pipeline Send PipelineOrchestration

Normaliser les données vers XML

Traduire les données de XML vers d’autres formats

Assembler ou désassembler des documents

Coder ou décoder des documents

Crypter ou décrypter des documents

Signer ou vérifier les signatures numériques

Pipeline Components

LES PIPELINES

LES PIPELINES

Etape Rôle

Décoder Décrypte ou décode les données du message.

Désassembler Désassemble un échange en petits messages et analyse le contenu du message.

Valider Valide les données du message, généralement par rapport à un schéma.

Résoudre la parité Identifie le tiers BizTalk Server associé à certain jeton de sécurité dans le message ou le contexte du message

PIPELINE DE RÉCEPTION

Etape Rôle

Préassembler Effectue tout le traitement de message nécessaire avant d'assembler le message.

Assembler Assemble le message et le prépare pour la transmission au moyen d'actions, telles que l'ajout d'enveloppes, la conversion du format XML au format de fichier plat, ainsi que d'autres tâches complémentaires à l'étape de désassemblage du pipeline de réception.

Coder Code ou crypte le message avant qu'il ne soit remis.

PIPELINE D’ENVOIE

Pipeline Usage

Pass-Through Receive(PassThruReceive)

Ne fait rien

Pass-Through Send(PassThruTransmit)

Ne fait rien

XML Receive

(XMLReceive)Comprend le désassembleur XML

XML Send(XMLTransmit)

Comprend seulement l’assembleur XML

PIPELINE PAR DÉFAUT

Pipeline Files

Properties Window

Design SurfaceToolbox

DESIGNER DU PIPELINE

Réception

Décrypter des messages en provenance de partenaires

Découper des batch

Valider les messages contre des schémas connus

Vérifier l’identité de l’expéditeur pour non-répudiation

Créer des traitements personnalisés pour étendre la fonctionnalité de Biztalk (Validations ou traitements spéciaux)

Envoi

Crypter des messages en partance vers des partenaires

Signer des messages en sortie

Envelopper des messages en sortie

Valider les messages contre des schémas connus

SCENARIOS D’UTILISATIONS

5 fonctionnalités de base :

• Mappage simple d'une valeur donnée (copie directe)

• Concaténation des valeurs

• sélection conditionnelle

• Les scripts personnalisés

• Ajouter de nouvelles valeurs (données)

MAPPING

• Mappage simple d'une valeur donnée (copie directe)

NOM

PRENOM

AGE

ADRESSE

NOM

PRENOM

AGE

ADRESSE

MEME VALEUR

MAPPING

• Concaténation des valeurs

NOM

PRENOM

AGE

ADRESSE

NOM COMPLET

AGE

ADRESSE

CONCATENATION

C

MAPPING

• sélection conditionnelle

NOM

PRENOM

AGE

CNIE

NOM COMPLET

AGE

DOCUMENTD’IDENTITE

CONDITION

C

?

CARTE SEJOUR

MAPPING

• Les scripts personnalisés

NOM

PRENOM

DATE DE NAISSANCE

ADRESSE

NOM

PRENOM

AGE

ADRESSE

CALCULE

S

MAPPING

• Ajouter une nouvelle valeur

NOM

PRENOM

AGE

NOM

PRENOM

AGE

MATRICULE

GENERATION AUTOMATIQUE DU MATRICULE

S

MAPPING

MAPPING

MAPPING

ORCHESTRATIONS

• Langage de programmation graphique (XLANG)

• Code persisté en XML représentant les formes graphiques

• Compile en .Net (Classes et objets CLR)

• Comprend toute la syntaxe attendue d’un langage

• Séquentialité

• Variables

• Gestion des étendues des variables

• Conditions

• Boucles

• …etc.

ORCHESTRATIONS

Forme Usage

Receive

Utilisé pour recevoir un message

Doit spécifier une variable de type message

Peut spécifier un filtre

SendUtilisé pour envoyer un message

Doit spécifier une variable de type message

Construct MessageUtilisé pour instancier et affecter un message

Doit contenir une transformation de message et/ou une affectation de message

Message AssignmentUtilisé pour affecter un message à un autre, ou pour affecter le contenu d’un message

Utilise l’éditeur d’expression (code c#)

Transform

Utilisé pour transformer le contenu d’un message en un autre message

Doit spécifier le message d’entrée, le message de sortie et un mappage

ORCHESTRATIONS

Send Port

Messages

MessageBox

Receive Port

Receive Location(Physical Address)

Subscriptions

Bind/Enlist

1

6

3

5

4

Orchestration

Logical Send Port

Logical Receive Port

Send Port(Physical Address)

2

ORCHESTRATIONS

Liaisons

Types de ports

Identifiant

Modèle de communication

“One-way” ou Requête/Réponse

Etendue (internal, private, ou public)

Opérations

Message Types

Spécifier maintenant

Spécifier plus tard

Direct

Dynamique

ORCHESTRATIONS

Process AreaPortSurface

Toolbox

PortSurface

Orchestration View

Properties

ORCHESTRATIONS

Tester l’orchestration8

Configurer les liaisons avec les ports physiques7

Compiler et déployer les orchestrations6

Affecter les messages et transformer les données5

Écrire le code graphiquement4

Définir les ports logiques d’envoi et de réception3

Définir les types et les variables2

Définir les schémas1

ETAPES DE DÉVELOPPEMENT

ME CONTACTER Twitter.com/sentalba

Facebook.com/sbentalba

About.me/sbentalba

slideshare.com/salahBentalba

Ma.linkedin.com/in/sbentalba

Salaheddine.bentalba@gmail.com+212 608 992 380

top related