-
@פלורידה הואיל ומדובר כאן בטבלאות, התצורה הקלאסית היא לדמות מסד נתונים רלציונאלי, וליצור טבלה לכל ישות במסד.
דהיינו טבלה אחת למסכתות, טבלה אחת לפרקים, וטבלה אחת לתאריכי החזרות.
כל טבלה תכיל את הנתונים הרלוונטים ליישות שלה.
דוגמא:
טבלה א: מסכתות:מזהה שם המסכת 1 ברכות 2 שבת 3 עירובין וכו'
טבלה ב: פרקים:
מזהה שם הפרק מזהה מסכת 1 מאימתי 1 2 היה קורא בתורה 1 3 מי שמתו 1 וכו'
טבלה ג: תאריכי החזרות:
מזהה פרק חזרה א חזרה ב חזרה ג חזרה ד 3 1/1/2021 3/1/2021 טבלאות א,ב נשארות נעולות ללא שינויים.
טבלה ג מתעדכנת לפי הצורך. -
@chagold לפי הספר - אתה צודק לגמרי. כך אמור להיות מבנה טבלת החזרות.
אכן זו הייתה ההתלבטות שלי, ובחרתי באופציה הזו כי היא יותר קלה לתיחזוק (עדכון תאריך חזרה), הואיל ומדובר כאן באקסל.
בהחלט אפשר ליישם בצורה הנ"ל ולאפשר בעז"ה יותר חזרות. הלוואי ויהיה לזה צורך... -
@פלורידה אמר בהתייעצות | בניית מסד נתונים לתכנת "הדרן עלך" | אקסל:
בנוגע לטבלה ג'.
אני מבין מהדו שיח שלכם, כי הטבלה גדלה לפי השימוש? כיצד? הרי התא חייב להיות מקושר לשורה הספיציפית שלו במסד?
משום שאם יש צורך להכין אותה מראש ולקשר אותה לתאים ספיציפיים, אני פורש (מדובר בלא פחות מ 4*5000 תאים!!!)
בגדול עם שאילתות מסוננות (לפי קריטריונים שתשים להם) שסופרות את התוצאות. איך בדיוק אצלך לא יודע כי לא עקבתי איך זה בנוי באקסל.
-
@odeddvir אמר בהתייעצות | בניית מסד נתונים לתכנת "הדרן עלך" | אקסל:
טבלה ג מתעדכנת לפי הצורך.
@chagold אמר בהתייעצות | בניית מסד נתונים לתכנת "הדרן עלך" | אקסל:
טבלה עם 3 עמודות : מזהה פרק, תאריך, מספר חזרה.
איך יוצרים דבר כזה עם מספר חזרות בלתי מוגבל?
-
@פלורידה אמר בהתייעצות | בניית מסד נתונים לתכנת "הדרן עלך" | אקסל:
איך יוצרים דבר כזה עם מספר חזרות בלתי מוגבל?
את מבנה הטבלה כבר ציין @chagold, ממילא אפשר להכניס כמה חזרות שרוצים עבור כל פרק.
השאלה היא איך תציג את הנתונים, כי כרגע אתה מציג 4 עמודות בלבד. -
@odeddvir זו לא תהיה בעיה בעז"ה. כי בפקודת מאקרו אפשר לבצע שכאשר יש במסד בטבלה כלשהי 4 חזרות מלאות תתווסף עמודה בטבלה הנוכחית. (נדמה לי שלא אמורה להיות בעיה מבחינת התאים המקושרים לטבלאות כיום, אם כי שבתרשים זה לא יופיע. וייווצרו בעיות מסוימות של עיצוב...)
אני בשאלתי התכוונתי להבין איך לבצע את אשר אמר @chagold , האם צריך להכין מראש טבלה לכל חזרה-כל פרק-לכל מסכת, או שבעצם אני צריך להניח טבלה שכל מה שיש בה הוא את הכותרת של שלוש עמודות, וההזנה תיצור בטבלה את השורות המתאימות?
אגב מה שכתבת הלוואי נצטרך לזה, זה לא בשמיים, לא צריך לגמור את כל הש"ס 4 פעמים, מספים שמישהו סיים דף מסויים 4 פעמים...
-
@פלורידה דוגמא:
טבלה ג: חזרות:מזהה מזהה פרק תאריך חזרה 1 3 01/01/2021 2 3 02/01/2021 3 3 03/01/2021 4 3 04/01/2021 ... ... ... 57 9 07/03/2021 58 1 08/03/2021 59 3 09/03/2021 בדוגמא מופיע שהמשתמש חזר על
פרק ג בברכות 5 פעמים (מזהה שורה 1,2,3,4,59)
ועל פרק א בברכות פעם אחת (מזהה שורה 58)
ועל פרק ט בברכות פעם אחת (מזהה שורה 57)שים לב שסדר ההכנסה לטבלה לא משנה.
וכן שוויתרתי על העמודהמספר חזרה
, כי אפשר לחשב את זה ממילא לפי התאריך. -
@פלורידה אויש, חסרה כאן טבלה עבור הדפים....
טבלה ג: דפים:
מזהה דף מזהה פרק שם הדף 1 1 ב. 2 1 ב: 3 1 ג. 4 1 ג: 5 1 ד. 6 1 ד: 7 1 ה. 8 1 ה: טבלה ד: תאריכי החזרות:
מזהה מזהה דף תאריך חזרה 1 1 01/01/2021 2 2 02/01/2021 3 3 03/01/2021 4 1 04/01/2021 5 3 05/01/2021 6 2 06/01/2021 7 3 07/01/2021 8 3 08/01/2021 כאן הוא חזר
פעמיים על ברכות ב.
פעמיים על ברכות ב:
ארבע פעמים על ברכות ג. -
כמה שאלות להבהרה:
-
מה נותן לנו מזהה השורה? לקשר את תאי ההזנה למזהה שורה? יש בכך עוד צורך/תועלת?
-
על מנת לערוך את תאריך החזרה יהיה חובה לגשת למסד, אכן? (זה לא נורא...)
-
ולהיות בטוח שאני לא טועה... כאשר אנחנו מדברים על מזהה דף ופרק, הכוונה שבמסכת שבת אני ממשיך במוקם בו הפסקתי במסכת ברכות.
-
-
@פלורידה אמר בהתייעצות | בניית מסד נתונים לתכנת "הדרן עלך" | אקסל:
כמה שאלות להבהרה:
- מה נותן לנו מזהה השורה? לקשר את תאי ההזנה למזהה שורה? יש בכך עוד צורך/תועלת?
הוא משמש לקשר בין כל הטבלאות.
אמנם בטבלה ד הוא לכאורה מיותר, אבל הוספתי אותו כי
א. בבסיסי נתונים זו מוסכמה להוסיף שדה מזהה ייחודי לכל שורה.
ב שמא יהיה לו איזשהו שימוש בעתיד.- על מנת לערוך את תאריך החזרה יהיה חובה לגשת למסד, אכן? (זה לא נורא...)
אפשר אולי להוסיף בדיקה בקוד כאשר המשתמש מקליק על תא שיש בו כבר ערך. ולשאול האם לשכתב את הערך הקיים. ואז כן, צריך לאתר את השורה המתאימה במסד ולעדכן.
- ולהיות בטוח שאני לא טועה... כאשר אנחנו מדברים על מזהה דף ופרק, הכוונה שבמסכת שבת אני ממשיך במוקם בו הפסקתי במסכת ברכות.
אתה צודק מאוד. המזהה הנ"ל אמור להיות ייחודי, דהיינו לכל עמוד יש מזהה שלו. אם ניקח לדוגמא את מסכת ברכות שמסתיימת בעמוד סד. המזהה של עמוד זה אמור להיות אאל"ט מספר 125 דהיינו 127-2 (כי אין עמוד א. ולא א: ) ואז מסכת שבת דף ב. מספרו 126.
-
@odeddvir אמר בהתייעצות | בניית מסד נתונים לתכנת "הדרן עלך" | אקסל:
@פלורידה אויש, חסרה כאן טבלה עבור הדפים....
טבלה ג: דפים:
מזהה דף מזהה פרק שם הדף 1 1 ב. 2 1 ב: 3 1 ג. 4 1 ג: 5 1 ד. 6 1 ד: 7 1 ה. 8 1 ה: טבלה ד: תאריכי החזרות:
מזהה מזהה דף תאריך חזרה 1 1 01/01/2021 2 2 02/01/2021 3 3 03/01/2021 4 1 04/01/2021 5 3 05/01/2021 6 2 06/01/2021 7 3 07/01/2021 8 3 08/01/2021 כאן הוא חזר
פעמיים על ברכות ב.
פעמיים על ברכות ב:
ארבע פעמים על ברכות ג.כמדו' שכעת ניתן לוותר על העמודה 'תאריך חזרה' בטבלת הפרקים, כי הנתונים מחושבים לפי טבלת הדפים.
-
לבטים:
באם אני מייצר כזה מסד, בכדי להשתמש בו אצטרך כמה דברים שאינם קיימים בתכנה כעת.
אני מנסה לברר אם כל הדברים הנ"ל מתאפשרים במסגרת אקסל + VBA
-
בכדי לקחת את המידע מהמסד, צריך לבדוק כמה חזרות יש/אין בכל דף ועל פי זה להניח בשורה ובתא המתאימים. האם זה אפשרי?
-
מה שכתבתי בסעיף 1. האם זה יוכל להיות גם בזמן אמת, כלומר בעת שאני ממלא את המסד, מיד יופיע הסימון במקומו? או שזה יצטרך להיות שאילתא בפעם בכמה דקות. (מה שיגרום שכאשר אסמן את התא, לא יופיע הסימון עד אשר תהיה שאילתא)
-
מכיון ש @chagold העלה את הרעיון לתת את האופציה לעוד חזרות, צריך להוסיף גם הגדרה שבעת סימון החזרה הרביעית תתווסף עמודה בשם הרלוונטי.
-
בהמשך לסעיף הקודם: כאשר אני מתקין תוכנה חדשה, יהיה בה רק 4 עמודות לכל טבלה, כאשר אני עושה שחזור מהמסד שבו יש 5 עמודות מסומנות, האם התוכנה יכולה לדעת שהיא צריכה להוסיף עמודה בכדי להיות מתאימה למסד?
אשמח לדעת האם הדברים הנ"ל אפשריים ומה רמה הקושי + המורכבות (כלומר האפשרות שזה ייצור המוני באגים עם המוני לאטעס' לפיתרון).
תודה רבה לכל משתמשי התכנה, העוזרים, המייעצים, והמגיבים!!!
-
-
@פלורידה ראשית כל הרבה תודה על היוזמה נהניתי מאווווד מהרעיון ועל אופן הביצוע הכמעט מושלם (מושלם אין אף פעם כך שזה מושלם לגמרי)
לגבי המסד נתונים לא הרבה התעמקתי במה ש @OdedDvir כתב..
אבל אני רוצה לציין כמה דברים- לבנות מסד נתונים באקסל זה לא משהו בריא למערכת כמו שלך ובמיוחד עם עדכונים הייתי ממליץ לך להתקדם לאקסס אני עשיתי שם דברים הרבה יותר טובים וכמה מעלות טובות באקסס
- הפרדת הנתונים מטפסים (כלומר התוכנה עצמה מהמסד הנתונים)
- בעת עדכון אתה לא צריך לוודא שהנתונים של המשתמש עוברים לעדכון החדש כי אתה מעדכן רק את התוכנה ולא את המסד נתונים
- סגירת האקסס בצורה בטוחה למשתמש וכו'
ואני מאמין שיש עוד הרבה אבל לא עולה לי כעת ...
- בכל אופן שים לב שכעת אתה מאפיין את המסד נתונים לפי ש"ס ששם יש לך 3 פרמטרים
- מסכת
- פרק
- עמוד
אבל אם תרצה לצורך העניין להוסיף שו"ע
יש לך 4 פרמטרים- חלק
- הלכות
- סימן
- סעיף
ויש עוד דוגמאות מעוד ספרים וכו'
-
@אוריי אמר בהתייעצות | בניית מסד נתונים לתכנת "הדרן עלך" | אקסל:
הייתי ממליץ לך להתקדם לאקסס
אני אישית לא התעסקתי מעולם עם אקסס. אם מישהו ירים את הכפפה, אני אהיה הראשון לעזור לו, בלי נדר.
@אוריי אמר בהתייעצות | בניית מסד נתונים לתכנת "הדרן עלך" | אקסל:
אבל אם תרצה לצורך העניין להוסיף שו"ע
יש לך 4 פרמטריםאך למעשה אני לא אוכל לעשות יותר מ3 פרמטרים, משום שאין לי את היכולת בתוכנה, כי פרמטר א. הוא בגליונות פרמטר ב. הוא הטבלאות פרמטר ג. השורות.
אז במידה ונעשה על שו"ע, נוותר על אחד הפרמטרים. (מסתבר שעל הסעיפים. או על החלקים)
ואולי זה עצמו סיבה שהתוכנה צריכה להיות בנויה באקסס...
תודה רבה על המשוב. אשמח בביקורת