A stakeholder in a fresh S/4HANA system asks for a report showing profit-center-level balances on every FI document in real time, including balance-sheet items like receivables and cash. Before agreeing, which configuration prerequisite is the SINGLE most decisive one to verify?
- A. That the leading ledger 0L has a parallel currency configured for the group currency
- B. That document splitting is active with Profit Center as a splitting characteristic and zero-balance clearing is set for the profit center ✓
- C. That the Universal Journal (ACDOCA) is being used instead of the classic totals table GLT0
- D. That real-time integration between CO and FI (variant assignment) is switched on for the company code
Correct answer: B. Document-level, balance-sheet-complete profit center reporting requires active document splitting with Profit Center as a splitting characteristic and zero-balance clearing so every document balances by profit center.
During a brownfield conversion, SI checks flag customer/vendor masters not yet mapped to Business Partners. A team member proposes just running the customer/vendor tables forward untouched to save effort. What is the accurate consequence of skipping the BP conversion (Customer/Vendor Integration) before the technical conversion?
- A. The conversion completes but FI postings to those customers/vendors will silently post to a default reconciliation account
- B. The system conversion (SUM/DMO) is blocked because CVI/BP is a mandatory pre-conversion activity in S/4HANA ✓
- C. Nothing breaks initially, but new sales orders cannot be created until BP is retrofitted post go-live
- D. Only the CO side is affected because the BP model replaces cost-center-linked partner functions
Correct answer: B. In S/4HANA the Business Partner is the single point of entry for customer/vendor master data, so CVI synchronization is a mandatory pre-conversion prerequisite that blocks the conversion if incomplete.
A custom ABAP report loops over 50,000 sales order headers (VBAK) and inside the loop issues a SELECT SINGLE against VBAP for each. ST05 shows tens of thousands of identical-shaped DB accesses. Which rewrite gives the biggest, most correct performance improvement on HANA?
- A. Add an index hint to the inner SELECT so HANA uses the primary key
- B. Buffer VBAP as a fully-buffered table in SE11 so accesses hit the table buffer
- C. Replace the loop-driven singles with a single SELECT ... FOR ALL ENTRIES IN @vbak_itab (or a CDS view with a JOIN) and read the internal table ✓
- D. Wrap the inner SELECT in a PACKAGE SIZE cursor to reduce memory pressure
Correct answer: C. The classic SELECT-in-loop antipattern is fixed by set-based access — one FOR ALL ENTRIES / JOIN / CDS view — which pushes the work to the database and eliminates thousands of round trips.
A live sales order shows an incorrect net price because a newly created condition type was placed with the wrong access sequence in the pricing procedure. You must fix pricing for NEW orders without disturbing net values on existing, already-saved orders. Which approach is production-safe?
- A. Correct the access sequence/pricing procedure config, then let existing orders keep their stored condition values since pricing is only re-read on a manual new pricing (carry-out) action ✓
- B. Run report to mass-update the condition records, which automatically reprices all open and closed orders
- C. Delete the faulty condition type from the pricing procedure so all documents recalculate cleanly on next display
- D. Change the condition record validity dates, which retroactively corrects saved order values
Correct answer: A. Pricing results are persisted on the document; fixing the procedure/access sequence affects only newly created or explicitly repriced orders, leaving existing saved values untouched unless a new pricing type is triggered.
You define a CDS analytical query and need row-level authorization enforced so users only see their own controlling area's data, without coding AUTHORITY-CHECK in every consumer. Which mechanism is the correct, framework-native way?
- A. Add @Consumption.filter annotations on the controlling area field
- B. Implement a DCL (Data Control Language) source with a PFCG_AUTH grant on the CDS entity ✓
- C. Set @AccessControl.authorizationCheck: #NOT_REQUIRED and rely on OData scopes
- D. Use a @VDM.viewType: #CONSUMPTION annotation which auto-applies S_TABU_DIS checks
Correct answer: B. CDS row-level authorization is declared in a separate DCL source that binds authorization objects (PFCG_AUTH) to the entity, enforced automatically whenever the view is queried.
A goods issue for a delivery (movement type 601) posts the material document but the accounting document fails with 'account determination error'. Tracing the config, where does the missing entry most precisely live, and which transaction points to it?
- A. Missing GL account in the pricing procedure; check V/08
- B. Missing account assignment for the transaction key GBB (offsetting entry for goods movement) in OBYC ✓
- C. Missing cost element for the consumption account in KA01
- D. Missing movement type-to-schedule-line linkage in VOV6
Correct answer: B. A 601 goods issue triggers automatic account determination via OBYC, and the offsetting/consumption posting is driven by transaction key GBB (with the relevant account grouping), so a missing GBB entry causes the account determination error.
When would an AMDP (ABAP Managed Database Procedure) be the correct choice OVER a CDS view for pushing logic to HANA?
- A. When the logic is a simple filtered projection with an association to another entity
- B. When you need imperative, multi-step SQLScript logic with intermediate table variables, loops, or procedural control that declarative CDS cannot express ✓
- C. When you want the result automatically exposed as an OData service for Fiori
- D. When you need the data model to be transportable and consumable across ABAP and analytics layers
Correct answer: B. CDS is declarative; AMDP is chosen when you need imperative SQLScript — intermediate result sets, procedural steps, or algorithmic logic — that a single declarative CDS view cannot represent.
Two questions into a migration discussion, a candidate keeps saying 'we handled the split.' Technically, in New GL document splitting, what distinguishes ACTIVE splitting from PASSIVE splitting?
- A. Active splitting occurs in real time while passive splitting runs during month-end batch
- B. Passive splitting inherits account assignments from a referenced/cleared document (e.g., a payment inheriting the invoice's split), while active splitting derives them via configured splitting rules on the original document ✓
- C. Active splitting applies only to P&L accounts and passive only to balance-sheet accounts
- D. Passive splitting requires zero-balance clearing whereas active splitting does not
Correct answer: B. Passive split propagates account assignments from the originally split (referenced) document such as a clearing/payment, whereas active split newly derives them from configured splitting rules based on item categories.
An iFlow in Cloud Integration (CPI) receives orders via HTTPS, maps to IDoc, and posts to S/4HANA. Intermittent mapping failures must NOT halt the whole flow; failed messages should be logged and routed to an error queue while good messages continue. Which iFlow design element implements this correctly?
- A. A Router step with a default route to a Content Modifier
- B. An Exception Subprocess containing an Error Start event that catches the fault and routes to the error queue ✓
- C. A JMS receiver adapter with automatic retry and dead-letter handling only
- D. A Groovy script wrapped in try/catch that swallows the exception and returns null
Correct answer: B. CPI handles faults declaratively via an Exception Subprocess triggered by an Error Start event, which catches the exception and lets you log/route the failed message without aborting the integration process.
A client with heavy custom Z-code, 15 years of historical data they must retain, and limited appetite for process re-engineering is deciding between greenfield and brownfield. Which reasoning most correctly favors brownfield (system conversion) for THIS client?
- A. Greenfield is impossible when custom code exists, so brownfield is the only option
- B. Brownfield preserves historical transactional data and existing configuration/custom code in place, avoiding re-implementation, which fits low re-engineering appetite and data-retention needs ✓
- C. Brownfield automatically remediates all custom code to clean-core standards during SUM
- D. Greenfield is cheaper here because it discards the Z-code, so brownfield only wins on speed
Correct answer: B. System conversion (brownfield) carries forward historical data, configuration, and custom code in the same system, matching a client that must retain history and does not want to re-engineer processes.
In SAP S/4HANA, the Universal Journal (table ACDOCA) merges FI and CO. What is a key architectural consequence of this?
- A. FI and CO reconciliation via a reconciliation ledger is no longer needed because they share one line-item table ✓
- B. General ledger totals are stored in GLT0 only
- C. CO postings no longer create documents
- D. Actual costing is disabled by default
Correct answer: A. Because FI and CO share the single ACDOCA table, real-time reconciliation is inherent and the classic CO-FI reconciliation ledger is obsolete.
A pricing condition in SD is not being determined correctly. Within the condition technique, which sequence correctly reflects how the system finds a condition record?
- A. Pricing procedure → access sequence → condition type → condition table
- B. Condition table → condition type → access sequence → pricing procedure
- C. Pricing procedure → condition type → access sequence → condition table ✓
- D. Access sequence → pricing procedure → condition table → condition type
Correct answer: C. The procedure lists condition types; each type points to an access sequence; the access sequence contains accesses to condition tables holding records.
In SAP FI, you post a foreign-currency vendor invoice and later run F.05 valuation. What primarily determines whether the exchange-rate difference is realized or unrealized?
- A. The document type only
- B. Whether the open item has been cleared (payment) or is still open at valuation date ✓
- C. The posting period variant
- D. The vendor account group
Correct answer: B. Unrealized differences arise from valuing still-open items at period end; realized differences arise upon clearing (payment) of the item.
In SAP MM, split valuation is active for a material. What is a correct implication of this configuration?
- A. The material can have different valuation prices per valuation type under one valuation category ✓
- B. The material master cannot be extended to multiple plants
- C. Standard price is mandatory for all valuation types
- D. Goods receipts bypass account determination
Correct answer: A. Split valuation lets a single material be valued differently by valuation type (e.g., in-house vs. external) within a valuation category.
During an availability check (ATP) in SD, an order confirms less quantity than requested. Which configuration element most directly governs which stocks and receipts/requirements are included in the ATP calculation?
- A. The checking group combined with the checking rule (scope of check) ✓
- B. The shipping point determination
- C. The output determination procedure
- D. The incompletion procedure
Correct answer: A. The scope of check (checking group + checking rule) defines which MRP elements—stocks, receipts, and requirements—are included in ATP.
In an SAP ABAP CDS view based S/4HANA embedded analytics scenario, what is the primary role of an '@Analytics.dataCategory: #CUBE' annotation?
- A. It marks the view as an analytical cube (facts + dimensions) consumable by analytical tools ✓
- B. It enables buffering on the database
- C. It converts the view to a classic BW InfoCube physically
- D. It disables authorization checks
Correct answer: A. The #CUBE data category exposes the CDS view as an analytical fact model consumable by tools like Analysis for Office via the analytic engine.
A client requires that certain financial documents remain unpostable in a closed period while allowing special-period adjustments. Which combination of settings achieves this?
- A. Posting period variant with account-type intervals plus authorization group for special periods ✓
- B. Field status group only
- C. Tolerance group for employees only
- D. Document type number range only
Correct answer: A. The posting period variant controls open periods per account type and can restrict special periods to users holding a specific authorization group.
In SAP CO product costing, what is the effect of setting a costing variant to use a valuation variant that prioritizes 'planned price 1' over 'moving average price' for raw materials?
- A. The cost estimate will value raw materials at planned price 1 if maintained, else fall back to the next strategy ✓
- B. The system will always use standard price regardless
- C. Raw materials are excluded from the BOM explosion
- D. Actual costs are posted immediately to FI
Correct answer: A. The valuation variant defines a priority sequence of price strategies; the system uses the first available price in that sequence for each material.
You are enabling the New General Ledger with document splitting. A vendor invoice posted across two profit centers must produce balanced entries per profit center. Which configuration is essential?
- A. Define splitting characteristics for G/L and mark them as mandatory/balancing (zero-balance) ✓
- B. Activate only classic G/L
- C. Disable the leading ledger
- D. Use a single posting key for all lines
Correct answer: A. Document splitting requires defining splitting/balancing characteristics (e.g., profit center) as zero-balance so each dimension balances to zero.
In an SAP interface using IDocs, an inbound IDoc is stuck in status 51. What does this most directly indicate?
- A. Application document not posted due to an error ✓
- B. IDoc successfully posted
- C. IDoc passed to the ALE/port successfully
- D. IDoc syntax check passed with no data
Correct answer: A. Status 51 means the application posting failed (error), so the target document was not created.
In S/4HANA, the Universal Journal (table ACDOCA) fundamentally changed FI-CO integration. What is its key architectural benefit?
- A. It stores FI and CO in separate totals tables for redundancy
- B. It merges FI, CO, ML, AA, and profitability line items into a single source of truth, eliminating reconciliation between them ✓
- C. It removes the need for a general ledger entirely
- D. It only stores aggregated balances, not line items
Correct answer: B. ACDOCA unifies FI, CO, Material Ledger, Asset Accounting, and CO-PA at line-item level, removing FI-CO reconciliation needs.
A customizing setting must move to production but should NOT be recorded automatically in a transport request in the source system. Which mechanism is appropriate?
- A. Set the customizing to 'automatic recording' in SCC4 and delete later
- B. Use current settings / manual transport of copies (SE01) for objects flagged as not automatically recorded ✓
- C. Directly edit tables in production with SE16N
- D. Use SM30 with client-independent recording forced on
Correct answer: B. Objects not auto-recorded (current settings) are moved via manual transport of copies, since automatic recording does not capture them.
In account determination for automatic postings (transaction OBYC), which key combination typically drives the G/L account for inventory posting of a goods movement?
- A. Only the movement type
- B. Transaction/event key, valuation grouping code, valuation class, and account modifier ✓
- C. Company code and vendor only
- D. Document type and posting period
Correct answer: B. OBYC determines accounts using transaction key (e.g., BSX/WRX), valuation grouping code, valuation class, and general modifier.
A consultant needs a custom field to appear in a standard SD transaction without modifying SAP code. Which is the cleanest enhancement approach?
- A. Directly modify the standard include with an access key
- B. Use a customer exit / BAdI or append structure with screen enhancement (append/CI include) ✓
- C. Copy the entire standard program into the Z namespace
- D. Change the ABAP Dictionary standard table field type
Correct answer: B. BAdIs, customer exits, and append/CI-include structures are the supported, upgrade-safe enhancement techniques.
In CO, a statistical key figure (SKF) posted as 'fixed value' versus 'total value' differs how?
- A. Fixed values are only for revenue postings
- B. A fixed value is carried forward to subsequent periods automatically, while a total value applies only to the posting period ✓
- C. Total values cannot be used in assessments
- D. There is no functional difference
Correct answer: B. Fixed-value SKFs (e.g., headcount) carry forward to later periods; total-value SKFs (e.g., phone units) apply only to the period posted.
During an S/4HANA system conversion, the SI checks (SUM/DMO) flag a custom Z-report using SELECT ... INTO a work area ordered by a non-key field with an implicit sort assumption. Why is this a problem on HANA?
- A. HANA reads column-store data in parallel, which reverses the natural row order
- B. HANA does not guarantee sort order without an explicit ORDER BY, so implicitly-ordered results may differ from the old DB ✓
- C. Column-store tables in HANA cannot define a primary key, leaving row order undefined
- D. Z-reports must all be rewritten in CDS
Correct answer: B. Column-store HANA has no inherent row order; code relying on implicit ordering needs an explicit ORDER BY to behave correctly.
In FI, a foreign currency valuation run at period end produces unrealized gain/loss postings that reverse on the first day of the next period. What controls this reverse posting behavior?
- A. The document type only
- B. The valuation method / valuation area configuration together with the 'reverse posting' flag in the FAGL_FC_VAL run ✓
- C. The exchange rate type M automatically
- D. The reconciliation account tolerance group
Correct answer: B. The valuation method and the reversal setting in the FC valuation run (FAGL_FC_VAL) determine that unrealized differences reverse next period.
A material valuated with the Material Ledger and actual costing shows a price difference at period close. What does the actual costing run (CKMLCP) primarily accomplish?
- A. It deletes price differences
- B. It revaluates inventory and consumption to actual (periodic unit) prices by rolling up variances through the quantity structure ✓
- C. It only updates the standard price for next period
- D. It posts differences to a suspense account permanently
Correct answer: B. Actual costing allocates period price/exchange-rate differences to inventory and consumption, deriving the periodic unit price.
In SD, an intercompany billing scenario requires two billing documents. Which pair is correct?
- A. Customer invoice (F2) to end customer and intercompany invoice (IV) between the delivering and selling company codes ✓
- B. Two identical F2 invoices to the same customer
- C. A credit memo and a debit memo only
- D. A proforma invoice and a cash sale invoice
Correct answer: A. Intercompany sales create an F2 to the external customer and an IV billing document between the two internal company codes.
You configure a new document splitting scenario in the New/Universal GL to enable segment-level balanced financial statements. What is the prerequisite classification step?
- A. Assign all accounts to a single splitting category
- B. Classify G/L accounts into item categories and define document types with business transactions/variants for splitting ✓
- C. Disable zero-balance clearing
- D. Use only manual splitting during posting
Correct answer: B. Document splitting requires classifying G/L accounts to item categories and assigning business transaction variants to document types.