שלב 2/3 - הגדרת תנאי המסנן
שלב זה מאפשר להגדיר את השאילתות וההתניות למסנן בצורה ויזואלית, כאשר יוצר / עורך המסנן משתמש בלחצנים ומגדיר ערכי שדות בלבד, במקום לכתוב קוד / תסריט (כנדרש במערכות אחרות).
על מנת לצלוח את השלב הנוכחי נדרש ממך:
א. להכיר באופן בסיסי את מבנה הטבלה/אות הנדרשות ליצירת המסנן (לא נדרש לדעת אותם בע"פ).
ב. לדעת באילו מאגרים מאוחסנים הנתונים N=Normal / A=Archive / D=Deleted
ג. להכיר את מפתחות הטבלאות במידה ובמסנן משולבים מספר טבלאות.
דוגמאות:
- על מנת לאתר לקוחות לפי מועד ביצוע ההזמנה שלהם, יש לקשר בין הטבלאות: Clients ו- Orders,
ולהצליב את המידע מהטבלאות הנ"ל באמצעות שדה המפתח: "מספר לקוח" אשר מתקיים בשני הטבלאות.
- כאשר ברצונך לאתר לקוחות לפי מועדי פגישה (מהיומן), עליך לשלב בין הטבלאות Clients + Meeting Invitations + Meetings כאשר
הנך בטבלת ה- Meetings תבצע חיפוש גם במאגר ה- ARCHIVE (A) כי בו ימצאו כלל רשומות היומן ש"מועד הפגישה" עבר ב- 6 חודשים ומעלה.
ממשק החלון
בשלב זה החלון מחולק לשלושה אזורים:- לחצני פעולה - מכיל סט לחצני הוראה, הזמינים בהתאם למיקום הסמן בעץ ההתניות.
- עץ ההתניות - מכיל את התניות השאילתה, כאשר כל ענף בעץ מהווה התניה לאיתור נתונים מטבלה ספציפית אחת.
- מבנה ההתניה - מכיל את השדות למילוי התנאים / הלוגיקה שתשמש את אותה ההתניה.
לחצני הפעולה
לחצני הפעולה הנמצאים בצדו השמאלי של החלון משמשים כלחצני הוראות המשפיעים על עץ ההתניות.הלחצנים נפתחים ונסגרים ללחיצה בהתאם להתניה / לענף שנבחר בעץ ההתניות.
להלן טבלת הסבר אודות תפקיד ומשמעות כל לחצן:
Add Table Query |
לחצן זה מאפשר הוספת טבלה נוספת למסנן מתוך רשימת הטבלאות הקיימות במסד הנתונים. * הלחצן פעיל רק כאשר לוחצים ומסמנים בראש עץ ההתניות את הכותרת "Tables by Algorithm Order". * לא מומלץ להוסיף לעץ ההתניות את אותה הטבלה יותר מפעם אחת. * לאחר שהוספה הטבלה הרצויה לעץ, וודא שהוגדר לה המאגרים הנדרשים לחיפוש בשדה "From Storage Folders (N/A/D)". |
---|---|
Add Where Condition | לחצן זה מוסיף תנאי חדש למסנן, והוא מתווסף כענף בתחתית עץ ההתניות. |
Link to Prev Table Field |
לחצן זה מוסיף קישור בין הטבלה המסומנת בעץ לטבלה נבחרת מעליה. פעולה זו נדרשת כאשר יוצרים מסנן עם יותר מטבלה אחת! כל טבלה ניתנת לקישור רק אל טבלה אחת הנמצאת מעליה בעץ ההתניות. בדוגמה הבאה ניתן לראות כיצד מקושרת טבלת Clients (הלקוחות) אל טבלת Orders (ההזמנות) באמצעות השדה מספר לקוח הקיים בשניהם. |
() Close Group And Start A New One |
הפרדה בין מקבצי התניות. כאשר לא מיישמים את הפונקציה הנוכחית, שרת הנתונים מפענח את תנאי המסנן למקבץ התניות אחד ארוך. לחצן זה מורה לשרת לפצל ולהפריד את ההתניות לכדי מקבצים שונים, עם האפשרות לקשר בין המקבצים על ידי אחד משערי התנאים: AND / OR / AND NOT / OR NOT. לדוגמה, נניח שבעץ ההתניות היו התנאים הבאים: תאריך יצירה = X וגם הליד הגיע דרך = Y וגם טלפון =! ריק במידה ויוסף הסימן () עם הלוגיקה OR מעל התנאי האחרון בעץ, השרת יפענח את התניות המסנן באופן הבא: (תאריך יצירה = X וגם הליד הגיע דרך = Y) או (טלפון =! ריק) |
Duplicate Condition | שכפול התנאי המסומן והוספה שלו אל סוף עץ ההתניות. |
Move Up / Down |
מאפשר הזזת התניה מקום אחד במעלה או מורד עץ ההתניות. סמן את ההתניה הרצויה בלחיצת עכבר ולחץ על הלחצן להזזתה. ההזזה מותרת רק בתוך אותה הטבלה. |
Remove Node |
מחיקת התניה / טבלה מסומנים. מאפשר מחיקה יחידה בכל פעם. סמן את ההתניה או את שם טבלה למחיקה ולחץ על הלחצן. |
אזור הגדרת ההתניה
אזור זה בחלון, מאפשר למשתמש להגדיר את לוגיקת החיפוש להתניה שנבחרה בעץ ההתניותלמעט מקרה אחד שבו נבחרה / סומנה טבלה בעץ ההתניות ואז אזור זה יציג את הגדרות העבודה מול אותה הטבלה, כמתואר בהמשך.
לתשומת לבך, סדר ההדרכה של השדות להלן, הוא סדר בניית הלוגיקה כפי שאנו ממליצים לבצע.
כמו כן, הכוכביות האדומות מורות על שדות שחובה למלאם ואין להשאירם ריקים!
שדה | הסבר |
---|---|
* Table Name |
שם הטבלה לחיפוש. מאפשר את בחירת שם הטבלה הנדרשת להתווסף לשאילתה. שדה זה נדרש למילוי רק פעם אחת - במעמד הוספת הטבלה (לחצן "Add Table Query"). |
* From Storage Folders |
הגדרת עבודה מול טבלה בלבד. הגדרת מקום החיפוש - מורה לשרת הנתונים באיזה מאגר של אותה הטבלה לבצע את החיפוש. שרת הנתונים מחזיק 3 מאגרים לכל טבלה והם:
|
Logic Gate | הגדרת חיבור ההתניה הנוכחית להתניה הקודם. בחירת אופן החיבור בין התנאים הבאים:
|
* Field Name | בשדה זה חובה לבחור את שם השדה שעליו יבוצע החיפוש (שדה המטרה). |
* Where Function |
בשדה זה חובה לבחור את התנאי הלוגי שיופעל בחיפוש הערכים:
|
Value |
שדה זה מאפשר להזין מראש את ערך הפילוח הנדרש עבור אותו התנאי ובכך ליצור פילטר קבוע. לדוגמה: בפילטר איתור לקוחות, בביצוע חיפוש בשדה "הליד הגיע דרך", אם ב- Value יוגדר הערך "אתר האינטרנט", הדבר יגרום לפילטר לאתר את רשומות הלקוחות שהגיעו מאתר האינטרנט. שימוש נוסף לשדה Value מתבצע כאשר נבחר ערך מייצג בשדה "Default Value By Function" בתוספת של אחד מסימני החישוב: "+ | -". במקרה כזה, שדה ה- Value ישפיע על תוצאת הערך המייצג. לדוגמה: נניח שרוצים ליצור התניה המפלחת נתונים על לקוחות שתאריך יצירתם היה לפני יומיים, אזי שבשדה "Default Value By Function" יש לבחור בערך "Today" ובשדה Value נזין את הערך 2-. ברוב המקרים לא נדרש למלא מראש בשדה ה- "Value" כל ערך. מלבד כאשר רוצים לייצר פילטר עם ערכים קבועים. |
Default Value By Function |
שדה זה מאפשר לבחור "ערך מייצג" המיושם אוטומטית לאותו השדה בזמן הפעלת המסנן. "הערך המייצג" קובע לאותה ההתניה את ערכה. בנוסף לכך, במידה ונקבע ערך בשדה Value הוא יחושב אל מול הערך המייצג. דוגמה: עבור התניה על שדה תאריך, כאשר תשתמש בערך המייצג "Today" יקבע לאותו השדה התאריך של יום הפעלת המסנן. ובמידה ונקבע הערך "-2" בשדה Value יפחית המסנן מהתאריך של "Today" יומיים. להלן רשימת ערכים אפשריים לבחירה ומשמעותם:
|
Expose this field with the Caption |
שם השדה כפי שיופיע למשתמש בחלון הפילטר. ניתן לקבוע כל שם, אך מומלץ להזין שם המתאר את משמעות השדה למילוי. שים לב, במידה ולא הוזן שם תצוגה בשדה זה, לא יהיה באפשרותך לחשוף את השדה והוא לא יופיע בחלון הפילטר. כל שדה ללא שם תצוגה (Expose...) המתקיים בשאילתה, חייב להיות בעל ערך ברירת מחדל כל שהוא באחד מהשדות: "Value" או "Default Value By Function". אחרת, המסנן יציג הודעת שגיאה או שלא יציג תוצאות בכלל. |
Special Editor Function | באמצעות שדה זה, יוצר המסנן יכול לקבוע כיצד ומה יוכל המשתמש לבחור או להזין לשדה המטרה בזמן הרצת המסנן. להלן פירוט הערכים האפשריים לבחירה:
|
לחצן המציג ליוצר המסנן את שמות הערכים האפשריים לבחירה עבור שדות מסוג Status. רק אם בתחתית החלון האשף יצוין כי שדה המטרה הנו מסוג Status וגם הוזנו לו ערכים לבחירה, אזי בעת לחיצה על הלחצן המדובר יפתח חלון המסביר את הערכים האפשריים לבחירה. |
חשוב לדעת כי המסנן מבצע את השאילתות וההתניות לפי סדר הופעתן בעץ ההתניות.
לכן, יש לשים לב לסדר ההתניות ולקחת בחשבון שכאשר יוצרים מסנן המורכב ממספר טבלאות, סדר השאילתות יתרחש בהתאם לסדר הופעת הטבלאות מלמעלה למטה.
דוגמה ליצירת התניה
הדוגמה הבאה ממחישה כיצד לייצר התניה המאתרת בטבלת הלקוחות את כל רשומות הלקוחות שנוצרו בטווח תאריכים.- בעץ ההתניות לחץ/בחר את טבלת Clients והוסף התניה חדשה לעץ על ידי לחיצה על לחצן "Add Where Condition".
- בשדה "Field Name" בחר בערך "מועד יצירה"
-
בשדה "Where Function" בחר בערך "Above Value".
* מכיוון שההתניה תהה על שדה תאריך, באפשרותך (לא חובה) להיעזר ולבחור ערך ברירת מחדל בשדה "Default Value by Function". - בשדה "Expose this Field..." תן שם ידידותי למשתמש כגון "החל ממועד יצירה" ==== כאן סיימת לבנות את ההתניה הראשונה המאתרת לקוחות שנוצרו החל מתאריך כל שהוא. כעת נשכפל את ההתניה שהגדרנו: =====
-
בעץ ההתניות סמן בלחיצה את ההתניה שזה עתה יצרת, ולחץ על לחצן "Duplicate Condition"
* שים לב שהסמן בעץ ההתניות קפץ להתניה המשוכפלת (חדשה). -
בשדה "Where Function" בחר בערך "Below Value"
* גם כאן באפשרותך להיעזר בערכי השדה "Default Value by Function". - בשדה "Expose this Field..." שנה את תיאור השדה ותן שם ידידותי כגון "ועד למועד יצירה"
- לחץ המשך למעבר לשלב האחרון של האשף