0

*.txt我首先尝试使用文件更新 NAV2018 。但它需要一些软件包作为开发。所以我尝试使用导出的更新 NAV2018 *.fob

Import-Module "${env:ProgramFiles(x86)}\Microsoft Dynamics NAV\110\RoleTailored Client\NavModelTools.ps1" -WarningAction SilentlyContinue | Out-Null

Import-NAVApplicationObject -Path D:\work\namise.fob -DatabaseName NAV2018 -LogPath D:\work -SynchronizeSchemaChanges force -Confirm:$false

pause

显示错误并且命令未成功处理。命令Import-NAVApplicationObject 是否适用于手动导入过程?也可以用*.fob吗?

打开Microsoft Dynamics NAV 开发环境-> 单击File-> 单击Import-> 选择 * .fob -> 显示消息:The objects in D:\work\namise.fob could not be imported because there are objects already in the database with conflicting versions. Choose OK to open the Import Worksheet, or Cancel to stop the import.-> 单击OK-> 单击Replace All-> 单击OK-> 单击Synchronize Schema Force (Changed will be synchronized to the database table without validation. Data in table column that are affected by the changes will be deleted)-> 单击Synchronizate changes to the corresponding tables in SQL Server Yes-> 从选择中使用All table schema changes were synchronized with force-> 显示的表在哪里Import completed (replaced XY)- > 然后重新启动 NAV 服务 -> 完成

如果是命令Import-NAVApplicationObject等于提到的手动过程。这些错误是什么意思?可以解决吗?

十分感谢!

亲切的问候

卢卡斯

4

1 回答 1

0
  1. 是的,comandlet 是手动过程的完整副本。它只是一个使用 finsql.exe(开发环境)运行进程的包装器。
  2. 您需要使用值为Overwrite https://docs.microsoft.com/en-us/powershell/module/microsoft.dynamics.nav.ide/import-navapplicationobject?view=businesscentral-ps的 ImportAction 参数
  3. 不要使用强制同步模式。您将丢失具有破坏性更改的列中的所有数据。

您可以从 powershell 终端的自动完成功能 (Ctrl+Space) 或参数描述中找到finsql.exe参数的值(正如我提到的 cmdlet 只是围绕开发环境可执行文件的包装)。

在此处输入图像描述

于 2020-11-30T05:24:36.707 回答