Skip to content

Medium SAP Interview Questions

102 medium questions with answers. Applied questions that check whether you can use the concepts on real work.

Topics in the medium set

Navigation: SAP GUI and Fiori: 14 Fiori and SAPUI5 Basics: 14 ERP and SAP Fundamentals: 13 S/4HANA Architecture and Landscape: 13 Organizational Structure and Master Data: 12 SAP Modules Overview: 12 Business Processes and Integration: 12 ABAP Basics: 12
Solved — mediumStart practicing
3 QUESTIONS FREESign up to unlock the full question bank and track your progress.Unlock every question and answer, then continue practising company-wise and package-wise.
3 questions free Unlock the rest in seconds
01

What do greenfield, brownfield and selective data transition mean in S/4HANA migration?

Save to ▾
Show answer
Greenfield is a fresh implementation: new processes are designed and only selected master data and open items are migrated. Brownfield is a system conversion of an existing ECC system to S/4HANA, keeping configuration, custom code and history. Selective data transition, sometimes called bluefield, is a mix where a new shell system is built and chosen data, company codes or years are moved. The choice depends on process quality, custom code volume, history needs and timeline.
02

What is a fit-gap or fit-to-standard analysis?

Save to ▾
Show answer
It compares business requirements against what standard SAP already offers. In fit-to-standard workshops the consultant demos the standard process in a best-practice system, and users confirm what fits, what needs configuration, and what is a real gap. Gaps are then solved by changing the process, by configuration, by a WRICEF development, or by a partner solution. The goal is to keep the core clean and avoid unnecessary custom code.
03

What does WRICEF stand for?

Save to ▾
Show answer
WRICEF lists the types of custom development in an SAP project: Workflows, Reports, Interfaces, Conversions, Enhancements and Forms. Some teams write RICEFW or add an extra letter for Fiori apps. Functional consultants write a functional specification for each object, and technical consultants build it and write a technical specification. Counting WRICEF objects helps estimate effort and track development during the Realize phase.
04

What is the clean core principle in S/4HANA?

Save to ▾
Show answer
Clean core means keeping the standard SAP system free of modifications so upgrades are fast and cheap. Extensions are built with released APIs and in-app extensibility (custom fields, custom logic, CDS views) or side-by-side on SAP BTP, instead of changing SAP objects or using unreleased tables. SAP also defines ABAP Cloud as the development model for clean core. It matters most for S/4HANA Cloud Public Edition, which allows only released interfaces.
05

What are the S/4HANA deployment options?

Save to ▾
Show answer
S/4HANA can run on-premise in the customer's data centre or a hyperscaler they manage, as S/4HANA Cloud Private Edition (usually sold through RISE with SAP, a single-tenant system managed by SAP), or as S/4HANA Cloud Public Edition (multi-tenant SaaS with quarterly updates and limited customization). On-premise and Private Edition allow classic extensions and full customizing, while Public Edition needs a clean core and standard processes.
06

What is RISE with SAP?

Save to ▾
Show answer
RISE with SAP is a subscription bundle that packages S/4HANA Cloud (mostly Private Edition), infrastructure on a hyperscaler such as AWS, Azure or Google Cloud, technical managed services, SAP BTP credits, and tools such as SAP Signavio for process insight. The customer pays one contract to SAP instead of buying licences, hardware and hosting separately. GROW with SAP is a similar offer focused on Public Edition for mid-size companies.
07

What is SAP BTP and how does it relate to S/4HANA?

Save to ▾
Show answer
SAP Business Technology Platform is SAP's cloud platform for integration, extension, data and analytics, and AI. With S/4HANA it is used to build side-by-side extensions, run SAP Integration Suite to connect SAP with other systems, host SAP Build apps and workflows, and use services such as SAP Datasphere and SAP Analytics Cloud. Using BTP keeps the S/4HANA core clean because custom apps run outside it.
08

A small manufacturer uses separate tools for accounts, stock and sales. How would you explain the benefit of moving to SAP?

Save to ▾
Show answer
I would show one process end to end. Today a sales person checks stock in one sheet, billing is typed into the accounts tool and stock is updated later, so numbers rarely match. In SAP, the sales order checks availability, the delivery reduces stock, and billing posts revenue and the customer receivable automatically. Management sees real-time stock and margin, GST invoices are consistent, and month-end closing takes days instead of weeks.
09

During fit-to-standard, a business user insists on a custom screen exactly like their old system. How do you handle it?

Save to ▾
Show answer
I first understand the real need behind the request, such as speed of entry or seeing a specific field. Then I show the standard Fiori app or transaction with personalisation, variants and layout options. If the gap still matters, I record it in the backlog with business value, and suggest a clean option such as a custom field or a small BTP app. I document the decision so the steering committee can approve or reject the effort.
10

You join a support project and get your first P1 ticket saying users cannot post invoices. What do you do?

Save to ▾
Show answer
I confirm impact and scope quickly: which users, company codes and transaction or app, and the exact error message with its message number. I try to reproduce in production with my display access or in quality with similar data. I check recent transports, period status, authorizations and system logs. I update the ticket and stakeholders every set interval, apply a workaround if possible, fix the root cause through proper change control, and write a short RCA.
11

What are the main test phases in an SAP project?

Save to ▾
Show answer
Unit testing checks each configuration or development object alone. System integration testing (SIT) runs end-to-end processes across modules such as procure to pay and order to cash, including interfaces. User acceptance testing (UAT) is done by business users to confirm the solution meets their needs. Regression testing checks existing processes after changes or upgrades. Performance and cutover rehearsals (mock runs) are also done before go-live.
12

