如果只有一个设计元素继承自主模板,是否需要在数据库所在的每台服务器上都有一个版本?

Does a version of a master template need to be on every server that a database resides on if only a design element is inheriting from it?

场景:我们有四个数据库被设置为从一个主模板继承,它们依次具有通过在图像中显示的字段中添加的模板名称从不同的主模板继承的各个设计元素。

我一直认为,为了让数据库中的各个设计元素继承任何更改,主模板的一个版本也必须位于数据库所在的所有服务器上,以便夜间服务器进程将进行更新设计元素。

这是真的吗?使用 Teamstudio CIAO Builds/Promotions 创建构建时,这会发生变化吗?

如果您希望对任何设计元素的更改在一夜之间自动从模板中提取 - 无论它们是像您的屏幕截图中那样单独继承,还是从数据库属性中指定的模板继承 - 那么必须满足以下条件之一是真的:

  • 如果数据库被复制到多台服务器,那么模板必须至少在其中一台服务器上;或者
  • 如果数据库仅在一台服务器上,则模板必须在该服务器上。

因此,如果您有几个数据库,每个数据库都在一台服务器上并且没有复制,并且它们继承自相同的模板,那么您需要在每台服务器上都使用这些模板,以便在每个数据库中获得自动隔夜继承。

但是,无需依赖自动继承,因为对受影响的数据库具有 Designer 访问权限的用户可以使用 Notes 或 Designer 客户端从模板中手动刷新设计。如果这样做,您可以只将模板保留在一台服务器上,而不管有多少服务器拥有使用这些模板的数据库。

在任何情况下,关于模板设计的注意事项,无论数据库是自动刷新还是手动刷新:最佳做法(据我所知)是让生产模板设计由为签署设计的明确目的而创建的单个用户 ID 签名,使用 Domino 策略确保所有用户执行控制列表 (ECL) 信任该签名者,以防止用户在使用生产应用程序时收到 ECL 警报。

我对 Teamstudio CIAO 的体验并不丰富,但我认为它不会改变上述任何内容。

再见! / Build Manager 使用 IBM Domino API 执行设计刷新,因此它不需要等待夜间设计任务到 运行。

再见! / 构建管理器调用设计刷新 API 并传递目标数据库信息,然后传递模板所在的 IBM 服务器的名称。因此,对于目标数据库的完整设计刷新,模板不需要驻留在同一台服务器上。

如果您为 Notes 应用程序中的各个设计元素指定了设计模板,那么在这种情况下,主模板需要驻留在 Notes 应用程序也驻留的 IBM Domino 服务器上。 CIAO! / Build Manager 应用程序不包括更新这些单独的设计元素的功能。