![]() |
#11 |
Banned
|
Цитата:
Сообщение от mazzy
![]() Как вести разработку с минимальными в долгосрочной перспективе трудозатратами
в условиях, есть куча унаследованного кода И часть кода закрыта от изменения, а платформа предоставляет систему событий и подписок? что должен сделать вендор? что может сделать партнер/заказчик своими силами? https://ievgensaxblog.wordpress.com/...xtension-code/ X++: using System.Reflection; /// <summary> /// Handles events raised by <c>SalesLineTypeEventHandler</c> class. /// </summary> public class SalesLineTypeEventHandler { [PostHandlerFor(classStr(SalesLineType), methodStr(SalesLineType, insert))] public static void SalesLineType_Post_insert(XppPrePostArgs _args) { SalesLineType salesLineType = _args.getThis(); var bindFlags = BindingFlags::Instance | BindingFlags::NonPublic; var field = salesLineType.GetType().GetField("salesLine", bindFlags); SalesLine salesLine = field.GetValue(salesLineType); if (salesLine) { salesLine.MyNewField = 42; salesLine.doUpdate(); } } } ![]() |
|