问题描述
我正在制作一个演示IoT设备监控仪表板。我无法理解应该使用哪个功能来检查设备在特定日期是否在线。
这是我的示例报告表1,我将“日期”从其中分离到另一列。
设备可以在一天内在服务器上多次报告。如果没有找到服务器,则不会生成报告。
然后,我创建了一个查找表2,其中包含所有设备ID。
现在,我创建了另一个table3并生成一个日历日期,该日期与table1日期相关联。
现在,在该列中,我输入了设备ID,并且如果设备在特定日期报告,则希望将该列填充为true或false。我做不到。
我使用了IF(ISBLANK(COUNTROWS(相关表,此功能无效
我想创建类似这样的东西。它将查找ID和日期以进行报告。
解决方法
下面的屏幕截图为您提供了所需的一切。
有一个设备的“设备连接”表以及何时连接。我已经将DateTime转换为日期,以便可以将它加入到Dates表中,而只是要检查其连接的日期列表。我有一个连接两个表的日期的关系。
注意:如果出现以下情况,您还可以保留查看设备的时间 需要。最好将它作为一个单独的列。我有 为了简单起见,舍弃了时间。
我创建了一个度量:
HasBeenSeen = IF (CALCULATE(COUNTROWS(DeviceConnections)) > 0,TRUE,FALSE)
如果在任何存在的上下文中(例如给定日期)都没有看到设备,则给出TRUE / FALSE。您也可以只计算出现的次数并显示它们。
然后,我创建了一个矩阵可视化图形,其中行的日期表中的日期为Date,列的设备ID为HasBeenSeen,作为提供所需结果的值。
,正如我在对您的问题的评论中所说,如果您在显示FALSE的单元格中接受BLANK,则可以执行此简单步骤。仅 Table1 就足够了,并且不需要其他表或联接。
创建一个非常简单的度量,如下所示。
true_false = "True"
现在添加一个指标并将其配置如下-
这是最终的输出-