Šis raksts attiecas uz Microsoft Dynamics NAV visās valstīs un visu valodu lokalizācijās.
Pazīmes
Pieņemsim, ka izveidojat pārdošanas pasūtījumu, kura laukam Priekšapmaksa% ir iestatīts 100 programmā Microsoft Dynamics NAV 2009. Pēc tam grāmatojiet pārdošanas pasūtījuma priekšapmaksas rēķinu. Pēc tam grāmatojiet sūtījumu daļēji pārdošanas pasūtījumam. Šādā situācijā, grāmatojot rēķinu par pārdošanas pasūtījumu, tiek parādīts šāds kļūdas ziņojums:
Piezīme
Summai (viet.val.) ir jābūt tādai pašai zīmei kā summai kopumā. Žurnāla rindiņa.
Šī problēma rodas arī tad, kad grāmatojat rēķinu par daļēji nosūtītu pirkšanas pasūtījumu, kurā lauka Priekšapmaksa% iestatījums ir 100.
Šī problēma rodas šādos produktos:
- Microsoft Dynamics NAV 2009 R2
- Microsoft Dynamics NAV 2009 1. servisa pakotne
Risinājums
Informācija par labojumfailu
Atbalstīts labojumfails tagad ir pieejams no Microsoft. Tomēr tas ir paredzēts tikai šajā rakstā aprakstītās problēmas novēršanai. Lietojiet to tikai sistēmām, kurās rodas šī konkrētā problēma. Šim labojumfailam var tikt veiktas papildu pārbaudes. Tāpēc, ja šī problēma jūs nopietni neietekmē, ieteicams gaidīt nākamo Microsoft Dynamics NAV 2009 servisa pakotni vai nākamo Microsoft Dynamics NAV versiju, kurā ir šis labojumfails.
Piezīme Īpašos gadījumos maksa, kas parasti tiek piemērota par atbalsta zvaniem, var tikt atcelta, ja Microsoft Dynamics un saistīto produktu tehniskā atbalsta speciālists nosaka, ka problēma tiks novērsta, instalējot noteiktu atjauninājumu. Parasti atbalsta izmaksas attiecas uz jautājumiem par papildu atbalstu un problēmām, kas neskar specifisko atjauninājumu apspriešanu.
Informācija par instalāciju
Microsoft sniedz programmēšanas piemērus tikai ilustrācijai, bez tiešas vai netiešas garantijas. Tas ietver, bet neaprobežojas ar netiešām garantijām par piemērotību pārdošanai vai piemērotībai noteiktam mērķim. Šajā rakstā tiek pieņemts, ka pārzināt demonstrējamo programmēšanas valodu un rīkus, kas tiek izmantoti procedūru izveidei un atkļūdošanai. Microsoft atbalsta inženieri var palīdzēt izskaidrot konkrētās procedūras funkcionalitāti, bet viņi šos piemērus nemodificēs, lai nodrošinātu papildu funkcionalitāti vai veidotu procedūras, kas atbilst jūsu specifiskajām prasībām.
Piezīme Pirms šī labojumfaila instalēšanas pārliecinieties, vai visi Microsoft Navision klienta lietotāji ir atteikušies no sistēmas. Tas ietver Microsoft Navision lietojumprogrammu pakalpojumu (NAS) klienta lietotājus. Jūs esat vienīgais klienta lietotājs, kurš ir pieteicies, ieviešot šo labojumfailu.
Lai ieviestu šo labojumfailu, ir nepieciešama izstrādātāja licence.
Iesakām lietotāja kontam logā Windows pieteikšanās vai datu bāzes pieteikšanās logā piešķirt lomas ID "SUPER". Ja lietotāja kontam nevar piešķirt "SUPER" lomas ID, jums ir jāpārbauda, vai lietotāja kontam ir šādas atļaujas:
- Modificēt objektu, kuru mainīsit.
- Izpildes atļauja sistēmas objekta ID 5210 un sistēmas objekta ID 9015.
Piezīme. Jums nav tiesību uz datu krātuvēm, ja vien jums nav jāveic datu labošana.
Koda izmaiņas
Piezīme Pirms labojumu lietošanas ražošanas datoros vienmēr pārbaudiet koda labojumus kontrolētā vidē.
Lai atrisinātu šo problēmu, veiciet tālāk norādītās darbības.
Mainiet kodu CalcVATAmountLines@35 procedūrā tabulā "Pārdošanas rinda" (37) šādi:
Esošais kods... END ELSE BEGIN CASE "VAT Calculation Type" OF "VAT Calculation Type"::"Normal VAT", "VAT Calculation Type"::"Reverse Charge VAT": BEGIN "VAT Base" := "Line Amount" - "Invoice Discount Amount"; "VAT Amount" := "VAT Difference" + ROUND( PrevVatAmountLine."VAT Amount" + "VAT Base" * "VAT %" / 100 * (1 - SalesHeader."VAT Base Discount %" / 100), Currency."Amount Rounding Precision",Currency.VATRoundingDirection); "Amount Including VAT" := "Line Amount" - "Invoice Discount Amount" + "VAT Amount"; IF Positive THEN PrevVatAmountLine.INIT // Delete the following lines. ELSE BEGIN PrevVatAmountLine := VATAmountLine; PrevVatAmountLine."VAT Amount" := ROUND(PrevVatAmountLine."VAT Amount" - "VAT Base" * "VAT %" / 100 * (1 - SalesHeader."VAT Base Discount %" / 100), Currency."Amount Rounding Precision",Currency.VATRoundingDirection); END; // End of the lines. ...Aizstāšanas kods
... END ELSE BEGIN CASE "VAT Calculation Type" OF "VAT Calculation Type"::"Normal VAT", "VAT Calculation Type"::"Reverse Charge VAT": BEGIN "VAT Base" := "Line Amount" - "Invoice Discount Amount"; "VAT Amount" := "VAT Difference" + ROUND( PrevVatAmountLine."VAT Amount" + "VAT Base" * "VAT %" / 100 * (1 - SalesHeader."VAT Base Discount %" / 100), Currency."Amount Rounding Precision",Currency.VATRoundingDirection); "Amount Including VAT" := "Line Amount" - "Invoice Discount Amount" + "VAT Amount"; IF Positive THEN PrevVatAmountLine.INIT // Add the following lines. ELSE IF NOT "Includes Prepayment" THEN BEGIN PrevVatAmountLine := VATAmountLine; PrevVatAmountLine."VAT Amount" := "VAT Base" * "VAT %" / 100 * (1 - SalesHeader."VAT Base Discount %" / 100); PrevVatAmountLine."VAT Amount" := PrevVatAmountLine."VAT Amount" - ROUND(PrevVatAmountLine."VAT Amount",Currency."Amount Rounding Precision",Currency.VATRoundingDirection); END; // End of the lines. ...Mainiet kodu CalcVATAmountLines@24 procedūrā tabulā "Iegādes rinda" (39) šādi:
Esošais kods... CASE "VAT Calculation Type" OF "VAT Calculation Type"::"Normal VAT", "VAT Calculation Type"::"Reverse Charge VAT": BEGIN "VAT Base" := "Line Amount" - "Invoice Discount Amount"; "VAT Amount" := "VAT Difference" + ROUND( PrevVatAmountLine."VAT Amount" + "VAT Base" * "VAT %" / 100 * (1 - PurchHeader."VAT Base Discount %" / 100), Currency."Amount Rounding Precision",Currency.VATRoundingDirection); "Amount Including VAT" := "Line Amount" - "Invoice Discount Amount" + "VAT Amount"; IF Positive THEN PrevVatAmountLine.INIT // Delete the following lines. ELSE BEGIN PrevVatAmountLine := VATAmountLine; PrevVatAmountLine."VAT Amount" := "VAT Base" * "VAT %" / 100 * (1 - PurchHeader."VAT Base Discount %" / 100); PrevVatAmountLine."VAT Amount" := PrevVatAmountLine."VAT Amount" - ROUND(PrevVatAmountLine."VAT Amount",Currency."Amount Rounding Precision",Currency.VATRoundingDirection); END; // End of the lines. ...Aizstāšanas kods
... CASE "VAT Calculation Type" OF "VAT Calculation Type"::"Normal VAT", "VAT Calculation Type"::"Reverse Charge VAT": BEGIN "VAT Base" := "Line Amount" - "Invoice Discount Amount"; "VAT Amount" := "VAT Difference" + ROUND( PrevVatAmountLine."VAT Amount" + "VAT Base" * "VAT %" / 100 * (1 - PurchHeader."VAT Base Discount %" / 100), Currency."Amount Rounding Precision",Currency.VATRoundingDirection); "Amount Including VAT" := "Line Amount" - "Invoice Discount Amount" + "VAT Amount"; IF Positive THEN PrevVatAmountLine.INIT // Add the following lines. ELSE IF NOT "Includes Prepayment" THEN BEGIN PrevVatAmountLine := VATAmountLine; PrevVatAmountLine."VAT Amount" := "VAT Base" * "VAT %" / 100 * (1 - PurchHeader."VAT Base Discount %" / 100); PrevVatAmountLine."VAT Amount" := PrevVatAmountLine."VAT Amount" - ROUND(PrevVatAmountLine."VAT Amount",Currency."Amount Rounding Precision",Currency.VATRoundingDirection); END; // End of the lines. ...Mainiet kodu OnRun trigerī "Sales-Post" codeunit (80) šādi:
Esošs kods 1... RemQtyToBeInvoiced := RemQtyToBeInvoiced - QtyToBeInvoiced; RemQtyToBeInvoicedBase := RemQtyToBeInvoicedBase - QtyToBeInvoicedBase; ReturnRcptLine."Quantity Invoiced" := ReturnRcptLine."Quantity Invoiced" + QtyToBeInvoiced; ReturnRcptLine."Qty. Invoiced (Base)" := ReturnRcptLine."Qty. Invoiced (Base)" + QtyToBeInvoicedBase; ReturnRcptLine."Return Qty. Rcd. Not Invd." := ReturnRcptLine.Quantity - ReturnRcptLine."Quantity Invoiced"; ReturnRcptLine.MODIFY; IF SalesLine.Type = SalesLine.Type::Item THEN PostItemJnlLine( SalesLine, 0,0, QtyToBeInvoiced, QtyToBeInvoicedBase, // Delete the following line. {ReturnRcptLine."Item Rcpt. Entry No."} ItemEntryRelation."Item Entry No.",'',TempInvoicingSpecification); IF TrackingSpecificationExists THEN EndLoop := (TempInvoicingSpecification.NEXT = 0) ELSE EndLoop := (ReturnRcptLine.NEXT = 0) OR (ABS(RemQtyToBeInvoiced) <= ABS(SalesLine."Return Qty. to Receive")); UNTIL EndLoop; END ELSE ERROR( Text025, SalesLine."Return Receipt Line No.",SalesLine."Return Receipt No."); END; ...Nomaiņas kods 1
... RemQtyToBeInvoiced := RemQtyToBeInvoiced - QtyToBeInvoiced; RemQtyToBeInvoicedBase := RemQtyToBeInvoicedBase - QtyToBeInvoicedBase; ReturnRcptLine."Quantity Invoiced" := ReturnRcptLine."Quantity Invoiced" + QtyToBeInvoiced; ReturnRcptLine."Qty. Invoiced (Base)" := ReturnRcptLine."Qty. Invoiced (Base)" + QtyToBeInvoicedBase; ReturnRcptLine."Return Qty. Rcd. Not Invd." := ReturnRcptLine.Quantity - ReturnRcptLine."Quantity Invoiced"; ReturnRcptLine.MODIFY; IF SalesLine.Type = SalesLine.Type::Item THEN PostItemJnlLine( SalesLine, 0,0, QtyToBeInvoiced, QtyToBeInvoicedBase, ItemEntryRelation."Item Entry No.",'',TempInvoicingSpecification); IF TrackingSpecificationExists THEN EndLoop := (TempInvoicingSpecification.NEXT = 0) ELSE EndLoop := (ReturnRcptLine.NEXT = 0) OR (ABS(RemQtyToBeInvoiced) <= ABS(SalesLine."Return Qty. to Receive")); UNTIL EndLoop; END ELSE ERROR( Text025, SalesLine."Return Receipt Line No.",SalesLine."Return Receipt No."); END; ...Esošs kods 2
... RemQtyToBeInvoiced := RemQtyToBeInvoiced - QtyToBeInvoiced; RemQtyToBeInvoicedBase := RemQtyToBeInvoicedBase - QtyToBeInvoicedBase; SalesShptLine."Quantity Invoiced" := SalesShptLine."Quantity Invoiced" - QtyToBeInvoiced; SalesShptLine."Qty. Invoiced (Base)" := SalesShptLine."Qty. Invoiced (Base)" - QtyToBeInvoicedBase; SalesShptLine."Qty. Shipped Not Invoiced" := SalesShptLine.Quantity - SalesShptLine."Quantity Invoiced"; SalesShptLine.MODIFY; IF SalesLine.Type = SalesLine.Type::Item THEN PostItemJnlLine( SalesLine, 0,0, QtyToBeInvoiced, QtyToBeInvoicedBase, // Delete the following line. {SalesShptLine."Item Shpt. Entry No."} ItemEntryRelation."Item Entry No.",'',TempInvoicingSpecification); IF TrackingSpecificationExists THEN EndLoop := (TempInvoicingSpecification.NEXT = 0) ELSE EndLoop := (SalesShptLine.NEXT = 0) OR (ABS(RemQtyToBeInvoiced) <= ABS(SalesLine."Qty. to Ship")) UNTIL EndLoop; END ELSE ERROR( Text026, SalesLine."Shipment Line No.",SalesLine."Shipment No."); END;Nomaiņas kods 2
... RemQtyToBeInvoiced := RemQtyToBeInvoiced - QtyToBeInvoiced; RemQtyToBeInvoicedBase := RemQtyToBeInvoicedBase - QtyToBeInvoicedBase; SalesShptLine."Quantity Invoiced" := SalesShptLine."Quantity Invoiced" - QtyToBeInvoiced; SalesShptLine."Qty. Invoiced (Base)" := SalesShptLine."Qty. Invoiced (Base)" - QtyToBeInvoicedBase; SalesShptLine."Qty. Shipped Not Invoiced" := SalesShptLine.Quantity - SalesShptLine."Quantity Invoiced"; SalesShptLine.MODIFY; IF SalesLine.Type = SalesLine.Type::Item THEN PostItemJnlLine( SalesLine, 0,0, QtyToBeInvoiced, QtyToBeInvoicedBase, ItemEntryRelation."Item Entry No.",'',TempInvoicingSpecification); IF TrackingSpecificationExists THEN EndLoop := (TempInvoicingSpecification.NEXT = 0) ELSE EndLoop := (SalesShptLine.NEXT = 0) OR (ABS(RemQtyToBeInvoiced) <= ABS(SalesLine."Qty. to Ship")) UNTIL EndLoop; END ELSE ERROR( Text026, SalesLine."Shipment Line No.",SalesLine."Shipment No."); END; ...Mainiet kodu AdjustPrepmtAmountLCY@84 vietējā procedūrā "Tirdzniecības pasts" koda vienībā (80) šādi:
Esošs kods 1... TempPrepmtDeductLCYSalesLine.SETRANGE("Attached to Line No.",PrepmtSalesLine."Line No."); IF TempPrepmtDeductLCYSalesLine.FINDSET(TRUE) THEN REPEAT SalesLine := TempPrepmtDeductLCYSalesLine; SalesLine.FIND; IF SalesLine."Document Type" = SalesLine."Document Type"::Invoice THEN GetSalesOrderLine(SalesLine,SalesLine); DeductionFactor := SalesLine."Prepmt Amt to Deduct" / (SalesLine."Prepmt. Amt. Inv." - SalesLine."Prepmt Amt Deducted"); ...Nomaiņas kods 1
... TempPrepmtDeductLCYSalesLine.SETRANGE("Attached to Line No.",PrepmtSalesLine."Line No."); IF TempPrepmtDeductLCYSalesLine.FINDSET(TRUE) THEN REPEAT SalesLine := TempPrepmtDeductLCYSalesLine; SalesLine.FIND; IF SalesLine."Document Type" = SalesLine."Document Type"::Invoice THEN GetSalesOrderLine(SalesLine,SalesLine); // Add the following line. SalesLine."Prepmt Amt to Deduct" := CalcPrepmtAmtToDeduct(SalesLine); DeductionFactor := SalesLine."Prepmt Amt to Deduct" / (SalesLine."Prepmt. Amt. Inv." - SalesLine."Prepmt Amt Deducted"); ...Esošs kods 2
... IF ABS(TotalPrepmtVATAmtLCYDifference) <= GLSetup."Amount Rounding Precision" THEN TotalPrepmtVATAmtLCYDifference := 0; PrepmtSalesLine."Prepmt. VAT Amount Inv. (LCY)" := TotalPrepmtVATAmtLCYDifference; NewAmountIncludingVAT := PrepmtSalesLine.Amount + TotalPrepmtVATAmtLCY + TotalPrepmtVATAmtLCYDifference; Increment(TotalSalesLineLCY."Amount Including VAT",PrepmtSalesLine."Amount Including VAT" - NewAmountIncludingVAT); PrepmtSalesLine."Amount Including VAT" := NewAmountIncludingVAT; END; END; LOCAL PROCEDURE GetSalesOrderLine@85(VAR SalesOrderLine@1000 : Record 37;SalesLine@1001 : Record 37); ...Nomaiņas kods 2
... IF ABS(TotalPrepmtVATAmtLCYDifference) <= GLSetup."Amount Rounding Precision" THEN TotalPrepmtVATAmtLCYDifference := 0; PrepmtSalesLine."Prepmt. VAT Amount Inv. (LCY)" := TotalPrepmtVATAmtLCYDifference; NewAmountIncludingVAT := PrepmtSalesLine.Amount + TotalPrepmtVATAmtLCY + TotalPrepmtVATAmtLCYDifference; Increment(TotalSalesLineLCY."Amount Including VAT",PrepmtSalesLine."Amount Including VAT" - NewAmountIncludingVAT); // Add the following lines. IF SalesLine."Currency Code" = '' THEN TotalSalesLine."Amount Including VAT" := TotalSalesLineLCY."Amount Including VAT"; // End of the lines. PrepmtSalesLine."Amount Including VAT" := NewAmountIncludingVAT; END; END; // Add the following lines. PROCEDURE CalcPrepmtAmtToDeduct@71(SalesLine@1000 : Record 37) : Decimal; VAR AllowedQtyToInvoice@1001 : Decimal; BEGIN WITH SalesLine DO BEGIN AllowedQtyToInvoice := "Qty. Shipped Not Invoiced"; IF SalesHeader.Ship THEN AllowedQtyToInvoice := AllowedQtyToInvoice + "Qty. to Ship"; IF "Qty. to Invoice" > AllowedQtyToInvoice THEN BEGIN "Qty. to Invoice" := AllowedQtyToInvoice; CalcPrepaymentToDeduct; END; EXIT("Prepmt Amt to Deduct"); END; END; // End of the lines. LOCAL PROCEDURE GetSalesOrderLine@85(VAR SalesOrderLine@1000 : Record 37;SalesLine@1001 : Record 37); ...Mainiet kodu OnRun trigerī kodu koda vienībā "Purch.-Post" (90) šādi:
Esošs kods 1... RemQtyToBeInvoiced := RemQtyToBeInvoiced - QtyToBeInvoiced; RemQtyToBeInvoicedBase := RemQtyToBeInvoicedBase - QtyToBeInvoicedBase; ReturnShptLine."Quantity Invoiced" := ReturnShptLine."Quantity Invoiced" - QtyToBeInvoiced; ReturnShptLine."Qty. Invoiced (Base)" := ReturnShptLine."Qty. Invoiced (Base)" - QtyToBeInvoicedBase; ReturnShptLine."Return Qty. Shipped Not Invd." := ReturnShptLine.Quantity - ReturnShptLine."Quantity Invoiced"; ReturnShptLine.MODIFY; IF PurchLine.Type = PurchLine.Type::Item THEN PostItemJnlLine( PurchLine, 0,0, QtyToBeInvoiced,QtyToBeInvoicedBase, // Delete the following line. {ReturnShptLine."Item Shpt. Entry No."} ItemEntryRelation."Item Entry No.",'',TempInvoicingSpecification); IF TrackingSpecificationExists THEN ...Nomaiņas kods 1
... RemQtyToBeInvoiced := RemQtyToBeInvoiced - QtyToBeInvoiced; RemQtyToBeInvoicedBase := RemQtyToBeInvoicedBase - QtyToBeInvoicedBase; ReturnShptLine."Quantity Invoiced" := ReturnShptLine."Quantity Invoiced" - QtyToBeInvoiced; ReturnShptLine."Qty. Invoiced (Base)" := ReturnShptLine."Qty. Invoiced (Base)" - QtyToBeInvoicedBase; ReturnShptLine."Return Qty. Shipped Not Invd." := ReturnShptLine.Quantity - ReturnShptLine."Quantity Invoiced"; ReturnShptLine.MODIFY; IF PurchLine.Type = PurchLine.Type::Item THEN PostItemJnlLine( PurchLine, 0,0, QtyToBeInvoiced,QtyToBeInvoicedBase, ItemEntryRelation."Item Entry No.",'',TempInvoicingSpecification); IF TrackingSpecificationExists THEN ...Esošs kods 2
... RemQtyToBeInvoiced := RemQtyToBeInvoiced - QtyToBeInvoiced; RemQtyToBeInvoicedBase := RemQtyToBeInvoicedBase - QtyToBeInvoicedBase; PurchRcptLine."Quantity Invoiced" := PurchRcptLine."Quantity Invoiced" + QtyToBeInvoiced; PurchRcptLine."Qty. Invoiced (Base)" := PurchRcptLine."Qty. Invoiced (Base)" + QtyToBeInvoicedBase; PurchRcptLine."Qty. Rcd. Not Invoiced" := PurchRcptLine.Quantity - PurchRcptLine."Quantity Invoiced"; PurchRcptLine.MODIFY; IF PurchLine.Type = PurchLine.Type::Item THEN PostItemJnlLine( PurchLine, 0,0, QtyToBeInvoiced,QtyToBeInvoicedBase, // Delete the following line. {PurchRcptLine."Item Rcpt. Entry No."} ItemEntryRelation."Item Entry No.",'',TempInvoicingSpecification); IF TrackingSpecificationExists THEN ...Nomaiņas kods 2
... RemQtyToBeInvoiced := RemQtyToBeInvoiced - QtyToBeInvoiced; RemQtyToBeInvoicedBase := RemQtyToBeInvoicedBase - QtyToBeInvoicedBase; PurchRcptLine."Quantity Invoiced" := PurchRcptLine."Quantity Invoiced" + QtyToBeInvoiced; PurchRcptLine."Qty. Invoiced (Base)" := PurchRcptLine."Qty. Invoiced (Base)" + QtyToBeInvoicedBase; PurchRcptLine."Qty. Rcd. Not Invoiced" := PurchRcptLine.Quantity - PurchRcptLine."Quantity Invoiced"; PurchRcptLine.MODIFY; IF PurchLine.Type = PurchLine.Type::Item THEN PostItemJnlLine( PurchLine, 0,0, QtyToBeInvoiced,QtyToBeInvoicedBase, ItemEntryRelation."Item Entry No.",'',TempInvoicingSpecification); IF TrackingSpecificationExists THEN ...Mainiet kodu AdjustPrepmtAmountLCY@84 vietējā procedūrā koda vienībā "Purch.-Post" (90) šādi:
Esošs kods 1... TempPrepmtDeductLCYPurchLine.SETRANGE("Attached to Line No.",PrepmtPurchLine."Line No."); IF TempPrepmtDeductLCYPurchLine.FINDSET(TRUE) THEN REPEAT PurchLine := TempPrepmtDeductLCYPurchLine; PurchLine.FIND; IF PurchLine."Document Type" = PurchLine."Document Type"::Invoice THEN GetPurchOrderLine(PurchLine,PurchLine); DeductionFactor := PurchLine."Prepmt Amt to Deduct" / (PurchLine."Prepmt. Amt. Inv." - PurchLine."Prepmt Amt Deducted"); PrepmtAmtLCYDifference := ...Nomaiņas kods 1
... TempPrepmtDeductLCYPurchLine.SETRANGE("Attached to Line No.",PrepmtPurchLine."Line No."); IF TempPrepmtDeductLCYPurchLine.FINDSET(TRUE) THEN REPEAT PurchLine := TempPrepmtDeductLCYPurchLine; PurchLine.FIND; IF PurchLine."Document Type" = PurchLine."Document Type"::Invoice THEN GetPurchOrderLine(PurchLine,PurchLine); // Add the following line. PurchLine."Prepmt Amt to Deduct" := CalcPrepmtAmtToDeduct(PurchLine); DeductionFactor := PurchLine."Prepmt Amt to Deduct" / (PurchLine."Prepmt. Amt. Inv." - PurchLine."Prepmt Amt Deducted"); PrepmtAmtLCYDifference := ...Esošs kods 2
... IF ABS(TotalPrepmtVATAmtLCYDifference) <= GLSetup."Amount Rounding Precision" THEN TotalPrepmtVATAmtLCYDifference := 0; PrepmtPurchLine."Prepmt. VAT Amount Inv. (LCY)" := -TotalPrepmtVATAmtLCYDifference; NewAmountIncludingVAT := PrepmtPurchLine.Amount - (TotalPrepmtVATAmtLCY + TotalPrepmtVATAmtLCYDifference); Increment(TotalPurchLineLCY."Amount Including VAT",-(PrepmtPurchLine."Amount Including VAT" - NewAmountIncludingVAT)); PrepmtPurchLine."Amount Including VAT" := NewAmountIncludingVAT; END; END; LOCAL PROCEDURE GetPurchOrderLine@85(VAR PurchOrderLine@1000 : Record 39;PurchLine@1001 : Record 39); ...Nomaiņas kods 2
... IF ABS(TotalPrepmtVATAmtLCYDifference) <= GLSetup."Amount Rounding Precision" THEN TotalPrepmtVATAmtLCYDifference := 0; PrepmtPurchLine."Prepmt. VAT Amount Inv. (LCY)" := -TotalPrepmtVATAmtLCYDifference; NewAmountIncludingVAT := PrepmtPurchLine.Amount - (TotalPrepmtVATAmtLCY + TotalPrepmtVATAmtLCYDifference); Increment(TotalPurchLineLCY."Amount Including VAT",-(PrepmtPurchLine."Amount Including VAT" - NewAmountIncludingVAT)); // Add the following lines. IF PurchLine."Currency Code" = '' THEN TotalPurchLine."Amount Including VAT" := TotalPurchLineLCY."Amount Including VAT"; // End of the lines. PrepmtPurchLine."Amount Including VAT" := NewAmountIncludingVAT; END; END; // Add the following lines. LOCAL PROCEDURE CalcPrepmtAmtToDeduct@71(PurchLine@1000 : Record 39) : Decimal; VAR AllowedQtyToInvoice@1001 : Decimal; BEGIN WITH PurchLine DO BEGIN AllowedQtyToInvoice := "Qty. Rcd. Not Invoiced"; IF PurchHeader.Receive THEN AllowedQtyToInvoice := AllowedQtyToInvoice + "Qty. to Receive"; IF "Qty. to Invoice" > AllowedQtyToInvoice THEN BEGIN "Qty. to Invoice" := AllowedQtyToInvoice; CalcPrepaymentToDeduct; END; EXIT("Prepmt Amt to Deduct"); END; END; // End of the lines. LOCAL PROCEDURE GetPurchOrderLine@85(VAR PurchOrderLine@1000 : Record 39;PurchLine@1001 : Record 39); ...
Priekšnosacījumi
Lai lietotu šo labojumfailu, ir jābūt instalētam vienam no šiem produktiem:
- Microsoft Dynamics NAV 2009 R2
- Microsoft Dynamics NAV 2009 1. servisa pakotne
Noņemšanas informācija
Šo labojumfailu nevar noņemt.
Statuss
Microsoft apstiprināja, ka šī ir problēma Microsoft produktos, kas norādīti sadaļā "attiecas uz".
Piezīme Šis ir "ĀTRĀS PUBLICĒŠANAS" raksts, kas izveidots tieši Microsoft atbalsta organizācijā. Šeit ietvertā informācija tiek sniegta tāda, kāda tā ir, reaģējot uz jauniem jautājumiem. Ātrās pieejamības rezultātā materiālos var būt drukas kļūdas, un tos var pārskatīt jebkurā laikā bez iepriekšēja brīdinājuma. Citus apsvērumus skatiet lietošanas nosacījumos .