Infor SyteLine4 min readNetray Engineering Team

How to Add User Defined Fields in SyteLine

User-defined fields (UDFs) in SyteLine provide a supported, upgrade-safe method for extending the standard data model without modifying core database tables. SyteLine reserves dedicated UDF columns on most major tables, allowing organizations to capture custom data points for items, customers, orders, and other business entities. This guide explains how to activate UDFs, configure their properties, and integrate them into forms and reports.

Activating User Defined Fields in the Database

SyteLine pre-provisions user-defined field columns on major tables such as item, co, coitem, customer, and vendor. These columns follow the naming convention Uf_FieldName and are typically VARCHAR, DECIMAL, or DATETIME types. To activate a UDF, navigate to Application Development > User Defined Fields and select the target table. Define the field name, data type, and default value. SyteLine supports up to 50 UDF columns per table, with data types including String (up to 255 characters), Decimal (18,8 precision), Integer, DateTime, and Checkbox. Once activated, the UDF column is immediately available in the database and can be populated via forms or data import.

  • Navigate to Application Development > User Defined Fields and select the target table such as item, co, coitem, or customer from the dropdown list
  • Define the UDF name using alphanumeric characters with a maximum length of 30 characters, following the Uf_ prefix naming convention
  • Select the appropriate data type: String (VARCHAR 255), Decimal (18,8), Integer, DateTime, or Checkbox (BIT) based on your data requirements
  • Set optional properties including DefaultValue, IsRequired, and ValidationExpression to enforce data quality rules at the database level

Mapping UDFs to IDO Properties and Forms

After creating a UDF in the database, you must map it to an IDO property to make it accessible through the SyteLine client. Open Application Development > IDO Maintenance and locate the IDO corresponding to your target table, such as SLItems for the item table. Add a new property with the same name as the database column and set the PropertyType to match the column data type. Then open the target form in the Form Designer and add a new EditField or ComboBox control bound to the UDF property. Position the control within the form layout and set its label, tooltip, and visibility properties to provide a clean user experience.

  • Open IDO Maintenance and locate the target IDO such as SLItems, SLCustomerOrders, or SLVendors to add the UDF property mapping
  • Create a new IDO property with PropertyName matching the database column name and set PropertyDataType to String, Decimal, Int, or DateTime
  • Open the form in Form Designer and drag an EditField control from the Toolbox, setting its PropertyName to the newly created IDO property
  • Configure the control's Label, Tooltip, IsReadOnly, and TabOrder properties to integrate seamlessly with the existing form layout

Using UDFs in Reports and Data Exports

User-defined fields are fully accessible in SyteLine's reporting and data export tools once properly configured. In Crystal Reports or Mongoose Report Designer, add the UDF column to your report query by referencing the table.Uf_FieldName column directly. For data exports using the SyteLine Data Export utility, include UDF properties in your export definition alongside standard fields. UDFs also participate in SyteLine's search and filter functionality, allowing users to query records based on custom field values. Configure the UDF's IsSearchable property in IDO Maintenance to include it in the form's filter-in-place capability.

  • Add UDF columns to Crystal Reports by including the Uf_FieldName column in the report's SQL query or stored procedure definition
  • Include UDF properties in Data Export definitions by selecting them from the available IDO properties list during export template creation
  • Enable filter-in-place for UDFs by setting the IsSearchable property to True in IDO Maintenance, allowing grid-based filtering on custom fields
  • Create custom views combining standard and UDF fields using SyteLine's Query Builder for ad-hoc reporting and data analysis

Frequently Asked Questions

How many user-defined fields can I add per table in SyteLine?

SyteLine supports up to 50 user-defined field columns per table, though the exact number varies by table and SyteLine version. Major tables like item, co, coitem, customer, and vendor typically support 20-50 UDFs each. Each UDF consumes database storage proportional to its data type, with VARCHAR fields using up to 255 bytes per record. Plan your UDF usage strategically to avoid hitting table limits on critical entities.

Are user-defined fields preserved during SyteLine upgrades?

Yes, user-defined fields are designed to survive SyteLine upgrades since they use pre-provisioned columns in the database schema. The UDF data, IDO property mappings, and form placements are all maintained during standard upgrade procedures. However, form customizations that include UDFs should be reviewed after upgrades to ensure layout compatibility. Approximately 5-10% of UDF form placements require repositioning after major version upgrades due to form redesigns.

Can user-defined fields have dropdown lists or validation rules?

Yes, SyteLine UDFs support dropdown lists through combo box controls bound to either static value lists or dynamic IDO queries. In the Form Designer, use a ComboBox control instead of an EditField and configure the ListSource property with predefined values or an IDO-based lookup. Validation rules can be implemented through the PropertyRequired attribute, regular expression patterns, and IDO extension class validation logic that fires on SetPropertyValue events.

Key Takeaways

  • 1Activating User Defined Fields in the Database: SyteLine pre-provisions user-defined field columns on major tables such as item, co, coitem, customer, and vendor. These columns follow the naming convention Uf_FieldName and are typically VARCHAR, DECIMAL, or DATETIME types.
  • 2Mapping UDFs to IDO Properties and Forms: After creating a UDF in the database, you must map it to an IDO property to make it accessible through the SyteLine client. Open Application Development > IDO Maintenance and locate the IDO corresponding to your target table, such as SLItems for the item table.
  • 3Using UDFs in Reports and Data Exports: User-defined fields are fully accessible in SyteLine's reporting and data export tools once properly configured. In Crystal Reports or Mongoose Report Designer, add the UDF column to your report query by referencing the table.Uf_FieldName column directly.

Need help planning and implementing user-defined fields across your SyteLine environment? Netray offers SyteLine data model consulting to maximize your ERP's flexibility.