وائل طه قام بنشر يونيو 10, 2022 قام بنشر يونيو 10, 2022 لدي جدول اريد تقسيم سجلاته الي مجموعات بشروط وان تكون المجموعة الواحدة ١٠٠ سجل واستخراج اكبر واصغر قيمة لكل مجموعه
Moosak قام بنشر يونيو 11, 2022 قام بنشر يونيو 11, 2022 أهلا بك أخي .. تستطيع عمل ذلك من خلال إنشاء عدة استعلامات، ومن لوحة الخصائص Top Values تكتب النسبة أو عدد السجلات المطلوب عرضها .. ثم تنشيء استعلام آخر تكتب فيه نسبة السجلات ومن المعايير تستخدم دالة ()Not In لإخباره بأن يظهر السجلات غير الموجودة في الاسعلام الأول .. وهكذا ( ملاحظة ظريفة 🙂 : عدم إرفاق السائل لملف للتطبيق عليه ، يعني أنه يكتفي بالشرح النظري ولا يحتاج للتطبيق العملي ) 2 1
متقاعد قام بنشر يونيو 11, 2022 قام بنشر يونيو 11, 2022 15 ساعات مضت, وائل طه said: لدي جدول اريد تقسيم سجلاته الي مجموعات بشروط وان تكون المجموعة الواحدة ١٠٠ سجل واستخراج اكبر واصغر قيمة لكل مجموعه 4 ساعات مضت, Moosak said: ستطيع عمل ذلك من خلال إنشاء عدة استعلامات اما انا سوف اعملها بطريقة الطيبين بدون الحاجة الى عدة استعلام فقط استعلام واحد ويكون مصدر للنموذج ويتم كتابة جملة الاستعلام في مربع نص مخفي في النموذج في البداية نحتاج الى نموذج فارغ ونضع فية ثلاث حقول نصية وزري امر ونموذج فرعي لعرض السجلات مصدر سجلات النموذج الفرعي الجدول ولايهمنا كثير لكوننا سوف نتحكم بالمصدر عن طريق الكود مربع النص الاول اسميته tx2 وقيمته الافتراضية 1والثاني tx3 وقيمته الافتراضية 100 والثالث tx10 تسمية الحقول امر راجع لك المهم تسمية الحقل تكون نفسها في الكود الحقل النصي tx10 قيمته تساوي ="SELECT tbl_1.id, tbl_1.id_item FROM tbl_1 WHERE (((tbl_1.id) Between " & [tx2] & " And " & [tx3] & "));" tbl_1 هو اسم الجدول الذي يحتوي على البيانات tx2 و tx3 هي الحقول التي اشرنا اليها سابقا ووضعنا لها قيمة افتراضية الان زر الامر الاول اسميناه التالي ووضعنا فيه الكود If Me.tx2 = 1900 Or Me.tx3 = 2000 Then: Exit Sub Me.tx2 = Me.tx2 + 100 Me.tx3 = Me.tx3 + 100 Me.sub_frm.Form.RecordSource = [tx10] Me.sub_frm.Requery وزر الامر الثاني اسميناه السابق ووضعنا فيه الكود If Me.tx2 = 1 Or Me.tx3 = 100 Then: Exit Sub Me.tx2 = Me.tx2 - 100 Me.tx3 = Me.tx3 - 100 Me.sub_frm.Form.RecordSource = [tx10] Me.sub_frm.Requery والنتيجة يعرض لنا عند النقر على التالي 100 سجل ثم عند النقر الـ 100 التاليه وهكذا ومثله ايضا في زر الامر السابق تحديد الحد الاعلى للسجلات ممكن اخذه بطريقة اليه ولكن انا كتبته بشكل مباشر حاولت ان اكتب الاكواد بطريقة بسيطة لسهولة ايصال المعلومة ولم اضع مثال لكوني اهتم فقط بالجانب النظري تحياني 2 1
Moosak قام بنشر يونيو 11, 2022 قام بنشر يونيو 11, 2022 شكرا لك أخي مبرمج سابق مبدع بالفطرة ..🙂 أرى أنك أعتمدت على فرضية أن الحقل Id موجود ومرتب تصاعديا بدون وجود نواقص (حقول محذوفة) .. ماذا لو أن حقل ال Id مكتوب هكذا xml0620220856 ؟ كيف نستطيع الحصول على ال 100 سجل الأولى ؟ ثم المائة التالية ؟ ولو كان لدينا 3 قوائم ListBox مثلا في نفس النموذج نريد فيها تقسيم السجلات إلى 3 أقسام متساوية .. كيف نفعل ذلك ؟؟ طبعا الهدف من السؤال هو تحريك الدماغ .. والاستفادة من خبراتكم .. وإثارة روح التحدي .. 👍🏼😁 4
متقاعد قام بنشر يونيو 11, 2022 قام بنشر يونيو 11, 2022 16 دقائق مضت, Moosak said: أرى أنك أعتمدت على فرضية أن الحقل Id موجود ومرتب تصاعديا بدون وجود نواقص (حقول محذوفة) .. ماذا لو أن حقل ال Id مكتوب هكذا xml0620220856 ؟ الطريقة الاسهل بدون تحريك دماغ ( هذا على افتراض وجوده) 😄 نجعل المصدر استعلام ونظيف له حقل ترقيم تلقائي ونكمل بنفس الطريقة 1 2
ابو البشر قام بنشر يونيو 11, 2022 قام بنشر يونيو 11, 2022 12 دقائق مضت, مبرمج سابق said: الطريقة الاسهل بدون تحريك دماغ ( هذا على افتراض وجوده) 😄 نجعل المصدر استعلام ونظيف له حقل ترقيم تلقائي ونكمل بنفس الطريقة يا اخي صرت احب موضوعاتك لانها تتحدث من مبدأ التفكير خارج الصندوق ولا تخلو من الطرفة ... زادك الله علما وشكرلك ... 2
متقاعد قام بنشر يونيو 11, 2022 قام بنشر يونيو 11, 2022 3 ساعات مضت, ابو البشر said: يا اخي صرت احب موضوعاتك لانها تتحدث من مبدأ التفكير خارج الصندوق ولا تخلو من الطرفة ... زادك الله علما وشكرلك ... حياك الله اخي واستاذي ابو البشر والشكر لله اخي وجودكم انتم واخوننا الكرام هو الدافع لعودتنا بعد طول انقطاع 3 ساعات مضت, مبرمج سابق said: نجعل المصدر استعلام ونظيف له حقل ترقيم تلقائي من المؤكد ان الموقع يزخر بالامثلة للترقيم في الاستعلام مع ذلك ساتحدث عن طريقتين ربما تفيد احد من رواد الموقع الطريقة الاولى اذا كان لدينا في الجدول حقل ترقيم ولكن توجد ارقام محذوفة Expr1: DCount("[id]";"tbl_1";"[id]<=" & [id]) الطريقة الثانية اذا كان الجدول لا يحتوي اي حقل ترقيم وانما حقول نصية فقط ⬇️ Expr2: (Select Count(1) FROM [tbl_1] A WHERE A.item <=[tbl_1].[item]) item حقل نصي هنا ☝️من الافضل استخدام تسمية توضيحية حتى لا تظهر لنا رسالة بطلب قيمة معلمة . توجد طرق اخرى عديدة بعضها يعتمد على وحدة نمطية وبعضها بدون ولكن هذه من اسهل الطرق. والى لقاء في موضوع اخر باذن الله تحياتي 2 2
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.