Navision DB/Company 使用 SQL/.NET 进行备份和还原



在我的工作中,我必须对NAV公司进行大量备份和恢复,以便创建类似于以前公司的新公司。我计划构建一个 .net 应用程序来完成这项工作。基本上自动化重复的东西,但问题是我们使用的 Navision 是 2009 R2,我找不到使用 .Net/SQL 在 2009 R2 中备份和恢复 NAV 数据库/公司的方法。有什么办法吗?

如前所述,没有办法使用脚本来自动化它。在执行备份/恢复时,除了创建另一个表集之外,Nav 还会做很多事情。它创建键/视图,将记录附加到系统表,如公司(存储公司列表)。

从你的问题中,我不明白为什么你需要备份公司来创建类似的。因为在那之后,您必须清除所有分类帐等。为什么要复制数据只是为了擦除它?

可用于解决快速创建新公司问题的替代方法是在 Nav 中创建一个代码单元,该代码单元将使用您需要的所有数据填充新创建的公司。看看代码单元2 Company-Initialize。运行时,它会在所有重要的设置表中创建空记录并填充报告选择。您可以修改它或创建类似的设置表,该设置表将按默认值填充设置表,或者从您作为参数提供的另一家公司复制它们(为此使用 changecompany)。

这是我发现的另一件事:

在早期版本的 Microsoft Dynamics NAV 中,您可以创建一个 表 通过使用 INSERT 函数(记录)将记录添加到表中 2000000006,公司表。在Microsoft Dynamics NAV 2013中,它是 不支持使用 INSERT 函数创建公司。你 必须使用"新建公司"窗口中的"新建公司"窗口创建公司 开发环境。

这意味着在您的版本中,您甚至可以从我提到的代码单元自动创建新的公司。

此外,自 Nav 2013 R2 以来,还有新功能。您可以使用 finsql.exe 的命令行参数来创建公司(或)。然后从PowerShell脚本调用导航代码单元以使用数据填充它。

无法使用 SQL 备份 NAV 公司。您只能备份整个数据库。

如果要备份单独的公司,则需要使用fbk文件的内置备份(工具->备份)

从 NAV 2015 中,您可以从 RoleTailored\Windows 客户端备份\恢复公司。

干杯!

最新更新