[18.0] [IMP] spreadsheet_oca: headless XLSX export with server-side pivot rendering#101
Open
[18.0] [IMP] spreadsheet_oca: headless XLSX export with server-side pivot rendering#101
Conversation
… helpers Add shared infrastructure for upcoming server-side features: - cell_ref.py: parse cell references (A1 notation), read/write cell values in spreadsheet_raw JSON. Used by alerts, scenarios, input parameters, and XLSX export. - pivot_data.py: replicates the JS PivotModel's read_group strategy in Python — computes pivot table data server-side without executing JavaScript. Exposes get_pivot_data() as a JSON-RPC entry point, collect_pivot_summaries() for batch iteration, and render_pivot_table_html() for email/Chatter rendering. - _compute_related_count(): DRY helper on spreadsheet.spreadsheet for child-model count fields (used by all upcoming features). - Demo partners with geographic diversity for pivot tests. - Demo pivot dashboard spreadsheet with =PIVOT() formulas. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…t rendering Adds SpreadsheetXlsxExporter class that generates .xlsx files from spreadsheet records without requiring a browser. Static cells are written verbatim; ODOO pivots are re-computed from fresh database state via the pivot_data engine. Includes form button, JSON-RPC endpoint, attachment creation, and comprehensive tests covering static sheets, pivots, and cross-tabs. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
50de16e to
65e775e
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
SpreadsheetXlsxExporterclass for server-side .xlsx generation without a browserget_xlsx_bytesJSON-RPC endpoint for programmatic accessDepends on
Test plan
test_xlsx_export.pypasses (static sheets, formulas, pivots, cross-tabs, action/attachment creation)🤖 Generated with Claude Code