Overview

Sections

Overview

Tutorials are designed to offer a guide to complete common objectives, while also acknowledging that individual developers need to respond to individual needs of their own solutions. Tutorial frameworks provide blueprints for these solutions and should be adapted to fit individual needs.

Analytics with Birst

API Gateway

Application Development with Mongoose

Artificial Intelligence

Data Fabric

Digitical Assistant

Document Management

Integration with ION

Robotic Process Automation

Add description here

Security & User Management

Add description here

Was this section helpful?

What made this section unhelpful for you?

On this page
  • Overview

Analytics with Birst

On this page
  • Analytics with Birst

API Gateway

API Gateway is a software system for brokering requests from API consumers, such as web and mobile applications, and API providers, such as Infor enterprise or third-party services. As a broker sits between consumers and providers (technically it is a reverse proxy), it can provide many benefits to both consumers and providers.

On this page
  • API Gateway

Application Development with Mongoose

Go beyond basic fit and customize your cloud experience with extensibility tools that leverage no-code, low-code, and full-code frameworks.

On this page
  • Application Development with Mongoose

Artificial Intelligence

Use Machine Learning to build an AI into your business processes.

On this page
  • Artificial Intelligence

Analytics & Reporting in CloudSuite Service Industries

Was this section helpful?

What made this section unhelpful for you?

On this page
  • Analytics & Reporting in CloudSuite Service Industries

Analytics & Reporting in M3 Cloudsuites

Was this section helpful?

What made this section unhelpful for you?

On this page
  • Analytics & Reporting in M3 Cloudsuites

Backend as a Service (BaaS)

Was this section helpful?

What made this section unhelpful for you?

On this page
  • Backend as a Service (BaaS)

Data Fabric

Manage data on the platform so that humans and systems can securely access information from anywhere.

On this page
  • Data Fabric

Digital Assistant

Streamline the user experience with a digital assistant that helps your employees navigate and access information by voice or chat.

On this page
  • Digital Assistant

Document Management

Leverage Infor's central document repository to manage your enterprise document in the cloud.

On this page
  • Document Management

Governance, Risk and Compliance

Was this section helpful?

What made this section unhelpful for you?

On this page
  • Governance, Risk and Compliance

Integration with ION

Create a unified application topology using the integration hub in the Infor Platform.

Overview

Intelligent Open Network (ION) is part of Infor OS; the technology platform of Infor. Infor ION provides the flexibility you need to make an often-complex web of enterprise systems work together. ION contains an API Gateway for a full System Integration.

Key Concepts & Definitions

Before diving into building your workflows, the following table provides you with Workflow key concepts for better understanding each component of a Workflow.

Concepts
Definitions

ION

Intelligent Open Network. Part of the Infor OS technology platform.

BOD

Business Object Document. An XML document based on standards from the Open Application Group Integration Specification (OAGIS).

ION Desk

A business representation of complex company data for end user consumption.

Monitors

Approval matrices contain rules based on parameter evaluation for the distribution of approval tasks. These matrices can be used from Workflow to define approval chains.

Workflows

Workflow enables communication from an application to a user. For example, it presents a document for approval or prompts the user to perform a task using a particular screen of an application.

Activation Policy

A business representation of complex company data for end-user consumption.

Workflow Schedules

Approval matrices contain rules based on parameter evaluation for the distribution of approval tasks. These matrices can be used from Workflow to define approval chains.

Business Rules

Approval matrices contain rules based on parameter evaluation for the distribution of approval tasks. These matrices can be used from Workflow to define approval chains.

Workflow Elements

Workflow Elements
Description

Task

A workflow step that creates an entry of the Task type in a user’s task list. The workflow suspends execution until a user has completed this task, and then moves to the next step in the flow.

Notification

A workflow step that creates an entry of the Notification type in a user’s task list. The workflow continues execution after the notification is sent to a user.

Decision Table

An automatic step to set the value for one or more parameters that are based on the evaluation of a complex set of conditions.

ION API

A step to perform a call to an ION API operation.

Start Workflow

A step to start another workflow.

Loop Back

A part of the flow that is repeated.

Subprocess

A part of a workflow model that can be expanded or collapsed in the modeler.

Task Chain

A series of approval tasks that are sent to different people. An approval matrix is used to model who should approve.

Set Parameter

An automatic step to change the values of parameters.

Exit Point

Exit point to implement custom logic outside the workflow.

Wait

A step to let the workflow execution wait for a specified amount of time or until a specified date and time.

Decision

An evaluation of a condition that has two possible follow up branches: Yes and No.

Parallel

An unconditional execution of two or more execution branches in parallel.

Parameter Data Types

Data Types
Description

String

Alphanumeric and Special Characters with a maximum length of 4000 characters.

Decimal

A number that includes a decimal point.

Date

Contains a date value.

Code

A string having a value selected from a Code Table.

User

A string containing the personid of an IFS user.

Integer

A (64 bit signed) whole number.

Boolean

True or False.

Date and Time

Contains a date and time value.

Hyperlink

A number that include a decimal point.

DistributionGroup

A string containing an IFS distribution group.

ION Connect

The main purpose of ION Connect is to deliver business documents from one place to another. With ION Connect you can establish connections between applications, both Infor applications and third-party applications.

You can configure ION Connect through the ION Desk. In ION Desk you can model document flows between applications. Such flows can represent a business process, but also more technical flows can be defined. For example, to map data from a third-party application to a standard business object document as used by an Infor application, you can also use filtering or content-based routing.

From the ION Desk, you can deploy your models to the ION Service by activating them. The ION Service will then make sure that documents are handled in accordance with your activated models. ION Desk also provides management screens to monitor the behaviour of the ION Service and to help in troubleshooting when needed.

Watch the video below for a full example of integration using ION Connect

Pass-through (Proxy)

The API Gateway receives requests from clients and delivers them to the proper target API. Clients know and invoke only one baseURL endpoint even if the target API can be different between the request and the response you can do other activities in the API Gateway for example applying policies for transforming or modifying the payload and the header of the request/response.

Orchestration

To reduce the complexity and management of invoking multiple different APIs, you can use the ION API Flow. Note that the ION API Flow is different compared to Document Flow and/or Data Flow, it is composed only of the ION API connection point plus decision components. You can define your own input parameters and output parameters and invoke multiple and different APIs, and the response of one API can be used as input for another API. After the design, you can deploy the ION API Flow that generates an endpoint in a dedicated API Suite (API Flow suite) that can be invoked by a client who provides one input and receives one output no matter the number of API calls done internally.

Hybrid

The ION API Gateway is a cloud-based service where you can host all public APIs and Infor products APIs. With the Hybrid service, we gave you the possibility to expose an internal API over the internet protected with the OAuth2 security. The only requirement is the Enterprise Connector which is the bridge between your internal API and the cloud

Want to learn more?

Quick Reference

There are numerous valuable resources available to enhance your understanding of the Infor Platform. One of the most helpful tools is a quick reference sheet, which can provide a concise overview of key information. You may find the following Cheat Sheets particularly useful for your learning and reference purposes.

ION Connect Backend as a Service (BaaS)

Topical Videos

Seeking details on a particular feature or want a brief summary? These concise videos might be exactly what you need.

Enterprise Integration and Process Automation

Written Guides

Product documentation serves as the primary reference for understanding specific product functionalities. For online, searchable, and user-friendly resources, refer to the following documentation.

Infor OS documentation Infor ION API Administration Guide API Gateway documentation BaaS documentation

Community

Collaborating with peers in your sector offers a valuable opportunity to learn and assist others. Dive into the Infor OS Community today!

Courses

Infor U Campus offers Learning Paths that combine video-based and instructor-led training. If you are an Infor customer, then check out courses on Infor U Campus. We recommend the following courses specifically for this component: Infor OS Platform: Foundation for Multi-Tenant – Part 1Infor OS Platform: Foundation for Multi-Tenant – Part 2 Infor OS Platform: Configuring ION Connect Infor OS Platform: Configuring and Administering the API Gateway Infor OS Platform: Using Advanced Monitors and Workflows

Written Guides

Product documentation serves as the primary reference for understanding specific product functionalities. For online, searchable, and user-friendly resources, refer to the following documentation.

Community

Collaborating with peers in your sector offers a valuable opportunity to learn and assist others. Dive into the Infor OS Community today!

Courses

Infor U Campus offers Learning Paths that combine video-based and instructor-led training. If you are an Infor customer, then check out courses on Infor U Campus. We recommend the following courses specifically for this component:

Was this section helpful?

What made this section unhelpful for you?

On this page
  • Integration with ION

Customize Object Schema (BOD, JSON, ANY)

