| API / API Web | |
|
Version : ACE 1.0 Edition spéciale ES2 |
||
|
Package : fr.generix.metier.bc4j.integration.common GCEServiceassimilate |
||
| Schémas d’entrée et de sortie : | IN | OUT |
Cette API fournit des services d’intégration (un peu l’équivalent de l’intégrateur en mode Client/Serveur INTEG, voir aussi Connecteur). Même si elle ne propose pas réellement de fonctionnalités directes en terme d’actes de gestion, elle sert de coordination entre les différents services existants.
Son intérêt consiste à intégrer un flux de données composé d’un nombre important de données, surtout dans leur diversité.
Pour exemple, cette API est capable de créer et gérer des commandes de vente ou d’achat. En une seule opération, elle est notamment capable de déclencher :
Elle peut également créer un client, de nouveaux produits, ou encore générer des réceptions ou des livraisons de marchandises.
API imbriquées :
Comment utiliser le connecteur GCEServiceassimilate ?
Pour utiliser le connecteur du module Services, il suffit de :
Contraintes et limites de fonctionnement (hors périmètre)
| RAS. |
Paramétrage (PPE)
| RAS. |
Processus, contrôles et règles de gestion
| ETAPE | DESCRIPTION DU PROCESSUS |
| 1 | Analyse du flux XML d’entrée. |
| 2 | Enchaînement, de manière logique et unitaire, des différents services demandés. |
| 3 | Enregistrement d’un historique des opérations effectuées. |
| 4 | Gestion des erreurs. |
| SCHÉMA D’ENTRÉE |
Transaction Il est possible de renseigner plusieurs transactions à cette API. Chacune de ces transactions se compose d’une première partie qui permet de donner la cible, la société et l’utilisateur. Ensuite, plusieurs directions sont possibles : la gestion d’un ou plusieurs produits, d’un ou plusieurs tiers, d’un ou plusieurs événements (nœud « businessEvent »). |
|
Service Le nœud « Service » correspond au déclenchement de différentes API sur l’événement (génération, validation, valorisation,…) :
|
|
|
Header Pour renseigner l’en-tête de commande, il suffit de renseigner les parties « key » et « info »/ La partie « key » permet d’identifier respectivement l’en-tête de commande (table EVE) pour lui appliquer une action (suppression ou remplacement) ou un service (nœud « Service ») La partie « info » permet de restituer les informations de l’en-tête de l’événement utiliseées lors de la création ou de la modification de l’événement. Les actions possibles :
Liste des objets contenant une action (action par défaut entre parenthèses) :
|
|
|
BusinessEvent Le noeud “BusinessEvent/header/info” contient un noeud “item” afin de renseigner un ou plusieurs postes d’événement (avec un nœud « key » + « info ») et ainsi de suite pour les lignes d’événement (nœud « ligne ») et les sous-postes d’événement (nœud « subitem »). |
Exemple(s) d’utilisation
|
Exemple de flux XML d’entrée Voici un exemple d’un flux XML à intégrer dans ACE via le webservice « GCEService ». <?xml version="1.0" encoding="utf-8"?> <!-- edited with XML Spy v4.4 U (http://www.xmlspy.com) by Deconninck (ACE) --> <GCEServiceassimilateIn versionImplementation="1" versionSpecification="1.0" xmlns= "http://www.ACE.fr/metier/bc4j/integration/common" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.ACE.fr/metier/bc4j/integration/common GCEServiceassimilateIn.xsd"> <transaction> <context> <entity>1</entity> <identification> <code>DEMO</code> </identification> <target>ACDB</target> </context> <businessEvent> <header> <info> <thirdparty> <key> <type>FOU</type> <identifier>BRFOU101</identifier> </key> </thirdparty> <currency>USD</currency> <salesman>DHS</salesman> <depot>ATELIER</depot> <forwarder>000001</forwarder> <carrier>TRA001</carrier> <deliveryThirdparty> <key> <type>FOU</type> <identifier>BRFOU101</identifier> </key> </deliveryThirdparty> <date>20050816</date> <shipmentDate>20050817</shipmentDate> <deliveryDate>20050819</deliveryDate> <confirmationDate>20050816</confirmationDate> <category>WE</category> <reference>ACH00001</reference> <description>Commande d'achat en EUR</description> <item> <info> <product> <key> <code>BR101</code> </key> </product> <quantity>1.0</quantity> <price>5.00</price> <analyticalAxis> <code>1</code> <heading>ACH</heading> <section>601000</section> <secondary1>IMMO</secondary1> <secondary2>DIVERS</secondary2> <secondary3> </secondary3> <percentage>30.0</percentage> </analyticalAxis> <analyticalAxis> <code>1</code> <heading>ACH</heading> <section>601000</section> <secondary1>TRESO</secondary1> <secondary2>DIVERS</secondary2> <secondary3> </secondary3> <percentage>10.0</percentage> </analyticalAxis> <analyticalAxis> <code>1</code> <heading>ACH</heading> <section>601000</section> <secondary1>IMMO</secondary1> <secondary2>CNT02LI09</secondary2> <secondary3> </secondary3> <percentage>60.0</percentage> </analyticalAxis> <analyticalAxis> <code>2</code> <heading>00001</heading> <section>F03</section> <secondary1>CO</secondary1> <secondary2> </secondary2> <secondary3> </secondary3> <percentage>100.0</percentage> </analyticalAxis> </info> </item> </info> </header> </businessEvent> </transaction> </GCEServiceassimilateIn> Exemple de flux XML de retour <egx_ws> <bean_out> <GCEServiceassimilateOut xmlns="http://www.ACE.fr/metier/bc4j/integration/common"> <result info="CreationPoste"> <eventHeaderKey> <purchaseSale>A</purchaseSale> <type>CDA</type> <eventNumber>383</eventNumber> </eventHeaderKey> <eventItemKey> <purchaseSale>A</purchaseSale> <type>CDA</type> <eventNumber>383</eventNumber> <itemNumber>1</itemNumber> </eventItemKey> </result> </GCEServiceassimilateOut> </bean_out> </egx_ws> |