--- title: "Add document records - XML" slug: "add-document-records-xml" description: "Learn how to add and manage records in XML documents for D365 F&SCM, ensuring proper data structure and integration with external files." tags: ["Task topic"] updated: 2026-03-20T07:44:49Z published: 2026-03-20T17:44:19Z canonical: "docs.staedean.com/add-document-records-xml" --- > ## Documentation Index > Fetch the complete documentation index at: https://docs.staedean.com/llms.txt > Use this file to discover all available pages before exploring further. # Add document records - XML To each document, add the data records to be exchanged. For external file-based documents, set up the records in line with how the data is structured and named in the file. This topic explains how to add records to an XML document. If records are already initialized for the document, you can review and complete the setup for these records. To do so, instead of adding a record, select the desired record. ### Steps 1. Click **Connectivity studio - Integration Design**. 2. Click the **Documents** tab. 3. In the list, find and select the desired XML document. 4. Click **Edit**. 5. In the **Record** section, click **Add line**. 6. As a record name, enter a free-definable name. Usually, this is the name used in the external file. In the **Record** field, type a value. 7. Because in D365 F&SCM the data is structured in records and fields, for each external document type, the data structure is translated in the same way. To do this, by default the table '**BisBuffertable**' is used. The values are stored in a container field in this table. As a consequence, you can add or remove fields without coding to avoid deployment issues. In the **Record table** field, keep the default value '**BisBufferTable**'. 8. Use the parent record to define a record structure with parent-child relations. In the **Parent record** field, enter or select a value. 9. By default, if you have a parent-child relation, the parent and child data is processed separately. You can process the parent and child data together. Select **Yes** in the **Combine with parent record** field. 10. This setting is only applicable to parent records. - **Inner join**: To process the parent record, the child record must exist. **Example:** A sales order is only processed if it has a sales line. If no sales line exists, the sales order is not processed. If a sales line exists, both the sales order and the sales line are processed. - **Outer join**: To process the parent record, it is not required that child a record exists. **Example:** A sales order with no sales lines is processed. - **Exists join**: To process the parent record, a child record must exist. **Example:** If sales order has a sales line, only the sales order is processed. If the sales order does not have a sales line, the sales order is not processed. - **NoExistsJoin**: Only parent records are processed that do no have child records. **Example:** A sales order is only processed if it does not have a sales line. In the **Join mode** field, select an option. 11. During an import or export you can have the need to update another table in D365 F&SCM. Usually, this is an internal history table to trace what is imported or exported. If you select **Yes**: - The record is skipped by the query. And therefore, not exported to an external format. - You can use the record in the message mapping. - The record uses the validations as defined in D365 F&SCM. Select **Yes** in the **History** field. 12. Sub-task: Set record details. 1. In the **Line details** section, define the detailed settings for the record. In a document, you can need to repeat an element in the records. However, you cannot give these records the same name. Use the **External name** to refer to the tag name in the XML file. **Example:** You have a header address and a line address. In the document, you create a HeaderAddress record and a LineAddress record. For both, the **External name** is 'Address'. > [!NOTE] > **Note** > > If the element repeats for the same parent record, you must define a range for a qualifier field to identify the correct record. In the **External name** field, type a value. 2. You can add an additional tag to a record. The whole record is read between these tags or written between these tags. Select **Yes** in the **Use container** field. 3. In the **Container** field, enter the name of the container tag. 4. For each record, you can set the maximum number of expected occurrences. **Example:** A customer can have several delivery addresses. To have only one delivery address, set the Maximum occurrences to 1. You can use an XML document to generate an XSD. If you generate an XSD, the setting of this field is included. So, this field is not applied when reading or writing an XML file. > [!NOTE] > **Note** > > You can use a document XSD to inform a sender of XML files on the XML schema that you expect. To generate an XSD, on the **Document** page, on the **ActionPane**, on the **Development** tab, in the **Classes** group, click **Schema**. In the **Maximum occurrences** field, enter a number. 5. For each record, you can set the minimum number of occurrences. **Example:** To prevent importing a customer without an invoice address, set the Minimum occurrences to 1. You can use an XML document to generate an XSD. If you generate an XSD, the setting of this field is included. So, this field is not applied when reading or writing an XML file. > [!NOTE] > **Note** > > You can use a document XSD to inform a sender of XML files on the XML schema that you expect. To generate an XSD, on the **Document** page, on the **ActionPane**, on the **Development** tab, in the **Classes** group, click **Schema**. In the **Minimum occurrences** field, enter a number. 13. Close the page. > [!NOTE] > **Notes** > > Generic external document record details fields: > > - **External reference**: You can indicate which field of the record contains the unique ID of the record in the external database. In this way, you link the external ID to the D365 F&SCM record ID. **Note:** Usually, you only use this for an ODBC connection with CRM or if you use web services. > - **Revision field**: You can indicate which of the records fields contains the revision of the record in the external database. In this way, you find and link the latest revision to the record ID. **Note:** You can only use this field in combination with the **External reference** field. ## Related - [Using 'Join mode' and 'Combine with parent record' on document records](/using-join-mode-and-combine-with-parent-record-on-document-records.md) - [External references and revision numbers](/external-references-and-revision-numbers.md)