Simulate an SAP Finance Migration

Simulate finance migration staging, corrections, and reconciliation.

Introduction

30 Second Summary

Finance records can look tidy while hiding problems that derail a system move. One duplicate can overstate a balance. One invalid date can stop an approved record from moving forward.

In this project, you will rehearse a legacy finance migration in a local simulation based on controls around the SAP S/4HANA Migration Cockpit. You will trace six flawed records through source review, staging data, correction, and reconciliation sign-off.

What You'll Build

When you open your finished workbook, you can follow every legacy record from its original defect to a documented PASS or rejection.

By the end of this project, you'll have:

  • A profiled legacy extract that makes six fictional finance records easy to inspect. You can point to the duplicate, invalid date, missing supplier, and unmapped account.
  • A controlled correction trail that shows why flawed records fail. You can trace how each approved repair changes the next simulation.
  • A reconciliation sign-off you can show with five accepted records, matching totals of 3,730.00, a difference of 0.00, and a final status of PASS.
  • Secret Mission: Add an out-of-scope EUR record. Stop it from contaminating the approved cutover totals.

Are there any prerequisites?

You need a Mac running macOS 11 or newer, an internet connection, and up to 800 MB of available disk space. The simulation runs locally in LibreOffice Calc 26.8.2, so no SAP account or SAP system is required.

Before We Start

This first checkpoint anchors the business outcome before any hands-on work begins. A complete migration moves legacy finance records into a controlled target dataset with matching accepted counts and amounts.

Set Up the Migration Workspace

A finance migration rehearsal needs a stable local home before any source records arrive. That workspace keeps the later audit trail in one file.

You will confirm that your Mac supports LibreOffice Calc 26.8.2. You will finish with a blank workbook inside a named project folder.

In this step, get ready to:
  • Determine which LibreOffice build your Mac supports.
  • Install LibreOffice Calc 26.8.2 in the Applications folder.
  • Save a blank migration workbook in its local project folder.
Check your Mac's compatibility

LibreOffice 26.8.2 requires macOS 11 or newer. Its two Mac builds target Apple silicon and Intel processors.

  • Click the Apple menu in the top-left corner of your screen.
  • Select About This Mac.
  • Find the macOS version shown in the window.
  • Confirm that the version is 11 or newer.
  • Locate Chip if your Mac uses Apple silicon.
  • Locate Processor if your Mac uses Intel.
  • Record the matching LibreOffice build as Apple Silicon or Intel.

That check removes the guesswork from the installer choice. You now know which build belongs on your Mac.

Mac Below the Requirement?

LibreOffice 26.8.2 requires macOS 11 or newer.

  • Continue on a Mac that meets the required macOS version.
  • Review the official LibreOffice system requirements if you need to compare another Mac.
  • Use help me understand whether my Mac meets the LibreOffice requirements for help interpreting the details.
Install LibreOffice Calc

The official download page provides separate builds for each Mac architecture. You will use Safari to download the build that matches your compatibility check.

  • Press Cmd+Space to open the macOS search bar.
  • Type LibreOffice and press Enter.
  • Click LibreOffice in the menu bar if the app opens.
  • Select About LibreOffice if the app opens.
  • Choose the tab that matches what you see.

✔️ I see version 26.8.2

Your installed app already matches the project requirement.

  • Continue to the workspace substep below.

ⓧ I see an older version

Replacing the app updates LibreOffice in Applications. Your documents stay in their existing folders.

  • Press Cmd+Space to open the macOS search bar.
  • Type Safari and press Enter.
  • Open the official LibreOffice download page in Safari.
  • Choose the 26.8.2 download for Apple Silicon or Intel.
  • Start the download from the official page.
  • Open the downloaded .DMG from Safari's downloads list.
  • Drag the LibreOffice icon onto the Applications icon.
  • Allow macOS to replace the existing app if it asks for confirmation.

ⓧ LibreOffice is not installed