What is cutover and what activities are part of a cutover plan?

Save to ▾
Show answer
Cutover is the move from the old system to the live SAP system. The plan lists every step with owner, timing and dependency: transport of final configuration, opening and closing posting periods, master data and open item loads with reconciliation, freeze of legacy transactions, user and role setup, interface switch-on, and a go or no-go checkpoint. Mock cutovers are rehearsed in advance and a rollback plan is kept ready.
13

Tell me about a time you had to explain an SAP issue to a non-technical business user.

Save to ▾
Show answer
Situation: a sales manager was upset that orders were blocked. Task: explain the cause without jargon. Action: I showed him in simple terms that the customer had crossed the credit limit, so the system stopped the delivery as designed, and walked through who can release it and how. Result: he understood the control, the finance team released valid orders faster, and we added a daily report so his team could see blocked orders early.
14

What is the Universal Journal in S/4HANA?

Save to ▾
Show answer
The Universal Journal is table ACDOCA, which stores all actual line items from Finance, Controlling, Asset Accounting and Material Ledger in one place. In ECC these were spread across many tables such as BSEG, COEP, FAGLFLEXA and ANEP with totals tables. With one table, FI and CO are reconciled by design, reporting reads line items directly, and month-end reconciliation work is greatly reduced.
15

What are the key simplifications in S/4HANA compared to ECC?

Save to ▾
Show answer
Main simplifications are: no aggregate and index tables in many areas, the Universal Journal for finance, Business Partner as the single master for customers and vendors, a simplified inventory table MATDOC, a longer 40-character material number option, new credit management, output management based on BRF+, and Fiori as the main user experience. SAP lists all these changes in the Simplification List for each release.
16

What are work processes in an SAP application server?

Save to ▾
Show answer
Work processes are the operating system processes that execute user and system requests. Dialog processes handle interactive steps, update processes write database changes asynchronously (V1 and V2), background processes run batch jobs, enqueue manages locks, and spool handles printing. The dispatcher assigns requests to free work processes. Basis checks them in SM50 or SM66, and long-running dialog steps often point to performance problems.
17

What is the role of the SAP Gateway and OData in S/4HANA?

Save to ▾
Show answer
SAP Gateway exposes SAP data and logic as OData services over HTTP. Fiori apps and external systems call these services to read and change business data. In S/4HANA, Gateway can run embedded in the same system or as a separate hub. Modern apps use OData V2 or V4 services generated from CDS views and the RAP framework, and services are activated in transaction /IWFND/MAINT_SERVICE.
18

What is the Simplification List and the Readiness Check?

Save to ▾
Show answer
The Simplification List documents every functional and technical change in an S/4HANA release, such as removed transactions, changed tables and mandatory replacements. The SAP Readiness Check is a tool that analyses an existing ECC system and reports which simplification items apply, custom code impact, add-on compatibility, data volume and sizing. Together they help a team estimate the effort and plan a conversion project.
19

What is the Software Update Manager and DMO?

Save to ▾
Show answer
SUM (Software Update Manager) is the Basis tool used to update SAP systems and to convert ECC to S/4HANA. DMO (Database Migration Option) is a SUM feature that combines the database migration to HANA and the software update in one run, so a customer on Oracle or DB2 can move to S/4HANA on HANA in a single downtime. Basis teams run test conversions several times before the production run.
20

What is the Migration Cockpit in S/4HANA?

Save to ▾
Show answer
The SAP S/4HANA Migration Cockpit (transaction LTMC in older releases, now the Migrate Your Data Fiori app) is the standard tool to load master and open item data in greenfield projects. It uses predefined migration objects such as customers, suppliers, materials, open AR and AP items and fixed assets, with staging tables or file templates. It validates data, maps values and posts through standard APIs, replacing older LSMW for most loads.
21

A transport moved to quality but the configuration is not visible there. What do you check?

Save to ▾
Show answer
I check the import log in STMS to confirm the request was imported without errors (return code 0 or 4). Then I confirm the change was saved in the right request and client, and whether it was client-specific customizing that needs a client copy or import into the specific QAS client. I also check for missing dependent transports, such as a new field or table that the configuration relies on, and object locks in another request.
22

Users complain that the system is slow every day at 10 a.m. How do you investigate?

Save to ▾
Show answer
I check what runs at that time: background jobs in SM37, active work processes in SM50 or SM66, and the workload monitor ST03N for response time breakdown between database, CPU and wait time. If heavy batch jobs overlap with peak dialog use, I reschedule them. If one report dominates, I trace it with ST12 or SQL trace ST05. I also check HANA memory and expensive statements with the DBA Cockpit or HANA cockpit.
23

How do you find which transport request contains a particular change?

Save to ▾
Show answer
For a repository object, open it in SE80 or SE11 and use Utilities then Versions to see version history with request numbers, or search the object in SE03 'Search for Objects in Requests'. For customizing, open the table or view in SM30, use Utilities then Change Logs if logging is active, or search the table key in SE03. Transport history in STMS shows when requests were imported into each system.
24

What steps do you follow to release and move a transport request?

Save to ▾
Show answer
In SE09 or SE10, check the objects and documentation in the task and request, run consistency and ATC checks if required, release the task, then release the request. Basis or the change management tool imports it into quality following the transport route. After testing and approval, it is imported into production in the agreed window. I record the request number against the ticket or change document for traceability.
25

How do you look at a background job that failed?

