配置商业日历

业务日历 为您的组织定义工作日和非工作日(例如,法定假日、周末和公司关门日)。 使用业务日历时,在执行某些日期计算时,AEM表单会跳过非业务日。 在Workbench中,您可以指定是将业务日历用于与用户相关的事件(如任务提醒、截止日期和升级),还是用于与用户无关的操作(如计时器事件和等待服务)。

例如,任务提醒配置为在任务分配给用户后的三个工作日发生。 任务在星期四分配。 不过,接下来的三天不是工作日,因为星期五是国定假日,接下来的两天是周末。 因此,提醒将于下周的星期三发送。

注意

使用业务日历计算日期和时间时,AEM Forms使用运行它的服务器的日期和时间,并且不会调整时区之间的差异。 例如,如果任务提醒安排在伦敦运行的服务器上在上午10:00发生,但接收提醒的用户位于纽约市,则用户将在本地时间上午5:00收到提醒。

使用默认业务日历

AEM forms提供了一个默认的业务日历(已命名) 内置日历)指定星期六和星期日为非工作日。 如果组织中的所有用户具有相同的非工作日,则可以更新默认的业务日历以适合您的组织。 仅使用默认的业务日历时,您不需要在用户管理中启用业务日历或提供任何映射。 如果未定义其他业务日历,则AEM Forms将使用默认的业务日历。

设置多个业务日历

如果您组织中的某些用户具有不同的非工作日,则可以定义多个业务日历并配置映射,以便允许用户在运行时解析业务日历。

定义多个业务日历

  1. 确定如何将相应的业务日历与用户关联。 有两种方法可以将业务日历与用户关联:

    组成员资格: 您可以根据用户的组成员资格为用户分配业务日历。 在这种情况下,组中的每个用户将使用相同的业务日历。

    如果用户是两个不同组的成员,并且这些组映射到两个不同的业务日历,AEM Forms将使用它在搜索结果中找到的第一个日历。 在这种情况下,请考虑使用业务日历键将用户与业务日历相关联。

    业务日历键: 您可以根据业务日历键(用户管理中指定的设置)将业务日历分配给用户。 然后,将业务日历键映射到表单工作流中的业务日历。

    为用户分配业务日历密钥的方式取决于您使用的是企业域、本地域还是混合域。 有关设置域的详细信息,请参阅 添加域.

    如果您使用的是本地域或混合域,则有关用户的信息仅存储在“用户管理”数据库中。 要为这些用户设置业务日历键,请在“用户管理”中添加或编辑用户时,在“业务日历键”字段中输入字符串。 (请参阅 添加和配置用户.) 然后,将业务日历键(字符串)映射到表单工作流中的业务日历。 (请参阅 将用户和组映射到业务日历.)

    如果您使用的是企业域,则有关用户的信息驻留在第三方存储系统中,例如LDAP目录,用户管理将该目录与用户管理数据库同步。 这允许您将业务日历键映射到LDAP目录中的字段。 例如,如果目录中的每个用户记录都包含“国家/地区”字段,并且您想要根据用户所在的国家/地区来分配业务日历,则在指定目录的用户设置时,请在“业务日历键”字段中指定“国家/地区”字段名称。 (请参阅 配置目录.) 然后,您可以将业务日历键(为LDAP目录中的“国家/地区”字段定义的值)映射到表单工作流中的业务日历。 (请参阅 将用户和组映射到业务日历.)

  2. 在表单工作流中,为共享同一非工作日的一组用户定义一个日历。 (请参阅 创建或更新业务日历.)

  3. 在Forms Workflow中,映射每个日历的业务日历键或组成员资格。 (请参阅 将用户和组映射到业务日历.)

  4. 在Workbench中,流程开发人员选择是否将业务日历用于提醒、截止日期和升级。 (请参阅 Workbench帮助.)

    如果流程开发人员选择使用业务日历,AEM Forms将根据“用户管理”设置和Administration Console中定义的业务日历映射动态选择相应的业务日历,如果不存在映射,则使用默认日历。

    如果Process Developer不使用业务日历,则事件的日期计算会将每天视为一个业务日。 例如,任务截止日期配置为在任务分配给用户后三天到期。 任务在星期四分配。 任务截止日期为星期日,即使它是一个周末。

创建或更新业务日历

如果贵组织包含具有不同非工作日的不同用户集,则可以定义多个业务日历。 您还可以更改现有日历,包括AEM表单提供的默认内置日历。

注意

