Kļūdas ziņojums "Jānorāda tvertnes kods darba žurnāla rindas žurnāla veidnē", kad izrakstāt rēķinu (vai saņemat un pēc tam izrakstāt rēķinu) par pirkšanas pasūtījumu krājumam, kas ir piešķirts darbam un atrodas obligātā atrašanās vietā Microsoft Dynamics NAV

Attiecas uz
Dynamics NAV 2009 Service Pack 1 Microsoft Dynamics NAV 2009 R2

Šis raksts attiecas uz Microsoft Dynamics NAV visiem reģioniem.

Pazīmes

Pieņemsim, ka jums ir pirkšanas pasūtījums krājumam, kas ir piešķirts darbam, un jūs norādāt krājuma tvertnes kodu programmā Microsoft Dynamics NAV. Pēc tam, grāmatojot (saņemot un izrakstot rēķinu) pirkšanas pasūtījumu, tiek parādīts šāds kļūdas ziņojums, jo rodas datu neatbilstība starp krājumu virsgrāmatas ierakstiem un noliktavu:

Piezīme

Lodziņā Darbu žurnāla rindas žurnāla veidne ir jānorāda tvertnes kods...

Turklāt, grāmatojot pirkšanas pasūtījuma atsaukšanas apliecinājumu, krājumu virsgrāmatas ieraksti tiek atjaunināti nepareizi. Jūs sagaidāt, ka sistēma vienādi atjauninās noliktavas un krājumu virsgrāmatas ierakstus.
Šī problēma rodas pēc labojumfaila lietošanas KB 2159936.
  Lai iegūtu papildinformāciju, noklikšķiniet uz tālāk norādītā raksta numura un lasiet Microsoft zināšanu bāzes rakstu:

2159936 Varat neparedzēti grāmatot pirkšanas pasūtījumu kā Saņemt par nodalījumu, obligātu atrašanās vietu ar darbu Microsoft Dynamics NAV 2009 1. servisa pakotnē
Šī problēma rodas šādos produktos:

  • Microsoft Dynamics NAV 2009 1. servisa pakotne (SP1)
  • Microsoft Dynamics NAV 2009 R2

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.

  1. Mainiet kodu funkcijā FromPurchaseLineToJnlLine koda vienībā (1004) šādi:

    Esošais kods

    ...
        JobJnlLine."Line Discount Amount" :=
          ROUND("Job Line Discount Amount" * Factor,Currency."Amount Rounding Precision");
      END;
    
      JobJnlLine."Location Code" := "Location Code";
      JobJnlLine."Line Type" := "Job Line Type";
    ...
    

    Aizstāšanas kods

    ...
          JobJnlLine."Line Discount Amount" :=
          ROUND("Job Line Discount Amount" * Factor,Currency."Amount Rounding Precision");
      END;
    
      JobJnlLine."Location Code" := "Location Code";
    
    // Add the following line.
      JobJnlLine."Bin Code" := "Bin Code";
    // End of the added line.
    
      JobJnlLine."Line Type" := "Job Line Type";
    ...
    
  2. Mainiet kodu OnRun trigerī Purch.-Post codeunit (90) šādi:

    Piezīme Noņemamais kods tika pievienots kopā ar KB 2159936, tāpēc, iespējams, ir nepieciešams mainīt tālāk norādīto kodu.

    Esošais kods

    ...
          IF PurchLine.Type = PurchLine.Type::"Charge (Item)" THEN BEGIN
            PurchLine.TESTFIELD(Amount);
            PurchLine.TESTFIELD("Job No.",'');
          END;
    
    // Delete the following lines.
          IF (PurchLine."Job No." <> '') AND (PurchLine.Type = PurchLine.Type::Item) THEN
            PurchLine.TESTFIELD("Bin Code",'');
    // End of the deleted lines.
    ...
    

    Aizstāšanas kods

    ...
            IF PurchLine.Type = PurchLine.Type::"Charge (Item)" THEN BEGIN
            PurchLine.TESTFIELD(Amount);
            PurchLine.TESTFIELD("Job No.",'');
          END;
    ...
    
  3. Mainiet funkcijas PostItemJnlLine kodu lodziņā Purch.-Post codeunit (90) šādi:

    Esošais kods

    ...
       IF PostWhseJnlLine THEN BEGIN
        ItemTrackingMgt.SplitWhseJnlLine(TempWhseJnlLine,TempWhseJnlLine2,TempWhseTrackingSpecification,FALSE);
        IF TempWhseJnlLine2.FIND('-') THEN
          REPEAT
            WhseJnlPostLine.RUN(TempWhseJnlLine2);
          UNTIL TempWhseJnlLine2.NEXT = 0;
    ...
    

    Aizstāšanas kods

    ...
       IF PostWhseJnlLine THEN BEGIN
        ItemTrackingMgt.SplitWhseJnlLine(TempWhseJnlLine,TempWhseJnlLine2,TempWhseTrackingSpecification,FALSE);
        IF TempWhseJnlLine2.FIND('-') THEN
          REPEAT
            WhseJnlPostLine.RUN(TempWhseJnlLine2);
    // Add the following lines.
            IF RevertWarehouseEntry(TempWhseJnlLine2,"Job No.",PostJobConsumptionBeforePurch) THEN
              WhseJnlPostLine.RUN(TempWhseJnlLine2);
    // End of the added lines.
    
          UNTIL TempWhseJnlLine2.NEXT = 0;  
    ...
    
  4. Pievienojiet šādu vietējo funkciju: RevertWarehouseEntry@92(VAR TempWhseJnlLine@1000 : PAGAIDU ieraksts 7311; JobNo@1001 : Kods[20]; PostJobConsumptionBeforePurch@1002 : Boolean). Pēc tam pievienojiet šādu funkcijas kodu:

    IF PostJobConsumptionBeforePurch OR (JobNo = '') THEN
      EXIT(FALSE);
    WITH TempWhseJnlLine DO BEGIN
      "Entry Type" := "Entry Type"::"Negative Adjmt.";
      Quantity := -Quantity;
      "Qty. (Base)" := -"Qty. (Base)";
      "From Bin Code" := "To Bin Code";
      "To Bin Code" := '';
    END;
    EXIT(TRUE);
    
    

          

Priekšnosacījumi

Lai lietotu šo labojumfailu, jābūt instalētam vienam no tālāk norādītajiem produktiem:

  • Microsoft Dynamics NAV 2009 1. servisa pakotne (SP1)
  • Microsoft Dynamics NAV 2009 R2

                
              

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".

Atsauces

VSTF DynamicsNAV SE: 244430

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 .