Save to ▾
Show answer
Open SM37, enter the job name, user and date range, and select Cancelled status. Select the job and open the job log, which shows messages and the point of failure. The spool list may show partial output. I then check the program variant, authorizations of the step user, locks, and short dumps in ST22 at that time. After fixing, the job can be rescheduled or repeated with the same variant.
26

Tell me about a time a transport caused a problem in production.

Save to ▾
Show answer
Situation: a pricing configuration transport went to production without a dependent condition table. Task: restore order processing quickly. Action: I identified the missing object from the import log, raised an emergency change with approval, moved the dependent request, and verified with test orders. Result: orders were working within an hour. I then introduced a transport dependency checklist and peer review before production moves, and we had no repeat issues.
27

What is the difference between a role, a catalog and a space in Fiori?

Save to ▾
Show answer
A business catalog groups apps that belong to a business area and controls which apps a user can access. A business role, built in PFCG, contains catalogs and gives authorizations. Spaces and pages control layout, meaning how tiles are arranged on the launchpad home. So catalogs and roles answer what the user can open, and spaces and pages answer how it appears.
28

What is a variant in SAP?

Save to ▾
Show answer
A variant saves a set of input values for a selection screen so users do not retype them. Report variants are used for daily reports and background jobs. Layout variants save column order, sorting, filters and totals in ALV lists. Transaction variants and screen variants can hide or default fields in a transaction. In Fiori, users save views and filter variants in list reports.
29

What is SAP GUI scripting and when is it used?

Save to ▾
Show answer
SAP GUI scripting is an automation interface that records and replays user actions in SAP GUI using VBScript or other languages. Teams use it for repetitive data entry, test automation and simple bots. It must be enabled on the server with profile parameter sapgui/user_scripting and on the client. Because it depends on screen layouts, it breaks when screens change, so APIs or Migration Cockpit are better for large loads.
30

What is the difference between SAP Easy Access menu and the IMG?

Save to ▾
Show answer
The SAP Easy Access menu is the user menu for daily business transactions, organised by area such as Logistics or Accounting. The IMG (Implementation Guide), opened with transaction SPRO, is the configuration tree used by consultants to set organisational units, document types, number ranges, pricing and other customizing. Business users rarely get SPRO access, and IMG changes are recorded in customizing transports.
31

What is ALV and why is it common in SAP reports?

Save to ▾
Show answer
ALV (ABAP List Viewer) is SAP's standard grid for displaying lists. It lets users sort, filter, subtotal, change columns, export to spreadsheet and save layouts without extra coding. Most standard and custom reports use ALV, and in Fiori the equivalent is the smart table in list report apps. Knowing how to use ALV layouts is a basic skill for any SAP user or consultant.
32

How do Fiori apps get their data from the back end?

Save to ▾
Show answer
A Fiori app is a SAPUI5 web app running in the browser. It calls an OData service exposed by SAP Gateway. The service reads or writes data through CDS views and the RAP framework or older SEGW-built classes, which access HANA tables. Authorization is checked on both the launchpad catalog and the back-end service and data level. Logs in /IWFND/ERROR_LOG help troubleshoot failed calls.
33

A user says a tile is missing from their Fiori launchpad. What do you check?

Save to ▾
Show answer
I check whether the user's business role contains the business catalog that holds the app, and whether that role is assigned and active in SU01 or PFCG. Then I confirm the tile is placed on a space and page assigned to the role or that the user can find it in app search. If the tile shows but fails, I check that the OData service is active and that the user has the back-end authorization. Clearing the launchpad cache can also help.
34

A user gets the message 'You are not authorized to use transaction'. How do you handle it?

Save to ▾
Show answer
I ask the user to run SU53 right after the error, which shows the failed authorization check, including object and missing value. I compare it with their roles in SU01. If the access is valid for their job, I raise an access request through the approved process so the security team adds the correct role, rather than giving direct access. I also check segregation of duties rules before approval.
35

A business team wants to hide some fields in a transaction they use daily. What options exist?

Save to ▾
Show answer
For SAP GUI transactions I can use transaction variants and screen variants (SHD0) to hide, default or make fields display-only, then assign a variant transaction code. For many documents, field status groups or field selection settings in customizing control required, optional or suppressed fields. For Fiori apps, key users can use adapt UI to hide fields. I choose the option that does not modify SAP code.
36

A Fiori app shows an error when opened. How do you troubleshoot?

Save to ▾
Show answer
I open the browser developer tools to see failing network calls and the HTTP code. Then in the back end I check /IWFND/ERROR_LOG on the gateway and /IWBEP/ERROR_LOG on the back end for the service error, ST22 for dumps, and SU53 for missing authorizations. I confirm the OData service is activated in /IWFND/MAINT_SERVICE and the ICF nodes are active in SICF. Finally I clear the cache and test again.
37

How do you export an ALV report to Excel and save a layout?

Save to ▾
Show answer
In the ALV toolbar, choose Export then Spreadsheet, select the format such as XLSX, and save the file. To save a layout, change columns, sorting and filters, then click Save Layout, give a name, and tick user-specific or default as needed. Next time, choose the layout from the dropdown. A default layout opens automatically, which helps teams share a common view.
38

How do you find which Fiori app replaces a classic transaction?

Save to ▾
Show answer
Open the SAP Fiori Apps Reference Library and search with the transaction code, such as ME21N. The results show matching apps with app ID, type, roles, catalogs and required back-end services. In the system, the Fiori launchpad content manager and the app search help find what is already active. Many classic transactions run as SAP GUI for HTML tiles when no native app exists.
39

