0

我开发了一个文档管理系统 (DMS) 作为 Delphi 客户端服务器应用程序,它使用 FILESTREAM 功能将文件作为 BLOB 字段存储在 SQL Server Db 中。

随着更多软件的销售,我收到了将其连接到其他文档管理系统的请求,在最广泛的意义上“其他 DMS 意味着”:

1 “结构化文件夹”)硬盘驱动器中的某些文件夹只能由有限数量的用户访问(想象一个共享网络文件夹只能由 3 个用户访问)——这可能是“存储文档的真实方式”或仅仅是从另一个系统每日导出(文件通过批处理程序每​​天从另一个 DMS 中提取)。

在这种情况下,文件夹命名有一些规则,对于 ecample,如果文档与客户或员工相关联,则结构将类似于:

\\Docs\Employees\COdE01\cv.pdf
\\Docs\Customers\CodC02\Invoice.xls

(在这个例子中,CodEXX 代表员工代码 XX,Anc CodCXX 代表客户案例)

2个网络服务)

许多 DMS 公开(安全)Web 服务以访问(读取)/插入/更新/删除文档,因此通过这种方式可以使我的系统与其他 DMS 保持同步。

3)其他功能/工具)

其他 DMS 有工具(如使用参数或存储函数运行的命令行工具)来执行访问/插入/更新/删除

无论如何,一般来说双向同步是一个问题,在我的情况下,我对一种方式更感兴趣,所以基本上访问存储在其他地方的文档

您可以建议哪些技术来创建可配置功能?

4

1 回答 1

1

开发您自己的 API,以便客户端应用程序(无论是您编写的还是其他人编写的)都可以使用它来读取/写入系统中的数据。

根据它与假定的客户端功能的匹配程度来选择该 API 的底层技术。例如,如果期望大多数客户端是远程的并且使用多种语言,那么 Web 服务就是一个不错的选择。如果预计大多数客户端都是进程内的(如果这对您的系统有意义的话)并且是本地的,那么基于 C 的 API 可能是要走的路。以及介于两者之间的一切...

然后,您将使用“源”和“目标”系统的 API 来实现集成。

于 2012-05-30T18:39:46.610 回答