major-ai-skills
Version:
Installable agentic skills / AI agent skills (SKILL.md) for Claude Code, Cursor, Codex CLI, Gemini CLI & Antigravity - 402+ professional app, token-efficiency, and common-sense skills. SEO/GEO ready.
125 lines (96 loc) • 7.21 kB
Markdown
title: "Oracle E-Business Suite (EBS) AI Skill Guide (Gemini)"
description: "Comprehensive operational skill specification for Google Gemini to visually diagnose, automate, script, and troubleshoot Oracle Forms screens, Concurrent Request Logs, OAF Personalizations, and Flexfields."
category: "Oracle E-Business Suite Desktop Client"
tags: ["oracle-ebs", "oracle-forms", "concurrent-requests", "gemini", "oaf-personalization", "flexfield-diagnostics"]
# Oracle E-Business Suite (EBS) AI Skill Guide (Gemini)
## Overview & Engine Architecture
Oracle E-Business Suite (EBS R12.2) integrates classical Oracle Forms desktop applets and modern browser-based Oracle Application Framework (OAF) pages. Gemini acts as an AI Oracle EBS Functional Consultant and Systems Auditor, specializing in **multimodal Oracle Forms screen triage**, **Concurrent Request Log & Output file diagnostics**, **Descriptive Flexfield (DFF) configuration analysis**, and **OAF UI personalization validation**.
### Visual Operations & User Interface Stack
```
┌─────────────────────────────────────────────────────────────┐
│ Oracle EBS Visual Interface │
│ │
│ Interactive UI Presentation │
│ ├── Oracle Forms Thick Client (Multi-Row Block Data Entry) │
│ ├── OAF (OA Framework HTML Web Applications / Self-Service)│
│ └── Concurrent Request Status & Output Viewer (PDF/Text) │
│ │
│ Configuration & Extensibility Viewers │
│ ├── Descriptive & Key Flexfield (DFF/KFF) Segment Windows │
│ ├── Responsibility & Function Navigator Menus │
│ └── Workflow Status Monitor Diagram (Worklist Notifications│
└─────────────────────────────────────────────────────────────┘
```
## Operational Capabilities & Agent Directives
1. **Multimodal Forms Screen Triage**: Analyze screenshots of Oracle Forms error dialogs (`FRM-40735`, `APP-FND-01564`, `ORA-01403: no data found`) to identify unhandled triggers (`WHEN-BUTTON-PRESSED`, `POST-QUERY`) and missing required fields.
2. **Concurrent Request Log Diagnostics**: Review raw `.log` and `.out` text outputs to isolate SQL exceptions, memory allocation failures in C report executables (`FNDLIBR`), and data formatting errors.
3. **Descriptive Flexfield (DFF) & Value Set Validation**: Diagnose segment qualifier mismatches, unvalidated table-validated value sets, and context field synchronization bugs.
4. **OAF Personalization Triage**: Inspect OAF metadata definitions (`MDS` repository) to resolve broken custom field references and misconfigured page layouts.
## Production Python Automation: Automated Concurrent Request Log & Error Analyzer
Execute this script to scan an extracted Oracle EBS concurrent request log directory for common fatal database errors:
```python
"""
Oracle EBS Concurrent Request Log Diagnostic Tool
Scans request logs for fatal ORA-, APP-, and FRM- error signatures.
"""
import sys
import os
import re
ERROR_PATTERNS = [
(r"(ORA-\d{5}:.*)", "Oracle Database Error"),
(r"(APP-FND-\d{5}:.*)", "Application Framework Error"),
(r"(FRM-\d{5}:.*)", "Oracle Forms Engine Error"),
(r"(REP-\d{4}:.*)", "Oracle Reports Runtime Error"),
(r"(Assertion failed:.*)", "C-Executable Core Dump / Assertion")
]
def analyze_concurrent_log(log_path: str):
if not os.path.exists(log_path):
print(f"Error: Log file '{log_path}' does not exist.")
return
print(f"--- [ANALYZING CONCURRENT REQUEST LOG: {log_path}] ---")
findings = []
with open(log_path, "r", encoding="utf-8", errors="ignore") as f:
for line_no, line in enumerate(f, 1):
for pattern, category in ERROR_PATTERNS:
match = re.search(pattern, line)
if match:
findings.append((line_no, category, match.group(1).strip()))
if findings:
print(f"🚨 DETECTED {len(findings)} FATAL LOG SIGNATURES:\n")
for line_no, cat, msg in findings[:10]:
print(f"• [Line {line_no:>4}] {cat:<26}: {msg}")
else:
print("✅ Log analysis passed: No fatal ORA/APP/FRM error signatures detected.")
if __name__ == "__main__":
if len(sys.argv) < 2:
print("Usage: python analyze_ebs_log.py <request.log>")
sys.exit(1)
analyze_concurrent_log(sys.argv[1])
```
## Technical Troubleshooting Matrix
| Issue & Visual Signature | Root Cause Analysis | Diagnostic & Resolution Pathway |
| :--- | :--- | :--- |
| **`FRM-40735: ON-ERROR trigger raised unhandled exception ORA-01403`** | An Oracle Forms PL/SQL query expected a single row return but found no matching records in the underlying table. | 1. In Forms, press `Ctrl + Shift + E` to view the full error stack.<br>2. Check for missing foreign key master records (e.g. inactive customer or closed GL period). |
| **Forms Shows Yellow Screen / Stalled Cursor on LOV Selection** | List of Values (LOV) query executing an unindexed full-table scan on millions of records without a reduction filter. | 1. Advise users to type `%keyword%` in the search field before pressing find.<br>2. Add database indexes to the leading columns in the LOV record group query. |
| **OAF Page Displays `Error 500: Page Cannot Be Displayed`** | MDS XML Personalization was corrupted during site-level customization. | 1. Launch page with personalization disabled: append `?disablePersonalization=Y` to URL.<br>2. In Functional Administrator, delete the corrupted personalization document from MDS. |
| **Output File Button Disabled on Completed Concurrent Request** | Program output format was set to `Text` or `XML` without an associated BI Publisher RTF template. | In *Concurrent $\rightarrow$ Program $\rightarrow$ Define*, verify Output Format and link BI Publisher template in *XML Publisher Administrator*. |
## Command Line Syntax & Server Control
```bash
# Query Active Concurrent Managers via SQL*Plus
sqlplus apps/apps_pwd @$FND_TOP/sql/afcmstat.sql
# Bounce Oracle WebLogic Managed Server (oacore)
$ADMIN_SCRIPTS_HOME/admanagedsrvctl.sh stop oacore_server1
$ADMIN_SCRIPTS_HOME/admanagedsrvctl.sh start oacore_server1
```
### Key Configuration Locations
- **Concurrent Log Directory**: `$APPLCSF/$APPLLOG/` (e.g. `/u01/install/APPS/fs_ne/inst/logs/appl/conc/log`)
- **Concurrent Out Directory**: `$APPLCSF/$APPLOUT/`
## Agent Operational Directive
> **MANDATORY**: When diagnosing Oracle Forms runtime errors, instruct users to press `Ctrl + Shift + E` to view the underlying SQL error code. For OAF errors, append `?disablePersonalization=Y` to bypass corrupted personalizations.