理想情况下,最终用户可以自行配置模板.
但实际应用中最终用户通常可能画出符合要求的模板样式,而对于数据的引用只能添加一些简单的数据占位符。
对于稍微复杂的数据就需要开发人员参与。如简单的遍历,分组,合计等。
开发人员配置模板一般有两种方式
1.简单情况通过第三方工具操作word元素,这种方式会受限于第三方工具对word的支持粒度,由于 ECMA-376 标准非常复杂,第三方工具很难覆盖全部细节。
大部分第三方工具对于样式的操作都非常繁琐,一旦涉及一点样式就要创建各种对象。
2.复杂情况直接操作XML元素,这样就可以作到完全根据 ECMA-376 标准,
而且这种方式需要修改XML源码,可读性非常差,维护难度非常高,只有在极端情况下可以接受。
同样由于标准过于复杂,所以掌握标准需要很高的时间成本。对于不是专业操作word的团队来说并不现实。
对于大量模板的项目如LIMS等,动用开发人员配置大量模板,一方面沟通成本加开发成本及开发周期响应速度双方都难以接受,另一方面由于通过大量代码操作平时不熟悉的WORD元素也必然导致维护成本失控。
经过大量实践证明由现场运维或实施人员与最终用户边沟通需求边配置模板是一种最快速和简单的实现方式。
anyline office在保留以上两种方式的基础上增加了两种方式用来简化操作并降低操作难度。
1.HTML/CSS转换WORD元素,无论前端还是后端程序员掌握HTML/CSS都很简单,
2.AOT标签,类似于JSTL的一种标签库,可以简单快速的实现复杂的样式+数据控制。
而且AOT标签并不基于XML源码,而是直接写在WORD文档中,包含THML/CSS,这样就极大的降低了维护难度。
AOT/HTML/CSS并不面向最终用户,对用户来说还是有比较高的难度,但对于运维和实施人员来说经过简单的培训,并不需要编程基础就可以掌握。
而且只要是能用到AOT的模板,一般都需要配置多表关联的数据源,本来也不是最终用户能操作的,通常都是由乙方人员实际操作。