## Overview The integration platform acts as the bridge that allows various systems to communicate with one another. It achieves this through several methods, including file reading, database interactions, and API calls, all utilizing a standard set of message formats. In the ION environment, these default formats—BODs, JSON, CSV, DSV, and ANY—are known as object schemas. However, when these standard schemas do not fulfill specific needs, custom messages may be required. * * * ### Components * [Enterprise Integration](https://developer.infor.com/components/enterprise-integration/) * [Enterprise Integration Best Practices](https://developer.infor.com/best-practices/enterprise-integration/) ### Requirements * User privileges to ION * Security roles: IONDeskAdmin * Access to install Enterprise Connector locally * Optional classes on [Infor U](https://education.infor.com/) * Infor OS: Foundation for Multi-Tenant - Part 1 * Infor OS: Foundation for Multi-Tenant - Part 2 * Infor OS: Configuring ION Connect * * * ## Tutorial Difficulty: Medium Estimated completion time: 45 Minutes Please watch the video below for an introduction to the BOD (Business Object Document) message system. https://youtu.be/R7N7Ar8TUd4?si=tNQt7vS_yRZymX-r In this tutorial, we will explore how to create custom messages (BODs and JSON), sometimes directly from the File Template or Connection Points, and other times from the Data Catalog. Here is a Layout of what will be covered. * 1\. File Template * 2\. DB Connection point * 2.1 Stored procedure * 2.2 AnySQL * 3\. API Connection point * 4\. Object Schemas * 4.1 From the Connection point (DB Connector) * 4.2 From sample data * Example file * Manually * * * ### 1\. File Template Login to Infor OS Portal. After you have logged in, click the ION tab or select the ION security card located on the main page. ![](https://developer.infor.com/wp-content/uploads/2024/08/image-314.png) Click the Menu icon then expand the Connect option, click the [File Templates](https://docs.infor.com/inforos/latest/en-us/useradminlib_cloud/default.html?helpcontent=iontechconceag_cloud_osm/lsm1436532314975.html) item, and click the ( + ) Add option. ![](https://developer.infor.com/wp-content/uploads/2024/08/image-315.png) In the configuration section, you’ll need to specify a Name for the file template and have the option to include a Description . You also need to define the File Type (text or binary), File Encoding (such as UTF-8 or ISO8859-1), and the Format Type (Delimited, Fixed-Length, Fixed-Length & Delimited, Full BOD, or XML). For further information on the meaning of these settings, please consult the [File Template properties documentation](https://docs.infor.com/inforos/latest/en-us/useradminlib_cloud/default.html?helpcontent=iontechconceag_cloud_osm/lsm1436532315213.html). In the Settings tab, you have to provide the BOD name in the Document field, the field separator, and the line separator of your file. There is another property named Generated document that can be (single, or multiple). In this example we are using the following Settings values: * Document - EXTERNAL_ITEM * Field Separator - Comma * Line Separator - \r\n * Generated document - Multiple ![](https://developer.infor.com/wp-content/uploads/2024/08/image-322.png) In the fields tab, Click the ( + ) button to define the structure of the BOD giving the name of the fields that will be the element tag of the Document (BOD Noun). Notice that the FieldName can be optional, this means that in the file you can skip the value for the fields you have selected as optional. ![](https://developer.infor.com/wp-content/uploads/2024/08/image-323.png) Click Save . After saving the configuration the Generated Metadata option will be available and we have to click on that to create the custom BOD. Create a CSV document file with the Field information you configured above, supply the Header information. ![](https://developer.infor.com/wp-content/uploads/2024/09/image-103.png) Save the file in a CSV format ( DocumentID.csv ). Click the GENERATE METDATA button. ![](https://developer.infor.com/wp-content/uploads/2022/11/2022-07-12-12_35_17-ION-Desk3.jpeg) Click the UPLOAD button. ![](https://developer.infor.com/wp-content/uploads/2024/09/image-104.png) Click on the browse folder icon, select the DocumentID.csv file you just created. Click Ok . ![](https://developer.infor.com/wp-content/uploads/2024/09/image-99.png) Sample File Content will be displayed, click Ok . ![](https://developer.infor.com/wp-content/uploads/2024/09/image-105.png) Expand EXTERNAL_ITEM folder and select ITEM , click Ok . ![](https://developer.infor.com/wp-content/uploads/2024/09/image-106.png) You should get a "Document metadata generation is successful" message, click Ok . ![](https://developer.infor.com/wp-content/uploads/2024/09/image-102.png) At this stage, we have generated the custom BOD that can receive the CSV file using the File template. Check the Object Schemas going to the data catalog. ![](https://developer.infor.com/wp-content/uploads/2024/08/image-331.png) * * * ### 2\. DB Connection Point ### 2.1 Stored Procedure Let's start with the creation of the DB Connector Connection Point. From the ION page, expand Connect and click on the Connection Points option. Click the \+ Add . ![](https://developer.infor.com/wp-content/uploads/2024/08/image-332.png) From the list, select the option Database. ![](https://developer.infor.com/wp-content/uploads/2022/11/DB-1.jpg) On the Database Connection Point (through Enterprise Connector) page, you have the left side where you have to provide the Name and Description (Optional) of the connection point, you also have to select the Location you want to use to connect to the database. After selecting the location , you have to select the type for the DB connection point (Stored Procedure, AnySQL Modeler, Data Loader), in this case, select Stored Procedure . On the right side, you have 2 tabs, [Connection](https://docs.infor.com/inforos/latest/en-us/useradminlib_cloud/default.html?helpcontent=iontechconceag_cloud_osm/lsm1436532312715.html) details and [Documents](https://docs.infor.com/inforos/latest/en-us/useradminlib_cloud/default.html?helpcontent=iontechconceag_cloud_osm/zdv1479220355395.html) details. For a complete list of details and meanings, please refer to the [Database Connection point documentation](https://docs.infor.com/inforos/latest/en-us/useradminlib_cloud/default.html?helpcontent=iontechconceag_cloud_osm/lsm1436532312637.html). Select the Database Driver from the list drop box, choose if you want to use basic settings or advanced settings , and based on your choice, provide the Host Name , Port Number , and Schema Name for basic settings. Supply the complete URL for the Advanced settings. Specify a User Name and Password for connecting to the database. Once done, click the test button to check the connection with the database and if everything is okay you get back "Test succeeded ![](https://developer.infor.com/wp-content/uploads/2022/11/DB-2.jpg) In the Documents tab, you have to create a scenario to read table data from the database using the Stored procedure. Move to the Documents tab and click the ( + ) button, the read scenario is selected by default. Give a Name to the Procedure and provide the SQL Statement in the text area, to execute the Stored Procedure. Click Save . ![](https://developer.infor.com/wp-content/uploads/2024/09/image-58.png) Let's now move to the SQL server and create the stored procedure. With SQL Management Studio , connect to the database we have specified in the connection tab and expand the database ( In this example it is named TEST ), expand Programmability , and select Stored Procedures . ![](https://developer.infor.com/wp-content/uploads/2022/11/DB-4.jpg) Right-click and select Stored Procedure ... ![](https://developer.infor.com/wp-content/uploads/2022/11/DB-5.jpg) This is the code for the StoredProcedure for SQL server. USE [TEST] GO / * *Object: StoredProcedure [dbo].[ReadItems] Script Date: 11/25/2022 5:18:09 PM * */ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: Giampaolo Spagoni -- Create date: 2022-11-25 -- Description: Read Item -- -- _____________________________ -- | STATUS | DESCRIPTION | -- |________|____________________| -- | 0 | new record | -- | 1 | elaborated | -- | 2 | waiting the ACK | -- | 3 | error | -- |________|____________________| -- -- ============================================= CREATE PROCEDURE [dbo].[ReadItems] AS BEGIN -- SET NOCOUNT ON added to prevent extra result sets from -- interfering with SELECT statements. SET NOCOUNT ON; BEGIN TRAN -- Insert statements for procedure here SELECT(SELECT DB_ITEM.ITEM, DB_ITEM.DESCRIPTION, DB_ITEM.UOMA, DB_ITEM.TYPES, DB_ITEM.GROUPS, DB_ITEM.COLOR, DB_ITEM.HEIGHT, DB_ITEM.WIDTH, DB_ITEM.DEPTH, DB_ITEM.UOMB FROM ITEM_EXT as DB_ITEM WHERE DB_ITEM.STATUS = 0 FOR XML AUTO,ELEMENTS, type).query('for $i in /DB_ITEM return {$i}'); UPDATE ITEM_EXT SET STATUS = 2 -- waiting a response WHERE STATUS = 0 COMMIT TRAN END Click the Execute button to create the Stored Procedure. You will receive a message that the command completed successfully. ![](https://developer.infor.com/wp-content/uploads/2022/11/DB-6.jpg) Let's insert some rows into the table. USE [TEST] GO INSERT INTO [dbo].[ITEM_EXT]([ITEM],[DESCRIPTION],[UOMA],[TYPES],[GROUPS],[COLOR],[HEIGHT],[WIDTH],[DEPTH],[UOMB]) VALUES ('CAR001','car 1','EA','Product','USF100','red',140,200,450,'mm') INSERT INTO [dbo].[ITEM_EXT]([ITEM],[DESCRIPTION],[UOMA],[TYPES],[GROUPS],[COLOR],[HEIGHT],[WIDTH],[DEPTH],[UOMB]) VALUES ('CAR002','car 2','EA','Product','USF100','white',135,195,420,'mm') INSERT INTO [dbo].[ITEM_EXT]([ITEM],[DESCRIPTION],[UOMA],[TYPES],[GROUPS],[COLOR],[HEIGHT],[WIDTH],[DEPTH],[UOMB]) VALUES ('CAR003','car 3','EA','Product','USF100','white',400,400,400,'mm') GO Transfer back to the OS Portal, and from the connection point you just creating click the TEST button. You will receive XML output with the BOD structure. ![](https://developer.infor.com/wp-content/uploads/2022/11/DB-7-1.jpg) This proves that the connection point works properly and you are able to read the table data and generate an XML. Now let's create the custom BOD that generates the object schema in the Data Catalog, but before doing this you have to reset the status of the records in the table. This is because the Stored Procedure has updated the status for not reading the same records over and over. Go to the SQL Management Studio , open a New Query editor and run the following command. Update [dbo].[ITEM_EXT] set [ITEM_EXT].[STATUS]=0 where [ITEM_EXT].[STATUS]=2 Now you are ready to generate the schema for the custom BOD. Transfer back to the OS Portal and on the Database Connection Point (through Enterprise Connector) screen click the Generate button ![](https://developer.infor.com/wp-content/uploads/2022/11/DB-8.jpg) As in the file template, you get a form where you have to select the DocumentID and when you click the "OK" button you will see the custom BOD name in the document text box. ![](https://developer.infor.com/wp-content/uploads/2022/11/DB-9.jpg) ![](https://developer.infor.com/wp-content/uploads/2022/11/DB-10.jpg) Go to the data catalog to see the newly created object schema ![](https://developer.infor.com/wp-content/uploads/2022/11/DB-11.jpg) ### 2.2 AnySQL Let's start with the creation of the Database Connector connection point. Follow the same steps as above for the creation of the connection point, the only difference is the Type is AnySQL Modeler . Also, the Connection tab is the same. ![](https://developer.infor.com/wp-content/uploads/2022/11/DB-12.jpg) Move to the documents tab, click the ( + ) button, and then the EDIT button ![](https://developer.infor.com/wp-content/uploads/2022/11/DB-13.jpg) From this page, give a Name to the model, give a name to the Document Name and click the (+) button to retrieve the list of tables of the database. ![](https://developer.infor.com/wp-content/uploads/2022/11/DB-14.jpg) Drag the table into the canvas and click on the select columns icon. ![](https://developer.infor.com/wp-content/uploads/2022/11/DB-15.jpg) Select the columns you are interested in and click the > arrow. In the ITEM row, use the dropdown list of the Property column and select identifier , then click the UPDATE button. ![](https://developer.infor.com/wp-content/uploads/2022/11/DB-16.jpg) ![](https://developer.infor.com/wp-content/uploads/2022/11/DB-16-1-1.jpg) You will see the result in table format. ![](https://developer.infor.com/wp-content/uploads/2024/09/image-59.png) Click the Settings icon as described above and in the settings form, select output format as JSON (array) , flag the Enablement Improved Data Type Normalization option, click twice on the Add Incremental Key button to add two rows. Configure the Object and Column fields as below, then click UPDATE . ![](https://developer.infor.com/wp-content/uploads/2022/11/DB-18.jpg) Click Save on the connection point and click the GENERATE METADATA button to create the JSON Object Schema, you will get a message that the schema has been generated successfully ![](https://developer.infor.com/wp-content/uploads/2022/11/DB-19.jpg) Go to the data catalog to see the newly created object schema ![](https://developer.infor.com/wp-content/uploads/2022/11/DB-20.jpg) * * * ### 3\. API Connection Point For the API Connector, create an API Connection Point. From the ION page. ![](https://developer.infor.com/wp-content/uploads/2024/09/image-23.png) Click on the Connection Points option and then in the \+ Add dotted box. ![](https://developer.infor.com/wp-content/uploads/2024/09/image-24.png) From the list, select the option [API](https://docs.infor.com/ion/latest/en-us/iontechconceag_cloud_osm/default.html?helpcontent=pkn1519738008732.html) ![](https://developer.infor.com/wp-content/uploads/2024/09/image-25.png) On the left side of the page, give the Name and Description of the connection point. On the right side there are 2 tabs, Connection and Documents . In the Connection tab, click the IMPORT button and select the CSV file of the service account. Watch the video below on how to create a Service Account . ![](https://developer.infor.com/wp-content/uploads/2024/09/image-28.png) ![](https://developer.infor.com/wp-content/uploads/2024/09/image-27.png) Click Ok . Click on the Documents tab, then click the ( + ) button. ![](https://developer.infor.com/wp-content/uploads/2024/09/image-29.png) By default, the Get from API scenario is selected. ![](https://developer.infor.com/wp-content/uploads/2024/09/image-30.png) Give a name to the API Call Name and click the SELECT button to choose an endpoint from the registered API suite in the gateway. ![](https://developer.infor.com/wp-content/uploads/2024/09/image-31.png) ![](https://developer.infor.com/wp-content/uploads/2022/11/api-4.jpg) ![](https://developer.infor.com/wp-content/uploads/2022/11/api-4-1.jpg) Click Ok . Click the Output Document tab, then the GENERATE METADATA button, ![](https://developer.infor.com/wp-content/uploads/2024/09/image-34.png) Select Document Type ANY and give a Document Name to the new custom schema, click Ok . ![](https://developer.infor.com/wp-content/uploads/2024/09/image-35.png) To check that everything is OK, click the TEST button below the documents tab. ![](https://developer.infor.com/wp-content/uploads/2024/09/image-36.png) A pop-up form comes up, click the TEST button again and you receive the output of the API call. ![](https://developer.infor.com/wp-content/uploads/2022/11/api-6.jpg) ![](https://developer.infor.com/wp-content/uploads/2022/11/api-6-1.jpg) Click Close . Go to the Data Catalog to see the newly created Object Schema . ![](https://developer.infor.com/wp-content/uploads/2022/11/api-7.jpg) * * * ### 4\. Object Schema ### 4.1 From the Connection point (DB Connector) Go To the Data Catalog and click the ( + ) button and select the option Generate from Connection Point . ![](https://developer.infor.com/wp-content/uploads/2022/11/obj-1.jpg) In the Select Connection Point section, using the drop down select your Database Connector to populate the Connection Point field. Click Next . ![](https://developer.infor.com/wp-content/uploads/2022/11/obj-2.jpg) In the Select Items to Register section . From the Available Tables and Views section, you have to choose which table you want to use to create your custom schema. Move those selections to the Selected Tables and Views section. ![](https://developer.infor.com/wp-content/uploads/2022/11/obj-3.jpg) In the Define Object Details section. Rename the table name if you want to give a specific name to the custom schema, plus you can set the primary key of the table as an identifier. Keep in mind that we are generating a JSON custom schema and for this reason, during the wizard, you are asked to provide an identifier, variation, timestamp, and delete indicator. ![](https://developer.infor.com/wp-content/uploads/2022/11/obj-4.jpg) In the Review Object section you can check your choices. You are ready to generate the new custom object schema by clicking the Generate Metadata button at the bottom right. ![](https://developer.infor.com/wp-content/uploads/2022/11/obj-5.jpg) In the Summary section you can see the result of the operation. ![](https://developer.infor.com/wp-content/uploads/2022/11/obj-6.jpg) Click the Close button to go back to the Data Catalog object schema and check the newly created custom schema. ![](https://developer.infor.com/wp-content/uploads/2022/11/obj-7.jpg) * * * ### 4.2 From Sample Data Go To the Data Catalog - > Object Schemas and click the (+) button and select the option Generate from Sample Data . ![](https://developer.infor.com/wp-content/uploads/2022/11/obj-8.jpg) You have 2 options, Generate from sample data (default), or Build manually . Let's continue with the default option. You have to drag and drop or select and upload a file that contains the structure for the new schema. Based on the file extension you provide, the system understands if you want to create a custom BOD or a custom JSON schema. ![](https://developer.infor.com/wp-content/uploads/2022/11/obj-9.jpg) Let's perform a test with an XML and a JSON file and see the differences. Download and extract the Custom Object Schemas.zip file located in the Downloads section at the end of this Tutorial. the zip file contains the following files. * CUSTOM_ITEM_JSON.json * external.xml XML Schema Information : ![](https://developer.infor.com/wp-content/uploads/2024/09/image-48.png) ![](https://developer.infor.com/wp-content/uploads/2024/09/image-49.png) ![](https://developer.infor.com/wp-content/uploads/2024/09/image-50.png) ![](https://developer.infor.com/wp-content/uploads/2024/09/image-51.png) ![](https://developer.infor.com/wp-content/uploads/2024/09/image-52.png) ![](https://developer.infor.com/wp-content/uploads/2024/09/image-53.png) ![](https://developer.infor.com/wp-content/uploads/2024/09/image-54.png) ![](https://developer.infor.com/wp-content/uploads/2024/09/image-55.png) JSON Schema Information : ![](https://developer.infor.com/wp-content/uploads/2024/09/image-47.png) ![](https://developer.infor.com/wp-content/uploads/2024/09/image-46.png) ![](https://developer.infor.com/wp-content/uploads/2024/09/image-42.png) ![](https://developer.infor.com/wp-content/uploads/2024/09/image-43.png) ![](https://developer.infor.com/wp-content/uploads/2024/09/image-44.png) ![](https://developer.infor.com/wp-content/uploads/2024/09/image-45.png) ![](https://developer.infor.com/wp-content/uploads/2024/09/image-56.png) Let's now create a custom schema manually. Go to Data Catalog - > Object Schemas , click the (+) button and select Generate from Sample Data . ![](https://developer.infor.com/wp-content/uploads/2022/11/obj-8.jpg) Select Build manually and click Next . ![](https://developer.infor.com/wp-content/uploads/2022/12/obj-12.jpg) Supply a Object Name for the Custom Object, a Title and Description (optional), select the Object Type , and click Next . ![](https://developer.infor.com/wp-content/uploads/2022/12/obj-13-1.jpg) ![](https://developer.infor.com/wp-content/uploads/2022/12/obj-14.jpg) As we have selected type BOD , on the next page you have to provide the properties definition to define a BOD in XML format , so for each property, give a name and select the property type and the data type plus other configurations and click Next . ![](https://developer.infor.com/wp-content/uploads/2022/12/obj-15.jpg) From the Additional Metadata steps, select the Identifier Path and the Supported Verbs of the BOD . Click Next . ![](https://developer.infor.com/wp-content/uploads/2022/12/obj-16.jpg) Review the configuration and click Finish to generate the New Custom BOD schema . ![](https://developer.infor.com/wp-content/uploads/2022/12/obj-17.jpg) ![](https://developer.infor.com/wp-content/uploads/2022/12/obj-18.jpg) * * * ## Downloads [Custom Object Schemas](https://developer.infor.com/wp-content/uploads/2022/12/custom-object-schemas.zip) ## Resources Online help documentation: * [File Template](https://docs.infor.com/inforos/latest/en-us/useradminlib_cloud/default.html?helpcontent=iontechconceag_cloud_osm/lsm1436532314975.html) * [File Connector](https://docs.infor.com/inforos/latest/en-us/useradminlib_cloud/default.html?helpcontent=iontechconceag_cloud_osm/lsm1436532314137.html) * [DB Connector](https://docs.infor.com/inforos/latest/en-us/useradminlib_cloud/default.html?helpcontent=iontechconceag_cloud_osm/lsm1436532312637.html) * [API Gateway Connector](https://docs.infor.com/inforos/latest/en-us/useradminlib_cloud/default.html?helpcontent=iontechconceag_cloud_osm/pkn1519738008732.html) * [Data Catalog](https://docs.infor.com/inforos/latest/en-us/useradminlib_cloud/default.html?helpcontent=iondeskceug_cloud_osm/ako1452698139049.html) * [Enterprise Connector](https://docs.infor.com/inforos/latest/en-us/useradminlib_cloud/default.html?helpcontent=iondeskceug_cloud_osm/uva1549628282985.html)
Was this section helpful?

