You’re experiencing the classic three-step gap in getting flexfields into OTBI dashboards. Let me provide the complete end-to-end solution covering flexfield deployment, OTBI metadata sync, and data model mapping.
First, flexfield deployment for BI: While you’ve created the descriptive flexfields and they’re working transactionally, they need explicit BI enablement. Navigate to Setup and Maintenance > Search ‘Manage Descriptive Flexfield Configurations for Supply Chain Management’. Find the ‘Item’ context (EGP_SYSTEM_ITEMS_B is the underlying table). Locate your three custom attributes: shelf life category, storage temperature requirements, and hazmat classification. For each attribute, click ‘Edit’ and scroll to the ‘Business Intelligence’ section. Enable three specific settings: (1) ‘Displayed in BI’ - makes the field visible, (2) ‘Available for Analysis’ - includes it in subject areas, and (3) ‘Enable Drill’ - allows drill-down functionality. Save each attribute. This step is critical because flexfields default to transactional-only visibility.
Second, OTBI metadata sync - the multi-stage process: The Incremental BI Repository Sync you ran is only the first stage. You need to run three jobs in sequence: (1) ‘Incremental BI Repository Sync’ - you’ve done this, it pulls the flexfield metadata from the application to the BI catalog. (2) ‘Rebuild Analytics Indexes’ - this is the step most people miss. Navigate to Scheduled Processes, search for ‘Rebuild Analytics Indexes’ and run it with parameters: Object Type = ‘Flexfield’, Object Name = ‘EGP_SYSTEM_ITEMS_B_DFF’. This rebuilds the dimensional indexes that OTBI uses for query optimization. (3) ‘Refresh Subject Area Metadata’ - run this specifically for the ‘Inventory Management - Items’ subject area. This propagates the changes to the presentation layer where users build reports.
Third, data model mapping verification: Even after successful sync, the flexfield attributes might not appear if the data model joins aren’t properly configured. Log into Analytics as an administrator, navigate to Administration > Manage Repository Metadata. Download the current RPD (Repository) file for inspection. Open it with the BI Administration Tool (you’ll need BI Desktop Tools installed). In the Physical layer, verify that the table ‘EGP_SYSTEM_ITEMS_B’ has the three flexfield columns: ATTRIBUTE1 (shelf life category), ATTRIBUTE2 (storage temperature), ATTRIBUTE3 (hazmat classification) - the actual column names depend on your flexfield configuration. Move to the Business Model layer, expand ‘Inventory Management - Items’ logical table. Your flexfield attributes should appear here with descriptive names. If they’re missing, right-click the logical table, select ‘Add Logical Column’, and map each to the corresponding physical column. Set appropriate data types and display names. Finally, in the Presentation layer, ensure the attributes are exposed in a user-friendly folder like ‘Items - Custom Attributes’.
Fourth, cache clearing and session refresh: OTBI caches subject area metadata aggressively. After completing the above steps, you must clear multiple cache layers: (1) Navigate to Analytics > Administration > Manage Sessions and Cache, click ‘Clear All Cache’ - this clears server-side BI cache. (2) Have all users completely close their browsers (not just log out) to clear client-side cache. (3) Wait 15 minutes for the cache refresh cycle to complete. (4) When users log back in, they should see the three custom attributes in the Items subject area under a folder named ‘Items Extension’ or ‘Items Custom Attributes’.
Fifth, validation and troubleshooting: If attributes still don’t appear, check the BI Server log for metadata load errors. Navigate to Analytics > Administration > View Logs > BI Server Log. Search for ‘EGP_SYSTEM_ITEMS’ and look for any ERROR or WARNING messages related to flexfield loading. Common issues include: (1) Attribute display names containing special characters that break XML parsing - rename them to alphanumeric only. (2) Data type mismatches between physical and logical layers - ensure VARCHAR fields aren’t mapped as INTEGER. (3) Security restrictions on flexfield attributes - verify in Security Console that your user role has view access to the specific flexfield context.
In 24A specifically, there’s an enhancement where flexfields marked ‘Available for Analysis’ should auto-populate into OTBI within 24 hours via a scheduled metadata refresh job. However, this automated process is unreliable for newly added flexfields. The manual three-job sequence I outlined above is the guaranteed approach. After your initial setup, future flexfield additions should flow through more smoothly as the framework recognizes the extension pattern.