30.05.2012, 18:29 | #1 |
Administrator
|
берем счет, оплату, применяем и оп-ля!
--------------------------- Microsoft Dynamics NAV Classic --------------------------- Для товара ХХХХХХХ в Строка продажи включена трассировка товаров. Необходимо удалить Строка продажи и строки трассировки. --------------------------- OK --------------------------- как-то настолько из разных опер, что аж интересно стало! вот трассировка функций (читать снизу вверх, есесьно): Codeunit 99000845 Reservation Management\DeleteReservEntries2(DeleteAll,DownToQuantity,ReservEntry) Codeunit 99000845 Reservation Management\DeleteReservEntries(DeleteAll,DownToQuantity) Codeunit 99000832 Sales Line-Reserve\VerifyChange(NewSalesLine,OldSalesLine) Table 37 Строка продажи\Type - OnValidate() Codeunit 80 Sales-Post\UpdateSalesLines(SalesHeader,Amount,DocNo,CurrencyCode,CurrencyCode2,CorrType) Codeunit 80 Sales-Post\CreateCorrDoc(DtldCVLedgEntryBuf,PrepaymentAdjustment) Codeunit 12412 AmtDiffManagement\PrepmtDiffProcessing(Unapply,PreviewMode) Codeunit 12 Gen. Jnl.-Post Line\FinishCodeunit() Codeunit 12 Gen. Jnl.-Post Line\CustPostApplyCustLedgEntry(GenJnlLinePostApply,CustLedgEntryPostApply) Codeunit 226 CustEntry-Apply Posted Entries\OnRun() Form 232 Применение операций клиента\<Control34> - OnPush() Codeunit 226 CustEntry-Apply Posted Entries\ApplyCustEntryformEntry(ApplyingCustLedgEntry) Form 25 Книга операций по клиентам\<Control36> - OnPush() может тупо отключить Codeunit 12412 AmtDiffManagement, PrepmtDiffProcessing?.. Майкрософт! ау! что там не так? что он делает? зачем он создает документы коррекции? |
|
31.05.2012, 00:16 | #2 |
Moderator
|
не могу не согласиться, что ошибка странная\дурацкая, но можно ли уточнение, то была оплата или предоплата (аванс) ?
Если то был аванс, то хотя бы это объясняет зачем создаются документы коррекции. |
|
31.05.2012, 10:28 | #3 |
Administrator
|
да, это аванс
|
|
04.06.2012, 14:42 | #4 |
Участник
|
Вот это обновление используется - PS60322?
|
|
07.06.2012, 10:21 | #5 |
Участник
|
Цитата:
Сообщение от Sancho
берем счет, оплату, применяем и оп-ля!
--------------------------- Microsoft Dynamics NAV Classic --------------------------- Для товара ХХХХХХХ в Строка продажи включена трассировка товаров. Необходимо удалить Строка продажи и строки трассировки. --------------------------- OK --------------------------- как-то настолько из разных опер, что аж интересно стало! вот трассировка функций (читать снизу вверх, есесьно): Codeunit 99000845 Reservation Management\DeleteReservEntries2(DeleteAll,DownToQuantity,ReservEntry) Codeunit 99000845 Reservation Management\DeleteReservEntries(DeleteAll,DownToQuantity) Codeunit 99000832 Sales Line-Reserve\VerifyChange(NewSalesLine,OldSalesLine) Table 37 Строка продажи\Type - OnValidate() Codeunit 80 Sales-Post\UpdateSalesLines(SalesHeader,Amount,DocNo,CurrencyCode,CurrencyCode2,CorrType) Codeunit 80 Sales-Post\CreateCorrDoc(DtldCVLedgEntryBuf,PrepaymentAdjustment) Codeunit 12412 AmtDiffManagement\PrepmtDiffProcessing(Unapply,PreviewMode) Codeunit 12 Gen. Jnl.-Post Line\FinishCodeunit() Codeunit 12 Gen. Jnl.-Post Line\CustPostApplyCustLedgEntry(GenJnlLinePostApply,CustLedgEntryPostApply) Codeunit 226 CustEntry-Apply Posted Entries\OnRun() Form 232 Применение операций клиента\<Control34> - OnPush() Codeunit 226 CustEntry-Apply Posted Entries\ApplyCustEntryformEntry(ApplyingCustLedgEntry) Form 25 Книга операций по клиентам\<Control36> - OnPush() может тупо отключить Codeunit 12412 AmtDiffManagement, PrepmtDiffProcessing?.. Майкрософт! ау! что там не так? что он делает? зачем он создает документы коррекции? А документы коррекции создаются в таблице 5802. |
|
14.08.2012, 16:25 | #6 |
Участник
|
Добрый день!
Тоже столкнулась с такой проблемой (и тоже сильно удивилась). Трассировка не изменялась в карточке товара - товар был, есть и будет трассируемым. Обновление PS60322 не установлено - оно точно лечит эту проблему? |
|
10.10.2013, 15:15 | #7 |
Участник
|
Лечится KB2682803
ссылко: https://mbs2.microsoft.com/Knowledge...;EN-US;2682803 Create a new function in the Sales Line-Reserve codeunit (99000832) as follows: PROCEDURE SetDeleteItemTracking@1210000(NewDeleteItemTracking: Boolean); BEGIN DeleteItemTracking := NewDeleteItemTracking; END; Change the code in the UpdateSalesLines function in the Sales-Post codeunit (80) as follows: Existing code ... IF RcptShptIsFound THEN BEGIN CostAdjmt := TRUE; ... Replacement code ... IF RcptShptIsFound THEN BEGIN // Add the following lines. IF ReserveSalesLine.ReservEntryExist(SalesLine) THEN BEGIN ReserveSalesLine.SetDeleteItemTracking(TRUE); ReserveSalesLine.DeleteLine(SalesLine); END; // End of the added lines. CostAdjmt := TRUE; ... |
|
15.10.2013, 10:06 | #8 |
Участник
|
кстати, при применении покупок подобное сообщение вываливается.
Так что в 90 CU Purch.-Post нужно провести аналогичные изменения, IF RcptShptIsFound THEN BEGIN // 2682803 //KB 2682803 Add the following lines. IF ReservePurchLine.ReservEntryExist(PurchLine) THEN BEGIN ReservePurchLine.SetDeleteItemTracking(TRUE); ReservePurchLine.DeleteLine(PurchLine); END; //KB 2682803 End of the added lines. CostAdjmt := TRUE; |
|
08.11.2013, 14:50 | #9 |
Участник
|
кстати, после этих изменений еще ошибка при проверке распределения издержек, в CU80
// check if all ILEs exist QtyNeeded := SalesLine2."Qty. to Assign"; TempItemChargeAssgntSales.SETRANGE("Document Line No.",SalesLine2."Line No."); IF TempItemChargeAssgntSales.FINDSET THEN REPEAT IF (TempItemChargeAssgntSales."Applies-to Doc. Type" <> SalesLine2."Document Type") AND (TempItemChargeAssgntSales."Applies-to Doc. No." <> SalesLine2."Document No.") OR THEN QtyNeeded := QtyNeeded - TempItemChargeAssgntSales."Qty. to Assign" ELSE BEGIN SalesLine3.GET( TempItemChargeAssgntSales."Applies-to Doc. Type", TempItemChargeAssgntSales."Applies-to Doc. No.", TempItemChargeAssgntSales."Applies-to Doc. Line No."); IF ItemLedgerEntryExist(SalesLine3) THEN QtyNeeded := QtyNeeded - TempItemChargeAssgntSales."Qty. to Assign"; END; UNTIL TempItemChargeAssgntSales.NEXT = 0; должно по идее идти по первой ветке в условии, но так как Номер документа корректикровки оно создает такой же что и у счета, то соответственно валится на SalesLine3.Get, потому что распределение с типом применяемого документа = Отгрузка хотя может у меня нет каких то обновлений или настроек, подскажите, если что не так думаю |
|
13.11.2013, 12:24 | #10 |
Участник
|
текст ошибки выложи
|
|
14.11.2013, 16:13 | #11 |
Участник
|
текст ошибки такой же когда пытается сгетнуть несуществующую запись, так как в принципе не может быть строки в 37 таблице с типом = Отгрузка
Строка Продажи не существует Идентификационные поля и значения Тип Документа = 6, Номер документа = 'xxx', Номер строки = '10000' |
|