Pārskaitījuma atskaitē tiek parādīta nepareiza informācija, kad grāmatojat daļējus maksājumus rēķinos par EFT banku un kreditoru Microsoft Dynamics NAV 2009 1. servisa pakotnes Ziemeļamerikas versijā

Attiecas uz
Dynamics NAV 2009 Service Pack 1

Šis raksts attiecas uz Microsoft Dynamics NAV Ziemeļamerikas (NA) valodas lokalizācijai.

Pazīmes

Pieņemsim, ka Microsoft Dynamics NAV 2009 1. servisa pakotnes Ziemeļamerikas versijā veidlapā Ieteikt kreditora Maksājumui ir iespējots parametrs Apkopot katram kreditoram. Grāmatojot daļējus maksājumus EFT bankas un kreditora rēķinos, ievērojat, ka saistītajā pārskaitījumu atskaitē ir nepareiza informācija.

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 OnAfterGetRecord ģenerācijas trigerī. Žurnāla rindas datu vienums eksporta elektronisko Maksājumu atskaitē (10083) šādi:
    Pašreizējais kods

    ...
          VendLedgEntry.CALCFIELDS("Remaining Amt. (LCY)");
        IF (VendLedgEntry."Pmt. Discount Date" >= SettleDate) AND
      (VendLedgEntry."Remaining Pmt. Disc. Possible" <>0) AND
    
           (-(ExportAmount + VendLedgEntry."Remaining Pmt. Disc. Possible") >= -VendLedgEntry."Remaining Amt. (LCY)")
    
        THEN BEGIN
          DiscountTaken := -VendLedgEntry."Remaining Pmt. Disc. Possible";
    
          AmountPaid := -(VendLedgEntry."Remaining Amt. (LCY)" - VendLedgEntry."Remaining Pmt. Disc. Possible");
        END ELSE IF -ExportAmount > -VendLedgEntry."Remaining Amt. (LCY)" THEN
          AmountPaid := -VendLedgEntry."Remaining Amt. (LCY)"
    
        ELSE
          AmountPaid := -ExportAmount;
      END;
    ...
        CustLedgEntry.CALCFIELDS("Remaining Amt. (LCY)");
        IF (CustLedgEntry."Pmt. Discount Date" >= SettleDate) AND
           (CustLedgEntry."Remaining Pmt. Disc. Possible" <>0) AND
    
           (-(ExportAmount - CustLedgEntry."Remaining Pmt. Disc. Possible") >= -CustLedgEntry."Remaining Amt. (LCY)")
    
        THEN BEGIN
          DiscountTaken := -CustLedgEntry."Remaining Pmt. Disc. Possible";
    
          AmountPaid := -(CustLedgEntry."Remaining Amt. (LCY)" - CustLedgEntry."Remaining Pmt. Disc. Possible");
        END ELSE IF -ExportAmount > -CustLedgEntry."Remaining Amt. (LCY)" THEN
          AmountPaid := -CustLedgEntry."Remaining Amt. (LCY)"
    
        ELSE
          AmountPaid := -ExportAmount;
      END;    
    ...
    
    

    Aizstāšanas kods

    ...
          VendLedgEntry.CALCFIELDS("Remaining Amt. (LCY)");
        IF (VendLedgEntry."Pmt. Discount Date" >= SettleDate) AND
           (VendLedgEntry."Remaining Pmt. Disc. Possible"  <> 0) AND
    
    //Add the following line.
           (-(ExportAmount + VendLedgEntry."Remaining Pmt. Disc. Possible") >= -VendLedgEntry."Amount to Apply")
    //End of the added line.
    
        THEN BEGIN
          DiscountTaken := -VendLedgEntry."Remaining Pmt. Disc. Possible";
    
    //Add the following lines.
          AmountPaid := -(VendLedgEntry."Amount to Apply" - VendLedgEntry."Remaining Pmt. Disc. Possible");
        END ELSE IF -ExportAmount > -VendLedgEntry."Amount to Apply" THEN
          AmountPaid := -VendLedgEntry."Amount to Apply"
    //End of added lines.
    
        ELSE
          AmountPaid := -ExportAmount;
      END;
    ...
        CustLedgEntry.CALCFIELDS("Remaining Amt. (LCY)");
        IF (CustLedgEntry."Pmt. Discount Date" >= SettleDate) AND
           (CustLedgEntry."Remaining Pmt. Disc. Possible"  <> 0) AND
    
    //Add the following line.
           (-(ExportAmount - CustLedgEntry."Remaining Pmt. Disc. Possible") >= -CustLedgEntry."Amount to Apply")
    //End of the added line.
    
        THEN BEGIN
          DiscountTaken := -CustLedgEntry."Remaining Pmt. Disc. Possible";
    
    //Add the following lines.
          AmountPaid := -(CustLedgEntry."Amount to Apply" - CustLedgEntry."Remaining Pmt. Disc. Possible");
        END ELSE IF -ExportAmount > -CustLedgEntry."Amount to Apply" THEN
          AmountPaid := -CustLedgEntry."Amount to Apply"
    //End of the added lines.
    
        ELSE
          AmountPaid := -ExportAmount;
      END;        
    ...
    
    
  2. Mainiet kodu OnAfterGetRecord aktivizētājā Cust. Virsgrāmatas ieraksta datu vienumā eksporta elektronisko Maksājumu atskaitē (10083) šādi:
    Pašreizējais kods

    ...
        CALCFIELDS("Remaining Amt. (LCY)");
    IF ("Pmt. Discount Date" >= SettleDate) AND
       ("Remaining Pmt. Disc. Possible" <>0) AND
    
       ((-ExportAmount - TotalAmountPaid) - "Remaining Pmt. Disc. Possible" >= -"Remaining Amt. (LCY)")
    
    THEN BEGIN
      DiscountTaken := -"Remaining Pmt. Disc. Possible";
    
      AmountPaid := -("Remaining Amt. (LCY)" - "Remaining Pmt. Disc. Possible");
    
    END ELSE BEGIN
      DiscountTaken := 0;
    
      IF (-ExportAmount - TotalAmountPaid) > -"Remaining Amt. (LCY)" THEN
        AmountPaid := -"Remaining Amt. (LCY)"
    
      ELSE
        AmountPaid := -ExportAmount - TotalAmountPaid;
    END;
    
    TotalAmountPaid := TotalAmountPaid + AmountPaid;
    ...
    
    

    Aizstāšanas kods

    ...
     CALCFIELDS("Remaining Amt. (LCY)");
    IF ("Pmt. Discount Date" >= SettleDate) AND
       ("Remaining Pmt. Disc. Possible" <> 0) AND
    
    //Add the following line.
       ((-ExportAmount - TotalAmountPaid) - "Remaining Pmt. Disc. Possible" >= -"Amount to Apply")
    //End of added line.
    
    THEN BEGIN
      DiscountTaken := -"Remaining Pmt. Disc. Possible";
    
    //Add the following line.
      AmountPaid := -("Amount to Apply" - "Remaining Pmt. Disc. Possible");
    //End of added line.
    
    END ELSE BEGIN
      DiscountTaken := 0;
    
    //Add the following lines.
      IF (-ExportAmount - TotalAmountPaid) > -"Amount to Apply" THEN
                                     AmountPaid := -"Amount to Apply"
    //End of added lines.
    
      ELSE
        AmountPaid := -ExportAmount - TotalAmountPaid;
    END;
    
    TotalAmountPaid := TotalAmountPaid + AmountPaid;      
    ...
    
    
  3. Mainiet kodu piegādātāju virsgrāmatas ieraksta datu vienuma OnAfterGetRecord trigerā elektronisko Maksājumu eksportēšanas atskaitē (10083) šādi:
    Pašreizējais kods

    ...
        CALCFIELDS("Remaining Amt. (LCY)");
    IF ("Pmt. Discount Date" >= SettleDate) AND
       ("Remaining Pmt. Disc. Possible" <>0) AND
       ((-ExportAmount - TotalAmountPaid) - "Remaining Pmt. Disc. Possible" >= -"Remaining Amt. (LCY)")
    
    THEN BEGIN
      DiscountTaken := -"Remaining Pmt. Disc. Possible";
      AmountPaid := -("Remaining Amt. (LCY)" - "Remaining Pmt. Disc. Possible");
    
    END ELSE BEGIN
      DiscountTaken := 0;
      IF (-ExportAmount - TotalAmountPaid) > -"Remaining Amt. (LCY)" THEN
        AmountPaid := -"Remaining Amt. (LCY)"
    
      ELSE
        AmountPaid := -ExportAmount - TotalAmountPaid;
    END;
    
    TotalAmountPaid := TotalAmountPaid + AmountPaid;
    
    ...
    
    

    Aizstāšanas kods

    ...
     CALCFIELDS("Remaining Amt. (LCY)");
    IF ("Pmt. Discount Date" >= SettleDate) AND
       ("Remaining Pmt. Disc. Possible" <> 0) AND
    
       ((-ExportAmount - TotalAmountPaid) - "Remaining Pmt. Disc. Possible" >= -"Amount to Apply")
    
    THEN BEGIN
      DiscountTaken := -"Remaining Pmt. Disc. Possible";
    
      AmountPaid := -("Amount to Apply" - "Remaining Pmt. Disc. Possible");
    
    END ELSE BEGIN
      DiscountTaken := 0;
    
      IF (-ExportAmount - TotalAmountPaid) > -"Amount to Apply" THEN
        AmountPaid := -"Amount to Apply"
    
      ELSE
        AmountPaid := -ExportAmount - TotalAmountPaid;
    END;
    
    TotalAmountPaid := TotalAmountPaid + AmountPaid;
    ...
    
    
  4. Mainiet kodu nepiemērotā datu vienuma OnAfterGetRecord izraisītājā atskaitē Export Electronic Maksājumi (10083) šādi:
    Pašreizējais kods

    ...
     AmountPaid := ExportAmount - TotalAmountPaid;
    ...
    
    

    Aizstāšanas kods

    ...
     AmountPaid := -ExportAmount - TotalAmountPaid;
    ...
    
    

          

Priekšnosacījumi

Lai lietotu šo labojumfailu, jābūt instalētai Microsoft Dynamics NAV 2009 2009 1. servisa pakotnes Ziemeļamerikas versijai.

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 .