Показать сообщение отдельно
Старый 04.11.2015, 21:41   #4  
alexb_imported is offline
alexb_imported
Участник
 
256 / 12 (1) ++
Регистрация: 25.08.2006
Цитата:
Сообщение от Sancho Посмотреть сообщение
да, еще, кто-то расскажет что за сюрпризы с импортом таблиц?
Force, Later...
что это все человеческим языком?
какие валидейты при импорте объекта "таблица" могут быть?
Это довольно крутая / опасная фича:
1. Импортируем таблицу: в FOB в таблице отсутствует какое-нибудь поле, а базе, в которую fob импортируется, поле имеется и заполнено.
При импорте с опцией "Force" поле удаляется и автом. удаляется его содержимое во всех компаниях! Т.е. используем эту опцию в тех случаях, когда наверняка знаем, что требуемое поле по любому надо удалить со всем содержимым и лень программить какой-нибудь отчёт для удаления содержимого поля во всех записях / компаниях.
2. При опции "Now - with validation" таблица хотя и импортируется (без поля!), но содержимое поля не удаляется! В этом случае NAV проверяет во всех записях / во всех компаниях где поле заполнено и результат / список этой проверки можно посмотреть соотв. power shell командой. Удаляем руками содержимое поля из всех записей (или например копируем в архивную таблицу), потом проводим "Schema Synchronization", если синхронизация прошла успешно, то с этого момента можно этой импортированной таблицей пользоваться, но не раньше!
3. Опция "Later": тоже самое что и "Now - with validation", только здесь таблица тупо импортируется (без поля!), но никаких проверок как при "Now - with validation" NAV не делает и таблицей так же нелья пользоваться, пока не удалим содержимое+проведём синхронизацию.

Рекомендую также:
По поводу программного удаления / перемещения содержимого полей при upgrade+FOB-Import:
у codeunit есть новый subtype:: Upgrade
Импортируем FOB -> НАВ автом. замечает, что в базе есть такой / такие codeunit и выполняет соотв. прогр. код в них:
Пример: codeunit 9900 "Data Upgrade Mgt."
За это сообщение автора поблагодарили: mira (1).