-
Posts
9,903 -
تاريخ الانضمام
-
تاريخ اخر زياره
-
Days Won
404
نوع المحتوي
المنتدى
مكتبة الموقع
معرض الصور
المدونات
الوسائط المتعددة
كل منشورات العضو jjafferr
-
تصفية بيانات نموذج فرعي بواسطة كومبوبوكس حسب سنة البحث
jjafferr replied to فؤاد الدلوي's topic in قسم الأكسيس Access
وعليكم السلام اخي فؤاد اذا رايت ان موضوعك صار له يومين ، وفيه قراءات ، وما فيه رد ، فمعناه: يا موضوعك صعب ، او الموضوع مبهم ، ويجب اعادة شرح المطلوب بطريقة ثانية ، واذا ممكن بمثال للمقارنة 🙂 -
شكرا جزيلا 🙂
-
منع التحديد المتعدد في خانة مربع الاختيار، في النموذج المستمر
jjafferr replied to abofayez1's topic in قسم الأكسيس Access
اتفق مع فكرتك ، لهذا السبب قلت: https://emojis.wiki/telegram/ -
الحمدلله اخوي عبداللطيف ، بس ياريت تشاركنا الحل حتى نعرف وين كان الخطأ في الحلول المقترحة 🙂
-
منع التحديد المتعدد في خانة مربع الاختيار، في النموذج المستمر
jjafferr replied to abofayez1's topic in قسم الأكسيس Access
اخوي ابوخليل قصدك صاحب الموضوع لازم يخبرنا سبب طلبه ، ومن ثم ممكن نتوصل الى افكار اخرى 🙂 -
منع التحديد المتعدد في خانة مربع الاختيار، في النموذج المستمر
jjafferr replied to abofayez1's topic in قسم الأكسيس Access
اخوي ابو احمد شكرا جزيلا لك على هذا التحليل ، ولكن عندي اضافة : فكرة تحديث جميع البيانات الى 0 كانت بسبب فكرة اخونا الشايب ، ولكن للاختيار بين السجلات ، فيجب ان يكون عندنا كود محلي ، اي بمعنى آخر ، يجب عمل كود لتحديث الكل في اول اختيار ، ومنها فيجب ان يكون هناك كود آخر للتنقل العادي. اخوي ابو عارف: CurrentDb.Execute تعمل مع الاصدارات القديمة للاكسس ، ولكن مشكلتها انها لا تعطيك رسالة الخطأ (اذا كان فيه خطأ) ، فتعتقد انها لا تعمل!! والخطأ الذي حدث لمعظم الاكواد اعلاه ، هو في تحديث سجل مقفل (السجل الذي عليه حقل y_n الحالي). و كود "Do While Rc > 0" يكون جدا بطيء في العمل على سجلات التجربة بمئات الألاف او اكثر. واعتقد بهذه النتائج ، اصبح لدى اخونا abofayez1 عدة خيارات يختار منها ما يناسبه. ويا ابو احمد ، اذا لقيت صورتي في بريدك ، فمو شرط معناه اني زعلان من ان كودي طلع الثاني في اختباراتك جعفر -
منع التحديد المتعدد في خانة مربع الاختيار، في النموذج المستمر
jjafferr replied to abofayez1's topic in قسم الأكسيس Access
بسبب تقارب طرق الكود ، تم الاستعانه بـ 300,000 سجل ، ووضع البيانات على كمبيوتر آخر على الشبكة ، وللأسف كود ابو عارف ما اشتغل بالطريقة الصحيحة ، فلم اجربه. الثلاث مرات الاولى ، اشغل الاستعلام ليعمل حوالي 40,000 صح ، ثم اغير في النموذج ، والثلاث مرات التالية ، هي وانا في النموذج ، اختار سجل واعمله صح. والنتيجة بالثواني +----------------+----------------+----------------+ | AbuuAhmed | jjafferr_2 | ابو جودي | +================+================+================+ | 4.43701171875 | 4.421875 | 4.828125 | +----------------+----------------+----------------+ | 4.468994140625 | 4.406005859375 | 4.110107421875 | +----------------+----------------+----------------+ | 4.468017578125 | 4.406005859375 | 4.31201171875 | +----------------+----------------+----------------+ | 0.546875 | 0.468994140625 | 4.31201171875 | +----------------+----------------+----------------+ | 0.531005859375 | 0.468994140625 | 4.31298828125 | +----------------+----------------+----------------+ | 0.546875 | 0.468994140625 | 3.984130859375 | +----------------+----------------+----------------+ جعفر تم الاستعانه بالموقع التالي لعمل الجدول: https://www.tablesgenerator.com/text_tables 1624.Stress_Test.mdb.zip -
منع التحديد المتعدد في خانة مربع الاختيار، في النموذج المستمر
jjafferr replied to abofayez1's topic in قسم الأكسيس Access
فكرة جيدة ، ولكن لوسمحت ارفع السقف الى 50000 سجل او اكثر ، حتى نرى الفارق بسهولة 🙂 -
منع التحديد المتعدد في خانة مربع الاختيار، في النموذج المستمر
jjafferr replied to abofayez1's topic in قسم الأكسيس Access
مافي داعي لهذه الجزئية ، فالكود يعمل بدونها ، إلا اذا فيه شيء تحب تخبرنا عنه 🙂 وطبعا Me.Refresh = DoCmd.RunCommand acCmdSaveRecord = If Me.Dirty Then Me.Dirty = False واذ تحب تخبرنا عن الخدعة 🙂 -
الله يسلمك ، الموضوعين يعطوك ملف الاكسل بشكل استعلام محلي في الاكسس ، ومنها تقدر تعمل اللي تريد
-
منع التحديد المتعدد في خانة مربع الاختيار، في النموذج المستمر
jjafferr replied to abofayez1's topic in قسم الأكسيس Access
السلام عليكم لا ما خلص الموضوع تذكرون لما قلت: . انزلت قاعدة بيانات التجربة: واستعملت 9,999 سجل فقط ، واضفت جميع الاجابات في هذا الموضوع: . ارجو من اللي يريد يشارك ويعدل الكود حقه ان : 1. يشغل الاستعلام qry_Half_y_n_True واللي يختار حوالي 5000 سجل ويعملهم صح ، 2. يشغل نموذجه ويشوف سرعته ، ويقارنه مع سرعة النماذج الاخرى. طبعا انا كان عندي وقتي من الصبح ، واضفت النموذج الثاني حقي ، وهو الاسرع (مثل ما يقول المثل: مَحَّد يقول دِبْسي حامِض ) جعفر 1624.Stress_Test.mdb.zip -
وعليكم السلام بالاضافة الى رابط اخوب فادي، راجع الرابط التالي
-
مطلوب تشغيل استعلام تحديث حقل في جدول من خلال استعلام تجميعي
jjafferr replied to ابوخليل's topic in قسم الأكسيس Access
اخوي ابوخليل نعم الثمار متنوعة وتعطيك نفس النتيجة ، ولكني افضّل الحل الذي استطيع التعديل عليه وبسهولة ، لذا: انا افضّل الحل في هذه المشاركة ، حيث تستطيع عمل التغيير المطلوب مستقبلا على استعلام التجميع query1 ، وتلقائيا استعلام التحديث query3 سيعمل ، وسيأخذ المستجد من query1 تلقائيا ، كونه استعلام فرعي اما اذا ادخلت جملة SQL استعلام التجميع مباشرة كاستعلام فرعي في استعلام التحديث ، واردت ان تعمل تغيير على جملة SQL استعلام التجميع ، فالخطوات كثيرة ، ومو شرط تضبط جعفر -
تم اضافة رابط المشاركة الاخرى في الرابط اعلاه
-
مطلوب تشغيل استعلام تحديث حقل في جدول من خلال استعلام تجميعي
jjafferr replied to ابوخليل's topic in قسم الأكسيس Access
مافي داعي تعمل معيارين على حقلين ، وانما اجعل الشرطين في استعلام واحد ، هكذا : UPDATE Table1 SET Table1.chek1 = 0 WHERE (((Table1.userID) In ( SELECT T2.user_ID FROM Table2 AS T2 GROUP BY T2.user_ID, T2.card_No HAVING (Sum([price1])-Sum([price2]))=0 AND Table1.userID=T2.user_ID AND Table1.cardNo=T2.Card_No)) ); -
مطلوب تشغيل استعلام تحديث حقل في جدول من خلال استعلام تجميعي
jjafferr replied to ابوخليل's topic in قسم الأكسيس Access
اوووه وانا اعتمدت على على العموم ، هذا الاستعلام بعد اضافة pp=0 UPDATE Table1 SET Table1.chek1 = 0 WHERE (((Table1.userID) In (SELECT [user_ID] FROM Query1 as Q1 WHERE Table1.userID=Q1.user_ID AND Table1.cardNo=Q1.card_No AND Q1.pp=0))); 1623.Database2.accdb -
مطلوب تشغيل استعلام تحديث حقل في جدول من خلال استعلام تجميعي
jjafferr replied to ابوخليل's topic in قسم الأكسيس Access
تفضل الاستعلام UPDATE Table1 SET Table1.chek1 = 0 WHERE (((Table1.userID) In (SELECT [user_ID] FROM Query1 as Q1 WHERE Table1.userID=Q1.user_ID AND Table1.cardNo=Q1.card_No))); . وهنا وقعت في المحظور ايضا !! بياناتك كلها متشابهه ، فعلشان احصل على سجل واحد ، عملت تغيير لبيانات cardNo في الجدول Table1 وابقيت سجل واحد فيه قيمة الجدول Table2 1623.Database2.accdb.zip -
منع التحديد المتعدد في خانة مربع الاختيار، في النموذج المستمر
jjafferr replied to abofayez1's topic in قسم الأكسيس Access
-
مطلوب تشغيل استعلام تحديث حقل في جدول من خلال استعلام تجميعي
jjafferr replied to ابوخليل's topic in قسم الأكسيس Access
السلام عليكم اذا ممكن اشارك معاكم 🙂 الاستعلام الفرعي هو الجواب بدلا عن الجدول المؤقت. رجاء تجربة هذا الاستعلام: UPDATE Table1 SET Table1.chek1 = 0 WHERE (((Table1.userID) In (SELECT [user_ID] FROM Query1 as Q1 WHERE Table1.userID=Q1.user_ID AND Q1.pp=0))); . وقد قام بالتحديث (ولكن انتبه ن فقيمة p=0 موجودة فقط في السجل bb وهو غير موجود في الجدول Table1 ، لذا فلن تظهر لك اي نتيجة ، وهذا ما اشار اليه اخوي ابو جودي) ، وللتجربة ، غيّر قيمة P=0 في الاستعلام الفرعي الى p=15 وستترى النتيجة 1623.Database1.accdb.zip -
منع التحديد المتعدد في خانة مربع الاختيار، في النموذج المستمر
jjafferr replied to abofayez1's topic in قسم الأكسيس Access
1. للأسف ما توصلت الى طريقة لعمل جميع التغييرات في النموذج اسرع من تغييرها من الجدول مباشرة عن طريق استعلام. للعلم ، عند تقديمي لإقتراح ، فانا انظر لقاعدة البيانات وكأن بها على الاقل 10,000 سجل. 2. في انتظار مشاركتك -
منع التحديد المتعدد في خانة مربع الاختيار، في النموذج المستمر
jjafferr replied to abofayez1's topic in قسم الأكسيس Access
في هذا الموضوع ، اتضح جليا ان مقولتي صحيحة (للعلم ، اخونا العود @ابوخليل هو الذي صحح واخرج هذه الجملة بهذه الديباجة الجميلة ، شكرا لك 🙂 ) : ولا يهمك ، وهاي طريقة بحدث واحد فقط Private Sub y_n_BeforeUpdate(Cancel As Integer) '- اشارة الى سجلات النموذج With Me.RecordsetClone '- حذف الصح السابق .FindFirst "[y_n]=-1" .Edit !y_n = 0 .Update End With End Sub . ولا يزال قيد التجربة 🙂 -
منع التحديد المتعدد في خانة مربع الاختيار، في النموذج المستمر
jjafferr replied to abofayez1's topic in قسم الأكسيس Access
احسنت اخوي ابو عارف بس ياريت تحل الخطأ: اختار صح في آخر سجل ، ثم روح لأول سجل واعمل صح ، بتحصل على خطأ. يحتاج لها مزاج 🙂 -
منع التحديد المتعدد في خانة مربع الاختيار، في النموذج المستمر
jjafferr replied to abofayez1's topic in قسم الأكسيس Access
اهلا بالشايب الخبير 🙂 ولحل هذ النقطة ، هذا الكود على حدث تحميل النموذج سيحل المشكلة (نحن قمنا باختيار سجل واحد سابقا ، فالبحث يتم لسجل واحد فقط) Private Sub Form_Load() '- Find the Checked y_n field Me.y_n.SetFocus DoCmd.FindRecord "-1", , , , , , True Me.myID = Me.id End Sub . اما النقطة الثانية ، فالمفروض ان يتم تغيير البيانات من النموذج فقط ، وإلا ، فيجب تحدبث الجدول (سيكون اسرع من تحديث آلاف السجلات في النموذج) -
منع التحديد المتعدد في خانة مربع الاختيار، في النموذج المستمر
jjafferr replied to abofayez1's topic in قسم الأكسيس Access
السلام عليكم اجابات الشباب كانت تغير القيم في الجدول ، بينما احاول جاهدا التقليل من زيارات الجدول ، بسبب الشبكة والتقليل من الضغط على الجداول ، فيكون عملي على النموذج فقط 🙂 طريقة العمل: في النموذج اعمل حقل مخفي اسمه myID ، ثم نعمل حدثين على الحقل y_n : قبل التحديث: يتأكد انك اخترت صح ، وانك على سجل غير السجل السابق ، فعليه ، يغير قيمة الصح من السجل السابق (ID السجل موجود في myID) ، الى 0 بعد التحديث: نعطي رقم ID السجل للحقل myID Private Sub y_n_BeforeUpdate(Cancel As Integer) If Me.y_n = -1 And Me.id <> Me.myID Then '- y_n checked, and Record ID <> myID With Me.RecordsetClone .FindFirst "[ID]=" & Me.myID .Edit !y_n = 0 .Update End With End If End Sub Private Sub y_n_AfterUpdate() Me.myID = Me.id End Sub . 1622.aa.accdb.zip -
دالة ترقيم (عكس تفقيط) لتحويل التفقيط إلى رقم
jjafferr replied to AbuuAhmed's topic in قسم الأكسيس Access
السلام عليكم ابو احمد افتقدناك في منتدى الاكسس ، وفاز بك منتدى الاكسل. طرح جديد ومميز ، كالعادة ، شكرا على المشاركة. جعفر