跳转到主要内容

构建“管理信息系统”报表和仪表板

项目描述

Production/Stable License: AGPL-3 OCA/mis-builder Translate me on Weblate Try me on Runboat

此模块允许您构建管理信息系统的仪表板。此类报表以行显示KPI,以列显示时间周期。报表主要从会计凭证获取数据,但也可以结合来自任意Odoo模型的数据。报表可以导出为PDF、Excel,并可以添加到Odoo仪表板。

目录

安装

您首选的安装插件方式与MIS Builder兼容。

使用pip安装及其所有依赖项的简单方法是

  • pip install --pre odoo12-addon-mis_builder

  • 然后重启Odoo,更新数据库中的插件列表,并安装MIS Builder应用程序。

用法

要配置此模块,您需要

  • 转到会计 > 配置 > MIS报表 > MIS报表模板,在那里您可以创建报表模板,通过定义KPI来创建报表模板。KPI构成了报表的行。此类报表模板是时间无关的。

image1

  • 然后在会计 > 报表 > MIS报表 > MIS报表中,您可以通过将模板绑定到时间周期来创建报表实例,从而定义报表的列。

image2

  • 从MIS报表视图,您可以预览报表,将其添加到Odoo仪表板,并将其导出为PDF或Excel。

image3

开发

典型的扩展是为分析维度或操作单元提供过滤报告的机制。为了实现这一点,您可以覆盖 _get_additional_move_line_filter 和 _get_additional_filter 来根据用户选择进一步过滤行或查询。一个典型的用例可能是向 mis.report.instance 添加一个分析账户字段,或者如果您想不同列显示不同的分析账户,甚至可以添加到 mis.report.instance.period。

已知问题/路线图

mis_builder 的 路线图已知问题 可以在 GitHub 上找到。

变更日志

16.0.5.1.9 (2024-02-09)

