Цитата:
Сообщение от
petr
А если ответить в тему, то, по-моему, баг в стандартном функционале присутствует в методе: PurchCalcTax_Invoice.initCursor()
Привожу этот метод с моими исправлениями.
select nofetch forupdate vendInvoiceTrans
index hint InvoiceIdx
where vendInvoiceTrans.purchID == vendInvoiceJour.purchId &&
vendInvoiceTrans.invoiceId == vendInvoiceJour.invoiceId &&
vendInvoiceTrans.invoiceDate == vendInvoiceJour.invoiceDate &&
// STM, BugFix, 25.11.2005, kpn, -->
vendInvoiceTrans.InternalInvoiceId == vendInvoiceJour.InternalInvoiceId &&
vendInvoiceTrans.numberSequenceGroup == vendInvoiceJour.numberSequenceGroup;
// STM, BugFix, 25.11.2005, kpn, <--
}
Вот какие бывают совпадения, сегодня поймал аналогичную багу в SalesCalcTax_Invoice\initCursor и впомнил про этот пост

Правда поймать ее имеют шанс далеко не все - те кто обрабатывают накладные с одинаковыми номерами но с разными группами номерных серий
void initCursor()
{;
select nofetch forupdate custInvoiceTrans
index hint InvoiceIdx
where custInvoiceTrans.salesId == custInvoiceJour.salesId &&
custInvoiceTrans.invoiceId == custInvoiceJour.invoiceId &&
custInvoiceTrans.invoiceDate == custInvoiceJour.invoiceDate &&
// фикса, imir, 03.10.06 -->
custInvoiceTrans.numberSequenceGroup == custInvoiceJour.numberSequenceGroup;
// фикса, imir, 03.10.06 <--
}