מאמר זה חל על Microsoft Dynamics ניווט עבור כל המדינות והאזורים כל שפה.
מאפייני הבעיה
בעת יצירת חוזה שירות (לא כמקדמה) ולשנות את החשבונית לפני הרישום ב- Microsoft Dynamics NAV 2009, אין נתונים לא עקביים בין ערכי ספר ראשי של שירות בספר הראשי. בעיה זו מתרחשת במוצרים הבאים:
-
Microsoft Dynamics R2 2009 סרגל ניווט
-
Microsoft Dynamics NAV 2009 ה-Service Pack 1
פתרון
מידע על תיקונים חמים
תיקון חם נתמך זמין כעת מ- Microsoft. עם זאת, הוא מיועד רק לתיקון הבעיה המתוארת במאמר זה. יש להחיל אותו רק במערכות שהתעוררה בהן בעיה ספציפית זו. תיקון חם זה עשוי לעבור בדיקות נוספות. לכן, אם המערכת שברשותך לא נפגעה באופן חמור מבעיה זו, מומלץ להמתין ל- Microsoft Dynamics NAV 2009 service pack הבאה או גירסת Microsoft Dynamics NAV הבא המכיל תיקון חם זה.הערה במקרים מיוחדים, שהצגת עבור שיחות עשויים לבטל אם מומחה תמיכה טכנית עבור Microsoft Dynamics ומוצרים קשורים יקבע שעדכון ספציפי יפתור את הבעיה. דמי התמיכה המקובלים יחולו על נוספים שאלות וסוגיות תמיכה אשר אינן מצריכות העדכון הספציפי האמור.
מידע על ההתקנה
מיקרוסופט מציעה דוגמאות תכנות לצורך ההדגמה בלבד, ללא אחריות, בין מפורשת ובין משתמעת. זה כולל, אך אינו מוגבל ל, אחריות מכללא לגבי סחירות או התאמה למטרה מסוימת. מאמר זה מבוסס על ההנחה שאתה מכיר את שפת התכנות המודגמת ובקי בהפעלת הכלים המשמשים ליצירת פרוצדורות ולניפוי שגיאות. מהנדסי התמיכה של Microsoft יכולים לסייע בהסברת הפונקציונליות של פרוצדורה מסוימת. עם זאת, הם לא ישנו את הדוגמאות כדי לספק פונקציונליות נוספת או כדי לבנות פרוצדורות שיענו על צרכיך הספציפיים.הערה לפני התקנת תיקון חם זה, ודא כי כל המשתמשים לקוח Microsoft Navision אינם מחוברים למערכת. זה כולל משתמשים לקוח של שירותי היישום של Microsoft Navision (NAS). אתה אמור להיות לקוח בלבד המשתמש המחובר כאשר ליישם תיקון חם זה.כדי ליישם תיקון חם זה, דרוש לך רשיון מפתחים.אנו ממליצים חשבון המשתמש בחלון כניסות Windows או בחלון מסד הנתונים כניסות יוקצו את מזהה תפקיד "סופר". אם חשבון המשתמש אין אפשרות להקצות מזהה תפקיד של "עילי", עליך לוודא כי חשבון משתמש בעל ההרשאות הבאות:
-
שנה את ההרשאה עבור האובייקט שינוי.
-
הרשאת Execute עבור האובייקט 5210 מזהה אובייקט מערכת ועבור האובייקט 9015 מזהה האובייקט של המערכת .
הערה אין לך הרשאות למאגרי נתונים אלא אם כן יש לך לבצע תיקון נתונים.
שינויי קוד
הערה תמיד קוד מחשב פותר בסביבה מבוקרת לפני החלת התיקונים למחשבים הייצור שלך.כדי לפתור בעיה זו, בצע את הפעולות הבאות:
-
שנה את הקוד בטבלת מידות מסמך (357) כדלקמן:קוד קיים 1
... Text005@1009 : TextConst 'ENU=Canceled.'; Text006@1010 : TextConst 'ENU=You may have changed a dimension. Some lines are already shipped. When you post the line with the changed dimension to the general ledger, amounts on the Inventory Interim account will be out of balance when reported per dimension.\\Do you want to update the lines?'; PROCEDURE UpdateGlobalDimCode@25(GlobalDimCodeNo@1000 : Integer;"Table ID"@1001 : Integer;"Document Type"@1002 : Option;"Document No."@1003 : Code[20];"Line No."@1004 : Integer;NewDimValue@1005 : Code[20]);...
קוד החלפה 1
... Text005@1009 : TextConst 'ENU=Canceled.'; Text006@1010 : TextConst 'ENU=You may have changed a dimension. Some lines are already shipped. When you post the line with the changed dimension to the general ledger, amounts on the Inventory Interim account will be out of balance when reported per dimension.\\Do you want to update the lines?'; Text007@1011 : TextConst 'ENU=You cannot change the dimension because the document is based on a service contract.'; PROCEDURE UpdateGlobalDimCode@25(GlobalDimCodeNo@1000 : Integer;"Table ID"@1001 : Integer;"Document Type"@1002 : Option;"Document No."@1003 : Code[20];"Line No."@1004 : Integer;NewDimValue@1005 : Code[20]);...
קוד קיים 2
... PROCEDURE VerifyLineDim@5(VAR DocDim@1000 : Record 357); VAR SalesLine@1001 : Record 37; PurchaseLine@1002 : Record 39; BEGIN CASE "Table ID" OF DATABASE::"Sales Line": BEGIN IF SalesLine.GET(DocDim."Document Type",DocDim."Document No.",DocDim."Line No.") THEN IF (SalesLine."Qty. Shipped Not Invoiced" <> 0) OR (SalesLine."Return Rcd. Not Invd." <> 0) THEN IF NOT CONFIRM(Text004,TRUE,SalesLine.TABLECAPTION) THEN ERROR(Text005) END; DATABASE::"Purchase Line": BEGIN IF PurchaseLine.GET(DocDim."Document Type",DocDim."Document No.",DocDim."Line No.") THEN IF (PurchaseLine."Qty. Rcd. Not Invoiced" <> 0) OR (PurchaseLine."Return Qty. Shipped Not Invd." <> 0) THEN IF NOT CONFIRM(Text004,TRUE,PurchaseLine.TABLECAPTION) THEN ERROR(Text005) END; END; END;...
קוד החלפה 2
... PROCEDURE VerifyLineDim@5(VAR DocDim@1000 : Record 357); VAR SalesLine@1001 : Record 37; PurchaseLine@1002 : Record 39; ServiceHeader@1003 : Record 5900; ServiceLine@1004 : Record 5902; BEGIN CASE "Table ID" OF DATABASE::"Sales Line": BEGIN IF SalesLine.GET(DocDim."Document Type",DocDim."Document No.",DocDim."Line No.") THEN IF (SalesLine."Qty. Shipped Not Invoiced" <> 0) OR (SalesLine."Return Rcd. Not Invd." <> 0) THEN IF NOT CONFIRM(Text004,TRUE,SalesLine.TABLECAPTION) THEN ERROR(Text005) END; DATABASE::"Purchase Line": BEGIN IF PurchaseLine.GET(DocDim."Document Type",DocDim."Document No.",DocDim."Line No.") THEN IF (PurchaseLine."Qty. Rcd. Not Invoiced" <> 0) OR (PurchaseLine."Return Qty. Shipped Not Invd." <> 0) THEN IF NOT CONFIRM(Text004,TRUE,PurchaseLine.TABLECAPTION) THEN ERROR(Text005) END; DATABASE::"Service Header": IF ServiceHeader.GET(DocDim."Document Type",DocDim."Document No.") AND (ServiceHeader."Contract No." <> '') THEN ERROR(Text007); DATABASE::"Service Line": IF ServiceLine.GET(DocDim."Document Type",DocDim."Document No.",DocDim."Line No.") THEN IF (ServiceLine."Contract No." <> '') THEN ERROR(Text007); END; END;...
-
שנה את הקוד בטבלה שורת שירות (5902) כדלקמן:קוד קיים 1
... IF (Quantity <> 0) AND ItemExists(xRec."No.") AND (("Spare Part Action" = "Spare Part Action"::"Component Replaced") OR ("Spare Part Action" = "Spare Part Action"::"Component Installed") OR ("Spare Part Action" = "Spare Part Action"::" ")) THEN ReserveServLine.VerifyChange(Rec,xRec); END; OnDelete=VAR...
קוד החלפה 1
... IF (Quantity <> 0) AND ItemExists(xRec."No.") AND (("Spare Part Action" = "Spare Part Action"::"Component Replaced") OR ("Spare Part Action" = "Spare Part Action"::"Component Installed") OR ("Spare Part Action" = "Spare Part Action"::" ")) THEN ReserveServLine.VerifyChange(Rec,xRec); IF "Document Type" = ServiceLine."Document Type"::Invoice THEN IF ("Appl.-to Service Entry" <> 0) AND ("Contract No." <> '') THEN ERROR(Text046); END; OnDelete=VAR...
קוד קיים 2
... { 5 ; ;Type ;Option ;OnValidate=BEGIN GetServHeader; TESTFIELD("Qty. Shipped Not Invoiced",0);...קוד החלפה 2
... { 5 ; ;Type ;Option ;OnValidate=BEGIN IF ("Appl.-to Service Entry" <> 0) AND ("Contract No." <> '') THEN ERROR(Text046); GetServHeader;...קוד קיים 3
... { 6 ; ;No. ;Code20 ;TableRelation=IF (Type=CONST(" ")) "Standard Text" ELSE IF (Type=CONST(G/L Account)) "G/L Account" ELSE IF (Type=CONST(Item)) Item ELSE IF (Type=CONST(Resource)) Resource ELSE IF (Type=CONST(Cost)) "Service Cost"; OnValidate=VAR ShowLocMessage@1000 : Boolean; BEGIN TESTFIELD("Qty. Shipped Not Invoiced",0);...קוד החלפה 3
... { 6 ; ;No. ;Code20 ;TableRelation=IF (Type=CONST(" ")) "Standard Text" ELSE IF (Type=CONST(G/L Account)) "G/L Account" ELSE IF (Type=CONST(Item)) Item ELSE IF (Type=CONST(Resource)) Resource ELSE IF (Type=CONST(Cost)) "Service Cost"; OnValidate=VAR ShowLocMessage@1000 : Boolean; BEGIN IF ("Appl.-to Service Entry" <> 0) AND ("Contract No." <> '') THEN ERROR(Text046); TESTFIELD("Qty. Shipped Not Invoiced",0);...קוד קיים 4
... { 22 ; ;Unit Price ;Decimal ;OnValidate=BEGIN GetServHeader; IF ("Unit Price" > ServHeader."Max. Labor Unit Price") AND...קוד החלפה 4
... { 22 ; ;Unit Price ;Decimal ;OnValidate=BEGIN GetServHeader; IF ("Appl.-to Service Entry" > 0) AND (CurrFieldNo <> 0) THEN ERROR(Text046,FIELDCAPTION("Unit Price")); IF ("Unit Price" > ServHeader."Max. Labor Unit Price") AND...קוד קיים 5
... Text043@1097 : TextConst 'ENU=You cannot change the value of the %1 field manually if %2 for this line is %3'; Text044@1012 : TextConst 'ENU=Do you want to split the resource line and use it to create resource lines\for the other service items with divided amounts?'; Text045@1099 : TextConst 'ENU=You cannot delete this service line because one or more service entries exist for this line.';...
קוד החלפה 5
... Text043@1097 : TextConst 'ENU=You cannot change the value of the %1 field manually if %2 for this line is %3'; Text044@1012 : TextConst 'ENU=Do you want to split the resource line and use it to create resource lines\for the other service items with divided amounts?'; Text045@1099 : TextConst 'ENU=You cannot delete this service line because one or more service entries exist for this line.'; Text046@1100 : TextConst 'ENU=You cannot modify the document because it is based on a service contract.';...
דרישות מוקדמות
עליך להגדיר אחד מהמוצרים הבאים מותקנים כדי להחיל תיקון חם זה:
-
Microsoft Dynamics R2 2009 סרגל ניווט
-
Microsoft Dynamics NAV 2009 ה-Service Pack 1
מידע בדבר הסרת ההתקנה
אין אפשרות להסיר את התיקון החם.
מצב
Microsoft אישרה כי מדובר בבעיה במוצרי Microsoft הרשומים במקטע 'חל על'.
הערה זהו מאמר "פרסום מהיר" שנוצר ישירות בתוך ארגון התמיכה של Microsoft. המידע הכלול במסמך זה מסופק כמו שהוא כתגובה לבעיות המתעוררות. כתוצאה מהמהירות בביצוע כדי להפוך אותו לזמין, החומרים עשויים לכלול שגיאות טיפוגרפיות וייתכן שיבוצעו בהם שינויים בכל עת ללא הודעה מוקדמת. ראה תנאי השימוש שיקולים נוספים.