דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. מחפש נוסחה לכלל אימות באקסס

מחפש נוסחה לכלל אימות באקסס

מתוזמן נעוץ נעול הועבר תכנות
18 פוסטים 6 כותבים 654 צפיות 6 עוקבים
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
תגובה
  • תגובה כנושא
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • שלומש שלומ

    הקובץ מיועד לרישום תלמידים ומבחנים על פרקי משניות
    המטרה היא שלא יוכלו להיבחן על אותו דבר לפני 3 חודשים
    הטבלה שבו אני רוצה לשים את הכלל אימות הנ"ל מורכב מ4 עמודות
    מזהה,שם תלמיד,פרק,ותאריך
    אני מחפש נוסחה שתיתן לי במידה והתלמיד 1 נבחן על פרק מספר1 בתאריך שהוא פחות מ3 חודשים
    המערכתת לא תיתן להוסיף את הבחינה הזאת
    תודה מראש

    clickoneC מנותק
    clickoneC מנותק
    clickone
    כתב ב נערך לאחרונה על ידי clickone
    #6

    @שלומ
    יש כמה דרכים.
    אפשר עם DLookUp או עדיף יותר DCount
    ואז לסנן לפיו.

    אבל יותר הייתי הולך על סינון של Not In - ולא ככלל אימות, אלא בתוך הלוגיקה של ההכנסה
    משהו בסגנון של

    select id, studentID, part, testDate from table 
    where studentID Not In (select studentID From TblTests WHERE StudentID = table.studentID And part=table.part And testDate<(Date()-90) )
    
    

    כתבתי את הSQL הזה בשליפה ישר כאן ולא באקסס, אז יכול להיות שפיספסתי משהו. אבל זה הכיוון הנכון לדעתי.
    שים לב שלקחתי 90 יום ולא 3 חודשים, זה לפישוט העניין, כי הנושא של סינון תאריכים קצת בעייתי בסינון בDB במיוחד עם התצוגות תאריך באקסס - ואם עושים עדיף לעשות את זה עם פונקצייה תומכת כמו DateSerial + BuildCriteria

    אם תעלה דוגמא, אז זה יכול להיות יותר ממוקד.
    בהצלחה 🙂

    עריכה: אני רואה ש @upsilon01 הקדים אותי עם הNot In....
    אגב הסיבה שאני לא אוהב את הכלל אימות, כי בסוף תמיד יש חריגים 😮
    @ארכיטקט לזכרוני חסיד שככל הלוגיקה תשב בDB ורק שם.

    אין טסט כמו פרודקשן.

    המייל שלי urivpn@gmail.com

    תגובה 1 תגובה אחרונה
    3
    • upsilon01U מנותק
      upsilon01U מנותק
      upsilon01
      כתב ב נערך לאחרונה על ידי
      #7

      מה השם של הטבלה?
      ומה שמות העמודות(במדויק)?

      שלומש תגובה 1 תגובה אחרונה
      1
      • upsilon01U upsilon01

        מה השם של הטבלה?
        ומה שמות העמודות(במדויק)?

        שלומש מנותק
        שלומש מנותק
        שלומ
        כתב ב נערך לאחרונה על ידי שלומ
        #8

        @upsilon01 אמר במחפש נוסחה לכלל אימות באקסס:

        מה השם של הטבלה?
        ומה שמות העמודות(במדויק)?

        הטבלה היא [בחינות]
        עמודה 1 [שם תלמיד]
        עמודה 2 [פרק]
        עמודה 3 [תאריך]
        @clickone
        מוצ"ב הקובץ
        מסד נתונים.accdb
        @upsilon01 @clickone יכול להיות שאם הייתי בונה את המסד בצורה אחרת היה יותר קל?
        למשל לפתוח לכל תלמיד טבלת בחינות ששם יישמרו הנתונים ולהגדיר שיהיה ללא כפילויות ולשים הגדרה שאפשר לעדכן רק אם עבר 90 יום
        מה אתם אומרים?
        אבל אני לא יודע אם יש אופציה כזאת באקסס שכשאתה מוסיף רשומה נפתחת אוטומטית טבלה מקושרת בעיצוב מסוים
        אולי במאקרו אפשר לעשות את זה ?
        תודה

        upsilon01U תגובה 1 תגובה אחרונה
        0
        • שלומש שלומ

          @upsilon01 אמר במחפש נוסחה לכלל אימות באקסס:

          מה השם של הטבלה?
          ומה שמות העמודות(במדויק)?

          הטבלה היא [בחינות]
          עמודה 1 [שם תלמיד]
          עמודה 2 [פרק]
          עמודה 3 [תאריך]
          @clickone
          מוצ"ב הקובץ
          מסד נתונים.accdb
          @upsilon01 @clickone יכול להיות שאם הייתי בונה את המסד בצורה אחרת היה יותר קל?
          למשל לפתוח לכל תלמיד טבלת בחינות ששם יישמרו הנתונים ולהגדיר שיהיה ללא כפילויות ולשים הגדרה שאפשר לעדכן רק אם עבר 90 יום
          מה אתם אומרים?
          אבל אני לא יודע אם יש אופציה כזאת באקסס שכשאתה מוסיף רשומה נפתחת אוטומטית טבלה מקושרת בעיצוב מסוים
          אולי במאקרו אפשר לעשות את זה ?
          תודה

          upsilon01U מנותק
          upsilon01U מנותק
          upsilon01
          כתב ב נערך לאחרונה על ידי upsilon01
          #9

          @שלומ
          בגדול אתה צריך להחזיק שני טבלאות
          אחד לתלמידים
          ואחד למבחנים
          לדוגמא:

          תלמידים
          +----+--------------+-------+
          | id | student_name | class |
          +----+--------------+-------+
          | 1  | name 1       | א     |
          +----+--------------+-------+
          | 2  | name 2       | ב     |
          +----+--------------+-------+
          מבחנים:
          +---------+------------+-------+-----------+
          | exam_id | student_id | perek | exam_date |
          +---------+------------+-------+-----------+
          | 1       | 1          | 5     | 1/2/2019  |
          +---------+------------+-------+-----------+
          | 2       | 2          | 6     | 1/5/2019  |
          +---------+------------+-------+-----------+
          
          

          לדוגמא תלמיד 1 נבחן על פרק 5
          ותלמיד 2 נבחן על פרק 6

          ה {1} זה באג של nodbb

          שלומש תגובה 1 תגובה אחרונה
          0
          • upsilon01U upsilon01

            @שלומ
            בגדול אתה צריך להחזיק שני טבלאות
            אחד לתלמידים
            ואחד למבחנים
            לדוגמא:

            תלמידים
            +----+--------------+-------+
            | id | student_name | class |
            +----+--------------+-------+
            | 1  | name 1       | א     |
            +----+--------------+-------+
            | 2  | name 2       | ב     |
            +----+--------------+-------+
            מבחנים:
            +---------+------------+-------+-----------+
            | exam_id | student_id | perek | exam_date |
            +---------+------------+-------+-----------+
            | 1       | 1          | 5     | 1/2/2019  |
            +---------+------------+-------+-----------+
            | 2       | 2          | 6     | 1/5/2019  |
            +---------+------------+-------+-----------+
            
            

            לדוגמא תלמיד 1 נבחן על פרק 5
            ותלמיד 2 נבחן על פרק 6

            ה {1} זה באג של nodbb

            שלומש מנותק
            שלומש מנותק
            שלומ
            כתב ב נערך לאחרונה על ידי
            #10

            @upsilon01
            זה מה שיש לי בעצם
            העמודה תלמידים נלקח מטבלת תלמידים
            והעמודה פרק נלקח מטבלת פרקים

            upsilon01U תגובה 1 תגובה אחרונה
            0
            • שלומש שלומ

              @upsilon01
              זה מה שיש לי בעצם
              העמודה תלמידים נלקח מטבלת תלמידים
              והעמודה פרק נלקח מטבלת פרקים

              upsilon01U מנותק
              upsilon01U מנותק
              upsilon01
              כתב ב נערך לאחרונה על ידי
              #11

              @שלומ
              מצוין
              אז מה הבעיה?

              שלומש תגובה 1 תגובה אחרונה
              0
              • upsilon01U upsilon01

                @שלומ
                מצוין
                אז מה הבעיה?

                שלומש מנותק
                שלומש מנותק
                שלומ
                כתב ב נערך לאחרונה על ידי
                #12

                @upsilon01
                אבל אני צריך להגדיר כלל אימות שלא יאפשר לי להכניס מבחן למשתמש ופרק שלא עבר 3 חודשים
                הוי אומר: שצריך משהוא שיחפש אם קיים אותו משתמש באותו פרק ואח"כ לבדוק אם עבר 3 חודשים

                תגובה 1 תגובה אחרונה
                0
                • upsilon01U upsilon01

                  @שלומ אופס, לא שמתי לב
                  אתה צריך להוסיף אילוץ למסד נתונים משהו כזה:

                  create table exams(
                  id int identity,
                  exam_date date,
                  student varchar(20)
                  perek varchar(20),
                  check(perek not in (select perek from exams where exam_date where >=DATEADD(m, -3, GETDATE())))
                  )
                  

                  תסביר איך נראה האקסס שלך
                  ואולי יוכלו לעזור לך יותר

                  מנצפךמ מנותק
                  מנצפךמ מנותק
                  מנצפך
                  כתב ב נערך לאחרונה על ידי
                  #13

                  @upsilon01 שים לב שזה בסה"כ Access. ולא SqlServer ודומיו.
                  האילוצים שכתבת, אני לא מאמין שקיימים שם.

                  upsilon01U תגובה 1 תגובה אחרונה
                  2
                  • מנצפךמ מנצפך

                    @upsilon01 שים לב שזה בסה"כ Access. ולא SqlServer ודומיו.
                    האילוצים שכתבת, אני לא מאמין שקיימים שם.

                    upsilon01U מנותק
                    upsilon01U מנותק
                    upsilon01
                    כתב ב נערך לאחרונה על ידי
                    #14

                    @מנצפך
                    דווקא קיימים
                    access מריץ כמעט כל SQL

                    תגובה 1 תגובה אחרונה
                    0
                    • zviZ מנותק
                      zviZ מנותק
                      zvi
                      כתב ב נערך לאחרונה על ידי
                      #15

                      @שלומ 193e5407-c8ae-4bea-9a0a-8d5f5aa46731-image.png
                      בכלל אימות יש ליצור את הכלל שרוצים בדוגמא הנ"ל כאשר יוכנס בשדה DATE תאריך גדול משלושה חודשים מהיום תופיע הודעת שגיאה ולא יהיה ניתן להמשיך הלאה עד לתיקון התאריך ע"פ הכלל
                      אולי אם אני יבין בדיוק איזה כלל אתה רוצה עם החודשים אני יוכל לנסח כלל ספציפי למקרה שלך

                      תגובה 1 תגובה אחרונה
                      0
                      • clickoneC מנותק
                        clickoneC מנותק
                        clickone
                        כתב ב נערך לאחרונה על ידי clickone
                        #16

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

                        אין טסט כמו פרודקשן.

                        המייל שלי urivpn@gmail.com

                        תגובה 1 תגובה אחרונה
                        3
                        • A מנותק
                          A מנותק
                          amik
                          כתב ב נערך לאחרונה על ידי
                          #17

                          תבדוק אם זה מתאים לך (קוד)
                          1568017048437-מסד-נתונים.zip

                          שלומש תגובה 1 תגובה אחרונה
                          3
                          • A amik

                            תבדוק אם זה מתאים לך (קוד)
                            1568017048437-מסד-נתונים.zip

                            שלומש מנותק
                            שלומש מנותק
                            שלומ
                            כתב ב נערך לאחרונה על ידי
                            #18

                            @amik
                            תודה רבה רבה!!!
                            עזר לי מאוד

                            תגובה 1 תגובה אחרונה
                            0
                            • dovidD dovid העביר נושא זה מ-תכנות ב-
                            תגובה
                            • תגובה כנושא
                            התחברו כדי לפרסם תגובה
                            • מהישן לחדש
                            • מהחדש לישן
                            • הכי הרבה הצבעות


                            בא תתחבר לדף היומי!
                            • התחברות

                            • אין לך חשבון עדיין? הרשמה

                            • התחברו או הירשמו כדי לחפש.
                            • פוסט ראשון
                              פוסט אחרון
                            0
                            • דף הבית
                            • קטגוריות
                            • פוסטים אחרונים
                            • משתמשים
                            • חיפוש
                            • חוקי הפורום