Ez a cikk a Microsoft Dynamics NAV-ra vonatkozik minden országban és minden nyelvi beállításban.
Tünetek
Feltételezzük, hogy a Microsoft Dynamics NAV Főkönyvi beállítások párbeszédpaneljén bejelölte a Fizetési tolerancia figyelmeztetése jelölőnégyzetet. Ha egy vevői kifizetési naplót vagy egy szállítói kifizetési naplót ad fel, amely fizetési engedmény toleranciával és fizetési tűreranciával rendelkezik, a fizetési tűrésre és a fizetési engedményekre vonatkozó terhelési vagy jóváírási számla helytelenül kerül felhasználásra a főkönyvi bejegyzésekben. Bizonyos esetekben a kifizetési tűrés összege regisztrálva van a betéti számlához, annak ellenére, hogy a hitelszámlát a főkönyvi bejegyzésekben kell használni.
Ez a probléma a következő termékekben fordul elő:
- Microsoft Dynamics NAV 2009 Service Pack 1 (SP1)
- Microsoft Dynamics NAV 2009
- Microsoft Dynamics NAV 5.0 Service Pack 1 (SP1)
- Microsoft Dynamics NAV 5.0
Megoldás
Gyorsjavítással kapcsolatos információk
A Microsoft már elérhető egy támogatott gyorsjavítást kínál. Ez azonban csak a cikkben ismertetett probléma megoldására szolgál. Csak olyan rendszerekre alkalmazza, amelyek tapasztalják ezt a problémát. Előfordulhat, hogy a gyorsjavítás további tesztelésen eshet át. Ezért ha nem érinti súlyosan ez a probléma, azt javasoljuk, hogy várja meg a Microsoft Dynamics NAV következő szervizcsomagját, illetve a Microsoft Dynamics NAV következő verzióját, amely tartalmazza ezt a gyorsjavítást.
Megjegyzés: Különleges esetekben a támogatási hívások szokásos díjai törölhetők, ha a Microsoft Dynamics és a kapcsolódó termékek terméktámogatási szakértője úgy ítéli meg, hogy egy adott frissítés megoldja a problémát. A szokásos támogatási költségek olyan további támogatási kérdések és problémák esetén merülnek fel, amelyek nem felelnek meg a kérdéses frissítés feltételeinek.
Telepítési információk
A Microsoft csak illusztrációs céllal kínál programozási példákat, kifejezett vagy vélelmezett garancia nélkül. Ez magában foglalja, de nem kizárólagosan a forgalmazhatóságra vagy az adott célra való alkalmasságra vonatkozó vélelmezett garanciát. Ez a cikk feltételezi, hogy ismeri a bemutatott programozási nyelvet, valamint az eljárások létrehozásához és hibakereséséhez használt eszközöket. A Microsoft támogatási szakemberei segíthetnek elmagyarázni egy adott eljárás funkcionalitását, de nem módosítják a példákat, hogy további funkciókat biztosítsanak, és nem építenek ki eljárásokat az egyéni igényekre.
Megjegyzés: A gyorsjavítás telepítése előtt győződjön meg arról, hogy a Microsoft Navision-ügyfél összes felhasználója kijelentkezett a rendszerről. Ide tartoznak a Microsoft Navision Application Services (NAS) kliens felhasználói is. A gyorsjavítás telepítésekor csak Ön lehet az, aki be van jelentkezve.
A gyorsjavítás implementálásához fejlesztői licenccel kell rendelkeznie.
Javasoljuk, hogy a Windows Bejelentkezések ablakában vagy az Adatbázis-bejelentkezések ablakban látható felhasználói fiókhoz rendelje a "SUPER" szerepkörazonosítót. Ha a felhasználói fiókhoz nem rendelhető a "SUPER" szerepkörazonosító, ellenőriznie kell, hogy a felhasználói fiók rendelkezik-e az alábbi engedélyekkel:
- A módosítani kívánt objektum Módosítás engedélye.
- Végrehajtási engedély az 5210-es rendszerazonosítójú objektumhoz és a 9015-ös rendszerobjektum-azonosítójú objektumhoz.
Megjegyzés: Az adattárakhoz csak akkor kell jogokkal rendelkeznie, ha adatokat kell javítást végeznie.
Kódváltozások
Megjegyzés: Mindig ellenőrzött környezetben tesztelje a kódjavításokat, mielőtt telepítené őket az üzemi számítógépekre.
A probléma megoldásához hajtsa végre az alábbi lépéseket:
Módosítsa a kódot a PostDtldVendLedgEntries függvényben a Gen. Jnl.-Post Line kódegység (12) az alábbiak szerint:
Meglévő kód: 1… DtldCVLedgEntryBuf."Entry Type"::"Payment Discount Tolerance": BEGIN IF GLSetup."Pmt. Disc. Tolerance Posting" = GLSetup."Pmt. Disc. Tolerance Posting"::"Payment Tolerance Accounts" THEN BEGIN IF (DtldCVLedgEntryBuf."Amount (LCY)" >= 0) THEN BEGIN VendPostingGr.TESTFIELD("Payment Tolerance Debit Acc."); PaymentTolAcc := VendPostingGr."Payment Tolerance Debit Acc."; END ELSE BEGIN VendPostingGr.TESTFIELD("Payment Tolerance Credit Acc."); PaymentTolAcc := VendPostingGr."Payment Tolerance Credit Acc."; END; END ELSE IF GLSetup."Pmt. Disc. Tolerance Posting" = GLSetup."Pmt. Disc. Tolerance Posting"::"Payment Discount Accounts" THEN BEGIN IF (DtldCVLedgEntryBuf."Amount (LCY)" >= 0) THEN BEGIN VendPostingGr.TESTFIELD("Payment Disc. Debit Acc."); PaymentTolAcc := VendPostingGr."Payment Disc. Debit Acc."; END ELSE BEGIN VendPostingGr.TESTFIELD("Payment Disc. Credit Acc."); PaymentTolAcc := VendPostingGr."Payment Disc. Credit Acc."; …Helyettesítő kód 1
… DtldCVLedgEntryBuf."Entry Type"::"Payment Discount Tolerance": BEGIN IF GLSetup."Pmt. Disc. Tolerance Posting" = GLSetup."Pmt. Disc. Tolerance Posting"::"Payment Tolerance Accounts" THEN BEGIN IF (-DtldCVLedgEntryBuf."Amount (LCY)" >= 0) THEN BEGIN VendPostingGr.TESTFIELD("Payment Tolerance Debit Acc."); PaymentTolAcc := VendPostingGr."Payment Tolerance Debit Acc."; END ELSE BEGIN VendPostingGr.TESTFIELD("Payment Tolerance Credit Acc."); PaymentTolAcc := VendPostingGr."Payment Tolerance Credit Acc."; END; END ELSE IF GLSetup."Pmt. Disc. Tolerance Posting" = GLSetup."Pmt. Disc. Tolerance Posting"::"Payment Discount Accounts" THEN BEGIN IF (-DtldCVLedgEntryBuf."Amount (LCY)" >= 0) THEN BEGIN VendPostingGr.TESTFIELD("Payment Disc. Debit Acc."); PaymentTolAcc := VendPostingGr."Payment Disc. Debit Acc."; END ELSE BEGIN VendPostingGr.TESTFIELD("Payment Disc. Credit Acc."); PaymentTolAcc := VendPostingGr."Payment Disc. Credit Acc."; …Meglévő 2. kód
… DtldCVLedgEntryBuf."Entry Type"::"Payment Tolerance": BEGIN IF GLSetup."Payment Tolerance Posting" = GLSetup."Payment Tolerance Posting"::"Payment Tolerance Accounts" THEN BEGIN IF (DtldCVLedgEntryBuf."Amount (LCY)" >= 0) THEN BEGIN VendPostingGr.TESTFIELD("Payment Tolerance Debit Acc."); PaymentTolAcc := VendPostingGr."Payment Tolerance Debit Acc."; END ELSE BEGIN VendPostingGr.TESTFIELD("Payment Tolerance Credit Acc."); PaymentTolAcc := VendPostingGr."Payment Tolerance Credit Acc."; END; END ELSE IF GLSetup."Payment Tolerance Posting" = GLSetup."Payment Tolerance Posting"::"Payment Discount Accounts" THEN BEGIN IF (DtldCVLedgEntryBuf."Amount (LCY)" >= 0) THEN BEGIN VendPostingGr.TESTFIELD("Payment Disc. Debit Acc."); PaymentTolAcc := VendPostingGr."Payment Disc. Debit Acc."; END ELSE BEGIN VendPostingGr.TESTFIELD("Payment Disc. Credit Acc."); PaymentTolAcc := VendPostingGr."Payment Disc. Credit Acc."; …2-es helyettesítő kód
… DtldCVLedgEntryBuf."Entry Type"::"Payment Tolerance": BEGIN IF GLSetup."Payment Tolerance Posting" = GLSetup."Payment Tolerance Posting"::"Payment Tolerance Accounts" THEN BEGIN IF (-DtldCVLedgEntryBuf."Amount (LCY)" >= 0) THEN BEGIN VendPostingGr.TESTFIELD("Payment Tolerance Debit Acc."); PaymentTolAcc := VendPostingGr."Payment Tolerance Debit Acc."; END ELSE BEGIN VendPostingGr.TESTFIELD("Payment Tolerance Credit Acc."); PaymentTolAcc := VendPostingGr."Payment Tolerance Credit Acc."; END; END ELSE IF GLSetup."Payment Tolerance Posting" = GLSetup."Payment Tolerance Posting"::"Payment Discount Accounts" THEN BEGIN IF (-DtldCVLedgEntryBuf."Amount (LCY)" >= 0) THEN BEGIN VendPostingGr.TESTFIELD("Payment Disc. Debit Acc."); PaymentTolAcc := VendPostingGr."Payment Disc. Debit Acc."; END ELSE BEGIN VendPostingGr.TESTFIELD("Payment Disc. Credit Acc."); PaymentTolAcc := VendPostingGr."Payment Disc. Credit Acc."; …Módosítsa a kódot az AutoEntrForDtldVendLedgEntries függvényben a Gen. Jnl.-Post Line kódegység (12) az alábbiak szerint:
Meglévő kód: 1… DtldCVLedgEntryBuf."Entry Type"::"Payment Discount Tolerance": BEGIN CASE GLSetup."Pmt. Disc. Tolerance Posting" OF GLSetup."Pmt. Disc. Tolerance Posting"::"Payment Tolerance Accounts": BEGIN IF DtldCVLedgEntryBuf."Amount (LCY)" < 0 THEN BEGIN VendPostingGr.TESTFIELD("Payment Tolerance Debit Acc."); AccNo := VendPostingGr."Payment Tolerance Debit Acc."; END ELSE BEGIN VendPostingGr.TESTFIELD("Payment Tolerance Credit Acc."); AccNo := VendPostingGr."Payment Tolerance Credit Acc."; END; END; GLSetup."Pmt. Disc. Tolerance Posting"::"Payment Discount Accounts": BEGIN IF DtldCVLedgEntryBuf."Amount (LCY)" < 0 THEN BEGIN VendPostingGr.TESTFIELD("Payment Disc. Debit Acc."); AccNo := VendPostingGr."Payment Disc. Debit Acc."; END ELSE BEGIN VendPostingGr.TESTFIELD("Payment Disc. Credit Acc."); AccNo := VendPostingGr."Payment Disc. Credit Acc."; …Helyettesítő kód 1
… DtldCVLedgEntryBuf."Entry Type"::"Payment Discount Tolerance": BEGIN CASE GLSetup."Pmt. Disc. Tolerance Posting" OF GLSetup."Pmt. Disc. Tolerance Posting"::"Payment Tolerance Accounts": BEGIN IF -DtldCVLedgEntryBuf."Amount (LCY)" < 0 THEN BEGIN VendPostingGr.TESTFIELD("Payment Tolerance Debit Acc."); AccNo := VendPostingGr."Payment Tolerance Debit Acc."; END ELSE BEGIN VendPostingGr.TESTFIELD("Payment Tolerance Credit Acc."); AccNo := VendPostingGr."Payment Tolerance Credit Acc."; END; END; GLSetup."Pmt. Disc. Tolerance Posting"::"Payment Discount Accounts": BEGIN IF -DtldCVLedgEntryBuf."Amount (LCY)" < 0 THEN BEGIN VendPostingGr.TESTFIELD("Payment Disc. Debit Acc."); AccNo := VendPostingGr."Payment Disc. Debit Acc."; END ELSE BEGIN VendPostingGr.TESTFIELD("Payment Disc. Credit Acc."); AccNo := VendPostingGr."Payment Disc. Credit Acc."; …Meglévő 2. kód
… DtldCVLedgEntryBuf."Entry Type"::"Payment Tolerance": BEGIN CASE GLSetup."Payment Tolerance Posting" OF GLSetup."Payment Tolerance Posting"::"Payment Tolerance Accounts": BEGIN IF DtldCVLedgEntryBuf."Amount (LCY)" < 0 THEN BEGIN VendPostingGr.TESTFIELD("Payment Tolerance Debit Acc."); AccNo := VendPostingGr."Payment Tolerance Debit Acc."; END ELSE BEGIN VendPostingGr.TESTFIELD("Payment Tolerance Credit Acc."); AccNo := VendPostingGr."Payment Tolerance Credit Acc."; END; END; GLSetup."Payment Tolerance Posting"::"Payment Discount Accounts": BEGIN IF DtldCVLedgEntryBuf."Amount (LCY)" < 0 THEN BEGIN VendPostingGr.TESTFIELD("Payment Disc. Debit Acc."); AccNo := VendPostingGr."Payment Disc. Debit Acc."; END ELSE BEGIN VendPostingGr.TESTFIELD("Payment Disc. Credit Acc."); AccNo := VendPostingGr."Payment Disc. Credit Acc."; …2-es helyettesítő kód
… DtldCVLedgEntryBuf."Entry Type"::"Payment Tolerance": BEGIN CASE GLSetup."Payment Tolerance Posting" OF GLSetup."Payment Tolerance Posting"::"Payment Tolerance Accounts": BEGIN IF -DtldCVLedgEntryBuf."Amount (LCY)" < 0 THEN BEGIN VendPostingGr.TESTFIELD("Payment Tolerance Debit Acc."); AccNo := VendPostingGr."Payment Tolerance Debit Acc."; END ELSE BEGIN VendPostingGr.TESTFIELD("Payment Tolerance Credit Acc."); AccNo := VendPostingGr."Payment Tolerance Credit Acc."; END; END; GLSetup."Payment Tolerance Posting"::"Payment Discount Accounts": BEGIN IF -DtldCVLedgEntryBuf."Amount (LCY)" < 0 THEN BEGIN VendPostingGr.TESTFIELD("Payment Disc. Debit Acc."); AccNo := VendPostingGr."Payment Disc. Debit Acc."; END ELSE BEGIN VendPostingGr.TESTFIELD("Payment Disc. Credit Acc."); AccNo := VendPostingGr."Payment Disc. Credit Acc."; …
Előfeltételek
A gyorsjavítás alkalmazásához az alábbi termékek egyikének telepítve kell lennie:
- Microsoft Dynamics NAV 2009 Service Pack 1 (SP1)
- Microsoft Dynamics NAV 2009
- Microsoft Dynamics NAV 5.0 Service Pack 1 (SP1)
- Microsoft Dynamics NAV 5.0
Eltávolítással kapcsolatos információk
Ez a gyorsjavítás nem távolítható el.
További információ a Microsoft Tudásbázis következő számú cikkében olvasható (a cikk megnyitásához kattintson a sorszámra):
981697 A rendszer helytelen főkönyvi számlát használ, amikor fizetést ad fel egy olyan számla alkalmazásához, amelynek alkalmazásakor a "Teljes áfa" értéket használta, ha a "Kifizetési engedmény miatt" beállítás engedélyezve van a Microsoft Dynamics NAV 2009 "Főkönyvi beállítások" űrlapján
Állapot
A Microsoft megerősítette, hogy ez egy olyan probléma a Microsoft-termékekben, amely az „Érintett szolgáltatás“ című szakaszban van felsorolva.
Megjegyzés: Ez egy "GYORS KÖZZÉTÉTELŰ" cikk, amelyet közvetlenül a Microsoft támogatási szervezete készített. A dokumentumban szereplő információkat adott formában bocsátjuk rendelkezésre, a felmerülő problémákra adott válaszként. A rendelkezésre bocsátás gyorsasága következtében az anyagok sajtóhibákat tartalmazhatnak, és bármikor, előzetes értesítés nélkül felülvizsgálhatók. További szempontokat a használati feltételekben talál.