Показать сообщение отдельно
Старый 30.07.2008, 19:22   #2  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от Logger Посмотреть сообщение
Коллеги поделитесь информацией как безболезненно перевести базу с правого выравнивания строковых полей на левое.

Мы попробовали стандартный способ, тот который идет в поставке с Ax 4.0 - 5.0 в файле PrivateProject_LeftJustified.xpo
Этот скрипт рассчитан на то, что выравнивание делается в базе, а дальше старое приложение не работает. Лично мне он категорически не понравился.

Правильно и безболезненно можно так - в Аксапте изменить свойство выравнивание у типа num, сохранить изменения. Запустится одна большая транзакция с блокировкой схемы данных. В этот момент transaction log может вырасти до размеров самой базы. Работающих пользователей в этот момент лучше выгнать поскольку с огромной вероятностью работающие пользователи дадут deadlock.

Тип num является базовым для большинства кодов в Аксапте. Изменение выравнивания в базовом типе приведет к изменению выравнивания очень многих типов (см. иерархию объектов, начиная с num).

После изменения num, стоит поискать среди типов свойство Align со значением Right при помощи стандартного поиска. В стандартном приложении останется с десяток типов (среди них коды журналов), которые также перещелкнуть влево.

См. также http://axapta.mazzy.ru/lib/adjustment/
и примечания внизу.
__________________
полезное на axForum, github, vk, coub.
За это сообщение автора поблагодарили: Logger (2).