这是我的第一次堆栈溢出,而且很复杂。对不起。
我的任务是从基本模板和一些 XML 生成自定义文档,而无需为每种情况使用自定义表单设计元素。
这是整个图片:
- 我们正在为全球应用程序访问控制构建一个 Lotus Notes(客户端,而不是 Web)应用程序;范围类似于 400.000 个用户能够请求访问 1000 多个应用程序中的任何一个。每个应用程序都需要自己的请求表——不同数量的批准者,所需的各种信息,诸如此类。
- 我们根本不可能在数据库中拥有一千个表单(每个应用程序一个),无论如何,它们的维护确实需要从开发人员推到应用程序所有者。
- 因此,我们希望创建一个通用的“模板”表单,而不是自定义表单,它存储一个基本字段块,然后允许应用程序所有者动态定义另一个字段块——“我想要一个名为'Name' 在这里,然后是一个名为 'Due' 的日期字段,它必须晚于今天的日期,然后......”。我希望这是有道理的(如果没有,请将其视为通用问卷应用程序)。
- 我几乎拥有设计动态字段的结构(表单构建器 GUI -> XML 编码数据 -> 用于注入表单的预渲染 DXL),包括字段类型、值选项和基本字段的标记验证说明。
我的问题是生成一个在适当位置注入此动态内容的文档(不需要为每个案例定制表单设计元素)。
- 通过 HTML 处理动态内容已经过时了。Notes 客户端 Web 渲染实在是太差了,实现字段验证指令、日期选择器和名称查找等内容将是一个相当大的挑战。
- 另一方面,DXL 将允许我们使用本机 Notes 字段和代码。
- 作为一个技术演示,我设法实现了一个自定义表单生成器,它将动态内容的预渲染 DXL 注入到基本表单中;但正如我所说,我们不想要大量的自定义表单设计元素。
- 我试图实现一种方法来创建一个设置了“在文档中存储表单”标志的文档,但是一旦我从基本表单创建了文档,我就无法获得对存储表单设计的 DXL 访问权限,并且所以我不能注入我的动态内容。
我知道这不是 Notes 本来打算做的事情。有没有人尝试过类似的事情(并且侥幸逃脱)?
感谢您阅读本文。
提前致以诚挚的谢意,
扬·冈托夫特-布鲁恩