בסדרת סרטוני לימוד זו, אני מלמד צעד אחר צעד כיצד לבנות אפליקציית מובייל ואינטרנט מאפס, תוך שימוש ישיר בנתונים מ-Google Sheets או אקסל. אין צורך לדעת תיכנות כדי ליצור אפליקציה בשיטה הזו.
למדריך הקודם 3/10 בסדרה לחצו כאן
למדריך הבא 5/10 בסדרה לחצו כאן
איך להפוך אקסל לאפליקציה 4/10: קשרים בין טבלאות - יחיד לרבים
למדריך הקודם בסדרה - לחצו כאן
בחלק זה, אנחנו נלמד משהו חשוב בתחום של בניית אפליקציות. אנחנו עוברים מניהול נתונים בטבלה אחת למודל נתונים שמייצג יחס בין פיסות מידע - מייד תבינו במה מדובר (Relational Data Model). זה יתן לנו הרבה יתרונות בהמשך, וכבר כרגע יאפשר לנו ליצור מערכת ניהול לקוחות שלמה שמונעת כפילויות של מידע וגם מקלה על העבודה. אנחנו בונים עבורכם אפליקציות מובייל מבוססות אקסל שחוסכות עשרות שעות עבודה בחודש.
פתרון מקצועי, מהיר וכלכלי – בשבריר ממחיר של פיתוח תוכנה.העסק גדל? הפוך את האקסל לאפליקציה חכמה.
1. יצירת קשר אחד לרבים (One-to-Many)
המטרה העיקרית שלנו היא לחסוך לדניאל זמן הקלדה. אנחנו רוצים להימנע מכך שהוא יצטרך להזין מחדש את פרטי הכתובת והטלפון של לקוחות חוזרים בכל פעם שפותחים קריאת שירות.
הצורך שלנו: אנחנו חייבים ליישם קשר “אחד לרבים” (One-to-Many), כלומר: לקוח אחד יכול לייצר קריאות שירות רבות. הופכים את קבצי האקסל המפוזרים שלכם לאפליקציית ניהול חכמה ונגישה מכל מקום.
פתרון מודרני, מהיר ומשתלם שמחזיר לכם את השליטה לעסק.האקסל הפך לבלגן? הגיע הזמן לסדר.
איך יוצרים קשר אחד לרבים ב- AppSheet
- הקמת טבלת לקוחות: אנחנו יוצרים גיליון אלקטרוני חדש בשם Customers. טבלה זו תשמש כטבלת ה"אחד" ותאחסן את כל פרטי הלקוח הקבועים (ID, שם, טלפון, כתובת).
- חיבור ואימות: קודם כל נחבר את טבלת Customers לאפליקציה ומגדירים ולידציה (Valid if) על שדה הטלפון כדי לוודא שאיכות הנתונים בטבלה הראשית גבוהה.
- יצירת הקשר אחד לרבים (Ref): זהו העיקרון המרכזי. בטבלת קריאות השירות (Service Request), אנחנו משנים את סוג העמודה Customer Name לסוג Ref (רפרנס/קישור). אנחנו מפנים את הקישור הזה לטבלת Customers. כך, במקום טקסט חופשי של שם הלקוח, מעכשיו השדה מכיל מזהה ייחודי שמפנה לשורת הלקוח המלאה בטבלת לקוחות (הטבלה שכרגע יצרנו).
- תוצאה: בזכות הקישור, אנחנו מקבלים שתי יכולות קריטיות:
- בחירה פשוטה של לקוחות: בשדה שם לקוח, אנחנו יכולים עכשיו לבחור את הלקוח מתוך רשימה נפתחת (Dropdown) במקום להקליד מחדש.
- נתונים קשורים אוטומטית: במסך הלקוח, נראה מעכשיו באופן אוטומטי את כל קריאות השירות הקשורות אליו, ללא צורך בפעולה נוספת. **(**גם שינינו את שם טבלת המקור ל-Service Request כדי שיהיה שם ברור יותר).
2. תיקון הכפתור שמוביל למפה, שנשבר בעקבות השינוי שעשינו 🗺️
יצירת ה-Ref שוברת את מבנה הנתונים הקודם, ואנחנו חייבים לבצע סדרה של תיקונים יסודיים כדי להתאים את הלוגיקה החדשה.
- מחיקת כפילויות ורענון: נמחק את עמודות הכתובת והטלפון המיותרות מגיליון קריאות השירות (כיוון שהן נמצאות כבר בטבלת Customers). לאחר המחיקה, נבצע רענון סכמה (Regenerate Schema) ב-AppSheet כדי להסיר את העמודות הלא-רלוונטיות גם מהאפליקציה.
- העברת העמודה הווירטואלית: נזכור שיש לנו עמודה הווירטואלית Address in USA (שמטרתה להוסיף את “Ohio, USA” לכל כתובת לצורך מיפוי מדויק). העמודה זו לא רלוונטית עוד בטבלת הקריאות, ולכן אנחנו נעתיק אותה וניצור אותה מחדש בטבלת Customers (ליד הכתובת המקורית).
- עכשיו נגדיר את סוג העמודה החדשה כ-Address כדי שהמפה תזהה אותה.
- נסתיר אותה (Show: off) כיוון שהיא משמשת רק ככלי חישוב ברקע.
- ונתקן את מסך המפה: נכוון מחדש את מסך המפה הקיים (our map) כך שישתמש בכתובת המדויקת מהעמודה הווירטואלית החדשה, שנמצאת כעת בטבלת הלקוחות.
3. תיקון כפתור הניווט
בגלל השינוי שעשינו בטבלאות, מה קרה? כפתור הפעולה המקורי שלקח אותנו אל המפה כבר לא פועל כראוי. אז נתקן אותו וכך ומשפרים את הניווט:
- תיקון כפתור קיים (Go to target): הכפתור הזה נווט למפה על בסיס ה-ID של קריאת השירות. נתקן אותו כך שישתמש ב-ID של הלקוח המקושר. בשביל זה נשתמש בנוסחה LINKTOROW כדי לקשר למסך המפה (our map) באמצעות ה-ID של הרפרנס של הלקוח.
- ניצור כפתור מפה ייעודי בטבלת לקוחות:
- נסתיר את כפתורי המפה המובנים והלא מדויקים של AppSheet בטבלת הלקוחות.
- ניצור כפתור פעולה מותאם אישית חדש בשם Show on map.
- ונמקם אותו במיקום Inline (בצמוד לשורת הנתונים) כדי שיהיה נגיש במיוחד ליד שדה הכתובת.
- כפתור זה יקח אותנו בלחיצה ישירות אל למפה על בסיס ה-ID של הלקוח ובכך מבטיח שימוש בכתובת המלאה והמדויקת שהוכנה בעמודה הווירטואלית. צריכים אפליקציה לעסק? אנחנו מפתחים אפליקציות על בסיס אקסל. מוזמנים ליצור קשר ←
סיכום - קשרים בין טבלאות
לסיכום, בחלק זה הפכנו את הנתונים שלנו למודל נתונים יחסי באמצעות קישור Ref. למדנו כיצד לשלוט על מבנה הנתונים על ידי רענון סכמה וכיצד להעביר עמודות וירטואליות לצורך חישובים לוגיים. לבסוף, הבטחנו שכל הניווט והאוטומציה עובדים בצורה מדויקת על ידי שימוש נכון ב-ID של הלקוח (טבלת האב) בכפתורי הפעולה.
העסק גדל? הפוך את האקסל לאפליקציה חכמה.
אנחנו בונים עבורכם אפליקציות מובייל מבוססות אקסל שחוסכות עשרות שעות עבודה בחודש. פתרון מקצועי, מהיר וכלכלי – בשבריר ממחיר של פיתוח תוכנה.
🚀 בואו נבדוק היתכנות לאפליקציה