Редактирование истории операций с единицей
От: welvist  
Дата: 13.05.10 08:51
Оценка:
Добрый день!
Есть задача.
Объект — учетная единица. С ней могут производиться определенные операции, которые отражают изменение местоположение объекта, изменение его характеристик и т.п. Суть операций — знать, что с объектом происходило до текущего момента, то есть всю историю операций.
Пример последовательности операций:

1 мая: объект образовался в пункте А
10 мая: объект переместили из А в Б
12 мая: объект переместили из Б в Г (*)
13 мая: объект прекратил свое существование в пункте Г

Вопрос заключается в том, как быть с историей редактирования операций? Например, пользователь считает, что ошибся, и захотел зайти в прошлую операцию и исправить ее. Но исправление в истории может привести к логическим ошибкам. Пример: в операции (*) он поставил дату 9 мая... Но 9 мая объект был в пункте А, и операция (*) в данном случае не имеет смысла! В итоге, в программу надо закладывать проверки, количество и сложность которых растет вместе с разными видами операций над объектом. Может быть в принципе неверно давать пользователю редактировать историю? Но юзеры утверждают, что могут ошибаться, и им это надо . У кого есть опыт решения таких задач, прошу поделитесь им!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.