Показать сообщение отдельно
Старый 16.02.2007, 23:56   #1  
Keen is offline
Keen
Участник
 
4 / 10 (1) +
Регистрация: 06.09.2006
? простейший job уходит в бесконечный цикл
Понадобилось вручную подправить несколько десятков номеров ваучеров в неразнесённых журналах, т.к. из-за копирования из другой компании номера задвоились. Написал левой ногой простенький одноразовый джоб, а он почему-то уходит в бесконечный цикл. Реально записей таких меньше сотни. При отборе непосредственно из LedgerJournalTrans по RecId всё отлично отрабатывает. Где могут крыться грабли? Или я к полуночи пятницы уже просто зверски туплю?

X++:
static void LJ_VoucherRefresh(Args _args)
{
    LedgerJournalTable      ljt;
    LedgerJournalTrans      ljtr;
    int num = 212;
    ;
    ttsbegin;
    while select ljt where ljt.Posted == false
    {
        while select forupdate ljtr where ljtr.JournalNum == ljt.JournalNum
        {
            num++;
            ljtr.Voucher = strfmt("V0000%1", num);
            ljtr.doUpdate();
        }
    }
    ttscommit;
}
P.S. Стоит SP3 Critical Update 1 Build #9.3, билд ядра #1951.2410/514-193.