Przejdź do głównej zawartości
Pomoc techniczna
Zaloguj się przy użyciu konta Microsoft
Zaloguj się lub utwórz konto.
Witaj,
Wybierz inne konto.
Masz wiele kont
Wybierz konto, za pomocą którego chcesz się zalogować.

Ten artykuł dotyczy systemu Microsoft Dynamics NAV dla następujących krajów i ustawień regionalnych języka.

  • Angielski (Kanada) (en-ca)

  • Angielski (Stany Zjednoczone) (en-us)

  • Hiszpański (Meksyk) (es-mx)

  • Francuski (Kanada) (fr-ca)

Objawy

Załóżmy, że księgowania dziennika wpłat gotówkowych, który używa konto bankowe w walucie obcej w Ameryce Północnej wersji systemu Microsoft Dynamics 2009. Tworzenie korekty dla dziennika wpłat przez uruchomienie funkcji Dopasuj kursy wymiany walut... . W tej sytuacji podczas tworzenia uzgadniania konta bankowego na konto bankowe w walucie obcej, Saldo księgi głównej w sugerowanych wiersza jest obliczany nieprawidłowo. Obliczenie uzgodnienia bankowego nie zawiera zrealizowany zysk lub zrealizowana strata konta bankowego.
Ten problem występuje w następujących produktach:

  • Północnoamerykański wersji systemu Microsoft Dynamics NAV 2009 R2

  • Północnoamerykański wersji z dodatkiem Service Pack 1 (SP1) dla systemu Microsoft Dynamics NAV 2009

Rozwiązanie

Ważne: Poprawka (2548309) został przywrócony do pierwotnego kodu i powinny zostać usunięte z żadnych baz danych, gdzie zastosowano tę zmianę. Jeśli wprowadzone zostały zmiany kodu, które są opisane w sekcji "Symptomy", kod można zmienić tak, aby kod pasuje do sekcji "Istniejący kod". Jeśli kod nie zostanie przywrócona, różnica może mieć, na karcie Ogólne uzgodnienia bankowego, a następnie nie wprowadź post.
Problem z nierównowagi księgi głównej (G/L) uzgodnienia bankowego bazy danych obszaru Ameryki Północnej w oryginalnym scenariuszu ponownie utworzyć w tym artykule została ponownie i zbadane. Do dalszej analizy Zarządzanie produktem i rozwoju ustalił, że problem, który został zgłoszony braku równowagi nie jest wynik o nieprawidłowym standardowy kod służący do obliczania uzgadniania konta bankowego, ale problem danych, które jest spowodowane przez początkowej konfiguracji konta bankowego. Niewłaściwe ustawienia początkowe konto bankowe obejmowały zerwanie łącza między zapis księgi konta bankowego i zapis księgi konta K/G. Kroki konfiguracji konta bankowego nieprawidłowych wartości waluty obcej mogą obejmować coś, co przypomina następujące czynności:

  1. Księgowanie dziennika K/G na koncie K/G konta bankowego dla salda początkowego, na przykład konto K/G 11650.

    Uwaga Zwykle są dołączone jako część instalacji początkowej obrotów i sald K/G tej transakcji.

  2. Księguj przyjęcie środków pieniężnych księgowy na konto bankowe, w którym grupa księgowa konta bankowego ma tymczasowego konta K/G, na przykład 11000 przypisany, i nierozliczona transakcji otwartych, takich jak otwarte kontroli i wpływów środków pieniężnych na konto bankowe. Konta przeciwstawnego ustawiono również to samo konto, na przykład 11000, aby wygenerować wpis pranie.

  3. Konto bankowe konto grupy księgowania jest następnie zmieniony od tymczasowego konta K/G konta K/G 11650. W związku z tym zapisu pierwotnego, który został wysłany do ustanowienia ustawienia szczegółowe rachunku bankowego w kroku 2 została do innego konta K/G. W związku z tym nie jest już ustanowione jest łącze do zapisów K/G.

Dodatkowe niewłaściwe ustawienia na konto bankowe w walucie obcej będzie podobny do następującego:

  1. Księgowanie dziennika K/G na koncie K/G konta bankowego dla salda początkowego, na przykład konto K/G 11650.

  2. Następnie księgowanie dziennika głównego na konto bankowe z kontem przeciwstawnym, ustawić na tym samym koncie K/G, jak określono w ramach konta bankowego księgowania grupy, jak w tym przypadku konta K/G 11650.

Ponownie nie ma żadnego łącza między zapis K/G zaksięgowane w kroku 1, a zapis księgi konta bankowego, opublikowany w kroku 2.

