Тема: LineNum
Показать сообщение отдельно
Старый 26.06.2007, 10:51   #18  
Starling is offline
Starling
Участник
Дети Юза
 
530 / 76 (4) ++++
Регистрация: 20.10.2005
Адрес: Kiev
Цитата:
Сообщение от zinius Посмотреть сообщение
Как они могут получить одинаковый LineNum? ведь первичный ключ должен закрывать эту возможность - JournalNum, LineNum
Могут. Форма CustFreeInvoice. Таблица CustInvoiceLine. Индекс ParentRecIdIdx AllowDuplicate = Yes. Других индексов нет.

Цитата:
Сообщение от mazzy Посмотреть сообщение
Скорее всего, LineNum там все-таки разный, но отличается в пятом-шестом-седьмом знаках. Аксапта показывает округленные значения. Но на сравнение все равно влияют все значящие цифры. Скорее всего, причина бага в другом.
Они были одинаковыми. Вот такой Job
X++:
static void Job157(Args _args)
{
    CustInvoiceLine custInvoiceLine;
    ;
    while select count(ReciD) from custInvoiceLine index hint ParentRecIdIdx group by LineNum
        where custInvoiceLine.ParentRecId == 8484848
    {
        if(custInvoiceLine.RecId > 1)
            warning(strFmt("%1", custInvoiceLine.RecId));
    }

}
Выдавал 2, 3, 7, я думаю в данном случае при group by округления не было.
Цитата:
Сообщение от mazzy Посмотреть сообщение
Скорее всего, причина бага в другом.
После того как job-ом сделали уникальным LineNum в рамках ParentRecId, проблема исчезла.