|  03.06.2014, 21:36 | #1 | 
| Участник | Сохранение данных на форме. 
			
			Подскажите пожалуйста если в двух разных окнах(IE) открыто одно и тоже КП и если в первом окне произвели изменения и сохранили, и потом во втором окне произвели изменения(но уже другие данные изменили) и нажали сохранить, то при сохранении второй формы данные перезатруться(которые были сделаны первым сохранением) или будет предупреждение о том что данные в таблице не соответствую тому что было при открытии окна браузера( то есть не актуальные)?
		 | 
|  | 
|  03.06.2014, 22:59 | #2 | 
| Еда - топливо, Одежда - н | 
			
			ничего не произойдет.  данные в БД будут те, которые были внесены во втором окне. 
				__________________ Все что вам нужно - это мозК Еда - топливо... Одежда - необходимость... | 
|  | |
| За это сообщение автора поблагодарили: TDV (1). | |
|  03.06.2014, 23:17 | #3 | 
| Участник | 
			
			С CRM недавно работаю в основном как пользователь. Сам я Аксаптер, в Аксапте такое не возможно, система ругнется что данные в таблицах уже не те которые были при последнем прочтении и нужно будет сначала подтянуть из базы, а потом повторно корректировать и сохранять. Хотя это можно обойти программно. Спасибо за ответ!
		 | 
|  | 
|  03.06.2014, 23:28 | #4 | 
| Еда - топливо, Одежда - н | 
			
			я знаю, в NAV было так, что запись типа блокировалась как-то в БД, если один работает с ней...  такой же принцип был и для разработчиков в NAV, если кто-то редактирует файл разработки, то остальные не могли туда ничего вносить... Думаю как-то можно это сделать, но это будет ансапрт )))) хз, пусть гуру скажут   
				__________________ Все что вам нужно - это мозК Еда - топливо... Одежда - необходимость... | 
|  | 
|  04.06.2014, 23:50 | #5 | 
| Moderator | 
			
			Я думаю, вам проще провести эксперимент. Форма обновляет данные только тех полей, которые были изменены пользователем, а не всех. Если нет пересечений, тогда проблем точно не будет. Если есть, скорее всего победит последнее изменение. Вообще говоря, в базе данных есть поле RowVersion, но, скорее всего, оно используется для каких-то внутренних целей защиты от конкурирующих изменений.
		 
				__________________ http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия.   MS Certified Dirty Magic Professional | 
|  | 
|  05.06.2014, 10:19 | #6 | 
| Участник | 
			
			Думаю тут просто нужны какие то административные меры: использовать тимы или расшаривание.
		 | 
|  | 
|  03.08.2014, 00:17 | #7 | 
| Участник | 
			
			Добрый день. Если нужно фиксировать была изменена запись с момента открытия или нет, можно попробовать добавить скрытое поле даты и заполнять его текущей датой и временем на онлоаде (могут возникнуть проблемы при разных временных настройках у пользователей). В плагине на стадии Pre Update проверять, если поле даты ModifiedOn > даты, которую заполнили на онлоаде, значит запись кто-то уже обновил после открытия формы. ModifiedOn можно взять из PreImage или вытянуть запросом. Как по мне, так кривоватое решение, но как решение может и сгодится. В целом проверить обновлялись какие-то поля не получится, но можно будет узнать, что кто-то внес изменения в запись. P.S. В базе обновляются только те поля, которые изменили на форме + те, которые принудительно передали на обновление в JS или плагине. | 
|  |