שדרוג עלול לגרום אומדן מלאי - WIP הדוח (5802) להצגת כמויות שגוי ב- Microsoft Dynamics NAV 2009

תבנית: CPR - תבנית Fiacx קוד Navision

באג #: 208379 (תחזוקת תוכן)

מאפייני הבעיה

לאחר שדרוג מ- Microsoft Dynamics NAV 3.7 ל- Microsoft Dynamics NAV 2009, הדוח אומדן מלאי - WIP (5802) תוכל להראות כמויות שגוי. ערכת שדרוג יש לאכלס בשדה שהוצב עלות צפויים כדי בספר ערך כאשר עלויות לא נרשמה כדי G/l. בצע את השלבים במקטע קוד שינויים כדי לפתור בעיה זו. בעיה זו מתרחשת במוצרים הבאים:

  • Microsoft Dynamics R2 2009 סרגל ניווט

  • Microsoft Dynamics NAV 2009 ה-Service Pack 1 (SP1)

פתרון

מידע על תיקונים חמים

תיקון חם נתמך זמין כעת מ- Microsoft. עם זאת, הוא מיועד רק לתיקון הבעיה המתוארת במאמר זה. יש להחיל אותו רק במערכות שהתעוררה בהן בעיה ספציפית זו. תיקון חם זה עשוי לעבור בדיקות נוספות. לכן, אם המערכת שברשותך לא נפגעה באופן חמור מבעיה זו, מומלץ להמתין ל- Microsoft Dynamics NAV 2009 service pack הבאה או גירסת Microsoft Dynamics NAV הבא המכיל תיקון חם זה.

הערה במקרים מיוחדים, שהצגת עבור שיחות עשויים לבטל אם מומחה תמיכה טכנית עבור Microsoft Dynamics ומוצרים קשורים יקבע שעדכון ספציפי יפתור את הבעיה. דמי התמיכה המקובלים יחולו על נוספים שאלות וסוגיות תמיכה אשר אינן מצריכות העדכון הספציפי האמור.

אם תיקון חם זה לא פורסם להורדה עבור הציבור הרחב (כלומר שמאמר זה אינו מספק כתובת URL ציבורית להורדת התיקון החם), הפצתו דורשת באישור מאת ראש צוות טכני, חבר צוות הסלמה או מנהל, ויחולו הבאים:

  • כדי לקבל את התיקון החם, חייב להתאים למצוין באג המוזכרת בסעיף "מאפייני הבעיה".

  • עליך לנהל מעקב אחר לקוחות שלח זו כדי לספק אותם עם ה-service pack הבאה לכשתהיה זמינה (ואם אכן תפורסם service pack).

תיקון חם זה אינו מיועד להיכלל עם Microsoft Dynamics NAV Service Pack.

מידע על ההתקנה

מיקרוסופט מציעה דוגמאות תכנות לצורך ההדגמה בלבד, ללא אחריות, בין מפורשת ובין משתמעת. זה כולל, אך אינו מוגבל ל, אחריות מכללא לגבי סחירות או התאמה למטרה מסוימת. מאמר זה מבוסס על ההנחה שאתה מכיר את שפת התכנות המודגמת ובקי בהפעלת הכלים המשמשים ליצירת פרוצדורות ולניפוי שגיאות. מהנדסי התמיכה של Microsoft יכולים לסייע בהסברת הפונקציונליות של פרוצדורה מסוימת. עם זאת, הם לא ישנו את הדוגמאות כדי לספק פונקציונליות נוספת או כדי לבנות פרוצדורות שיענו על צרכיך הספציפיים.

הערה לפני התקנת תיקון חם זה, ודא כי כל המשתמשים לקוח Microsoft Dynamics NAV אינם מחוברים למערכת. זה כולל שירותי Microsoft Dynamics NAV יישום שרת (NAS). אתה אמור להיות לקוח בלבד המשתמש המחובר כאשר ליישם תיקון חם זה.

כדי ליישם תיקון חם זה, דרוש לך רשיון מפתחים.

אנו ממליצים חשבון המשתמש בחלון כניסות Windows או בחלון מסד הנתונים כניסות יוקצו את מזהה תפקיד "סופר". אם חשבון המשתמש אין אפשרות להקצות מזהה תפקיד של "עילי", עליך לוודא כי חשבון משתמש בעל ההרשאות הבאות:

  • שנה את ההרשאה עבור האובייקט שינוי.

  • הרשאת Execute עבור האובייקט 5210 מזהה אובייקט מערכת ועבור 9015 מזהה אובייקט מערכת

    אובייקט.

הערה אין לך הרשאות למאגרי נתונים אלא אם כן יש לך לבצע תיקון נתונים.