Your Mac needs a fresh LibreOffice installation before you create the migration workbook.

  • Press Cmd+Space to open the macOS search bar.
  • Type Safari and press Enter.
  • Open the official LibreOffice download page in Safari.
  • Choose the 26.8.2 download for Apple Silicon or Intel.
  • Start the download from the official page.
  • Open the downloaded .DMG from Safari's downloads list.
  • Drag the LibreOffice icon onto the Applications icon.

The main installation hurdle is complete. Your Applications folder now contains LibreOffice.app.

LibreOffice Did Not Launch?

  • Confirm that Apple Silicon or Intel matches the build you downloaded.
  • Reopen the downloaded .DMG from Safari's downloads list.
  • Drag the LibreOffice icon onto the Applications icon again.

Use help me troubleshoot why LibreOffice will not open on my Mac if the app still does not launch.

Create the migration workspace

Finder keeps the rehearsal workbook in a predictable local folder. A named folder gives every later migration artifact one clear home.

  • Press Cmd+Space to open the macOS search bar.
  • Type LibreOffice and press Enter.
  • Create a blank Calc spreadsheet from the LibreOffice start screen.

You should see an empty spreadsheet grid with a blank workbook ready to save.

  • Press Cmd+Space to return to the macOS search bar.
  • Type Finder and press Enter.
  • Select Documents in the Finder sidebar.
  • Control-click an empty area inside Documents.
  • Choose the option to create a new folder.
  • Enter legacy-finance-migration as the folder name.

You should see legacy-finance-migration inside your Documents folder.

  • Switch back to the blank Calc workbook from earlier.
  • Use LibreOffice's save option to open the save dialog.
  • Select Documents/legacy-finance-migration as the save location.
  • Enter legacy_finance_migration.ods as the file name.
  • Confirm the save.

Before you verify, what two details should prove that the required app and workbook are both ready?

  • Switch back to Finder from earlier.
  • Open Documents/legacy-finance-migration.
  • Open legacy_finance_migration.ods from the project folder.
  • Click LibreOffice in the menu bar.
  • Select About LibreOffice.

You should see 26.8.2 in the About LibreOffice dialog. The workbook legacy_finance_migration.ods should be open behind it.

Your workspace is ready for an auditable migration trail. The required Calc version now opens your saved project workbook.

Version or Workbook Does Not Match?

  • Return to the installation substep if the dialog shows a different LibreOffice version.
  • Check Documents/legacy-finance-migration if Finder cannot locate the workbook.
  • Confirm that the workbook name ends with .ods.

Use help me verify my LibreOffice version and saved workbook location if either check still fails.

Your local migration workspace is installed and verified. Next, you will load the six-row legacy finance extract into the workbook.

Load the Legacy Finance Extract

Your LibreOffice Calc workspace is ready. Now you can turn the blank workbook into a visible source extract.

A migration cannot be trusted until the source records are visible. This dataset preserves several deliberate defects for the simulation in the next steps.

In this step, get ready to:
  • Build a raw sheet containing six fictional finance records.
  • Round-trip the source extract through the CSV import workflow.
  • Calculate a control total across all six source amounts.
Enter the six-record source extract

The raw sheet is your untouched record of what arrived from the fictional legacy system. Keeping every source value visible creates the starting point for legacy data profiling.

  • Return to legacy_finance_migration.ods from the previous step.
  • Double-click the current sheet tab at the bottom of Calc.
  • Enter Legacy_Raw as the sheet name.
  • Press Return to apply the name.
  • Select cell A1.
  • Populate A1:G7 by pasting the tab-separated block below:
DOCUMENT_ID	COMPANY_CODE	LEGACY_ACCOUNT	SUPPLIER_ID	POSTING_DATE	AMOUNT	CURRENCY
L-1001	C001	L-AP	S-100	2026-09-30	1200.00	USD
L-1002	C001	L-TRAVEL	S-200	2026-09-31	350.00	USD
L-1003	C001	L-UTIL	S-300	2026-09-30	480.00	USD
L-1004	C001	L-AP		2026-09-30	725.00	USD
L-1004	C001	L-AP		2026-09-30	725.00	USD
L-1005	C001	L-TRAVEL	S-500	2026-09-30	975.00	USD

