בחר נושא להלן כדי ללמוד אודות ניהול חברות במהדורה למפתחים של Northwind.
הערה: יש הפניה לדף זה ב- Access Developer Showcase Edition
ב- Northwind Starter Edition, Customer הוא סוג החברה היחיד. במהדורה למפתחים הרחבנו אותה כך שתכלול לקוחות, שולחיםוספקים.
בנוסף, הרחבנו את המוצרים כדי לכלול ספקים מרובים עבור מוצר.
כל חברה יכולה להיות רק סוג אחד: לקוח, מוביל או ספק. המקרה העסקי שבו ניתן לשנות את סוג החברה מתואר בסעיף frmCompanyDetail במאמר זה. '
סוגי החברה והיכן נעשה בהם שימוש
-
לקוח עבור הזמנה
-
מוביל עבור הזמנה
-
ספק עבור הזמנת רכש
-
ספק עבור מוצר
בנוסף, חברות בגירסה למפתחים של Northwind יכולות להכיל אנשי קשר מרובים. '
חברות ברצועת הכלים
בחירה באפשרות חברות מרצועת הכלים מציגה חברות ב- Northwind ב - frmCompanyList.
רשימת חברה - frmCompanyList
בגירסה למפתחים של Northwind, frmCompanyList הוא טופס מפוצל. טופס מפוצל מספק לך שתי תצוגות של הנתונים בו-זמנית, תצוגת טופס ותצוגת גליוןנתונים. בנוסף, היא כוללת כותרת עליונה וכותרת תחתונה. בהטמעה זו לא נראה את תצוגת הטופס. על-ידי אי הצגת תצוגת הטופס, יהיה לנו גליון נתונים עם כותרת עליונה וכותרת תחתונה.
כך אנחנו משיגים את זה:
ב - frmCompanyList, פס הפיצול בין הכותרת העליונה לגליון הנתונים אינו גלוי. פס הפיצול של טופס המפוצל של מאפיין הטופס מוגדר ללא, ולכן מסתיר את תצוגת הטופס.
טפסים מפוצלים וטפסים בגליון נתונים הם כמו גליונות עבודה של Excel. הם תומכים בסינון ובמיון, ובאפשרותך להציג, להסתיר או להעביר שדות או עמודות. כמו כן, ניתן לסכום עמודות.
מקטעי כותרת עליונה וכותרת תחתונה של טופס מפוצל מאפשרים לך להשתמש בלחצנים של פקודות, תמונות, טקסט(תוויות) וכל פקד טופס גישה אחר שברצונך לשפר את חוויית המשתמש. לקבלת מידע נוסף על טפסים וטפסים מפוצלים, באפשרותך להתחיל כאן. גליונות נתונים אינם מציגים את מקטעי הכותרת העליונה והכותרת התחתונה.
קבל מידע נוסף באמצעות מבוא לטפסיםוייצור טופס מפוצל. '
הטופס 'רשימת חברה' תומך בחמש הפעולות הבאות:
-
החלת מסנן מותאם אישית שנבנה מראש, סינון לפי דרישה או שניהם
-
הצגה/הסתרה של שדות
-
יצירת תוויות
-
הצג מסנן
-
הוסף חברה חדשה
לחץ פעמיים במקום כלשהו בשורת הפירוט כדי לפתוח את הטופס Company Detail (לא רק על מזהה כמו בטפסים אחרים). '
מסננים בנויים מראש וסינון לפי דרישה
טופס frmCompanyList עשיר בהזדמנויות לסינון חברות ב - Northwind. בחלק העליון של המסך, באפשרותך לסנן באמצעות לחצני אפשרויות אלה:
-
כל החברות (ברירת המחדל)
-
לקוחות בלבד
-
שולחים בלבד
-
ספקים בלבד
בנוסף, אפשרויות הסינון המוכללות לפי דרישה בגליון הנתונים זמינות. כל המסננים המוחלים על טופס רשימת החברה (בנוי מראש או לפי דרישה) מועברים וחלים על frmCompanyDetail בעת פתיחתו.
כדי להעביר מסננים מטופס אחד לאחר, עליך לנקות תחילה את מחרוזת המסנן של הטופס כדי להכיל שמות שדות בלבד. עיין במודול הקוד Open_frmCompanyDetail לקבלת הסבר מפורט יותר לגבי האופן בו פעולה זו מתבצעת וב- frmCompanyDetail בהערות של Form_Load כדי לראות כיצד היא מוחלת.
אנו מספקים את פרטי המסנן לטופס Company Detail דרך המאפיין OpenArgs של הטופס במקום לפתוח את הטופס עם תנאי Where . תוכל לקבל מידע נוסף על OpenArgs כאן.
הצגה/הסתרה של שדות
בחר הצג/הסתר שדות כדי לפתוח תיבת דו-שיח עם רשימה של כל השדות הזמינים; באפשרותך לסמן או לבטל את הסימון של עמודה אחת או יותר. הפריסה שנבחרה ממשיכה להתקיים מהפעלה אחת לאחרת עד לפריסת גירסה חדשה של היישום. ראה הצגה או הסתרה של עמודות בגליון נתונים.
יצירת תוויות
לחצן צור תוויות פותח את אשף התוויות של Access. קבל מידע נוסף על אשף התוויות כאן: יצירת תוויות מען ב- Access.
פתיחת פרטי החברה
לחץ פעמיים במקום כלשהו בשורה מפורטת כדי לפתוח את frmCompanyDetail
לחץ על השדה 'מזהה' (מוגדר כהיפר-קישור) או לחץ פעמיים על שדה אחר בשורת הפירוט כדי לפתוח את frmCompanyDetail אל החברה שנבחרה ולהעביר כל מסנן טופס שהוחל על רשימת החברה ל- frmCompanyDetail.
פרטי חברה - frmCompanyDetail
במבט ראשון, ה- frmCompanyDetail עשוי להיראות פשוט יחסית. עם זאת, זה לא. בקוד מאחורי הטופס, קורה הרבה! הטופס מסמן את הפעולות והתכונות הבאות:
-
כמה לחצני פקודות וקישורים
-
הוסף חברה
-
רשימת דואר אלקטרוני של חברה
-
הצג מסנן
-
מחק חברה
-
פתיחת מפה בהתבסס על כתובת
-
פתיחת אתר אינטרנט מהיפר-קישור
-
-
ביטול או שמירה של פעולות במצב הוספה/עריכה
-
כללים עסקיים שיש לקבוע מתי ניתן לשנות סוג חברה
-
בדיקת שלמות הקשרים לפני אירוע המחיקה '
האירוע Form_Load כולל את הפעולות הבאות:
-
השתמש בפרמטרים מרובים שהועברו לטופס באמצעות OpenArgs והפונקציה המותאמת אישית Northwind StringToDictionary
-
השתמש במאפיין הטופס OpenArgs כדי לאפשר למשתמש להוסיף חברה חדשה בעת ביצוע הזמנה
-
השתמש בשיטה GoToRecord כדי להוסיף חברה חדשה
-
השתמש בטכניקה SearchForRecord כדי לעבור לחברה שנבחרה ב- frmCompanyList
-
אפשרויות הסתעפות/ביצוע מותנה ( Form_Load אירוע)
-
אפשרות 1 - משפט מקרה
-
אפשרות 2 - מקוננת אם אחרת
-
אפשרות 3 – ElseIf
-
אפשרות 4 - מקוננת אם אחרת ו- ElseIf '
-
באירוע Form_Current, מתרחשים הפעולות הבאות:
-
שנה כיתוב של טופס משנה ואת אובייקט המקור בזמן ריצה על-ידי קריאה אל ManageFormOptions(). מתבצעת קריאה לתרינת משנה זו ממקומות מרובים בטופס זה. '
ביטול או שמירת פעולות במצב הוספה או עריכה.
טפסי Access שלנו מאוגדים. מה הכוונה? מ- Microsoft: "טופס 'מאוגד' הוא טופס המחובר ישירות למקור נתונים כגון טבלה או שאילתה, ובאפשרותך להשתמש בו כדי להזין, לערוך או להציג נתונים ממקור נתונים זה."
עם טפסים מאוגדים, Access אינו דורש ממך "לשמור" את הנתונים שלך באופן מפורש. בעת מעבר מרשומה אחת ל- Access הבא, Access שומר באופן אוטומטי את הנתונים שלך. לעתים קרובות, פעולה זו פועלת בדיוק כפי שאתה רוצה. אך מה קורה אם משתמש חייב לבצע פעולה כדי לציין שהוא מוכן לשמירה?
לדוגמה, טופס frmCompanyDetail כולל טופס משנה עבור אנשי קשר (sfrmCompanyDetail_Contacts). מה קורה אם אתה מתחיל להוסיף או לערוך את נתוני החברה - נניח מספר טלפון - ושה כדי לתקן שגיאת הקלדה שאתה מבחין בה במידע של איש קשר? כברירת מחדל, Access ישמור את השינויים שביצעת ברשומת החברה בעת לחיצה על רשומת איש הקשר, שאינה מה שאתה רוצה.
בטופס זה, אנו מציגים דרך אחת לביצוע פעולה זו באמצעות רשומה אחת עבור חברה.
מהי הסיבה לכך שלחצן 'ביטול ' נמצא בשימוש? מקש Escape מבטל את כל הנתונים שהוזנו או השתנו (אך לא נשמרו) בפקד בטופס. במצב זה, סמל העיפרון מופיע בבורר הרשומות (סרגל אנכי אפור בצד הימני הרחוק של השורה).
עם זאת, לאחר שתלחץ על לחצן הוסף חברה, תבחין שאין סמל עיפרון עד שתתחיל להזין נתונים ברשומת החברה החדשה. מה אם תשנה את דעתך בהוספת חברה חדשה בשלב זה? אם תקיש על מקש Escape, לא יקרה דבר מאחר שעדיין לא הזנת נתונים. לכן יש לנו את לחצן הביטול.
לחיצה על לחצן ביטול פועלת תמיד; מקש Escape פועל רק לאחר שהזנת או שינית נתונים.
אם אתה מתחיל להוסיף או לשנות נתונים ולאחר מכן סוגר את הטופס מבלי ללחוץ על שמור או ביטול, Access ישמור את הנתונים כברירת מחדל.
כלל עסקי: ככלל עסקי של Northwind עבור חברות, אנו רוצים שתציין במפורש שברצונך "לשמור". כדי להבטיח זאת, עלינו לבדוק אם המשתמש לחץ על שמור באירוע Form_BeforeUpdate ואם הוא לא לחץ על שמור, בקש מהמשתמש לציין אם הוא מעוניין לשמור או לבטל את השינויים שלו. '
שינוי סוג חברה
כלל עסקי: אם לחברה יש הזמנות, הזמנות רכש או ספק עבור מוצר קיימים, למשתמש אין אפשרות לשנות את סוג החברה. יצרנו פונקציה, CompanyIsActive(), כדי לקבוע אם קיים אחד מהתנאים לעיל. אם כן, למשתמש אין אפשרות לשנות את סוג החברה עד שניקו הפניות אלה (יימחקו).
כלל זה נאכף בטופס זה בלבד. ביישום המוכן לייצור, לא תאפשר למשתמשים לשנות נתונים על-ידי פתיחת הטבלה ישירות. ב- Northwind, אנו מאפשרים לך לפתוח את הטבלאות ולבצע כל מה שתרצה. זוהי דרך נהדרת ללמוד, אך היא גם מאפשרת לך לבצע שינויים שעלולים להפר את הכללים.
אתה תמיד צריך לת תוכנית הגנה. תכנן את הבלתי צפוי. גם אם החברה היא כעת מובילת, אין זה אומר שהם לא היו ספק או לקוח בשלב מסוים. ייתכן שהמזהה שלו נמצא רשומות ישנות יותר בטבלאות ProductVendor או PurchaseOrder . '
טופס תיבת דו-שיח מותאם אישית.
כדי להציג את הממצאים שלו, cboCompanyTypeID_BeforeUpdate בתיבת דו-שיח, frmGenericDialog. זו יכולה להיות חלופה מצוינת לתיבת ההודעה הרגילה כאשר יש לך מידע רב להצגה. הוא משמש גם עם טופס העובד למטרה דומה.' מחק בדיקת שלמות הקשרים
ב- Northwind Starter Edition אנו מאפשרים לאוה אופן הפעולה המהווה ברירת מחדל של Access להודיע לך שלא ניתן למחוק חברה כאשר יש לה רשומות קשורות.
ב- Northwind Developer Edition אנו מודיעים לך לפני המחיקה, במקום לקבל את אופן הפעולה המוגדר כברירת מחדל של Access. אנו עושים זאת באמצעות אותה פונקציה שבה השתמשנו בסוג 'שינוי חברה'; Function CompanyIsActive().
ההבדל הוא שאכפת לנו רק מהזמנות או הזמנות רכש. אם אין הזמנות או הזמנות רכש, אנו מאשרים את כוונתך למחוק, ואנו נמחק את ספק המוצר ואנשי הקשר אם הם קיימים עבורך.
-
Northwind 2.0 Developer Edition: Things you should know
-
Northwind 2.0 Developer Edition: All topics