اذهب الي المحتوي
أوفيسنا

الردود الموصى بها

قام بنشر

الإخوة الكرام .. في الملف المرفق ثلاثة جداول بينهما علاقة متعدد لمتعدد

والمطلوب -سلمكم الله- إدراج حقل محسوب باسم (Total) في جدول (TAB_RMZ) يظهر فيه عند كل رمز عدد المرات التي وجد فيها هذا الرمز في الجدول الرئيسي (TAB)

MusndWZwayid 004.accdb

قام بنشر
6 ساعات مضت, nssj said:

عدد المرات التي وجد فيها هذا الرمز في الجدول الرئيسي (TAB)

من أي حقل يتم حساب عدد الرموز في جدول (TAB) ؟

  • Thanks 1
قام بنشر

يتم حساب عدد الرموز من الجدول الوسيط (TAB_RMZ_X)

ويظهر هذا الرقم في الجدول المطلوب (TAB_RMZ) عند الكبس على علامة (+) فيظهر عدد مرات تكرار هذا الرمز وأين يوجد، هذا بناء على العلاقة بين الجداول الثلاثة

 004.jpg.50037f6e49a9f0c4567e61cfaf047dfd.jpg

والمطلوب -إن أمكن- طريقة لإظهار هذا الرقم مباشرة في حقل خاص

قام بنشر

المشكله أنه لايوجد لديك ربط بين الجدولين TAB و TAB_RMZ ..

image.png.b2a9162d3b3445e89a408ea004154499.png

عملتها لك بالطريقة الصعبة 😅 في استعلام اسمه TAB_Q بس طلع بطيئ بسبب الطريقة الملتوية اللي استخدمتها ..

image.png.cedee2222f171d1a3b13d54446207cf6.png

 

أرفقت لك الملف مع علمي بأنها ليست الطريقة المثلى .. وأترك المجال للخبراء الأشاوس

MusndWZwayid 004.accdb

  • Thanks 1
قام بنشر
30 دقائق مضت, Moosak said:

المشكله أنه لايوجد لديك ربط بين الجدولين TAB و TAB_RMZ

أخي الكريم .. ربما لم أوضح المطلوب تماما .. أنا أرغب بإظهار هذه النتيجة في جدول (TAB_RMZ) وليس (TAB)

يعني .. النتيجة الموجودة في حقل (عدد مرات التكرار) في استعلام (CalcFildQ) المطلوب أن تظهر في جدول (TAB_RMZ) في حقل يتم إنشاؤه خصيصا باسم (Total)

وإن تعذر هذا في الجدول .. فلا بأس أن يظهر في النموذج (FRM_RMZ)

أرجو ان يكون الأمر أصبح أسهل هكذا .. 😄

قام بنشر (معدل)

طبعا مثل هذه العمليات الحسابية لايمكن عملها في الجدول إلا باستعلامات تحديث وهي طريقة ملتوية لا ينصح بها ..

ممكن إظهار النتيجة في النموذج وهو ما أراه مناسبا..

لعلي أتمكن من تطبيق ذلك غدا إن شاء الله..

 

تم تعديل بواسطه Moosak
قام بنشر
32 دقائق مضت, Moosak said:

ممكن إظهار النتيجة في النموذج وهو ما أراه مناسبا

كلامك صحيح استاذ موسى .. يجب تجنب العمليات الحسابية على الجداول الى اقصى حد ممكن

  • أفضل إجابة
قام بنشر
11 ساعات مضت, nssj said:

أخي الكريم .. ربما لم أوضح المطلوب تماما .. أنا أرغب بإظهار هذه النتيجة في جدول (TAB_RMZ) وليس (TAB)

يعني .. النتيجة الموجودة في حقل (عدد مرات التكرار) في استعلام (CalcFildQ) المطلوب أن تظهر في جدول (TAB_RMZ) في حقل يتم إنشاؤه خصيصا باسم (Total)

