# Fix Oracle EBS OPM Batches That Cannot Be Completed or Closed

> Source: https://netray.co/erp-help/ebs-opm-batch-stuck-wip-cannot-complete-close-fix
> Publisher: Netray (netray.co), AI and integration engineering for ERP and manufacturing systems.
> Section: ERP Help

## Short answer

An OPM Process Execution batch usually refuses to complete or close because of pending product lots, ingredients with missing or insufficient transactions, unresolved reservations, or an inventory period issue. Review the batch in the Batch Details window, resolve the pending lots and ingredient lines, and then use the supported Complete, Close or Revert actions instead of editing GME tables.

## Kind

error

## System

oracle-ebs

## Erp

Oracle E-Business Suite

## Module

Process Manufacturing (OPM) / Process Execution

## Query

EBS OPM Process Execution batch cannot complete or close pending transactions

## Alternate Queries

- Oracle OPM batch stuck WIP cannot complete batch
- GME_BATCH_HEADER batch_status WIP complete error
- OPM batch close fails pending product lots
- process manufacturing batch cannot be closed unconsumed ingredients

## Applies To

Oracle E-Business Suite R12.1 and R12.2 Process Manufacturing Process Execution (GME) integrated with Inventory (discrete-inventory based OPM, organizations with the process enabled flag)

## Steps

### How to get the batch moving

**Items:**

- Open Process Manufacturing Process Execution > Batch Details and query the batch. Note the status: Pending, WIP, Completed, Closed or Cancelled.
- Read the exact message shown when you choose Complete Batch or Close Batch. Messages name the ingredient or product line that blocks the action.
- Check Material Details. For each ingredient, confirm actual quantity, subinventory, locator and lot, and that on-hand covers it. Use Select Material Transactions to enter missing lots.
- For products, open the Pending Product Lots window and make sure each lot has a quantity, a lot number and correct status. Use Create Pending Product Lot where missing.
- Check Reservations for the batch. Release unwanted reservations or make sure the reserved lot actually exists in the subinventory.
- Look at inventory transactions: Inventory > Transactions > Pending Transactions for rows from the batch that failed and sit in the interface.
- Confirm the inventory period is open for the batch completion date, and that the GME and Inventory organization parameters allow the action.
- Retry Complete Batch, then Close Batch. If the batch is wrongly completed, use Revert to WIP rather than editing data.

## Sections

### Batch status and what each step does

**Body:**

OPM batches progress through status values stored in GME_BATCH_HEADER.BATCH_STATUS: 1 Pending, 2 WIP, 3 Completed, 4 Closed, and -1 Cancelled. Release moves Pending to WIP and creates actual ingredient consumption transactions according to the backflush or manual settings. Complete moves WIP to Completed and posts yield into inventory. Close locks the batch for cost calculation and prevents further changes.

Where a step fails, the transaction is rolled back and the batch stays in its prior status. That is why a batch can be stuck WIP for weeks: nobody sees a failing job, only a message at the moment of the click. Operators on the shop floor often bypass the issue by keeping the batch open and the pile of WIP grows.

**Code:**

SELECT batch_no, organization_id, batch_status, actual_start_date,
       actual_cmplt_date, batch_close_date
  FROM gme_batch_header
 WHERE batch_status = 2
   AND actual_start_date < SYSDATE - 30;

### Ingredient side causes

**Body:**

Ingredients set to manual consumption need actual transactions entered before complete. Ingredients with lot control need lot numbers, those with locator control need locators, and issues need on-hand in the chosen subinventory. If on-hand is short at the time of completion, either the transaction fails or the system raises a negative balance depending on organization settings.

Backflush ingredients can fail when the supply subinventory on the formula line is not valid for the organization, or the item is not stocked in that subinventory. Fix the formula or recipe default, or enter actuals manually in Material Details.

Phantom ingredients, step-controlled consumption with step quantity calculation, and incremental backflush each change when transactions are created. If the batch has batch steps, check that steps are completed in sequence, because dependent materials are not consumed until the step they are associated with completes.

### Product side and inventory side causes

**Body:**

Product yield needs at least one pending product lot for lot-controlled items. Yield variance is allowed within the tolerances set in the Process Execution parameters. Large deviation between planned and actual yield can require a deviation approval or a change to the tolerance, depending on how your plant configured the organization.

On the inventory side, failures show up in MTL_MATERIAL_TRANSACTIONS_TEMP and MTL_TRANSACTIONS_INTERFACE. A closed inventory period, a disabled subinventory or an invalid lot status will fail the transaction, and the batch then reverts. Check the Pending Transactions form for rows with source type Batch.

### Closing and costing

**Body:**

Close Batch is normally followed by period-end actual costing. Closed batches cannot be edited, so verify actual quantities, scrap and byproducts before closing. Reopening requires the supported Revert or Unclose options, with their prerequisites on costing, and may be blocked once costs are final in a closed period.

Do not update GME_BATCH_HEADER.BATCH_STATUS directly to force a state. It leaves reservations, transactions and cost records inconsistent. Use the Oracle supported actions, and if the UI cannot resolve the problem, open a Service Request with the batch ID and the logged message.

## Pitfalls

- Keeping batches in WIP for weeks, which delays costing and inflates WIP balances.
- Updating BATCH_STATUS in SQL, which desynchronises transactions, reservations and costs.
- Entering ingredient actuals from the wrong subinventory so on-hand never covers the issue.
- Completing a batch in a closed inventory period.
- Closing before byproducts and scrap are recorded, then needing an unclose.

## Ai Angle

An ERPray style assistant over your EBS database can list aged WIP batches, show which ones have no pending product lots or failed transactions, and surface the ingredient lines blocking completion, with read-only SQL against the GME tables visible. It respects EBS roles and does not complete, close or revert batches by itself. Those actions stay with the process planner under normal approvals.

## Faq

### Why can't I complete my OPM batch?

**Answer:** Usually a product lot is missing or pending, an ingredient lacks an actual transaction or sufficient on-hand, a reservation points to unavailable stock, or the inventory period is closed. The message shown on Complete Batch normally names the blocking line, so start there.

### What is the difference between Complete and Close in OPM?

**Answer:** Complete posts product yield and records actual consumption, moving the batch to Completed. Close finalises it for costing and prevents further edits. You can revert a completed batch to WIP if needed, but closing is much harder to undo.

### Can I change batch status with SQL?

**Answer:** It is not recommended. The status interacts with material transactions, reservations and cost records. Direct updates can leave these out of step. Use the supported actions, or raise a Service Request with Oracle Support for a data fix.

### How do I find old batches left in WIP?

**Answer:** Query GME_BATCH_HEADER for BATCH_STATUS = 2 with an old ACTUAL_START_DATE, filtered by organization. Review them with the planners to complete, cancel or revert. Cleaning up WIP before the period end avoids costing surprises.

## Search terms

OPM batch stuck WIP, Oracle process manufacturing batch close, GME_BATCH_HEADER, process execution complete batch error, pending product lots EBS, OPM revert batch, R12 process manufacturing troubleshooting, OPM ingredient backflush error

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