What made this section unhelpful for you?

On this page
  • Customize Object Schema (BOD, JSON, ANY)

Graphical Mapper and Scripting to Manage Data

Overview

When integrating System A with System B, managing data formats is often necessary, as they may not be the same. In ION, this can be efficiently achieved using Graphical Mapper and ION Scripting.


Components

Requirements

  • Access to a Infor Cloudsuite * User Privileges to ION Desk * Security roles: IONDeskAdmin

Tutorial

Difficulty: Medium Estimated completion time: 45 Minutes

ION, through the ION Connector, can read and write data across various systems, including databases, APIs, files, and queues—each with its own format. In this tutorial, you will explore three scenarios where Graphical Mapper and ION Scripting are used to manage data formats, ensuring compatibility for use within ION.

Download and extract the document_flow.zip file located in the Downloads section at the bottom of this tutorial. The zip file contacts the following files and can be imported as Document flows and used by the Mapper transformation (XSLT).

  • db_itm_json_2_std_itm.xm * db_itm_2_std_itm.xml * ext_itm_2_std_itm.xml

1. From JSON to BOD

In the first scenario, you have a database table containing records of items you want to create in your ERP system. By using the ION Connector of type "database," you can retrieve these records in JSON format. However, to successfully create the items in the ERP, the data must be converted into a BOD format. This requires managing the data format transformation. Below is the document flow and its description.

