Rēķinu par pirkšanas pasūtījumu nevar izrakstīt, ja noņemat darba valūtas kodu darba kartē pēc pirkšanas pasūtījuma rindas, kas ir saistīta ar darba uzdevumu, saņemšanas programmatūrā Microsoft Dynamics NAV 2009

Attiecas uz
Dynamics NAV 2009

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

Pazīmes

Pieņemsim, ka pirkšanas pasūtījuma rinda, kas ir saistīta ar darba uzdevumu, tiek saņemta programmatūrā Microsoft Dynamics NAV 2009 R2 un Microsoft Dynamics NAV 2009 1. servisa pakotnē (SP1). Ja noņemat darba valūtas kodu darba kartē, nevarat izrakstīt rēķinu par pirkšanas pasūtījumu. To darot, tiek parādīts kļūdas ziņojums, kas līdzīgs šim:

Piezīme

Pirkšanas rindas dokumenta tipā nedrīkst norādīt darba valūtas kodu: Tips='Pasūtījums',Dokumenta Nr.='Document_Number',Rindas Nr.='Line_Number'.

Turklāt nevarat mainīt darba valūtas kodu vai nevarat atsaukt kvīti.

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 lodziņā Darba uzdevums nr. - OnValidate trigeris tabulā Pirkšanas rinda (39) šādi:
    Esošais kods

    ...
    TESTFIELD("Receipt No.",'');
    
    IF "Document Type" = "Document Type"::Order THEN
    ...
    
    

    Aizstāšanas kods

    ...
    TESTFIELD("Receipt No.",'');
    
    // Add the following line.
    IF ((FIELDNO("Job Task No.") <> CurrFieldNo) AND (CurrFieldNo <> 0)) THEN
    
    IF "Document Type" = "Document Type"::Order THEN
    ...
    
    
  2. Mainiet kodu trigerī Valūtas kods - OnValidate tabulā Darbs (167) šādi:
    Esošais kods

    ...
    IF "Currency Code" <> xRec."Currency Code" THEN
    
    // Delete the following lines.
      IF NOT JobLedgEntryExist THEN
        CurrencyUpdatePlanningLines
      ELSE
    // End of the lines.
    
          ERROR(Text000,FIELDCAPTION("Currency Code"),TABLECAPTION);
    ...
    
    

    Aizstāšanas kods

    ...
    IF "Currency Code" <> xRec."Currency Code" THEN
    
    // Add the following lines.
      IF NOT JobLedgEntryExist THEN BEGIN
        CurrencyUpdatePlanningLines;
        CurrencyUpdatePurchLines;
     END ELSE
    //End of the lines.
    
        ERROR(Text000,FIELDCAPTION("Currency Code"),TABLECAPTION);
    ...
    
    
  3. Izveidot jaunu funkciju CurrencyUpdatePurchLines darbu tabulā (167). Lai to izdarītu, izpildiet šādas darbības:

    1. Izveidojiet lokālu mainīgo un pēc tam norādiet mainīgo šādi:

      • Nosaukums: PurchLine
      • DataType: Record
      • Apakštips: pirkšanas rinda
    2. Pievienojiet tālāk norādīto kodu funkcijā CurrencyUpdatePurchLines:

      MODIFY;
      PurchLine.SETRANGE(PurchLine."Job No.","No.");
      IF PurchLine.FINDSET THEN BEGIN
        REPEAT
          PurchLine.VALIDATE("Job Currency Code","Currency Code");
          PurchLine.VALIDATE("Job Task No.");
          PurchLine.MODIFY;
        UNTIL PurchLine.NEXT = 0;
      END;
      
      

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 .