وإن تعذر هذا في الجدول .. فلا بأس أن يظهر في النموذج (FRM_RMZ)

أرجو ان يكون الأمر أصبح أسهل هكذا .. 😄

تم الأمر أخي الحبيب ...

عدلت الاستعلام وصار اسمه TAB_RMZQ وغيرت اسم العمود المحسوب الى TOTAL وجعلت هذا الكويري هو مصدر بيانات النموذج FRM_RMZ وأضفت له حقل ال TOTAL

هكذا:

image.png.ff8e1e78520e9171d7f888ad8d3e4d54.png

MusndWZwayid 004.accdb

  • Like 1
قام بنشر

أحسن الله إليك أخي الكريم .. تم المطلوب بحمد الله

مع أنني كنت أظن لقلة خبرتي أن الأمر بسيط ويمكن إجراؤه في خصائص الجدول دون الحاجة إلى النماذج والاستعلامات

وطبعاً .. لم أستطع مقاومة شغفي بالتجارب والتطفل على أعمال أهل الخبرة 😁 .. فسرقت عبارة الاستعلام

DCount("*","[TAB_RMZ_X]","[RMZno]=" & [RMZno])

وأنشأت في النموذج مربع نص غير منضم ووضعت العبارة (المسروقة 🙂) في مصدر بياناته .. وتم المطلوب .. وبهكذا وفرت استخدام الاستعلام الخارجي .. هل هذا تصرف صحيح ؟؟

قام بنشر

حلال عليك أخي .. هذي سرقة جائزة 😅

11 دقائق مضت, nssj said:

هل هذا تصرف صحيح ؟؟

نعم صحيح 100% 👌🏻 ، نِعمَ ما فعلت 👍🏻

  • Like 1
قام بنشر (معدل)

ظهرت لي مشكلة صغيرة .. وهي بخصوص فرز حقل (Total) فأنا بحاجة لفرزه واستعراض الرموز التي لم تتكر أو لم تستخدم، أو الرموز التي استخدامها أقل من عشر مرات مثلا .. وهكذا

وحاولت إجراء هذا الفرز في نموذج ورقة بيانات، لكن لم تكن النتيجة مناسبة، على الطريقتين

* طريقتي بجعل القيمة المطلوبة في مربع نص غير منضم (TotalX) فهو حقل لا يقبل الفرز

* طريقتك أخي الكريم باستخدام استعلام خارجي واسم الحقل (Total) وهي أفضل، يقبل الفرز ولكنه يتعامل مع الأرقام كنص ولا يفرز بالشكل المطلوب

 041.jpg.1b875df0b84f84ae8178acfac8aeb56c.jpg

ولأني أحب التجارب والاختراعات 🙂 .. آخر تجربة عندي أني أضفت للجدول حقل رقمي (TotalXX) ووضعت له استعلام تحديث (Q_rmzupdate) واستخدمت فيه العبارة المسروقة 😁

واستدعيت هذا الاستعلام في حدث عند التحميل في النموذج (FRM_RMZ2) .. والنتيجة جيدة .. الفرز كما هو المطلوب .. وأستطيع أيضا انشاء استعلام (Q_RMZ_total) لعرض الرموز التي تكررت أقل من عشر مرات مثلا وهكذا ..

فهل هذا هي الطريقة المثلى لهذا الغرض .. أم هناك أفضل منها دون استخدام الكباري والأنفاق 😅

MusndWZwayid 005.accdb

تم تعديل بواسطه nssj
  • 1 month later...
قام بنشر (معدل)

إشكالات طارئة !!!

أجريت تعديلا بسيطا على هذه الطريقة: استبدلت استعلام التحديث بهذه العبارة في حدث عند التحميل

CurrentDb.Execute "UPDATE TAB_RMZ SET TAB_RMZ.Total = DCount(""*"",""[TAB_RMZ_X]"",""[RMZno]="" & [RMZno])"