Use the db_itm_json_2_std_itm.xml file.

After reading the data in JSON format from the database you convert it into XML using the below ION Scripting

The script uses inheritance in the function definition to convert an incoming object to XML.

In the script, initially, a Converter class is defined which takes an object as a parameter.

The class in JsonToXML , which inherits from Converter class( parent/superclass ).

The super method takes 2 arguments ( JsonToXML, self ) where JsonToXML is a subclass and self is an instance of the object to convert and is using a method “ convert ”).

The “ convert ” method is described below:

  1. If the input to the method is a “dictionary”, then all the keys of the dictionary are read in the form of a list. 2. All the keys are read into a ‘root’ or main tag. 3. Else, if the input to the method is a “list”, then all the elements are directly read into a ‘root’. 4. From the list, the first key is assigned as a “Root tag”. 5. This “Root tag” is converted out as an XML “root” element of the tree which is the hierarchical data format for representing data.

The next method ( _convert ) method is described below:

  1. If the object passed in is of a dictionary type, then loop through all the keys and child in it. 2. The text present in each tag is assigned to the parent tag. 3. Else if the top-most element does not contain text, then the key and child are attached as the element attributes. 4. Else if the child element is of a type list, then iterate through all the elements in the list, and the tags are converted into element tree elements and then appended to the parent tag or main tag. Each element is converted in the same way. 5. If all the above conditions turn false, then the value in the dictionary is assigned as text to the parent tag. 6. This generates a “result” structure with all the root tags, children, and attributes.

Finally, a full XML is generated with all the tags, child, and text elements. Further, the script uses a library called “ Create FULL-BOD ” to create the full structure of BOD dynamically.

In the above script, the following functions are used to create a full BOD structure:

  1. “ renameTag ” is used to rename the XML generated above from ‘ root ’ to ‘ DB_ITEM_WRAPPER ’ which is the name of the custom Noun of the custom BOD. 2. Then the ‘ root ’ element is converted as an XML tree element ‘ top ’ and the result is added to it. 3. Then, the full structure of the XML is generated in the following way: * By adding a root element with the proper namespace, Application area containing logical ID, component ID. * Then, the verb, accounting entity, location ID, action criteria, and action expression are added as XML subelements. * The BOD is finally renamed from “SyncDB_ITEM” to “Sync_DB_ITEM_WRAPPER”. * Then, the final XML output is converted to a string using “toString” method with UTF-8 encoding to read any non-ASCII characters also and the final output is obtained as “xml_output.

The Output from the ION Scripting component is in the form of Single-line XML.

Here, a splitter is used to split the single-line XML into a multi-line XML format.

Splitter formats each tag into a separate line to generate a multi-line XML.

This multi-line XML is further converted into a standard BOD format by using the Mapper transformation (XSLT) as shown below

The XSLT converts the custom fields of the document into standard fields by using mapper transformations.

Here, a “Sync DB Item Wrapper” is converted to a “Process Item Master” following XSL Transformations.

Three main XSLT rules used in this transformation are:

  1. XSL template match : “XSL template match” contains rules to apply when a specific node is matched. The “match” attribute is used to associate a template with an XML element and add it to the output stream of transformation. 2. XSL Value Of : “XSL Value Of” is used to extract the value of XML element and add it to the output stream of transformation. 3. XSL- Copy Of : Creates a copy of the current node.

