|  06.09.2004, 14:46 | #1 | 
| Участник | Одновременный доступ к заказу 2х пользователей 
			
			Как запртеить или обойти такую ситуацию: Пользователь 1 создает заказ, вводит номенклатуру, в это время пользователь2 заходит в этот же заказ и меняет какие-то атрибуты или добавляет еще номенклатуру. При попытке выйти 1-го пользователя из заказа возникает ошибка: "Значение, введенное в поле 'Оценка суммы' таблицы 'Заказы' ('10926,48') нельзя сохранить, поскольку оно изменено другим пользователем . Используйте функцию "Восстановить", чтобы подставить новое значение" | 
|  | 
|  06.09.2004, 15:01 | #2 | 
| Участник | 
			
			Например настроив права доступа на записи таблицы SalesTable таким образом, чтобы пользователь мог видеть только свои заказы.
		 | 
|  | 
|  06.09.2004, 15:30 | #3 | 
| Участник | 
			
			Контроль доступа -> Доступ на уровне записей ? Там можно устанавливать только для групп, мне же нужно для каждого пользователя одной группы. И потом я не хотел бы ограничивать доступ. | 
|  | 
|  06.09.2004, 15:43 | #4 | 
| Участник | 
			
			Да. Одна группа - один пользователь. Если так не подходит, то с помощью доработки формы SalesTable. Если текущий пользователь является создателем текущей строки SalesTable - разрешаем редактирование - иначе - только просмотр. Строки заказа SalesLine - аналогично. | 
|  | 
|  06.09.2004, 15:50 | #5 | 
| Участник | Цитата: 
		
			Изначально опубликовано YellowSubmarine  Если так не подходит, то с помощью доработки формы SalesTable. Если текущий пользователь является создателем текущей строки SalesTable - разрешаем редактирование - иначе - только просмотр. Строки заказа SalesLine - аналогично. А с чем связанно, что такую ситуацию не всегда удается смоделировать, часто одновременное изменение никаких коллизий не вызывает? | 
|  | 
|  06.09.2004, 16:03 | #6 | 
| Участник | 
			
			Наверное один пользователь успевает записать изменения (нажатием Ctrl+S или переходом на другую строку) до того, как второй начинает редактирование.  Буквально в пятницу в своей форме (в USR слое) боролся с такой-же ошибкой. Причем я был единственным пользователем в этой базе. Решение оказалось простым - расчетное поле при вычислении не округлялось и записывалось в таблицу как есть (real). После добавления функции округления (перед записью в таблицу) до 4-х знаков после запятой все исправилось  ) | 
|  | 
|  | 
| 
 |