What does this dataset contain?

  • The seven headers define the source fields that each migration record carries.
  • The six rows preserve the complete fictional source population.
  • The repeated L-1004 values preserve a duplicate for later profiling.
  • The invalid date and blank supplier values remain untouched for the failed simulation.
  • Select cells F2:F9.
  • Use the number-format controls in the top formatting toolbar to show two decimal places with a thousands separator.
  • Save legacy_finance_migration.ods.
  • Confirm that the headers occupy A1:G1.
  • Count six populated source rows from row 2 through row 7.
  • Confirm that L-1004 appears in both A5 and A6.
  • Confirm that E3 still displays 2026-09-31.

You have made the source auditable before any transformation begins.

Did the values land in one column?

  • Undo the paste.
  • Copy the entire tab-separated block again.
  • Select A1 before pasting the replacement.
  • Use the import preview to split the copied text at each tab if Calc asks how to separate it.

If the columns still do not separate, help me place tab-separated finance data into separate Calc columns.

Export and reopen the CSV extract

A CSV file carries the source values in a portable format. Calc exports only the current sheet to this format.

  • Click File in the Calc menu bar.
  • Select Save As.
  • Choose the Documents/legacy-finance-migration folder in the save dialog.
  • Enter legacy_finance.csv as the file name.
  • Choose Text CSV as the file type.
  • Click Save.
  • Confirm the Text CSV format if Calc asks which format to use.

That gives you a portable source snapshot at Documents/legacy-finance-migration/legacy_finance.csv.

  • Click File in the Calc menu bar.
  • Select Open.
  • Choose legacy_finance.csv from the Documents/legacy-finance-migration folder.
  • Click Open to display the Text Import dialog.
  • Review the preview to confirm that the extract has seven columns.
  • Count six data rows beneath the headers in the preview.
  • Click OK to open the imported data.

The import preview confirms that the CSV preserves the record structure. Each header still lines up with its source values.

Replacing the earlier workbook is expected. The populated working copy takes the place of the blank workbook from Step 1.

  • Double-click the imported sheet tab at the bottom of Calc.
  • Enter Legacy_Raw as the sheet name.
  • Press Return to apply the name.
  • Click File in the Calc menu bar.
  • Select Save As.
  • Enter legacy_finance_migration.ods as the file name.
  • Click Save.
  • Confirm that Calc can replace the earlier blank workbook.

The title bar now identifies legacy_finance_migration.ods as the active workbook. The Legacy_Raw tab still contains the complete extract.

Does the reopened extract look different?

  • Reopen legacy_finance.csv if all values appear in one column.
  • Review the column separation in the Text Import preview before continuing.
  • Use Save As again if the active file still ends in .csv.

For help with the round-trip, help me reopen a Calc CSV and save it back as an ODS workbook without losing the columns.

Calculate the raw source total

A source total gives reconciliation a baseline before any records are excluded. This raw baseline includes every amount in the extract.

  • Select cell E9.
  • Enter RAW_TOTAL.
  • Press Return to apply the label.
  • Select cell F9.
  • Click Insert in the Calc menu bar.
  • Select Function to open the function workflow.

Before you complete the calculation, do you expect the repeated L-1004 amount to remain in the raw total?

  • Select SUM in the function workflow.
  • Set the range to F2:F7.
  • Complete the function workflow to place the result in F9.

Cell F9 displays 4,455.00. The raw total includes both 725.00 entries because the source has not been cleaned.

  • Save legacy_finance_migration.ods.
  • Confirm that the active workbook is saved in Documents/legacy-finance-migration.
  • Confirm that Legacy_Raw contains six data rows.
  • Confirm that L-1004 appears twice in the document ID column.
  • Confirm that E9 contains RAW_TOTAL.
  • Confirm that F9 displays 4,455.00.

Your source extract now has a saved record count and a visible financial control total.

