Показать сообщение отдельно
Старый 13.04.2018, 17:38   #5  
wojzeh is offline
wojzeh
Участник
Аватар для wojzeh
Соотечественники
 
672 / 512 (19) +++++++
Регистрация: 27.04.2006
Адрес: Montreal
Цитата:
Сообщение от ax_mct Посмотреть сообщение
Явно неверно вручную вызывать какой-либо ValidateDelete() в _ds.Delete() вообще.
Я об этом.

А так, да. Баг. Но и код table.ValidateDelete() в _ds.Delete() - это желание доломать

Нечего делать этому методу таблицы на уровне формы. В любом случае.
Если у нас есть foo1() --> foo2() -->foo3() --> foo4() то вызывать foo1() { foo3() } представляется хакерством.
что собственно мешает нам реализовывать любую логику с помощью любых методов, если это не приводит к ошибкам компиляции и времени исполнения? рекурсивных вызовов тут нет, никаких best practice, насколько я помню, на эту тему тоже нет, и работает прекрасно, но только не в случае deleteMarked().

код этот, кстати говоря, стандартный и находится в форме Project WBS в части таблицы Estimates. можете попробовать выбрать несколько строк в ней и нажать "удалить".

не понимаю, как пофиксить этот косяк, ибо явно идёт вызов из недоступного для редактирования класса в методе deleteMarked. надо проверить эффект в D365!
__________________
Felix nihil admirari
За это сообщение автора поблагодарили: ax_mct (5).