Цитата:
Сообщение от
Jab Straight
Пользователи постоянно присылают нам MS SQL базы со своими полями, которые добавлены случайным образом в середину существующих таблиц. Акзапта всегда добавляет поля в середину или существует какой-то трюк, позволяющий добавлять поля в конец?
Помоему Аксапата всегда выстраивает поля по значению Id, по убыванию. Таким образом при создании поля, оно добавляется в начало списка, а после перезапуска Аксапты выстраивается по Id поля (может есть другой способ но у меня работает только после перезапуска), т.е. помещятся по порядку создания т.к. даже если поле удалить новое Id будет продолжать максимальное значение в этой таблице.
Нарушение этой последовательности происходит при удалении и импорте таблицы заново. Если таблица переписывается то Id не меняется.
Тут есть еще такая загвоздка что если импорт экспорт идет без указания Id, то при экспорте поля записываются в XPO в той последовательности в которой они отображаются на текущий момент в Аксапте, а при импорте Id поля принимается по порядку начиная с 50001. Т.е. если Вы создадите новое поле в табличке, экспортируете ее, удалите и заново импортируете то Id будут заданы сизнова.
Таким образом можно выставить последовательность полей как это требуется и пересоздать табличку через импорт-удаление-экспорт.
Очевидно что бы не было проблем с положением полей нужно делать экспорт и импорт с Id.
В Сиквеле поля хранятся в такой же последовательности как и в Аксапте (т.е. по возрастанию Id поля)