Показать сообщение отдельно
Старый 24.06.2011, 01:04   #8  
DSPIC is offline
DSPIC
Боец
 
1,077 / 1243 (44) ++++++++
Регистрация: 11.04.2008
Цитата:
Сообщение от glibs Посмотреть сообщение
Чтобы Аксапта работала с таблицей как с родной (а иначе вопрос про RecId зайти не должен был бы), ее нужно создавать в АОТ. А если так, то автоинкремент в чистом виде сделать не получится, насколько я могу понимать.

Заполнять RecId нужно потустороней софтиной, по хорошему. Или писать триггер и следить стоб не стерся. А коли так, то просто развести диапазоны RecId, в которые может писать Аксапта, и в которые может писать потусторонняя софтина, чтобы они не пересеклись. Не совершенно, но быстро и просто. И оптимально с т.з. поддержки кода.

Для тех кто любит творить много совершенного кода и не беспокоится о стоимости его поддержки варианты были предложены...
Я бы не делал из мухи слона. По-моему, здесь только усложнения: триггер, следить, чтобы он не стерся, развести диапазоны... Единственное, что действительно стоит отсюда добавить в верхние посты - это не связываться с хранимой процедурой и получать следующее значение RecId в той же софтине: т..е. написать метод
Код:
int64 getNextRecId(int _tableId)
>Для тех кто любит творить много совершенного кода и не беспокоится о стоимости его поддержки варианты были предложены...

Glibs, если предложишь решение по выделению RecId проще и дешевле в поддержке - ставлю пиво.