"Pārdošanas sūtījums [Shipment_No], rindas nr. Kļūdas ziņojums [Line_No] netiek kopēts, jo pilns daudzums grāmatotā dokumenta rindā jau tiek lietots manuāli", palaižot funkciju Kopēt dokumentu daļējā pārdošanas deklarācijā programmatūrā Microsoft Dynamics NAV

Attiecas uz
Dynamics NAV 2009

Šis raksts attiecas uz Microsoft Dynamics NAV visās valstīs un visu valodu lokalizācijās.

Pazīmes

Pieņemsim, ka Microsoft Dynamics NAV dialoglodziņā Pārdošanas & debitoru iestatīšana iespējojat precīzas izmaksu apvēršanas iestatījumu. Šādā situācijā, palaižot kopēšanas dokumentu daļējai pārdošanas deklarācijai, tiek parādīts šāds kļūdas ziņojums:

Piezīme

Pārdošanas sūtījuma Shipment_No, rindas nr. Line_No netiek kopēts, jo pilns daudzums grāmatotā dokumenta rindā jau tiek lietots manuāli.

Šī 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. Tomēr tie nemodificēs šos piemērus, lai nodrošinātu papildu funkcionalitāti vai veidotu procedūras atbilstoši jūsu konkrētajā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.

  1. Dokumenta kopijā Mgt. Codeunit (6620) dzēst šādus globālos mainīgos:

    Text030@1025 : TextConst 'ENU=%1 %2, line no. %3 is not copied because the full quantity on the posted document line is already manually applied.';
    Text031@1038 : TextConst 'ENU=Return document line contains only the original document line quantity, that is not already manually applied.';
    SomeAreFixed@1045 : Boolean;
    CopyDimensions@1050 : Boolean;
    
    
  2. Pievienojiet šādus globālos mainīgos dokumenta kopijā Mgt. Codeunit (6620):

    Text030@1025 : TextConst 'ENU=One or more return document lines were not copied. This is because quantities on the posted document line are already fully or partially applied and therefore the Exact Cost Reversing Link could not be created.';
    Text031@1038 : TextConst 'ENU=Return document line contains only the original document line quantity, that is not already manually applied.';
     SomeAreFixed@1045 : Boolean;
    CopyDimensions@1050 : Boolean;
    WarningDone@1051 : Boolean;
    LinesApplied@1052 : Boolean;
    
    
  3. Mainiet kodu funkcijā SplitPstdSalesLinesPerILE dokumentā Mgt. Codeunit (6620) šādi:
    Esošs kods 1

    ...
                IF "Shipped Qty. Not Returned" = 0 THEN
    
    // Delete the following lines.
                 ERROR(Text030,"Document Type","Document No.","Document Line No.");
               FromSalesLineBuf := FromSalesLine; 
               IF -"Shipped Qty. Not Returned" < ABS(FromSalesLine."Quantity (Base)") THEN BEGIN
                 IF FromSalesLine."Quantity (Base)" > 0 THEN
                   FromSalesLineBuf."Quantity (Base)" := -"Shipped Qty. Not Returned"
                 ELSE
                   FromSalesLineBuf."Quantity (Base)" := "Shipped Qty. Not Returned";
                 IF FromSalesLineBuf."Qty. per Unit of Measure" = 0 THEN
                   FromSalesLineBuf.Quantity := FromSalesLineBuf."Quantity (Base)"
                 ELSE
                   FromSalesLineBuf.Quantity :=
                     ROUND(FromSalesLineBuf."Quantity (Base)" / FromSalesLineBuf."Qty. per Unit of Measure",0.00001);
               END;
               FromSalesLine."Quantity (Base)" := FromSalesLine."Quantity (Base)" - FromSalesLineBuf."Quantity (Base)";
               FromSalesLine.Quantity := FromSalesLine.Quantity - FromSalesLineBuf.Quantity;
               FromSalesLineBuf."Appl.-from Item Entry" := "Entry No.";
               FromSalesLineBuf."Line No." := NextLineNo;
               NextLineNo := NextLineNo + 1;
               FromSalesLineBuf."Document No." := "Document No.";
               IF GetSalesDocType(ItemLedgEntry) IN
                  [FromSalesLineBuf."Document Type"::Order,FromSalesLineBuf."Document Type"::"Return Order"]
               THEN
                 FromSalesLineBuf."Shipment Line No." := 1;
    
               IF NOT FromShptOrRcpt THEN
                 UpdateRevSalesLineAmount(
                   FromSalesLineBuf,OrgQtyBase,
                   FromSalesHeader."Prices Including VAT",ToSalesHeader."Prices Including VAT");
    
               FromSalesLineBuf.INSERT;
    // End of the lines.
    
              UNTIL (NEXT = 0) OR (FromSalesLine."Quantity (Base)" = 0);
    ...
    
    

    Nomaiņas kods 1

    ...
                IF "Shipped Qty. Not Returned" = 0 THEN
    
    // Add the following lines.
                 LinesApplied := TRUE;
               IF "Shipped Qty. Not Returned" < 0 THEN BEGIN
                 FromSalesLineBuf := FromSalesLine;
    
                 IF -"Shipped Qty. Not Returned" < ABS(FromSalesLine."Quantity (Base)") THEN BEGIN
                   IF FromSalesLine."Quantity (Base)" > 0 THEN
                     FromSalesLineBuf."Quantity (Base)" := -"Shipped Qty. Not Returned"
                   ELSE
                     FromSalesLineBuf."Quantity (Base)" := "Shipped Qty. Not Returned";
                   IF FromSalesLineBuf."Qty. per Unit of Measure" = 0 THEN
                     FromSalesLineBuf.Quantity := FromSalesLineBuf."Quantity (Base)"
                   ELSE
                     FromSalesLineBuf.Quantity :=
                       ROUND(FromSalesLineBuf."Quantity (Base)" / FromSalesLineBuf."Qty. per Unit of Measure",0.00001);
                 END;
                 FromSalesLine."Quantity (Base)" := FromSalesLine."Quantity (Base)" - FromSalesLineBuf."Quantity (Base)";
                 FromSalesLine.Quantity := FromSalesLine.Quantity - FromSalesLineBuf.Quantity;
                 FromSalesLineBuf."Appl.-from Item Entry" := "Entry No.";
                 FromSalesLineBuf."Line No." := NextLineNo;
                 NextLineNo := NextLineNo + 1;
                 FromSalesLineBuf."Document No." := "Document No.";
                 IF GetSalesDocType(ItemLedgEntry) IN
                    [FromSalesLineBuf."Document Type"::Order,FromSalesLineBuf."Document Type"::"Return Order"]
                 THEN
                   FromSalesLineBuf."Shipment Line No." := 1;
    
                 IF NOT FromShptOrRcpt THEN
                   UpdateRevSalesLineAmount(
                     FromSalesLineBuf,OrgQtyBase,
                     FromSalesHeader."Prices Including VAT",ToSalesHeader."Prices Including VAT");
    
                 FromSalesLineBuf.INSERT;
               END;
    // End of the lines.
    
              UNTIL (NEXT = 0) OR (FromSalesLine."Quantity (Base)" = 0);
    ...
    
    

    Esošs kods 2

    ...
                MissingExCostRevLink := TRUE;
            END;
    ...
    
    

    Nomaiņas kods 2

    ...
                MissingExCostRevLink := TRUE;
    
    // Add the following line.
             CheckUnappliedLines(LinesApplied,MissingExCostRevLink);
    
            END;
    ...
    
    
  4. Mainiet kodu funkcijā SplitPstdPurchLinesPerILE dokumentā Mgt. koda vienība (6620) šādi:
    Esošs kods 1

    ...
            ApplyRec@1011 : Record 339;
    
    // Delete the following line.
           AllAreFixed@1012 : Boolean;
    
          BEGIN
    ...
    
    

    Nomaiņas kods 1

    ...
            ApplyRec@1011 : Record 339;
          BEGIN
    ...
    
    

    Esošs kods 2

    ...
              REPEAT
    
    // Delete the following lines.
               IF "Remaining Quantity" = 0 THEN BEGIN
                 AllAreFixed := TRUE;
                 ApplyRec.AppliedOutbndEntryExists("Entry No.",FALSE);
                 IF ApplyRec.FINDFIRST THEN
                   REPEAT
                     AllAreFixed := AllAreFixed AND ApplyRec.Fixed;
                   UNTIL ApplyRec.NEXT = 0;
                 IF AllAreFixed THEN
                   ERROR(Text030,"Document Type","Document No.","Document Line No.");
               END;
    // End of the lines.
    
                IF NOT ApplyFully THEN BEGIN
    ...
    
    

    Nomaiņas kods 2

    ...
              REPEAT
                IF NOT ApplyFully THEN BEGIN
    ...
    
    

    Esošais kods 3

    ...
            END;
    ...
    
    

    Nomaiņas kods 3

    ...
            END;
    
    // Add the following line.
           CheckUnappliedLines(SkippedLine,MissingExCostRevLink);
    
    ...
    
    
  5. Mainiet kodu funkcijā CheckUnappliedLines dokumentā Mgt. Codeunit (6620) šādi:
    Esošais kods

    ...
          BEGIN
    ...
    
    

    Aizstāšanas kods

    ...
    
    // Add the following lines.
         LOCAL PROCEDURE CheckUnappliedLines@86(SkippedLine@1000 : Boolean;VAR MissingExCostRevLink@1001 : Boolean);
         BEGIN
           IF SkippedLine AND MissingExCostRevLink THEN BEGIN
             IF NOT WarningDone THEN
               MESSAGE(Text030);
             MissingExCostRevLink := FALSE;
             WarningDone := TRUE;
           END;
         END;
    
    // End of the lines.
    
          BEGIN
    ...
    
    

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 .