Здравствуйте! Подскажите, пожалуйста по какому алгоритму в системе создаются ключевые поля?
Дело в том, что я на Delphi пишу одну маленькую утилиту, которая будет получать доступ к физическим таблицам и вносить туда некоторые свои данные, возможно даже создавай своего "пустого контрагента" с присвоенным ему id, как рассчитать id?
Нравится
Марат, алгоритм прост - генерация нового Guid.
procedure TForm1.Button1Click(Sender: TObject); var g: TGuid; begin CreateGUID(g); ShowMessage(GUIDToString(g)); end;
Марат, возможно, Вам будет полезная информация о том что, в версиях 3.0.х, создавая записи напрямую в таблицах, необходимо:
1. раздать права по-умолчанию на новую запись
2. если включено логгирование, не забыть внести соответствующую информацию в журнал изменений
При создании и изменении данных с использованием объектов Terrasoft, например из конфигурации, за выполнение этих функций отвечает ядро системы и делает это автоматически. Если действовать в обход ядра, то эту информацию необходимо помнить.
"Ключник Алексей" написал:2. если включено логгирование, не забыть внести соответствующую информацию в журнал изменений
При создании и изменении данных с использованием объектов Terrasoft, например из конфигурации, за выполнение этих функций отвечает ядро системы и делает это автоматически. Если действовать в обход ядра, то эту информацию необходимо помнить.
Алексей, с прав доступа - согласен, но с журналом изменения должен не согласится! Поскольку за это отвечает не ядро системы, а СУБД или точнее триггеры, которые создаются ядром системы при включение логирования!
Создаю запись в системы (в разделе с включенным логированием):
Изменяю данные вне системы:
Смотрю в журнал:
--
www.it-sfera.com.ua
Terrasoft Solution Partner
Вынужден и с первым пунктом не согласится! Права доступа "по-умолчанию" устанавливаются тоже на уровне СУБД...
--
www.it-sfera.com.ua
Terrasoft Solution Partner
Виталий, спасибо за замечание. Не указал в посте версии Terrasoft