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

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

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

המאפיין CurrentRecord מזייף

מתוזמן נעוץ נעול הועבר תכנות
9 פוסטים 3 כותבים 174 צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • מומחה באקססמ מנותק
    מומחה באקססמ מנותק
    מומחה באקסס
    כתב ב נערך לאחרונה על ידי
    #1

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

    כתבתי קוד כזה

        GoPrevious.Enabled = CurrentRecord <> 1
        GoNext.Enabled = CurrentRecord <> RecordsetClone.RecordCount
    

    אבל משום מה כאשר אני פותח את הטופס מתוך טופס אחר שמכיל את הרשומות בצורה של טפסים רציפים ואני עושה בתוכו חיפוש (על ידי bookmark ב RecordSetClone) פתאום הוא משתבש ולפעמים חוסם את הכפתור הנ"ל למרות שהוא לא הראשון וכן להיפך
    אשמח להכוונה
    תודה!

    OdedDvirO תגובה 1 תגובה אחרונה
    0
    • OdedDvirO מנותק
      OdedDvirO מנותק
      OdedDvir
      השיב למומחה באקסס ב נערך לאחרונה על ידי OdedDvir
      #2

      @מומחה-באקסס המאפיינים CurrentRecord ו-RecordCount מתעדכנים בצורה א-סינכרונית. כלומר, אקסס לא טוענת מייד את כל הרשומות, ולכן הם עלולים להציג ערך שגוי כל עוד הרשימה לא נטענה במלואה.
      תוכל לאלץ את הטופס לטעון את כל הרשומות על ידי קפיצה לרשומה האחרונה על ידי MoveLast.

      WWWW תגובה 1 תגובה אחרונה
      3
      • WWWW מנותק
        WWWW מנותק
        WWW
        השיב לOdedDvir ב נערך לאחרונה על ידי
        #3

        @odeddvir משום מה לרוב מופיע RecordCount גדול מהאמיתי, מה הסיבה לכך?

        WWW.netfree@gmail.com || קשבק! החזר כספי לבנק על רכישות באינטרנט || עונים על סקרים ומרוויחים כסף!

        OdedDvirO תגובה 1 תגובה אחרונה
        0
        • OdedDvirO מנותק
          OdedDvirO מנותק
          OdedDvir
          השיב לWWW ב נערך לאחרונה על ידי
          #4

          @www ערך המאפיין נקבע רק בזמן שכל הרשומות נטענו, ובוצעה גישה לרשומה האחרונה. בשעת מחיקת רשומה על ידי המשתמש שפתח את קבוצת הרשומות (להלן RS) המאפיין יוקטן. עם זאת, אם נמחקה רשומה על ידי משתמשים אחרים שלא פתחו את ה-RS, המאפיין לא יעודכן עד שהמשתמש שפתח את ה-RS מנסה לגשת לרשומה שנמחקה. מה שיגרום לתוצאות לא נכונות.
          במקרה של ריבוי משתמשים, עדיף להשתמש בשאילתת קיבוץ או ב-DCount כדי לקבל את הערך העכשווי.
          יש באתר של מיקרוסופט הסבר נרחב על התופעה, כולל דוגמאות המחשה.

          WWWW תגובה 1 תגובה אחרונה
          1
          • WWWW מנותק
            WWWW מנותק
            WWW
            השיב לOdedDvir ב נערך לאחרונה על ידי
            #5

            @odeddvir אני מדבר בלי ריבוי משתמשים, רק בטבלה עם מאות אלפי שורות..

            WWW.netfree@gmail.com || קשבק! החזר כספי לבנק על רכישות באינטרנט || עונים על סקרים ומרוויחים כסף!

            OdedDvirO תגובה 1 תגובה אחרונה
            0
            • OdedDvirO מנותק
              OdedDvirO מנותק
              OdedDvir
              השיב לWWW ב נערך לאחרונה על ידי
              #6

              @www מעניין. מהי הפקודה שבה אתה משתמש לפתיחת ה-RS?

              WWWW תגובה 1 תגובה אחרונה
              0
              • WWWW מנותק
                WWWW מנותק
                WWW
                השיב לOdedDvir ב נערך לאחרונה על ידי
                #7

                @odeddvir אמר בהמאפיין CurrentRecord מזייף:

                @www מעניין. מהי הפקודה שבה אתה משתמש לפתיחת ה-RS?

                    Dim NN As Recordset
                    Set NN = CurrentDb.OpenRecordset("NN")
                    If Not NN.EOF And NN.BOF Then NN.MoveLast
                    MsgBox NN.RecordCount
                    
                    For n = 1 To NN.RecordCount
                
                

                אני רואה כרגע שכבר ניסיתי בעבר לשים MoveLast, וזה לא עזר...

                WWW.netfree@gmail.com || קשבק! החזר כספי לבנק על רכישות באינטרנט || עונים על סקרים ומרוויחים כסף!

                OdedDvirO תגובה 1 תגובה אחרונה
                0
                • OdedDvirO מנותק
                  OdedDvirO מנותק
                  OdedDvir
                  השיב לWWW ב נערך לאחרונה על ידי
                  #8

                  @www אמר בהמאפיין CurrentRecord מזייף:

                  If Not NN.EOF And NN.BOF Then NN.MoveLast
                  

                  השורה הזו נראית שגויה, כי בפתיחה של RecordSet שמכיל לפחות רשומה אחת, התנאי יחזיר False ולא יבוצע MoveLast, כי Not קודם ל-And, לכן הקוד מתפרש כך:

                  If (Not NN.EOF) And (NN.BOF) Then NN.MoveLast
                  

                  אולי התכוונת כך:

                  If Not NN.EOF And Not NN.BOF Then NN.MoveLast
                  

                  שפירושו כך:

                  If (Not NN.EOF) And (Not NN.BOF) Then NN.MoveLast
                  
                  WWWW תגובה 1 תגובה אחרונה
                  0
                  • WWWW מנותק
                    WWWW מנותק
                    WWW
                    השיב לOdedDvir ב נערך לאחרונה על ידי
                    #9

                    @odeddvir אני אגיד לך את האמת, עשיתי הרבה נסיונות, והקוד הזה מקורו מסטאק נראה לי, אבל כאמור לא עזר.
                    אבדוק כמו שכתבת אם זה עוזר.
                    תודה!

                    WWW.netfree@gmail.com || קשבק! החזר כספי לבנק על רכישות באינטרנט || עונים על סקרים ומרוויחים כסף!

                    תגובה 1 תגובה אחרונה
                    0

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

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

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