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

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

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

אובייקט א׳ יהיה זה שבו נבצע את הבחירה (קישור לרשומה), אובייקט ב׳ יכיל רשימה מצומצמת לבחירה (רשומות מתוכו) על פי המידע שמוזן באובייקט ג׳.

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

רשימת פרויקטים מחליפה

 

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

כדי להגדיר שערכי השדה יסוננו לפי שדה מסוג רשומה מקושרת, יש לוודא שקיים שדה מסוג רשומה מקושרת באובייקט פרויקטים המכיל קישור לאובייקט לקוחות (שדה "לקוח").

שדה לקוח באובייקט פרויקט

 

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

שדה לקוח אב ופרויקט באובייקט איש קשר

 

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

הוספת סינון לפי שדה לקוח אב

 

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

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

רשומה מקושרת ללא סינון לפי שדה

 

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