30.07.2013, 10:18 | #1 |
Участник
|
Классы LedgerJournalTransEntityManager, LedgerJournalTransEntityInMemRollback, LedgerJournTransEntityFrmDatEventManager
Добрый день всем.
Кто-нибудь разбирал работу классов LedgerJournalTransEntityManager, LedgerJournalTransEntityInMemRollback, LedgerJournTransEntityFrmDatEventManager ? Сегодня пришлось поковыряться. Не покидает ощущение какой-то искусственности всех конструкций. Код живет на sys слое, а в комментах ссылаются на баги ядра которые обходят при помощи этих классов. Неужели пофиксить нельзя было. Или прикладная разработка и разработчики ядра живут в параллельных мирах ? Некоторые места совсем странные. Например \Classes\LedgerJournalTransEntityInMemRollback\performRollbackForAbortedDelete X++: // The cursor has been changed by the kernel, but the delete was unsuccessful. Re-read the records // and point to the correct buffer. ledgerJournalTrans_DS.research(); ledgerJournalTrans_DS.findRecord(ledgerJournalTransSnapshot); // Get the cursors ledgerJournalTransCursor = ledgerJournalTrans_DS.cursor(); или тут : \Data Dictionary\Tables\LedgerJournalTrans\Methods\copyTo X++: // Generate the list of system fields contained by this table. systemFieldIds.add(fieldnum(LedgerJournalTrans, RecId)); systemFieldIds.add(fieldnum(LedgerJournalTrans, RecVersion)); systemFieldIds.add(fieldnum(LedgerJournalTrans, DataAreaId)); В общем, осталось ощущение какого-то набора костылей. Неужели нельзя было без этого обойтись. Ядро в конце концов пофиксить если реально никак по-другому. P.S. ax2009 |
|