|
![]() |
#1 |
Участник
|
А чего это условие то не корректное ? Жаль что полностью код, не вставили из метода с комментарием, а выглядит он вот так :
X++: // There is at least one summary invoice so need to process each invoice separately. // [B]Select all non-summmary invoices[/B]. If no other record exists in CustInvoiceSalesLink // with a different origSalesId then there is only one sales order on the invoice and // therefore it is a non-summary invoice. select sum(EndDisc), sum(InvoiceAmount), sum(SalesBalance), sum(SumMarkup), sum(SumTax) from custInvoiceJour where custInvoiceJour.RefNum == RefNum::SalesOrder notexists join custInvoiceSalesLink where custInvoiceJour.SalesId == custInvoiceSalesLink.SalesId && custInvoiceJour.InvoiceDate == custInvoiceSalesLink.InvoiceDate && custInvoiceJour.InvoiceId == custInvoiceSalesLink.InvoiceId && custInvoiceSalesLink.OrigSalesId != _salesTable.SalesId; Поэтому как мне кажется надо в три запроса добавить условие custInvoiceJour.SalesId = _salesTable.SalesId, которые содержат notexists join в этом методе. Насчет равенства это да, но навскидку пока, быстро не придумал, как выбрать такие накладные без not exists join, Сам метод считает сумму которая в накладных из данного заказа и считает ее так = сумма всех накладных только по этому заказу + доля из накладных где наш заказ включен как один из нескольких. А вообще если не используете ключ отключите его, проблемы уйдут не только в этом методе.
__________________
Sergey Nefedov |
|
|
За это сообщение автора поблагодарили: sukhanchik (4). |
![]() |
#2 |
Administrator
|
А... прошу прощения... Ступил. Да, тогда все логично.
__________________
Возможно сделать все. Вопрос времени |
|
![]() |
#3 |
Участник
|
Добавили условие custInvoiceJour.SalesId = _salesTable.SalesId, всё залетало! Спасибо за совет и поддержку!
|
|
![]() |
#4 |
Участник
|
|
|
Теги |
mcrsalesordertotals |
|
|