Is the total different?

  • Confirm that the selected range starts at F2.
  • Confirm that the selected range ends at F7.
  • Check that each amount occupies a separate cell in column F.
  • Apply the number format again if the value lacks two decimal places.

If the result still differs, help me diagnose why SUM across F2:F7 does not produce 4,455.00 in LibreOffice Calc.

Your legacy extract is visible and financially anchored. Next, you will expose the defects that block this source population from entering staging.

Expose the Migration Blockers

Your six-row extract now makes the legacy data visible. The next job is to stop defective records from looking migration-ready.

This workbook is a local simulation of the control logic around the SAP S/4HANA Migration Cockpit. No data is sent to SAP.

The first simulated load must expose every blocker before correction begins. You will start by profiling the raw data.

A source-to-target mapping will assign approved account codes. Staging data will make any missing assignment visible.

In this step, get ready to:
  • Highlight duplicate document IDs in the raw extract.
  • Create the fictional account mapping table.
  • Run an exact-match staging lookup that exposes the missing account mapping.
Profile the raw extract

Conditional formatting applies a visible style when a cell meets a rule. It can expose duplicate IDs without changing the source values.

  • Switch back to the Legacy_Raw sheet from earlier.
  • Select cells A2:A7.
  • Click Data in the menu bar.
  • Choose Calculate.
  • Enable AutoCalculate if it does not have a checkmark.

Why Enable AutoCalculate?

AutoCalculate keeps calculated results current when workbook values change. Conditional formatting depends on it being enabled.

  • Click Format in the menu bar.
  • Choose Conditional.
  • Choose Condition.
  • Set the rule to is duplicate.

The condition now checks whether a document ID appears more than once in the selected range.

  • Choose a warning style that gives matching cells a clearly visible background.
  • Apply the condition to return to the sheet.

You will see both L-1004 cells highlighted. Their values remain unchanged.

Duplicates Not Highlighted?

Confirm that the selected range is A2:A7. Check that AutoCalculate is enabled.

Open the condition again to confirm that the rule is is duplicate.

Help me troubleshoot the duplicate highlighting in Calc.

  • Review cells E2:E7 for a date that cannot occur.
  • Review cells D2:D7 for missing supplier values.

You will find the invalid date 2026-09-31 on the L-1002 row. The two L-1004 rows have blank supplier cells.

You have now caught three kinds of source risk before mapping begins.

Build the account mapping

A mapping table links each legacy account to an approved target account. The staging lookup uses this table to test whether every source value has a destination.

  • Add a new sheet from the sheet tab bar at the bottom of Calc.
  • Name the new sheet Mapping.

You will see the Mapping tab beside Legacy_Raw.

  • Fill cells A1:B1 with LEGACY_ACCOUNT followed by TARGET_ACCOUNT.
  • Fill cells A2:B2 with L-AP followed by 211000.

The first mapping row now sends the fictional legacy account L-AP to the fictional target account 211000.

  • Fill cells A3:B3 with L-TRAVEL followed by 610100.
  • Reserve cells A4:B4 by leaving them empty.

You will see two completed mappings. The third data row remains blank.

  • Save legacy_finance_migration.ods.

Your workbook now preserves the original source data beside a separate two-row account mapping.

Run the staging lookup

The staging sheet reshapes each source record into the columns expected by this rehearsal. Its target-account column tests the mapping table with an exact match.

  • Add another sheet from the sheet tab bar at the bottom of Calc.
  • Name the new sheet Staging.

You will see a blank Staging sheet ready for the target-shaped records.

  • Fill cells A1:H1 with these headers in order: DOCUMENT_ID, COMPANY_CODE, LEGACY_ACCOUNT, TARGET_ACCOUNT, SUPPLIER_ID, POSTING_DATE, AMOUNT, CURRENCY.

The blank TARGET_ACCOUNT column now sits between the source account and supplier fields.

  • Switch back to Legacy_Raw.
  • Select cells A2:C7.
  • Press Cmd+C on macOS or Ctrl+C on Windows.
  • Switch back to Staging.
  • Select cell A2.
  • Press Cmd+V on macOS or Ctrl+V on Windows.

