Archive

Posts Tagged ‘Intégration de données métier’

Envoyer des IDOC SAP avec BODS

August 7th, 2012 No comments

Retour d’expérience sur le projet GASPAR pour le groupe PVCP (Pierre & Vacances – Center Parcs).

Dans ce projet le challenge était d’utiliser BODS comme middleware pour envoyer à SAP des écritures (pièces) comptables via la technologie IDOC.

Le contexte :

  • Un système Tiers dépose un fichier plat contenant la facturation client et les comptes d’imputations correspondants,
  • BODS charge ce fichier,
  • BODS traduit les imputations comptables du système tiers en code d’imputation comptable SAP,
  • BODS poste la pièce comptable dans SAP au format IDOC en mode message.

Les solutions :

  • Les utilisateurs métier maintiennent dans SAP des tables de correspondance entre compta système tiers et compta de SAP (hors périmètre de ce post),
  • BODS traduit via des lookup_ext les données d’imputation comptables (hors périmètre de ce post),
  • BODS envoi un IDOC par pièce comptable à SAP en utilisant l’IDOC ACC_DOCUMENT003.

La difficulté majeure résidait dans la génération des IDOC. Un fichier plat pouvant contenir jusqu’à 34000 documents comptables générant autant d’IDOC.

Un IDOC SAP ce présente sous un format de type xml. L’ACC_DOCUMENT003 simule la saisie d’une pièce comptable, il y a de nombreux champs à remplir pour satisfaire SAP, et de nombreux contrôles sont réalisés pour que la pièce comptable soit considérée comme juste.

Ce qui nous intéresse ici est la partie génération de l’IDOC.

Génération massive d’IDOC :

1. Structurer les données pour ce rapprocher du schéma cible :

Deux méthodes ont été utilisées sur le projet, création d’une table par segments d’IDOC, ou division de la table source en autant de query que de segments d’IDOC

Chaque IDOC est référencé par un Identifiant unique, un IDOC peut contenir plusieurs lignes, qui doivent être référencées de manière unique par IDOC.

La table/query d’en-tête ne doit comporter qu’une seule ligne par identifiant d’IDOC, les autres tables/query peuvent contenir plusieurs lignes.

A l’image d’un modèle en étoile les données sont réparties entre : la table d’en-tête (Fait) et les tables de lignes (Dimension).

ci-dessous des données en exemple :

2. Lier les Tables/Query à une en-tête pour générer tous les IDOC en une passe. 

(Dans l’exemple précédent : la query “QRY_MATCH_IDOC”)

La query en amont de l’IDOC (query_2) place les segments dans l’IDOC.

Chaque Tables sources doivent être insérées dans la cible comme schéma.

2.1 L’en-tête :

La clause FROM est déterminante pour structurer l’IDOC. La clause FROM de query_2 aura pour valeur la table d’en-tête.

Puis tous les segments d’en-tête auront comme valeur dans la clause FROM le “Row_Generation”. Cela permet de ne remplir l’en-tête qu’une seule fois. Dans l’exemple ci-dessus les segments EDI_DC40, E1BPACHE09 et E1BPACEXTC

(détail d’un segment)

2.2 Les lignes :

Les autres segments sont rempli par les tables correspondantes, avec en clause FROM la table, et en clause WHERE le lien vers l’identifiant de l’en-tête

En exemple le segment E1BPACGL09 :

2.3 Cas particulier d’une duplication de segment :

Dans certains cas un segment doit être répété. Lors de la première itération le segment est paramétré à l’identique des autres, et la deuxième itération la clause FROM prendra pour valeur un “ROW_GENERATION”.

 

3. Paramétrage de l’envoi d’IDOC

Afin d’optimiser l’envoi des IDOC en mode message la fenêtre suivant permet de modifier le nombre d’envoi simultané d’IDOC. Deux solutions, par paquet ou par division chronologique.

La solution d’envoyé les IDOC par paquet de 100 a été choisi compte tenu du paramétrage de SAP chez le client.

Conclusion

Cette méthode permet d’envoyer en masse en quelques minutes des milliers d’IDOC.

Certes BODS est détourné de son utilisation première (ETL) pour devenir un modeste intégrateur, néanmoins les performances sont très bonne.

Aujourd’hui la moyenne est : 1 min / 1000 IDOC de type ACC_DOCUMENT003.

Informatica Day Paris – 2010

August 10th, 2010 No comments

