import streamlit as st st.markdown( """ # Dump Compare Documentation ## 1. Objective Compare two dump files and detect row-level and parameter-level differences per object class. ## 2. When to use this tool Use this page when you need to identify what changed between an old and a new dump before integration. ## 3. Input files and accepted formats - Required: old dump `.xlsb` - Required: new dump `.xlsb` - Required: object classes (comma-separated, for example `BCF,BTS,WCEL`) ## 4. Required columns/fields For each requested object class sheet, the tool expects a Dist Name-like column (detected by matching `dist` + `name`). ## 5. Step-by-step usage 1. Open `Apps > Dump Compare`. 2. Upload old and new `.xlsb` files. 3. Enter object classes separated by commas. 4. Click `Run Comparison`. 5. Review logs and download ZIP results. ## 6. Outputs generated - in-app logs per object class - ZIP archive (`differences.zip`) containing one Excel per sheet with detected differences ## 7. Frequent errors and fixes - Dist_Name column not found. - Fix: verify sheet headers and naming consistency. - No common rows between dumps. - Fix: verify the same object class and naming standard in both files. - Sheet read error. - Fix: ensure object class exists in both dumps. ## 8. Minimal reproducible example - Input: two dumps containing sheet `BTS` with same Dist_Name domain and at least one changed parameter. - Action: run comparison on `BTS`. - Expected result: one `BTS_differences.xlsx` inside `differences.zip`. ## 9. Known limitations - Header detection is pattern-based and may fail on highly custom sheets. - Column comparison requires matching column names after cleaning. - Export is split by object class only. ## 10. Version and update date - Documentation version: 1.0 - Last update: 2026-02-23 """ )