You will see all six document IDs beside their company codes and legacy accounts.

  • Switch back to Legacy_Raw.
  • Select cells D2:G7.
  • Press Cmd+C on macOS or Ctrl+C on Windows.
  • Switch back to Staging.
  • Select cell E2.
  • Press Cmd+V on macOS or Ctrl+V on Windows.

The six staging rows now contain every source field. Cells D2:D7 remain available for the target accounts.

  • Select cell D2 in Staging.
  • Click Insert in the menu bar.
  • Choose Function.
  • Choose VLOOKUP in the Function Wizard.

How Does VLOOKUP Work?

  • Lookup identifies the legacy account that Calc needs to find.
  • Array identifies the mapping table that Calc needs to search.
  • Index selects the second column as the returned target value.
  • SortedRangeLookup set to 0 requires an exact match.
  • Activate the Lookup field.
  • Select cell C2 on the Staging sheet.

The lookup now reads the legacy account from the first staging record.

  • Activate the Array field.
  • Switch to the Mapping sheet.
  • Select cells A2:B4.

The lookup now searches both completed mappings plus the reserved blank row.

  • Enter 2 in the Index field.
  • Enter 0 in the SortedRangeLookup field.

The wizard is now configured to return only an exact target-account match from the second mapping column.

  • Apply the function to return to the workbook.

Cell D2 displays 211000 because L-AP has an exact mapping.

Before you fill the lookup down, do you think every legacy account will find a target value?

  • Return to the Staging sheet if another sheet is active.
  • Select cell D2.
  • Drag the small fill handle from the lower-right corner of D2 down to D7.

You will see 211000 for every L-AP row. You will see 610100 for both L-TRAVEL rows.

The L-UTIL row displays #N/A. This intended failure exposes the missing mapping before the record can join an approved target population.

Lookup Results Do Not Match?

Confirm that the Lookup field points to the legacy account in column C. Confirm that the Array field covers A2:B4 on Mapping.

Check that Index is 2. Check that SortedRangeLookup is 0.

Help me troubleshoot my staging lookup.

  • Save legacy_finance_migration.ods.
  • Confirm that Staging contains six data rows.
  • Compare each TARGET_ACCOUNT result with its LEGACY_ACCOUNT value.

Your target-account column shows mapped values for L-AP and L-TRAVEL. The L-UTIL row remains visibly blocked by #N/A.

You caught the missing mapping exactly where it should surface. Next, you will document the failed run before applying controlled corrections.

Correct and Rerun the Simulation

In LibreOffice Calc, your Staging sheet now exposes duplicate document L-1004. The original extract also contains invalid date 2026-09-31.

The retained L-1004 record lacks a supplier. The L-UTIL lookup still shows #N/A.

A controlled simulation log preserves these failures before any repair. A correction file then records how each blocker was resolved.

In this step, get ready to:
  • Record the failed first simulation.
  • Document the four approved corrections.
  • Produce a five-record rerun with zero failures.
Record the failed first run

The first run is evidence of the controls working. Recording every failure creates a baseline for the corrected rerun.

  • Select the new-sheet control beside the sheet tabs.
  • Rename the new sheet Simulation_Log through its sheet-tab shortcut menu.
  • Enter FIRST RUN in cell A1.
  • Enter DOCUMENT_ID in cell A2.
  • Enter STATUS in cell B2.
  • Enter REASON in cell C2.

How the Log Preserves Evidence

  • The FIRST RUN label separates the failed attempt from the later rerun.
  • The STATUS column records whether each source record passed its migration checks.
  • The REASON column makes each failure traceable.
  • The reason cell stays blank for a passing record because no failure applies.
  • Fill A3:B3 using this left-to-right sequence: L-1001 | PASS.
  • Fill A4:C4 using this left-to-right sequence: L-1002 | FAIL | Invalid date.
  • Fill A5:C5 using this left-to-right sequence: L-1003 | FAIL | Unmapped account.
  • Fill A6:C6 using this left-to-right sequence: L-1004 | FAIL | Missing supplier.
  • Fill A7:C7 using this left-to-right sequence: L-1004 | FAIL | Duplicate document ID.
  • Fill A8:B8 using this left-to-right sequence: L-1005 | PASS.
  • Save legacy_finance_migration.ods.

