|
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:41 | #9 |
Участник
|
Может просто запоминайте Recid записи, следующей за последней маркированной (или активной, если только одна строка), и потом, после удаления, с помощью findRecrod прыгайте на нее.
|
|
06.06.2006, 13:38 | #10 |
Участник
|
Значит записи - на клиенте.
Такое предложение - из б/д удалять при помощи запроса, а из кэша датасоурса с помощью метода fds.cacheRemoveRecord()
__________________
Axapta v.3.0 sp5 kr2 |
|
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). |