25.11.2014, 12:10 | #1 |
Участник
|
Обновление записи при переходе на связанную в сабгриде
Приветствую! Срм 13
1) на форме кастомного объекта есть субгрид на клиента. 2) с этого субгрида пользователь выбирает клиента 3)необходимо передать идентификатор этого клиента в другую запись. Меня смущает подход который предусматривает развешивание обработчиков кликов на гриде. Кто-нибудь делал по-другому? Так как в 2013 запись открывается в том-же окне и у нее нет "opener"-а. Вдруг есть альтернатива? |
|
25.11.2014, 15:00 | #2 |
Moderator
|
Увы, набор поддерживаемых методов сабгрида ограничен. По факту, это только метод refresh, хотя есть и другие, которые использует платформа. Как вариант, можно попробовать сделать кнопку в сабгриде, и вызывать необходимое действие при помощи нее.
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия. MS Certified Dirty Magic Professional |
|
|
За это сообщение автора поблагодарили: Quodnon (1). |
25.11.2014, 19:04 | #3 |
Участник
|
Все таки я выкрутился другим путем. Хотелось бы послушать начальника транспортного цеха.
Как вам такое: X++: $(window).bind('beforeunload',function(e){ //тут лезем в грид и рестом апдейтим нужные записи } ); |
|
26.11.2014, 11:16 | #4 |
Moderator
|
Нормально, но, как я уже говорил, это ансаппорт, а значит может быть сломано первым же апдейтом. Вот вам мой рецепт на такие случаи: максимально гранулируйте код, который работает с ансаппорт методами. Отдельная функция для получения выделенных записей, отдельная для обращений к сервису и т.д. В этом случае, когда изменится версия, нужно будет менять код только в одном месте. Иногда даже удается сделать его универсальным за счет проверок вида:
X++: if(typeof grid.control != 'undefined')
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия. MS Certified Dirty Magic Professional |
|
|
|