Steps:

  1. First, the source BOD name is identified and mapped to a target BOD name using template match() 2. The “Application area” of the Target BOD is mapped as the same / copy as that of the Source BOD. Hence the fields, Logical ID, Component ID, Confirmation Code, Creation Data time and BODID values are copied from Source to Target BOD. 3. In the “Data Area”, the verb “Sync” is converted to “Process” and the values of Accounting EntityID and Location ID elements within it are copied the same. 4. The ActionCriteria tag with the actionCode is copied as it is. 5. Then next noun “DB_ITEM_WRAPPER” is selected in the Source BOD and converted to “ITEM MASTER” in the Target BOD. 6. The value of the ID inside the Item tag is converted into ItemID tag 7. The value of the description is selected in the Description tag. 8. The “Classification” tag is mapped for Groups and types of 2 elements inside the DB Item master tag and both the element types and groups are copied using a “value-of” rule. 9. The “BaseUOMCode” tag is mapped for the UOMA Code of both items. 10. The remaining items inside the Source BOD are mapped inside the “User Area” of the Target BOD. 11. In the User Area, the “Item_EXT” tag is defined with the values of Colour, Height, Width, Depth, UOMB same as the SourceBOD values. 12. This completes the XML BOD mapping from SourceBOD to a standard Infor OAGIS BOD using XSLT rules. The final output of XSLT is shown below.

The final output as shown above is integrated into LN.


2. From custom BOD to standard BOD

The second scenario describes the sequence of steps to read an item table with a stored procedure to generate a custom BOD , then with a mapping to convert to Process.ItemMaster BOD and then send to LN for creating an item in LN.

The custom message is generated from the Database Connection point (through an Enterprise Connector) which was explained in part 1 of the tutorial (Customize Object Schema) using a Stored Procedure. The generated message is in XML format.

The XML is further converted into a standard Infor BOD format by using a Mapper transformation (XSLT) as shown below.

The XSLT converts the custom fields of the document into standard fields by using mapper transformations. Here, a “Sync DB Item” is converted to a “Process Item Master” following XSL Transformations.

Three main XSLT rules used in this transformation are:

  1. XSL template match : “XSL template match” contains rules to apply when a specific node is matched. The “match” attribute is used to associate a template with an XML element and add it to the output stream of transformation. 2. XSL Value Of : “XSL Value Of” is used to extract the value of XML element and add it to the output stream of transformation. 3. XSL Copy Of : Creates a copy of the current node.

Steps:

  1. First, the source BOD name is identified and mapped to a target BOD name using template match(). 2. All the “Sync” verbs are converted to “Process” verbs. 3. The “Application area” of the Target BOD is mapped as the same / copy as that of the Source BOD Thus the fields, Logical ID, Component ID, Confirmation Code, Creation Data time, and BODID values are created as a copy from Source to Target BOD. 4. In the “Data Area”, the verb “Sync” is converted to “Process” and the values of Accounting EntityID, Location ID, and Action Criteria elements within it are copied. 5. The ActionCriteria tag with the actionCode is copied. 6. Then next noun “DB_ITEM” is selected in the Source BOD and converted to “ITEM MASTER” in the Target BOD. 7. The value of ITEM is copied as ITEM ID in the target BOD. 8. The value of the Description is selected into the Description tag. 9. The “Classification” tag is mapped for Item Groups and Item types of 2 elements inside the DB Item master tag and both the element types and groups are copied using a “value-of” rule. 10. The “BaseUOMCode” tag is mapped for the UOMA Code of both items. 11. The remaining items inside the Source BOD are mapped inside the “User Area” of the Target BOD. 12. In the User Area, “Item_EXT” tag is defined with the values of Color, Height, Width, Depth, UOMB copied from SourceBOD values. 13. This completes the XML BOD mapping from SourceBOD to a standard Infor OAGIS BOD using XSLT rules as shown below. 14. The final output BOD is shown below.

In the final step, the above-generated Process.ItemMaster is sent to an application(LN) for creating an item in LN.


3. From CSV file to standard BOD

The third scenario describes the process to read a CSV file as an item from a 3rd party and convert the custom BOD to Process.ItemMaster and create an item in LN .

The CSV file is read from a Shared Folder which was explained in part 1 of the tutorial (Customize Object Schema) and generates a custom BOD. This BOD (Sync.External_Item) is converted to an Infor standard BOD (Process. ItemMaster) to create an item in LN.

This custom BOD is further converted into a standard BOD format by using a Mapper transformation (XSLT) as shown below

The XSLT converts the custom fields of the document into standard fields by using mapper transformations. Here, a “Sync External_Item” is converted to a “Process Item Master” following XSL Transformations.

Three main XSLT rules used in this transformation are:

  1. XSL template match: “XSL template match” contains rules to apply when a specific node is matched. The “match” attribute is used to associate a template with an XML element and add it to the output stream of transformation. 2. XSL Value Of: “XSL Value Of” is used to extract the value of XML element and add it to the output stream of transformation. 3. XSL- Copy Of: Creates a copy of the current node.

Steps:

  1. First, the source BOD name is identified and mapped to a target BOD name using template match(). 2. All the “Sync” verbs are converted to “Process” verbs. 3. The “Application area” of the Target BOD is mapped as the same / copy as that of the Source BOD Thus the fields, Logical ID, Component ID, Confirmation Code, Creation Data time, and BODID values are created as a copy from Source to Target BOD. 4. In the “Data Area”, the verb “Sync” is converted to “Process” and the values of Accounting EntityID, Location ID, and Action Criteria elements within it are copied. 5. The ActionCriteria tag with the actionCode is copied. 6. Then next noun “DB_ITEM” is selected in the Source BOD and converted to “ITEM MASTER” in the Target BOD. 7. The value of ITEM is copied as ITEM ID in the target BOD. 8. The value of the Description is selected in the Description tag. 9. The “Classification” tag is mapped for Item Groups and Item types of 2 elements inside the DB Item master tag and both the element types and groups are copied using a “value-of” rule. 10. The “BaseUOMCode” tag is mapped for the UOMA Code of both items. 11. The remaining items inside the Source BOD are mapped inside the “User Area” of the Target BOD. 12. In the User Area, the “Item_EXT” tag is defined with the values of Colour, Height, Width, Depth, UOMB same as the SourceBOD values. 13. This completes the XML BOD mapping from SourceBOD to a standard Infor OAGIS BOD using XSLT rules as shown below.

In this final step, the Process. ItemMaster generated in the previous step is further sent to a file and application using a Parallel flow.

Using a Shared Folder transfer protocol, the Process.Itemmaster is sent to a Target File(file2) for storage.

Further, the Process.ItemMaster is sent to an application (LN) to create an item in LN.


Downloads

Document Flows

Resources

Online help documentation:

Was this section helpful?

What made this section unhelpful for you?

On this page
  • Graphical Mapper and Scripting to Manage Data

Send CSV File to Infor & Convert to BOD

Was this section helpful?

What made this section unhelpful for you?

On this page
  • Send CSV File to Infor & Convert to BOD

Setting up FTP integration with Infor ION

Overview

Infor ION (Intelligent Open Network) is a powerful middleware solution that facilitates seamless data integration across diverse systems. In this session, you'll learn how to leverage Infor ION to integrate systems using the File Transfer Protocol (FTP).


