Developer ToolsFree referencePDF, Excel, Word exportOracle E-Business SuiteAll Oracle E-Business Suite tools

Oracle EBS Forms FRM Error Codes Reference (FRM-92101, FRM-40735 and more)

This reference lists the FRM errors that Oracle E-Business Suite 12.1 and 12.2 users report most, with the message text, the usual EBS cause and where to look first. FRM-40xxx errors are about data and form logic, FRM-92xxx errors are about the Java client, network and Forms server.

Download:
CodeMessage textTypical cause in EBSFirst checksWhere to look
FRM-40735
<trigger> trigger raised unhandled exception <exception>.
PL/SQL in a form trigger or a CUSTOM.pll or personalization call raised an exception it did not handle, often ORA-01403, ORA-01422 or ORA-06502
Note the trigger name and the ORA- code in the message; reproduce with the same data
Help > Diagnostics > Display Database Error; Forms trace; the package called by the trigger
FRM-40505
ORACLE error: unable to perform query.
Query on a block failed: invalid column in a custom WHERE clause, missing grant or synonym, invalid view, or MOAC context problem
Display Database Error for the ORA- code (ORA-00904, ORA-00942 are common)
Help > Diagnostics > Display Database Error; block query in Help > Diagnostics > Examine (LAST_QUERY)
FRM-40508
ORACLE error: unable to INSERT record.
Insert failed: unique constraint, NOT NULL column, trigger on the base table, or invalid DFF value
Display Database Error for ORA-00001, ORA-01400 or a custom trigger error
Base table triggers; recent custom database triggers
FRM-40509
ORACLE error: unable to UPDATE record.
Update failed: database trigger error, constraint, or a value too large for the column
Display Database Error; check recently added custom triggers
Base table and its triggers
FRM-40510
ORACLE error: unable to DELETE record.
Delete failed: child records (ORA-02292) or a trigger raising an error
Display Database Error for ORA-02292 and the constraint name
DBA_CONSTRAINTS for the named constraint
FRM-40501
ORACLE error: unable to reserve record for update or delete.
Row lock held by another session or a hung session (ORA-00054)
Find the blocking session
V$LOCKED_OBJECT, V$SESSION; ask the user holding the record to save or exit
FRM-40654
Record has been updated by another user. Re-query to see change.
Row changed in the database since the form queried it: another user, a concurrent program, or an API; also trailing spaces or a trigger that changes values
Re-query the record and redo the change
Who updated it: LAST_UPDATED_BY and LAST_UPDATE_DATE on the row
FRM-40200
Field is protected against update.
Item is not updatable in this status or through a personalization or form logic
Check document status (approved, closed) and any personalization on UPDATE_ALLOWED
Help > Diagnostics > Custom Code > Off to rule out personalizations
FRM-40202
Field must be entered.
Required item left blank, including fields made REQUIRED by personalization or a required DFF segment
Find the field with the cursor; check DFF segment setup
Personalizations on the form; descriptive flexfield segments
FRM-40212
Invalid value for field <item>.
Value does not match the item's data type or format mask, for example a date in the wrong format
Check the user's date and number format preferences
Profile ICX: Date format mask; user preferences
FRM-40209
Field must be of form <format mask>.
Entered value does not match the format mask of the item
Re-enter in the displayed mask
Item format mask in the form; user preferences
FRM-40831
Truncation occurred: value too long for field <item>.
Value from the database or a default is longer than the item width
Compare column length with the item maximum length, common after a custom column widening
Custom views and DFF value sets with long values
FRM-40350
Query caused no records to be retrieved.
Query criteria match nothing, or MOAC or data security hides the rows
Check operating unit, responsibility and criteria; try a broader query
MO: Security Profile; the block's DEFAULT_WHERE
FRM-40352
Last record of query retrieved.
Informational: the cursor is at the last fetched record
None
Not an error
FRM-40100
At first record.
Informational: previous record pressed on the first record
None
Not an error
FRM-40102
Record must be entered or deleted first.
Navigating down from a new, empty record
Enter data or clear the record
Not a defect
FRM-40401
No changes to save.
Save pressed with no pending changes
None
If expected changes did not save, check whether a personalization cleared them
FRM-40600
Record has already been inserted.
Duplicate of a primary key value already entered in the same block
Change the key value or query the existing record
Block primary key settings
FRM-40700
No such trigger: <trigger>.
A personalization, CUSTOM.pll or menu called a trigger the form does not define, for example a SPECIAL entry
Check the event name in the personalization action
FND_FORM_CUSTOM_ACTIONS BUILTIN_ARGUMENTS for EXECUTE_TRIGGER or DO_KEY
FRM-40105
Unable to resolve reference to item <item>.
Code or a personalization references an item name that does not exist, often after a patch renamed it
Compare the name with Help > Diagnostics > Examine
Personalization TARGET_OBJECT and CONDITION; CUSTOM.pll
FRM-40815
Variable GLOBAL.<name> does not exist.
Code reads a global that was never set in this session
Find the code that should set it; use DEFAULT_VALUE before reading
CUSTOM.pll, personalization conditions using :GLOBAL
FRM-41830
List of Values contains no entries.
LOV record group returned no rows: setup missing, MOAC or responsibility filter, or a changed record group query
Check the underlying setup for the operating unit and date
Personalizations using Create Record Group from Query
FRM-40010
Cannot read form <form>.
The .fmx is missing, not compiled, or not on FORMS_PATH, typically a custom form
Check the file exists and recompile with frmcmp_batch
.fmx in $<PROD>_TOP/forms/US or $XX_TOP/forms/US for custom forms (.fmb source in $AU_TOP/forms/US); FORMS_PATH in default.env
FRM-92050
Failed to connect to the Server: <url>.
Client cannot reach the Forms servlet or listener: wrong host, proxy, firewall or the Forms service is down
Check the forms URL from the client, proxy settings and that the forms server is running
Apache and Forms server status; in 12.2 the forms_server1 managed server
FRM-92091
Unexpected fatal error in client-side Java code.
Client Java problem: JRE version, Java cache, or a security setting blocking the applet
Clear the Java cache, check the certified JRE, enable the Java console
Java console output on the client
FRM-92095
Oracle JInitiator version too low. Please install version <n> or higher.
Browser is using a Java client that the Forms server rejects, often an old configuration or unsupported plug-in
Check the certified Java client for your EBS release and the client JRE
Java console; EBS client certification notes
FRM-92100
Your connection to the Server was interrupted.
Forms session lost: network drop, timeout, or the server process died
Check the time of the error against server logs and network events
Forms server logs; idle and session timeout settings
FRM-92101
There was a failure in the Forms Server during startup.
Forms runtime could not start: environment file error, bad FORMS_PATH, missing libraries, or a misconfigured context after cloning
Check that the forms server and default.env match the context file; rerun AutoConfig if needed
Forms and web server logs; in 12.2 forms_server1 logs under the EBS WebLogic domain
FRM-92102
A network error has occurred. The Forms Client has attempted to reconnect to the Server <n> time(s) without success.
Repeated network failures between client and Forms server, firewall idle timeout, or load balancer settings
Check network stability, load balancer persistence and timeouts
Network and load balancer logs; Forms server logs

