Epicor Kinetic UD Tables and UD Fields: Setup, Studio Binding, BAQ and Security
epicor kinetic ud table
Also searched as
- epicor ud table setup
- epicor ud fields application studio
- epicor create ud table
- epicor ud01 table baq
Short answer
UD tables (UD01, UD02 and so on) are Epicor's pre-built user-defined tables with a fixed set of key and data columns that you label and expose through a menu program. UD fields are extra columns on standard tables like OrderHed. Both are set up in system maintenance, shown in screens with Application Studio, and readable in BAQs.
Applies to: Epicor Kinetic and 10.x. Menu names differ slightly between releases; use the menu search.
How to create and use a UD table
- 1Pick an unused UD table (for example UD05) and confirm nobody else uses it, because UD tables are shared per company and reused by customizations.
- 2Open the UD table maintenance programs from the System Setup/Management menus (search for UD Column Maintenance and UD Table) and give the table and columns your own labels.
- 3Set the key fields (Key1 to Key5) and mark which data columns you use, such as Character01, Number01, Date01, CheckBox01.
- 4Add a menu item for the UD table's maintenance program in Menu Maintenance, then give the right security group access.
- 5Open the screen in Application Studio, create a layer, and arrange the columns on a new grid or form.
- 6Create a BAQ on the UD table to report on the data.
- 7Test in a pilot company, then deploy the layer.
UD tables versus UD fields
A UD table is a whole table shipped empty: UD01 to UD05 and more, each with five key columns and a standard pool of character, number, date and checkbox columns. You decide what each means. A UD field is the same idea attached to a standard table, so OrderHed has Character01, Number01 and so on, where you store an extra item of data about the order.
Choose a UD table when the data is its own list with its own key, such as a customer approval log or a tooling register. Choose a UD field when the data belongs to an existing record, such as an extra flag on a part. Newer releases also offer extended user-defined options through Application Studio, so check what your release provides before building around the older UD pattern.
Showing it on a screen with Application Studio
Application Studio lets you add UD fields to a standard screen: open the screen, enter edit mode, pick the UD field from the data view, and drop it on the form. Set the label and the control type, such as a combo bound to a UD code list. Save the change in a customization layer, not in the base layer, so upgrades keep it.
For a UD table, you can add a related grid on a standard screen by binding a data view to a BAQ or a service. The pattern varies by release, so build one small working example first.
BAQ access and security
A UD table is available as a table in Query Builder like any other, with its columns under their original names such as Character01. Rename the display label in the BAQ so the report reads clearly. Join on the key fields and always include Company.
Security has two layers: who can open the menu item, and what the Security Maintenance setting allows on the business object. Grant the least needed. If a UD table holds sensitive data, restrict both the program and any BAQ over it.
-- Equivalent SQL for a BAQ on UD05 SELECT u.Key1, u.Character01, u.Number01 FROM Ice.UD05 u WHERE u.Company = 'EPIC06'
Try it here, free
Epicor UD Table Design Worksheet
An editable worksheet for planning user defined tables and fields before you build them in Epicor, with a column count and key check.
Common pitfalls
- !Two projects using the same UD table for different purposes, which corrupts data.
- !Changing the base layer in Application Studio instead of a custom layer.
- !Giving menu access without also checking the security on the business object.
- !Using a UD field when you need many rows per record. That needs a UD table.
- !Forgetting that UD column labels do not rename the database column in a BAQ.
How an ERP-grounded AI assistant handles this
An assistant that can read the schema can show which UD tables and fields are already in use and what they hold, which is the question you need answered before reusing one. It can propose a layout for the new screen for a developer to review. With a private model, the schema stays inside your network.
Frequently asked questions
How many UD tables does Epicor have?
Epicor ships a numbered set of UD tables, UD01 and up. The exact set depends on the release. Check the table list in the maintenance program for your system.
Can I rename a UD column?
You can change the label shown on screens and in the maintenance program. The database column name stays as Character01 or Number01, so BAQs use that name with a friendly display label.
Where do I put the UD field on a screen?
In Application Studio, open the screen, enter edit mode, and add the field from the data view. Save it in your own layer so an upgrade does not remove it.
Can I report on a UD table?
Yes. Build a BAQ in Query Builder using the UD table, add Company and the key fields to the criteria, and publish it to a dashboard or report.
Related
Epicor Application Studio: understanding customization layers
Kinetic UI is built in layers loaded in order - Base (Epicor-delivered), Customization (Application Studio, company/layer-wide), Personalization (user- or role-specific, applied on top), and optionally Extended (packaged add-on layers) - and a change you make will not appear if a higher layer overrides the same control or if you are testing in the wrong layer context.
How-toHow to Create a BAQ in Epicor: Build, Run, Search, Export to Excel and Publish
A BAQ (Business Activity Query) is a saved SQL-style query built in Epicor's Query Builder. Open Query Builder, name the query, add tables and join them, choose display fields, add criteria, test it, then run it from the Execute or Analysis tabs, export to Excel, and publish it for use in a dashboard or report.
How-toEpicor BPM: Update a UD Field, a PO Cost or a Table, and Update vs UpdateExt
From a BPM you can update data three ways: change the incoming temp table row (best for the record being saved), call a business object Update or UpdateExt on another record, or write through Db and call Validate. UpdateExt returns errors in the dataset instead of throwing. A record in process error means the record is already being saved in the same call chain.
Error fixEpicor Kinetic: Menu Item Missing or Access Denied for a User
When an Epicor Kinetic user cannot see a menu item or gets an access denied message, the cause is nearly always security: the user's security group lacks access to that menu or program, the user is not linked to the company, the license or module is not available, or a menu customization hides the item. Check each in that order.
Error fixFixing Epicor BusinessObjectException: BPM Directive Errors
A BusinessObjectException that says "A Business Process Management (BPM) directive has raised the following error" means a directive on that business object stopped the transaction, either deliberately via a Raise Exception widget or accidentally via an unhandled .NET error in Custom Code. Expand the InnerException on the error dialog to see the real message and the directive name, then open BPM Designer for that object and method to find the widget that fired.
How-toFixing a Slow Epicor BAQ (Business Activity Query)
A slow BAQ in Epicor is usually caused by unindexed join columns, a subquery or calculated field forcing a table scan, or the BAQ pulling far more rows than the dashboard actually displays before filtering client-side. Fix it by reading the SQL Server execution plan Epicor generates, moving filters into the BAQ criteria instead of the dashboard filter panel, and replacing subqueries with joins where possible.
AI for ERPAI for Epicor Kinetic, Beyond What Prism Covers
Add AI to Epicor Kinetic beyond Prism: private LLM over BAQs, BPM data, and REST v2, on-prem or private cloud, with honest guidance on when Prism already covers you.
Stuck on Epicor Kinetic?
Talk to engineers who work inside Epicor Kinetic every week, and who build private AI that answers these questions from your own ERP data.
Keep exploring
Free tools
- Epicor UD Table Design WorksheetAn editable worksheet for planning user defined tables and fields before you build them in Epicor, with a column count and key check.
- Epicor User Defined Field Register WorksheetA register of UD fields with table, column, label, owner and populated row counts. Spot unused fields and export to Excel.
- Epicor Application Studio Layer ChecklistA checklist for Kinetic Application Studio layers covering naming, scope, events, rules, security, testing and upgrade impact.
ERP fixes and how-tos
- How to Create a BAQ in Epicor KineticCreate a BAQ in Epicor Kinetic Query Builder: pick tables, set joins, display fields, criteria, calculated fields, test, and use it in dashboards and reports.
- Epicor BPM: Update a UD Field, a PO Cost or a Table, and Update vs UpdateExtUpdate a UD field, a PO cost or any table from an Epicor BPM: Update vs UpdateExt, updating by query, and fixing the record in process error.
- Epicor BAQ: Add a Percentage Column and Change the Date Format in KineticAdd a percentage column to an Epicor BAQ with a safe calculated field, and control date format in BAQs and Kinetic through formats and user culture.
Integrations
- How to use ChatGPT with Epicor KineticConnect ChatGPT to Epicor Kinetic through a custom GPT with Actions, an exported dataset, or a private gateway. Covers BAQs, auth, data controls and when to go private.
- How to use Claude with Epicor KineticUse Claude with Epicor Kinetic through an MCP connector, the Anthropic API, AWS Bedrock or Google Vertex, plus the private on-prem alternative for sensitive data.