[ project / 06 ] · Data Tool
SAP Table Organizer.
A Python tool that turns messy SAP table exports into clean, analysis-ready Excel files — built for a real workflow.
interface sketch · see it on GitHub
about the project
SAP table exports are notoriously messy: multiple unrelated tables dumped into the same spreadsheet, inconsistent column naming across exports (short descript, short text, short description all meaning the same thing), and no consistent structure that downstream tools can reliably parse. This tool was built to solve that for a real workflow at Wissensforte, where reviewing and documenting SAP object structures was a regular task.
The core of the tool is a keyword-driven table detector: it scans the raw export for known SAP object markers (DDL Source, Lock Object, Field Name, View name, Function Group, Classes/Interfaces, etc.) and uses them as section boundaries to split the sheet into individual, labeled tables. Each section is then extracted and cleaned independently.
Column normalization handles the inconsistency problem: a dictionary maps every known variation of a column name to a single canonical label, so short descript, short text and short description all become short description in the output. The normalize_col_name function covers the full range of SAP export quirks that were actually encountered in practice, not theoretical ones.
The interface is a simple menu that walks through: select the input file, choose what to do with it, export the cleaned output. Archive management keeps previous exports organized. The goal was always to be something you could hand to someone non-technical and have them run it without explanation.
project.meta
- type
- Data Tool
- stack
- Python · pandas · openpyxl
- source
- repo
what it does
Key features
Keyword-driven section detection
Scans raw SAP exports for known object markers and uses them as boundaries to extract individual tables from a messy multi-table spreadsheet.
Column name normalization
Maps every known SAP column name variation to a canonical label. Inconsistent exports produce consistent output.
Clean XLSX output
Each detected section is written to a structured, formatted Excel file ready for analysis or documentation.
Menu-driven interface
File selection, processing and export through a step-by-step menu. Usable without any Python knowledge.
Archive management
Keeps previous exports organized so output files do not overwrite each other across runs.