The first run now contains two passing records plus four failed records. Each failure names the blocker that prevented approval.

Document and apply the corrections

A controlled source-to-target mapping process records each approved repair before changing the staging population. This creates a trace from every failure to its resolution.

  • Select the new-sheet control beside the sheet tabs.
  • Rename the new sheet Corrections through its sheet-tab shortcut menu.
  • Enter ISSUE in cell A1.
  • Enter RECORD in cell B1.
  • Enter CORRECTION in cell C1.

Why Document Corrections First?

The Corrections sheet separates approved repairs from untracked edits. That trail makes the clean rerun explainable.

  • Fill A2:C2 using this left-to-right sequence: Invalid date | L-1002 | Change POSTING_DATE to 2026-09-30.
  • Fill A3:C3 using this left-to-right sequence: Unmapped account | L-1003 | Map L-UTIL to 620200.
  • Fill A4:C4 using this left-to-right sequence: Missing supplier | L-1004 retained row | Set SUPPLIER_ID to S-400.
  • Fill A5:C5 using this left-to-right sequence: Duplicate document ID | L-1004 duplicate row | Remove duplicate staging row.
  • Save legacy_finance_migration.ods.

The correction trail now names all four repairs. You can apply each change without altering the original Legacy_Raw evidence.

  • Return to the Mapping sheet.
  • Enter L-UTIL in cell A4.
  • Enter 620200 in cell B4.
  • Return to the Staging sheet.
  • Check the value in cell D4.

You should see 620200 in D4. AutoCalculate has refreshed the exact-match lookup for L-UTIL.

  • Replace the invalid date in cell F3 with 2026-09-30.
  • Replace the blank supplier in cell E5 with S-400.

The retained L-1004 record now has supplier S-400. The L-1002 record now uses posting date 2026-09-30.

Deleting a staging row can feel risky. The original six-row evidence remains untouched in Legacy_Raw.

  • Select row header 6 for the second L-1004 record.
  • Remove the selected row with the row-header deletion command.
  • Save legacy_finance_migration.ods.

Staging now contains five data rows. L-1004 appears once.

The L-UTIL row shows target account 620200. Every approved record now has a valid date plus a supplier.

Still Seeing a Blocker?

If #N/A remains, check that cell A4 on Mapping contains L-UTIL. Check that cell B4 contains 620200.

If six staging rows remain, verify that you removed the second L-1004 row. Keep the first L-1004 row with supplier S-400.

Help me check why my corrected Staging sheet still shows a migration blocker.

Log the clean rerun

The rerun uses the same checks as the first attempt. A separate label preserves both outcomes in one audit trail.

  • Return to the Simulation_Log sheet.
  • Enter RERUN in cell A10.
  • Copy header cells A2:C2.
  • Paste the copied headers into cells A11:C11.

The second header creates a distinct rerun section. Each corrected document now gets a fresh status.

  • Fill A12:B12 using this left-to-right sequence: L-1001 | PASS.
  • Fill A13:B13 using this left-to-right sequence: L-1002 | PASS.
  • Fill A14:B14 using this left-to-right sequence: L-1003 | PASS.
  • Fill A15:B15 using this left-to-right sequence: L-1004 | PASS.
  • Fill A16:B16 using this left-to-right sequence: L-1005 | PASS.
  • Enter FAIL_COUNT in cell A18.
  • Enter 0 in cell B18.
  • Save legacy_finance_migration.ods.

Before you check the rerun, do you expect any record to fail after the four corrections?

  • Scan cells B12:B16 in the rerun section.
  • Check the failure count in cell B18.
  • Return to the Staging sheet.
  • Inspect cells A2:A6 for the approved document IDs.