How do you schedule a report to run in the background every night?

Save to ▾
Show answer
Create and save a variant for the report. In SM36 define a job name and class, add a step with the program and variant and a user with correct authorizations, and set the start condition as a date and time with periodic value daily. Save the job, then monitor it in SM37. In Fiori, the Application Jobs app does the same for job templates.
40

Tell me about a time you improved productivity for users.

Save to ▾
Show answer
Situation: accounts users spent an hour daily filtering an ALV report. Task: reduce manual effort. Action: I studied their steps, created report variants and saved layouts, scheduled the report in the background with email output, and trained the team. Result: the daily effort dropped to about ten minutes, and the team lead asked me to do the same for two other reports.
41

What is a purchasing organization and how can it be assigned?

Save to ▾
Show answer
A purchasing organization negotiates prices and conditions with suppliers and is responsible for procurement. It can be plant-specific (one per plant), company-code-specific (covering plants of one company code) or cross-company-code (central purchasing for many company codes, assigned only to plants). A purchasing group represents the buyer or team handling day-to-day purchasing activities.
42

What is a controlling area?

Save to ▾
Show answer
A controlling area is the organizational unit for internal cost accounting, where cost centers, internal orders and profit centers are maintained. One or more company codes are assigned to a controlling area, which needs the same operational chart of accounts and fiscal year variant. In S/4HANA, the controlling area currency and company code settings must align for the Universal Journal.
43

What is customer-vendor integration (CVI)?

Save to ▾
Show answer
CVI is the synchronisation framework that links Business Partners with the classic customer (KNA1, KNB1, KNVV) and vendor (LFA1, LFB1, LFM1) tables. In S/4HANA every customer and vendor must exist as a BP. In a brownfield conversion, CVI must be configured and all customers and vendors converted to BPs in ECC before the technical conversion, which is a major pre-conversion task.
44

What are the levels at which material master data is maintained?

Save to ▾
Show answer
Some data is at client level, such as material description, base unit and material group, and applies to all plants. Plant-level data includes MRP, purchasing, work scheduling and usually valuation. Storage-location-level data covers storage bin and picking area. Sales data is at sales organization and distribution channel level, and warehouse data at warehouse number level. This lets each unit control its own settings.
45

What is the difference between material type and industry sector?

Save to ▾
Show answer
Material type groups materials with the same business use, such as raw material (ROH), finished goods (FERT), semi-finished (HALB) and trading goods (HAWA). It controls which views are allowed, number range, price control and whether quantity and value are updated. Industry sector, such as mechanical engineering or retail, controls screen layout and field selection. Material type has the bigger impact on processes.
46

A company has two legal entities in India and one in Dubai. How would you design company codes?

Save to ▾
Show answer
I would create three company codes, one per legal entity, because each needs separate legal financial statements. The two Indian codes use INR, an Indian chart of accounts version with GST, and an April to March fiscal year. The Dubai code uses AED with UAE VAT and usually a January to December year. All three can share one controlling area if group reporting needs common cost accounting and settings allow it.
47

Sales orders keep picking a wrong price for a customer. What master data do you check?

Save to ▾
Show answer
I check the customer's sales area data in BP, such as pricing procedure indicator, price group and price list, and the material's sales data, such as material pricing group. Then I check condition records for the customer and material in the relevant condition types and validity dates. Finally I run the pricing analysis inside the sales order to see which condition was found and why others were skipped.
48

A new warehouse is opening. What organizational and master data changes are needed?

Save to ▾
Show answer
I decide whether it is a new plant or a new storage location in an existing plant, based on valuation, GST registration and MRP needs. If it is a plant, I create and assign it to the company code, purchasing and sales organizations, set up storage locations, extend material masters to the plant, update shipping points, pricing, tax and number ranges, and adjust roles and interfaces. Then I test procure to pay and order to cash for the site.
49

How do you extend an existing material to a new plant?

Save to ▾
Show answer
Use MM01 with the existing material number, select the views needed such as MRP, Purchasing, Storage and Accounting, and enter the new plant (and storage location). Fill the required data such as MRP type, valuation class and price control, and save. For many materials, a mass tool such as the Migration Cockpit or a custom LSMW-style load is used. MM03 confirms the views are created.
50

How do you view the assignment of organizational units in the system?

Save to ▾
Show answer
In SPRO under Enterprise Structure, Assignment, I can see assignments such as plant to company code, sales organization to company code and purchasing organization to plant. Transaction EC02 lists company codes, OX18 shows plant to company code, and OX10 maintains plants. Some teams also use the structure display report or a simple diagram to explain the setup to new members.
51

How do you find who changed a field in master data?

Save to ▾
Show answer
For Business Partner and customer or supplier data, use the change documents in the BP transaction or reports such as S_ALR_87012182 for customer changes and S_ALR_87012089 for supplier changes. For materials, MM04 shows change documents. Change documents show the old value, new value, user, date and time. They are stored in tables CDHDR and CDPOS, which auditors often ask about.
52

Describe a time you had to work with multiple departments on a master data issue.

Save to ▾
Show answer
Situation: material prices were wrong in sales because purchasing and finance maintained different views. Task: fix data and ownership. Action: I mapped which team owned each view, met both teams, agreed one owner per field and a weekly review, and corrected the affected records. Result: price-related tickets dropped sharply in the next quarter, and the ownership matrix became part of the master data policy.
53

What is SAP EWM?

