Показать сообщение отдельно
Старый 30.12.2017, 01:20   #11  
sukhanchik is offline
sukhanchik
Administrator
Аватар для sukhanchik
MCBMSS
Злыдни
Лучший по профессии 2015
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,275 / 3476 (122) ++++++++++
Регистрация: 13.06.2004
Адрес: Москва
Цитата:
Сообщение от skuull Посмотреть сообщение
А что с этим постом не так thwidmer: Deep links available in every form ?
Все так. Только вопрос - что мы хотим получить?
В данном примере делается расширение класса и мы получим изменим исходную ссылку. Т.е. это будет "вариант А".
Но с другой стороны - концептуально (на мой взгляд) сделать именно Extension как в том примере - более правильно.
Мой пример хорош как вариант кода "с одним объектом". Ну и мне всегда нравятся готовые примеры, которые можно скачать, влить к себе без лишних телодвижений и они сразу заработают.

Я не ломал стандартный функционал только по одной причине - если ссылка не будет работать (из-за внутренней логики какой-нибудь формы), то останется возможность использовать обычную (штатную) ссылку. Если бы я мог гарантировать работоспособность своего примера в 100% случаях всех форм, то можно было бы и заменить штатный функционал на измененный.

Ну и вообще моя позиция такова - что очень не хватает материалов на русском языке, даже если есть альтернатива на английском (не люблю буржуйский язык). Я не пользовался той статьей и она мне при поиске не попалась, поэтому привожу примеры на русском языке, даже если есть альтернативы на английском. Если источник примеров был на английском языке - то делаю ссылку. Если пример был написан самостоятельно - то ссылку не делаю.

Цитата:
Сообщение от skuull Посмотреть сообщение
И зачем "if (formRun" ? Он или есть или мы ловим null reference exception до if
X++:
        FormDataSource formDS = formRun.dataSource();
        if (formRun && formRun.isRootNavigable())
Код был взят с исходной формы FormRunGetLinkAction, плюс добавлено обновление датасорса. Замечание корректное, но ... null reference exception никогда не будет словлено, т.к. панель кнопок всегда привязана к исходной форме. Т.е. здесь просто лишняя проверка на formRun, которая в целом никому не мешает.
__________________
Возможно сделать все. Вопрос времени

Последний раз редактировалось sukhanchik; 30.12.2017 в 01:33.