How to Add a Private AI Layer to JD Edwards EnterpriseOne On-Prem
how to add AI to JD Edwards EnterpriseOne on-prem
Also searched as
- JD Edwards AIS REST API AI integration
- JDE EnterpriseOne LLM without cloud
- JD Edwards Orchestrator chatbot on-premises
Short answer
Use the AIS Server as the front door: its data service reads tables under the calling user's JDE security, and Orchestrator wraps approved write actions. Add a read replica for heavy analytical questions, a local retrieval index over media objects, and an open-weight model on your own GPUs. Keep Security Workbench as the single source of truth for who can see what.
Applies to: JD Edwards EnterpriseOne 9.2 with a current Tools Release (AIS Server and Orchestrator Studio); database on Oracle, SQL Server or DB2 for i. Older 9.1 estates can use direct database reads only
Build order for a JDE private AI layer
- 1Deploy or reuse an AIS Server and confirm the Tools Release supports the Orchestrator and data service features you need. Place it on the internal network only.
- 2Create a service JDE user and role pair for the tool server with minimal Application Security, and decide whether end-user calls use the user's own AIS token (preferred) or a proxy identity with a mapped role.
- 3Build the tool server (MCP or REST) with parameterised read tools. Implement them against the AIS data service for small lookups and against a read-only replica for large analytical queries.
- 4Define write actions as Orchestrator orchestrations with explicit inputs, called only after a human approves a drafted payload.
- 5Index media object attachments and linked documents in a local vector store, carrying business unit and document type as the access label.
- 6Serve the model with vLLM or Ollama on local GPUs; keep the model host off the internet for the air-gapped option.
- 7Log every question and tool call with the JDE user ID, and review the log with the JDE security administrator monthly.
Data access paths in EnterpriseOne
EnterpriseOne keeps business data in tables such as F0101 (Address Book), F4101 and F4102 (Item Master and Branch), F4211 (Sales Order Detail), F4311 (Purchase Order Detail), F4111 (Item Ledger), F3111 and F3411 (Work Order and Parts List/MRP), and F0911 (Account Ledger). Column names carry a table prefix, for example SDDOCO in F4211, while the Data Dictionary alias is DOCO. Dates are stored in a century-year-day Julian format, and quantities and amounts are often integers with implied decimals, which a naive SQL tool will misread. The tool server needs a thin translation layer for both.
The official integration layer is the AIS Server, which exposes REST services under paths such as /jderest/v2/tokenrequest, /jderest/v2/dataservice, /jderest/v2/formservice and the Orchestrator endpoints. The data service can browse a table or business view and returns JSON; the form service drives real applications and therefore honours the same application and row security as a user at the keyboard. Orchestrator Studio lets a JDE developer publish a controlled orchestration that can call forms, business functions and messages as a REST service.
POST https://ais.example.local/jderest/v2/dataservice
Content-Type: application/json
{
"token": "<AIS token for the end user>",
"targetName": "F4211",
"targetType": "table",
"dataServiceType": "BROWSE",
"maxPageSize": "50",
"returnControlIDs": "F4211.DOCO|F4211.LITM|F4211.UORG|F4211.DRQJ",
"query": { "autoFind": true,
"condition": [ { "controlId": "F4211.MCU", "operator": "EQUAL",
"value": [ { "content": "30", "specialValueId": "LITERAL" } ] } ] }
}-- Replica query for heavy analytics (SQL Server/Oracle syntax varies) -- Julian date: CYYDDD, so 2026-10-21 is 126294 SELECT SDLITM, SUM(SDUORG) AS ordered FROM F4211 WHERE SDMCU = ' 30' -- business unit is right-justified, padded AND SDDRQJ >= 126294 GROUP BY SDLITM
Reference architecture
The tool server sits between the model and EnterpriseOne. For quick lookups it calls AIS with the user's token, so the JDE security kernel decides what comes back. For large scans (open orders by customer across years) it queries a replica built with native database replication such as Oracle Data Guard, SQL Server Always On readable secondaries or DB2 replication. The retrieval index holds text from media objects (stored through the Media Object tables such as F00165 and file queues) and any shared-drive documents; each chunk carries the business unit and document type.
The model runs on local GPUs. Prompt assembly, tool selection and answer rendering happen in the tool server, so the model host never holds JDE credentials. An audit store records the user, the tool, parameters and row counts. In an air-gapped deployment AIS, the tool server and the model all live inside the same network zone, with weights and images moved in through a controlled transfer.
Mirroring JDE security
Security Workbench is where EnterpriseOne defines application, action, row, column, processing-option, exit and external-call security by user and role. AIS calls made with the end user's token run through the same checks. Direct replica queries do not, so the tool server must reproduce row security by translating the user's Security Workbench row rules (for example by business unit or document type) into WHERE clauses, or restrict replica tools to data where no row security applies.
Two practical rules help. Prefer AIS for anything where a user's identity matters. Use the replica only for aggregates that a role could already see in a standard report, and verify them against the same user's view in the real application during acceptance testing. If a rule cannot be mirrored with confidence, leave that table out of the assistant.
Sizing, rollout and honest limits
A site with 200 to 1,000 JDE users typically runs the assistant on one or two GPUs for a 30B to 70B-class model, with a second node for availability. Phase 1 is five to ten read tools (stock status, open orders, PO status, work order status, customer or supplier lookups) in 6 to 10 weeks. Phase 2 drafts documents such as a PO change request. Phase 3 calls approved Orchestrations, always showing the exact payload to the approver.
Limits: the data service returns paged JSON, so very large result sets belong on the replica; Julian dates, implied decimals and padded business unit values cause subtle wrong answers unless handled in the tool layer; Orchestrator and AIS features depend on your Tools Release; and if your need is a smarter dashboard, One View Reporting or a UDO may be enough without any model.
Try it here, free
JD Edwards Security Workbench Worksheet
Editable worksheet to record JD Edwards role security records by type, with the actions allowed, risk notes and approver for each.
Common pitfalls
- !Reading F-tables from the replica with a shared account and no row security, then showing the result to users whose JDE role could not open it.
- !Ignoring Julian dates and implied decimals, which yields confidently wrong date filters and unit quantities.
- !Letting the model write free-form SQL. Expose named tools with typed parameters.
- !Calling Orchestrations with a broad service role. Use narrow roles per orchestration and require approval.
- !Overloading the AIS Server with large browse calls; push big scans to the replica and cache stable reference data.
How an ERP-grounded AI assistant handles this
ERPray uses the AIS data service for user-scoped lookups and a replica for large scans, handles Julian dates and implied decimals in its JDE connector, and shows the query behind every answer. Write actions are drafted for approval and executed only through orchestrations your JDE team has published.
Frequently asked questions
Is the AIS Server required to add AI to JD Edwards?
Not strictly, since read-only database access works, but AIS is the cleanest way to honour user security and to call approved write actions. Without it you must rebuild row and application security in your own tool layer, which is harder to prove correct.
Can the model call Orchestrator directly?
It should not. The tool server should call named orchestrations with validated inputs after a person approves the payload. This keeps the model from composing arbitrary actions and gives you an audit trail tied to a JDE user.
Does this work with DB2 for i or SQL Server back ends?
Yes. The AIS path is database independent. For replica reads, the SQL dialect, padding and date conversion differ by engine, so the tool server needs an adapter per database.
What about JD Edwards World?
World has no AIS Server, so its pattern is different: direct DB2 for i access and RPG or batch interfaces. See the separate JD Edwards World on IBM i architecture page.
Related
How to set up JD Edwards Orchestrator (step by step)
An EnterpriseOne orchestration chains one or more requests (form requests that drive an interactive application, or service requests that call a BSFN, business service, or SQL) plus optional rules and notifications, then exposes the whole thing as a callable REST endpoint via the AIS (Application Interface Services) server. The setup work happens in Orchestrator Studio, not the Fat Client.
AdvancedHow to set up row security in JD Edwards Security Workbench
Security Workbench (fast path SECURITY, application P00950) is where every type of EnterpriseOne security record is defined, including row security, which restricts which rows of data a role or user is allowed to see or act on based on a key field like business unit or company, independent of whether they have access to the application itself. Application security controls whether a role can open a program at all; row security controls what data they see once they are in it.
AdvancedHow to Add a Private AI Layer to JD Edwards World on IBM i
World runs on DB2 for i with RPG programs and no REST layer, so the AI layer reads DB2 over JDBC or ODBC using a read-only IBM i profile, replicates changes from journals to an off-box copy for heavy questions, rebuilds World's menu and file-level security in the tool server, and writes back only through the documented batch input files and programs after human approval.
CIO briefingOn-Prem vs Cloud ERP AI for Regulated Manufacturers
For ITAR, CMMC, and export-controlled manufacturers, the deciding question is not on-prem versus cloud in general but whether controlled unclassified information (CUI) or export-controlled technical data ever leaves your boundary to reach an AI model. An on-prem or private-VPC-deployed AI layer keeps that data inside your control boundary; a vendor's shared cloud AI service usually does not, regardless of how the core ERP itself is hosted.
Error fixJDE UBE failed (status E): how to read jde.log and jdedebug.log
A UBE (batch report/program) that ends with status E in Work With Submitted Jobs tells you almost nothing on its own. The real error is in jde.log on the enterprise server, in the job's own PDF/log subdirectory (jdedebug.log if you turned on debug), and in the work directory for that job number under PrintQueue or the OS temp path.
Error fixJD Edwards: record is being used by another user (record reservation)
EnterpriseOne places a soft record reservation lock when a user opens a record for edit, tracked in the F00165 table, and releases it when the user saves, cancels, or the session ends cleanly. A stuck lock almost always means a session died abnormally (browser crash, network drop, kiosk timeout) without triggering the release, and it must be cleared by an admin, not by the original user retrying.
AI for ERPAI for JD Edwards EnterpriseOne, Built on Orchestrator and AIS
Add AI to JD Edwards E1 9.2 using Orchestrator, AIS, and BSSV rather than screen-scraping. Ground a private LLM on F4211, F4111, and F0411 data.
AI for ERPAI for JD Edwards EnterpriseOne Manufacturing, Without Leaving the F-Tables Exposed
Grounded AI over JD Edwards EnterpriseOne Manufacturing: work orders, routings, and Orchestrator data, answered on-prem without sending F-table data to a public model.
Stuck on JD Edwards EnterpriseOne (on-prem)?
Talk to engineers who work inside JD Edwards EnterpriseOne (on-prem) every week, and who build private AI that answers these questions from your own ERP data.
Keep exploring
Free tools
- JD Edwards Security Workbench WorksheetEditable worksheet to record JD Edwards role security records by type, with the actions allowed, risk notes and approver for each.
- JD Edwards Orchestrator Design TemplateA fill-in design document for a JD Edwards Orchestrator orchestration: purpose, inputs, steps, rules, outputs, security and test cases.
- JD Edwards EnterpriseOne Private AI Layer Blueprint GeneratorFill in your JD Edwards EnterpriseOne version, database, hosting and users to get a shareable architecture plan for a private, on-prem AI assistant.
ERP fixes and how-tos
- How to set up JD Edwards Orchestrator (step by step)Set up a working JD Edwards Orchestrator end to end: enable the AIS server, build a form or service request, wire it into an orchestration, and call it over REST.
- JD Edwards API Documentation: AIS REST, Orchestrator, BSSV and Connector OptionsJD Edwards integration options explained: AIS REST, Orchestrator, business services (BSSV), Z-files and third-party connectors such as Concur, with trade-offs.
- How to Add a Private AI Layer to JD Edwards World on IBM iAdd AI to JD Edwards World without moving data: DB2 for i access, journal-based replication, rebuilt row security, local GPUs and approved batch write-back.
Runs with your ERP
- Oracle Digital Assistant, OCI AI and JD Edwards OrchestratorHow JD Edwards Orchestrator calls OCI REST APIs for a chat assistant, document understanding and generative AI, with setup steps, pitfalls and on-prem options.
- Oracle CPQ and JD Edwards EnterpriseOne: quote to sales orderHow Oracle CPQ integrates with JD Edwards EnterpriseOne: customer data into quotes, sales orders created from quotes, and status back, with setup and pitfalls.
- Oracle CPQ configure-to-order with JD Edwards via SOA Suite and OrchestratorA Birlasoft implementation case: Oracle CPQ options feed the JD Edwards work order parts list via SOA Suite and Orchestrator, with setup steps and pitfalls.
AI on your ERP
- AI for JD Edwards EnterpriseOne, Built on Orchestrator and AISAdd AI to JD Edwards E1 9.2 using Orchestrator, AIS, and BSSV rather than screen-scraping. Ground a private LLM on F4211, F4111, and F0411 data.
- AI for JD Edwards Inventory Management and Shop Floor ManufacturingAI on JD Edwards EnterpriseOne inventory and manufacturing: item ledger, work orders, MRP messages and cost variances, answered in plain English on your own servers.
Integrations
- How to add AI agents to JD Edwards EnterpriseOneHow to add AI agents to JD Edwards EnterpriseOne: Orchestrator and AIS as the tool layer, read-only first, human approval on writes, on-prem models.
- How to add WhatsApp to JD Edwards EnterpriseOneHow to connect WhatsApp Business to JD Edwards EnterpriseOne using AIS REST, Orchestrator and Real Time Events: order status, shipment alerts, approvals and supplier replies.