Save to ▾
Show answer
SAP Extended Warehouse Management handles complex warehouse operations such as inbound, putaway strategies, picking waves, packing, cross-docking, yard management, labour management and RF devices. In S/4HANA it can run embedded in the same system or decentrally. Old Warehouse Management (WM) is not the target in S/4HANA, so many projects move warehouses to EWM or use simpler Stock Room Management.
54

What do SAP QM and PM do?

Save to ▾
Show answer
QM (Quality Management) plans and records inspections, for example at goods receipt or during production, using inspection plans, inspection lots, results recording and usage decisions, and manages quality notifications. PM (Plant Maintenance, now part of Asset Management) maintains equipment and functional locations through notifications, maintenance orders, preventive maintenance plans and costs. Both are important in manufacturing, pharma and process industries.
55

What is the role of SAP Project System (PS)?

Save to ▾
Show answer
PS manages projects such as capital investments, construction or engineer-to-order products. It uses Work Breakdown Structure (WBS) elements for cost and revenue planning and networks with activities for scheduling. Actual costs from purchasing, time and materials are collected on WBS elements, and results analysis and settlement move costs to assets or profitability. It integrates closely with FI, CO, MM and PP.
56

What is the difference between SAP BW, SAP Datasphere and embedded analytics?

Save to ▾
Show answer
Embedded analytics uses CDS views inside S/4HANA for real-time operational reporting on live data. SAP BW/4HANA is an on-premise enterprise data warehouse for historical, cross-system reporting. SAP Datasphere is the cloud data warehouse and data fabric on BTP that combines SAP and non-SAP data with business semantics. Many companies use embedded analytics for daily work and Datasphere or BW for group reporting.
57

What is SAP Analytics Cloud?

Save to ▾
Show answer
SAP Analytics Cloud (SAC) is SAP's cloud tool for business intelligence, planning and predictive analytics. It connects live to S/4HANA, BW or Datasphere, or imports data, to build stories and dashboards. Finance teams use its planning features for budgets and forecasts. It is commonly used for management dashboards because it combines reporting and planning in one interface.
58

What is SAP Basis?

Save to ▾
Show answer
SAP Basis is the technical administration of SAP systems. Basis consultants install systems, apply support packages and upgrades, manage transports, clients and system copies, monitor performance, jobs and work processes, handle backups and HANA database tasks, and often manage users and security roles. In cloud setups such as RISE, many Basis tasks move to SAP or the hyperscaler, but customers still need Basis skills.
59

A fresher asks which SAP module to choose. How would you guide them?

Save to ▾
Show answer
I would match the module to their background and interest. Commerce, accounting or CA students fit FICO. Supply chain, mechanical or operations graduates fit MM, PP or EWM. Those who like selling processes fit SD. Coders fit ABAP or Fiori development, and system-oriented people fit Basis or security. I would also suggest first learning S/4HANA basics, then one module deeply, plus integration with its neighbour modules.
60

A company wants better warehouse control with RF scanners. Which SAP options would you discuss?

Save to ▾
Show answer
I would discuss embedded EWM in S/4HANA for scanner-based putaway, picking and packing with strategies and storage bin control, and decentral EWM if the warehouse is very large or must run independently. For simpler sites, inventory management with storage locations and Stock Room Management may be enough. The choice depends on volume, complexity, automation and budget.
61

Management wants real-time sales dashboards from S/4HANA. Which tools would you suggest?

Save to ▾
Show answer
For operational KPIs I would start with embedded analytics: standard analytical Fiori apps and custom analytical queries on CDS views, which show live data. For management dashboards with charts and drill-down, I would connect SAP Analytics Cloud live to S/4HANA. If they need to combine data with non-SAP sources or long history, I would add SAP Datasphere. This avoids extracting data unnecessarily.
62

What are some key tables in core SAP modules?

Save to ▾
Show answer
Finance: ACDOCA (Universal Journal), BKPF (document header), BSEG (entry view items), SKA1 and SKB1 (GL accounts). MM: MARA (material general), MARC (plant data), EKKO and EKPO (purchase orders), MATDOC (material documents). SD: VBAK and VBAP (sales orders), LIKP and LIPS (deliveries), VBRK and VBRP (billing). Business Partner: BUT000. Knowing them helps in debugging and reporting.
63

How do you read an SAP Note and decide if it applies?

Save to ▾
Show answer
An SAP Note describes a problem, solution, affected releases and support packages, and prerequisites. I search notes in SAP for Me using the error message, component and keywords, then check the validity section against our release and support pack level. If it applies, I use SNOTE to download and implement correction instructions in development, test it, and transport. For manual steps, I follow them exactly and document them.
64

Tell me about a time you learned a new module quickly for a project.

Save to ▾
Show answer
Situation: my project needed someone to support QM after a colleague left. Task: become useful in two weeks. Action: I studied inspection lot flow on the sandbox, read the configuration documents, shadowed the business quality team and listed common tickets. Result: within three weeks I was solving routine QM tickets, and the client lead appreciated that support continued without delay.
65

What is document flow in SAP?

Save to ▾
Show answer
Document flow shows all documents linked in a process chain, such as quotation, sales order, delivery, goods issue, invoice and accounting document. In SD transactions it is shown with the Display Document Flow button, and in Fiori as related documents or a process flow. It helps users and consultants see the status of each step and quickly find where a process is stuck.
66

What is automatic account determination and why is it important for integration?

