在触发器中处理时间
  • 31 Oct 2023
  • 1 分钟阅读
  • 贡献者

在触发器中处理时间


Article Summary

概述

操作的许多方面都依赖于检查两个事件之间的时间间隔。下面介绍如何查找时间。

检查两个时间戳之间经过的时间通常是任何流程的关键环节。

两个时间戳可以确定

  • 指定的生产时间
  • 批次运行后经过的时间
  • 反应器清洗后的时间。

为两个日期时间之间的时间添加逻辑,对于数据收集和应用程序操作来说都非常强大。

以下是该功能的几个用例

  • 检查两次检查之间的时间
  • 了解给定产品的运行时间
  • 确保维护计划。
  • 查找应用程序中两点之间的时间

本指南将向您展示如何结合使用触发器、表格和表达式编辑器,在应用程序中构建上述几个应用场景。

涉及的三个示例如下

  1. 计算应用程序两个不同部分的步骤之间的时间
  2. 检查过去一周内是否对机器进行了检查
  3. 在应用程序中最初扫描工单时为其设置目标日期

需要了解的有用时间间隔:

1 分钟:60 秒

1 小时3600 秒

1 天86,400 秒

1 周604 800 秒

1 个月(30 天)2,592,000 秒

1 年31 557 600 秒

例 1:查找应用程序两个部分之间的时间(生产时间)

在本例中,我们将演示如何计算应用程序单次使用中两个时间戳之间的差值。

水平:中级

对于本示例,您应该了解

在此流程所需的 "起始 "点上,在触发器编辑器中添加一个 "然后 "语句,以捕获当前日期和时间。

数据操作 - 商店 - 应用程序信息 - 当前日期和时间- 位置: 。

在应用程序内该时间测量所需的 "结束 "点上,添加另一个触发器来捕捉当前日期和时间**。**

除了捕捉时间外,现在还可以添加一个触发器来查找两个时间戳之间的差值,并将其存储到变量中。

在本例中,两个时间都是按下按钮时的时间,但也可以捕捉步骤关闭或打开时的时间,或设备启动时的时间。

时间差以两个时间戳之间的总秒数存储在 "时间间隔 "变量中。

示例 2:检查两次检查之间的时间间隔

级别: 高级高级

对于本例,您应该了解

在下面的示例中,应用程序的目标是检查 "机器检查 "表,并确定上次检查的时间。此外,如果检查频率高于规定频率,应用程序将引导用户完成检查。

连接表格:

此应用程序的第一步需要将表记录加载到应用程序中。因此,表格必须已经存在。表格可能如下所示

  • ID (文本)
  • 上次检查(时间戳)
  • 检查频率(间隔)

上面的表格包含了机器的最后一次检查时间以及每台机器所需的检查频率。

现在,必须在应用程序中为该表添加一个记录占位符,以便检查。具体做法是在应用程序中添加该表的记录占位符。可以这样命名

创建变量:

现在您已经将适当的表链接到了应用程序,您需要创建一个变量来存储两个时间戳的差值。创建一个 "时间间隔 "数据类型就可以实现这一操作。为此,您可以导航到应用程序编辑器的上下文窗格,然后选择应用程序。

在上下文窗格中,选择西格玛符号创建一个新变量。

在变量窗格中,创建一个任意名称的新变量,并从下拉菜单中选择 "区间 "类型。注意,该变量将保存两个时间戳相减的结果。

确保选择 "添加",并确保在关闭前将变量添加到列表中。

上面的变量名为 "ResultantTime"(结果时间),它将标记两个时间之间的差值。在本例中,这将记下上次检查与应用程序当前时间之间的时间差。

加载表记录

为了检查相应的表记录,必须使用正确的表 ID 加载表。在本例中,我们将根据下拉部件的值加载记录。

请注意,文本必须与表 ID 完全匹配,才能正确加载表记录。

上述表单步骤允许用户选择要检查的机器。确保在该字段中添加一个变量(本例中为 MachineType)以在结果中添加逻辑是非常重要的。

检查逻辑

现在是检查时间!

提交此表单时,应检查应用程序当前时间与表中上一个时间戳之间的时间。

为此,您需要在提交按钮上添加一些 "自定义操作 "触发器。

首先,按钮需要加载正确的表记录:

**表记录 - 加载记录 -**通过 ID:**Variable - MachineType -**into:检查

该表是根据表单步骤中选择的机器动态加载的,而不是创建多个操作来加载某些表。

下一步,提交按钮将在加载的表记录中找到从现在到时间戳之间的时间。在同一个触发器中,可以添加如下内容:

该语句将从表的上一个时间戳中减去当前时间。然后将时间差作为区间数据类型保存到开头创建的变量中。

在新的触发器中,两个时间戳之间的差值将决定应用程序的操作。

例如,如果现在和上次检查之间的时间大于必要的频率,操作员就必须检查机器。如果没有,则机器正常,无需采取任何措施。这可能看起来像这样

如果

变量 - 结果时间 - > - 表记录 - 检查 - 检查频率

然后

转到步骤 - 检验

在这里,检查确保如果时间过长,则必须再次进行检查。

如果不是,则应用程序可以完成,因为该应用程序用于检查和执行检查。

在同一个触发器中的 Else 语句可能如下所示:

ELSE IF

应用程序 - 取消应用程序

**显示消息 - 静态值 - 文本 -**您的消息

更新表格

检查完成后,应更新表记录,以反映检查已执行。为此,最好在检查步骤结束时添加触发器。这样,只有在检查完全完成后才会更新记录。

添加一个触发器来保存新的时间,就像这样:

数据操作 - 存储 - 应用程序信息 - 当前日期和时间 - 表记录 - 检查 - 最后检查

示例 3- 为工单设置目标完成日期

假设一个工单必须经过 10 个独立的操作才能完成。

当工单从 10 项操作中的第一项开始时,就需要创建一个 "到期日",以符合客户的期望。比方说,到期日是第一项操作开始后的一周。

要在 Tulip 中实现这一目标,您需要在当前时间上添加一个时间间隔,以确定未来一周的时间。

然后,将 "到期日 "保存在 "工单 "表中。具体方法如下。

首先,您需要创建一个变量,在区间内存储未来一周的值。

进入上下文窗格中的变量对话框,创建一个名为 "next_7_days "的新变量,类型为区间。

然后,将其默认值设置为 604800 秒,就像这样。这就是一周的秒数:

接下来,您将为当前工单创建一个记录占位符,并将该工单加载到应用程序中。

加载记录后,可以使用表达式设置 "到期日 "字段:

  • "数据操作""存储 "数据:"表达式""应用程序信息-当前日期和时间 + Variable.next_7_days "位置:"表记录""当前工单""到期日期

在上面的触发器语句中,我们将当前日期和时间加上 7 天来创建到期日。


找到您想要的了吗?

您还可以前往community.tulip.co发布您的问题,或查看其他人是否遇到过类似问题!


本文对您有帮助吗?