diff --git a/addons/spreadsheet_dashboard_account/__init__.py b/addons/spreadsheet_dashboard_account/__init__.py new file mode 100644 index 00000000000..a449448a63f --- /dev/null +++ b/addons/spreadsheet_dashboard_account/__init__.py @@ -0,0 +1 @@ +# Part of Odoo. See LICENSE file for full copyright and licensing details. diff --git a/addons/spreadsheet_dashboard_account/__manifest__.py b/addons/spreadsheet_dashboard_account/__manifest__.py new file mode 100644 index 00000000000..eb63258f273 --- /dev/null +++ b/addons/spreadsheet_dashboard_account/__manifest__.py @@ -0,0 +1,25 @@ +# -*- coding: utf-8 -*- +# Part of Odoo. See LICENSE file for full copyright and licensing details. +{ + 'name': "Spreadsheet dashboard for accounting", + 'version': '1.0', + 'category': 'Hidden', + 'summary': 'Spreadsheet', + 'description': 'Spreadsheet', + 'depends': ['spreadsheet_dashboard', 'account'], + 'data': [ + "data/dashboards.xml", + ], + 'demo': [], + 'installable': True, + 'auto_install': ['account'], + 'license': 'LGPL-3', + 'assets': { + 'spreadsheet_dashboard.o_spreadsheet': [], + 'web.assets_backend': [], + 'web.assets_tests': [ + 'spreadsheet_dashboard_account/static/tests/**/*', + ], + 'web.qunit_suite_tests': [] + } +} diff --git a/addons/spreadsheet_dashboard_account/data/dashboards.xml b/addons/spreadsheet_dashboard_account/data/dashboards.xml new file mode 100644 index 00000000000..6fcea7ca2e6 --- /dev/null +++ b/addons/spreadsheet_dashboard_account/data/dashboards.xml @@ -0,0 +1,28 @@ + + + + + Accounting + + + + 10 + + + + Invoicing + + + + 20 + + + + Benchmark + + + + 30 + + + diff --git a/addons/spreadsheet_dashboard_account/data/files/accounting_dashboard.json b/addons/spreadsheet_dashboard_account/data/files/accounting_dashboard.json new file mode 100644 index 00000000000..23426f42e0b --- /dev/null +++ b/addons/spreadsheet_dashboard_account/data/files/accounting_dashboard.json @@ -0,0 +1,3114 @@ +{ + "version": 12, + "sheets": [ + { + "id": "Sheet1", + "name": "Dashboard", + "colNumber": 9, + "rowNumber": 38, + "rows": { + "6": { + "size": 40 + } + }, + "cols": { + "0": { + "size": 175 + }, + "1": { + "size": 100 + }, + "2": { + "size": 100 + }, + "3": { + "size": 100 + }, + "4": { + "size": 50 + }, + "5": { + "size": 175 + }, + "6": { + "size": 100 + }, + "7": { + "size": 100 + }, + "8": { + "size": 100 + } + }, + "merges": [], + "cells": { + "A7": { + "style": 1, + "content": "[Invoiced](odoo://view/{\"viewType\":\"graph\",\"action\":{\"domain\":[\"&\",[\"state\",\"not in\",[\"draft\",\"cancel\"]],\"|\",[\"move_type\",\"=\",\"out_invoice\"],[\"move_type\",\"=\",\"out_refund\"]],\"context\":{\"group_by\":[\"invoice_date\"],\"graph_measure\":\"price_subtotal\",\"graph_mode\":\"line\",\"graph_groupbys\":[\"invoice_date:month\"]},\"modelName\":\"account.invoice.report\",\"views\":[[false,\"graph\"],[false,\"pivot\"],[false,\"search\"]]},\"threshold\":0,\"name\":\"Invoices Analysis\",\"positional\":true})", + "border": 1 + }, + "A19": { + "style": 2, + "content": "Cash", + "border": 1 + }, + "A20": { + "style": 3, + "content": "Cash received", + "border": 2 + }, + "A21": { + "content": "Cash spent" + }, + "A22": { + "style": 3, + "content": "Cash surplus" + }, + "A23": { + "content": "Closing bank balance" + }, + "A25": { + "style": 2, + "content": "Performance", + "border": 1 + }, + "A26": { + "style": 3, + "content": "Gross profit margin", + "border": 2 + }, + "A27": { + "content": "Net profit margin" + }, + "A28": { + "style": 3, + "content": "Return on investments" + }, + "A29": { + "content": "Working capital" + }, + "A30": { + "style": 3, + "content": "Financial independence" + }, + "A31": { + "content": "Quick ratio" + }, + "A33": { + "style": 2, + "content": "Position", + "border": 1 + }, + "A34": { + "style": 3, + "content": "Average debtors days", + "border": 2 + }, + "A35": { + "content": "Average creditors days" + }, + "A36": { + "style": 3, + "content": "Short term cash forecast" + }, + "A37": { + "content": "Current assets to liabilities" + }, + "B1": { + "style": 4 + }, + "B2": { + "style": 4 + }, + "B3": { + "style": 4 + }, + "B4": { + "style": 4 + }, + "B5": { + "style": 4 + }, + "B6": { + "style": 4 + }, + "B7": { + "style": 4, + "border": 1 + }, + "B9": { + "style": 4 + }, + "B10": { + "style": 4 + }, + "B11": { + "style": 4 + }, + "B12": { + "style": 4 + }, + "B13": { + "style": 4 + }, + "B14": { + "style": 4 + }, + "B15": { + "style": 4 + }, + "B16": { + "style": 4 + }, + "B17": { + "style": 4 + }, + "B18": { + "style": 4 + }, + "B19": { + "style": 4, + "content": "=ODOO.FILTER.VALUE(\"Year\")", + "border": 1 + }, + "B20": { + "style": 3, + "content": "=Data!C11", + "border": 2 + }, + "B21": { + "content": "=Data!C12" + }, + "B22": { + "style": 3, + "content": "=Data!C13" + }, + "B23": { + "content": "=Data!C14" + }, + "B24": { + "style": 4 + }, + "B25": { + "style": 4, + "content": "=ODOO.FILTER.VALUE(\"Year\")", + "border": 1 + }, + "B26": { + "style": 3, + "content": "=Data!C16", + "border": 2 + }, + "B27": { + "content": "=Data!C17" + }, + "B28": { + "style": 3, + "content": "=Data!C18" + }, + "B29": { + "content": "=Data!C19" + }, + "B30": { + "style": 3, + "content": "=Data!C20" + }, + "B31": { + "content": "=Data!C21" + }, + "B33": { + "style": 4, + "content": "=ODOO.FILTER.VALUE(\"Year\")", + "border": 1 + }, + "B34": { + "style": 3, + "format": 1, + "content": "=Data!C23", + "border": 2 + }, + "B35": { + "format": 1, + "content": "=Data!C24" + }, + "B36": { + "style": 3, + "content": "=Data!C25" + }, + "B37": { + "content": "=Data!C26" + }, + "C1": { + "style": 4 + }, + "C2": { + "style": 4 + }, + "C3": { + "style": 4 + }, + "C4": { + "style": 4 + }, + "C5": { + "style": 4 + }, + "C6": { + "style": 4 + }, + "C7": { + "style": 4, + "border": 1 + }, + "C9": { + "style": 4 + }, + "C10": { + "style": 4 + }, + "C11": { + "style": 4 + }, + "C12": { + "style": 4 + }, + "C13": { + "style": 4 + }, + "C14": { + "style": 4 + }, + "C15": { + "style": 4 + }, + "C16": { + "style": 4 + }, + "C17": { + "style": 4 + }, + "C18": { + "style": 4 + }, + "C19": { + "style": 4, + "content": "=ODOO.FILTER.VALUE(\"Year\")-1", + "border": 1 + }, + "C20": { + "style": 3, + "content": "=Data!D11", + "border": 2 + }, + "C21": { + "content": "=Data!D12" + }, + "C22": { + "style": 3, + "content": "=Data!D13" + }, + "C23": { + "content": "=Data!D14" + }, + "C24": { + "style": 4 + }, + "C25": { + "style": 4, + "content": "=ODOO.FILTER.VALUE(\"Year\")-1", + "border": 1 + }, + "C26": { + "style": 3, + "content": "=Data!D16", + "border": 2 + }, + "C27": { + "content": "=Data!D17" + }, + "C28": { + "style": 3, + "content": "=Data!D18" + }, + "C29": { + "content": "=Data!D19" + }, + "C30": { + "style": 3, + "content": "=Data!D20" + }, + "C31": { + "content": "=Data!D21" + }, + "C33": { + "style": 4, + "content": "=ODOO.FILTER.VALUE(\"Year\")-1", + "border": 1 + }, + "C34": { + "style": 3, + "format": 1, + "content": "=Data!D23", + "border": 2 + }, + "C35": { + "format": 1, + "content": "=Data!D24" + }, + "C36": { + "style": 3, + "content": "=Data!D25" + }, + "C37": { + "content": "=Data!D26" + }, + "D1": { + "style": 4 + }, + "D2": { + "style": 4 + }, + "D3": { + "style": 4 + }, + "D4": { + "style": 4 + }, + "D5": { + "style": 4 + }, + "D6": { + "style": 4 + }, + "D7": { + "style": 4, + "border": 1 + }, + "D9": { + "style": 4 + }, + "D10": { + "style": 4 + }, + "D11": { + "style": 4 + }, + "D12": { + "style": 4 + }, + "D13": { + "style": 4 + }, + "D14": { + "style": 4 + }, + "D15": { + "style": 4 + }, + "D16": { + "style": 4 + }, + "D17": { + "style": 4 + }, + "D18": { + "style": 4 + }, + "D19": { + "style": 4, + "content": "Δ", + "border": 1 + }, + "D20": { + "style": 3, + "format": 2, + "content": "=iferror(B20/C20,0)", + "border": 2 + }, + "D21": { + "format": 2, + "content": "=iferror(B21/C21,0)" + }, + "D22": { + "style": 3, + "format": 2, + "content": "=iferror(B22/C22,0)" + }, + "D23": { + "format": 2, + "content": "=iferror(B23/C23,0)" + }, + "D24": { + "style": 4 + }, + "D25": { + "style": 4, + "content": "Δ", + "border": 1 + }, + "D26": { + "style": 3, + "format": 2, + "content": "=B26-C26", + "border": 2 + }, + "D27": { + "format": 2, + "content": "=B27-C27" + }, + "D28": { + "style": 3, + "format": 2, + "content": "=B28-C28" + }, + "D29": { + "content": "=B29-C29" + }, + "D30": { + "style": 3, + "content": "=B30-C30" + }, + "D31": { + "content": "=B31-C31" + }, + "D33": { + "style": 4, + "content": "Δ", + "border": 1 + }, + "D34": { + "style": 3, + "format": 3, + "content": "=iferror(B34/C34,0)", + "border": 2 + }, + "D35": { + "format": 3, + "content": "=iferror(B35/C35,0)" + }, + "D36": { + "style": 3, + "format": 3, + "content": "=iferror(B36/C36,0)" + }, + "D37": { + "format": 3, + "content": "=iferror(B37/C37,0)" + }, + "F19": { + "style": 2, + "content": "Profitability", + "border": 1 + }, + "F20": { + "style": 3, + "content": "Income", + "border": 2 + }, + "F21": { + "content": "Cost of revenue" + }, + "F22": { + "style": 3, + "content": "Gross profit" + }, + "F23": { + "content": "Expenses" + }, + "F24": { + "style": 3, + "content": "Net profit" + }, + "F26": { + "style": 2, + "content": "Balance sheet", + "border": 1 + }, + "F27": { + "style": 3, + "content": "Receivable", + "border": 2 + }, + "F28": { + "content": "Payables" + }, + "F29": { + "style": 3, + "content": "Net assets" + }, + "G19": { + "style": 4, + "content": "=ODOO.FILTER.VALUE(\"Year\")", + "border": 1 + }, + "G20": { + "style": 3, + "content": "=Data!C28", + "border": 2 + }, + "G21": { + "content": "=Data!C29" + }, + "G22": { + "style": 3, + "content": "=Data!C30" + }, + "G23": { + "content": "=Data!C31" + }, + "G24": { + "style": 3, + "content": "=Data!C32" + }, + "G26": { + "style": 4, + "content": "=ODOO.FILTER.VALUE(\"Year\")", + "border": 1 + }, + "G27": { + "style": 3, + "content": "=Data!C34", + "border": 2 + }, + "G28": { + "content": "=Data!C35" + }, + "G29": { + "style": 3, + "content": "=Data!C36" + }, + "H19": { + "style": 4, + "content": "=ODOO.FILTER.VALUE(\"Year\")-1", + "border": 1 + }, + "H20": { + "style": 3, + "content": "=Data!D28", + "border": 2 + }, + "H21": { + "content": "=Data!D29" + }, + "H22": { + "style": 3, + "content": "=Data!D30" + }, + "H23": { + "content": "=Data!D31" + }, + "H24": { + "style": 3, + "content": "=Data!D32" + }, + "H26": { + "style": 4, + "content": "=ODOO.FILTER.VALUE(\"Year\")-1", + "border": 1 + }, + "H27": { + "style": 3, + "content": "=Data!D34", + "border": 2 + }, + "H28": { + "content": "=Data!D35" + }, + "H29": { + "style": 3, + "content": "=Data!D36" + }, + "I19": { + "style": 4, + "content": "Δ", + "border": 1 + }, + "I20": { + "style": 3, + "format": 2, + "content": "=iferror(G20/H20,0)", + "border": 2 + }, + "I21": { + "format": 2, + "content": "=iferror(G21/H21,0)" + }, + "I22": { + "style": 3, + "format": 2, + "content": "=iferror(G22/H22,0)" + }, + "I23": { + "format": 2, + "content": "=iferror(G23/H23,0)" + }, + "I24": { + "style": 3, + "format": 2, + "content": "=iferror(G24/H24,0)" + }, + "I26": { + "style": 4, + "content": "Δ", + "border": 1 + }, + "I27": { + "style": 3, + "format": 2, + "content": "=iferror(G27/H27,0)", + "border": 2 + }, + "I28": { + "format": 2, + "content": "=iferror(G28/H28,0)" + }, + "I29": { + "style": 3, + "format": 2, + "content": "=iferror(G29/H29,0)" + }, + "A8": { + "border": 2 + }, + "B8": { + "border": 2 + }, + "C8": { + "border": 2 + }, + "D8": { + "border": 2 + }, + "E7": { + "border": 1 + }, + "E8": { + "border": 2 + }, + "F7": { + "border": 1 + }, + "F8": { + "border": 2 + }, + "G7": { + "border": 1 + }, + "G8": { + "border": 2 + }, + "H7": { + "border": 1 + }, + "H8": { + "border": 2 + }, + "I7": { + "border": 1 + }, + "I8": { + "border": 2 + } + }, + "conditionalFormats": [], + "figures": [ + { + "id": "151b0f60-aa89-457e-9456-9807ab779be6", + "x": 0, + "y": 178, + "width": 1000, + "height": 230, + "tag": "chart", + "data": { + "title": "", + "id": "151b0f60-aa89-457e-9456-9807ab779be6", + "background": "#FFFFFF", + "legendPosition": "none", + "metaData": { + "groupBy": [ + "invoice_date:month" + ], + "measure": "price_subtotal", + "order": null, + "resModel": "account.invoice.report" + }, + "searchParams": { + "comparison": null, + "context": { + "group_by": [ + "invoice_date" + ], + "group_by_no_leaf": 1 + }, + "domain": [ + "&", + [ + "state", + "not in", + [ + "draft", + "cancel" + ] + ], + "|", + [ + "move_type", + "=", + "out_invoice" + ], + [ + "move_type", + "=", + "out_refund" + ] + ], + "groupBy": [ + "invoice_date:month" + ], + "orderBy": [] + }, + "type": "odoo_line", + "verticalAxisPosition": "left" + } + }, + { + "id": "86aac7b2-f3a5-46e1-a097-916aa4b8f8d0", + "x": 0, + "y": 0, + "width": 200, + "height": 120, + "tag": "chart", + "data": { + "baselineColorDown": "#DC6965", + "baselineColorUp": "#00A04A", + "baselineMode": "difference", + "title": "Current income", + "type": "scorecard", + "baseline": "Data!C3", + "baselineDescr": "last period", + "keyValue": "Data!C2" + } + }, + { + "id": "3586cbc4-6ca3-46af-951f-94d4773f94dc", + "x": 210, + "y": 0, + "width": 200, + "height": 120, + "tag": "chart", + "data": { + "baselineColorDown": "#DC6965", + "baselineColorUp": "#00A04A", + "baselineMode": "difference", + "title": "Receivables", + "type": "scorecard", + "baselineDescr": "to receive", + "keyValue": "Data!C4" + } + }, + { + "id": "57f18f9a-55b7-4b84-b927-480c4c56c026", + "x": 420, + "y": 0, + "width": 200, + "height": 120, + "tag": "chart", + "data": { + "baselineColorDown": "#DC6965", + "baselineColorUp": "#00A04A", + "baselineMode": "difference", + "title": "Current expense", + "type": "scorecard", + "baseline": "Data!C6", + "baselineDescr": "last period", + "keyValue": "Data!C5" + } + }, + { + "id": "8f1fb053-5700-4bb3-b93d-55ceb2083d31", + "x": 630, + "y": 0, + "width": 200, + "height": 120, + "tag": "chart", + "data": { + "baselineColorDown": "#DC6965", + "baselineColorUp": "#00A04A", + "baselineMode": "difference", + "title": "Payables", + "type": "scorecard", + "baselineDescr": "to pay", + "keyValue": "Data!C7" + } + } + ], + "areGridLinesVisible": true, + "isVisible": true + }, + { + "id": "08b80fa9-158a-44a6-ad6c-c29245a6e31a", + "name": "Data", + "colNumber": 31, + "rowNumber": 150, + "rows": { + "40": { + "size": 23 + } + }, + "cols": { + "0": { + "size": 239 + }, + "1": { + "size": 213.8740234375 + }, + "2": { + "size": 234 + }, + "3": { + "size": 234 + }, + "4": { + "size": 234 + }, + "5": { + "size": 515.3046875 + }, + "6": { + "size": 101 + } + }, + "merges": [ + "A10:F10", + "A15:F15", + "A22:F22", + "A27:F27", + "A33:F33", + "A37:F37", + "A1:C1" + ], + "cells": { + "A1": { + "style": 2, + "content": "KPIS" + }, + "A2": { + "content": "Current income" + }, + "A3": { + "content": "Previous income" + }, + "A4": { + "content": "Receivables" + }, + "A5": { + "content": "Current expense" + }, + "A6": { + "content": "Previous expense" + }, + "A7": { + "content": "Payables" + }, + "A9": { + "style": 5, + "content": "Year" + }, + "A10": { + "style": 2, + "content": "Cash" + }, + "A11": { + "content": "Cash received" + }, + "A12": { + "content": "Cash spent" + }, + "A13": { + "content": "Cash surplus" + }, + "A14": { + "content": "Closing bank balance" + }, + "A15": { + "style": 2, + "content": "Performance" + }, + "A16": { + "content": "Gross profit margin" + }, + "A17": { + "content": "Net profit margin" + }, + "A18": { + "content": "Return on investments" + }, + "A19": { + "content": "Working capital" + }, + "A20": { + "content": "Financial independence" + }, + "A21": { + "content": "Quick ratio" + }, + "A22": { + "style": 2, + "content": "Position" + }, + "A23": { + "content": "Average debtors days" + }, + "A24": { + "content": "Average creditors days" + }, + "A25": { + "content": "Short term cash forecast" + }, + "A26": { + "content": "Current assets to liabilities" + }, + "A27": { + "style": 2, + "content": "Profitability" + }, + "A28": { + "content": "Income" + }, + "A29": { + "content": "Cost of revenue" + }, + "A30": { + "content": "Gross profit" + }, + "A31": { + "content": "Expenses" + }, + "A32": { + "content": "Net profit" + }, + "A33": { + "style": 2, + "content": "Balance sheet" + }, + "A34": { + "content": "Receivable" + }, + "A35": { + "content": "Payables" + }, + "A36": { + "content": "Net assets" + }, + "A37": { + "style": 2, + "content": "Other variables" + }, + "A38": { + "style": 6, + "content": "OPINC" + }, + "A39": { + "style": 6, + "content": "OIN" + }, + "A40": { + "style": 6, + "content": "TA" + }, + "A41": { + "style": 6, + "content": "CA" + }, + "A42": { + "style": 6, + "content": "BA" + }, + "A43": { + "style": 6, + "content": "REC" + }, + "A44": { + "style": 6, + "content": "CAS" + }, + "A45": { + "style": 6, + "content": "PRE" + }, + "A46": { + "style": 6, + "content": "FA" + }, + "A47": { + "style": 6, + "content": "PNCA" + }, + "A48": { + "style": 6, + "content": "L" + }, + "A49": { + "style": 6, + "content": "CL" + }, + "A50": { + "style": 6, + "content": "CL1" + }, + "A51": { + "style": 6, + "content": "CL2" + }, + "A52": { + "style": 6, + "content": "NL" + }, + "A53": { + "style": 6, + "content": "DEP" + }, + "A54": { + "style": 6, + "content": "EQ" + }, + "A55": { + "content": "UNAFFECTED_EARNINGS" + }, + "A56": { + "content": "CURR_YEAR_EARNINGS" + }, + "A57": { + "content": "CURR_YEAR_EARNINGS_PNL" + }, + "A58": { + "content": "CURR_YEAR_EARNINGS_ALLOC" + }, + "A59": { + "content": "PREV_YEAR_EARNINGS" + }, + "A60": { + "content": "ALLOCATED_EARNINGS" + }, + "A61": { + "content": "RETAINED_EARNINGS" + }, + "B1": { + "style": 2 + }, + "B2": { + "style": 7, + "content": "=C38" + }, + "B3": { + "style": 7, + "content": "=D38" + }, + "B4": { + "style": 7, + "content": "=C34" + }, + "B5": { + "style": 7, + "content": "=C31" + }, + "B6": { + "style": 7, + "content": "=D31" + }, + "B7": { + "style": 7, + "content": "=C35" + }, + "B9": { + "style": 5, + "content": "Code" + }, + "B10": { + "style": 2 + }, + "B11": { + "content": "CR" + }, + "B12": { + "content": "CS" + }, + "B13": { + "content": "CR + CS" + }, + "B15": { + "style": 2 + }, + "B16": { + "style": 6, + "content": "GRP/OPINC" + }, + "B17": { + "style": 6, + "content": "NEP/INC" + }, + "B18": { + "style": 6, + "content": "NEP/TA" + }, + "B19": { + "style": 6, + "content": "CA-CL" + }, + "B20": { + "style": 8, + "content": "EQ/CL" + }, + "B21": { + "content": "(BA + REC +CA)/CL" + }, + "B22": { + "style": 2 + }, + "B23": { + "style": 6, + "content": "DEB/OPINC*364" + }, + "B24": { + "style": 6, + "content": "-CRE/OPINC*364" + }, + "B25": { + "style": 6, + "content": "DEB+CRE" + }, + "B26": { + "style": 6, + "content": "CA/CL" + }, + "B27": { + "style": 2 + }, + "B28": { + "style": 6, + "content": "INC = OPINC + OIN" + }, + "B29": { + "style": 6, + "content": "COS" + }, + "B30": { + "style": 6, + "content": "GRP = OPINC - COS" + }, + "B31": { + "style": 6, + "content": "EXP" + }, + "B32": { + "style": 6, + "content": "NEP = OPINC + OIN - COS - EXP - DEP" + }, + "B33": { + "style": 2 + }, + "B34": { + "style": 6, + "content": "DEB" + }, + "B35": { + "style": 6, + "content": "CRE" + }, + "B36": { + "style": 6, + "content": "NA = TA - L" + }, + "B37": { + "style": 2 + }, + "B38": { + "style": 6 + }, + "B39": { + "style": 6 + }, + "B40": { + "style": 6, + "content": "CA + FA + PNCA" + }, + "B41": { + "style": 6, + "content": "BA + REC + CAS + PRE" + }, + "B42": { + "style": 6 + }, + "B43": { + "style": 6 + }, + "B44": { + "style": 6 + }, + "B45": { + "style": 6 + }, + "B46": { + "style": 6 + }, + "B47": { + "style": 6 + }, + "B48": { + "style": 6, + "content": "CL + NL" + }, + "B49": { + "style": 6, + "content": "CL1 + CL2" + }, + "B50": { + "style": 6 + }, + "B51": { + "style": 6 + }, + "B52": { + "style": 6 + }, + "B53": { + "style": 2 + }, + "B54": { + "style": 6, + "content": "UNAFFECTED_EARNINGS + RETAINED_EARNINGS" + }, + "B55": { + "content": "CURR_YEAR_EARNINGS + PREV_YEAR_EARNINGS" + }, + "B56": { + "content": "CURR_YEAR_EARNINGS_PNL + CURR_YEAR_EARNINGS_ALLOC" + }, + "B57": { + "content": "NEP" + }, + "B59": { + "content": "-sum + ALLOCATED_EARNINGS - CURR_YEAR_EARNINGS" + }, + "C1": { + "style": 2 + }, + "C2": { + "style": 3, + "content": "=FORMAT.LARGE.NUMBER(B2)" + }, + "C3": { + "style": 3, + "content": "=FORMAT.LARGE.NUMBER(B3)" + }, + "C4": { + "style": 3, + "content": "=FORMAT.LARGE.NUMBER(B4)" + }, + "C5": { + "style": 3, + "content": "=FORMAT.LARGE.NUMBER(B5)" + }, + "C6": { + "style": 3, + "content": "=FORMAT.LARGE.NUMBER(B6)" + }, + "C7": { + "style": 3, + "content": "=FORMAT.LARGE.NUMBER(B7)" + }, + "C9": { + "style": 5, + "content": "=ODOO.FILTER.VALUE(\"Year\")" + }, + "C10": { + "style": 2 + }, + "C11": { + "content": "=ODOO.DEBIT($F11,C$9)-D11" + }, + "C12": { + "content": "=-ODOO.CREDIT($F12,C$9)-D12" + }, + "C13": { + "content": "=C11+C12" + }, + "C14": { + "content": "=ODOO.BALANCE($F14,C$9)" + }, + "C15": { + "style": 2 + }, + "C16": { + "format": 3, + "content": "=iferror(C30/C38,0)" + }, + "C17": { + "format": 3, + "content": "=iferror(C32/C28,0)" + }, + "C18": { + "format": 3, + "content": "=iferror(C32/C40,0)" + }, + "C19": { + "format": 4, + "content": "=C41-C49" + }, + "C20": { + "style": 8, + "format": 1, + "content": "=iferror(C54/C49,0)" + }, + "C21": { + "style": 8, + "format": 1, + "content": "=iferror((C42+C43+C41)/C49,0)" + }, + "C22": { + "style": 2 + }, + "C23": { + "format": 5, + "content": "=iferror(C34/C38*364,0)" + }, + "C24": { + "format": 5, + "content": "=iferror(-C35/C38*364,0)" + }, + "C25": { + "format": 5, + "content": "=C34+C35" + }, + "C26": { + "format": 5, + "content": "=iferror(C41/C49,0)" + }, + "C27": { + "style": 2 + }, + "C28": { + "content": "=C38+C39" + }, + "C29": { + "content": "=ODOO.BALANCE($F29,C$9)-D29" + }, + "C30": { + "content": "=C38-C29" + }, + "C31": { + "content": "=ODOO.BALANCE($F31,C$9)-D31" + }, + "C32": { + "content": "=C38+C39-C29-C31-C53" + }, + "C33": { + "style": 2 + }, + "C34": { + "content": "=ODOO.BALANCE($F34,C$9)" + }, + "C35": { + "content": "=ODOO.BALANCE($F35,C$9)" + }, + "C36": { + "content": "=C40-C48" + }, + "C37": { + "style": 2 + }, + "C38": { + "content": "=-ODOO.BALANCE($F38,C$9)" + }, + "C39": { + "content": "=-ODOO.BALANCE($F39,C$9)" + }, + "C40": { + "style": 6, + "content": "=C41+C46+C47" + }, + "C41": { + "style": 6, + "content": "=C42+C43+C44+C45" + }, + "C42": { + "style": 6, + "content": "=ODOO.BALANCE($F42,C$9)" + }, + "C43": { + "style": 6, + "content": "=ODOO.BALANCE($F43,C$9)" + }, + "C44": { + "style": 6, + "content": "=ODOO.BALANCE($F44,C$9)" + }, + "C45": { + "style": 6, + "content": "=ODOO.BALANCE($F45,C$9)" + }, + "C46": { + "style": 6, + "content": "=ODOO.BALANCE($F46,C$9)" + }, + "C47": { + "style": 6, + "content": "=ODOO.BALANCE($F47,C$9)" + }, + "C48": { + "style": 6, + "content": "=C49+C52" + }, + "C49": { + "style": 6, + "content": "=C50+C51" + }, + "C50": { + "style": 6, + "content": "=-ODOO.BALANCE($F50,C$9)" + }, + "C51": { + "style": 6, + "content": "=-ODOO.BALANCE($F51,C$9)" + }, + "C52": { + "style": 6, + "content": "=-ODOO.BALANCE($F52,C$9)" + }, + "C53": { + "style": 6, + "content": "=ODOO.BALANCE($F53,C$9)" + }, + "C54": { + "style": 6, + "content": "=C55+C61" + }, + "C55": { + "content": "=C56+C59" + }, + "C56": { + "content": "=C57+C58" + }, + "C57": { + "content": "=C32" + }, + "C58": { + "content": "=-ODOO.BALANCE($F58,C$9)" + }, + "C59": { + "content": "=-ODOO.BALANCE($F59,C$9)+C60-C56" + }, + "C60": { + "content": "=-ODOO.BALANCE($F60,C$9)" + }, + "C61": { + "content": "=-ODOO.BALANCE($F61,C$9)" + }, + "D9": { + "style": 9, + "content": "=C9-1" + }, + "D10": { + "style": 2 + }, + "D11": { + "content": "=ODOO.DEBIT($F11,D$9)-E11" + }, + "D12": { + "content": "=-ODOO.CREDIT($F12,D$9)-E12" + }, + "D13": { + "content": "=D11+D12" + }, + "D14": { + "content": "=ODOO.BALANCE($F14,D$9)" + }, + "D15": { + "style": 2 + }, + "D16": { + "format": 3, + "content": "=iferror(D30/D38,0)" + }, + "D17": { + "format": 3, + "content": "=iferror(D32/D28,0)" + }, + "D18": { + "format": 3, + "content": "=iferror(D32/D40,0)" + }, + "D19": { + "format": 4, + "content": "=D41-D49" + }, + "D20": { + "style": 8, + "format": 1, + "content": "=iferror(D54/D49,0)" + }, + "D21": { + "style": 8, + "format": 1, + "content": "=iferror((D42+D43+D41)/D49,0)" + }, + "D22": { + "style": 2 + }, + "D23": { + "format": 5, + "content": "=iferror(D34/D38*364,0)" + }, + "D24": { + "format": 5, + "content": "=iferror(-D35/D38*364,0)" + }, + "D25": { + "format": 5, + "content": "=D34+D35" + }, + "D26": { + "format": 5, + "content": "=iferror(D41/D49,0)" + }, + "D27": { + "style": 2 + }, + "D28": { + "content": "=D38+D39" + }, + "D29": { + "content": "=ODOO.BALANCE($F29,D$9)-E29" + }, + "D30": { + "content": "=D38-D29" + }, + "D31": { + "content": "=ODOO.BALANCE($F31,D$9)-E31" + }, + "D32": { + "content": "=D38+D39-D29-D31-D53" + }, + "D33": { + "style": 2 + }, + "D34": { + "content": "=ODOO.BALANCE($F34,D$9)" + }, + "D35": { + "content": "=ODOO.BALANCE($F35,D$9)" + }, + "D36": { + "content": "=D40-D48" + }, + "D37": { + "style": 2 + }, + "D38": { + "style": 6, + "content": "=-ODOO.BALANCE($F38,D$9)" + }, + "D39": { + "style": 6, + "content": "=-ODOO.BALANCE($F39,D$9)" + }, + "D40": { + "style": 6, + "content": "=D41+D46+D47" + }, + "D41": { + "style": 6, + "content": "=D42+D43+D44+D45" + }, + "D42": { + "style": 6, + "content": "=ODOO.BALANCE($F42,D$9)" + }, + "D43": { + "style": 6, + "content": "=ODOO.BALANCE($F43,D$9)" + }, + "D44": { + "style": 6, + "content": "=ODOO.BALANCE($F44,D$9)" + }, + "D45": { + "style": 6, + "content": "=ODOO.BALANCE($F45,D$9)" + }, + "D46": { + "style": 6, + "content": "=ODOO.BALANCE($F46,D$9)" + }, + "D47": { + "style": 6, + "content": "=ODOO.BALANCE($F47,D$9)" + }, + "D48": { + "style": 6, + "content": "=D49+D52" + }, + "D49": { + "style": 6, + "content": "=D50+D51" + }, + "D50": { + "style": 6, + "content": "=-ODOO.BALANCE($F50,D$9)" + }, + "D51": { + "style": 6, + "content": "=-ODOO.BALANCE($F51,D$9)" + }, + "D52": { + "style": 6, + "content": "=-ODOO.BALANCE($F52,D$9)" + }, + "D53": { + "style": 6, + "content": "=ODOO.BALANCE($F53,D$9)" + }, + "D54": { + "style": 6, + "content": "=D55+D61" + }, + "D55": { + "content": "=D56+D59" + }, + "D56": { + "content": "=D57+D58" + }, + "D57": { + "content": "=D32" + }, + "D58": { + "content": "=-ODOO.BALANCE($F58,D$9)" + }, + "D59": { + "content": "=-ODOO.BALANCE($F59,D$9)+D60-D56" + }, + "D60": { + "content": "=-ODOO.BALANCE($F60,D$9)" + }, + "D61": { + "content": "=-ODOO.BALANCE($F61,D$9)" + }, + "E9": { + "style": 9, + "content": "=D9-1" + }, + "E10": { + "style": 2 + }, + "E11": { + "content": "=ODOO.DEBIT($F11,E$9)" + }, + "E12": { + "content": "=-ODOO.CREDIT($F12,E$9)" + }, + "E13": { + "content": "=E11+E12" + }, + "E14": { + "content": "=ODOO.BALANCE($F14,E$9)" + }, + "E15": { + "style": 2 + }, + "E16": { + "format": 3, + "content": "=iferror(E30/E38,0)" + }, + "E17": { + "format": 3, + "content": "=iferror(E32/E28,0)" + }, + "E18": { + "format": 3, + "content": "=iferror(E32/E40,0)" + }, + "E19": { + "format": 4, + "content": "=E41-E49" + }, + "E20": { + "style": 8, + "format": 1, + "content": "=iferror(E54/E49,0)" + }, + "E21": { + "style": 8, + "format": 1, + "content": "=iferror((E42+E43+E41)/E49,0)" + }, + "E22": { + "style": 2 + }, + "E23": { + "content": "=iferror(E34/E38*364,0)" + }, + "E24": { + "content": "=iferror(-E35/E38*364,0)" + }, + "E25": { + "content": "=E34+E35" + }, + "E26": { + "content": "=iferror(E41/E49,0)" + }, + "E27": { + "style": 2 + }, + "E28": { + "content": "=E38+E39" + }, + "E29": { + "content": "=ODOO.BALANCE($F29,E$9)" + }, + "E30": { + "content": "=E38-E29" + }, + "E31": { + "content": "=ODOO.BALANCE($F31,E$9)" + }, + "E32": { + "content": "=E38+E39-E29-E31-E53" + }, + "E33": { + "style": 2 + }, + "E34": { + "content": "=ODOO.BALANCE($F34,E$9)" + }, + "E35": { + "content": "=ODOO.BALANCE($F35,E$9)" + }, + "E36": { + "content": "=E40-E48" + }, + "E37": { + "style": 2 + }, + "E38": { + "style": 6, + "content": "=-ODOO.BALANCE($F38,E$9)" + }, + "E39": { + "style": 6, + "content": "=-ODOO.BALANCE($F39,E$9)" + }, + "E40": { + "style": 6, + "content": "=E41+E46+E47" + }, + "E41": { + "style": 6, + "content": "=E42+E43+E44+E45" + }, + "E42": { + "style": 6, + "content": "=ODOO.BALANCE($F42,E$9)" + }, + "E43": { + "style": 6, + "content": "=ODOO.BALANCE($F43,E$9)" + }, + "E44": { + "style": 6, + "content": "=ODOO.BALANCE($F44,E$9)" + }, + "E45": { + "style": 6, + "content": "=ODOO.BALANCE($F45,E$9)" + }, + "E46": { + "style": 6, + "content": "=ODOO.BALANCE($F46,E$9)" + }, + "E47": { + "style": 6, + "content": "=ODOO.BALANCE($F47,E$9)" + }, + "E48": { + "style": 6, + "content": "=E49+E52" + }, + "E49": { + "style": 6, + "content": "=E50+E51" + }, + "E50": { + "style": 6, + "content": "=-ODOO.BALANCE($F50,E$9)" + }, + "E51": { + "style": 6, + "content": "=-ODOO.BALANCE($F51,E$9)" + }, + "E52": { + "style": 6, + "content": "=-ODOO.BALANCE($F52,E$9)" + }, + "E53": { + "style": 6, + "content": "=ODOO.BALANCE($F53,E$9)" + }, + "E54": { + "style": 6, + "content": "=E55+E61" + }, + "E55": { + "content": "=E56+E59" + }, + "E56": { + "content": "=E57+E58" + }, + "E57": { + "content": "=E32" + }, + "E58": { + "content": "=-ODOO.BALANCE($F58,E$9)" + }, + "E59": { + "content": "=-ODOO.BALANCE($F59,E$9)+E60-E56" + }, + "E60": { + "content": "=-ODOO.BALANCE($F60,E$9)" + }, + "E61": { + "content": "=-ODOO.BALANCE($F61,E$9)" + }, + "F9": { + "style": 5, + "content": "Accounts" + }, + "F10": { + "style": 2 + }, + "F11": { + "content": "=CONCATENATE(ODOO.ACCOUNT.GROUP(\"asset_cash\"),\", \",ODOO.ACCOUNT.GROUP(\"liability_credit_card\"))" + }, + "F12": { + "content": "=CONCATENATE(ODOO.ACCOUNT.GROUP(\"asset_cash\"),\", \",ODOO.ACCOUNT.GROUP(\"liability_credit_card\"))" + }, + "F14": { + "content": "=CONCATENATE(ODOO.ACCOUNT.GROUP(\"asset_cash\"),\", \",ODOO.ACCOUNT.GROUP(\"liability_credit_card\"))" + }, + "F15": { + "style": 2 + }, + "F16": { + "style": 10 + }, + "F17": { + "style": 10 + }, + "F18": { + "style": 10 + }, + "F19": { + "style": 10 + }, + "F20": { + "style": 10 + }, + "F21": { + "style": 10 + }, + "F22": { + "style": 2 + }, + "F23": { + "style": 10 + }, + "F24": { + "style": 10 + }, + "F25": { + "style": 10 + }, + "F26": { + "style": 10 + }, + "F27": { + "style": 2 + }, + "F28": { + "style": 10 + }, + "F29": { + "style": 10, + "content": "=ODOO.ACCOUNT.GROUP(\"expense_direct_cost\")" + }, + "F30": { + "style": 10 + }, + "F31": { + "style": 10, + "content": "=ODOO.ACCOUNT.GROUP(\"expense\")" + }, + "F32": { + "style": 10 + }, + "F33": { + "style": 2 + }, + "F34": { + "style": 10, + "content": "=ODOO.ACCOUNT.GROUP(\"asset_receivable\")" + }, + "F35": { + "style": 10, + "content": "=ODOO.ACCOUNT.GROUP(\"liability_payable\")" + }, + "F36": { + "style": 10, + "content": "x" + }, + "F37": { + "style": 2 + }, + "F38": { + "style": 10, + "content": "=ODOO.ACCOUNT.GROUP(\"income\")" + }, + "F40": { + "style": 10 + }, + "F41": { + "style": 10 + }, + "F42": { + "style": 10, + "content": "=ODOO.ACCOUNT.GROUP(\"asset_cash\")" + }, + "F43": { + "style": 10, + "content": "=ODOO.ACCOUNT.GROUP(\"asset_receivable\")" + }, + "F44": { + "style": 10, + "content": "=ODOO.ACCOUNT.GROUP(\"asset_current\")" + }, + "F45": { + "style": 10, + "content": "=ODOO.ACCOUNT.GROUP(\"asset_prepayments\")" + }, + "F46": { + "style": 10, + "content": "=ODOO.ACCOUNT.GROUP(\"asset_fixed\")" + }, + "F47": { + "style": 10, + "content": "=ODOO.ACCOUNT.GROUP(\"asset_non_current\")" + }, + "F48": { + "style": 10 + }, + "F49": { + "style": 10 + }, + "F50": { + "style": 10, + "content": "=CONCATENATE(ODOO.ACCOUNT.GROUP(\"liability_current\"),\", \",ODOO.ACCOUNT.GROUP(\"liability_credit_card\"))" + }, + "F51": { + "style": 10, + "content": "=ODOO.ACCOUNT.GROUP(\"liability_payable\")" + }, + "F52": { + "style": 10, + "content": "=ODOO.ACCOUNT.GROUP(\"liability_non_current\")" + }, + "F53": { + "content": "X" + }, + "F54": { + "style": 10, + "content": "=ODOO.ACCOUNT.GROUP(\"equity\")" + }, + "F58": { + "content": "=ODOO.ACCOUNT.GROUP(\"equity_unaffected\")" + }, + "F59": { + "content": "=CONCATENATE(ODOO.ACCOUNT.GROUP(\"income\"),\", \",ODOO.ACCOUNT.GROUP(\"income_other\"),\", \",ODOO.ACCOUNT.GROUP(\"expense_direct_cost\"),\", \",ODOO.ACCOUNT.GROUP(\"expense\"),\", \",ODOO.ACCOUNT.GROUP(\"expense_depreciation\"))" + }, + "F60": { + "content": "=ODOO.ACCOUNT.GROUP(\"equity_unaffected\")" + }, + "F61": { + "content": "=ODOO.ACCOUNT.GROUP(\"equity\")" + }, + "G16": { + "style": 6 + }, + "G17": { + "style": 10 + }, + "G18": { + "style": 10 + }, + "G19": { + "style": 10 + }, + "G20": { + "style": 10 + }, + "G21": { + "style": 10 + }, + "G22": { + "style": 10 + }, + "G23": { + "style": 10 + }, + "G24": { + "style": 10 + }, + "G25": { + "style": 10 + }, + "G26": { + "style": 10 + }, + "G27": { + "style": 10 + }, + "G28": { + "style": 10 + }, + "G29": { + "style": 10 + }, + "G30": { + "style": 10 + }, + "G31": { + "style": 10 + }, + "G32": { + "style": 10 + }, + "G33": { + "style": 10 + }, + "G34": { + "style": 10 + }, + "G35": { + "style": 10 + }, + "G36": { + "style": 10 + }, + "G37": { + "style": 10 + }, + "G38": { + "style": 10 + }, + "G39": { + "style": 10 + }, + "G40": { + "style": 10 + }, + "G41": { + "style": 10 + }, + "G42": { + "style": 10 + }, + "G43": { + "style": 10 + }, + "G44": { + "style": 10 + }, + "G45": { + "style": 10 + }, + "G46": { + "style": 10 + }, + "G47": { + "style": 10 + }, + "G48": { + "style": 10 + }, + "G49": { + "style": 10 + }, + "G50": { + "style": 10 + }, + "G51": { + "style": 10 + }, + "G52": { + "style": 10 + }, + "G53": { + "style": 11 + }, + "G54": { + "style": 11 + }, + "H8": { + "style": 12 + }, + "H9": { + "style": 12 + }, + "H10": { + "style": 12 + }, + "H11": { + "style": 12 + }, + "H12": { + "style": 12 + }, + "H13": { + "style": 12 + }, + "H14": { + "style": 12 + }, + "H15": { + "style": 12 + }, + "H16": { + "style": 13 + }, + "H17": { + "style": 6 + }, + "H18": { + "style": 6 + }, + "H19": { + "style": 6 + }, + "H20": { + "style": 6 + }, + "H21": { + "style": 6 + }, + "H22": { + "style": 6 + }, + "H23": { + "style": 6 + }, + "H24": { + "style": 6 + }, + "H25": { + "style": 6 + }, + "H26": { + "style": 6 + }, + "H27": { + "style": 6 + }, + "H28": { + "style": 6 + }, + "H29": { + "style": 6 + }, + "H30": { + "style": 6 + }, + "H31": { + "style": 6 + }, + "H32": { + "style": 6 + }, + "H33": { + "style": 6 + }, + "H34": { + "style": 6 + }, + "H35": { + "style": 6 + }, + "H36": { + "style": 6 + }, + "H37": { + "style": 6 + }, + "H38": { + "style": 6 + }, + "H39": { + "style": 6 + }, + "H40": { + "style": 6 + }, + "H41": { + "style": 6 + }, + "H42": { + "style": 6 + }, + "H43": { + "style": 6 + }, + "H44": { + "style": 6 + }, + "H45": { + "style": 6 + }, + "H46": { + "style": 6 + }, + "H47": { + "style": 6 + }, + "H48": { + "style": 6 + }, + "H49": { + "style": 6 + }, + "H50": { + "style": 6 + }, + "H51": { + "style": 6 + }, + "H52": { + "style": 6 + }, + "H53": { + "style": 2 + }, + "H54": { + "style": 2 + }, + "I8": { + "style": 12 + }, + "I9": { + "style": 12 + }, + "I10": { + "style": 12 + }, + "I11": { + "style": 12 + }, + "I12": { + "style": 12 + }, + "I13": { + "style": 12 + }, + "I14": { + "style": 12 + }, + "I15": { + "style": 12 + }, + "I16": { + "style": 12 + }, + "I17": { + "style": 2 + }, + "I18": { + "style": 2 + }, + "I19": { + "style": 2 + }, + "I20": { + "style": 2 + }, + "I21": { + "style": 2 + }, + "I22": { + "style": 2 + }, + "I23": { + "style": 2 + }, + "I24": { + "style": 2 + }, + "I25": { + "style": 2 + }, + "I26": { + "style": 2 + }, + "I27": { + "style": 2 + }, + "I28": { + "style": 2 + }, + "I29": { + "style": 2 + }, + "I30": { + "style": 2 + }, + "I31": { + "style": 2 + }, + "I32": { + "style": 2 + }, + "I33": { + "style": 2 + }, + "I34": { + "style": 2 + }, + "I35": { + "style": 2 + }, + "I36": { + "style": 2 + }, + "I37": { + "style": 2 + }, + "I38": { + "style": 2 + }, + "I39": { + "style": 2 + }, + "I40": { + "style": 2 + }, + "I41": { + "style": 2 + }, + "I42": { + "style": 2 + }, + "I43": { + "style": 2 + }, + "I44": { + "style": 2 + }, + "I45": { + "style": 2 + }, + "I46": { + "style": 2 + }, + "I47": { + "style": 2 + }, + "I48": { + "style": 2 + }, + "I49": { + "style": 2 + }, + "I50": { + "style": 2 + }, + "I51": { + "style": 2 + }, + "I52": { + "style": 2 + }, + "I53": { + "style": 2 + }, + "I54": { + "style": 2 + }, + "J8": { + "style": 12 + }, + "J9": { + "style": 12 + }, + "J10": { + "style": 12 + }, + "J11": { + "style": 12 + }, + "J12": { + "style": 12 + }, + "J13": { + "style": 12 + }, + "J14": { + "style": 12 + }, + "J15": { + "style": 12 + }, + "J16": { + "style": 12 + }, + "J17": { + "style": 2 + }, + "J18": { + "style": 2 + }, + "J19": { + "style": 2 + }, + "J20": { + "style": 2 + }, + "J21": { + "style": 2 + }, + "J22": { + "style": 2 + }, + "J23": { + "style": 2 + }, + "J24": { + "style": 2 + }, + "J25": { + "style": 2 + }, + "J26": { + "style": 2 + }, + "J27": { + "style": 2 + }, + "J28": { + "style": 2 + }, + "J29": { + "style": 2 + }, + "J30": { + "style": 2 + }, + "J31": { + "style": 2 + }, + "J32": { + "style": 2 + }, + "J33": { + "style": 2 + }, + "J34": { + "style": 2 + }, + "J35": { + "style": 2 + }, + "J36": { + "style": 2 + }, + "J37": { + "style": 2 + }, + "J38": { + "style": 2 + }, + "J39": { + "style": 2 + }, + "J40": { + "style": 2 + }, + "J41": { + "style": 2 + }, + "J42": { + "style": 2 + }, + "J43": { + "style": 2 + }, + "J44": { + "style": 2 + }, + "J45": { + "style": 2 + }, + "J46": { + "style": 2 + }, + "J47": { + "style": 2 + }, + "J48": { + "style": 2 + }, + "J49": { + "style": 2 + }, + "J50": { + "style": 2 + }, + "J51": { + "style": 2 + }, + "J52": { + "style": 2 + }, + "J53": { + "style": 2 + }, + "J54": { + "style": 2 + }, + "K8": { + "style": 12 + }, + "K9": { + "style": 12 + }, + "K10": { + "style": 12 + }, + "K11": { + "style": 12 + }, + "K12": { + "style": 12 + }, + "K13": { + "style": 12 + }, + "K14": { + "style": 12 + }, + "K15": { + "style": 12 + }, + "K16": { + "style": 12 + }, + "K17": { + "style": 2 + }, + "K18": { + "style": 2 + }, + "K19": { + "style": 2 + }, + "K20": { + "style": 2 + }, + "K21": { + "style": 2 + }, + "K22": { + "style": 2 + }, + "K23": { + "style": 2 + }, + "K24": { + "style": 2 + }, + "K25": { + "style": 2 + }, + "K26": { + "style": 2 + }, + "K27": { + "style": 2 + }, + "K28": { + "style": 2 + }, + "K29": { + "style": 2 + }, + "K30": { + "style": 2 + }, + "K31": { + "style": 2 + }, + "K32": { + "style": 2 + }, + "K33": { + "style": 2 + }, + "K34": { + "style": 2 + }, + "K35": { + "style": 2 + }, + "K36": { + "style": 2 + }, + "K37": { + "style": 2 + }, + "K38": { + "style": 2 + }, + "K39": { + "style": 2 + }, + "K40": { + "style": 2 + }, + "K41": { + "style": 2 + }, + "K42": { + "style": 2 + }, + "K43": { + "style": 2 + }, + "K44": { + "style": 2 + }, + "K45": { + "style": 2 + }, + "K46": { + "style": 2 + }, + "K47": { + "style": 2 + }, + "K48": { + "style": 2 + }, + "K49": { + "style": 2 + }, + "K50": { + "style": 2 + }, + "K51": { + "style": 2 + }, + "K52": { + "style": 2 + }, + "K53": { + "style": 2 + }, + "K54": { + "style": 2 + }, + "L8": { + "style": 12 + }, + "L9": { + "style": 12 + }, + "L10": { + "style": 12 + }, + "L11": { + "style": 12 + }, + "L12": { + "style": 12 + }, + "L13": { + "style": 12 + }, + "L14": { + "style": 12 + }, + "L15": { + "style": 12 + }, + "L16": { + "style": 12 + }, + "L17": { + "style": 2 + }, + "L18": { + "style": 2 + }, + "L19": { + "style": 2 + }, + "L20": { + "style": 2 + }, + "L21": { + "style": 2 + }, + "L22": { + "style": 2 + }, + "L23": { + "style": 2 + }, + "L24": { + "style": 2 + }, + "L25": { + "style": 2 + }, + "L26": { + "style": 2 + }, + "L27": { + "style": 2 + }, + "L28": { + "style": 2 + }, + "L29": { + "style": 2 + }, + "L30": { + "style": 2 + }, + "L31": { + "style": 2 + }, + "L32": { + "style": 2 + }, + "L33": { + "style": 2 + }, + "L34": { + "style": 2 + }, + "L35": { + "style": 2 + }, + "L36": { + "style": 2 + }, + "L37": { + "style": 2 + }, + "L38": { + "style": 2 + }, + "L39": { + "style": 2 + }, + "L40": { + "style": 2 + }, + "L41": { + "style": 2 + }, + "L42": { + "style": 2 + }, + "L43": { + "style": 2 + }, + "L44": { + "style": 2 + }, + "L45": { + "style": 2 + }, + "L46": { + "style": 2 + }, + "L47": { + "style": 2 + }, + "L48": { + "style": 2 + }, + "L49": { + "style": 2 + }, + "L50": { + "style": 2 + }, + "L51": { + "style": 2 + }, + "L52": { + "style": 2 + }, + "L53": { + "style": 2 + }, + "L54": { + "style": 2 + }, + "M8": { + "style": 12 + }, + "M9": { + "style": 12 + }, + "M10": { + "style": 12 + }, + "M11": { + "style": 12 + }, + "M12": { + "style": 12 + }, + "M13": { + "style": 12 + }, + "M14": { + "style": 12 + }, + "M15": { + "style": 12 + }, + "M16": { + "style": 12 + }, + "M17": { + "style": 2 + }, + "M18": { + "style": 2 + }, + "M19": { + "style": 2 + }, + "M20": { + "style": 2 + }, + "M21": { + "style": 2 + }, + "M22": { + "style": 2 + }, + "M23": { + "style": 2 + }, + "M24": { + "style": 2 + }, + "M25": { + "style": 2 + }, + "M26": { + "style": 2 + }, + "M27": { + "style": 2 + }, + "M28": { + "style": 2 + }, + "M29": { + "style": 2 + }, + "M30": { + "style": 2 + }, + "M31": { + "style": 2 + }, + "M32": { + "style": 2 + }, + "M33": { + "style": 2 + }, + "M34": { + "style": 2 + }, + "M35": { + "style": 2 + }, + "M36": { + "style": 2 + }, + "M37": { + "style": 2 + }, + "M38": { + "style": 2 + }, + "M39": { + "style": 2 + }, + "M40": { + "style": 2 + }, + "M41": { + "style": 2 + }, + "M42": { + "style": 2 + }, + "M43": { + "style": 2 + }, + "M44": { + "style": 2 + }, + "M45": { + "style": 2 + }, + "M46": { + "style": 2 + }, + "M47": { + "style": 2 + }, + "M48": { + "style": 2 + }, + "M49": { + "style": 2 + }, + "M50": { + "style": 2 + }, + "M51": { + "style": 2 + }, + "M52": { + "style": 2 + }, + "M53": { + "style": 2 + }, + "M54": { + "style": 2 + } + }, + "conditionalFormats": [], + "figures": [], + "areGridLinesVisible": true, + "isVisible": true + } + ], + "entities": {}, + "styles": { + "1": { + "textColor": "#01666b", + "fontSize": 16, + "bold": true + }, + "2": { + "bold": true + }, + "3": { + "fillColor": "#f8f9fa" + }, + "4": { + "align": "right", + "bold": true + }, + "5": { + "italic": true, + "bold": true + }, + "6": { + "bold": false + }, + "7": { + "fillColor": "" + }, + "8": { + "bold": false, + "fillColor": "" + }, + "9": { + "align": "left", + "italic": true, + "bold": true + }, + "10": { + "bold": false, + "align": "left" + }, + "11": { + "bold": true, + "align": "left" + }, + "12": { + "align": "center" + }, + "13": { + "align": "center", + "bold": false + } + }, + "formats": { + "1": "0.0", + "2": "0%", + "3": "0.0%", + "4": "0", + "5": "0.00" + }, + "borders": { + "1": { + "bottom": [ + "thin", + "#000" + ] + }, + "2": { + "top": [ + "thin", + "#000" + ] + } + }, + "revisionId": "START_REVISION", + "chartOdooMenusReferences": { + "cb548cd5-6798-46c9-ade5-3b497efbfc4a": "account_accountant.menu_accounting", + "151b0f60-aa89-457e-9456-9807ab779be6": "account_accountant.menu_accounting" + }, + "odooVersion": 3, + "pivots": {}, + "pivotNextId": 1, + "lists": {}, + "listNextId": 1, + "globalFilters": [ + { + "id": "7785b753-917c-4640-a937-4b6226222ca8", + "type": "date", + "label": "Year", + "defaultValue": {}, + "rangeType": "year", + "defaultsToCurrentPeriod": true, + "pivotFields": {}, + "listFields": {}, + "graphFields": { + "151b0f60-aa89-457e-9456-9807ab779be6": { + "field": "invoice_date", + "type": "date", + "offset": 0 + } + } + } + ] +} \ No newline at end of file diff --git a/addons/spreadsheet_dashboard_account/data/files/benchmark_dashboard.json b/addons/spreadsheet_dashboard_account/data/files/benchmark_dashboard.json new file mode 100644 index 00000000000..7827da5b28e --- /dev/null +++ b/addons/spreadsheet_dashboard_account/data/files/benchmark_dashboard.json @@ -0,0 +1,1457 @@ +{ + "version": 12, + "sheets": [ + { + "id": "Sheet1", + "name": "Dashboard", + "colNumber": 4, + "rowNumber": 40, + "rows": {}, + "cols": { + "0": { + "size": 225 + }, + "1": { + "size": 445 + }, + "2": { + "size": 225 + }, + "3": { + "size": 445 + } + }, + "merges": [], + "cells": { + "B1": { + "style": 1 + }, + "B2": { + "style": 1, + "content": "(Net sales – COGS) / Net sales" + }, + "B3": { + "content": "> 50%: hugely profitable business" + }, + "B4": { + "content": "< 20%: hard to become profitable" + }, + "B5": { + "content": "possible issue in the business model" + }, + "B10": { + "style": 1, + "content": "EBIT / Net sales" + }, + "B11": { + "content": "< 5%: not efficient at operating business" + }, + "B12": { + "content": "> 10%: very efficient at operating business" + }, + "B13": { + "content": "possible issue in COGS (Cost of Goods sold)" + }, + "B18": { + "style": 1, + "content": "Current assets / Current liabilities" + }, + "B19": { + "content": "> 1.5: strong financial performance" + }, + "B20": { + "content": "< 1: weak financial performance" + }, + "B21": { + "content": "possible issue with asset distribution and cash availability" + }, + "B26": { + "style": 1, + "content": "Current assets – Current liabilities" + }, + "B27": { + "content": "> 0: company can meet financial obligations at any time" + }, + "B28": { + "content": "< 0: company might not be able to meet obligations" + }, + "B29": { + "content": "possible issues in cash availability at short term" + }, + "B34": { + "style": 1, + "content": "Net Credit Purchases / Average accounts payable balance for period" + }, + "B35": { + "content": "> 3: company liquidates debts to suppliers quickly" + }, + "B36": { + "content": "< 2: company might be slow to pay suppliers" + }, + "B37": { + "content": "possible issue in providers payments, could lead to loss of suppliers trust" + }, + "B38": { + "content": "Very dependent on the sector" + }, + "B39": { + "content": "Best if compared with competitors" + }, + "D1": { + "style": 1 + }, + "D2": { + "style": 1, + "content": "Net income / Revenue" + }, + "D3": { + "content": "< 3%: not efficient at generating business" + }, + "D4": { + "content": "> 10%: very efficient" + }, + "D5": { + "content": "possible issue in direct and indirect costs" + }, + "D10": { + "style": 1, + "content": "Total liabilities / Total shareholders’ equity" + }, + "D11": { + "content": "< 2.5: mature company who accumulated a lot of money" + }, + "D12": { + "content": "> 5: company owns a lot of debt and not of a lot of own money" + }, + "D13": { + "content": "possible issue in ressources allocation or missed growth opportunities" + }, + "D18": { + "style": 1, + "content": "Cash flow / Current liabilities" + }, + "D19": { + "content": "> 1: income allow to meet financial obligations" + }, + "D20": { + "content": "< 0.8: income might be too low" + }, + "D21": { + "content": "number of times you can pay off current debts with cash generated per year" + }, + "D26": { + "style": 1, + "content": "Quick assets / Current liabilities" + }, + "D27": { + "content": "> 1: company in highly solvent position" + }, + "D28": { + "content": "< 0.7: company might be stuck with non liquid assets" + }, + "D29": { + "content": "possible issues in cash availability at short term" + }, + "D34": { + "style": 1, + "content": "Sales on account / Average accounts receivable balance for period" + }, + "D35": { + "content": "> 10: company gets paid for sales quickly" + }, + "D36": { + "content": "< 6: company might not get paid for sales quickly enough" + }, + "D37": { + "content": "possible issue in payment terms agreement with clients to get paid faster" + }, + "D38": { + "content": "Very dependent on the sector" + }, + "D39": { + "content": "Best if compared with competitors" + } + }, + "conditionalFormats": [], + "figures": [ + { + "id": "3d4e431e-fdfb-4aba-baba-14a9990b0a22", + "x": 0, + "y": 0, + "width": 225, + "height": 184, + "tag": "chart", + "data": { + "sectionRule": { + "colors": { + "lowerColor": "#cc0000", + "middleColor": "#f1c232", + "upperColor": "#6aa84f" + }, + "rangeMin": "0", + "rangeMax": "1", + "lowerInflectionPoint": { + "type": "number", + "value": "0.2" + }, + "upperInflectionPoint": { + "type": "number", + "value": "0.5" + } + }, + "title": "Gross profit margin", + "type": "gauge", + "dataRange": "Data!B2" + } + }, + { + "id": "777d58a8-e76e-4ef6-a16a-8ded6a18a524", + "x": 670, + "y": 0, + "width": 225, + "height": 184, + "tag": "chart", + "data": { + "sectionRule": { + "colors": { + "lowerColor": "#cc0000", + "middleColor": "#f1c232", + "upperColor": "#6aa84f" + }, + "rangeMin": "0", + "rangeMax": "0.5", + "lowerInflectionPoint": { + "type": "number", + "value": "0.03" + }, + "upperInflectionPoint": { + "type": "number", + "value": "0.06" + } + }, + "title": "Net profit margin", + "type": "gauge", + "dataRange": "Data!B3" + } + }, + { + "id": "7c87cbda-1869-4ada-a479-f83447de6c35", + "x": 0, + "y": 184, + "width": 225, + "height": 184, + "tag": "chart", + "data": { + "sectionRule": { + "colors": { + "lowerColor": "#cc0000", + "middleColor": "#f1c232", + "upperColor": "#6aa84f" + }, + "rangeMin": "0", + "rangeMax": "0.5", + "lowerInflectionPoint": { + "type": "number", + "value": "0.05" + }, + "upperInflectionPoint": { + "type": "number", + "value": "0.1" + } + }, + "title": "Operating margin", + "type": "gauge", + "dataRange": "Data!B4" + } + }, + { + "id": "da7d6686-f16e-4ecc-9e4f-6e855e2472b1", + "x": 0, + "y": 368, + "width": 225, + "height": 184, + "tag": "chart", + "data": { + "sectionRule": { + "colors": { + "lowerColor": "#cc0000", + "middleColor": "#f1c232", + "upperColor": "#6aa84f" + }, + "rangeMin": "0", + "rangeMax": "10", + "lowerInflectionPoint": { + "type": "number", + "value": "1" + }, + "upperInflectionPoint": { + "type": "number", + "value": "1.5" + } + }, + "title": "Current ratio", + "type": "gauge", + "dataRange": "Data!B6" + } + }, + { + "id": "dd3e9285-4be0-4511-b6e9-c1d6b27aa6fa", + "x": 670, + "y": 368, + "width": 225, + "height": 184, + "tag": "chart", + "data": { + "sectionRule": { + "colors": { + "lowerColor": "#cc0000", + "middleColor": "#f1c232", + "upperColor": "#6aa84f" + }, + "rangeMin": "-2", + "rangeMax": "12", + "lowerInflectionPoint": { + "type": "number", + "value": "0.8" + }, + "upperInflectionPoint": { + "type": "number", + "value": "1" + } + }, + "title": "Cash flow ratio", + "type": "gauge", + "dataRange": "Data!B7" + } + }, + { + "id": "ce3a4fe4-5bd7-4571-942e-913061864e42", + "x": 0, + "y": 552, + "width": 225, + "height": 184, + "tag": "chart", + "data": { + "sectionRule": { + "colors": { + "lowerColor": "#cc0000", + "middleColor": "#f1c232", + "upperColor": "#6aa84f" + }, + "rangeMin": "-1000", + "rangeMax": "1000", + "lowerInflectionPoint": { + "type": "number", + "value": "0" + }, + "upperInflectionPoint": { + "type": "number", + "value": "0" + } + }, + "title": "Working capital", + "type": "gauge", + "dataRange": "Data!B8" + } + }, + { + "id": "262de936-0aa6-42f5-9c2a-94ca9f3fd6f9", + "x": 670, + "y": 552, + "width": 225, + "height": 184, + "tag": "chart", + "data": { + "sectionRule": { + "colors": { + "lowerColor": "#cc0000", + "middleColor": "#f1c232", + "upperColor": "#6aa84f" + }, + "rangeMin": "0", + "rangeMax": "5", + "lowerInflectionPoint": { + "type": "number", + "value": "0.7" + }, + "upperInflectionPoint": { + "type": "number", + "value": "1" + } + }, + "title": "Quick ratio", + "type": "gauge", + "dataRange": "Data!B9" + } + }, + { + "id": "244bf3e6-9fb6-4979-b01c-303b7737bd7f", + "x": 0, + "y": 736, + "width": 225, + "height": 184, + "tag": "chart", + "data": { + "sectionRule": { + "colors": { + "lowerColor": "#cc0000", + "middleColor": "#f1c232", + "upperColor": "#6aa84f" + }, + "rangeMin": "0", + "rangeMax": "20", + "lowerInflectionPoint": { + "type": "number", + "value": "2" + }, + "upperInflectionPoint": { + "type": "number", + "value": "3" + } + }, + "title": "Payable turnover", + "type": "gauge", + "dataRange": "Data!B10" + } + }, + { + "id": "19747691-3f23-4572-bda0-4090744d9d13", + "x": 670, + "y": 736, + "width": 225, + "height": 184, + "tag": "chart", + "data": { + "sectionRule": { + "colors": { + "lowerColor": "#cc0000", + "middleColor": "#f1c232", + "upperColor": "#6aa84f" + }, + "rangeMin": "0", + "rangeMax": "20", + "lowerInflectionPoint": { + "type": "number", + "value": "6" + }, + "upperInflectionPoint": { + "type": "number", + "value": "10" + } + }, + "title": "Receivable turnover", + "type": "gauge", + "dataRange": "Data!B11" + } + }, + { + "id": "c73f1479-08b5-4598-86b3-90ae40a81528", + "x": 670, + "y": 184, + "width": 225, + "height": 184, + "tag": "chart", + "data": { + "sectionRule": { + "colors": { + "lowerColor": "#6aa84f", + "middleColor": "#f1c232", + "upperColor": "#cc0000" + }, + "rangeMin": "0", + "rangeMax": "10", + "lowerInflectionPoint": { + "type": "number", + "value": "2.5" + }, + "upperInflectionPoint": { + "type": "number", + "value": "5" + } + }, + "title": "Debt-to-equity", + "type": "gauge", + "dataRange": "Data!B5" + } + } + ], + "areGridLinesVisible": true, + "isVisible": true + }, + { + "id": "15fc34c2-8752-4a36-9ecf-84aa216ecf2c", + "name": "Data", + "colNumber": 30, + "rowNumber": 93, + "rows": { + "3": { + "size": 23 + }, + "4": { + "size": 23 + }, + "22": { + "size": 23 + }, + "23": { + "size": 23 + }, + "24": { + "size": 23 + } + }, + "cols": { + "0": { + "size": 280.193359375 + }, + "1": { + "size": 175.193359375 + }, + "2": { + "size": 175.193359375 + }, + "3": { + "size": 175.193359375 + }, + "4": { + "size": 175.193359375 + }, + "5": { + "size": 119 + } + }, + "merges": [], + "cells": { + "A1": { + "style": 1, + "content": "KPI" + }, + "A2": { + "content": "Gross profit margin" + }, + "A3": { + "content": "Net profit margin" + }, + "A4": { + "content": "Operating margin" + }, + "A5": { + "content": "Debt-to-equity" + }, + "A6": { + "content": "Current ratio" + }, + "A7": { + "style": 2, + "content": "Cash flow ratio" + }, + "A8": { + "content": "Working capital" + }, + "A9": { + "content": "Quick ratio" + }, + "A10": { + "content": "Average debtor days" + }, + "A11": { + "content": "Average creditors days" + }, + "A13": { + "style": 1, + "content": "Aggregate" + }, + "A14": { + "style": 3, + "content": "Net sales" + }, + "A15": { + "style": 3, + "content": "COGS" + }, + "A16": { + "style": 4, + "content": "Net income" + }, + "A17": { + "style": 3, + "content": "Total income" + }, + "A18": { + "style": 3, + "content": "Total expense" + }, + "A19": { + "style": 4, + "content": "Revenue" + }, + "A20": { + "style": 3, + "content": "EBIT" + }, + "A21": { + "style": 3, + "content": "Current assets" + }, + "A22": { + "style": 3, + "content": "Current liabilities" + }, + "A23": { + "style": 3, + "content": "Total assets" + }, + "A24": { + "style": 3, + "content": "Total liabilities" + }, + "A25": { + "style": 4, + "content": "Total shareholder's equity" + }, + "A26": { + "style": 3, + "content": "Cash flow" + }, + "A27": { + "style": 3, + "content": "Quick assets" + }, + "A28": { + "style": 3, + "content": "Payables" + }, + "A29": { + "style": 3, + "content": "Receivables" + }, + "A31": { + "style": 5, + "content": "Account type" + }, + "A32": { + "style": 6, + "content": "Receivable" + }, + "A33": { + "style": 6, + "content": "Bank and Cash" + }, + "A34": { + "style": 6, + "content": "Current Assets" + }, + "A35": { + "style": 6, + "content": "Non-current Assets" + }, + "A36": { + "style": 6, + "content": "Prepayments" + }, + "A37": { + "style": 6, + "content": "Fixed Assets" + }, + "A38": { + "style": 6, + "content": "Payable" + }, + "A39": { + "style": 6, + "content": "Credit Card" + }, + "A40": { + "style": 6, + "content": "Current Liabilities" + }, + "A41": { + "style": 6, + "content": "Non-current Liabilities" + }, + "A42": { + "style": 6, + "content": "Equity" + }, + "A43": { + "style": 6, + "content": "Current Year Earnings" + }, + "A44": { + "style": 7, + "content": "Income" + }, + "A45": { + "style": 7, + "content": "Other Income" + }, + "A46": { + "style": 7, + "content": "Expenses" + }, + "A47": { + "style": 7, + "content": "Depreciation" + }, + "A48": { + "style": 7, + "content": "Cost of Revenue" + }, + "A49": { + "style": 8, + "content": "Off-Balance Sheet" + }, + "B1": { + "style": 1, + "format": 1, + "content": "Value" + }, + "B2": { + "format": 2, + "content": "=IFERROR((B14-B15)/B14)" + }, + "B3": { + "format": 2, + "content": "=IFERROR(B16/B19)" + }, + "B4": { + "format": 2, + "content": "=IFERROR(B20/B14)" + }, + "B5": { + "format": 3, + "content": "=IFERROR(B24/B25)" + }, + "B6": { + "format": 3, + "content": "=IFERROR(B21/B22)" + }, + "B7": { + "format": 3, + "content": "=IFERROR(B26/B22)" + }, + "B8": { + "format": 3, + "content": "=FORMAT.LARGE.NUMBER(IFERROR(B21-B22))" + }, + "B9": { + "format": 3, + "content": "=IFERROR(B27/B22)" + }, + "B10": { + "style": 2, + "format": 3, + "content": "=IFERROR(B28/B18*120,0)" + }, + "B11": { + "style": 2, + "format": 3, + "content": "=IFERROR(B29/B17*120)" + }, + "B13": { + "style": 9, + "content": "Value" + }, + "B14": { + "style": 3, + "content": "=B44" + }, + "B15": { + "style": 3, + "content": "=B48" + }, + "B16": { + "style": 4, + "content": "=B14-B15" + }, + "B17": { + "style": 3, + "content": "=B44+B45" + }, + "B18": { + "style": 3, + "content": "=B46+B47+B48" + }, + "B19": { + "style": 4, + "content": "=B17-B18" + }, + "B20": { + "style": 3, + "content": "=B44-B46" + }, + "B21": { + "style": 3, + "content": "=B34" + }, + "B22": { + "style": 3, + "content": "=B40" + }, + "B23": { + "style": 3, + "content": "=B32+B33+B34+B35+B36+B37" + }, + "B24": { + "style": 3, + "content": "=B38+B39+B40+B41" + }, + "B25": { + "style": 4, + "content": "=B23-B24" + }, + "B26": { + "style": 3, + "content": "=B33" + }, + "B27": { + "style": 3, + "content": "=B32+B33+B34" + }, + "B28": { + "style": 3, + "content": "=B38" + }, + "B29": { + "style": 3, + "content": "=B32" + }, + "B31": { + "style": 10, + "content": "Delta" + }, + "B32": { + "style": 6, + "content": "=C32-D32" + }, + "B33": { + "style": 6, + "content": "=C33-D33" + }, + "B34": { + "style": 6, + "content": "=C34-D34" + }, + "B35": { + "style": 6, + "content": "=C35-D35" + }, + "B36": { + "style": 6, + "content": "=C36-D36" + }, + "B37": { + "style": 6, + "content": "=C37-D37" + }, + "B38": { + "style": 6, + "content": "=C38-D38" + }, + "B39": { + "style": 6, + "content": "=C39-D39" + }, + "B40": { + "style": 6, + "content": "=C40-D40" + }, + "B41": { + "style": 6, + "content": "=C41-D41" + }, + "B42": { + "style": 6, + "content": "=C42-D42" + }, + "B43": { + "style": 6, + "content": "=C43-D43" + }, + "B44": { + "style": 7, + "content": "=C44-D44" + }, + "B45": { + "style": 7, + "content": "=C45-D45" + }, + "B46": { + "style": 7, + "content": "=C46-D46" + }, + "B47": { + "style": 7, + "content": "=C47-D47" + }, + "B48": { + "style": 7, + "content": "=C48-D48" + }, + "B49": { + "style": 8, + "content": "=C49-D49" + }, + "C1": { + "style": 1, + "content": "Formula" + }, + "C2": { + "content": "(Net sales – COGS) / Net sales" + }, + "C3": { + "content": "Net income / Revenue" + }, + "C4": { + "content": "EBIT / Net sales" + }, + "C5": { + "content": "Total liabilities / Total shareholders’ equity" + }, + "C6": { + "content": "Current assets / Current liabilities" + }, + "C7": { + "content": "Cash flow / Current liabilities" + }, + "C8": { + "content": "Current assets – Current liabilities" + }, + "C9": { + "content": "Quick assets / Current liabilities" + }, + "C10": { + "content": "Payables / Expenses * 120" + }, + "C11": { + "content": "Receivables / Income * 120" + }, + "C14": { + "style": 2, + "content": "income" + }, + "C15": { + "style": 2, + "content": "cost of revenue" + }, + "C16": { + "style": 2, + "content": "net sales - COGS" + }, + "C17": { + "style": 2, + "content": "income + other income" + }, + "C18": { + "style": 2, + "content": "expenses + depreciation + cost of revenue" + }, + "C19": { + "style": 2, + "content": "total income - total expense" + }, + "C20": { + "style": 2, + "content": "expenses - income" + }, + "C21": { + "style": 2, + "content": "current assets" + }, + "C22": { + "style": 2, + "content": "current liabilities" + }, + "C23": { + "style": 2, + "content": "receivable + bank and cash + current assets + non-current assets + prepayments + fixed assets" + }, + "C24": { + "style": 2, + "content": "payable + credit card + current liabilities + non-current liabilities" + }, + "C25": { + "style": 2, + "content": "total assets - total liabilities" + }, + "C26": { + "style": 2, + "content": "bank and cash" + }, + "C27": { + "style": 2, + "content": "receivable + bank and cash + current assets" + }, + "C28": { + "style": 2, + "content": "payable" + }, + "C29": { + "style": 2, + "content": "receivable" + }, + "C31": { + "style": 10, + "content": "=F8" + }, + "C32": { + "style": 6, + "content": "=ODOO.BALANCE(ODOO.ACCOUNT.GROUP($E32),C$31)" + }, + "C33": { + "style": 6, + "content": "=ODOO.BALANCE(ODOO.ACCOUNT.GROUP($E33),C$31)" + }, + "C34": { + "style": 6, + "content": "=ODOO.BALANCE(ODOO.ACCOUNT.GROUP($E34),C$31)" + }, + "C35": { + "style": 6, + "content": "=ODOO.BALANCE(ODOO.ACCOUNT.GROUP($E35),C$31)" + }, + "C36": { + "style": 6, + "content": "=ODOO.BALANCE(ODOO.ACCOUNT.GROUP($E36),C$31)" + }, + "C37": { + "style": 6, + "content": "=ODOO.BALANCE(ODOO.ACCOUNT.GROUP($E37),C$31)" + }, + "C38": { + "style": 6, + "content": "=ODOO.BALANCE(ODOO.ACCOUNT.GROUP($E38),C$31)" + }, + "C39": { + "style": 6, + "content": "=ODOO.BALANCE(ODOO.ACCOUNT.GROUP($E39),C$31)" + }, + "C40": { + "style": 6, + "content": "=ODOO.BALANCE(ODOO.ACCOUNT.GROUP($E40),C$31)" + }, + "C41": { + "style": 6, + "content": "=ODOO.BALANCE(ODOO.ACCOUNT.GROUP($E41),C$31)" + }, + "C42": { + "style": 6, + "content": "=ODOO.BALANCE(ODOO.ACCOUNT.GROUP($E42),C$31)" + }, + "C43": { + "style": 6, + "content": "=ODOO.BALANCE(ODOO.ACCOUNT.GROUP($E43),C$31)" + }, + "C44": { + "style": 7, + "content": "=ODOO.BALANCE(ODOO.ACCOUNT.GROUP($E44),C$31)" + }, + "C45": { + "style": 7, + "content": "=ODOO.BALANCE(ODOO.ACCOUNT.GROUP($E45),C$31)" + }, + "C46": { + "style": 7, + "content": "=ODOO.BALANCE(ODOO.ACCOUNT.GROUP($E46),C$31)" + }, + "C47": { + "style": 7, + "content": "=ODOO.BALANCE(ODOO.ACCOUNT.GROUP($E47),C$31)" + }, + "C48": { + "style": 7, + "content": "=ODOO.BALANCE(ODOO.ACCOUNT.GROUP($E48),C$31)" + }, + "C49": { + "style": 8, + "content": "=ODOO.BALANCE(ODOO.ACCOUNT.GROUP($E49),C$31)" + }, + "D14": { + "style": 2 + }, + "D15": { + "style": 2 + }, + "D16": { + "style": 2 + }, + "D17": { + "style": 2 + }, + "D18": { + "style": 2 + }, + "D19": { + "style": 2 + }, + "D20": { + "style": 2 + }, + "D21": { + "style": 2 + }, + "D22": { + "style": 2 + }, + "D23": { + "style": 2 + }, + "D24": { + "style": 2 + }, + "D25": { + "style": 2 + }, + "D26": { + "style": 2 + }, + "D27": { + "style": 2 + }, + "D28": { + "style": 2 + }, + "D29": { + "style": 2 + }, + "D31": { + "style": 10, + "content": "=F12" + }, + "D32": { + "style": 6, + "content": "=ODOO.BALANCE(ODOO.ACCOUNT.GROUP($E32),D$31)" + }, + "D33": { + "style": 6, + "content": "=ODOO.BALANCE(ODOO.ACCOUNT.GROUP($E33),D$31)" + }, + "D34": { + "style": 6, + "content": "=ODOO.BALANCE(ODOO.ACCOUNT.GROUP($E34),D$31)" + }, + "D35": { + "style": 6, + "content": "=ODOO.BALANCE(ODOO.ACCOUNT.GROUP($E35),D$31)" + }, + "D36": { + "style": 6, + "content": "=ODOO.BALANCE(ODOO.ACCOUNT.GROUP($E36),D$31)" + }, + "D37": { + "style": 6, + "content": "=ODOO.BALANCE(ODOO.ACCOUNT.GROUP($E37),D$31)" + }, + "D38": { + "style": 6, + "content": "=ODOO.BALANCE(ODOO.ACCOUNT.GROUP($E38),D$31)" + }, + "D39": { + "style": 6, + "content": "=ODOO.BALANCE(ODOO.ACCOUNT.GROUP($E39),D$31)" + }, + "D40": { + "style": 6, + "content": "=ODOO.BALANCE(ODOO.ACCOUNT.GROUP($E40),D$31)" + }, + "D41": { + "style": 6, + "content": "=ODOO.BALANCE(ODOO.ACCOUNT.GROUP($E41),D$31)" + }, + "D42": { + "style": 6, + "content": "=ODOO.BALANCE(ODOO.ACCOUNT.GROUP($E42),D$31)" + }, + "D43": { + "style": 6, + "content": "=ODOO.BALANCE(ODOO.ACCOUNT.GROUP($E43),D$31)" + }, + "D44": { + "style": 7, + "content": "=ODOO.BALANCE(ODOO.ACCOUNT.GROUP($E44),D$31)" + }, + "D45": { + "style": 7, + "content": "=ODOO.BALANCE(ODOO.ACCOUNT.GROUP($E45),D$31)" + }, + "D46": { + "style": 7, + "content": "=ODOO.BALANCE(ODOO.ACCOUNT.GROUP($E46),D$31)" + }, + "D47": { + "style": 7, + "content": "=ODOO.BALANCE(ODOO.ACCOUNT.GROUP($E47),D$31)" + }, + "D48": { + "style": 7, + "content": "=ODOO.BALANCE(ODOO.ACCOUNT.GROUP($E48),D$31)" + }, + "D49": { + "style": 8, + "content": "=ODOO.BALANCE(ODOO.ACCOUNT.GROUP($E49),D$31)" + }, + "E1": { + "style": 11, + "content": "Month-Year" + }, + "E2": { + "style": 1, + "content": "Month" + }, + "E3": { + "style": 1, + "content": "Year" + }, + "E4": { + "style": 1, + "content": "Start date" + }, + "E5": { + "style": 1, + "content": "Offset -1 - Start date" + }, + "E6": { + "style": 1, + "content": "Offset -1 - Month" + }, + "E7": { + "style": 1, + "content": "Offset -1 - Year" + }, + "E8": { + "style": 11, + "content": "Offset -1 - Month-Year" + }, + "E9": { + "style": 1, + "content": "Offset -4 - Start date" + }, + "E10": { + "style": 1, + "content": "Offset -4 - Month" + }, + "E11": { + "style": 1, + "content": "Offset -4 - Year" + }, + "E12": { + "style": 11, + "content": "Offset -4 - Month-Year" + }, + "E31": { + "style": 5, + "content": "Technical name" + }, + "E32": { + "style": 6, + "content": "asset_receivable" + }, + "E33": { + "style": 6, + "content": "asset_cash" + }, + "E34": { + "style": 6, + "content": "asset_current" + }, + "E35": { + "style": 6, + "content": "asset_non_current" + }, + "E36": { + "style": 6, + "content": "asset_prepayments" + }, + "E37": { + "style": 6, + "content": "asset_fixed" + }, + "E38": { + "style": 6, + "content": "liability_payable" + }, + "E39": { + "style": 6, + "content": "liability_credit_card" + }, + "E40": { + "style": 6, + "content": "liability_current" + }, + "E41": { + "style": 6, + "content": "liability_non_current" + }, + "E42": { + "style": 6, + "content": "equity" + }, + "E43": { + "style": 6, + "content": "equity_unaffected" + }, + "E44": { + "style": 7, + "content": "income" + }, + "E45": { + "style": 7, + "content": "income_other" + }, + "E46": { + "style": 7, + "content": "expense" + }, + "E47": { + "style": 7, + "content": "expense_depreciation" + }, + "E48": { + "style": 7, + "content": "expense_direct_cost" + }, + "E49": { + "style": 8, + "content": "off_balance" + }, + "F1": { + "style": 12, + "content": "=ODOO.FILTER.VALUE(\"Month\")" + }, + "F2": { + "style": 13, + "content": "=LEFT(F1,2)" + }, + "F3": { + "style": 13, + "content": "=RIGHT(F1,4)" + }, + "F4": { + "style": 13, + "content": "=CONCATENATE(F2,\"/01/\",F3)" + }, + "F5": { + "style": 13, + "format": 4, + "content": "=EDATE(F4,-1)" + }, + "F6": { + "style": 13, + "content": "=IF(LEN(MONTH(F5))=1,CONCATENATE(\"0\",MONTH(F5)),MONTH(F5))" + }, + "F7": { + "style": 13, + "content": "=YEAR(F5)" + }, + "F8": { + "style": 12, + "format": 4, + "content": "=CONCATENATE(F6,\"/\",F7)" + }, + "F9": { + "style": 13, + "content": "=EDATE(F4,-4)" + }, + "F10": { + "style": 13, + "content": "=IF(LEN(MONTH(F9))=1,CONCATENATE(\"0\",MONTH(F9)),MONTH(F9))" + }, + "F11": { + "style": 13, + "content": "=YEAR(F9)" + }, + "F12": { + "style": 12, + "content": "=CONCATENATE(F10,\"/\",F11)" + }, + "J36": { + "format": 4 + }, + "K36": { + "format": 4 + } + }, + "conditionalFormats": [], + "figures": [], + "areGridLinesVisible": true, + "isVisible": true + } + ], + "entities": {}, + "styles": { + "1": { + "bold": true + }, + "2": { + "fillColor": "" + }, + "3": { + "fillColor": "#d9ead3" + }, + "4": { + "fillColor": "#b6d7a8" + }, + "5": { + "fillColor": "#a4c2f4", + "bold": true + }, + "6": { + "fillColor": "#c9daf8" + }, + "7": { + "fillColor": "#ead1dc" + }, + "8": { + "fillColor": "#f3f3f3" + }, + "9": { + "align": "right", + "bold": true + }, + "10": { + "fillColor": "#a4c2f4", + "bold": true, + "align": "right" + }, + "11": { + "bold": true, + "fillColor": "#c9daf8" + }, + "12": { + "bold": false, + "align": "left", + "fillColor": "#c9daf8" + }, + "13": { + "bold": false, + "align": "left" + } + }, + "formats": { + "1": "0%", + "2": "0.0%", + "3": "0.0", + "4": "m/d/yyyy" + }, + "borders": {}, + "revisionId": "START_REVISION", + "chartOdooMenusReferences": {}, + "odooVersion": 3, + "pivots": {}, + "pivotNextId": 1, + "lists": {}, + "listNextId": 1, + "globalFilters": [ + { + "id": "069d7cf1-9623-4d6e-8226-ad7c60112662", + "type": "date", + "label": "Month", + "defaultValue": {}, + "rangeType": "month", + "defaultsToCurrentPeriod": true, + "pivotFields": {}, + "listFields": {}, + "graphFields": {} + } + ] +} \ No newline at end of file diff --git a/addons/spreadsheet_dashboard_account/data/files/invoicing_dashboard.json b/addons/spreadsheet_dashboard_account/data/files/invoicing_dashboard.json new file mode 100644 index 00000000000..aacff1ca92a --- /dev/null +++ b/addons/spreadsheet_dashboard_account/data/files/invoicing_dashboard.json @@ -0,0 +1,2231 @@ +{ + "version": 12, + "sheets": [ + { + "id": "a7cd7db1-9407-4895-82f2-7657102c7688", + "name": "Dashboard", + "colNumber": 7, + "rowNumber": 57, + "rows": { + "6": { + "size": 40 + }, + "18": { + "size": 40 + }, + "19": { + "size": 40 + }, + "31": { + "size": 40 + }, + "32": { + "size": 40 + }, + "44": { + "size": 40 + }, + "45": { + "size": 40 + } + }, + "cols": { + "0": { + "size": 225 + }, + "1": { + "size": 150 + }, + "2": { + "size": 100 + }, + "3": { + "size": 50 + }, + "4": { + "size": 225 + }, + "5": { + "size": 150 + }, + "6": { + "size": 100 + } + }, + "merges": [], + "cells": { + "A7": { + "style": 1, + "content": "[Invoiced by Month](odoo://view/{\"viewType\":\"graph\",\"action\":{\"domain\":[\"&\",[\"state\",\"not in\",[\"draft\",\"cancel\"]],\"|\",[\"move_type\",\"=\",\"out_invoice\"],[\"move_type\",\"=\",\"out_refund\"]],\"context\":{\"group_by\":[\"invoice_date\"],\"graph_measure\":\"price_subtotal\",\"graph_mode\":\"line\",\"graph_groupbys\":[\"invoice_date:month\"]},\"modelName\":\"account.invoice.report\",\"views\":[[false,\"graph\"],[false,\"pivot\"],[false,\"search\"]]},\"threshold\":0,\"name\":\"Invoices Analysis\",\"positional\":true})", + "border": 1 + }, + "A19": { + "style": 1, + "content": "[Top Invoices](https://odoo.com)", + "border": 1 + }, + "A20": { + "style": 2, + "content": "Reference", + "border": 2 + }, + "A21": { + "style": 3, + "format": 1, + "content": "=ODOO.LIST(1,1,\"name\")" + }, + "A22": { + "style": 4, + "format": 1, + "content": "=ODOO.LIST(1,2,\"name\")" + }, + "A23": { + "style": 3, + "format": 1, + "content": "=ODOO.LIST(1,3,\"name\")" + }, + "A24": { + "style": 4, + "format": 1, + "content": "=ODOO.LIST(1,4,\"name\")" + }, + "A25": { + "style": 3, + "format": 1, + "content": "=ODOO.LIST(1,5,\"name\")" + }, + "A26": { + "style": 4, + "format": 1, + "content": "=ODOO.LIST(1,6,\"name\")" + }, + "A27": { + "style": 3, + "format": 1, + "content": "=ODOO.LIST(1,7,\"name\")" + }, + "A28": { + "style": 4, + "format": 1, + "content": "=ODOO.LIST(1,8,\"name\")" + }, + "A29": { + "style": 3, + "format": 1, + "content": "=ODOO.LIST(1,9,\"name\")" + }, + "A30": { + "style": 5, + "content": "=ODOO.LIST(1,10,\"name\")" + }, + "A31": { + "style": 6 + }, + "A32": { + "style": 1, + "content": "[Top Countries](odoo://view/{\"viewType\":\"pivot\",\"action\":{\"domain\":[\"&\",[\"state\",\"not in\",[\"draft\",\"cancel\"]],\"&\",[\"country_id\",\"!=\",false],[\"price_subtotal\",\">=\",0]],\"context\":{\"group_by\":[\"country_id\"],\"pivot_measures\":[\"price_subtotal\"],\"pivot_column_groupby\":[],\"pivot_row_groupby\":[\"country_id\"]},\"modelName\":\"account.invoice.report\",\"views\":[[false,\"graph\"],[false,\"pivot\"],[false,\"list\"],[false,\"search\"]]},\"threshold\":0,\"name\":\"Invoices Analysis\"})", + "border": 1 + }, + "A33": { + "style": 7, + "content": "Country", + "border": 2 + }, + "A34": { + "style": 8, + "format": 1, + "content": "=ODOO.PIVOT.HEADER(2,\"#country_id\",1)" + }, + "A35": { + "style": 9, + "format": 1, + "content": "=ODOO.PIVOT.HEADER(2,\"#country_id\",2)" + }, + "A36": { + "style": 8, + "format": 1, + "content": "=ODOO.PIVOT.HEADER(2,\"#country_id\",3)" + }, + "A37": { + "style": 9, + "format": 1, + "content": "=ODOO.PIVOT.HEADER(2,\"#country_id\",4)" + }, + "A38": { + "style": 8, + "format": 1, + "content": "=ODOO.PIVOT.HEADER(2,\"#country_id\",5)" + }, + "A39": { + "style": 9, + "format": 1, + "content": "=ODOO.PIVOT.HEADER(2,\"#country_id\",6)" + }, + "A40": { + "style": 8, + "format": 1, + "content": "=ODOO.PIVOT.HEADER(2,\"#country_id\",7)" + }, + "A41": { + "style": 9, + "format": 1, + "content": "=ODOO.PIVOT.HEADER(2,\"#country_id\",8)" + }, + "A42": { + "style": 8, + "format": 1, + "content": "=ODOO.PIVOT.HEADER(2,\"#country_id\",9)" + }, + "A43": { + "style": 10 + }, + "A44": { + "style": 11, + "content": "=ODOO.PIVOT.HEADER(2,\"#country_id\",10)" + }, + "A45": { + "style": 1, + "content": "[Top Products](odoo://view/{\"viewType\":\"pivot\",\"action\":{\"domain\":[\"&\",[\"state\",\"not in\",[\"draft\",\"cancel\"]],\"&\",[\"product_id\",\"!=\",false],[\"price_subtotal\",\">=\",0]],\"context\":{\"group_by\":[\"product_id\"],\"pivot_measures\":[\"price_subtotal\"],\"pivot_column_groupby\":[],\"pivot_row_groupby\":[\"product_id\"]},\"modelName\":\"account.invoice.report\",\"views\":[[false,\"graph\"],[false,\"pivot\"],[false,\"list\"],[false,\"search\"]]},\"threshold\":0,\"name\":\"Invoices Analysis\"})", + "border": 1 + }, + "A46": { + "style": 7, + "content": "Product", + "border": 2 + }, + "A47": { + "style": 8, + "format": 1, + "content": "=ODOO.PIVOT.HEADER(3,\"#product_id\",1)" + }, + "A48": { + "style": 9, + "format": 1, + "content": "=ODOO.PIVOT.HEADER(3,\"#product_id\",2)" + }, + "A49": { + "style": 8, + "format": 1, + "content": "=ODOO.PIVOT.HEADER(3,\"#product_id\",3)" + }, + "A50": { + "style": 9, + "format": 1, + "content": "=ODOO.PIVOT.HEADER(3,\"#product_id\",4)" + }, + "A51": { + "style": 8, + "format": 1, + "content": "=ODOO.PIVOT.HEADER(3,\"#product_id\",5)" + }, + "A52": { + "style": 9, + "format": 1, + "content": "=ODOO.PIVOT.HEADER(3,\"#product_id\",6)" + }, + "A53": { + "style": 8, + "format": 1, + "content": "=ODOO.PIVOT.HEADER(3,\"#product_id\",7)" + }, + "A54": { + "style": 9, + "format": 1, + "content": "=ODOO.PIVOT.HEADER(3,\"#product_id\",8)" + }, + "A55": { + "style": 8, + "format": 1, + "content": "=ODOO.PIVOT.HEADER(3,\"#product_id\",9)" + }, + "A56": { + "style": 9, + "content": "=ODOO.PIVOT.HEADER(3,\"#product_id\",10)" + }, + "B19": { + "style": 12, + "border": 1 + }, + "B20": { + "style": 13, + "content": "Salesperson", + "border": 2 + }, + "B21": { + "style": 14, + "format": 1, + "content": "=ODOO.LIST(1,1,\"user_id\")" + }, + "B22": { + "content": "=ODOO.LIST(1,2,\"user_id\")" + }, + "B23": { + "style": 15, + "content": "=ODOO.LIST(1,3,\"user_id\")" + }, + "B24": { + "content": "=ODOO.LIST(1,4,\"user_id\")" + }, + "B25": { + "style": 15, + "content": "=ODOO.LIST(1,5,\"user_id\")" + }, + "B26": { + "content": "=ODOO.LIST(1,6,\"user_id\")" + }, + "B27": { + "style": 15, + "content": "=ODOO.LIST(1,7,\"user_id\")" + }, + "B28": { + "content": "=ODOO.LIST(1,8,\"user_id\")" + }, + "B29": { + "style": 15, + "content": "=ODOO.LIST(1,9,\"user_id\")" + }, + "B30": { + "content": "=ODOO.LIST(1,10,\"user_id\")" + }, + "B31": { + "style": 6 + }, + "B32": { + "style": 12, + "border": 1 + }, + "B33": { + "style": 16, + "content": "Amount", + "border": 2 + }, + "B34": { + "style": 17, + "format": 1, + "content": "=ODOO.PIVOT(2,\"price_subtotal\",\"#country_id\",1)" + }, + "B35": { + "style": 6, + "format": 1, + "content": "=ODOO.PIVOT(2,\"price_subtotal\",\"#country_id\",2)" + }, + "B36": { + "style": 17, + "format": 1, + "content": "=ODOO.PIVOT(2,\"price_subtotal\",\"#country_id\",3)" + }, + "B37": { + "style": 6, + "format": 1, + "content": "=ODOO.PIVOT(2,\"price_subtotal\",\"#country_id\",4)" + }, + "B38": { + "style": 17, + "format": 1, + "content": "=ODOO.PIVOT(2,\"price_subtotal\",\"#country_id\",5)" + }, + "B39": { + "style": 6, + "format": 1, + "content": "=ODOO.PIVOT(2,\"price_subtotal\",\"#country_id\",6)" + }, + "B40": { + "style": 17, + "format": 1, + "content": "=ODOO.PIVOT(2,\"price_subtotal\",\"#country_id\",7)" + }, + "B41": { + "style": 6, + "format": 1, + "content": "=ODOO.PIVOT(2,\"price_subtotal\",\"#country_id\",8)" + }, + "B42": { + "style": 17, + "format": 1, + "content": "=ODOO.PIVOT(2,\"price_subtotal\",\"#country_id\",9)" + }, + "B43": { + "format": 1 + }, + "B44": { + "format": 1, + "content": "=ODOO.PIVOT(2,\"price_subtotal\",\"#country_id\",10)" + }, + "B45": { + "style": 12, + "border": 1 + }, + "B46": { + "style": 16, + "content": "Amount", + "border": 2 + }, + "B47": { + "style": 17, + "format": 1, + "content": "=ODOO.PIVOT(3,\"price_subtotal\",\"#product_id\",1)" + }, + "B48": { + "style": 6, + "format": 1, + "content": "=ODOO.PIVOT(3,\"price_subtotal\",\"#product_id\",2)" + }, + "B49": { + "style": 17, + "format": 1, + "content": "=ODOO.PIVOT(3,\"price_subtotal\",\"#product_id\",3)" + }, + "B50": { + "style": 6, + "format": 1, + "content": "=ODOO.PIVOT(3,\"price_subtotal\",\"#product_id\",4)" + }, + "B51": { + "style": 17, + "format": 1, + "content": "=ODOO.PIVOT(3,\"price_subtotal\",\"#product_id\",5)" + }, + "B52": { + "style": 6, + "format": 1, + "content": "=ODOO.PIVOT(3,\"price_subtotal\",\"#product_id\",6)" + }, + "B53": { + "style": 17, + "format": 1, + "content": "=ODOO.PIVOT(3,\"price_subtotal\",\"#product_id\",7)" + }, + "B54": { + "style": 6, + "format": 1, + "content": "=ODOO.PIVOT(3,\"price_subtotal\",\"#product_id\",8)" + }, + "B55": { + "style": 17, + "format": 1, + "content": "=ODOO.PIVOT(3,\"price_subtotal\",\"#product_id\",9)" + }, + "B56": { + "style": 6, + "format": 1, + "content": "=ODOO.PIVOT(3,\"price_subtotal\",\"#product_id\",10)" + }, + "C19": { + "style": 12, + "border": 1 + }, + "C20": { + "style": 13, + "content": "Status", + "border": 2 + }, + "C21": { + "style": 14, + "format": 1, + "content": "=ODOO.LIST(1,1,\"payment_state\")" + }, + "C22": { + "content": "=ODOO.LIST(1,2,\"payment_state\")" + }, + "C23": { + "style": 15, + "content": "=ODOO.LIST(1,3,\"payment_state\")" + }, + "C24": { + "content": "=ODOO.LIST(1,4,\"payment_state\")" + }, + "C25": { + "style": 15, + "content": "=ODOO.LIST(1,5,\"payment_state\")" + }, + "C26": { + "content": "=ODOO.LIST(1,6,\"payment_state\")" + }, + "C27": { + "style": 15, + "content": "=ODOO.LIST(1,7,\"payment_state\")" + }, + "C28": { + "content": "=ODOO.LIST(1,8,\"payment_state\")" + }, + "C29": { + "style": 15, + "content": "=ODOO.LIST(1,9,\"payment_state\")" + }, + "C30": { + "content": "=ODOO.LIST(1,10,\"payment_state\")" + }, + "C31": { + "style": 6 + }, + "C32": { + "style": 12, + "border": 1 + }, + "C33": { + "style": 16, + "content": "Ratio", + "border": 2 + }, + "C34": { + "style": 17, + "format": 2, + "content": "=iferror(if(B34,B34/ODOO.PIVOT(2,\"price_subtotal\"),\"\"),\"\")" + }, + "C35": { + "style": 6, + "format": 2, + "content": "=iferror(if(B35,B35/ODOO.PIVOT(2,\"price_subtotal\"),\"\"),\"\")" + }, + "C36": { + "style": 17, + "format": 2, + "content": "=iferror(if(B36,B36/ODOO.PIVOT(2,\"price_subtotal\"),\"\"),\"\")" + }, + "C37": { + "style": 6, + "format": 2, + "content": "=iferror(if(B37,B37/ODOO.PIVOT(2,\"price_subtotal\"),\"\"),\"\")" + }, + "C38": { + "style": 17, + "format": 2, + "content": "=iferror(if(B38,B38/ODOO.PIVOT(2,\"price_subtotal\"),\"\"),\"\")" + }, + "C39": { + "style": 6, + "format": 2, + "content": "=iferror(if(B39,B39/ODOO.PIVOT(2,\"price_subtotal\"),\"\"),\"\")" + }, + "C40": { + "style": 17, + "format": 2, + "content": "=iferror(if(B40,B40/ODOO.PIVOT(2,\"price_subtotal\"),\"\"),\"\")" + }, + "C41": { + "style": 6, + "format": 2, + "content": "=iferror(if(B41,B41/ODOO.PIVOT(2,\"price_subtotal\"),\"\"),\"\")" + }, + "C42": { + "style": 17, + "format": 2, + "content": "=iferror(if(B42,B42/ODOO.PIVOT(2,\"price_subtotal\"),\"\"),\"\")" + }, + "C43": { + "format": 3 + }, + "C44": { + "format": 3, + "content": "=iferror(if(B44,B44/ODOO.PIVOT(2,\"price_subtotal\"),\"\"),\"\")" + }, + "C45": { + "style": 12, + "border": 1 + }, + "C46": { + "style": 16, + "content": "Ratio", + "border": 2 + }, + "C47": { + "style": 17, + "format": 2, + "content": "=iferror(if(B47,B47/ODOO.PIVOT(3,\"price_subtotal\"),\"\"))" + }, + "C48": { + "style": 6, + "format": 2, + "content": "=iferror(if(B48,B48/ODOO.PIVOT(3,\"price_subtotal\"),\"\"))" + }, + "C49": { + "style": 17, + "format": 2, + "content": "=iferror(if(B49,B49/ODOO.PIVOT(3,\"price_subtotal\"),\"\"))" + }, + "C50": { + "style": 6, + "format": 2, + "content": "=iferror(if(B50,B50/ODOO.PIVOT(3,\"price_subtotal\"),\"\"))" + }, + "C51": { + "style": 17, + "format": 2, + "content": "=iferror(if(B51,B51/ODOO.PIVOT(3,\"price_subtotal\"),\"\"))" + }, + "C52": { + "style": 6, + "format": 2, + "content": "=iferror(if(B52,B52/ODOO.PIVOT(3,\"price_subtotal\"),\"\"))" + }, + "C53": { + "style": 17, + "format": 2, + "content": "=iferror(if(B53,B53/ODOO.PIVOT(3,\"price_subtotal\"),\"\"))" + }, + "C54": { + "style": 6, + "format": 2, + "content": "=iferror(if(B54,B54/ODOO.PIVOT(3,\"price_subtotal\"),\"\"))" + }, + "C55": { + "style": 17, + "format": 2, + "content": "=iferror(if(B55,B55/ODOO.PIVOT(3,\"price_subtotal\"),\"\"))" + }, + "C56": { + "style": 6, + "format": 2, + "content": "=iferror(if(B56,B56/ODOO.PIVOT(3,\"price_subtotal\"),\"\"))" + }, + "D20": { + "style": 13, + "content": "Customer", + "border": 2 + }, + "D21": { + "style": 14, + "format": 1, + "content": "=ODOO.LIST(1,1,\"partner_id\")" + }, + "D22": { + "content": "=ODOO.LIST(1,2,\"partner_id\")" + }, + "D23": { + "style": 15, + "content": "=ODOO.LIST(1,3,\"partner_id\")" + }, + "D24": { + "content": "=ODOO.LIST(1,4,\"partner_id\")" + }, + "D25": { + "style": 15, + "content": "=ODOO.LIST(1,5,\"partner_id\")" + }, + "D26": { + "content": "=ODOO.LIST(1,6,\"partner_id\")" + }, + "D27": { + "style": 15, + "content": "=ODOO.LIST(1,7,\"partner_id\")" + }, + "D28": { + "content": "=ODOO.LIST(1,8,\"partner_id\")" + }, + "D29": { + "style": 15, + "content": "=ODOO.LIST(1,9,\"partner_id\")" + }, + "D30": { + "content": "=ODOO.LIST(1,10,\"partner_id\")" + }, + "D31": { + "style": 6 + }, + "D33": { + "style": 6 + }, + "D34": { + "style": 6 + }, + "D35": { + "style": 6 + }, + "D36": { + "style": 6 + }, + "D37": { + "style": 6 + }, + "D38": { + "style": 6 + }, + "D39": { + "style": 6 + }, + "D40": { + "style": 6 + }, + "D41": { + "style": 6 + }, + "D42": { + "style": 6 + }, + "D46": { + "style": 6 + }, + "D47": { + "style": 6 + }, + "D48": { + "style": 6 + }, + "D49": { + "style": 6 + }, + "D50": { + "style": 6 + }, + "D51": { + "style": 6 + }, + "D52": { + "style": 6 + }, + "D53": { + "style": 6 + }, + "D54": { + "style": 6 + }, + "D55": { + "style": 6 + }, + "D56": { + "style": 6 + }, + "E19": { + "style": 1, + "border": 1 + }, + "E20": { + "style": 13, + "border": 2 + }, + "E21": { + "style": 14, + "format": 1 + }, + "E23": { + "style": 15 + }, + "E25": { + "style": 15 + }, + "E27": { + "style": 15 + }, + "E29": { + "style": 15 + }, + "E31": { + "style": 6 + }, + "E32": { + "style": 1, + "content": "[Top Categories](odoo://view/{\"viewType\":\"pivot\",\"action\":{\"domain\":[\"&\",[\"state\",\"not in\",[\"draft\",\"cancel\"]],\"&\",[\"product_categ_id\",\"!=\",false],[\"price_subtotal\",\">=\",0]],\"context\":{\"group_by\":[\"product_categ_id\"],\"pivot_measures\":[\"price_subtotal\"],\"pivot_column_groupby\":[],\"pivot_row_groupby\":[\"product_categ_id\"]},\"modelName\":\"account.invoice.report\",\"views\":[[false,\"graph\"],[false,\"pivot\"],[false,\"list\"],[false,\"search\"]]},\"threshold\":0,\"name\":\"Invoices Analysis\"})", + "border": 1 + }, + "E33": { + "style": 7, + "content": "Top Categories", + "border": 2 + }, + "E34": { + "style": 8, + "format": 1, + "content": "=ODOO.PIVOT.HEADER(1,\"#product_categ_id\",1)" + }, + "E35": { + "style": 9, + "format": 1, + "content": "=ODOO.PIVOT.HEADER(1,\"#product_categ_id\",2)" + }, + "E36": { + "style": 8, + "format": 1, + "content": "=ODOO.PIVOT.HEADER(1,\"#product_categ_id\",3)" + }, + "E37": { + "style": 9, + "format": 1, + "content": "=ODOO.PIVOT.HEADER(1,\"#product_categ_id\",4)" + }, + "E38": { + "style": 8, + "format": 1, + "content": "=ODOO.PIVOT.HEADER(1,\"#product_categ_id\",5)" + }, + "E39": { + "style": 9, + "format": 1, + "content": "=ODOO.PIVOT.HEADER(1,\"#product_categ_id\",6)" + }, + "E40": { + "style": 8, + "format": 1, + "content": "=ODOO.PIVOT.HEADER(1,\"#product_categ_id\",7)" + }, + "E41": { + "style": 9, + "format": 1, + "content": "=ODOO.PIVOT.HEADER(1,\"#product_categ_id\",8)" + }, + "E42": { + "style": 8, + "format": 1, + "content": "=ODOO.PIVOT.HEADER(1,\"#product_categ_id\",9)" + }, + "E43": { + "style": 10 + }, + "E44": { + "style": 11, + "content": "=ODOO.PIVOT.HEADER(1,\"#product_categ_id\",10)" + }, + "E45": { + "style": 1, + "content": "[Top Salespeople](odoo://view/{\"viewType\":\"pivot\",\"action\":{\"domain\":[\"&\",[\"state\",\"not in\",[\"draft\",\"cancel\"]],\"&\",[\"invoice_user_id\",\"!=\",false],[\"price_subtotal\",\">=\",0]],\"context\":{\"group_by\":[\"invoice_user_id\"],\"pivot_measures\":[\"price_subtotal\"],\"pivot_column_groupby\":[],\"pivot_row_groupby\":[\"invoice_user_id\"]},\"modelName\":\"account.invoice.report\",\"views\":[[false,\"graph\"],[false,\"pivot\"],[false,\"list\"],[false,\"search\"]]},\"threshold\":0,\"name\":\"Invoices Analysis\"})", + "border": 1 + }, + "E46": { + "style": 7, + "content": "Salesperson", + "border": 2 + }, + "E47": { + "style": 8, + "format": 1, + "content": "=ODOO.PIVOT.HEADER(4,\"#invoice_user_id\",1)" + }, + "E48": { + "style": 9, + "format": 1, + "content": "=ODOO.PIVOT.HEADER(4,\"#invoice_user_id\",2)" + }, + "E49": { + "style": 8, + "format": 1, + "content": "=ODOO.PIVOT.HEADER(4,\"#invoice_user_id\",3)" + }, + "E50": { + "style": 9, + "format": 1, + "content": "=ODOO.PIVOT.HEADER(4,\"#invoice_user_id\",4)" + }, + "E51": { + "style": 8, + "format": 1, + "content": "=ODOO.PIVOT.HEADER(4,\"#invoice_user_id\",5)" + }, + "E52": { + "style": 9, + "format": 1, + "content": "=ODOO.PIVOT.HEADER(4,\"#invoice_user_id\",6)" + }, + "E53": { + "style": 8, + "format": 1, + "content": "=ODOO.PIVOT.HEADER(4,\"#invoice_user_id\",7)" + }, + "E54": { + "style": 9, + "format": 1, + "content": "=ODOO.PIVOT.HEADER(4,\"#invoice_user_id\",8)" + }, + "E55": { + "style": 8, + "format": 1, + "content": "=ODOO.PIVOT.HEADER(4,\"#invoice_user_id\",9)" + }, + "E56": { + "style": 9, + "content": "=ODOO.PIVOT.HEADER(4,\"#invoice_user_id\",10)" + }, + "F20": { + "style": 13, + "content": "Date", + "border": 2 + }, + "F21": { + "style": 14, + "content": "=ODOO.LIST(1,1,\"invoice_date\")" + }, + "F22": { + "content": "=ODOO.LIST(1,2,\"invoice_date\")" + }, + "F23": { + "style": 15, + "content": "=ODOO.LIST(1,3,\"invoice_date\")" + }, + "F24": { + "content": "=ODOO.LIST(1,4,\"invoice_date\")" + }, + "F25": { + "style": 15, + "content": "=ODOO.LIST(1,5,\"invoice_date\")" + }, + "F26": { + "content": "=ODOO.LIST(1,6,\"invoice_date\")" + }, + "F27": { + "style": 15, + "content": "=ODOO.LIST(1,7,\"invoice_date\")" + }, + "F28": { + "content": "=ODOO.LIST(1,8,\"invoice_date\")" + }, + "F29": { + "style": 15, + "content": "=ODOO.LIST(1,9,\"invoice_date\")" + }, + "F30": { + "content": "=ODOO.LIST(1,10,\"invoice_date\")" + }, + "F31": { + "style": 6 + }, + "F32": { + "style": 12, + "border": 1 + }, + "F33": { + "style": 16, + "content": "Amount", + "border": 2 + }, + "F34": { + "style": 17, + "format": 1, + "content": "=ODOO.PIVOT(1,\"price_subtotal\",\"#product_categ_id\",1)" + }, + "F35": { + "style": 6, + "format": 1, + "content": "=ODOO.PIVOT(1,\"price_subtotal\",\"#product_categ_id\",2)" + }, + "F36": { + "style": 17, + "format": 1, + "content": "=ODOO.PIVOT(1,\"price_subtotal\",\"#product_categ_id\",3)" + }, + "F37": { + "style": 6, + "format": 1, + "content": "=ODOO.PIVOT(1,\"price_subtotal\",\"#product_categ_id\",4)" + }, + "F38": { + "style": 17, + "format": 1, + "content": "=ODOO.PIVOT(1,\"price_subtotal\",\"#product_categ_id\",5)" + }, + "F39": { + "style": 6, + "format": 1, + "content": "=ODOO.PIVOT(1,\"price_subtotal\",\"#product_categ_id\",6)" + }, + "F40": { + "style": 17, + "format": 1, + "content": "=ODOO.PIVOT(1,\"price_subtotal\",\"#product_categ_id\",7)" + }, + "F41": { + "style": 6, + "format": 1, + "content": "=ODOO.PIVOT(1,\"price_subtotal\",\"#product_categ_id\",8)" + }, + "F42": { + "style": 17, + "format": 1, + "content": "=ODOO.PIVOT(1,\"price_subtotal\",\"#product_categ_id\",9)" + }, + "F43": { + "format": 1 + }, + "F44": { + "format": 1, + "content": "=ODOO.PIVOT(1,\"price_subtotal\",\"#product_categ_id\",10)" + }, + "F45": { + "style": 12, + "border": 1 + }, + "F46": { + "style": 16, + "content": "Amount", + "border": 2 + }, + "F47": { + "style": 17, + "format": 1, + "content": "=ODOO.PIVOT(4,\"price_subtotal\",\"#invoice_user_id\",1)" + }, + "F48": { + "style": 6, + "format": 1, + "content": "=ODOO.PIVOT(4,\"price_subtotal\",\"#invoice_user_id\",2)" + }, + "F49": { + "style": 17, + "format": 1, + "content": "=ODOO.PIVOT(4,\"price_subtotal\",\"#invoice_user_id\",3)" + }, + "F50": { + "style": 6, + "format": 1, + "content": "=ODOO.PIVOT(4,\"price_subtotal\",\"#invoice_user_id\",4)" + }, + "F51": { + "style": 17, + "format": 1, + "content": "=ODOO.PIVOT(4,\"price_subtotal\",\"#invoice_user_id\",5)" + }, + "F52": { + "style": 6, + "format": 1, + "content": "=ODOO.PIVOT(4,\"price_subtotal\",\"#invoice_user_id\",6)" + }, + "F53": { + "style": 17, + "format": 1, + "content": "=ODOO.PIVOT(4,\"price_subtotal\",\"#invoice_user_id\",7)" + }, + "F54": { + "style": 6, + "format": 1, + "content": "=ODOO.PIVOT(4,\"price_subtotal\",\"#invoice_user_id\",8)" + }, + "F55": { + "style": 17, + "format": 1, + "content": "=ODOO.PIVOT(4,\"price_subtotal\",\"#invoice_user_id\",9)" + }, + "F56": { + "style": 6, + "format": 1, + "content": "=ODOO.PIVOT(4,\"price_subtotal\",\"#invoice_user_id\",10)" + }, + "G20": { + "style": 18, + "content": "Amount", + "border": 2 + }, + "G21": { + "style": 17, + "format": 3, + "content": "=ODOO.LIST(1,1,\"amount_untaxed_signed\")" + }, + "G22": { + "style": 6, + "format": 3, + "content": "=ODOO.LIST(1,2,\"amount_untaxed_signed\")" + }, + "G23": { + "style": 17, + "format": 3, + "content": "=ODOO.LIST(1,3,\"amount_untaxed_signed\")" + }, + "G24": { + "style": 6, + "format": 3, + "content": "=ODOO.LIST(1,4,\"amount_untaxed_signed\")" + }, + "G25": { + "style": 17, + "format": 3, + "content": "=ODOO.LIST(1,5,\"amount_untaxed_signed\")" + }, + "G26": { + "style": 6, + "format": 3, + "content": "=ODOO.LIST(1,6,\"amount_untaxed_signed\")" + }, + "G27": { + "style": 17, + "format": 3, + "content": "=ODOO.LIST(1,7,\"amount_untaxed_signed\")" + }, + "G28": { + "style": 6, + "format": 3, + "content": "=ODOO.LIST(1,8,\"amount_untaxed_signed\")" + }, + "G29": { + "style": 17, + "format": 3, + "content": "=ODOO.LIST(1,9,\"amount_untaxed_signed\")" + }, + "G30": { + "style": 6, + "format": 3, + "content": "=ODOO.LIST(1,10,\"amount_untaxed_signed\")" + }, + "G31": { + "style": 6 + }, + "G32": { + "style": 12, + "border": 1 + }, + "G33": { + "style": 16, + "content": "Ratio", + "border": 2 + }, + "G34": { + "style": 17, + "format": 2, + "content": "=iferror(if(F34,F34/ODOO.PIVOT(1,\"price_subtotal\"),\"\"),\"\")" + }, + "G35": { + "style": 6, + "format": 2, + "content": "=iferror(if(F35,F35/ODOO.PIVOT(1,\"price_subtotal\"),\"\"),\"\")" + }, + "G36": { + "style": 17, + "format": 2, + "content": "=iferror(if(F36,F36/ODOO.PIVOT(1,\"price_subtotal\"),\"\"),\"\")" + }, + "G37": { + "style": 6, + "format": 2, + "content": "=iferror(if(F37,F37/ODOO.PIVOT(1,\"price_subtotal\"),\"\"),\"\")" + }, + "G38": { + "style": 17, + "format": 2, + "content": "=iferror(if(F38,F38/ODOO.PIVOT(1,\"price_subtotal\"),\"\"),\"\")" + }, + "G39": { + "style": 6, + "format": 2, + "content": "=iferror(if(F39,F39/ODOO.PIVOT(1,\"price_subtotal\"),\"\"),\"\")" + }, + "G40": { + "style": 17, + "format": 2, + "content": "=iferror(if(F40,F40/ODOO.PIVOT(1,\"price_subtotal\"),\"\"),\"\")" + }, + "G41": { + "style": 6, + "format": 2, + "content": "=iferror(if(F41,F41/ODOO.PIVOT(1,\"price_subtotal\"),\"\"),\"\")" + }, + "G42": { + "style": 17, + "format": 2, + "content": "=iferror(if(F42,F42/ODOO.PIVOT(1,\"price_subtotal\"),\"\"),\"\")" + }, + "G43": { + "format": 3 + }, + "G44": { + "format": 3, + "content": "=iferror(if(F44,F44/ODOO.PIVOT(1,\"price_subtotal\"),\"\"),\"\")" + }, + "G45": { + "style": 12, + "border": 1 + }, + "G46": { + "style": 16, + "content": "Ratio", + "border": 2 + }, + "G47": { + "style": 17, + "format": 2, + "content": "=iferror(if(F47,F47/ODOO.PIVOT(4,\"price_subtotal\"),\"\"),\"\")" + }, + "G48": { + "style": 6, + "format": 2, + "content": "=iferror(if(F48,F48/ODOO.PIVOT(4,\"price_subtotal\"),\"\"),\"\")" + }, + "G49": { + "style": 17, + "format": 2, + "content": "=iferror(if(F49,F49/ODOO.PIVOT(4,\"price_subtotal\"),\"\"),\"\")" + }, + "G50": { + "style": 6, + "format": 2, + "content": "=iferror(if(F50,F50/ODOO.PIVOT(4,\"price_subtotal\"),\"\"),\"\")" + }, + "G51": { + "style": 17, + "format": 2, + "content": "=iferror(if(F51,F51/ODOO.PIVOT(4,\"price_subtotal\"),\"\"),\"\")" + }, + "G52": { + "style": 6, + "format": 2, + "content": "=iferror(if(F52,F52/ODOO.PIVOT(4,\"price_subtotal\"),\"\"),\"\")" + }, + "G53": { + "style": 17, + "format": 2, + "content": "=iferror(if(F53,F53/ODOO.PIVOT(4,\"price_subtotal\"),\"\"),\"\")" + }, + "G54": { + "style": 6, + "format": 2, + "content": "=iferror(if(F54,F54/ODOO.PIVOT(4,\"price_subtotal\"),\"\"),\"\")" + }, + "G55": { + "style": 17, + "format": 2, + "content": "=iferror(if(F55,F55/ODOO.PIVOT(4,\"price_subtotal\"),\"\"),\"\")" + }, + "G56": { + "style": 6, + "format": 2, + "content": "=iferror(if(F56,F56/ODOO.PIVOT(4,\"price_subtotal\"),\"\"),\"\")" + }, + "A8": { + "border": 2 + }, + "B7": { + "border": 1 + }, + "B8": { + "border": 2 + }, + "C7": { + "border": 1 + }, + "C8": { + "border": 2 + }, + "D7": { + "border": 1 + }, + "D8": { + "border": 2 + }, + "D19": { + "border": 1 + }, + "E7": { + "border": 1 + }, + "E8": { + "border": 2 + }, + "F7": { + "border": 1 + }, + "F8": { + "border": 2 + }, + "F19": { + "border": 1 + }, + "G7": { + "border": 1 + }, + "G8": { + "border": 2 + }, + "G19": { + "border": 1 + } + }, + "conditionalFormats": [], + "figures": [ + { + "id": "5ea5dd7f-9f83-4482-a2bb-2ec72ab35912", + "x": 0, + "y": 178, + "width": 1000, + "height": 221, + "tag": "chart", + "data": { + "title": "", + "id": "5ea5dd7f-9f83-4482-a2bb-2ec72ab35912", + "background": "#FFFFFF", + "legendPosition": "none", + "metaData": { + "groupBy": [ + "invoice_date:month" + ], + "measure": "price_subtotal", + "order": null, + "resModel": "account.invoice.report" + }, + "searchParams": { + "comparison": null, + "context": { + "group_by": [ + "invoice_date" + ], + "group_by_no_leaf": 1 + }, + "domain": [ + "&", + [ + "state", + "not in", + [ + "draft", + "cancel" + ] + ], + "|", + [ + "move_type", + "=", + "out_invoice" + ], + [ + "move_type", + "=", + "out_refund" + ] + ], + "groupBy": [ + "invoice_date" + ], + "orderBy": [] + }, + "type": "odoo_line", + "verticalAxisPosition": "left" + } + }, + { + "id": "1aeea7b2-900b-4067-b8ad-3e4772c54028", + "x": 0, + "y": 0, + "width": 200, + "height": 120, + "tag": "chart", + "data": { + "baselineColorDown": "#DC6965", + "baselineColorUp": "#00A04A", + "baselineMode": "difference", + "title": "Invoiced", + "type": "scorecard", + "baseline": "Data!C11", + "baselineDescr": "unpaid", + "keyValue": "Data!C1" + } + }, + { + "id": "bdfb27d0-5902-4a2a-9b7e-514a6625578c", + "x": 210, + "y": 0, + "width": 200, + "height": 120, + "tag": "chart", + "data": { + "baselineColorDown": "#DC6965", + "baselineColorUp": "#00A04A", + "baselineMode": "text", + "title": "Average Invoice", + "type": "scorecard", + "baseline": "Data!C3", + "baselineDescr": "Invoices", + "keyValue": "Data!C2" + } + }, + { + "id": "b1673523-d139-47fb-b5ea-9e4f969aacb6", + "x": 420, + "y": 0, + "width": 200, + "height": 120, + "tag": "chart", + "data": { + "baselineColorDown": "#DC6965", + "baselineColorUp": "#00A04A", + "baselineMode": "difference", + "title": "DSO", + "type": "scorecard", + "baselineDescr": "in current year", + "keyValue": "Data!C10" + } + } + ], + "areGridLinesVisible": true, + "isVisible": true + }, + { + "id": "685cb5c3-4acb-45eb-8000-99e1af15b3ed", + "name": "Data", + "colNumber": 26, + "rowNumber": 107, + "rows": { + "3": { + "size": 23 + } + }, + "cols": { + "0": { + "size": 141.8818359375 + }, + "1": { + "size": 127.6884765625 + } + }, + "merges": [], + "cells": { + "A1": { + "content": "KPI - Income" + }, + "A2": { + "content": "KPI - Average Invoice" + }, + "A3": { + "content": "KPI - Invoice Count" + }, + "A4": { + "content": "Current year" + }, + "A5": { + "content": "Receivable" + }, + "A6": { + "content": "Income" + }, + "A7": { + "content": "COGS" + }, + "A8": { + "content": "Revenue" + }, + "A9": { + "content": "# days" + }, + "A10": { + "content": "KPI - DSO" + }, + "A11": { + "content": "KPI - Unpaid Invoices" + }, + "B1": { + "format": 4, + "content": "=ODOO.PIVOT(5,\"price_subtotal\")" + }, + "B2": { + "format": 4, + "content": "=ODOO.PIVOT(6,\"price_subtotal\")/B3" + }, + "B3": { + "format": 1, + "content": "=ODOO.PIVOT(6,\"__count\")" + }, + "B4": { + "format": 4, + "content": "=YEAR(TODAY())" + }, + "B5": { + "format": 4, + "content": "=ODOO.BALANCE(ODOO.ACCOUNT.GROUP(\"asset_receivable\"),$B$4)" + }, + "B6": { + "format": 4, + "content": "=ODOO.BALANCE(ODOO.ACCOUNT.GROUP(\"income\"),$B$4)" + }, + "B7": { + "format": 4, + "content": "=ODOO.BALANCE(ODOO.ACCOUNT.GROUP(\"expense_direct_cost\"),$B$4)" + }, + "B8": { + "format": 4, + "content": "=B6-B7" + }, + "B9": { + "content": "365" + }, + "B10": { + "format": 5, + "content": "=ROUND(IFERROR(B5/B8*B9))" + }, + "B11": { + "format": 4, + "content": "=ODOO.PIVOT(7,\"price_subtotal\")" + }, + "C1": { + "style": 15, + "content": "=FORMAT.LARGE.NUMBER(B1)" + }, + "C2": { + "style": 15, + "format": 3, + "content": "=FORMAT.LARGE.NUMBER(B2)" + }, + "C3": { + "style": 15, + "content": "=FORMAT.LARGE.NUMBER(B3)" + }, + "C10": { + "style": 15, + "content": "=CONCATENATE(FORMAT.LARGE.NUMBER(B10),\" days\")" + }, + "C11": { + "style": 15, + "content": "=FORMAT.LARGE.NUMBER(B11)" + } + }, + "conditionalFormats": [], + "figures": [], + "areGridLinesVisible": true, + "isVisible": true + } + ], + "entities": {}, + "styles": { + "1": { + "textColor": "#01666b", + "bold": true, + "fontSize": 16 + }, + "2": { + "textColor": "#000000", + "bold": true, + "fillColor": "#ffffff", + "fontSize": 10 + }, + "3": { + "fillColor": "#f8f9fa", + "fontSize": 10, + "textColor": "#01666b" + }, + "4": { + "fontSize": 10, + "textColor": "#01666b" + }, + "5": { + "textColor": "#01666b" + }, + "6": { + "fontSize": 10 + }, + "7": { + "textColor": "#000000", + "bold": true, + "fontSize": 10 + }, + "8": { + "fillColor": "#f8f9fa", + "fontSize": 10, + "textColor": "#741b47" + }, + "9": { + "fontSize": 10, + "textColor": "#741b47" + }, + "10": { + "textColor": "#741b47" + }, + "11": { + "textColor": "#000000" + }, + "12": { + "bold": true, + "fontSize": 16 + }, + "13": { + "bold": true, + "fillColor": "#ffffff", + "fontSize": 10 + }, + "14": { + "textColor": "#000000", + "fillColor": "#f8f9fa", + "fontSize": 10 + }, + "15": { + "fillColor": "#f8f9fa" + }, + "16": { + "bold": true, + "align": "right", + "fontSize": 10 + }, + "17": { + "fillColor": "#f8f9fa", + "fontSize": 10 + }, + "18": { + "bold": true, + "align": "right", + "fillColor": "#ffffff", + "fontSize": 10 + } + }, + "formats": { + "1": "#,##0", + "2": "0%", + "3": "[$$]#,##0", + "4": "[$$]#,##0.00", + "5": "#,##0.00" + }, + "borders": { + "1": { + "bottom": [ + "thin", + "#000" + ] + }, + "2": { + "top": [ + "thin", + "#000" + ] + } + }, + "revisionId": "START_REVISION", + "chartOdooMenusReferences": { + "0833ccd2-8b33-4840-a4b6-0dcad53fc86e": "account.menu_action_account_invoice_report_all", + "5ea5dd7f-9f83-4482-a2bb-2ec72ab35912": "account_accountant.menu_accounting" + }, + "odooVersion": 3, + "pivots": { + "1": { + "colGroupBys": [], + "context": { + "group_by": [ + "invoice_date" + ], + "group_by_no_leaf": 1 + }, + "domain": [ + "&", + [ + "state", + "not in", + [ + "draft", + "cancel" + ] + ], + "&", + [ + "product_categ_id", + "!=", + false + ], + [ + "price_subtotal", + ">=", + 0 + ] + ], + "id": "1", + "measures": [ + { + "field": "price_subtotal" + } + ], + "model": "account.invoice.report", + "rowGroupBys": [ + "product_categ_id" + ], + "name": "Top Categories", + "sortedColumn": { + "groupId": [ + [], + [] + ], + "measure": "price_subtotal", + "order": "desc" + } + }, + "2": { + "colGroupBys": [], + "context": { + "group_by": [ + "invoice_date" + ], + "group_by_no_leaf": 1 + }, + "domain": [ + "&", + [ + "state", + "not in", + [ + "draft", + "cancel" + ] + ], + "&", + [ + "country_id", + "!=", + false + ], + [ + "price_subtotal", + ">=", + 0 + ] + ], + "id": "2", + "measures": [ + { + "field": "price_subtotal" + } + ], + "model": "account.invoice.report", + "rowGroupBys": [ + "country_id" + ], + "name": "Top Countries", + "sortedColumn": { + "groupId": [ + [], + [] + ], + "measure": "price_subtotal", + "order": "desc" + } + }, + "3": { + "colGroupBys": [], + "context": { + "group_by": [ + "invoice_date" + ], + "group_by_no_leaf": 1 + }, + "domain": [ + "&", + [ + "state", + "not in", + [ + "draft", + "cancel" + ] + ], + "&", + [ + "product_id", + "!=", + false + ], + [ + "price_subtotal", + ">=", + 0 + ] + ], + "id": "3", + "measures": [ + { + "field": "price_subtotal" + } + ], + "model": "account.invoice.report", + "rowGroupBys": [ + "product_id" + ], + "name": "Top Products", + "sortedColumn": { + "groupId": [ + [], + [] + ], + "measure": "price_subtotal", + "order": "desc" + } + }, + "4": { + "colGroupBys": [], + "context": { + "group_by": [ + "invoice_date" + ], + "group_by_no_leaf": 1 + }, + "domain": [ + "&", + [ + "state", + "not in", + [ + "draft", + "cancel" + ] + ], + "&", + [ + "invoice_user_id", + "!=", + false + ], + [ + "price_subtotal", + ">=", + 0 + ] + ], + "id": "4", + "measures": [ + { + "field": "price_subtotal" + } + ], + "model": "account.invoice.report", + "rowGroupBys": [ + "invoice_user_id" + ], + "name": "Top Salespeople", + "sortedColumn": { + "groupId": [ + [], + [] + ], + "measure": "price_subtotal", + "order": "desc" + } + }, + "5": { + "colGroupBys": [], + "context": { + "group_by": [ + "invoice_date" + ], + "group_by_no_leaf": 1 + }, + "domain": [ + "&", + [ + "state", + "not in", + [ + "draft", + "cancel" + ] + ], + "|", + [ + "move_type", + "=", + "out_invoice" + ], + [ + "move_type", + "=", + "out_refund" + ] + ], + "id": "5", + "measures": [ + { + "field": "price_subtotal" + } + ], + "model": "account.invoice.report", + "rowGroupBys": [], + "name": "KPI - Income", + "sortedColumn": null + }, + "6": { + "colGroupBys": [], + "context": { + "group_by": [ + "invoice_date" + ], + "group_by_no_leaf": 1 + }, + "domain": [ + "&", + [ + "state", + "not in", + [ + "draft", + "cancel" + ] + ], + "|", + [ + "move_type", + "=", + "out_invoice" + ], + [ + "move_type", + "=", + "out_refund" + ] + ], + "id": "6", + "measures": [ + { + "field": "__count" + }, + { + "field": "price_subtotal" + } + ], + "model": "account.invoice.report", + "rowGroupBys": [], + "name": "KPI - Average Invoice", + "sortedColumn": null + }, + "7": { + "colGroupBys": [], + "context": { + "group_by": [ + "invoice_date" + ], + "group_by_no_leaf": 1 + }, + "domain": [ + "&", + [ + "state", + "not in", + [ + "draft", + "cancel" + ] + ], + "&", + "|", + [ + "move_type", + "=", + "out_invoice" + ], + [ + "move_type", + "=", + "out_refund" + ], + [ + "payment_state", + "=", + "not_paid" + ] + ], + "id": "7", + "measures": [ + { + "field": "price_subtotal" + } + ], + "model": "account.invoice.report", + "rowGroupBys": [], + "name": "KPI - Unpaid Invoices", + "sortedColumn": null + } + }, + "pivotNextId": 8, + "lists": { + "1": { + "columns": [ + "name", + "invoice_partner_display_name", + "invoice_date", + "invoice_date_due", + "activity_ids", + "amount_untaxed_signed", + "amount_total_signed", + "amount_total_in_currency_signed", + "payment_state", + "state" + ], + "domain": [ + [ + "move_type", + "=", + "out_invoice" + ] + ], + "model": "account.move", + "context": { + "default_move_type": "out_invoice" + }, + "orderBy": [ + { + "name": "amount_total_signed", + "asc": false + } + ], + "id": "1", + "name": "Invoices by Total Signed" + } + }, + "listNextId": 2, + "globalFilters": [ + { + "id": "757a1b4b-e339-4879-beb6-9851050387cf", + "type": "date", + "label": "Period", + "defaultValue": "last_year", + "rangeType": "relative", + "defaultsToCurrentPeriod": true, + "pivotFields": { + "1": { + "field": "invoice_date", + "type": "date", + "offset": 0 + }, + "2": { + "field": "invoice_date", + "type": "date", + "offset": 0 + }, + "3": { + "field": "invoice_date", + "type": "date", + "offset": 0 + }, + "4": { + "field": "invoice_date", + "type": "date", + "offset": 0 + }, + "5": { + "field": "invoice_date", + "type": "date", + "offset": 0 + }, + "6": { + "field": "invoice_date", + "type": "date", + "offset": 0 + }, + "7": { + "field": "invoice_date", + "type": "date", + "offset": 0 + } + }, + "listFields": { + "1": { + "field": "date", + "type": "date", + "offset": 0 + } + }, + "graphFields": { + "0833ccd2-8b33-4840-a4b6-0dcad53fc86e": { + "field": "invoice_date", + "type": "date", + "offset": 0 + }, + "5ea5dd7f-9f83-4482-a2bb-2ec72ab35912": { + "field": "invoice_date", + "type": "date", + "offset": 0 + } + } + }, + { + "id": "8051befe-619f-4fe7-b788-d34584297bad", + "type": "relation", + "label": "Country", + "modelName": "res.country", + "defaultValue": [], + "defaultValueDisplayNames": [], + "rangeType": "year", + "defaultsToCurrentPeriod": false, + "pivotFields": { + "1": { + "field": "country_id", + "type": "many2one" + }, + "2": { + "field": "country_id", + "type": "many2one" + }, + "3": { + "field": "country_id", + "type": "many2one" + }, + "4": { + "field": "country_id", + "type": "many2one" + }, + "5": { + "field": "country_id", + "type": "many2one" + }, + "6": { + "field": "country_id", + "type": "many2one" + }, + "7": { + "field": "country_id", + "type": "many2one" + } + }, + "listFields": { + "1": { + "field": "partner_id", + "type": "many2one" + } + }, + "graphFields": { + "0833ccd2-8b33-4840-a4b6-0dcad53fc86e": { + "field": "country_id", + "type": "many2one" + }, + "5ea5dd7f-9f83-4482-a2bb-2ec72ab35912": { + "field": "country_id", + "type": "many2one" + } + } + }, + { + "id": "17277380-12d8-4a83-b133-3532e5618c43", + "type": "relation", + "label": "Product Category", + "modelName": "product.category", + "defaultValue": [], + "defaultValueDisplayNames": [], + "rangeType": "year", + "defaultsToCurrentPeriod": false, + "pivotFields": { + "1": { + "field": "product_categ_id", + "type": "many2one" + }, + "2": { + "field": "product_categ_id", + "type": "many2one" + }, + "3": { + "field": "product_categ_id", + "type": "many2one" + }, + "4": { + "field": "product_categ_id", + "type": "many2one" + }, + "5": { + "field": "product_categ_id", + "type": "many2one" + }, + "6": { + "field": "product_categ_id", + "type": "many2one" + }, + "7": { + "field": "product_categ_id", + "type": "many2one" + } + }, + "listFields": { + "1": {} + }, + "graphFields": { + "0833ccd2-8b33-4840-a4b6-0dcad53fc86e": { + "field": "product_categ_id", + "type": "many2one" + }, + "5ea5dd7f-9f83-4482-a2bb-2ec72ab35912": { + "field": "product_categ_id", + "type": "many2one" + } + } + }, + { + "id": "accd0cbe-12c9-4cab-93a1-afa5080dd635", + "type": "relation", + "label": "Product", + "modelName": "product.product", + "defaultValue": [], + "defaultValueDisplayNames": [], + "rangeType": "year", + "defaultsToCurrentPeriod": false, + "pivotFields": { + "1": { + "field": "product_id", + "type": "many2one" + }, + "2": { + "field": "product_id", + "type": "many2one" + }, + "3": { + "field": "product_id", + "type": "many2one" + }, + "4": { + "field": "product_id", + "type": "many2one" + }, + "5": { + "field": "product_id", + "type": "many2one" + }, + "6": { + "field": "product_id", + "type": "many2one" + }, + "7": { + "field": "product_id", + "type": "many2one" + } + }, + "listFields": { + "1": {} + }, + "graphFields": { + "0833ccd2-8b33-4840-a4b6-0dcad53fc86e": { + "field": "product_id", + "type": "many2one" + }, + "5ea5dd7f-9f83-4482-a2bb-2ec72ab35912": { + "field": "product_id", + "type": "many2one" + } + } + }, + { + "id": "02acc7f7-b282-4ce9-bf38-6abfb72be6aa", + "type": "relation", + "label": "Salesperson", + "modelName": "res.users", + "defaultValue": [], + "defaultValueDisplayNames": [], + "rangeType": "year", + "defaultsToCurrentPeriod": false, + "pivotFields": { + "1": { + "field": "invoice_user_id", + "type": "many2one" + }, + "2": { + "field": "invoice_user_id", + "type": "many2one" + }, + "3": { + "field": "invoice_user_id", + "type": "many2one" + }, + "4": { + "field": "invoice_user_id", + "type": "many2one" + }, + "5": { + "field": "invoice_user_id", + "type": "many2one" + }, + "6": { + "field": "invoice_user_id", + "type": "many2one" + }, + "7": { + "field": "invoice_user_id", + "type": "many2one" + } + }, + "listFields": { + "1": { + "field": "activity_user_id", + "type": "many2one" + } + }, + "graphFields": { + "0833ccd2-8b33-4840-a4b6-0dcad53fc86e": { + "field": "invoice_user_id", + "type": "many2one" + }, + "5ea5dd7f-9f83-4482-a2bb-2ec72ab35912": { + "field": "invoice_user_id", + "type": "many2one" + } + } + } + ] +} \ No newline at end of file diff --git a/addons/spreadsheet_dashboard_account/static/tests/tours/accounting_dashboard_tours.js b/addons/spreadsheet_dashboard_account/static/tests/tours/accounting_dashboard_tours.js new file mode 100644 index 00000000000..34123025998 --- /dev/null +++ b/addons/spreadsheet_dashboard_account/static/tests/tours/accounting_dashboard_tours.js @@ -0,0 +1,7 @@ +/** @odoo-module */ + +import { registerDashboardTour } from "@spreadsheet_dashboard/../tests/utils/tour"; + +registerDashboardTour("spreadsheet_dashboard_accounting", "Accounting"); +registerDashboardTour("spreadsheet_dashboard_invoicing", "Invoicing"); +registerDashboardTour("spreadsheet_dashboard_benchmark", "Benchmark"); diff --git a/addons/spreadsheet_dashboard_account/tests/__init__.py b/addons/spreadsheet_dashboard_account/tests/__init__.py new file mode 100644 index 00000000000..9f2319480cf --- /dev/null +++ b/addons/spreadsheet_dashboard_account/tests/__init__.py @@ -0,0 +1 @@ +from . import test_accounting_dashboard_tour diff --git a/addons/spreadsheet_dashboard_account/tests/test_accounting_dashboard_tour.py b/addons/spreadsheet_dashboard_account/tests/test_accounting_dashboard_tour.py new file mode 100644 index 00000000000..3adf0612b33 --- /dev/null +++ b/addons/spreadsheet_dashboard_account/tests/test_accounting_dashboard_tour.py @@ -0,0 +1,15 @@ +from odoo.tests import tagged +from odoo.tests.common import HttpCase + + +@tagged('post_install', '-at_install') +class TestAccountingDashboard(HttpCase): + + def test_accounting_dashboard(self): + self.start_tour('/web', 'spreadsheet_dashboard_accounting', login='admin') + + def test_invoicing_dashboard(self): + self.start_tour('/web', 'spreadsheet_dashboard_invoicing', login='admin') + + def test_benchmark_dashboard(self): + self.start_tour('/web', 'spreadsheet_dashboard_benchmark', login='admin')