Te kroki są niepoprawny sposób przetwarzania na początku nowego konta bankowego zagranicznych. Uruchomienie tego procesu niepoprawne, można napotkać problem opisany w tym artykule (2548309). Ta poprawka (2548309) został dodany do skorygowania określonego scenariusza, który był spowodowany Instalatora, podobny do poprzedniego scenariusza. Jednak księgowania różnych scenariuszy w wyniku problemów z nierównowagi dalszy czy skonfigurować konto bankowe, ale następnie nie przechowywać konta K/G w banku, grupa księgowa, czy istnieje bezpośredni związek między zapisy K/G i zapisów konta bankowego.

Zalecenie: Zalecany proces konfigurowania konto bankowe w walucie obcej będzie podobny do następującego (przy założeniu kwotę w walucie lokalnej dla księgi głównej jest 10 000 zł).

Uwaga — następujące opiera się na kurs wymiany walut 1:1. Kwoty K/G są aktualizowane w walucie lokalnej. W związku z tym ręcznych obliczeń są potrzebne dla konta bankowego, więc GL jest aktualizowana z kwotą odpowiednie waluty lokalnej.

  1. Podczas księgowania początku sald k/g, zaksięgować saldo k/g banku do tymczasowego konta K/G, takich jak konta K/G 11000 dla 10 000 zł.

  2. Księgowanie dziennika głównego na konto bankowe, grupa księgowa konta bankowego ma ustawioną wartość żądanego konta K/G, w tym sprawy konta K/G 11650. W tym miejscu należy ustawić konto przeciwstawne konto K/G 11000, czyli konta początkowe tymczasowych środków pieniężnych, które pierwotnie zostało zaksięgowane jako część instalacji bilans próbny początku.

    -Zaksięgował zapis 10 000 zł zaktualizuje zarówno zagranicznych konto bankowe i konto K/G 11650 do 10 000 zł. Spowoduje również zmniejszenie tego tymczasowego konta K/G 11000 $ $ 0 z powodu potrącenie równoważenia konta z transakcji. Poprzez zamieszczenie w ten sposób istnieje bezpośrednie powiązanie pomiędzy zapis księgi banku i zapis księgi konta K/G. Jest to poprawny sposób przetwarzania i obsługi ustawień z innego konta bankowego.


Informacje o poprawce

Obsługiwana poprawka jest obecnie udostępniana przez firmę Microsoft. Jednak to jest przeznaczona tylko do usunięcia problemu opisanego w tym artykule. Zastosuj ją tylko w systemach, w których występuje ten problem. Ta poprawka może być wciąż w fazie testowania. Jeśli dany system nie jest poważnie narażony na ten problem, firma Microsoft zaleca, aby poczekać na następny dodatek service pack dla systemu Microsoft Dynamics NAV lub następną wersję systemu Microsoft Dynamics NAV, zawierający tę poprawkę.

Uwaga W wyjątkowych przypadkach opłaty, telefonujący do pomocy technicznej mogą zostać anulowane, jeśli pomocy technicznej dla systemu Microsoft Dynamics i produktów powiązanych Określa, że określonej aktualizacji, można rozwiązać swój problem. Koszty obsługi zwykłych zastosuje się do dodatkowych pytań i problemów, których nie można rozwiązać przy użyciu określonej aktualizacji.



Informacje dotyczące instalacji

Firma Microsoft podaje przykłady programowania wyłącznie, bez jakichkolwiek gwarancji wyrażonych wprost lub domyślnie. To obejmuje, ale nie jest ograniczona, ustawowej rękojmi co do przydatności handlowej lub przydatności do określonego celu. W tym artykule założono, że użytkownik zna demonstrowany język programowania oraz narzędzia, które są używane do tworzenia i debugowania procedur. Wykwalifikowani pracownicy pomocy technicznej firmy Microsoft mogą pomóc w wyjaśnieniu, jak działa określona procedura, ale nie będą modyfikować tych przykładów ani dodawać funkcjonalności i konstruować procedur w celu zaspokojenia określonych potrzeb użytkownika.

Uwaga Przed zainstalowaniem tej poprawki należy zweryfikować, że wszyscy użytkownicy klienta Microsoft Navision są wylogowani systemu. Dotyczy to również użytkowników klienta Microsoft Navision Application Services (NAS). Powinny być użytkownika klienta, który jest zalogowany w momencie wdrożyć tę poprawkę.

Aby wdrożyć tę poprawkę, musi mieć licencję deweloperską.

Firma Microsoft zaleca, aby do konta użytkownika w oknie identyfikatorów logowania systemu Windows lub w oknie identyfikatorów logowania bazy danych być przypisany identyfikator roli "SUPER". Jeśli konto użytkownika nie można przypisać Identyfikatora roli "SUPER", należy sprawdzić, czy konto użytkownika ma następujące uprawnienia:

  • Uprawnienie Modyfikacja dla obiektu, który będzie zmieniany.

  • Uprawnienie Execute obiektu 5210 identyfikator obiektu systemu i dla obiektu 9015 identyfikator obiektu systemu .



Uwaga Nie trzeba mieć prawa do magazynów danych, chyba że konieczne jest przeprowadzenie naprawy danych.