You should see PASS in all five rerun rows. The FAIL_COUNT value should be 0.

Staging should contain L-1001 through L-1005 with one L-1004 record. Your five-record rerun now has evidence behind every repair.

Still Seeing a Failed Record?

Compare the failed document with its row on Corrections. Confirm that the matching repair also appears on Mapping or Staging.

If L-1004 appears twice, return to Staging. Remove only the duplicate row.

Help me find which migration correction is missing from my clean rerun.

Your correction cycle is complete. Next, you will reconcile the accepted source population against the target population.

Reconcile and Sign Off

Your corrected staging population now holds five approved records in LibreOffice Calc. The rerun shows five PASS results with zero failures.

A technically clean load still needs reconciliation before finance can sign it off. The accepted source count must match the target count. The accepted source total must also match the target total.

In this step, get ready to:
  • Build the Reconciliation sheet with population counts.
  • Calculate both accepted totals.
  • Record zero differences before signing off the rerun.
Create the reconciliation controls

Each reconciliation control pairs an audit-friendly label with one value. The four count controls explain how six raw rows become five approved target rows.

  • Add a blank sheet by clicking the plus icon beside the sheet tabs.
  • Double-click the new sheet tab to edit its name.
  • Type Reconciliation as the sheet name.

You should now see a Reconciliation tab beside the existing workbook sheets.

Column A stores each control name. Column B stores its value.

  • Populate A1:B1 with RAW SOURCE COUNT in column A plus 6 in column B.
  • Populate A2:B2 with EXCLUDED DUPLICATE COUNT in column A plus 1 in column B.
  • Populate A3:B3 with ACCEPTED SOURCE COUNT in column A plus 5 in column B.
  • Populate A4:B4 with TARGET COUNT in column A plus 5 in column B.

The count controls now trace six raw records through one controlled exclusion to five approved records. The target count confirms that all five reached staging.

Why keep the raw count?

The raw count preserves what arrived from the source. The excluded duplicate count explains why the approved population contains one fewer record.

This creates a visible bridge from the original extract to the target population.

Calculate the accepted totals

Count controls prove that the population is complete. Amount controls prove that approved financial value was preserved.

  • Populate A5 with ACCEPTED SOURCE TOTAL.
  • Enter 3730.00 in B5 to record 4455.00 - 725.00.

Cell B5 now holds the raw total after removing the duplicated 725.00 amount.

The target total must come directly from the corrected Staging amounts. This keeps the target-side evidence tied to the five approved records.

  • Populate A6 with TARGET TOTAL.
  • Select cell B6.
  • Open Insert from the Calc menu bar.
  • Choose Function.
  • Select SUM in the Function Wizard.
  • Set the range by selecting cells G2:G6 on the Staging sheet.
  • Complete the Function Wizard to place the result in B6.
  • Format B5:B6 with a thousands separator plus two decimal places using the number-format controls in the top toolbar.

Cells B5 plus B6 should each display 3,730.00.

What Do the Matching Totals Prove?

The accepted source total starts with 4,455.00 before removing the duplicate amount of 725.00. The resulting approved total is 3,730.00.

The target total independently sums the five corrected staging amounts. Matching totals show that the approved financial value reached the target population.

Target Total Looks Wrong?

Confirm that the SUM range covers G2:G6 on Staging. Including the header changes the result. Omitting a row reduces the result.

help me check why my Calc SUM for the five Staging amounts does not equal 3,730.00.

Confirm the differences and sign off

Difference controls turn the comparison into explicit evidence. A zero count difference plus a zero amount difference supports the final PASS status.

  • Compare B3 with B4.
  • Populate A7:B7 with COUNT DIFFERENCE in column A plus 0 in column B.
  • Compare B5 with B6.
  • Populate A8:B8 with AMOUNT DIFFERENCE in column A plus 0.00 in column B.