وطبقت هذه الطريقة أيضا في جدول (Tab_Msaneed) والنتيجة تمام بحمد الله ..

لكن حصلت معي بعض الإشكالات مع جدول (DATA_list) وهو الجدول الذي فيه كل القوائم، واجهتني مشكلتان:

الأولى: لا مشكلة إذا كانت العلاقة بين جدولين كما هو الحال في قائمتي (نوع الحديث1) (نوع الحديث 2)، المشكلة إذا كانت العلاقة بين أكثر من جدولين، يظهر هذا في قوائم المسانيد: (LVL1) (LVL2) (LVL3) (LVL4)

لم أستطع أن أجعل النتيجة تظهر بالطريقة السابقة (UPDATE TAB .. ..)، لأني لم أعرف كيف أصوغ العبارة، استطعت أن أحصل على النتيجة عبر استخدام استعلام (Q_Msaneed_List) .. فما هي الصياغة الصحيحة لعبارة التحديث ؟

'CurrentDb.Execute "UPDATE [DATA_list] TAB_Msaneed_list INNER JOIN Tab_Msaneed ON TAB_Msaneed_list.ID = Tab_Msaneed.ID_MSA SET [DATA_list].TOTAL = DCount(""*"", ""[TAB_Msaneed_list]"", ""[lvl4]="" & [nom2]) WHERE (((DATA_list.NOM2)>0) AND ((DATA_list.NOM1)=6)) "

ثانيا: في خانة (الكل) المطلوب إظهار حاصل مجموع القوائم التابعة له وليس عدد كل السجلات، يعني في الصورة:

 022.jpg.b8c6658bc1a3f00d0c300b9a68ee23e1.jpg

المفروض أن تكون النتيجة (3084) وليس (3087)  .. لكن أيضا لا أعرف كيف تصاغ عبارة الكود !!

CurrentDb.Execute "UPDATE [DATA_list] SET [DATA_list].TOTAL = DCount(""*"", ""[TAB]"", ""[TYPE1]="" & 1 and 2) WHERE (((DATA_list.NOM2)=0) AND ((DATA_list.NOM1)=1)) "

 

Total.rar

تم تعديل بواسطه nssj
قام بنشر

الإشكالية الثانية (إظهار حاصل مجموع القوائم) تم حلها بحمد الله، فخلال بحثي وصلت للصايغة الصحيحة لهذا الغرض وهي:

DCount(""*"", ""[TAB]"", ""[TYPE1]>0"")

بقي الإشكال الأول: وهو الصياغة الصحيحة لإحضار المجموع من خلال العلاقة بين جدولين: عدد (MSNO) من جدول (Tab_Msaneed)  التابع لهذه القوائم (Lvl1 – lvl2 – lvl3 – lvl4) من خلال العلاقة بين الجدولين (Tab_Msaneed)  (TAB_Msaneed_list)

أجريت عدة محاولات .. كانت تخرج لي رسالة

 05.jpg.035f35e7317e8bcfa88955bd273d3ced.jpg

وفي الصياغة الأخيرة المذكورة سابقا أصبحت الرسالة

 06.jpg.7528d0ee5d5f8219163c841efa97b0fb.jpg

ما هي الصياغة الصحيحة للكود، أم أنه لا بد من استخدام الاستعلام الخارجي ؟

قام بنشر
On 11/2/2021 at 1:41 PM, nssj said:

الإخوة الكرام .. في الملف المرفق ثلاثة جداول بينهما علاقة متعدد لمتعدد

والمطلوب -سلمكم الله- إدراج حقل محسوب باسم (Total) في جدول (TAB_RMZ) يظهر فيه عند كل رمز عدد المرات التي وجد فيها هذا الرمز في الجدول الرئيسي (TAB)

MusndWZwayid 004.accdb 748 kB · 3 downloads

thanks for sharing 

Nox Vidmate VLC

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information