При анализе данных, да и при построении расширенных отчетов иногда необходимо обратиться к системным таблицам. Я приведу описание некоторых из них, которые могут быть полезны.
dvsys_instances - в таблице хранятся записи о всех карточках в системе
поля:
InstanceID - идентификатор карточки
CardTypeID - идентификатор типа карточки
Description - дайджест
SDID - сылка на дескриптор безопасности в dvsys_security
Deleted - признак, является ли карточка помещенной в корзину
Template - признак, что карточка является шаблоном
TopicIndex - порядок в теме обработки
dvsys_instances_read - информация о прочтенных пользователем карточках
InstanceID - идентификатор карточки
UserID - идентификатор пользователя из таблицы dvsys_users
dvsys_links - информация о ссылках
SourceCardID - идентификатор карточки, которая ссылается
DestinationCardID - идентификатор карточки, на которую ссылкаются
Type - тип ссылки: 1- слабая, 2 - сильная
dvsys_log - таблица, хранящая журнал навигатора.
dvsys_sessions - таблица, хранящая информацию обо всех сессиях. Удаление строки из этой таблицы, то же самое что и отключение пользователя.
dvsys_users - информация обо всех пользователях, которые хоть раз открывали навигатор.
Михаил, а вы не могли бы немного рассказать о системном поле Timestamp, SysRowTimestamp? Что оно в себе содержит? И можно ли его использовать, например, в sql-запросе, если надо будет получить дату создани записи?
ОтветитьУдалитьИли у него другое назначение?
Данные поля содержат отметку, позволяющую идентифицировать изменение записи. Например, при часть данных кешируется на клиенте во время работы. При обращении пользователя к данным карточки, делается проверка на актуальность данных в кеше на клиенте (для определения нужно ли их переполучать заново). И актуальность определяется полем Timestamp. Возможно, есть еще применения, о которых я не знаю. Это поле никак не применимо для выборок через SQL запросы. По крайней мере, я его ни разу не использовал.
ОтветитьУдалитьСпасибо, понятно.
ОтветитьУдалитьПолучается, что дата создания строки (RowData) нигде не хранится и никак её не получить?
Произвольной нельзя. Можно, только в случае если RowData имеет поле Дата / Время. Как например, запись в журнале бизнес-процесса
ОтветитьУдалитьНу, можно ведь поискать в табличке dvsys_log.
ОтветитьУдалитьЛог же периодически очищается, так что dvsys_log как источник информации тут не подходит, к сожалению.
ОтветитьУдалитьА что хранится в таблице dvsys_log_backup? Можно ее транкейтнуть? А то она очень сильно разрослась.
ОтветитьУдалитьМожно. логи там хранятся )
ОтветитьУдалить