Show Menu
主题×

配置业务日历

业务日历 (Business Calendar)可为您的组织定义业务日和非业务日(例如法定假日、周末和公司关机日)。 使用业务日历时,AEM表单在执行特定日期计算时会跳过非工作日。 在Workbench中,您可以指定是将业务日历用于与用户关联的事件(如任务提醒、期限和升级),还是用于与用户无关的操作(如定时器事件和等待服务)。
例如,任务提醒被配置为在任务分配给用户后的三个工作日内完成。 星期四会指定任务。 但是,接下来的三天不是工作日,因为星期五是全国假日,接下来的两天是周末。 因此,提醒函将于下周三发出。
在使用业务日历计算日期和时间时,AEM表单会使用运行它的服务器的日期和时间,而不会根据时区之间的差异进行调整。 例如,如果任务提醒计划在伦敦运行的服务器上的上午10:00发生,但接收提醒的用户位于纽约市,则用户将在当地时间上午5:00收到提醒。

使用默认业务日历

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

设置多个业务日历

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

定义多个业务日历

  1. 确定如何将相应的业务日历与用户关联。 有两种方法可将业务日历与用户关联:
    ​用户组成员关系:您可以根据用户的用户组成员关系将业务日历分配给用户。 在这种情况下,组中的每个用户将使用相同的业务日历。
    如果用户是两个不同组的成员,并且这些组映射到两个不同的业务日历,则AEM表单将使用其在搜索结果中找到的第一个日历。 在这种情况下,请考虑使用业务日历密钥将用户与业务日历关联。
    ​业务日历密钥:您可以根据业务日历密钥(在用户管理中指定的设置)将业务日历分配给用户。 然后,在表单工作流中将业务日历密钥映射到业务日历。
    您为用户分配业务日历密钥的方式取决于您使用的是企业域、本地域还是混合域。 有关设置域的详细信息,请参阅 添加域
    如果您使用的是本地域或混合域,则有关用户的信息仅存储在用户管理数据库中。 要为这些用户设置业务日历键,请在“用户管理”中添加或编辑用户时,在“业务日历键”字段中输入字符串。 (请参阅 添加和配置用户 。)然后,在表单工作流中将业务日历键(字符串)映射到业务日历。 (请参 阅将用户和用户组映射到业务日历 。)
    如果您使用的是企业域,则有关用户的信息驻留在第三方存储系统(如LDAP目录)中,用户管理将与用户管理数据库同步。 这允许您将业务日历密钥映射到LDAP目录中的字段。 例如,如果目录中的每个用户记录都包含“国家/地区”字段,并且您希望根据用户所在的国家/地区分配业务日历,请在指定目录的用户设置时在“业务日历键值”字段中指定“国家/地区”字段名称。 (请参阅 配置目录 。)然后,您可以在表单工作流中将业务日历键(为LDAP目录中的“国家/地区”字段定义的值)映射到业务日历。 (请参 阅将用户和用户组映射到业务日历 。)
  2. 在表单工作流中,为共享相同非工作日的每组用户定义日历。 (请参 阅创建或更新业务日历 。)
  3. 在表单工作流中,映射每个日历的业务日历密钥或用户组成员关系。 (请参 阅将用户和用户组映射到业务日历 。)
  4. 在Workbench中,流程开发人员选择是否将业务日历用于提醒、截止日期和升级。 (请参阅 工作台帮助 。)
    如果流程开发人员选择使用业务日历,AEM表单将根据用户管理设置和管理控制台中定义的业务日历映射动态选择相应的业务日历,或者,如果不存在映射,则使用默认日历。
    如果流程开发人员不使用业务日历,则活动的日期计算会将每天视为一个工作日。 例如,将任务截止日期配置为在任务分配给用户三天后完成。 星期四会指定任务。 任务期限是周日,尽管是周末。

创建或更新业务日历

