Ознаки
Системне повідомлення 5 – "Повторюване значення ключа знайдено в наявному записі. Поточна операція оновлення бази даних призводить до того, що рядок містить повторюване значення ключа на основі унікального індексу". виникає в розділі "Заробітна плата".
Причини
1. Ця помилка виникає під час випуску пакета перевірки в пакетах З PR-пакетів випуску заробітної плати (02.400.00). Пакет PR випускається в PRTRAN, PRDOC і GLTRAN, але пакет має стан призупинення. Див. статтю Роздільна здатність 22627.
2. Відрахування, раніше визначене як місцеве відрахування, тепер визначається як державне відрахування, починаючи з 01.01.2000. Завантаження податкових таблиць змінить тип відрахування для цього ідентифікатора відрахування. Однак у процесі закриття створюється новий набір записів EARNDED на основі того, що існувало в попередньому році. Функція EARNDED і надалі відображатиме тип "Локальний". Під час першої спроби обчислення заробітної плати, буде виявлено невідповідність між ВІДРАХУВАННЯ. DedType і EARNDED. Поля EarnDedType. Див. роздільну здатність 17010.
3. 2000 податок на заробітну плату таблиці завантажено та намагається обчислити перший заробітної плати для 2000 року. Див. статтю Роздільна здатність 17010.
4. Перетворення FastForward з випуску 2.06 не вдалося створити записи PRDOC, але створіть записи PRTRAN для наявного refNbr, який також використовувався в новому пакеті перевірки заробітної плати. Див. статтю Вирішення 20511.
Спосіб усунення проблеми
Вирішення 17010 - Змінити тип відрахування в розрахунок заробітної плати (02.290.00).
Нотатки
1. Це потрібно зробити лише з повним резервним копіюванням бази даних і всі інші користувачі вийшли з Dynamics SL.
2. Цю зміну слід внести лише після друку всіх звітів за кінець року. В даний час, якщо зміни вносяться в відрахування (02.290.00), друк W-2s за попередній рік буде використовувати інформацію відрахування, як це (а не як це було за рік друкується). Якщо відрахування було місцевим відрахуванням в 1999 році, а потім змінилося на державне відрахування в 2000 році, як тільки відрахування було оновлено на 2000 рік, друк W-2s для 1999 року покаже ці суми відрахувань в полі "Держава" замість місцевої коробки.
Кроки виправлення
1. Доступ відрахування заробітної плати (02.290.00) і виберіть відрахування, що є проблематичним.
2. Змініть тип відрахування на щось інше, ніж те, що відображається.
3. Збережіть зміни.
4. Доступ відрахування і змінити тип відрахування назад на правильний тип відрахування.
5. Збережіть зміни. Це оновить запис DEDUCTION і всі пов'язані записи EARNDED.
Вирішення 20511 - видалення перетворених ЗАПИСІВ PRTRAN, які не мають наявних записів PRDOC.
Кроки виправлення
1. Створити резервну копію бази даних, яку можна відновити на випадок, якщо станеться небажана втрата даних.
2. За допомогою аналізатора запитів відкрийте відповідну базу даних застосунків і виконайте наведену нижче інструкцію, щоб визначити, чи використовується RefNbr у записах PRTRAN, перетворених із 2.06, а також у пакеті перевірки заробітної плати, що виникає помилка. Занотуйте знайдені значення BatNbr і CalYR.
Примітка.
SELECT BatNbr, RefNbr, CalYR, * з PRTRAN, де RefNbr = "XXXXXX" і TranType = "CK"
(де XXXXXX = перевірка номера, що генерує помилку)
3. Виконайте наведену нижче інструкцію, щоб знайти відповідні записи PRDOC, і порівняйте BatNbr і CalYR з тим, що було зазначено на кроці 1:
Примітка.
SELECT BatNbr, ChkNbr, CalYR, * з PRDOC, де ChkNbr = "XXXXXX" і DocType = "CK"
(де XXXXXX = перевірка номера, що генерує помилку)
4. Видаліть записи PRTRAN, які не мають пов'язаних записів PRDOC:
Примітка.
Видалити з PRTRAN, де BatNbr = "BBBBBB" і RefNbr = "XXXXXX" і CalYR = "NNNN"
(де BBBBBB = номер пакета, XXXXXX = перевірити номер, що генерує помилку, і NNNN = відповідні Calendar року)
5. Закрийте аналізатор запитів і знову відпустіть пакет перевірки заробітної плати.
Роздільна здатність 22627 – усуньте стан пакета перевірки заробітної плати на "Unposted" за допомогою аналізатора запитів.
1. Створити резервну копію бази даних, яку можна відновити на випадок, якщо станеться небажана втрата даних.
2. Використовуючи аналізатор запитів, отримати доступ до відповідної бази даних застосунку і виконайте наведені нижче інструкції, щоб переконатися, що поле Rlsed має значення True (1) у записах PRDOC і PRTRAN для пакета перевірки заробітної плати:
Примітка.
SELECT * from PRDOC where BatNbr = "XXXXXX" SELECT * from PRTRAN where BatNbr = "XXXXXX"
(де XXXXXX = номер пакета ПЕРЕВІРКИ PR)
3. У режимі ініціалізації перейдіть до General Ledger журналу транзакцій (01.010.00), підніміть ПАКЕТ ПЕРЕВІРКИ PR і переконайтеся, що транзакції збалансований.
4. Якщо наведені вище 2 кроки в порядку, перейдіть до кроків виправлення.
5. За допомогою аналізатора запитів виконайте наведену нижче інструкцію, щоб змінити стан пакета на "U":
Примітка.
Update BATCH SET Status = "U", де Модуль = "PR" і BatNbr = "XXXXXX"
(де XXXXXX = номер пакета ПЕРЕВІРКИ PR)
Ця стаття була TechKnowledge Document ID:128082