错误修正

  • 恢复与 python 3.9 的兼容性 (#590)

16.0.5.1.8 (2024-02-08)

错误修正

  • 解决创建报告周期时无管理员权限的用户遇到的权限问题。 (#596)

16.0.5.1.0 (2023-04-04)

功能

  • 通过在视图中直接编辑旋转日期选项来改善用户体验。

16.0.5.0.0 (2023-04-01)

功能

  • 迁移到 16.0

    • 在报告和列中添加通用的过滤器域。

    • 在部件中添加搜索栏。相应的搜索视图可以根据每个报告进行配置。

    • 部件样式有了巨大的改进。这是久违的。

    • 使 MIS 报告菜单对计费管理员组可用(而不是隐藏的“显示完整会计功能”),以符合访问规则并避免造成错误的安全感。这也使菜单对新用户更易发现。

    • 由于上游 analytic_distribution 机制不兼容,移除分析功能;支持可能会在单独的模块中引入,具体取决于用例。

    • 放弃具有安全影响的 mis_report_filters 上下文键。它被替换为 mis_analytic_domain 上下文键,该键与其他报告定义的过滤器进行 AND 操作。 (#472)

    • get_filter_descriptions_from_context 方法重命名为 get_filter_descriptions。此方法可以覆盖以在 PDF 或 XLS 报告中提供额外的副标题,代表用户选择的过滤器。

    • 已用 widget_show_filters 替换 hide_analytic_filters

    • 现在通过 show_settings_button 控制 Widget 上的设置按钮的可见性。以前它只为 account_user 组可见,但这不够灵活。

    • 现在在报告配置表单中的专用 Widget 标签中分组部件配置设置。

错误修正

  • 修复预览或打印报告时的访问错误。 (#415)

15.0.4.0.5 (2022-07-19)

错误修正

  • 支持没有时区的用户。 (#388)

15.0.4.0.4 (2022-07-19)

错误修正

  • 允许删除具有子报告的报告。 (#431)

15.0.4.0.2 (2022-02-16)

错误修正

  • 修复在 MIS 报告实例表单上单击“保存”按钮时的访问权限问题。 (#410)

14.0.4.0.0 (2022-01-08)

功能

  • 移除各种字段大小限制。 (#332)

错误修正

  • 支持 Odoo 13+ 的多公司模型。在多公司模式下,可以在 MIS 报告实例上声明多个允许的公司,报告在报告公司和用户上下文中选择的公司之间操作。 (#327)

  • 现在正确传播了 evaluate()get_additional_query_filter 参数。 (#375)

  • 使用 account.move.lineparent_state 字段来过滤仅处于 posteddraft 状态的条目。在此之前,在草稿模式下报告时,所有条目都被使用(即没有过滤),并且从 Odoo 13.+ 开始包括已取消的条目/发票。

    此更改还包括内部 API 中的一个 破坏性更改。相当长一段时间以来,AEP 和其他方法的 target_move 参数本身没有被 MIS Builder 使用,而是保留以保持向后兼容性。为了避免使用 parent_state 所需的更改产生的连锁反应,我们现在删除了这个参数。(#377

14.0.3.6.7 (2021-06-02)

错误修正

  • 在 MIS 报告实例上,如果您想生成新的比较类型的行,您目前不能选择任何现有周期进行比较。这是因为字段域是在 NewId 上下文中搜索的,因此找不到正确的周期。更改域并使其使用包含对 _origin 记录搜索的计算字段解决了问题。(#361

14.0.3.6.6 (2021-04-23)

错误修正

  • 修复自定义会计模型时的钻取操作名称。(#350

14.0.3.6.5 (2021-04-23)

错误修正

  • 在复制 MIS 报告实例时,比较列被忽略,因为否则会引发错误,因为它们保留了原始记录中的旧 source_cmpcol_from_id 和 source_cmpcol_to_id。(#343

14.0.3.6.4 (2021-04-06)

功能

  • 面包屑上显示的钻取操作名称已被修订。现在显示 KPI 描述和会计 display_name,而不是 KPI 的技术定义。(#304

  • 在报告实例、期间和交互视图中添加分析组过滤器。(#320

13.0.3.6.3 (2020-08-28)

错误修正

  • 在 KPI 上添加了“比较列”并与相关样式一起使用因子/分隔符时,该因子在导出到 XLSX 时会应用于百分比。(#300

其他

13.0.3.6.2 (2020-04-22)

错误修正

  • 现在在预览报告时,对于具有“显示完整会计功能”权限的用户,将显示“设置”按钮。(#281

13.0.3.6.1 (2020-04-22)

错误修正

  • 修复使用按账户使用预算时的 TypeError: 'module' object is not iterable。(#276

13.0.3.6.0 (2020-03-28)

功能

  • 在分析账户和分析标签上添加列级过滤器。这些过滤器与报告级过滤器结合使用,并且在预览中不能修改。(#138

  • 在 KPI 表达式(即子报告)中从其他报告中访问 KPI。在报告模板中,可以列出名为“子报告”(其他报告模板)。在评估表达式时,可以使用点前缀表示法访问子报告的 KPI。例如:可以定义一个用于“资产负债表”的 MIS 报告,然后有另一个用于“资产负债表比率”的 MIS 报告,该报告从“资产负债表”获取 KPI 以创建新的比率 KPI(例如,balance_sheet.current_assets / balance_sheet.total_assets)。(《a href="https://github.com/OCA/mis-builder/issues/155" rel="nofollow">#155)

13.0.3.5.0 (2020-01-??)

迁移到 Odoo 13.0。

12.0.3.5.0 (2019-10-26)

功能

  • 在“期间”表单的“移动行来源”中选定的模型,其account_id字段现在可以与任何具有code字段的模型(不仅仅是account.account模型)建立Many2one关系。为此,可以在报告模板上配置用于实际移动行的模型。它可以不是移动行,唯一约束是其account_id字段必须有一个code字段。(#149

  • 添加source_aml_model_name字段,以便提供替代数据源的扩展模块可以更容易地自定义其数据源。(#214

  • 支持后端视图和预览小部件中的分析标签过滤器。在过滤器中选择多个标签意味着筛选同时设置了所有这些标签的移动行。这是为了支持使用标签对不同维度进行筛选的最常见用例。该过滤器还将与分析账户过滤器进行AND操作。(#228

  • 在多公司模式下,在账户详细信息行中显示公司。(#242

错误修正

  • 将上下文传播到xlsx报告,以便在导出为xslx时分析账户过滤器也能工作。这也需要对report_xlsx进行修复(见https://github.com/OCA/reporting-engine/pull/259)。(#178

  • 在求和类型的列中,保留不可求和的KPI(例如百分比值)的样式。在此修复之前,此类单元格显示时没有样式。(#219

  • 在Excel导出中,保留百分数点后缀(pp)而不是将其替换为%。 (#220

12.0.3.4.0 (2019-07-09)

功能

  • 为定义期间添加新的年初至今模式。(#165

  • 添加对具有负借方或贷方的移动行的支持。一些会计人员用于冲账会计。非官方支持。(#175

  • 在Excel导出中使用带千位分隔符的数字格式。使用的特定分隔符取决于Excel配置(例如区域设置)。(#190

  • 在XLS导出的末尾添加生成日期/时间。(#191

  • 在存在子KPI的情况下,当非多表达式产生不正确长度的元组时,报告更详细的使用错误。(#196

错误修正

  • 修复Excel导出中百分比类型的渲染。(#192

12.0.3.3.0 (2019-01-26)

功能

报告预览中的动态分析过滤器在11版中尚不可用,这需要对JS小部件进行更新,迄今为止实现起来很困难。欢迎帮助。

  • 分析账户过滤器。在报告中,可以选择分析账户进行过滤。过滤器将应用于移动行查询。小部件中还有一个过滤器框,允许用户在报告预览期间选择分析账户。(#15

  • 控制小部件中分析过滤器组合框的可见性。这对于在报告(如资产负债表报告)中隐藏分析过滤器很有用,因为它们在这些报告中没有意义。(#42

  • 在导出的pdf和xls的标题中显示分析过滤器。(#44

  • 用fontawesome图标替换最后的旧gtk图标。(#104

  • 在AEP查询中使用active_test=False。这对于涉及停用税的报告很重要。这不应负面影响现有报告,因为会计报告必须考虑到所有现有的移动行,即使它们引用的对象(如税收、日记账、账户类型)自创建以来已被停用。(#107

  • 支持AccountingNone的int()、float()和round()函数。(#108

  • 允许通过在表达式中写入kpi_x.subkpi_y的方式按名称引用子KPI。(#114

  • 添加了一个选项来控制列标题中开始/结束日期的显示。默认情况下是禁用的(这与以前的行为不同)。(#118

  • 向mis.report添加评估方法。这是一个简化方法,用于在时间段内评估报告的KPI,而不创建mis.report.instance。(#123

错误

  • 在样式表单中,当“始终隐藏继承”被选中时,隐藏“始终隐藏”复选框,就像其他所有样式元素一样。(#121

从3.2升级(破坏性更改)

如果您使用实际值(替代)数据源与分析过滤器结合使用,则基础模型现在必须有一个analytic_account_id字段。

11.0.3.2.2 (2018-06-30)

  • [修复] 修复在company_default_get调用中返回id而不是recordset的错误(#103

  • [改进] 添加“始终隐藏”样式属性,以便隐藏不需要显示的KPI(对于作为其他公式基础的KPI,但不需要显示)。(#46

11.0.3.2.1 (2018-05-29)

  • [修复] AccountingNone缺少比较运算符,导致pbal计算错误(#93

10.0.3.2.0 (2018-05-02)

  • [修复] 使子KPI排序确定性(#71

  • [新增] 报告实例级别选项,禁用账户展开,允许创建详细模板,同时将渲染细节或否的决定推迟到报告实例(#74

  • [新增] 添加pbal和nbal会计表达式,分别求和正负余额(即忽略具有负(或正)余额的账户)(#86

11.0.3.1.2 (2018-02-04)

迁移到Odoo 11。没有新功能。(#67

10.0.3.1.1 (2017-11-14)

新功能

  • [新增] 添加月份和年份相对时间段,比日期范围更容易使用,对于最常见的用例。

  • [新增] 多公司合并支持,包括货币转换(汇率日期是报告期的最后一天)(#7#3

  • [新增] 在行项目域的评估上下文中提供ref、datetime、dateutil、time、user;这允许在查询行项目时使用对xml id的引用(例如账户类型或税标签)(#26)。

  • [新增] 扩展账户选择器:您现在可以使用任何域选择账户,而不仅仅是账户代码balp[('account_type', '=', 'asset_receivable')]#4)。

  • [改进] 在报告实例配置表单中,现在将过滤器分组在笔记本页面中,这提高了可读性和可扩展性(#39)。

错误修复

  • [修复] 修复在比较模式下保存新创建(尚未保存)的报告实例中的期间时的错误。 #50

  • [修复] 改进Base Date报告实例视图的显示。 #51

从3.0升级(破坏性更改)

  • 替代行项目数据源必须有一个company_id字段。

10.0.3.0.4 (2017-10-14)

错误修复

  • [修复] 初始余额四舍五入的问题。 #30

10.0.3.0.3 (2017-10-03)

错误修复

  • [修复] 修复在新建报告中保存KPI时的错误。 #18

10.0.3.0.2 (2017-10-01)

新功能

  • 【新增】根据报告列添加替代移动行源。这使得误建账会计表达式可以在任何具有借方、贷方、account_id和日期字段的模型上工作。只要您可以将已承诺采购或预算作为具有借方、贷方和account_id的视图公开,这就可以打开很多可能性。

  • 【新增】比较列源(比之前已弃用的比较机制更灵活)。注意:没有自动迁移到新机制。

  • 【新增】求和列源,用于创建添加/减去其他列的列。

  • 【新增】将mis.kpi.data抽象模型作为手动KPI值的基础,支持自动调整报告时间段(预算项目的依据,但也可用于其他目的,如手动输入某些KPI值,如员工数量)。

  • 【新增】mis_builder_budget模块提供新的预算数据源。

  • 【新增】新的“隐藏空值”样式属性。

  • 【改进】新的AEP方法用于获取表达式涉及的账户(这对于找到与给定损益账户相关的KPI、实现预算控制很有用)。

  • 【改进】许多用户界面改进。

  • 【改进】许多代码风格改进和一些重构。

  • 【改进】在表达式评估上下文中添加列date_from、date_to,以及时间、datetime和dateutil模块。

主要错误修复。

10.0.2.0.3 (未发布)

  • 【改进】在存在缺失表达式的情况下提供更稳健的行为。

  • 【修复】缩进样式。

  • 【修复】在没有对象生成报告时,在赋值之前引用本地变量‘ctx’。

  • 【改进】使用fontawesome图标。

  • 【迁移】迁移到10.0。

  • 【修复】导出到Excel时的Unicode错误。

  • 【改进】为组顾问提供mis builder样式的完全访问权限。

9.0.2.0.2 (2016-09-27)

  • 【改进】在mis报告预览中添加刷新按钮。

  • 【改进】更改小部件代码,以便更容易在小部件中添加字段。

9.0.2.0.1 (2016-05-26)

  • 【改进】在声明和计算周期()中删除未使用的参数,以获得更干净的API。这是一个紧急更改的API合并,在它被其他模块使用之前。

9.0.2.0.0 (2016-05-24)

本版本的工作部分是在2016年4月26日至29日的索伦托冲刺中完成的。其余部分(即主要重构)是在之后的几周内完成的。

  • 【改进】在报告实例设置表单的编辑模式下隐藏按钮框。

  • 【修复】修复非存储字段的求和聚合问题(https://github.com/OCA/account-financial-reporting/issues/178)。

  • 【改进】现在在报告级别有默认样式。

  • 【更改】数字显示属性(舍入、前缀、后缀、因子)现在定义在样式中。

  • 【更改】百分比差异现在舍入到1位,而不是KPI的舍入,因为在这种情况下KPI的舍入没有意义。

  • 【更改】不再自动插入除数后缀(k、M等),因为当与前缀一起工作时,这会导致不一致;您需要手动在后缀中添加它。

  • 【改进】AccountingExpressionProcessor现在支持“balu”表达式来获取前几年的未分配利润/亏损;get_unallocated_pl是相应的便捷方法。

  • [改进] 账户余额处理程序现在可以通过以下方法轻松获取余额:get_balances_initial、get_balances_end、get_balances_variation

  • [改进] 现在有一个自动扩展功能,可以自动显示选定关键绩效指标(kpi)的账户详细情况

  • [改进] 关键绩效指标(kpi)和期间列表现在通过表单而不是直接在树视图中进行操作

  • [改进] 现在可以通过向导创建报告,这类报告被视为临时报告,可通过“最近生成的报告”菜单访问,除非永久保存,否则会自动收集垃圾,可以使用保存按钮完成

  • [改进] 现在有一个初学者模式,可以配置只有单个期间的简单报告

  • [改进] 现在配置固定起始/结束日期的期间更容易

  • [改进] 新的子关键绩效指标(sub-kpi)机制允许创建具有多个值的列或具有不同值的列

  • [改进] 多亏了新的样式模型,Excel导出现在有了样式

  • [改进] 现在正在使用新的样式模型来集中样式配置

  • [修复] 使用=like代替like来搜索账户,因为%是由用户在表达式中添加的

  • [修复] 正确计算基于财年起始的收益和费用账户的初始余额

  • [改进] 支持日期范围(从OCA/server-tools/date_range),作为比财期间更灵活的替代方案

  • v9迁移:移除了财期间,移除了账户图表,合并账户已被移除

8.0.1.0.0 (2016-04-27)

8.0.0.2.0

预历史。或者,您需要查看git日志。

错误跟踪器

错误在GitHub问题上跟踪。如果在出现问题时,请检查您的问题是否已被报告。如果您是第一个发现它的,请通过提供详细的和受欢迎的反馈来帮助我们解决问题。

不要直接联系贡献者以获取支持或帮助解决技术问题。

鸣谢

作者

  • ACSONE SA/NV

贡献者

维护者

本模块由OCA维护。

Odoo Community Association

OCA,或Odoo社区协会,是一个非营利组织,其使命是支持Odoo功能的协作开发并推广其广泛使用。

当前 维护者

sbidoul

本模块是GitHub上OCA/mis-builder项目的一部分。

欢迎您贡献。了解如何贡献,请访问https://odoo-community.org/page/Contribute

项目详情


发布历史 发布通知 | RSS源

下载文件

下载适用于您平台文件的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源代码分布

此版本没有可用的源代码分布文件。请参阅生成分布存档的教程。

构建分布

odoo_addon_mis_builder-17.0.1.0.1-py3-none-any.whl (596.8 kB 查看散列值)

上传时间 Python 3

由以下支持