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

תופעות

יש לך הערות משוכפלות או מקושרות מקושרות ב- Microsoft Dynamics GP.

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

פעולה זו לא תתקן אינדקסי הערות שכבר שגויים.


סיבה


אינדקס ההערה הבא בטבלת תבנית הבסיס של החברה (SY01500) הוגדר נמוך מדי וגורם לכך שהרשומות החדשות יקבלו אינדקסי הערות זהים לזה של אחרים.

רזולוציה


1. בצע גיבוי של DYNAMICS וכל מסדי הנתונים של החברה.

2. הפעל את המשפט הבא מול מסד הנתונים של החברה הכולל את ההערות הכפולות או המקושרות.

הערה אם אתה משתמש במנתח השאילתות, הפעל את המשפט ב- SQL Query Analyzer. כדי לפתוח את מנתח השאילתות, לחץ על התחל , הצבע על תוכניות , הצבע על Microsoft SQL Server ולאחר מכן לחץ על מנתח השאילתות . אם אתה משתמש ב- Microsoft SQL Server ניהול, הפעל את המשפט ב- Microsoft SQL Server Management Studio. כדי לפתוח את ניהול Studio, לחץ על התחל , הצבע על תוכניות , הצבע על Microsoft SQL Server 2005/2008/2012 ולאחר מכן לחץ על SQL Server ניהול Studio . כדי להפעיל קובץ Script, לחץ על שאילתה חדשה .

---------------------------------------------
/*
** FindMaxNoteIndex.SQL
**
** מטרה:
**
** מצא את הערך המקסים של NOTEINDX מכל הטבלאות, כולל Project חשבונאות. 
**
** יש להפעיל קובץ Script זה מול החברה שבה ההערות שגויות.
** הוא יעדכן באופן אוטומטי את SY01500 שלך לאינדקס ההערה הבא הנכון.
**
*/

אם קיים (בחר * מתוך tempdb..sysכאשר name = '##GPSMaxNote')

drop table dbo.##GPSMaxNote

הגדרת nocount ב-

יצירת טבלה ##GPSMaxNote (MaxNoteIndex numeric(19,5) null)

עבור

-----------------------

להצהיר @cStatement varchar(255) /* ערך מתוך t_cursor */

להצהיר @noteidx מספרי(19,5)

להצהיר @database כ- varchar(5)

set @database = cast(db_name() as varchar(5))


/* קבל את הטבלאות עם שם עמודה של NOTEINDX. */

להצהיר T_cursor עבור

בחר '@NoteIndex מספריים(19,5) בחר @NoteIndex = max(' +c.name+ ') מתוך ' + o.name + ' insert ##GPSMaxNote value(@NoteIndex)'

מ- sysobjects o, syscolumns c

כאשר o.id = c.id

ו- o.type = 'U'

ו- (c.name = 'NOTEINDX' או c.name כמו '%noteidx%' או c.name כמו '%niteidx%' או c.name ='NOTEINDX2')


/* אישור, יש לנו את רשימת הטבלאות. כעת קבל את הערך המקסים של NOTEINDX מכל טבלה. */

פתח T_cursor

הבא מ- T_cursor אל @cStatement

while (@@fetch_status <> -1)

התחל

exec (@cStatement)

הבא מ- T_cursor אל @cStatement

end

deallocate T_cursor


/* הצגת אינדקס ההערה המרבית */

בחר 'Max Note Index:', max(MaxNoteIndex) מ- ##GPSMaxNote כאשר MaxNoteIndex אינו Null


/* עדכן את אינדקס ההערה הבאה */

שימוש ב- DYNAMICS

הגדר @noteidx = (בחר max(MaxNoteIndex) מ- ##GPSMaxNote כאשר MaxNoteIndex אינו Null)

עדכון SY01500 set NOTEINDX = (@noteidx + 1.0) כאשר INTERID=@database

הגדרת nocount כבוי

--------------------------------------------------------------------------


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


3. חזור על שלב 2 עבור כל מסד נתונים של חברה הכולל אינדקסי הערות מקושרים. 

מאמר זה היה מזהה מסמך TechKnowledge: 4837

חל על

Microsoft Dynamics GP 9.0

Microsoft Business Solutions–Great Plains 8.0

Microsoft Business Solutions–Great Plains 7.5

Microsoft Great Plains eEnterprise 7.0

Microsoft Great Plains Dynamics 7.0

Great Plains eEnterprise 6.0

Great Plains Dynamics 6.0

System Manager

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

מעוניין באפשרויות נוספות?

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

קהילות עוזרות לך לשאול שאלות ולהשיב עליהן, לתת משוב ולשמוע ממומחים בעלי ידע עשיר.

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

עד כמה אתם מרוצים מאיכות השפה?
מה השפיע על החוויה שלך?
בלחיצה על 'שלח', אתה מאפשר למשוב שלך לשפר מוצרים ושירותים של Microsoft. מנהל ה-IT שלך יוכל לאסוף נתונים אלה. הצהרת הפרטיות.

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

×