Importer des business objects avec des niveaux hiérarchiques
Il est possible d'ajouter des business objects qui ont des relations hiérarchiques entre eux. Les départements ont une structure hiérarchique. Ci-dessous vous trouvez un exemple comment il faut les importer.
XML:
<?xml version='1.0' encoding='utf-8'?>
<Department>
<Code>T01</Code>
<Description>Test 01</Description>
<ParentCode></ParentCode>
</Department>
<Department>
<Code>T02</Code>
<Description>Test 02</Description>
<ParentCode>T01</ParentCode>
</Department>
<Department>
<Code>T03</Code>
<Description>Test 03</Description>
<ParentCode>T01</ParentCode>
</Department>
Vous pouvez ajouter un niveau dans le XML en utilisant une transformation XSLT :
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xs="http://www.w3.org/2001/XMLSchema" version="2.0">
<xsl:template match="/">
<document>
<businessobjects>
<xsl:for-each select="document/businessobjects/Department">
<Department>
<Code><xsl:value-of select="Code" /></Code>
<Description><xsl:value-of select="Description" /></Description>
<Parent>
<Code><xsl:value-of select="ParentCode" /></Code>
</Parent>
</Department>
</xsl:for-each>
</businessobjects>
</document>
</xsl:template>
</xsl:stylesheet>
Dans un document d'importation Talk deux définitions de business object doivent être créés pour le business object Départements. Un pour le département principal et un pour le sous-département. Il faut le faire parce que les départements ont deux niveaux (dans cet exemple).
Configuration
Il faut ajouter deux business objects Département dans la définition avec un nom de noeud XML différent, un pour le département parent et un pour le département dépendant. Le business object Département parent n'a besoin que du champ Code. Le business object Département dépendant a besoin des champs Code, Description et une référence au Parent.