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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 29.09.2010, 18:21   #1  
Damn is offline
Damn
Участник
 
436 / 154 (6) ++++++
Регистрация: 28.05.2003
Адрес: в глуши
Ax2009 RU5: класс SysOperationProgressServer
Посмотрев код этого класса я понял что используется он для отображения прогресса выполнения серверных пакетных заданий.
Смутил меня метод new()

X++:
public void new(int _numberOfBars = 1, boolean _bypass=true)
{

    Bypass = _bypass;

    if ( Bypass )
        return;

    // this is the mode to save data to SysProgress table
    // we should use a new SQL connection to avoid been in the same transaction scope as the caller
    conn = new UserConnection();
    progress.setConnection(conn);

    numOfBars = _numberOfBars;


    this.reset();

}
то есть всё будет работать нормально если параметр _bypass будет выставлен в false. А вызовов метода new() с передачей ему такого значения _bypass я не нашёл
Не могу понять в чём тут фишка. Может этот класс пока нельзя использовать ?
__________________
Дмитрий
Старый 29.09.2010, 19:13   #2  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от Damn Посмотреть сообщение
Посмотрев код этого класса я понял что используется он для отображения прогресса выполнения серверных пакетных заданий.
О! Так вот как задается прогресс в пакетных задачах!

Нажмите на изображение для увеличения
Название: 1.PNG
Просмотров: 320
Размер:	156.7 Кб
ID:	6212


Если я правильно понимаю, то Bypass подавляет только GUI-методы.
а incCount, getProgress, showProgressBar вполне работают.

возможно, Bypass оставили для отладки.

Хотя непонятно почему метод setCount экранировали этим Bypass'ом.
__________________
полезное на axForum, github, vk, coub.
Старый 29.09.2010, 22:18   #3  
AndyD is offline
AndyD
Участник
КОРУС Консалтинг
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
2,560 / 2476 (88) +++++++++
Регистрация: 20.08.2005
Сделали базовые классы, которые обладают возможностью сохранять информацию о выполнении, но глобально отключили - ведь на каждом шаге итерации идет запись в базу, что будет тормозить выполнение основного цикла

По видимому, предполагается, что при необходимости можно будет включить запись в своем классе.
Правда, без допиливания RunbaseProgress это не получится. Либо придется напрямую использовать SysOperationProgressServer
__________________
Axapta v.3.0 sp5 kr2
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Ax2009 RU5: Итоги в отчётах, сгруппированные по полям с типом UtcDateTime Damn DAX: Программирование 5 13.09.2010 15:54
AX2009 RU5: невозможно открыть "журнал восстановления НДС"... EVGL DAX: Функционал 8 09.09.2010 23:20
Ax2009 RU5: Не заполняется CreatedDateTime в SysDatabaseLog Damn DAX: Администрирование 2 07.09.2010 15:29
AX2009 RU5: ADORecordSet, вопрос на 16 баллов DSPIC DAX: Программирование 6 01.09.2010 18:19
Проблема с передачей контролов из формы в класс matew DAX: Программирование 0 28.04.2008 17:37

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

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

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 04:25.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.