По своей работе мне приходится делать много резервных копий и восстанавливать компании NAV, чтобы создавать новые компании, похожие на предыдущую компанию. Я планирую создать приложение .net для выполнения этой работы. В основном автоматизируйте повторяющиеся действия, но проблема в том, что мы используем Navision 2009 R2, и я не могу найти способ резервного копирования и восстановления базы данных/компании NAV в 2009 R2 с использованием .Net/SQL. Есть ли способ сделать это?
Резервное копирование и восстановление Navision DB/Company с использованием SQL/.NET
Ответы (2)
Как уже говорилось, нет возможности автоматизировать это с помощью скрипта. При выполнении резервного копирования/восстановления Nav делает много вещей, кроме создания еще одного набора таблиц. Он создает ключи/представления, добавляет записи в системные таблицы, такие как Company (где хранится список компаний).
Из вашего вопроса я не могу понять, зачем вам нужна резервная компания, чтобы создать аналогичную. Потому что после этого вам придется очистить все бухгалтерские книги и т. д. Зачем копировать данные только для того, чтобы их стереть?
Альтернативный подход, который вы можете использовать для быстрого решения проблемы создания новой компании, заключается в создании codeunit в Nav, который будет заполнять вновь созданную компанию всеми необходимыми данными. Взгляните на codeunit 2 Company-Initialize
. При запуске он создает пустые записи во всех важных таблицах настройки и заполняет выборку отчета. Вы можете изменить его или создать аналогичный, который будет заполнять установочные таблицы вашими значениями по умолчанию или скопировать их из другой компании, которую вы указали в качестве параметра (используйте changecompany).
Вот еще одна вещь, которую я мы нашли:
В более ранних версиях Microsoft Dynamics NAV можно было создать таблицу, используя функцию INSERT (запись), чтобы добавить запись в таблицу 2000000006, таблицу Company. В Microsoft Dynamics NAV 2013 не поддерживается создание компании с помощью функции ВСТАВИТЬ. Вы должны создавать компании, используя окно New Company в среде разработки.
Это означает, что в вашей версии вы даже можете автоматически создать новую компанию из кода, о котором я упоминал.
Также начиная с Nav 2013 R2 появились новые возможности. Вы можете использовать параметры командной строки finsql.exe, чтобы создать компанию (или). А затем вызовите блок кода Nav из сценария PowerShell. чтобы заполнить его данными.
нет возможности сделать резервную копию компании NAV с помощью SQL. Вы можете сделать резервную копию только всей базы данных.
Если вы хотите сделать резервную копию отдельной компании, вам нужно использовать встроенную резервную копию с использованием файлов fbk (Инструменты -> Резервное копирование)
Начиная с NAV 2015, вы можете выполнять резервное копирование\восстановление компаний из RoleTailored\Windows Client.
Ваше здоровье!