Ведутся ли логи?

Подскажите пожалуйста, можно ли где то прочитать логи изменений таблиц? В частности необходимо отследить удаление записей.
SQL Server
TSCRM 3.0

Нравится

9 комментариев

Здравствуйте!

В версии Terrasoft CRM 3.2 появилась возможность отслеживать изменения с помощью нового раздела [Журнал изменений].
В версии Terrasoft CRM 3.0 можете настроить следующим образом:
Необходимо открыть Terrasoft CRM Administrator, установить галочку «Отслеживать изменения» в нужном Вам разделе (например, tbl_Contact) и сохранить сделанные изменения.
После сделанных изменений в таблице tbl_DatabaseLog будут логироваться действия пользователей.

Или же более трудоемкий способ - написание собственного триггера, который будет отслеживать указанные Вами действия, например, удаление записей пользователями.

Terrasoft Support Team

Спасибо.

Вопрос по вышеуказанному журналу изменений. Почему обозначенных в руководстве значений колонки "Действие" (Добавление, изменение и удаление) при любых действиях пишет одно - "Обновление"? Там же, при попытке посмотреть "Описание" или выгрузить его, выскакивает ошибка "[09.01.22 17.38.35.227] (E) Ошибка выполнения метода 'OpenBlob'. Object 'DataField IncidentNumber' is not assigned «Call Stack»".

А какая у Вас версия?

Версия 3.2 Х25 RET

Здравствуйте!

Уточните, пожалуйста, точную версию сборки БД (3.2.X.X).

Terrasoft Support Team

3.2.0.10

Здравствуйте!

Данная проблема возникает в результате кода скрипта, что при формировании имени файла для сохранения описания, если не логируется поле Primary Display Field таблицы, которая логируется. Т.е.в данном случае, поле IncidentNumber является Primary Display Field таблицы, но оно не установлено как поле, которое должно логироваться.
Есть два пути решения проблемы: добавить логирование IncidentNumber и в каждом случае следить, чтобы Primary Display Field логировалось или изменить код в скрипте wnd_ChangesLogScript:

function SaveFile(DataField, UseTempFile) {
var FileNameValue = '';
var Extention = '';
if (!ChangesLog.ParentTable) {
return false;
}
var PrimaryFieldName =
ChangesLog.ParentTable.PrimaryDisplayTableField.SQLName;
var PrimaryFieldValue = '';
if (PrimaryFieldName &&
(dlData.Dataset.DataFields.ItemsByName(PrimaryFieldName))) {
PrimaryFieldValue =
GetDatasetFieldValue(dlData.Dataset, PrimaryFieldName);
if (PrimaryFieldValue) {
FileNameValue = scr_FileUtils.PrepareFileName(PrimaryFieldValue);
}
} else {
FileNameValue = DataField.Name;
}
if (DataField.Name == DescriptionFieldName) {
Extention = '.rtf';
FileNameValue = FileNameValue + Extention;
} else {
Extention = FileNameValue.substr(FileNameValue.search(/.\w*$/),
FileNameValue.length);
}
if (!UseTempFile) {
var FileName = GetNewValue();
FileName.Value = FileNameValue;
var Title = FormatStr("Сохранить '%1' как", DataField.Caption);
if (!(System.SaveDialog(FileName, "Все Файлы (*.*)|*.*", Extention,
Title, Connector.WorkingDirectory))) {
return;
}
DataField.SaveToFile(FileName.Value);
}
return FileNameValue;
}

Terrasoft Support Team

Спасибо! Помогло

Показать все комментарии