Добрый день, коллеги.
Для интеграции Террасофт CRM с внутренней учетной системой мне нужно понимать изменилась ли запись в таблице. Поля CreatedOn и ModifiedOn не очень подходят, потому что часть логики реализована через хранимые процедуры и эти поля могут не содержать актуальной информации.
В качестве сервер БД используется MS SQL Server, поэтому я решил попробовать добавить в таблицу поле типа timestamp, которое обновляется при любом изменении записи. Но, естественно, столкнулся с проблемами:
1. При попытке добавления поля в эту таблицу и сохранение изменений в БД я получаю ошибку "cannot update timestamp column". Я не знаю, как Террасофт обновляет таблицы в БД на основании конфигурации, но выходит, что система пытается обновить поле, которое в конфигурации не описано.
2. Если выгрузить сервис такой таблицы в файл, а потом попытаться загрузить обратно, то получаю ошибку "Duplicate hash list entry ", где это идентификатор сервиса в конфигурации.
Очень похоже на то, что избранный мной способ решения задачи не сработает и нужно искать что-то другое. Существует ли другой способ однозначного детектирования изменения записи?