From 1245444819300b85ab39665647dfd43b2125bc3d Mon Sep 17 00:00:00 2001 From: Abdul Aziz Amrullah Date: Tue, 9 Jun 2026 09:43:32 +0700 Subject: [PATCH] Update manifest.py and readme.md --- README.md | 4 +++- __manifest__.py | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index fecee4b..3c25b45 100644 --- a/README.md +++ b/README.md @@ -19,11 +19,13 @@ This is a custom Odoo 19 module designed specifically to export Point of Sale (P - The **Table/Customer** column intelligently uses fallbacks: it prioritizes the exact table number (stripping the floor name), falls back to the floating order name (for takeaways), and finally falls back to the customer's name. 4. **Integration with Odoo Studio Custom Fields** - - Specifically configured to pull SKU values from a custom Odoo Studio product field (`x_studio_popcorn_sku`), seamlessly bridging standard Point of Sale code with codeless customizations. + - Specifically configured to pull SKU values from a custom Odoo Studio product field (`x_studio_bc_item_id`), seamlessly bridging standard Point of Sale code with codeless customizations. 5. **Precise Formatting and Value Handling** - Outputs datetime data (such as "Date" and "Paid At") as strict text strings (format: `DD-MM-YYYY HH:MM:SS`) to bypass Excel's aggressive, and often erroneous, timezone/date auto-formatting. - Correctly calculates the amount paid by only summing positive payment tenders and using standard POS change allocations for exact accounting matches. + - Computes an aggregate order-level **Discount** by intelligently scanning all lines in the order for negative prices and summing their pre-tax subtotals. + - Dynamically formats the Excel filename using the uppercase Company Registry, shortened dates (YYMMDD), and hard length-capping (max 40 characters) to meet tight system naming requirements (e.g. `POS_MMSBYSABRJ_260607_to_260608.xlsx`). ## Requirements diff --git a/__manifest__.py b/__manifest__.py index e7c7356..6905bbb 100644 --- a/__manifest__.py +++ b/__manifest__.py @@ -13,8 +13,10 @@ - Splits data dynamically into 'Invoice' (positive) and 'Refund' (negative) sheets. - Calculates 'Dinein' and 'Takeaway' explicitly based on whether a table is assigned. - Intelligent fallback for the 'Table/Customer' column prioritizes table number, then floating order name, and finally customer name. - - Integrates with Odoo Studio custom field 'x_studio_popcorn_sku' for product mapping. + - Integrates with Odoo Studio custom field 'x_studio_bc_item_id' for product mapping. + - Dynamic order-level discount calculation by aggregating pre-tax negative price items. - Text-based date formatting to prevent spreadsheet auto-format issues. + - Smart max-length Excel filename generation utilizing the Company Registry and shortened dates. """, 'depends': ['point_of_sale'], 'data': [