Skip navigation

Caveats

  1. Data is from 2014. Aktualizace dates reach back to 2006. Prices and suppliers are stale. Use the seed as a starting catalog, not a price list.
  2. qualitative_indicators includes header junk on some rows. The first-ever PČV (e.g. 101101) stores the entire column-header text plus a re-rendered copy of the row's own values at the top of the cell. That's literally what the source cell contains; the importer passes it through verbatim. Clean per-row in admin if you show this field on the site.
  3. Two columns named Kvalitativní ukazatele. The xls has both — the first usually holds the long description, the second is mostly empty or an alt-locale variant. Mapped to qualitative_indicators and qualitative_indicators_alt.
  4. Ten of twelve dimension variants are empty. Only Rozměr is populated consistently; Rozměr AJ/RJ/SK are blank for nearly every row. Keep the fields but don't rely on them.
  5. PČV is treated as a string. Some rows have it as an Excel number (e.g. 101101.0), some as a zero-padded string. The importer casts everything to the integer-like string "101101" so re-runs are idempotent.
  6. Zero ≠ blank for money fields. Numeric cells come in as 0.0 even when the price isn't known. The importer drops 0 so the DB keeps NULL rather than showing "0 Kč" in the UI.
  7. The per-category sheets duplicate data. Sheet 10 has the same rows as the 10xxxx subset of UnknownSheet1, but splits long text fields across many rows and uses Excel date serials instead of D.M.YYYY strings. We ignore them — using them would need a join-by-PČV merge and custom multi-row text stitching.
  8. in_assembly (V sestavě) semantics are unclear. The flag is True for very few rows (~1%). Possibly means "bundled with the room set" in the source app. Kept as-is; review with the domain owner before exposing.
  9. Boolean literals. Excel stores them as the strings "True" / "False", not actual booleans. The importer normalises both.
  10. Idempotence. !medical_asset and !asset_category both use GetOrCreateForeignObject, so re-running the import updates existing rows in place (matched by pcv / code) without creating duplicates.