AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 05.07.2011, 08:25   #1  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,448 / 1792 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
Сейчас задумался о том как можно гарантированно обезопасить себя от выполнения insert при выполнении груповых операций. Ведь если в следующей версии появится новая фишка со своим скипом, то везде прийдётся устанавливать ещё на один skip больше

Идея такая. Добавить в самое начало метода insert проверку
X++:
if (this.skipDataMethods())
{
    super();
    return;
}

Последний раз редактировалось S.Kuskov; 05.07.2011 в 08:38.
За это сообщение автора поблагодарили: Logger (3).
Старый 05.07.2011, 08:34   #2  
sukhanchik is offline
sukhanchik
Administrator
Аватар для sukhanchik
MCBMSS
Злыдни
Лучший по профессии 2015
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,342 / 3563 (125) ++++++++++
Регистрация: 13.06.2004
Адрес: Москва
Цитата:
Сообщение от S.Kuskov Посмотреть сообщение
Сейчас задумался о том как можно гарантированно обезопасить себя от выполнения insert при выполнении груповых операций

Идея такая. Добавить в самое начало метода insert проверку
X++:
if (this.skipDataMethods())
{
    this.doInsert()
    return;
}
Эээ метода skipInsertMethod нет. Метод skipDeleteMethod был уже давно признан устаревшим (хотя он мог и работать). Но проверка логичная, если только этот флаг (skipDataMethods) остается включен в insert (не сбрасывается ядром по пути).
И еще. Зачем делать this.doInsert(), когда достаточно написать super() ?
__________________
Возможно сделать все. Вопрос времени

Последний раз редактировалось sukhanchik; 05.07.2011 в 08:40.
За это сообщение автора поблагодарили: S.Kuskov (1).
Старый 25.04.2012, 18:17   #3  
Logger is offline
Logger
Участник
Лучший по профессии 2015
Лучший по профессии 2014
 
3,983 / 3273 (117) ++++++++++
Регистрация: 12.10.2004
Адрес: Москва
Записей в блоге: 2
Цитата:
Сообщение от S.Kuskov Посмотреть сообщение
Сейчас задумался о том как можно гарантированно обезопасить себя от выполнения insert при выполнении груповых операций. Ведь если в следующей версии появится новая фишка со своим скипом, то везде прийдётся устанавливать ещё на один skip больше

Идея такая. Добавить в самое начало метода insert проверку
X++:
if (this.skipDataMethods())
{
    super();
    return;
}
Спасибо.
Такой способ, пожалуй, самый правильный.

А вообще, получается ядро криво работает. Никогда нельзя быть уверенным что твой скип метода insert() гарантированно отработает ( а как правило именно это и нужно - гарантировать пропуск вызова Insert() ). Приходится добавлять такие костыли на X++.

Ну хорошо что их легко и быстро можно добавить.
Теги
recordinsertlist, skipdatamethods

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
axzaptech: RecordSortedList and RecordInsertList Blog bot DAX Blogs 0 28.01.2011 23:14
Ошибка в логе при установке клиента AX 2009 sao DAX: Администрирование 9 04.02.2010 11:56
Будьте осторожны с RecordInsertList miklenew DAX: Программирование 6 20.05.2008 15:39
Ошибка: Сессия работы на сервере AOS прервана... Atani DAX: Программирование 6 09.08.2007 09:28
Русская локализация Axapta 3 ? SlavaK DAX: Администрирование 59 01.07.2003 22:38
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра
Комбинированный вид Комбинированный вид

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 00:28.