Zmiany kodu


Uwaga Zawsze test poprawki kodu w kontrolowanym środowisku przed zastosowaniem poprawki na komputerach produkcyjnych.
Aby rozwiązać ten problem, Zmień kod w funkcji CalculateBalance w tabeli Nagłówek odebranych banku (10120) w następujący sposób:
Istniejący kod

...          REPEAT
IF BankAccLedgEntry.GET(GLEntry."Entry No.") THEN BEGIN
IF "Currency Code" <> BankAccLedgEntry."Currency Code" THEN BEGIN
IF BankAccLedgEntry."Currency Code" <> '' THEN
"G/L Balance" += ROUND(CurrExchRate.ExchangeAmtFCYToFCY("Statement Date",
BankAccLedgEntry."Currency Code",
"Currency Code",
BankAccLedgEntry.Amount),
Currency."Amount Rounding Precision")
ELSE
"G/L Balance" += ROUND(CurrExchRate.ExchangeAmtLCYToFCY("Statement Date",
"Currency Code",
BankAccLedgEntry.Amount,
"Currency Factor"),
Currency."Amount Rounding Precision");
END ELSE BEGIN

// Delete the folloiwng line.
"G/L Balance" += BankAccLedgEntry.Amount;

END;
END ELSE BEGIN
"G/L Balance" += ROUND(CurrExchRate.ExchangeAmtLCYToFCY("Statement Date",
"Currency Code",
GLEntry.Amount,
"Currency Factor"),
Currency."Amount Rounding Precision");
END;
UNTIL GLEntry.NEXT = 0;
...

Kod zastępczy

...          REPEAT
IF BankAccLedgEntry.GET(GLEntry."Entry No.") THEN BEGIN
IF "Currency Code" <> BankAccLedgEntry."Currency Code" THEN BEGIN
IF BankAccLedgEntry."Currency Code" <> '' THEN
"G/L Balance" += ROUND(CurrExchRate.ExchangeAmtFCYToFCY("Statement Date",
BankAccLedgEntry."Currency Code",
"Currency Code",
BankAccLedgEntry.Amount),
Currency."Amount Rounding Precision")
ELSE
"G/L Balance" += ROUND(CurrExchRate.ExchangeAmtLCYToFCY("Statement Date",
"Currency Code",
BankAccLedgEntry.Amount,
"Currency Factor"),
Currency."Amount Rounding Precision");
END ELSE BEGIN

// Add the following lines.
"G/L Balance" += ROUND(CurrExchRate.ExchangeAmtLCYToFCY("Statement Date",
"Currency Code",
GLEntry.Amount,
"Currency Factor"),
Currency."Amount Rounding Precision");
// End of the lines.

END;
END ELSE BEGIN
"G/L Balance" += ROUND(CurrExchRate.ExchangeAmtLCYToFCY("Statement Date",
"Currency Code",
GLEntry.Amount,
"Currency Factor"),
Currency."Amount Rounding Precision");
END;
UNTIL GLEntry.NEXT = 0;
...


Wymagania wstępne

Musi mieć jedną z następujących produktów, w celu zastosowania tej poprawki:

  • Północnoamerykański wersji systemu Microsoft Dynamics NAV 2009 R2

  • Północnoamerykański wersji dodatku Service Pack 1 dla systemu Microsoft Dynamics NAV 2009

Informacje dotyczące usuwania

Nie można usunąć tej poprawki.

Stan

Firma Microsoft potwierdziła, że jest to problem występujący w produktach firmy Microsoft wymienionych w sekcji „Dotyczy”.

Uwaga Jest to artykuł " szybkiej publikacji" tworzony bezpośrednio przez organizację pomocy technicznej firmy Microsoft. Informacje zawarte w niniejszym dokumencie są dostarczane jako odpowiedź na pojawiające się problemy. W wyniku przyspieszonego udostępnienia, materiały te mogą zawierać błędy typograficzne i mogą być zmieniane w dowolnym czasie bez uprzedzenia. Zobacz Warunki użytkowania w celu uzyskania innych informacji.

Potrzebujesz dalszej pomocy?

Chcesz uzyskać więcej opcji?

Poznaj korzyści z subskrypcji, przeglądaj kursy szkoleniowe, dowiedz się, jak zabezpieczyć urządzenie i nie tylko.

Społeczności pomagają zadawać i odpowiadać na pytania, przekazywać opinie i słuchać ekspertów z bogatą wiedzą.

Czy te informacje były pomocne?

Jaka jest jakość języka?
Co wpłynęło na Twoje wrażenia?
Jeśli naciśniesz pozycję „Wyślij”, Twoja opinia zostanie użyta do ulepszania produktów i usług firmy Microsoft. Twój administrator IT będzie mógł gromadzić te dane. Oświadczenie o ochronie prywatności.

Dziękujemy za opinię!

×