Message texts follow Oracle Forms runtime messages; angle brackets mark values the runtime fills in. FRM-40xxx and FRM-41xxx come from the form logic and data; FRM-92xxx come from the Java client and the Forms server.

Recurring FRM errors review

Send us the FRM errors your help desk sees most and the matching database errors, and we will return likely causes and fixes for your release.

Optional. The tool and every export work without this. No spam.

Was this tool useful?

First, get the underlying ORA- error

Errors such as FRM-40505, FRM-40508, FRM-40509 and FRM-40510 only say that a database call failed. The real cause is the ORA- error behind it. In EBS use Help > Diagnostics > Display Database Error right after the message, while still in the form. That shows the last database error, for example ORA-00904 invalid identifier from a bad custom WHERE clause or ORA-00001 from a unique index. Help > Diagnostics > Examine shows item values and system variables such as LAST_QUERY. Diagnostics access is controlled by the profiles Hide Diagnostics menu entry and Utilities:Diagnostics. To rule out personalizations and CUSTOM.pll quickly, use Help > Diagnostics > Custom Code > Off and repeat the action.

What FORM_TRIGGER_FAILURE means

FORM_TRIGGER_FAILURE is the Oracle Forms exception that stops the current trigger and, in validation triggers, stops the user from leaving the record or saving. Code raises it on purpose after showing a message, for example FND_MESSAGE.ERROR followed by RAISE FORM_TRIGGER_FAILURE, and a Forms Personalization can do the same with the RAISE FORM_TRIGGER_FAILURE builtin. If a trigger raises any other exception and does not handle it, the user sees FRM-40735 with the trigger name and the exception, which is a coding defect to fix, not a validation.