Save to ▾
Show answer
Automatic account determination is configuration that tells SAP which GL accounts to post when a logistics transaction happens, so users never enter accounts manually. MM uses transaction keys such as BSX for stock and WRX for GR/IR in OBYC, based on valuation class and movement type. SD uses VKOA for revenue accounts. Errors here are a common cause of integration failures and wrong financial results.
67
Save to ▾
Show answer
An IDoc (Intermediate Document) is SAP's standard format for exchanging data asynchronously between systems. It has a control record, data segments and status records. IDocs are sent through ALE and partner profiles (WE20) with ports (WE21). Common message types include ORDERS for purchase orders, INVOIC for invoices and MATMAS for materials. They are monitored in WE02 or WE05, and BD87 reprocesses errors.
68

What are the main integration technologies used with S/4HANA?

Save to ▾
Show answer
S/4HANA integrates through OData and REST APIs, SOAP web services, IDocs, RFC and BAPIs, and events through SAP Event Mesh or Advanced Event Mesh. Middleware such as SAP Integration Suite (Cloud Integration) or older SAP PI/PO maps and routes messages. The SAP Business Accelerator Hub (api.sap.com) lists released APIs. Modern projects prefer released APIs and events over direct table access.
69

What is a BAPI and how is it different from a normal function module?

Save to ▾
Show answer
A BAPI (Business Application Programming Interface) is a standardised, remote-enabled function module for a business object, such as BAPI_PO_CREATE1 or BAPI_SALESORDER_CREATEFROMDAT2. It has stable interfaces, returns messages in a RETURN table, and usually needs BAPI_TRANSACTION_COMMIT to save. Unlike internal function modules, BAPIs are documented and released for external use, which makes them safer for integration.
70

What is intercompany sales or stock transfer in SAP?

Save to ▾
Show answer
When one company code sells or transfers goods to another in the same group, SAP supports intercompany processes. For a stock transport order, the receiving plant creates a PO, the supplying plant delivers and posts goods issue, intercompany billing posts revenue in the supplying company code, and the receiving company code books the supplier invoice, often through IDocs. Elimination happens later in group reporting.
71

Goods receipt fails with an error that an account is missing. How do you approach it?

Save to ▾
Show answer
I read the full message, which usually names the transaction key, chart of accounts and valuation class, for example account determination for entry BSX not possible. I check the material's valuation class in the accounting view and OBYC settings for that key and valuation grouping. If the configuration is missing for a new valuation class or plant, I add it in development, test, and transport. Often the master data is the real issue.
72

Inbound purchase order IDocs from a customer are failing in status 51. What do you do?

Save to ▾
Show answer
Status 51 means application error. I open the IDoc in WE02, read the status message, and check the data segments, for example an unknown customer material number, missing partner function or invalid pricing. I correct master data or mappings, then reprocess the IDoc with BD87. If many fail, I find the common cause, inform the sender if the data is wrong, and add monitoring alerts.
73

An invoice is blocked for payment after MIRO. Why might this happen and how is it released?

Save to ▾
Show answer
It is usually blocked because of tolerance limits, for example price or quantity differences between PO, goods receipt and invoice, or a manual payment block. I check the blocking reason on the invoice. After the buyer confirms the price or quantity or the goods receipt is posted, the invoice is released with MRBR or the Release Blocked Invoices app. Tolerance keys are configured in OMR6.
74

How do you trace a sales invoice to its accounting document?

Save to ▾
Show answer
Open the billing document in VF03 and use the Accounting button, which shows the accounting document, profitability and other documents created. From the sales order, document flow in VA03 shows all subsequent documents. If accounting was not created, the billing has a posting status error, usually account determination; VFX3 lists billing documents not released to accounting so they can be checked and released.
75

How do you monitor interfaces in an S/4HANA landscape?

Save to ▾
Show answer
For IDocs I use WE02, WE05 and BD87, with filters by status and message type. For RFC queues I use SM58, SMQ1 and SMQ2. For web services, SRT_MONI and SRT_UTIL. In S/4HANA, the Message Monitoring app and Application Interface Framework (AIF) give business-friendly monitoring with error reprocessing. In SAP Integration Suite, message processing logs show each flow. Alerts reduce manual checking.
76

Tell me about a time you solved a cross-module issue.

Save to ▾
Show answer
Situation: invoices were posting to the wrong revenue account for a new product line. Task: find the cause across SD and FI. Action: I traced the billing document, found that the new materials had no account assignment group, and the VKOA entry was missing for the new combination. I fixed master data, added configuration through a transport, and reposted documents with finance. Result: correct revenue from that day and no audit issue.
77

What are the ways to enhance standard SAP without modifying it?

Save to ▾
Show answer
Options include user exits and customer exits (older), BAdIs (Business Add-Ins, classic and new kernel-based), implicit and explicit enhancement points, and in S/4HANA, key user extensibility with custom fields and custom logic in Fiori apps. Developer extensibility uses released objects and ABAP Cloud. Modifications through the modification assistant are the last resort because they must be checked at every upgrade.
78

What are CDS views?

Save to ▾
Show answer
Core Data Services views are data models defined in ABAP using DDL (in ADT, the Eclipse-based ABAP Development Tools). They support joins, associations, calculations, aggregations, annotations for UI and analytics, and access control with DCL. In S/4HANA they are the base for Fiori apps, analytics and APIs. Newer CDS view entities (DEFINE VIEW ENTITY) replace older DDIC-based CDS views and push logic to HANA.
79

What is the code pushdown concept?

Save to ▾
Show answer
Code pushdown means moving data-intensive logic from the ABAP application server to the HANA database, so calculations happen close to the data and only results travel. Techniques include CDS views, ABAP SQL with aggregations and expressions, and AMDP (ABAP Managed Database Procedures) written in SQLScript. Instead of selecting millions of rows and looping in ABAP, the database filters and aggregates, which improves performance a lot.
80