Homsys sponsorise l’Informatica Day, le 23 septembre à Paris : l’événement phare du marché de l’Intégration et de la Qualité de Données.

Echanges, convivialité, partage d’informations et animations…Rejoignez-nous pour une journée entière d’informations et d’échanges autour des principaux challenges des entreprises en matière d’intégration et de qualité des données, aux côtés de clients utilisateurs, d’experts du marché, des équipes et des Partenaires Informatica !

  • Une table ronde / des témoignages clients, tous secteurs d’activité confondus, présentant des projets et initiatives d’intégration et de qualité de données exceptionnels
  • Des sessions plénières animées par des experts de l’intégration et de la qualité des données
  • Des ateliers « à la carte » : Intégration de données, Qualité de données, Échanges de données inter-entreprises, Résolutions d’identité, Master Data Management, Gestion du cycle de vie des données applicatives…

Yves Cointrelle, directeur général Homsys, animera un atelier sur le thème : « Quel est l’impact de la qualité de données sur l’activité de votre entreprise ? » (16h15 – 16h45)

En savoir plus :  http://fr.vip.informatica.com/?elqPURLPage=7666

Inscription en ligne

Techdays 2010 – Comment intégrer les données métiers avec SharePoint 2010 (SP2010)

February 11th, 2010 No comments

Une session 100% démo, rien de mieux pour aller directement dans le concret, être dans le bain…

Cette cession avait pour objectifs de montrer par l’exemple, les apports de SharePoint 2010 dans l’intégration des données métiers. Les points abordés ont été les suivants :

  • Business Connectivity Service
  • Mode Offline
  • Reporting
  • Workflow

1-    Business Connectivity Service (BCS)

Remplaçant des BDC dans Moss 2007, ce nouveau service est doté d’une interface facile à manier. En quelques clic vous voilà connecté à une base de données, vous permettant ainsi d’avoir un accès en lecture et écriture (et oui ça marche dans les deux sens) aux données des produits, contacts, … dans une liste SharePoint. De là, vous avez la possibilité d’éditer en mode formulaire un enregistrement, apporter une modification à un libellé par exemple et hop… celle-ci est automatiquement visible dans le système source. A contrario, vous modifiez dans votre système source une donnée, elle est visible quasi-instantanément dans la liste SharePoint.  Avec MOSS 2007, il fallait passer par l’écriture d’un fichier XML pour se connecter à source applicative externe…

2-    Mode Offline

En s’appuyant sur l’exemple précédent, il s’agit ici d’utiliser le WorkSpace dans SharePoint 2010 qui permet, où que l’on soit, de travailler en mode déconnecté. Ainsi, vous accédez à un Site SharePoint off-line dans lequel vous retrouvez votre liste dont le contenu est accessible en lecture et en écriture. Dès que le Workspace détecte une connexion réseau, le Site SharePoint et la base de données source, à partir de laquelle le BCS a été défini précédemment, sont automatiquement synchronisés. 

3-    Reporting

La démo ici consistait à utiliser Excel Services en publiant un fichier Excel contenant un tableau dans une bibliothèque de documents sur un site SharePoint 2010. Rien de neuf par rapport à MOSS 2007 jusque là ! Sauf qu’à partir de cette bibliothèque, il est possible d’ouvrir le fichier Excel en mode édition et de modifier son contenu : ajouter des formules, des graphes, … mais aussi, grâce à l’API REST, nouveauté de SP2010, de prendre ce dont on a besoin (plage de cellules, graphe, …) dans le classeur est mettre tout cela en affichage sur une page d’accueil, pour illustrer les principaux indicateurs d’une BU par exemple.

SP 2010 intègre aussi une ChartPart qui offre un certain nombre de graphes qu’il est possible d’utiliser pour illustrer le contenu d’une liste SharePoint. Pour compléter notre exemple, il est question ici d’utiliser cette ChartPart avec la liste précédemment créée pour illustrer sous forme graphique son contenu.

4-    Workflow

Avec Moss2007, les workflow étaient modélisables notamment depuis SharePoint Designer. SP2010 permet aussi de mettre en place un workflow avec Visio. Il suffit dans Visio 2010 d’utiliser le template « Microsoft SharePoint Workflow ». Toute la partie modélisation peut ainsi être faite facilement depuis Visio, en utilisant les objets appropriés (procédé, décision, condition,…) en drag and drop, d’importer ensuite le workflow dans SharePoint Designer pour le finaliser avec les actions et les connexions adéquates.