Components

Requirements

  • Access to ION * Security role: IONDeskAdmin * Infor U courses.

Tutorial

Difficulty: Medium Estimated completion time: 45 Minutes

In this comprehensive tutorial, we will explore how Infor ION, an iPaaS component within Infor OS Platform, serves as a robust system integration platform that facilitates seamless integration of systems via FTP, providing organizations with a straightforward and effective method to automate and streamline data exchanges across different applications by supporting a variety of connection types and file formats, with particular emphasis on the simplicity and commonality of FTP-to-FTP integration.

Uploading Schema

Log into the OS portal and click on the ION tab or security card.

On the navigation menu in the upper left corner, expand Data Catalog and select Object Schemas .

We'll be transferring two different types of documents via FTP: an OS business object document (BOD) and a CSV file for OS BODs. Since we're using a custom CSV file and a BOD, we'll need to create and upload a schema for the CSV file to use in the object schemas page. We made a DSV.zip file for this tutorial to use.

Download the DSV.zip file from the Resource section at the bottom of the tutorial.

Within the DSV.zip file, we have a CSVdemo.schema.json file sharing the object's name ( CSVdemo ), the separator it uses, commas in this case, and a description of the three different fields ( Company, Location, and Item ).

Here is an example of the zip file folder layout.

We also created a MyCSV.csv file, which will be used for the FTP transfer. It is also located in the Download section at the bottom of the tutorial. This example is very simple. It only has three fields: the company number, inventory location, and inventory item .

Here is an example of a CSV file with two records.

On the Object Schema page, click the Import button.

It will ask for a local file to upload. Select the DSV.zip file that contains the JSON schema layout for the CSV file. Click OK .

You will see that it was uploaded successfully. Click OK .

Click the CSVdemo schema that was just uploaded.

You can see that it imported successfully with three different fields in it.

Connecting to FTP

On the navigation menu in the upper left corner, expand Connect and select Connection Points . Click the +Add button.

In this tutorial, we will use the File (SFTP from Cloud) connection point, but if you need to communicate with a local FTP server, you can use a File connection point and an Enterprise connector.

Provide the connection point Name of DemoFTP1 and under the Connection tab enter the Host Name , Port Number , User Name and Password of your FTP server.

If we were using secure FTP over the internet, we would probably use encryption. In that case, you would check the Authentication Method box and enter your private and public key information, but for the simple demo, we'll test without it.

Click the TEST button.

We can see that the connection is successful.

Click on the Documents tab, we'll tell it what kind of documents we'll send through this connection. Click the + button.

This is the outbound point. We'll be picking files from a folder in this FTP site. In the Scenario section, select the outbound radio button. Then select the Document radio button and Filter for the defined CSVdemo schema. Select it and click OK .

Scroll down to the Read File Settings section. In the Read Location field, provide the folder you want to read from, we will name it out . For any errors in processing that file, in the Error Location field, fill in the folder name of error . Put * .csv in the File Name Pattern field to pick up any CSV files in the out folder and after it's read the file. In the After Read field, you can Move the file, Rename it, or Delete it; in this case, we'll Move it to a folder called archive .

There are also options on how often to pull this FTP location, the default being 5 seconds. We'll leave the default, but you could define more complex Chron expressions. There are also Polling options to decide what to do for errors between retries, but we'll keep the default.

We'll set a second type of BOD file and XML BOD files. Click the + button again. In the Scenario section, select the outbound radio button and choose the Document radio button. Select the Search button and Filter for the type of BOD file we want to pick up, which is the Process.ItemMaster BOD for this tutorial. Click OK .

We'll Define the same options for this document as it might be in a separate folder on this FTP site. In this case, we'll just put in the same Read Location , Error Location , and Archive Location folder information, setting the File Name Pattern field to * .xml , since this will be an XML file instead of a CSV file. Click Save . This connection point is now ready to use.

Since we will send these documents from the DemoFTP1 location to another FTP location, we can duplicate the connection point to save some setup time. On the DemoFTP1 Connection Point , click on the Duplicate button.

Rename it to DemoFTP2 .

This connection point will support both CSV and XML file documents. But instead of reading out or reading a file from this location, we'll write to or write a file to this location. Under the Documents tab, select the CSVdemo document and change the radio button Scenario to the Write a File to a folder option.

In the Write File Settings section. In the Write Location field, type in and for File Name Pattern to avoid overwrites, press the Ctrl -> spacebar keys and select the document_name listing, type underscore , then press the Ctrl -> spacebar keys again and select the current_datetime listing and add .csv at the end. It should look like this [document_name]_[current_datetime].csv

Select the BOD XML file or Process.ItemMaster document and change the radio button Scenario to the Write a File to a folder option.

In the Write File Settings section. In the Write Location field, type in and for File Name Pattern to avoid overwrites, press the Ctrl -> spacebar keys and select the document_name listing, type underscore , then press the Ctrl -> spacebar keys again and select the current_datetime listing and add .xml at the end. It should look like this [document_name]_[current_datetime].xml . Click Save .

Building a Document Flow

Now we can see that the two Connection Points are defined but Inactive , because we haven't used them in a document flow yet.

To create a Document Flow, click on Data Flows in the navigation menu, click the + Add button, and select the Add Document Flow option.

The Document Flow will Define how data moves from system to system. Provide a Name of FTPdemo , and from the top icons, drag the File connector onto the model.

Click on File1 and in the File Connector field, select DemoFTP1 .

From the top icons, drag a second File connector onto the model. Click on File2 and in the File Connector field, specify DemoFTP2 .

In between these two connection sites we need to tell the model what documents this model will support. Click in between the two file connectors, on the document icon. In the Documents section, click the + sign.

We can choose either of the listed documents, but we will choose both now. We've defined a model that says we want to read files from File1 using the connection point DemoFTP1 we defined and transfer both types of files over to DemoFTP2 . Click OK .

Save and Activate the model.

Once activated, this ION system will start pulling the DemoFTP1 site to look for files. The benefit of building this model is as your business processes and system integration grows you can always deactivate the model and quickly add in more options and processes to fulfill that complexity. From there you'd save and reactivate your model.

Viewing Active Data Flows

To review your Active Data Flows, go to the navigation menu and click the Active Data Flows tab. You can scroll through and view all active flows within this instance. We can view the FTPdemo flow, its Type , which is indicated as a document flow, the provided Description , and the most recent activation time . You can choose to click on the flow and pull further details from the top right corner, which we'll see exemplified later.

We can also view Active Connection Points. On the navigation menu click the Active Connection Points tab. Here, you can see the two connection points, DemoFTP1 and DemoFTP2 , their Type being FTP over Cloud, Logical ID , Status , as well as other details such as the number of pending incoming messages or files.

To view the details of a connection point, we can select one of our connections; we will select DemoFTP2 . To do so, click the Details button at the top right.

View inbound and outbound traffic and additional properties.

Test the FTP integration

Let's test the FTP integration with ION. Go to the FTP site, we will use FileZilla .

