TIP: You can type at any time to perform a new search.
BI View Editor
bi_view_editor · OCA/reporting-engine
- Repository
- OCA/reporting-engine · module folder · Try on Runboat
- Module version
- 1.1.0
- Category
- Productivity
- Folder size
- 1.3 MB
- License
- AGPL-3
- Application
- No
- Auto-installable
- No
- Website
- https://github.com/OCA/reporting-engine
- Last tracking update
- 2026-08-07 08:23:12
- Authors
- Odoo Community Association (OCA), Onestein
- Maintainers
- Odoo Community Association (OCA), Onestein
- Committers
- Weblate, OCA-git-bot, oca-ci, Antonio David Ruban Espinal
- Odoo dependencies
- Python dependencies
- None
- System dependencies
- graphviz
- Required by
- bi_view_editor_spreadsheet_dashboard
- Description
BI View Editor is a tool integrated in Odoo that allows users define and execute their own reports without the need to code. Purpose: - The BI View Editor is used to create reports not already contained in the standard Odoo, combining data from existing sources. - It has been designed to be used by users with little or no knowledge of the technical architecture of Odoo. Users visually link business objects and select the fields to visualize. - The BI View Editor offers users different types of representations, including tree, graph, pivot views.
Code Analysis ⓘ
Views touched (2)
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
view_bi_view_editor_view_form |
bve.view | form | New | |
view_bi_view_editor_view_tree |
bve.view | tree | New |
HTTP endpoints (0)
No HTTP endpoints found for this module.
Models touched (5)
New fields (0)
No new fields.
Public methods (0)No public methods.
New fields (15)
-
action_idMany2one → ir.actions.act_windowstring='Action' args: 'ir.actions.act_window' -
dataCharcompute='_compute_serialized_data'help="Use the special query builder to define the query to generate your report dataset. NOTE: To be edited, the query should be in 'Draft' status."inverse='_inverse_serialized_data' -
er_diagram_imageBinarycompute='_compute_er_diagram_image' -
field_idsOne2many → bve.view.linedomain=['|', ('join_node', '=', -1), ('join_node', '=', False)]string='Fields' args: 'bve.view.line', 'bve_view_id' -
group_idsMany2many → res.groupshelp='User groups allowed to see the generated report; if NO groups are specified the report will be public for everyone.'string='Groups' args: 'res.groups' -
line_idsOne2many → bve.view.linestring='Lines' args: 'bve.view.line', 'bve_view_id' -
model_nameCharcompute='_compute_model_name'store=True -
nameCharcopy=Falserequired=Truetranslate=True -
noteTextstring='Notes' -
over_conditionTexthelp="Condition to be inserted in the OVER part of the ID's row_number function.\nFor instance, 'ORDER BY t1.id' would create IDs ordered in the same way as t1's IDs; otherwise IDs are assigned with no specific order." -
queryTextcompute='_compute_sql_query' -
relation_idsOne2many → bve.view.linedomain=[('join_node', '!=', -1), ('join_node', '!=', False)]string='Relations' args: 'bve.view.line', 'bve_view_id' -
stateSelectioncopy=Falsedefault='draft' args: [('draft', 'Draft'), ('created', 'Created')] -
user_idsMany2many → res.userscompute='_compute_users'store=Truestring='Users' args: 'res.users' -
view_idMany2one → ir.ui.viewstring='View' args: 'ir.ui.view'
-
action_create(self) -
action_reset(self) -
copy(self, default=None) -
get_clean_list(self, data_dict)@api.model -
open_view(self) -
unlink(self)
New fields (20)
-
bve_view_idMany2one → bve.viewondelete='cascade' args: 'bve.view' -
columnBoolean -
descriptionChartranslate=True -
field_idMany2one → ir.model.fieldsargs: 'ir.model.fields' -
field_nameCharcompute='_compute_model_field_name'store=True -
in_listBoolean -
join_model_idMany2one → ir.modelargs: 'ir.model' -
join_nodeChar -
left_joinBoolean -
list_attrSelectiondefault='sum'string='List Attribute' args: [('sum', 'Sum'), ('avg', 'Average')] -
measureBoolean -
model_idMany2one → ir.modelargs: 'ir.model' -
model_nameCharrelated='model_id.model'store=Truestring='Model Name' -
nameCharcompute='_compute_name' -
relationChar -
rowBoolean -
sequenceIntegerdefault=1 -
table_aliasCharrequired=True -
ttypeCharstring='Type' -
view_field_typeCharcompute='_compute_view_field_type'
No public methods.
New fields (0)
No new fields.
Public methods (6)-
get_fields(self, model_id)@api.model -
get_join_nodes(self, field_data, new_field)@api.modelReturn list of field dicts of join nodes Return all possible join nodes to add new_field to the query containing model_ids. -
get_model_list(self, model_table_map) -
get_models(self, table_model_map=None)@api.modelReturn list of model dicts for all available models. -
get_related_models(self, model_table_map)@api.modelReturn list of model dicts for all models that can be joined with the already selected models. -
get_relation_list(self, model_table_map)
New fields (0)
No new fields.
Public methods (2)-
default_get(self, fields_list)@api.model -
menu_create(self)
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…