שינויי קוד

הערה תמיד קוד מחשב פותר בסביבה מבוקרת לפני החלת התיקונים למחשבים הייצור שלך.

כדי לפתור בעיה זו, שנה את הקוד בפונקציה UpdateValueEntry ב codeunit השדרוג של נווט שלב 2009 2 (104048) באופן הבא:

קוד קיים 1

...ExpValueEntry."Sales Amount (Expected)" += "Sales Amount (Expected)";
ExpValueEntry."Cost Amount (Expected) (ACY)" += "Cost Amount (Expected) (ACY)";

// Delete the following lines.
CASE TRUE OF
(("Cost Posted to G/L" = 0) AND ("Cost Posted to G/L (ACY)" = 0) AND
ItemLedgEntry."Completely Invoiced"):
BEGIN
"Expected Cost Posted to G/L" := "Cost Amount (Expected)";
"Exp. Cost Posted to G/L (ACY)" := "Cost Amount (Expected) (ACY)";

ExpValueEntry."Expected Cost Posted to G/L" -= "Expected Cost Posted to G/L";
ExpValueEntry."Exp. Cost Posted to G/L (ACY)" -= "Exp. Cost Posted to G/L (ACY)";
END;
(("Cost Posted to G/L" = "Cost Amount (Expected)") AND
("Cost Posted to G/L (ACY)" = "Cost Amount (Expected) (ACY)")):
BEGIN
"Expected Cost Posted to G/L" := "Cost Amount (Expected)";
"Exp. Cost Posted to G/L (ACY)" := "Cost Amount (Expected) (ACY)";
END;
("Cost Posted to G/L" <> 0) OR ("Cost Posted to G/L (ACY)" <> 0):
BEGIN
"Expected Cost Posted to G/L" :=
ROUND("Cost Amount (Expected)" * QtyFactor,GLSetup."Amount Rounding Precision");
"Exp. Cost Posted to G/L (ACY)" :=
ROUND("Cost Amount (Expected) (ACY)" * QtyFactor,Currency."Amount Rounding Precision");

ExpValueEntry."Expected Cost Posted to G/L" -=
ROUND("Expected Cost Posted to G/L",GLSetup."Amount Rounding Precision");
ExpValueEntry."Exp. Cost Posted to G/L (ACY)" -=
ROUND("Exp. Cost Posted to G/L (ACY)",Currency."Amount Rounding Precision");
END;
// End of the deleted lines.

END;
"Cost Posted to G/L" := 0;
"Cost Posted to G/L (ACY)" := 0;
...

קוד החלפה 1

...ExpValueEntry."Sales Amount (Expected)" += "Sales Amount (Expected)";
ExpValueEntry."Cost Amount (Expected) (ACY)" += "Cost Amount (Expected) (ACY)";

// Add the following lines.
IF InvtSetup."Expected Cost Posting to G/L" THEN
CASE TRUE OF
(("Cost Posted to G/L" = 0) AND ("Cost Posted to G/L (ACY)" = 0) AND
ItemLedgEntry."Completely Invoiced"):
BEGIN
"Expected Cost Posted to G/L" := "Cost Amount (Expected)";
"Exp. Cost Posted to G/L (ACY)" := "Cost Amount (Expected) (ACY)";

ExpValueEntry."Expected Cost Posted to G/L" -= "Expected Cost Posted to G/L";
ExpValueEntry."Exp. Cost Posted to G/L (ACY)" -= "Exp. Cost Posted to G/L (ACY)";
END;
(("Cost Posted to G/L" = "Cost Amount (Expected)") AND
("Cost Posted to G/L (ACY)" = "Cost Amount (Expected) (ACY)")):
BEGIN
"Expected Cost Posted to G/L" := "Cost Amount (Expected)";
"Exp. Cost Posted to G/L (ACY)" := "Cost Amount (Expected) (ACY)";
END;
("Cost Posted to G/L" <> 0) OR ("Cost Posted to G/L (ACY)" <> 0):
BEGIN
"Expected Cost Posted to G/L" :=
ROUND("Cost Amount (Expected)" * QtyFactor,GLSetup."Amount Rounding Precision");
"Exp. Cost Posted to G/L (ACY)" :=
ROUND("Cost Amount (Expected) (ACY)" * QtyFactor,Currency."Amount Rounding Precision");

ExpValueEntry."Expected Cost Posted to G/L" -=
ROUND("Expected Cost Posted to G/L",GLSetup."Amount Rounding Precision");
ExpValueEntry."Exp. Cost Posted to G/L (ACY)" -=
ROUND("Exp. Cost Posted to G/L (ACY)",Currency."Amount Rounding Precision");
END;
// End of the added lines.

