Tuesday, April 2, 2024
3 changes · master
Resolved issues and error corrections
This change corrects spreadsheet dashboard and template files where pivot function names had been renamed unnecessarily or incorrectly. It helps keep dashboards working as expected while relying on the existing client-side upgrade process to handle function name updates automatically.
Original PR description
Partial revert of a6d2b0dc in which pivot functions were renamed. However, some were badly renamed in dashboard json files. It turns out we didn't even had to rename the functions in json files as the (client-side) upgrade script already takes care of that. Task: 3837323
This fixes the subscription renewal flow for the 'Send & try to charge' option. If an automatic payment attempt fails, the invoice is still created and sent manually so customers and staff do not lose track of the renewal charge.
Original PR description
Create a subscription model with 'Create invoice' option set to 'Send & try to charge'. Create a subscription product based on the model From Sale generate a sale order with such product, save and confirm. On renew, if the payment is not successfull the invoice will not be generated. Fixing by creating and sending the invoice manually in case the payment fails opw-2199358
Spreadsheet formulas now handle empty cells more consistently by storing them as empty values instead of text. This reduces the risk of incorrect formula behavior and makes spreadsheet data processing more reliable.
Original PR description
In previous commits we were able to change the structure of the formula evaluation payload so that the structure corresponds to the structure of an evaluated cell. This change greatly simplifies the reading of data from a cell when a formula need it. However, the data read from the cells is in some cases modified before being used by the formulas: This is particularly the case for empty cells which are saved as an empty string value, while the value is transformed into null during evaluation. This commit corrects this by directly recording the null value on empty cells. Task: 3685074