You Have 20 Years of SAP Data and Nobody Can Ask It a Question: GenAI on AWS Fixes That
How to use Amazon Q Business, Bedrock Knowledge Bases, and Bedrock Agents to let business users ask natural language questions against SAP financial, sales, and operational data. Covers three patterns: document intelligence, structured data analytics, and agentic actions.
There is a running joke in every SAP shop: the data is in there, but getting it out requires a developer, a functional consultant, and three weeks of lead time.
Need last quarter's sales by product line? Write a spec, get it prioritized, wait for development, test in QA, transport to production. Or learn to navigate SE16 and ABAP debugging. Either way, the business user who needed the answer two days ago already made a decision without it.
This is the problem generative AI on AWS actually solves for SAP customers. Not some futuristic vision. A working solution you can deploy today that lets business users ask plain English questions against SAP data and get real answers back.
The Core Idea
SAP stores structured data - sales orders, purchase orders, billing documents, inventory, financials. Historically, the only way to query this data was through SAP transactions (SE16N, SQVI, custom reports), BI tools (BW, Datasphere), or custom-built extraction pipelines.
With AWS GenAI services, you can now:
- Extract SAP data to a queryable store (Redshift, S3, or query in-place via OData)
- Connect a GenAI layer (Amazon Q Business or Amazon Bedrock)
- Let users ask natural language questions and get accurate, data-backed answers
No SQL. No ABAP. No three-week development cycle.
Two Approaches: Pick Your Pattern
Pattern 1: Amazon Q Business (Simplest)
Amazon Q Business is a fully managed GenAI assistant. You point it at your data sources, configure access controls, and users start asking questions.
How it works with SAP:
- Extract SAP data to Amazon S3 or Redshift (using AWS Glue zero-ETL, SAP Datasphere, or SLT)
- Connect Amazon Q Business to the data store
- Users ask questions through a chat interface, Slack, or Teams
Best for: Unstructured + structured queries. "Summarize our SAP Early Watch Report." "What were the top 5 revenue drivers last quarter?" "Show me customers with overdue invoices above $100K."
Real example from the field: A customer connected their SAP EarlyWatch Alert reports (PDF documents) to Amazon Q Business. Instead of reading 40-page reports manually, the Basis team asks: "What are the critical findings in the latest EarlyWatch report for our production system?" and gets a summarized answer with specific action items in seconds.
Pattern 2: Amazon Bedrock Knowledge Bases for Structured Data
This is the more powerful pattern for SAP financial and operational data.
Why this is different from RAG:
Regular RAG (Retrieval Augmented Generation) works by chunking text documents and finding relevant passages. That is great for policies, documentation, and contracts. But for structured SAP data - sales figures, inventory counts, financial postings - you need SQL-level precision, not "find a relevant text chunk."
Regular RAG (Retrieval Augmented Generation) works by chunking text documents and finding relevant passages. That is great for policies, documentation, and contracts. But for structured SAP data - sales figures, inventory counts, financial postings - you need SQL-level precision, not "find a relevant text chunk."
Amazon Bedrock Knowledge Bases for Structured Data does something different. It:
- Understands your database schema (tables, columns, relationships)
- Translates natural language to SQL
- Executes the query against Amazon Redshift
- Returns accurate, calculated results (not approximations)
Why Redshift and not just RAG?
- SAP data sets are huge (millions of rows). RAG does not scale to that.
- Financial calculations need to be exact. $47.3M in revenue is either right or wrong - there is no "approximately right" in finance.
- Redshift supports petabyte-scale analytics. Your 15 years of historical SAP data? No problem.
Pattern 3: Agentic AI for Actions, Not Just Answers
The first two patterns answer questions. This one takes actions.
Amazon Bedrock Agents can connect to SAP via OData APIs and do things:
- "Create a purchase order for 500 units of material X at plant 1000"
- "What is the status of sales order 4500012345? Notify the customer if it is delayed."
- "Check inventory for product ABC and raise a transfer order if below threshold"
How it works:
- Bedrock Agent receives natural language request
- Agent determines which action group (Lambda function) to invoke
- Lambda calls SAP OData service (API_SALES_ORDER_SRV, etc.)
- Agent returns result to user or chains to next action
You can expose this through Slack, Teams, or a custom Streamlit UI. Your procurement team asks a question in Slack, the agent queries SAP, and responds with the answer - all in the same chat window.
Combining All Three + The MCP Server
The most powerful setup combines all patterns:
- Document Intelligence: Amazon Q Business - Query SAP EarlyWatch reports, RFPs, contracts, policies
- Structured Analytics: Bedrock KB (Structured Data) + Redshift - Precise SQL queries against SAP financial/operational data
- Transactional Actions: Bedrock Agents + Lambda + OData - Create/update SAP objects, check status, trigger workflows
- Real-Time Operations: AWS for SAP MCP Server (AgentCore) - 20+ pre-built SAP operations via natural language
The AWS for SAP MCP Server on Bedrock AgentCore provides pre-built tools for common SAP operations without you needing to build Lambda functions for each one. CRUD on SAP business objects, system health checks, and configuration queries all come out of the box.
Use Cases That Are Working Today
- Finance Team: Revenue Analysis - "What were our top 10 customers by revenue in Q1 2026? Compare with Q1 2025 and flag any that declined more than 20%." Previously: 2-hour BW report development. Now: 10-second Bedrock query.
- Procurement: Spend Visibility - "Show me total spend by vendor category for the last 12 months. Which categories increased more than 15%?" Previously: Custom ABAP report. Now: Natural language query.
- Supply Chain: Inventory Alerts - "Which materials in plant 1000 are below safety stock? Create purchase requisitions for the top 5 most critical." Previously: MRP run review + manual PR creation. Now: Agent checks, identifies, and creates PRs automatically.
- Support/Basis: System Health - "Summarize all critical findings from our last three EarlyWatch reports. What recurring issues have not been addressed?" Previously: Manually reading 120 pages of PDF reports. Now: Q Business summarizes and highlights trends.
- Sales: Customer Intelligence - "List all open sales orders for customer ACME Corp with delivery dates in the next 30 days. Flag any at risk of delay based on current inventory." Previously: VA05 + cross-reference in MM60. Now: Agent checks both sales and inventory in one query.
Getting SAP Data Into AWS
You have options, and the right one depends on your volume, latency needs, and existing architecture:
- AWS Glue Zero-ETL (SAP OData): 15 min to 6 hours latency, High volume, Low complexity
- SAP Datasphere to S3/Redshift: Near real-time, Very high volume, Medium complexity
- SAP SLT (trigger-based): Real-time, High volume, Medium complexity
- Direct OData queries (federation): Real-time, Low-medium volume, Low complexity
- Custom ABAP + SDK for SAP ABAP: Batch, Any volume, Higher complexity
For most GenAI use cases, AWS Glue zero-ETL is the easiest starting point. You get data flowing in 15-minute increments with no custom code.
What I Recommend Starting With
- Pick one SAP module. Not five. One.
- Sales orders are a good start - well-structured, business users want to query them, and the OData APIs are standard.
- Set up Glue zero-ETL to Redshift. Takes an afternoon.
- Point Bedrock Knowledge Base at your Redshift tables. Configure the schema.
- Get your finance or sales lead to ask 10 questions they normally wait days to get answered.
- Then add procurement data, inventory, and move to agentic actions.
The technology stack is ready. The integration patterns are documented. The only question is whether you start now or wait for your competitor to figure it out first.
References
- Maximize SAP Data Value with Amazon Q Business and Bedrock GenAI, Part 1 (https://aws.amazon.com/blogs/awsforsap/maximize-the-value-of-your-sap-data-using-with-amazon-q-business-and-amazon-bedrock-genai-services-part-1/)
- Maximize SAP Data Value with Amazon Q Business and Bedrock GenAI, Part 2 (https://aws.amazon.com/blogs/awsforsap/maximize-the-value-of-your-sap-data-using-with-amazon-q-business-and-amazon-bedrock-genai-services-part-2/)
- Agentic AI Assistant for SAP with AWS Generative AI (https://aws.amazon.com/blogs/awsforsap/agentic-ai-assistant-for-sap-with-aws-genai/)
- General Availability of AWS for SAP MCP Server in Bedrock AgentCore (https://aws.amazon.com/about-aws/whats-new/2026/05/aws-sap-mcp-amazon-bedrock/)
- SAP Data Ingestion and Replication with AWS Glue Zero-ETL (https://aws.amazon.com/blogs/big-data/sap-data-ingestion-and-replication-with-aws-glue/)
- AWS AI Services for SAP (https://aws.amazon.com/sap/ai/)
Enjoyed reading this content? Let the author know!
Your likes, comments, shares, and saves help creators reach more builders.
Loading recommendations
Loading article