Write a simple ABAP report that reads purchase orders for a vendor and displays them in ALV.

Save to ▾
Show answer
Select header data with modern ABAP SQL into an inline table, then show it with the SALV class. REPORT zpo_list. PARAMETERS p_lifnr TYPE lifnr OBLIGATORY. START-OF-SELECTION. SELECT ebeln, bukrs, bedat, lifnr FROM ekko WHERE lifnr = @p_lifnr INTO TABLE @DATA(lt_po). TRY. cl_salv_table=>factory( IMPORTING r_salv_table = DATA(lo_alv) CHANGING t_table = lt_po ). lo_alv->display( ). CATCH cx_salv_msg. MESSAGE 'ALV error' TYPE 'E'. ENDTRY.
81

How do you read a single row from an internal table using modern ABAP syntax?

Save to ▾
Show answer
Use a table expression with a TRY block, or READ TABLE with a key. For sorted or hashed tables use the key for fast access. TRY. DATA(ls_po) = lt_po[ ebeln = '4500000010' ]. CATCH cx_sy_itab_line_not_found. " row not found ENDTRY. READ TABLE lt_po INTO DATA(ls_row) WITH KEY ebeln = '4500000010'. IF sy-subrc = 0. " found ENDIF.
82

Write a basic CDS view entity that shows sales order items with their header data.

Save to ▾
Show answer
A view entity joins header and item with an association and exposes fields with aliases. @AccessControl.authorizationCheck: #CHECK @EndUserText.label: 'Sales order items' define view entity ZI_SalesOrderItem as select from vbap as Item association [1..1] to vbak as _Header on $projection.SalesOrder = _Header.vbeln { key Item.vbeln as SalesOrder, key Item.posnr as SalesOrderItem, Item.matnr as Material, Item.kwmeng as OrderQuantity, _Header.kunnr as SoldToParty, _Header }
83

How do you avoid SELECT inside a LOOP in ABAP?

Save to ▾
Show answer
Read all needed rows once with a join or FOR ALL ENTRIES, then read from the internal table in the loop. SELECT ebeln, ebelp, matnr FROM ekpo WHERE ebeln IN @s_ebeln INTO TABLE @DATA(lt_items). IF lt_items IS NOT INITIAL. SELECT matnr, maktx FROM makt FOR ALL ENTRIES IN @lt_items WHERE matnr = @lt_items-matnr AND spras = @sy-langu INTO TABLE @DATA(lt_text). ENDIF. SORT lt_text BY matnr. Always check the driver table is not empty before FOR ALL ENTRIES.
84

How do you debug an ABAP program?

Save to ▾
Show answer
Set a breakpoint in the code (session or external breakpoint for web and Fiori calls), or type /h before executing. In the debugger, use single step (F5), execute (F6), return (F7) and continue (F8), watch variables, change values for testing, and view internal tables. Watchpoints stop when a variable changes. In ADT, the Eclipse debugger offers the same. Never change values in production without approval.
85

A functional consultant needs a new field on the purchase order screen. How would you deliver it cleanly?

Save to ▾
Show answer
In S/4HANA I would first try key user extensibility with the Custom Fields app, which adds the field to the database, Fiori UI, CDS views and APIs without code. If logic is needed, I use the Custom Logic app or a released BAdI. Only if these do not cover the case would I use classic enhancement such as a screen enhancement in ME21N. I document the choice for upgrade safety.
86

A program dumps in production with a TIME_OUT error. What do you do?

Save to ▾
Show answer
I check ST22 for the dump details, program, line and call stack. TIME_OUT means a dialog step exceeded the allowed run time (rdisp/max_wprun_time). I see if users ran it with very wide selections, and advise background execution as an immediate workaround. Then I trace the code with ST05 and SAT in quality with similar data, fix inefficient selects or loops, and move the fix through transports.
87

The business needs a nightly interface file of open sales orders. How would you build it?

Save to ▾
Show answer
I would write a report that selects open orders using a CDS view or ABAP SQL with proper filters, formats the data to the agreed layout, and writes the file to an application server directory or sends it through SAP Integration Suite. I would add a selection screen with variants, logging with the application log (SLG1), error notifications, and schedule it in SM36 or Application Jobs. Testing covers volume and format checks.
88

Describe how you handle code reviews.

Save to ▾
Show answer
Situation: our team had frequent production defects. Task: improve quality without slowing delivery. Action: I introduced a simple checklist covering naming, performance, error handling and ATC checks, and paired review for every transport. I kept comments respectful and focused on code, not people. Result: production defects from custom code dropped noticeably over two quarters, and juniors learned faster from review comments.
89

What are SAP Fiori elements?

Save to ▾
Show answer
Fiori elements are predefined floor plans, such as List Report, Object Page, Analytical List Page, Overview Page and Worklist, that generate the UI from metadata. The developer provides an OData service and CDS annotations describing fields, line items and facets, and the framework renders a consistent app with little JavaScript. This speeds development and keeps apps consistent and upgrade-safe compared to freestyle SAPUI5.
90

What is the difference between freestyle SAPUI5 and Fiori elements apps?

Save to ▾
Show answer
Fiori elements apps are generated from annotations and templates, so they are quick to build, consistent and maintained by SAP when the framework improves, but layout freedom is limited to what floor plans and extensions allow. Freestyle SAPUI5 apps are coded by hand with full control over UI and behaviour, useful for special screens, dashboards or custom interactions, but they need more development and maintenance effort.
91

