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

> Source: https://netray.co/tools/oracle-ebs-forms-frm-error-codes-reference
> Publisher: Netray (netray.co), AI and integration engineering for ERP and manufacturing systems.
> Section: Free Tools

## Short answer

Searchable list of the FRM errors EBS users actually hit, with the message text, the usual cause in EBS, what to check first and where to find the underlying ORA- error or log.

## Category

developer

## Erp

Oracle E-Business Suite

## Audience

- Oracle Apps DBA
- Oracle EBS developer
- EBS support analyst
- Help desk

## Tool

**Kind:** worksheet

**Mode:** reference

**Columns:**

#### Code

**Key:** code

**Type:** text

#### Message text

**Key:** text

**Type:** text

#### Typical cause in EBS

**Key:** cause

**Type:** text

#### First checks

**Key:** checks

**Type:** text

#### Where to look

**Key:** where

**Type:** text

**Rows:**

#### 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

**Code:** FRM-40735

**Text:** <trigger> trigger raised unhandled exception <exception>.

**Checks:** Note the trigger name and the ORA- code in the message; reproduce with the same data

**Where:** Help > Diagnostics > Display Database Error; Forms trace; the package called by the trigger

#### Query on a block failed: invalid column in a custom WHERE clause, missing grant or synonym, invalid view, or MOAC context problem

**Code:** FRM-40505

**Text:** ORACLE error: unable to perform query.

**Checks:** Display Database Error for the ORA- code (ORA-00904, ORA-00942 are common)

**Where:** Help > Diagnostics > Display Database Error; block query in Help > Diagnostics > Examine (LAST_QUERY)

#### Insert failed: unique constraint, NOT NULL column, trigger on the base table, or invalid DFF value

**Code:** FRM-40508

**Text:** ORACLE error: unable to INSERT record.

**Checks:** Display Database Error for ORA-00001, ORA-01400 or a custom trigger error

**Where:** Base table triggers; recent custom database triggers

#### Update failed: database trigger error, constraint, or a value too large for the column

**Code:** FRM-40509

**Text:** ORACLE error: unable to UPDATE record.

**Checks:** Display Database Error; check recently added custom triggers

**Where:** Base table and its triggers

#### Delete failed: child records (ORA-02292) or a trigger raising an error

**Code:** FRM-40510

**Text:** ORACLE error: unable to DELETE record.

**Checks:** Display Database Error for ORA-02292 and the constraint name

**Where:** DBA_CONSTRAINTS for the named constraint

#### Row lock held by another session or a hung session (ORA-00054)

**Code:** FRM-40501

**Text:** ORACLE error: unable to reserve record for update or delete.

**Checks:** Find the blocking session

**Where:** V$LOCKED_OBJECT, V$SESSION; ask the user holding the record to save or exit

#### 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

**Code:** FRM-40654

**Text:** Record has been updated by another user. Re-query to see change.

**Checks:** Re-query the record and redo the change

**Where:** Who updated it: LAST_UPDATED_BY and LAST_UPDATE_DATE on the row

#### Item is not updatable in this status or through a personalization or form logic

**Code:** FRM-40200

**Text:** Field is protected against update.

**Checks:** Check document status (approved, closed) and any personalization on UPDATE_ALLOWED

**Where:** Help > Diagnostics > Custom Code > Off to rule out personalizations

#### Required item left blank, including fields made REQUIRED by personalization or a required DFF segment

**Code:** FRM-40202

**Text:** Field must be entered.

**Checks:** Find the field with the cursor; check DFF segment setup

**Where:** Personalizations on the form; descriptive flexfield segments

#### Value does not match the item's data type or format mask, for example a date in the wrong format

**Code:** FRM-40212

**Text:** Invalid value for field <item>.

**Checks:** Check the user's date and number format preferences

**Where:** Profile ICX: Date format mask; user preferences

#### Entered value does not match the format mask of the item

**Code:** FRM-40209

**Text:** Field must be of form <format mask>.

**Checks:** Re-enter in the displayed mask

**Where:** Item format mask in the form; user preferences

#### Value from the database or a default is longer than the item width

**Code:** FRM-40831

**Text:** Truncation occurred: value too long for field <item>.

**Checks:** Compare column length with the item maximum length, common after a custom column widening

**Where:** Custom views and DFF value sets with long values

#### Query criteria match nothing, or MOAC or data security hides the rows

**Code:** FRM-40350

**Text:** Query caused no records to be retrieved.

**Checks:** Check operating unit, responsibility and criteria; try a broader query

**Where:** MO: Security Profile; the block's DEFAULT_WHERE

#### Informational: the cursor is at the last fetched record

**Code:** FRM-40352

**Text:** Last record of query retrieved.

**Checks:** None

**Where:** Not an error

#### Informational: previous record pressed on the first record

**Code:** FRM-40100

