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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 08.05.2008, 19:36   #6  
Hyper is offline
Hyper
Участник
Соотечественники
 
163 / 29 (1) +++
Регистрация: 09.10.2003
:)
Цитата:
Сообщение от Volodymyr Посмотреть сообщение
Интересно, можно ли как то в селекте выбрать линии, которые точно не проапдейтятся другим батчем?
Вторым батчем пойти задом наперед.
X++:
run()
{
    Trans   trans;
    Trans   buffer;
    boolean reversed;
    ;
    
    try
    {
        select trans
            order by RecId asc
            where trans.open;

        while (trans)
        {
            buffer = Trans::find(trans.recid);
            
            if (!buffer.open)
            {
                if (!reversed)
                {
                    reversed = true;
                    
                    select trans
                        order by RecId desc
                        where trans.open;
                        
                    continue;
                }
                else
                {
                    break;
                }
            }
                
            ttsbegin;
            buffer.selectForUpdate(true);
            buffer.open = false;
            buffer.doUpdate();
            .......
            buffer.update()
            ttscommit;
            
            next trans;
        }
    }
    
    catch (Exception::Deadlock)
    {
        retry;
    }
    
    catch (Exception::UpdateConflict)
    {
        retry;
    }
}
Третий батч просто вылетит.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Невозможно выполнить команду языка определения данных в () iHomer13 DAX: Программирование 8 18.07.2008 10:56
Стандартный импорт данных. Обновление sparur DAX: Функционал 0 24.03.2008 19:07
Распределенная база данных на основе View Владимир Максимов DAX: Программирование 27 04.09.2007 13:21
Введение в Аксапту Роман Кошелев DAX: Прочие вопросы 0 18.12.2001 14:00

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

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

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