Skip to content

[FIX] report_xlsx: sanitize worksheet name to prevent InvalidWorksheetName - #1194

Open
stephansainleger wants to merge 1 commit into
OCA:18.0from
stephansainleger:18.0-sanitize-worksheet-name
Open

[FIX] report_xlsx: sanitize worksheet name to prevent InvalidWorksheetName#1194
stephansainleger wants to merge 1 commit into
OCA:18.0from
stephansainleger:18.0-sanitize-worksheet-name

Conversation

@stephansainleger

Copy link
Copy Markdown

Excel worksheet names are limited to 31 characters, cannot contain []:*?/\ and cannot start or end with an apostrophe. Report names do not guarantee these constraints, so xlsxwriter can raise InvalidWorksheetName (e.g. when a report name ends with an apostrophe once truncated to 31 chars).

Sanitize the sheet name in PatchedXlsxWorkbook._check_sheetname before the library validation and the duplicate handling, so a normalized name never triggers the error again. Add a test covering forbidden characters, leading/trailing apostrophes and length truncation.

…tName

Excel worksheet names are limited to 31 characters, cannot contain
[]:*?/\ and cannot start or end with an apostrophe. Report names do not
guarantee these constraints, so xlsxwriter can raise InvalidWorksheetName
(e.g. when a report name ends with an apostrophe once truncated to 31
chars).

Sanitize the sheet name in PatchedXlsxWorkbook._check_sheetname before
the library validation and the duplicate handling, so a normalized name
never triggers the error again. Add a test covering forbidden
characters, leading/trailing apostrophes and length truncation.
@stephansainleger

Copy link
Copy Markdown
Author

I'd like to request feedback from the community on this PR. I'm proposing it following a bug I encountered with one of my clients, where the company name resulted in an apostrophe landing exactly at the end of the sheet name. The goal is to avoid breaking the worksheet creation process. I also took the opportunity to clean up names more broadly, so that undesirable characters get sanitized as well.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants