Ця стаття відноситься до Microsoft Dynamics NAV всі країни і всі мови.
Причини
Якщо деякі лотки умови приховання шаблон в Microsoft Dynamics NAV, 2009, Microsoft Dynamics NAV, 2009 не використовує Бен з найвищий рейтинг кошик.
Ця проблема виникає в таких продуктів:
-
Microsoft Dynamics NAV 2009 пакет оновлень 1 (SP1)
-
Microsoft Dynamics NAV 2009 R2
Вирішення
Відомості про виправлення
Корпорація Майкрософт випустила підтримуване виправлення доступна. Однак, застосовувати лише для вирішення проблеми, описаної в цій статті. Він придатний лише для систем, які зазнають цієї конкретної проблеми. Те, що це виправлення може потребувати додаткового тестування. Таким чином, якщо ви не завдає значної, рекомендовано почекати до виходу чергового пакета оновлень Microsoft Dynamics NAV, 2009 або наступної версії Microsoft Dynamics NAV, що містить це виправлення.
Примітка. В окремих випадках оплату звернення до служби підтримки може бути скасовано якщо технічної підтримки професійного для Microsoft Dynamics і пов'язані продукти визначає телефонів служби. Плата стягується на додаткові питання і проблеми, які не пов'язані з оновленням.
Відомості про інсталяцію
Корпорація Майкрософт надає приклади програмного коду тільки для ілюстрації, без гарантій – прямих або інших. Це включає, але не обмежується, будь-яких гарантій придатності до продажу та придатності для певної мети. У цій статті припускається, що ви знайомі з, що демонструє мову програмування та інструменти, які використовуються для створення та налагодження процедури. Співробітники служби підтримки корпорації Майкрософт можуть пояснити функціональні особливості кожної конкретної процедури, але вони не будуть змінювати приклади для реалізації додаткових можливостей або створювати процедури на вимогу окремих користувачів.
Примітка. Перш ніж інсталювати це виправлення, переконайтеся, що усі користувачі Microsoft Navision-клієнт відключився системи. Пакет оновлень містить служб Microsoft Navision застосунків (NAS) клієнта користувачів. Ви повинні тільки клієнт користувача, який увійшов до системи, під час виконання цього виправлення.
Щоб застосувати це виправлення, потрібно мати ліцензію для розробників.
Корпорація Майкрософт рекомендує, що обліковий запис користувача Windows, вхід вікна або у вікні бази даних вхід призначити "Супер" роль ID. Якщо обліковий запис користувача не призначено роль ID "Супер", необхідно переконатися, що обліковий запис користувача, має такі дозволи:
-
Змінити дозвіл об'єкт, який буде змінити.
-
Права для виконання системи об'єкт з Ідентифікатором 5210 об'єкт а також системи об'єкт з Ідентифікатором 9015 об'єкта.
Примітка. Маєте відповідних прав у сховища даних, якщо не потрібно виконати дані відновлення не потрібно.
Зміни коду
Примітка. Завжди тест код вирішення в середовищі контрольовані перед інсталяцією розглянутого виправлення виробництва комп'ютерів.
Щоб вирішити цю проблему, виконайте такі дії.
-
Змінити код FindBin функції створення приховання-Codeunit (7313), у наступним чином:
Наявний код...SETRANGE("Cross-Dock Bin",FALSE);
IF PutAwayTemplLine."Find Empty Bin" THEN
SETRANGE(Empty,TRUE);
IF FIND('+') THEN BEGIN
// Delete the following lines.
IF NOT PutAwayTemplLine."Find Empty Bin" THEN
EXIT(TRUE);
REPEAT
WhseActivLine.SETCURRENTKEY("Bin Code","Location Code","Action Type");
WhseActivLine.SETRANGE("Bin Code",Code);
WhseActivLine.SETRANGE("Location Code",LocationCode);
WhseActivLine.SETRANGE("Action Type",WhseActivLine."Action Type"::Place);
IF NOT WhseActivLine.FIND('-') THEN
EXIT(TRUE);
// End of the deleted lines.
UNTIL NEXT(-1) = 0;
END;
END;
EXIT(FALSE)
...Заміна код
...SETRANGE("Cross-Dock Bin",FALSE);
IF PutAwayTemplLine."Find Empty Bin" THEN
SETRANGE(Empty,TRUE);
IF FIND('+') THEN BEGIN
// Add the following lines.
IF NOT (PutAwayTemplLine."Find Empty Bin" OR PutAwayTemplLine."Find Floating Bin") THEN
EXIT(TRUE);
REPEAT
IF PutAwayTemplLine."Find Empty Bin" THEN BEGIN
WhseActivLine.SETCURRENTKEY("Bin Code","Location Code","Action Type");
WhseActivLine.SETRANGE("Bin Code",Code);
WhseActivLine.SETRANGE("Location Code",LocationCode);
WhseActivLine.SETRANGE("Action Type",WhseActivLine."Action Type"::Place);
IF WhseActivLine.ISEMPTY THEN
IF NOT PutAwayTemplLine."Find Floating Bin" OR IsFloatingBin THEN
EXIT(TRUE);
END ELSE // Find Floating Bin
IF IsFloatingBin THEN
EXIT(TRUE);
// End of the added lines.
UNTIL NEXT(-1) = 0;
END;
END;
EXIT(FALSE)
... -
Змінити код SetCrossDockValues функції створення приховання-Codeunit (7313), у наступним чином:
Наявний код...BEGIN
CrossDock := NewCrossDock;
END;
BEGIN
END.
}
}
...Заміна код
...BEGIN
CrossDock := NewCrossDock;
END;
// Add the following lines.
LOCAL PROCEDURE IsFloatingBin@23() : Boolean;
BEGIN
WITH BinContent DO BEGIN
RESET;
SETRANGE("Location Code",Bin."Location Code");
SETRANGE("Zone Code",Bin."Zone Code");
SETRANGE("Bin Code",Bin.Code);
IF FINDSET THEN
REPEAT
IF Fixed OR Default THEN
EXIT(FALSE);
UNTIL NEXT = 0;
EXIT(TRUE);
END;
END;
// End of the added lines.
BEGIN
END.
}
}
...
Попередні вимоги
Ви повинні мати одну з таких продуктів, щоб застосувати це виправлення:
-
Microsoft Dynamics NAV 2009 пакет оновлень 1 (SP1)
-
Microsoft Dynamics NAV 2009 R2
Відомості про видалення
Це виправлення не можна видалити.
Стан
Корпорація Майкрософт підтвердила існування цієї неполадки у продуктах Майкрософт, перелічених у розділі "Застосовується до".
Примітка. Це "Швидка публікація" статті, надана службою підтримки корпорації Майкрософт. Відомості в цій статті надано без змін у відповідь на повідомлення про проблеми. З огляду на швидкість публікації матеріали можуть містити орфографічні помилки. Їх може бути змінено в будь-який час без повідомлення. Щоб отримати додаткові відомості, див. Умови використання.