Both difference controls now read zero. The accepted source population agrees with the target population.

  • Format B8 with two decimal places using the number-format controls in the top toolbar.
  • Populate A9:B9 with STATUS in column A plus PASS in column B.
  • Populate A10:B10 with SIGN-OFF NOTE in column A plus All approved records passed the rerun. in column B.
  • Save the open legacy_finance_migration.ods workbook in Documents/legacy-finance-migration.

Before the final check, what should the controls show when the accepted source population agrees with the target population?

  • Review rows 1 through 10 on the Reconciliation sheet.

Row 1 should show raw source count 6. Row 2 should show excluded duplicate count 1.

Row 3 should show accepted source count 5. Row 4 should show target count 5.

Rows 5 plus 6 should each show 3,730.00.

Row 7 should show 0. Row 8 should show 0.00.

Row 9 should show PASS. Row 10 should show All approved records passed the rerun..

That closes the audit trail. Your workbook now proves that the approved source population reached the target with matching counts plus matching totals.

Secret mission

Protect the Cutover Scope

Add a complete EUR record from another company to the migration rehearsal. Document its exclusion while preserving five approved records, a total of 3,730.00, zero differences, and PASS.

Clean Up Your Resources

Clean Up Your Resources

Choose whether to keep the local workbooks, close LibreOffice Calc for now, or delete the project files. This project stays on your Mac, so there are no ongoing cloud or SAP costs.

Resources you used:

  • LibreOffice Calc 26.8.2 at Applications/LibreOffice.app.
  • The local project folder at Documents/legacy-finance-migration.
  • The exported source extract at Documents/legacy-finance-migration/legacy_finance.csv.
  • The completed workbook at Documents/legacy-finance-migration/legacy_finance_migration.ods.
  • The Secret Mission workbook at Documents/legacy-finance-migration/legacy_finance_migration_secret.ods.

Keep everything running

No action is needed. Choose this option if you want to revisit the migration trail or continue into the next project.

  • Save any final workbook changes in LibreOffice Calc.
  • Keep Applications/LibreOffice.app installed on your Mac.
  • Keep Documents/legacy-finance-migration with its source extract and completed workbooks.

Pause - I'll come back to this later

Shut down the local app to free memory while preserving every project file for later.

  • Switch back to LibreOffice Calc.
  • Save any final changes to legacy_finance_migration_secret.ods.
  • Close LibreOffice Calc.
  • Leave Applications/LibreOffice.app installed on your Mac.
  • Leave Documents/legacy-finance-migration in place for the next project.

Delete - I don't want to use this again

Remove the application and local project folder to start fresh. Deleting the folder removes both completed workbooks plus the exported source extract.

What Deletion Removes

This removes your original migration rehearsal and the Secret Mission copy. Your reconciliation evidence disappears with the project folder.

  • Switch back to LibreOffice Calc.
  • Close LibreOffice Calc.
  • In Finder, select Applications in the sidebar.
  • Drag LibreOffice.app to the Trash.
  • In Finder, select Documents in the sidebar.
  • Drag legacy-finance-migration to the Trash.
  • Open the Trash.

Check Before Emptying the Trash

You should see LibreOffice.app and legacy-finance-migration among the items you intend to remove. Emptying the Trash permanently removes the workbooks and their audit trail.

  • Empty the Trash.

The application and Documents/legacy-finance-migration should no longer remain on your Mac.

Nice Work!

Nice Work!

Excellent work! You've built a local SAP S/4HANA finance migration simulation that carries six flawed legacy records into five approved staging records. The final reconciliation sign-off proves the accepted populations match.

What you learned:

  • Build a six-row legacy finance extract in LibreOffice Calc. Use legacy data profiling to expose four migration blockers.
  • Create source-to-target mappings for the approved staging population. Use a correction trail to turn the failed simulation into a five-record PASS rerun.
  • Complete a reconciliation sign-off that matches five accepted source records to five target records. Confirm both totals are 3,730.00. Confirm both differences are zero.
  • Secret Mission: Reject the C002/EUR record L-1006 as OUT OF SCOPE. Keep the approved target at five records. Preserve the 3,730.00 total with PASS reconciliation.

Ready to quiz yourself?