如果不创建新的业务日历,则将使用默认日历。

  1. 在管理控制台中,单击服务> Forms工作流>业务日历。

  2. 要添加新业务日历,请单击 bus_cal_plus. 文本 新建日历 显示在下拉列表中。 选择文本并为日历键入其他名称。

    要编辑现有业务日历,请从下拉列表中选择它。

  3. 在默认非工作日下,选择任何每周非工作日,如周末。

  4. [可选] 选择使用营业时间,并指定营业日的开始和结束时间。

    如果选择此选项,则发生在指定时间范围之前的事件将被移动到该时间范围的起始点,而发生在时间范围之后的事件将被移动到下一个工作日的起始点。

    例如,假定用户在星期二凌晨2:00分配了任务,并且该任务的提醒被设置为两个工作日。 没有营业时间,提醒将在星期四凌晨2点进行。 如果工作时间设置为上午8:00到下午5:00,则提醒将被推送到星期四上午8:00。 如果没有工作时间,如果提醒事件是在星期二下午6:00创建的,则提醒将在星期四工作时间后进行。 工作时间设置为上午8:00到下午5:00,则提醒将在星期五上午8:00进行。

  5. 在左侧的日历中,双击任何其他非工作日,例如假日。 您不能选择过去的天数。 您选择的非工作日会显示在右侧的列表中,其中日期在一行中显示两次。 选择左侧的日期以键入非工作日的名称或描述。

    要从列表中删除非工作日,请单击 bus_cal_trash 除了白天。

  6. [可选] 如果此日历是默认日历,请选择默认日历。 如果用户相关事件不存在其他日历映射,或者没有为“计时器事件”或“等待服务”指定业务日历,则使用默认日历。 您无法删除默认日历。

  7. 定义完非工作日后,选择“启用日历”以将其激活,然后单击“保存”。

    如果您正在更新现有日历,新版本将立即生效,并用于所有业务日历计算,包括已运行的任务。

    注意

    如果不启用日历,将使用默认日历。

将用户和组映射到业务日历

可以使用两种方法将业务日历与用户关联。 您可以根据业务日历键或用户所属的目录组将业务日历分配给用户。 您可以使用“映射”选项卡来指定AEM表单将使用的方法,还可以将业务日历键和组映射到业务日历。 有关将业务日历键与用户关联的详细信息,请参阅 设置多个业务日历.

根据业务日历键将业务日历与用户关联

  1. 在管理控制台中,单击服务>表单工作流>业务日历,然后单击映射选项卡。

  2. 在“系统将使用”列表中,选择“用户管理器”“业务日历密钥解析”。

  3. 选择显示用户管理器业务日历键。 此时将显示一个列表,其中包含一组已在“用户管理”中定义的唯一业务日历键。

    对于本地域和混合域,列表会显示在“用户管理”的“业务日历键”字段中输入的值。 对于企业(LDAP)域,此列表显示从LDAP域设置中配置的LDAP字段返回的唯一集(例如,“国家/地区”)。

    如果用户管理管理员未定义任何业务日历键,则列表将为空。

  4. 对于UM业务日历键列表中的每个项目,选择一个日历。

  5. 单击“保存”。

根据目录服务组将业务日历与用户和组相关联

  1. 在管理控制台中,单击服务>表单工作流>业务日历,然后单击映射选项卡。

  2. 在系统将使用列表中,选择由目录服务器定义的组。

  3. 在“映射”选项卡上,选择“显示目录服务组”。 此时将显示一个列表,其中包含已在“用户管理”中定义的组。 (请参阅 目录设置.)

    注意

    在Workbench中,如果您已将用户服务配置为使用业务日历,并且已将该服务分配给组,则AEM Forms将使用此处指定的组映射来解析组的日历。 AEM forms始终使用组映射来解析组的日历,即使您使用业务日历键为用户解析日历也是如此。 如果找不到组映射,将使用默认的业务日历。

  4. 对于“目录服务组”列表中的每个项目,选择日历。

  5. 单击“保存”。

导出和导入业务日历

通过AEM表单,您可以将业务日历导出和导入为XML文件。 您可以使用此功能将日历从暂存系统移动到生产系统。

注意

此功能可导出和导入所有已定义的业务日历,包括AEM表单提供的默认业务日历。 与现有日历同名的导入业务日历将覆盖现有日历。

导出业务日历

  1. 在管理控制台中,单击服务>表单工作流>业务日历。
  2. 单击导出并保存XML文件。

导入业务日历

  1. 在管理控制台中,单击服务>表单工作流>业务日历。
  2. 单击“导入”。
  3. 选择包含导出的业务日历的XML文件,然后单击打开。

删除业务日历

您可以删除您的组织不再需要的任何业务日历。 如果删除仍映射到用户和组的业务日历,将使用默认日历。

  1. 在管理控制台中,单击服务> Forms工作流>业务日历。
  2. 选择日历。
  3. 单击删除。

在此页面上