**Text:** At first record.

**Checks:** None

**Where:** Not an error

#### Navigating down from a new, empty record

**Code:** FRM-40102

**Text:** Record must be entered or deleted first.

**Checks:** Enter data or clear the record

**Where:** Not a defect

#### Save pressed with no pending changes

**Code:** FRM-40401

**Text:** No changes to save.

**Checks:** None

**Where:** If expected changes did not save, check whether a personalization cleared them

#### Duplicate of a primary key value already entered in the same block

**Code:** FRM-40600

**Text:** Record has already been inserted.

**Checks:** Change the key value or query the existing record

**Where:** Block primary key settings

#### A personalization, CUSTOM.pll or menu called a trigger the form does not define, for example a SPECIAL entry

**Code:** FRM-40700

**Text:** No such trigger: <trigger>.

**Checks:** Check the event name in the personalization action

**Where:** FND_FORM_CUSTOM_ACTIONS BUILTIN_ARGUMENTS for EXECUTE_TRIGGER or DO_KEY

#### Code or a personalization references an item name that does not exist, often after a patch renamed it

**Code:** FRM-40105

**Text:** Unable to resolve reference to item <item>.

**Checks:** Compare the name with Help > Diagnostics > Examine

**Where:** Personalization TARGET_OBJECT and CONDITION; CUSTOM.pll

#### Code reads a global that was never set in this session

**Code:** FRM-40815

**Text:** Variable GLOBAL.<name> does not exist.

**Checks:** Find the code that should set it; use DEFAULT_VALUE before reading

**Where:** CUSTOM.pll, personalization conditions using :GLOBAL

#### LOV record group returned no rows: setup missing, MOAC or responsibility filter, or a changed record group query

**Code:** FRM-41830

**Text:** List of Values contains no entries.

**Checks:** Check the underlying setup for the operating unit and date

**Where:** Personalizations using Create Record Group from Query

#### The .fmx is missing, not compiled, or not on FORMS_PATH, typically a custom form

**Code:** FRM-40010

**Text:** Cannot read form <form>.

**Checks:** Check the file exists and recompile with frmcmp_batch

**Where:** .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

#### Client cannot reach the Forms servlet or listener: wrong host, proxy, firewall or the Forms service is down

**Code:** FRM-92050

**Text:** Failed to connect to the Server: <url>.

**Checks:** Check the forms URL from the client, proxy settings and that the forms server is running

**Where:** Apache and Forms server status; in 12.2 the forms_server1 managed server

#### Client Java problem: JRE version, Java cache, or a security setting blocking the applet

**Code:** FRM-92091

**Text:** Unexpected fatal error in client-side Java code.

**Checks:** Clear the Java cache, check the certified JRE, enable the Java console

**Where:** Java console output on the client

#### Browser is using a Java client that the Forms server rejects, often an old configuration or unsupported plug-in

**Code:** FRM-92095

**Text:** Oracle JInitiator version too low. Please install version <n> or higher.

**Checks:** Check the certified Java client for your EBS release and the client JRE

**Where:** Java console; EBS client certification notes

#### Forms session lost: network drop, timeout, or the server process died

**Code:** FRM-92100

**Text:** Your connection to the Server was interrupted.

**Checks:** Check the time of the error against server logs and network events

**Where:** Forms server logs; idle and session timeout settings

#### Forms runtime could not start: environment file error, bad FORMS_PATH, missing libraries, or a misconfigured context after cloning

**Code:** FRM-92101

**Text:** There was a failure in the Forms Server during startup.

**Checks:** Check that the forms server and default.env match the context file; rerun AutoConfig if needed

**Where:** Forms and web server logs; in 12.2 forms_server1 logs under the EBS WebLogic domain

#### Repeated network failures between client and Forms server, firewall idle timeout, or load balancer settings

**Code:** FRM-92102

**Text:** A network error has occurred. The Forms Client has attempted to reconnect to the Server <n> time(s) without success.

**Checks:** Check network stability, load balancer persistence and timeouts

**Where:** Network and load balancer logs; Forms server logs

**Notes:** 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.

## Content

**Intro:** 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.

**Sections:**

#### First, get the underlying ORA- error

**Body:** 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

**Body:** 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

**Body:** 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

**Body:** 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.

**Cta:** 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.

**Faq:**

#### What causes FRM-92101 in Oracle EBS R12?

**Answer:** 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?

**Answer:** 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?

**Answer:** 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?

**Answer:** 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.

## Search terms

frm-92101 error in oracle forms r12, frm 92102 error in oracle forms, frm-92091 error details in oracle forms, oracle forms error code 40735, error 40505 oracle forms, oracle forms form_trigger_failure, frm-40654 record has been updated by another user

---
Talk to an engineer: https://netray.co/contact?intent=erp_ai | Machine catalog: https://netray.co/agent/catalog.json
