在我的工作中,我必须对NAV公司进行大量备份和恢复,以便创建类似于以前公司的新公司。我打算构建一个.net应用程序来完成这项工作。基本上自动化重复的东西,但问题是我们使用的Navision是2009 R2,我找不到使用.Net / SQL在2009 R2中备份和恢复NAV数据库/公司的方法。这有什么办法吗?
答案 0 :(得分:0)
无法使用SQL备份NAV公司。 您只能备份整个数据库。
如果您要备份单独的公司,则需要使用fbk文件(工具 - >备份)使用内置备份
从NAV 2015开始,您可以从RoleTailored \ Windows Client备份\还原公司。
干杯!
答案 1 :(得分:0)
如上所述,没有办法使用脚本自动化它。执行备份/恢复时除了创建另一个表集之外,还要做很多事情。它创建键/视图,将记录附加到系统表,如公司(存储公司列表)。
从你的问题我无法理解为什么你需要备份公司来创建类似的。因为在那之后你必须清除所有分类账等。为什么复制数据只是为了擦除它?
您可以用来解决快速创建新公司问题的替代方法是在Nav中创建一个代码单元,该代码单元将使用您需要的所有数据填充新创建的公司。看看codeunit 2 Company-Initialize
。运行时,它会在所有重要的设置表中创建空记录并填充报告选择。您可以修改它或创建一个类似的设置表,用默认值填充设置表,或者从您提供的另一家公司复制它们作为参数(使用changecompany)。
我发现了另外一个thing:
在早期版本的Microsoft Dynamics NAV中,您可以创建一个 表通过使用INSERT函数(Record)向表中添加记录 公司表2000000006。在Microsoft Dynamics NAV 2013中,它是 不支持使用INSERT函数创建公司。您 必须使用“新公司”窗口创建公司 发展环境。
这意味着在您的版本中,您甚至可以从我提到过的codeunit中自动创建新的公司。
此外,由于Nav 2013 R2还有新的capabilities。您可以将finsql.exe的comandline参数用于create company(or)。然后从PowerShell脚本invoke Nav codeunit填充数据。