END;
"Cost Posted to G/L" := 0;
"Cost Posted to G/L (ACY)" := 0;
...

קוד קיים 2

...TempDocValueEntry."Cost Amount (Expected) (ACY)" += "Cost Amount (Expected) (ACY)";
TempDocValueEntry.MODIFY;

// Delete the following lines.
IF (ABS(ExpValueEntry."Expected Cost Posted to G/L") > ABS("Cost Amount (Expected)")) OR
(ABS(ExpValueEntry."Exp. Cost Posted to G/L (ACY)") > ABS("Cost Amount (Expected) (ACY)"))
THEN BEGIN
"Expected Cost Posted to G/L" := "Cost Amount (Expected)";
"Exp. Cost Posted to G/L (ACY)" := "Cost Amount (Expected) (ACY)";

ExpValueEntry."Expected Cost Posted to G/L" -= "Cost Amount (Expected)";
ExpValueEntry."Exp. Cost Posted to G/L (ACY)" -= "Cost Amount (Expected) (ACY)";
END ELSE BEGIN
"Expected Cost Posted to G/L" := ExpValueEntry."Expected Cost Posted to G/L";
"Exp. Cost Posted to G/L (ACY)" := ExpValueEntry."Exp. Cost Posted to G/L (ACY)";

ExpValueEntry."Expected Cost Posted to G/L" := 0;
ExpValueEntry."Exp. Cost Posted to G/L (ACY)" := 0;
END;
// End of the deleted lines.

END;
END;
UpdateCostToPostToGL(ValueEntry);

...

קוד החלפה 2



...
 TempDocValueEntry."Cost Amount (Expected) (ACY)" += "Cost Amount (Expected) (ACY)";                      TempDocValueEntry.MODIFY;

// Add the following lines.
IF InvtSetup."Expected Cost Posting to G/L" THEN
IF (ABS(ExpValueEntry."Expected Cost Posted to G/L") > ABS("Cost Amount (Expected)")) OR
(ABS(ExpValueEntry."Exp. Cost Posted to G/L (ACY)") > ABS("Cost Amount (Expected) (ACY)"))
THEN BEGIN
"Expected Cost Posted to G/L" := "Cost Amount (Expected)";
"Exp. Cost Posted to G/L (ACY)" := "Cost Amount (Expected) (ACY)";

ExpValueEntry."Expected Cost Posted to G/L" -= "Cost Amount (Expected)";
ExpValueEntry."Exp. Cost Posted to G/L (ACY)" -= "Cost Amount (Expected) (ACY)";
END ELSE BEGIN
"Expected Cost Posted to G/L" := ExpValueEntry."Expected Cost Posted to G/L";
"Exp. Cost Posted to G/L (ACY)" := ExpValueEntry."Exp. Cost Posted to G/L (ACY)";

ExpValueEntry."Expected Cost Posted to G/L" := 0;
ExpValueEntry."Exp. Cost Posted to G/L (ACY)" := 0;
END;
// End of the added lines.

END;
END;
UpdateCostToPostToGL(ValueEntry);
...


דרישות מוקדמות

עליך להגדיר אחד מהמוצרים הבאים מותקנים כדי להחיל תיקון חם זה:

  • Microsoft Dynamics R2 2009 סרגל ניווט

  • Microsoft Dynamics SP1 2009 סרגל ניווט

מידע בדבר הסרת ההתקנה

אין אפשרות להסיר את התיקון החם.

מצב

Microsoft אישרה כי מדובר בבעיה במוצרי Microsoft הרשומים במקטע 'חל על'.

הפניות

VSFT DynamicsNAVSE: 359675

הערה זהו מאמר "פרסום מהיר" שנוצר ישירות בתוך ארגון התמיכה של Microsoft. המידע הכלול במסמך זה מסופק כמו שהוא כתגובה לבעיות המתעוררות. כתוצאה מהמהירות בביצוע כדי להפוך אותו לזמין, החומרים עשויים לכלול שגיאות טיפוגרפיות וייתכן שיבוצעו בהם שינויים בכל עת ללא הודעה מוקדמת. ראה תנאי השימוששיקולים נוספים.

מחבר: hholmin
Writer: v-luzo
סוקר טכני: hholmin
Editor:

זקוק לעזרה נוספת?

הרחב את הכישורים שלך
סייר בהדרכה
קבל תכונות חדשות לפני כולם
הצטרף למשתתפי Microsoft insider

האם מידע זה היה שימושי?

תודה על המשוב!

תודה על המשוב! נראה שכדאי לקשר אותך לאחד מנציגי התמיכה של Office.

×