What is SAP Business Application Studio?

Save to ▾
Show answer
SAP Business Application Studio (BAS) is a cloud development environment on SAP BTP based on Code-OSS. It offers dev spaces with SAP Fiori tools, generators for Fiori elements and freestyle apps, CAP development, service connections through BTP destinations, a preview with mock data, and deployment to the ABAP repository or BTP. Developers can also use VS Code with the same Fiori tools extensions locally.
92

What is the role of annotations in Fiori elements?

Save to ▾
Show answer
Annotations are metadata that tell Fiori elements how to show data: UI.LineItem defines table columns, UI.SelectionFields define filter fields, UI.HeaderInfo sets the object title, UI.Facets and FieldGroups lay out the object page, and value help annotations add F4 help. They can be written in CDS views in the back end or in a local annotation file in the app. Changing annotations changes the UI without code.
93

What is key user extensibility in Fiori?

Save to ▾
Show answer
Key user extensibility lets trained business users adapt apps without developers. With Adapt UI they can move, hide or rename fields and groups. With apps such as Custom Fields and Custom Logic they can add new fields to business objects, show them in apps, reports and APIs, and add simple logic in released BAdIs. Changes are transported through the Export Software Collection or adaptation transport organizer.
94

Show a simple CDS annotation setup for a Fiori elements list report.

Save to ▾
Show answer
Annotations on a projection view define the table columns and filters. @UI.headerInfo: { typeName: 'Sales Order', typeNamePlural: 'Sales Orders' } define view entity ZC_SalesOrder as projection on ZI_SalesOrder { @UI.lineItem: [{ position: 10 }] @UI.selectionField: [{ position: 10 }] key SalesOrder, @UI.lineItem: [{ position: 20 }] @UI.selectionField: [{ position: 20 }] SoldToParty, @UI.lineItem: [{ position: 30 }] NetAmount, TransactionCurrency }
95

What steps are needed to activate a standard Fiori app in S/4HANA on-premise?

Save to ▾
Show answer
Check the app in the Fiori Apps Reference Library for required OData services, ICF nodes, catalogs and roles. Activate the OData service in /IWFND/MAINT_SERVICE or /IWFND/V4_ADMIN for V4, activate the UI5 ICF node in SICF, copy the SAP business role template in PFCG, add authorizations, assign it to users, and check spaces and pages. Rapid content activation in task list SAP_FIORI_CONTENT_ACTIVATION automates many steps.
96

How do you generate a Fiori elements app with SAP Fiori tools?

Save to ▾
Show answer
In Business Application Studio or VS Code, open the Fiori application generator, choose a floor plan such as List Report Page, select the data source by connecting to a system or BTP destination and picking the OData service, choose the main entity and navigation, enter project details, and generate. Then preview with live or mock data, add annotations with the guided development tool, and deploy to the ABAP repository.
97

How do you deploy a custom Fiori app to the launchpad?

Save to ▾
Show answer
Build and deploy the app from BAS or VS Code to the ABAP repository as a BSP application with a transport. Create a launchpad app descriptor with semantic object and action, add it as a tile or target mapping in a custom business catalog using the Fiori launchpad app manager or designer, put the catalog in a business role in PFCG with the needed OData authorizations, assign spaces and pages, and test with a user.
98

Users ask for an extra column in a standard Fiori list report. What are your options?

Save to ▾
Show answer
Users can first check the table settings, because many fields are available but hidden. If the field exists in the service but not the UI, a key user can use Adapt UI or a developer can add an app variant or annotation extension. If the field does not exist, the Custom Fields app can add it and enable it for the app. A custom app is the last option.
99

An approval Fiori app shows no items even though workflows exist. What do you check?

Save to ▾
Show answer
I check that workflow items are actually assigned to the user in the inbox, using workflow logs in SWIA or the Manage Workflows app. Then I confirm the user has the My Inbox app role and back-end authorization, the OData services for the task gateway are active, and the task definitions are registered for the inbox scenario. Substitution rules and outdated cache can also hide items.
100

After an upgrade, a custom Fiori app stopped working. How do you investigate?

Save to ▾
Show answer
I check the browser console and network calls for errors, then the gateway error logs. Upgrades often change the SAPUI5 version, so I look for deprecated controls or APIs, and check if the back-end service or CDS view changed. I test in quality with the UI5 support assistant, fix deprecated code, update the manifest's minimum UI5 version, and redeploy. Regular upgrade testing prevents surprises.
101

A new user finds Fiori confusing compared to SAP GUI. How do you help?

Save to ▾
Show answer
I show them their launchpad layout and the few apps they need, how to search apps, use filters and save views, and how list report and object page work together. I compare one familiar transaction with its Fiori app side by side. A short quick reference guide and a follow-up after a week usually build confidence, and their feedback helps improve role design.
102

How do you keep your SAP skills up to date?

Save to ▾
Show answer
Situation: SAP releases changes every year, and cloud products update quarterly. Task: stay current while working full time. Action: I follow SAP Community blogs and release notes, use SAP Learning Hub or free learning journeys, practice in a trial BTP account, and earn a certification every year or two. Result: I was the first in my team to work on RAP and Fiori elements, which helped us win a new extension project.

Frequently asked questions

Who should practise medium SAP questions?

Anyone with some hands-on practice: most real interview time is spent on medium questions like these.

How should I practise these?

Answer each question aloud before opening the answer, mark it as solved only when your answer matches the key idea, and save misses to Last-Minute Revision.

Other difficulty levels