analytics - 为表创建浮动最大值
问题描述
可悲的是,我没有想法。我目前正在学习 COGNOS 分析,我可以使用您的帮助。我有一个看起来像这样的交叉表,来自使用相同源结构的不同系统。我使用公司帐户并且是用户,所以我不能编写 SQL 或任何脚本!
MIS0 MIS1 MIS3 MIS6
2016 0,0 0,1 0,3 0,6
2017 0,0 0,1 0,4 0,7
2018 0,0 0,2 0,4 0,7
我在 COGNOS 中复制了这一点,但无法正确处理一件事(这比这要困难得多,但我认为这是核心)
解释:
- MIS = 服务月数
- 年 = 产品制造年份
- 值=(故障/制造(当年)和销售的产品)* 1000
故障具有属性 MIS = 它发生在哪个 MIS 中,产品也具有类似于 dateOfManufacture 的属性
好的,所以问题...拥有例如 MIS6 意味着:自购买后 6 个月内发生的故障。复杂的开始,MIS3故障在逻辑上也属于MIS6故障。
所以我需要创建数据元素或过滤器或其他一些技巧,使我能够:从 0 到 X 选择与 MIS 相关的故障,其中 X 将是列标题中的数字 (0,1,3,6.. .) 当然基于制造年份.. 我受到我的用户权利的限制,所以如果你有一个包含编写脚本的建议,谢谢,你滚!:) 但我将无法通过脚本来做到这一点。请原谅缺乏细节,但命名变量或任何代码是我受约束的机密性的一部分。:(
谢谢你的时间,周末愉快!
Fault
MIS: 2
ProductID: <121212>
Product
ProductID: <121212>
Date of assembly: 25.02.2020
(MIS: gets copied to product fault when fault occours)
表应该查看在服务的特定月份内发生的故障 - 这意味着如果故障如上例所述在服务 2 个月内,则应将其计算到 MIS3 和 MIS6 列中,而不是计算到 MIS1 和 MIS0 统计信息中,因为故障不是在 1 个月内发生,而是在 2 个月内发生。
基本上,例如第一行第二列说:找到我在 2016 年生产的产品 - 计算他们在服务的第一个月有多少故障。这个数字除以您找到的产品数量(第一句),所有这些乘以 1000(故障/1000) 现在您可能会看到当您移动到同一行的下一列时会出现问题。-> 查找 2016 年生产的产品。计算它们在 3 个月的服务中出现了多少故障(= 包括 1、2、3),然后除以生产的产品数量 - 乘以 1000。
当我设置交叉表时,我需要使用具有浮动最大值的 inteval (MIS0 - MIS1,3,6),但我没有大脑去做..
解决方案
首先尝试使用列表。如果可行,我们可以将列表转换为交叉表
让我们首先将上下文中的指标与时间隔离开来
这将是您的第一列
一个月。创建一个数据项 [Month 1 Faults],如下所示:
if ([Year] = 2016 and [Month] = 1)Then([Faults])Else(0)
下一列是第 1 个月和第 2 个月。我们添加函数 IN(1,2) 来完成此操作
创建一个数据项 [Month 1 & 2 Faults],如下所示:
if ([Year] = 2016 and [Month] IN(1,2))Then([Faults])Else(0)
对所有其他数据项重复此逻辑
推荐阅读
- javascript - Sequelize 播种器找不到模型的正确列名
- android - 图像路径无法存储到 Object 类中
- typescript - NestJs - 不返回服务中添加的属性
- python - 在不倒置图像的情况下反转图像的 y 轴
- node.js - 如何从 React 应用程序代理到我的 Express/MongoDB api?
- express - 使用 Express 处理 Cloud Function 中的斜杠
- sql - SQLite 数据库在我的 Discord.js 机器人的主键下没有保存多个值
- linux - 在 shell 脚本中找不到 Flutter 命令
- cqrs - CQRS:返回创建的 ID
- django - Django Heroku 部署 - ![remote denied] master -> master (pre-receive hook denied)