You can manually create the out , in , error , and archive folders mentioned above on your remote FTP site or use the Create non- existing folder(s) option in the DemoFTP1 and DemoFTP2 connection points located in the Read and Write File Settings section.

Also have the MyCSV.csv and Process_Item_Master.xml files on our local drive.

Start by dragging and dropping the MyCSV.csv file into the FTP out folder. After the FTP site processes the transfer we can see that it was successful.

After refreshing the site, we can see that ION picked up the CSV file. If we go to the Archive folder on the FTP site, we can see that ION moved a copy of the CSV file to the archive folder as specified earlier. This can be used for internal auditing purposes, for example.

Now, if we go to the second FTP site or the in folder for this example and look at the inbound folder, we can see that the CSV file was transferred here successfully but was renamed accordingly to the name and Convention we set up earlier, which was CSVdemo_datetime stamp.csv .

Let's do this again, with the Process_Item_Master BOD file. We can upload it to the out folder on the first FTP site.

Click the refresh button and notice it has been removed from the out folder. The CSV file would have behaved the same way.

Click the archive folder to view the XML file moved as the CSV file did before.

On the second FTP site or the in folder for this example, we can see both the CSV and XML files have been renamed and stored here.

Viewing the Flow Process

For an additional look into the overall flow process, we can quickly go to OneView in ION.

In the navigation menu, select the OneView tab. Next to Filters section, click on the + button and select the Sender Logical ID option. Click OK .

Here we can view the successful document transfers by filtering for the Sender Logical ID . Search on demo and select infor.file.demoftp1 . Click Search .

Drill down into each document ( CSVdemo and Process.ItemMaster ) to view timestamps and additional details regarding each FTP site, such as the underlying tenant instance.

This concludes this tutorial on how to set up a FTP integration with Infor ION.

Watch the following video to view all the steps that were covered.

https://www.youtube.com/watch?v=Dl-8_wu9oMI&list=PLbzqMzjlWI2ai0KXdFI187v2FMoASVWEi&index=1

Downloads

MyCSV.csv

DSV.zip

Resources

Help Documents and User Guides

Was this section helpful?

What made this section unhelpful for you?

On this page
  • Setting up FTP integration with Infor ION

XSD Extension for UserArea

## Overview The UserArea TAG is a standard TAG in any standard BOD (Business Object Document). It is used by the application when you have to add extra info that is not included in the standard BOD. You can use a pair of Property TAGs with NameValue. ``` true ``` Sometimes you have to add a well-defined structure as extra information and this is where you can use an XSD Extension. * * * ### Components * [Enterprise Integration](https://developer.infor.com/components/enterprise-integration/) * [Enterprise Integration Best Practices](https://developer.infor.com/best-practices/enterprise-integration/) ### Requirements * Access to a CloudSuite. * User privileges to ION Desk. * Security roles: IONDeskAdmin * * * ## Tutorial Difficulty: Medium Estimated completion time: 30 Minutes In this section, you will see how to extend a standard UserArea TAG, define an XSD schema, and link it to the UserArea TAG for a specific BOD into the Data Catalog. * * * ### 1\. Check the standard BOD For this example you will use the ItemMaster standard BOD. Expand the Data Catalog menu and select Object Schema , filter on ItemMaster and click Search . Select the ItemMaster BOD and open it. ![](https://developer.infor.com/wp-content/uploads/2024/09/image-180.png) On the Formatted View tab, expand the original schema definition. You can see there is the standard pair of TAGs ( Property, NameValue ) related to the " ItemMaster/ItemMasterHeader/UserArea " TAG. The goal is to add an extra TAG pointing to your custom XSD schema definition. ![](https://developer.infor.com/wp-content/uploads/2024/09/image-181.png) * * * #### 2\. Create the XSD schema definition file Download and extract the item_ext.zip file located in the Downloads section (button labeled XSD_Schema ) at the bottom of this tutorial. The zip file contacts this item_ext.xsd file. First, you need to create the extension with the required tags. Below you can see the definition, save the file with the .xsd extension. ![](https://developer.infor.com/wp-content/uploads/2023/02/us2_11zon.jpeg) * * * ### 3\. Add the XSD extension Log into Infor OS Portal and select the ION tab. On the left side, expand the Data Catalog menu and select Schema Extensions . Select the Schema Files tab and click on Import button to import the schema file item_ext.xsd . ![](https://developer.infor.com/wp-content/uploads/2024/09/image-178.png) * * * ### 4\. Link the XSD extension to the UserArea tag of standard BOD. Now select the Extensions tab and click the ( + ) icon and fill the details as shown below. * Noun: ItemMaster * XML Path: ItemMaster/ItemMasterHeader/UserArea * Schema: Select the uploaded xsd file. item_ext.xsd ![](https://developer.infor.com/wp-content/uploads/2024/09/image-179.png) Click Ok . ![](https://developer.infor.com/wp-content/uploads/2023/02/us5_11zon.jpeg) * * * #### 5\. Verify the BOD structure. Go back into the ItemMaster standard BOD. Expand the Data Catalog menu and select Object Schema , filter on ItemMaster and click Search . Select the ItemMaster BOD and open it. ![](https://developer.infor.com/wp-content/uploads/2024/09/image-180.png) On the Formatted View tab, expand the schema definition " ItemMaster/ItemMasterHeader/UserArea " TAG. You will now see below the UserArea TAG of the XPath defined you can find the new XML structure ITEM_EXT . ![](https://developer.infor.com/wp-content/uploads/2024/09/image-182.png) * * * ### 6\. How to use the XSD extension in the graphical mapper. From the ION Connect menu, select Mappings and then click the (+) Add new Graphical Mapping option. ![](https://developer.infor.com/wp-content/uploads/2024/09/image-183.png) Supply a Name and Description and for the Source option select the Sync.ItemMaster BOD, you can choose any Verb as the UserArea extension is related to the Noun of the BOD. In the Target option select any other BOD that you like. Expand the definition of the UserArea Tag of the ItemMaster BOD and you can find the New XSD structure that you can map to the Target BOD. ![](https://developer.infor.com/wp-content/uploads/2024/09/image-187.png) * * * ## Downloads [XSD_Schema](https://developer.infor.com/wp-content/uploads/2023/02/item_ext.zip) ## Resources * [Data Catalog](https://docs.infor.com/ion/latest/en-us/iondeskceug_cloud_osm/default.html?helpcontent=ako1452698139049.html)
Was this section helpful?

What made this section unhelpful for you?

On this page
  • XSD Extension for UserArea

Best practices

Was this section helpful?

What made this section unhelpful for you?

On this page
  • Best practices

Portal and Workspaces

On this page
  • Portal and Workspaces

Robotic Process Automation

RPA automates repetitive tasks and empowers your team to focus on what they do best.

On this page
  • Robotic Process Automation

Security & User Management

Tutorials that help you leverage Infor's cloud security and user management capabilities.

On this page
  • Security & User Management
View as Markdown

Ask an AI

Open in ChatGPTOpen in Claude