FRM-92xxx: network, Java and server causes

FRM-92050, FRM-92100, FRM-92101 and FRM-92102 point at the path between the client and the Forms server. FRM-92101 at startup usually means the Forms runtime could not start with its environment: wrong FORMS_PATH or default.env values, missing files after a clone, or AutoConfig not run. FRM-92102 and FRM-92100 after a period of use usually mean the connection was cut, often by a firewall or load balancer idle timeout. FRM-92091 and FRM-92095 are client Java problems. In 12.2 the Forms runtime runs in the forms_server1 managed server, so check its logs under the EBS WebLogic domain and confirm the managed server is running on the run file system after an adop cutover.

Worked example: FRM-40735 with ORA-01403

A user saves a sales order line and gets 'FRM-40735: WHEN-VALIDATE-RECORD trigger raised unhandled exception ORA-01403'. ORA-01403 is no data found: a SELECT INTO returned no rows. Check what runs in WHEN-VALIDATE-RECORD for that block: standard code is rarely the culprit, so look first at CUSTOM.pll, personalizations with Execute a Procedure or FORMS_DDL, and custom database packages they call. A typical cause is a lookup against a custom table without a row for the new operating unit or item. Fix the code to handle NO_DATA_FOUND with a proper FND_MESSAGE and RAISE FORM_TRIGGER_FAILURE, or add the missing setup row.

Frequently Asked Questions

What causes FRM-92101 in Oracle EBS R12?

FRM-92101 means the Forms server failed while starting the runtime for the session. In EBS it is usually configuration: environment file or FORMS_PATH problems, files missing after a clone, or a context not applied by AutoConfig. In 12.2 check the forms_server1 managed server logs. Ask whether all users get it or only one, which separates server from client causes.

What does FRM-40735 mean?

A form trigger raised a PL/SQL exception that it did not handle. The message names the trigger, for example WHEN-VALIDATE-RECORD or PRE-INSERT, and the exception, often ORA-01403 or ORA-06502. Look at code that runs in that trigger, especially CUSTOM.pll, personalizations and custom packages.

How do I see the real error behind FRM-40505?

Right after the message, use Help > Diagnostics > Display Database Error. It shows the ORA- error that made the query fail. Common ones are ORA-00904 invalid identifier from a custom WHERE clause and ORA-00942 from a missing grant or synonym on a custom object.

How do I fix FRM-40654 Record has been updated by another user?

Re-query the record and make the change again. If it happens repeatedly on the same record, something else updates the row between query and save: a concurrent program, a workflow, an API, or a database trigger that modifies the row on update. Check LAST_UPDATED_BY and LAST_UPDATE_DATE on the row to find it.

If you want support analysts to paste an FRM error and get the likely cause from your own logs and setup, on a model running on your servers, we can build that.

ArchRay builder
Design the on-prem AI stack for Oracle E-Business Suite: model, GPUs, RAG pipeline, guardrails
See memory, speed and cost as you swap parts, then export the diagram. Free, in your browser.
Open the builder

Keep exploring

Free tools

ERP fixes and how-tos

Runs with your ERP

AI on your ERP

Integrations

Software