如果您的组织包含具有不同非工作日的不同用户集,则可以定义多个业务日历。 您还可以更改现有日历,包括随AEM表单提供的默认内置日历。
如果您不创建新的业务日历,则将使用默认日历。
  1. 在管理控制台中,单击服务>表单工作流>业务日历。
  2. 要添加新的业务日历,请单 。 下拉列 表中将显示 “新建日历”文本。 选择文本,然后为日历键入另一个名称。
    要编辑现有业务日历,请从下拉列表中选择该日历。
  3. 在“默认非工作日”下,选择任何每周非工作日,如周末。
  4. # “选择使用工作时间”,并指定工作日的开始时间和结束时间。
    如果您选择此选项,则在指定时间范围之前发生的事件将移至时间范围的开始处,而在时间范围之后发生的事件将移至下一个工作日的开始时间。
    例如,考虑一种情况,即在星期二的凌晨2:00为用户分配了一个任务,该任务的提醒设置为两个工作日。 如果没有工作时间,提醒会在周四凌晨2点发生。 如果工作时间设定在上午8:00至下午5:00,则提醒将推至周四上午8:00。 如果没有工作时间,如果周二下午6:00创建了提醒活动,则提醒将在周四的工作时间之后发生。 由于工作时间设定在上午8:00至下午5:00,提醒将在周五上午8:00发出。
  5. 在左侧的日历中,双击任何其他非工作日(如节假日)。 您无法选择过去的天数。 您选择的非工作日显示在右侧的列表中,日期在一行中显示两次。 选择左侧的日期,以键入非工作日的名称或说明。
    要从列表中删除非工作日,请单
  6. # 。如果此日历将作为默认日历,请选择默认日历。 当用户关联的事件不存在其他日历映射,或者定时器事件或等待服务未指定业务日历时,将使用默认日历。 无法删除默认日历。
  7. 定义完非工作日后,选择“启用日历”使其处于活动状态,然后单击“保存”。
    如果要更新现有日历,则新版本将立即生效并用于所有业务日历计算,包括已运行的任务。
    如果未启用日历,则将使用默认日历。

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

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

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

  1. 在管理控制台中,单击“服务”>“表单工作流”>“业务日历”,然后单击“映射”选项卡。
  2. 在“系统将使用”列表中,选择“用户管理者业务日历关键字解析”。
  3. 选择显示用户经理业务日历密钥。 此时将显示一个列表,其中包含在用户管理中定义的唯一业务日历键集。
    对于本地和混合域,列表显示在“用户管理”中“业务日历键值”字段中输入的值。 对于企业(LDAP)域,该列表显示从LDAP域设置中配置的LDAP字段(例如,“国家/地区”)返回的唯一集。
    如果用户管理管理员未定义任何业务日历密钥,则列表将为空。
  4. 对于UM业务日历关键字列表中的每个项目,选择一个日历。
  5. 单击保存。

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

  1. 在管理控制台中,单击“服务”>“表单工作流”>“业务日历”,然后单击“映射”选项卡。
  2. 在“系统将使用”列表中,选择目录服务器定义的组。
  3. 在“映射”选项卡上,选择“显示目录服务组”。 此时将显示一个列表,其中包含已在用户管理中定义的组。 (请参阅 目录设置 。)
    在Workbench中,如果您已将用户服务配置为使用业务日历,且该服务已分配给组,则AEM表单将使用此处指定的组映射解析组的日历。 AEM表单始终使用组映射来解析组的日历,即使您使用业务日历键来解析用户的日历也是如此。 如果未找到组映射,则将使用默认业务日历。
  4. 对于“目录服务组”列表中的每个项目,选择一个日历。
  5. 单击保存。

导出和导入业务日历

AEM表单使您能够将业务日历作为XML文件导出和导入。 您可以使用此功能将日历从分阶段系统移动到生产系统。
此功能可导出和导入所有定义的业务日历,包括AEM表单提供的默认业务日历。 与现有日历同名的导入业务日历将覆盖现有日历。

导出业务日历

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

导入业务日历

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

删除业务日历

您可以删除您的组织不再需要的任何业务日历。 如果删除的业务日历仍映射到用户和用户组,则将使用默认日历。
  1. 在管理控制台中,单击服务>表单工作流>业务日历。
  2. 选择日历。
  3. 单击删除。