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

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

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

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

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

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

    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())))
    )
    

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

    מנצפךמ תגובה 1 תגובה אחרונה
    2
    • שלומש מנותק
      שלומש מנותק
      שלומ
      כתב ב נערך לאחרונה על ידי שלומ
      #5

      @upsilon01
      זה לא הולך לי
      הטבלה שבו אני רוצה את הנוסחה הנ"ל מורכבת מ3 עמודות
      1 שם תלמיד - שנלקח מטבלת תלמידים
      2 פרק - שנלקח מטבלת פרקים
      3 תאריך
      בטבלה הזאת נשמרים כל הנתונים
      בעצם מה שאני צריך שלא יהיה אופציה לרשום שם תלמיד ופרק בתאריך שהוא פחות מ3 חודשים

      תגובה 1 תגובה אחרונה
      0
      • 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
          • שלומש מנותק
            שלומש מנותק
            שלומ
            השיב לupsilon01 ב נערך לאחרונה על ידי שלומ
            #8

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

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

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

            upsilon01U תגובה 1 תגובה אחרונה
            0
            • 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
              • שלומש מנותק
                שלומש מנותק
                שלומ
                השיב לupsilon01 ב נערך לאחרונה על ידי
                #10

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

                upsilon01U תגובה 1 תגובה אחרונה
                0
                • upsilon01U מנותק
                  upsilon01U מנותק
                  upsilon01
                  השיב לשלומ ב נערך לאחרונה על ידי
                  #11

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

                  שלומש תגובה 1 תגובה אחרונה
                  0
                  • שלומש מנותק
                    שלומש מנותק
                    שלומ
                    השיב לupsilon01 ב נערך לאחרונה על ידי
                    #12

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

                    תגובה 1 תגובה אחרונה
                    0
                    • מנצפךמ מנותק
                      מנצפךמ מנותק
                      מנצפך
                      השיב לupsilon01 ב נערך לאחרונה על ידי
                      #13

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

                      upsilon01U תגובה 1 תגובה אחרונה
                      2
                      • 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
                              • שלומש מנותק
                                שלומש מנותק
                                שלומ
                                השיב לamik ב נערך לאחרונה על ידי
                                #18

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

                                תגובה 1 תגובה אחרונה
                                0
                                • dovidD dovid העביר נושא זה מ-תכנות ב-

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

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

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