19.0 vanilla

This commit is contained in:
Ernad Husremovic 2026-03-09 09:30:07 +01:00
parent ba20ce7443
commit 768b70e05e
2357 changed files with 1057103 additions and 712486 deletions

View file

@ -3,10 +3,13 @@
<record id="dashboard_invoicing" model="spreadsheet.dashboard">
<field name="name">Invoicing</field>
<field name="data" type="base64" file="spreadsheet_dashboard_account/data/files/invoicing_dashboard.json"/>
<field name="spreadsheet_binary_data" type="base64" file="spreadsheet_dashboard_account/data/files/invoicing_dashboard.json"/>
<field name="main_data_model_ids" eval="[(4, ref('account.model_account_move'))]"/>
<field name="sample_dashboard_file_path">spreadsheet_dashboard_account/data/files/invoicing_sample_dashboard.json</field>
<field name="dashboard_group_id" ref="spreadsheet_dashboard.spreadsheet_dashboard_group_finance"/>
<field name="group_ids" eval="[Command.link(ref('account.group_account_readonly')), Command.link(ref('account.group_account_invoice'))]"/>
<field name="sequence">20</field>
<field name="is_published">True</field>
</record>
</odoo>

View file

@ -0,0 +1,425 @@
{
"version": "18.4.14",
"sheets": [
{
"id": "a7cd7db1-9407-4895-82f2-7657102c7688",
"name": "Dashboard",
"colNumber": 7,
"rowNumber": 62,
"rows": {
"6": { "size": 40 },
"22": { "size": 40 },
"23": { "size": 40 },
"24": { "size": 27 },
"25": { "size": 27 },
"26": { "size": 27 },
"27": { "size": 27 },
"28": { "size": 27 },
"29": { "size": 27 },
"30": { "size": 27 },
"31": { "size": 27 },
"32": { "size": 27 },
"33": { "size": 27 },
"35": { "size": 40 },
"36": { "size": 40 },
"37": { "size": 27 },
"38": { "size": 27 },
"39": { "size": 27 },
"40": { "size": 27 },
"41": { "size": 27 },
"42": { "size": 27 },
"43": { "size": 27 },
"44": { "size": 27 },
"45": { "size": 27 },
"46": { "size": 27 },
"48": { "size": 40 },
"49": { "size": 40 },
"50": { "size": 27 },
"51": { "size": 27 },
"52": { "size": 27 },
"53": { "size": 27 },
"54": { "size": 27 },
"55": { "size": 27 },
"56": { "size": 27 },
"57": { "size": 27 },
"58": { "size": 27 },
"59": { "size": 27 }
},
"cols": {
"0": { "size": 225 },
"1": { "size": 150 },
"2": { "size": 100 },
"3": { "size": 50 },
"4": { "size": 225 },
"5": { "size": 150 },
"6": { "size": 100 }
},
"merges": [
"D24:E24",
"D25:E25",
"D26:E26",
"D27:E27",
"D28:E28",
"D29:E29",
"D30:E30",
"D31:E31",
"D32:E32",
"D33:E33",
"D34:E34"
],
"cells": {
"A7": "[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})",
"A23": "[Top Invoices](odoo://view/{\"viewType\":\"list\",\"action\":{\"domain\":[[\"move_type\",\"=\",\"out_invoice\"]],\"context\":{\"group_by\":[]},\"modelName\":\"account.move\",\"views\":[[false,\"list\"],[false,\"kanban\"],[false,\"form\"],[false,\"search\"]]},\"threshold\":0,\"name\":\"Invoices\"})",
"A24": "=_t(\"Reference\")",
"A36": "[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\"})",
"A37": "=_t(\"Country\")",
"A49": "[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\"})",
"A50": "=_t(\"Product\")",
"B24": "=_t(\"Salesperson\")",
"B37": "=_t(\"Amount\")",
"B50": "=_t(\"Amount\")",
"C24": "=_t(\"Status\")",
"C37": "=_t(\"Ratio\")",
"C43": "=iferror(if(B43,B43/PIVOT.VALUE(2,\"price_subtotal\"),\"\"),\"\")",
"C44": "=iferror(if(B44,B44/PIVOT.VALUE(2,\"price_subtotal\"),\"\"),\"\")",
"C45": "=iferror(if(B45,B45/PIVOT.VALUE(2,\"price_subtotal\"),\"\"),\"\")",
"C46": "=iferror(if(B46,B46/PIVOT.VALUE(2,\"price_subtotal\"),\"\"),\"\")",
"C48": "=iferror(if(B48,B48/PIVOT.VALUE(2,\"price_subtotal\"),\"\"),\"\")",
"C50": "=_t(\"Ratio\")",
"C60": "=iferror(if(B60,B60/PIVOT.VALUE(3,\"price_subtotal\"),\"\"))",
"D24": "=_t(\"Customer\")",
"E36": "[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\"})",
"E37": "=_t(\"Top Categories\")",
"E49": "[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\"})",
"E50": "=_t(\"Salesperson\")",
"F24": "=_t(\"Date\")",
"F37": "=_t(\"Amount\")",
"F50": "=_t(\"Amount\")",
"G24": "=_t(\"Amount\")",
"G37": "=_t(\"Ratio\")",
"G43": "=iferror(if(F43,F43/PIVOT.VALUE(1,\"price_subtotal\"),\"\"),\"\")",
"G44": "=iferror(if(F44,F44/PIVOT.VALUE(1,\"price_subtotal\"),\"\"),\"\")",
"G45": "=iferror(if(F45,F45/PIVOT.VALUE(1,\"price_subtotal\"),\"\"),\"\")",
"G46": "=iferror(if(F46,F46/PIVOT.VALUE(1,\"price_subtotal\"),\"\"),\"\")",
"G48": "=iferror(if(F48,F48/PIVOT.VALUE(1,\"price_subtotal\"),\"\"),\"\")",
"G50": "=_t(\"Ratio\")",
"G60": "=iferror(if(F60,F60/PIVOT.VALUE(4,\"price_subtotal\"),\"\"),\"\")"
},
"styles": {
"A7": 1,
"A23": 1,
"A36": 1,
"A49": 1,
"E36": 1,
"E49": 1,
"A37": 2,
"A50": 2,
"A24:E24": 2,
"E37": 2,
"E50": 2,
"B37:C37": 3,
"B50:C50": 3,
"F24:G24": 3,
"F37:G37": 3,
"F50:G50": 3,
"C43:C46": 4,
"C60": 4,
"G43:G46": 4,
"G60": 4
},
"formats": {},
"borders": {
"A36:C36": 1,
"A49:C49": 1,
"A7:G7": 1,
"A23:G23": 1,
"E36:G36": 1,
"E49:G49": 1,
"A37:C37": 2,
"A50:C50": 2,
"A8:G8": 2,
"A24:G24": 2,
"E37:G37": 2,
"E50:G50": 2,
"A38:C38": 3,
"A51:C51": 3,
"A25:G25": 3,
"E38:G38": 3,
"E51:G51": 3,
"A39:C47": 4,
"A52:C60": 4,
"A26:G34": 4,
"E39:G47": 4,
"E52:G60": 4,
"A48:C48": 5,
"A61:C61": 5,
"A35:G35": 5,
"E48:G48": 5,
"E61:G61": 5
},
"conditionalFormats": [],
"dataValidationRules": [],
"figures": [
{
"id": "1aeea7b2-900b-4067-b8ad-3e4772c54028",
"width": 200,
"height": 109,
"tag": "chart",
"data": {
"baselineColorDown": "#DC6965",
"baselineColorUp": "#00A04A",
"baselineMode": "text",
"title": { "text": "Invoiced", "color": "#434343", "bold": true },
"type": "scorecard",
"background": "#EFF6FF",
"baseline": "Data!C11",
"baselineDescr": { "text": "unpaid" },
"keyValue": "Data!C1",
"humanize": false
},
"offset": { "x": 0, "y": 11 },
"col": 0,
"row": 0
},
{
"id": "bdfb27d0-5902-4a2a-9b7e-514a6625578c",
"width": 200,
"height": 109,
"tag": "chart",
"data": {
"baselineColorDown": "#DC6965",
"baselineColorUp": "#00A04A",
"baselineMode": "text",
"title": { "text": "Average Invoice", "color": "#434343", "bold": true },
"type": "scorecard",
"background": "#EFF6FF",
"baseline": "Data!C3",
"baselineDescr": { "text": "Invoices" },
"keyValue": "Data!C2",
"humanize": false
},
"offset": { "x": 210, "y": 11 },
"col": 0,
"row": 0
},
{
"id": "b1673523-d139-47fb-b5ea-9e4f969aacb6",
"width": 200,
"height": 109,
"tag": "chart",
"data": {
"baselineColorDown": "#DC6965",
"baselineColorUp": "#00A04A",
"baselineMode": "difference",
"title": { "text": "DSO", "color": "#434343", "bold": true },
"type": "scorecard",
"background": "#FEF2F2",
"baselineDescr": { "text": "in current year" },
"keyValue": "Data!C10",
"humanize": false
},
"offset": { "x": 419, "y": 11 },
"col": 0,
"row": 0
},
{
"id": "b181a834-363a-4f35-ac8d-b2edc3bb691a",
"width": 1001,
"height": 350,
"tag": "chart",
"data": {
"type": "line",
"dataSetsHaveTitle": false,
"dataSets": [
{ "dataRange": "Data!C14:C20", "yAxisId": "y" }
],
"legendPosition": "none",
"labelRange": "Data!A14:A20",
"title": {},
"labelsAsText": true,
"stacked": false,
"aggregated": false,
"cumulative": true,
"fillArea": true
},
"offset": { "x": 0, "y": 178.0390625 },
"col": 0,
"row": 0
}
],
"tables": [
{
"range": "A48:C50",
"type": "static",
"config": {
"hasFilters": false,
"totalRow": false,
"firstColumn": false,
"lastColumn": false,
"numberOfHeaders": 1,
"bandedRows": true,
"bandedColumns": false,
"automaticAutofill": true,
"styleId": "None"
}
},
{
"range": "E48:G50",
"type": "static",
"config": {
"hasFilters": false,
"totalRow": false,
"firstColumn": false,
"lastColumn": false,
"numberOfHeaders": 1,
"bandedRows": true,
"bandedColumns": false,
"automaticAutofill": true,
"styleId": "None"
}
}
],
"areGridLinesVisible": true,
"isVisible": true,
"headerGroups": {
"ROW": [],
"COL": []
},
"comments": {}
},
{
"id": "685cb5c3-4acb-45eb-8000-99e1af15b3ed",
"name": "Data",
"colNumber": 26,
"rowNumber": 107,
"rows": {},
"cols": {},
"merges": [],
"cells": {
"A1": "=_t(\"KPI - Income\")",
"A2": "=_t(\"KPI - Average Invoice\")",
"A3": "=_t(\"KPI - Invoice Count\")",
"A4": "=_t(\"Current year\")",
"A5": "=_t(\"Receivable\")",
"A6": "=_t(\"Income\")",
"A7": "=_t(\"COGS\")",
"A8": "=_t(\"Revenue\")",
"A9": "=_t(\"# days\")",
"A10": "=_t(\"KPI - DSO\")",
"A11": "=_t(\"KPI - Unpaid Invoices\")",
"A14": "=EDATE(TODAY(),B14)",
"A15": "=EDATE(TODAY(),B15)",
"A16": "=EDATE(TODAY(),B16)",
"A17": "=EDATE(TODAY(),B17)",
"A18": "=EDATE(TODAY(),B18)",
"A19": "=EDATE(TODAY(),B19)",
"A20": "=EDATE(TODAY(),B20)",
"B1": "42200",
"B2": "1789",
"B3": "32",
"B4": "=YEAR(TODAY())",
"B5": "7463.5",
"B6": "7169.7699999999895",
"B7": "0",
"B8": "=B6-B7",
"B9": "365",
"B10": "=ROUND(IFERROR(B5/B8*B9))",
"B11": "5783",
"B14": "6",
"B15": "5",
"B16": "4",
"B17": "3",
"B18": "2",
"B19": "1",
"B20": "0",
"C1": "=FORMAT.LARGE.NUMBER(B1)",
"C2": "=FORMAT.LARGE.NUMBER(B2)",
"C3": "=FORMAT.LARGE.NUMBER(B3)",
"C10": "=_t(\"380 days\")",
"C11": "=FORMAT.LARGE.NUMBER(B11)",
"C14": "27341",
"C15": "12263",
"C16": "25821",
"C17": "29033",
"C18": "21708",
"C19": "49252",
"C20": "15977"
},
"styles": { "C1:C3": 5, "C10:C11": 5 },
"formats": {
"A14:A20": 1,
"B5:B6": 2,
"B8": 2,
"B1:C2": 2,
"B11:C11": 2,
"C14:C20": 2,
"B3": 3,
"B10": 4
},
"borders": {},
"conditionalFormats": [],
"dataValidationRules": [],
"figures": [],
"tables": [],
"areGridLinesVisible": true,
"isVisible": true,
"headerGroups": {
"ROW": [],
"COL": []
},
"comments": {}
}
],
"styles": {
"1": { "textColor": "#01666b", "bold": true, "fontSize": 16 },
"2": { "textColor": "#434343", "bold": true, "fontSize": 11 },
"3": {
"textColor": "#434343",
"bold": true,
"fontSize": 11,
"align": "center"
},
"4": { "textColor": "#434343", "verticalAlign": "middle" },
"5": { "fillColor": "#f8f9fa" }
},
"formats": { "1": "mmmm yyyy", "2": "[$$]#,##0", "3": "#,##0", "4": "#,##0.00" },
"borders": {
"1": {
"bottom": { "style": "thin", "color": "#CCCCCC" }
},
"2": {
"top": { "style": "thin", "color": "#CCCCCC" }
},
"3": {
"bottom": { "style": "thick", "color": "#FFFFFF" }
},
"4": {
"top": { "style": "thick", "color": "#FFFFFF" },
"bottom": { "style": "thick", "color": "#FFFFFF" }
},
"5": {
"top": { "style": "thick", "color": "#FFFFFF" }
}
},
"revisionId": "START_REVISION",
"uniqueFigureIds": true,
"settings": {
"locale": {
"name": "English (US)",
"code": "en_US",
"thousandsSeparator": ",",
"decimalSeparator": ".",
"dateFormat": "mm/dd/yyyy",
"timeFormat": "hh:mm:ss",
"formulaArgSeparator": ",",
"weekStart": 7
}
},
"pivots": {},
"pivotNextId": 8,
"customTableStyles": {},
"globalFilters": [],
"lists": {},
"listNextId": 2,
"chartOdooMenusReferences": {}
}