|  06.06.2006, 12:42 | #1 | 
| Участник | обновление FormDataSource 
			
			Всем привет! Подскажите как можно обновить fds: Происходит удаление записи из таблицы, необходимо обновить fds и показать что запись действительно удалилась визульно, при этом сохранить текущие фильтры и после этого передвинуть курсор на следующую позицию. с помощью fds.research(); можно сделать обновление и сохранить текущий фильтр, однако встать на сл. позицию в таблице: fds.cursor().data(table); fds.setCurrent(); не удается. может я что то совсем не так делаю? | 
|  | 
|  06.06.2006, 13:00 | #2 | 
| NavAx | 
			
			А удаляется текущая запись?
		 | 
|  | 
|  06.06.2006, 13:07 | #3 | 
| Участник | 
			
			ага
		 | 
|  | 
|  06.06.2006, 13:17 | #4 | 
| Участник | 
			
			Почему не воспользуетесь fds.delete()? Тогда ничего переоткрывать не надо.
		 
				__________________ Axapta v.3.0 sp5 kr2 | 
|  | 
|  06.06.2006, 13:22 | #5 | 
| Участник | 
			
			а как в этом случае убрать запрос "Удалить запись?" ? | 
|  | 
|  06.06.2006, 13:24 | #6 | 
| Участник | 
			
			а вообще нет, не подойдет этот метод, дело в том что удаляться могут сразу несколько записей и в случае если у одной сработает deleteActon вся процедура прервется.
		 | 
|  | 
|  06.06.2006, 13:27 | #7 | 
| Участник | 
			
			А групповое удаление - промаркированые записи в гриде или какое-то условие?
		 
				__________________ Axapta v.3.0 sp5 kr2 | 
|  | 
|  06.06.2006, 13:30 | #8 | 
| Участник | 
			
			промаркированные записи.
		 | 
|  | 
|  06.06.2006, 13:38 | #9 | 
| Участник | 
			
			Значит записи - на клиенте. Такое предложение - из б/д удалять при помощи запроса, а из кэша датасоурса с помощью метода fds.cacheRemoveRecord() 
				__________________ Axapta v.3.0 sp5 kr2 | 
|  | 
|  06.06.2006, 13:41 | #10 | 
| Участник | 
			
			Может просто запоминайте Recid записи, следующей за последней маркированной (или активной, если только одна строка), и потом, после удаления, с помощью findRecrod прыгайте на нее.
		 | 
|  | 
|  06.06.2006, 14:48 | #11 | 
| Участник | 
			
			AndyD, спасибо большое за идею с cacheRemoveRecord отлично работает. | 
|  | 
|  06.06.2006, 14:51 | #12 | 
| Участник | 
			
			kashperuk я бы с удовольствием прыгнул но поле fds.research(); ничего не получается, в том числе и findRecord не работает. если честно так и не понял почему... | 
|  | 
|  06.06.2006, 14:52 | #13 | 
| Участник | 
			
			но после fds.research();
		 | 
|  | 
|  06.06.2006, 15:35 | #14 | 
| Участник | 
			
			у меня была следующая фигня X++: Common record=args.record();
...
ds.research();
ds.findValue(fieldNum(...), record.recID)излечилось изменением на X++: Common record=args.record().data(); | 
|  | |
| За это сообщение автора поблагодарили: Poleax (1). | |