AddressExport.kt.xlsx) exportiert. Handhabt Spaltenregistrierung, zugriffsgesteuerte Filterung und mehrteilige zusammengeführte Kopfzeilen für Post-, Geschäfts-, Postanschrift- und private Adressblöcke.AddressExport ist eine offene Klasse, die mit @Service("addressExport") annotiert ist und für die Erweiterung durch Plugins konzipiert wurde. Das Marketing-Plugin AddressCampaignValueExport erweitert sie und überschreibt registerAdditionalCols(), configureSheet() und handleAddressCampaign(), um kampagnenspezifische Felder hinzuzufügen.
registerCols)Registriert ~40 Spalten in dieser Reihenfolge:
registerAdditionalCols() — erweiterbarer Punkt für KampagnenwerteregisterAddress(sheet, ""))registerAddress(sheet, "postal"))Größenkonstanten von ExcelUtils.Size steuern die Spaltenbreiten: STANDARD (Standard), EMAIL, ZIPCODE, PHONENUMBER, EXTRA_LONG.
export())personalAddressMap).ExcelWorkbook mit Try-with-Resources über .use { }.configureSheet(sheet, *params) zur Anpassung durch Unterklassen.ExcelUtils.autoFill() für die Standard-Eigenschaftszuordnung auf, füllt manuell die Zellen der Postanschrift und die Kommunikationssprache und ruft dann handleAddressCampaign() für Kampagnendaten auf.registerAdditionalCols(sheet) — Plugin-Hook für zusätzliche Spalten (z. B. Kampagnenwerte).configureSheet(sheet, *params) — Anpassung nach der Einrichtung.handleAddressCampaign(row, address, *params) — Zeilenweise Kampagnendaten-Injektion.addressCampaignSupported — Boolesches Flag, Standardwert false.sheetTitle — I18n-Schlüssel, Standardwert "address.addresses".868d6abb7 2025 -> 2026 83cbccb11 ExcelUtils AddressExport: stream.use (Streams wurden vorher nicht geschlossen?) 78a38ca8f ExcelUtils.createFont und von allen Schriftarten-erstellenden Excel-Routinen verwendet. 63081666f Quelltextdatei-Header: 2024 -> 2025. 4c04cfd65 MAJOR-CHANGE! Migration von Integer-IDs zu Long-IDs b6092df09 Copyright 2023 -> 2024 ab45d51fa Copyright 2001-2022 -> 2001-2023. dce7927f4 Veraltete Kotlin-Funktion decapitalize() ersetzt 5f7ef41b8 Copyright 2021 -> 2022 e1538819c Merlin: Verwendet jetzt Autoclosure von ExcelWorkbook 91554ea83 Neue Merlin-Version.