اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

nssj

03 عضو مميز
  • Posts

    388
  • تاريخ الانضمام

  • تاريخ اخر زياره

السمعه بالموقع

32 Excellent

عن العضو nssj

البيانات الشخصية

  • Gender (Ar)
    ذكر
  • Job Title
    موظف
  • البلد
    الأدرن
  • الإهتمامات
    الحديث الشريف

اخر الزوار

بلوك اخر الزوار معطل ولن يظهر للاعضاء

  1. جزاك الله خيرا أخي الكريم وأحسن إليك تم المطلوب بحمد الله
  2. شكراً على إطرائك أخي الكريم 😊 الكود يؤدي المطلوب بحمد الله وحتى ننهي الموضوع .. ما هو الأمر المطلوب لينتقل المؤشر إلى آخر القائمة أنا كنت أظن أن هناك أوامر بسيطة مباشرة خاصة للانتقال لأول وآخر القائمة على شاكلة: DoCmd.GoToRecord , "", acLast ولكن يبدو أن الأمر ليس كذلك
  3. جزاك الله خيرا أخي الكريم نعم يمكن أن يتكرر، والخطأ مني حيث أني لم أنبه أن الانتقال سيكون بالاعتماد على القيمة التي لا تتكرر وهي رقم (Msno) وهي في القائمة: (Column(0 لم أفهم مقصدك أخي الكريم على العموم .. أعجبتني فكرة أن يكود الكود وحدة نمطية لاستدعائها من أكثر من نموذج بل حتى في النموذج الواحد سيكون هناك أكثر من (10) أزرار أوامر لنفس الغرض فلا داعي لتكرار الكود: (أنس – جابر – سعد – بن عباس – بن عمر – بن مسعود – علي – عمر – معاذ – أبو هريرة – عائشة – مبهم – مرسل) وفي كل زر سأضع أنا رقم (Msno) المطلوب الانتقال له في القائمة وقد جربت الأكواد الثلاثة التي تفضلت بها أخي الكريم بعد أن نجحت في تعديلها لتعمل عبر (Msno) ووضعت في الملف المرفق ثلاثة أزرار لكل زر كود، وتم المطلوب وأترك لك أخي الكريم اللمسة النهائية باختيار أحد هذه الأكواد وتعديله وتحويله لوحدة نمطية، بعد أن علمتَ أن الانتقال سيكون إلى رقم فريد وليس نصا يمكن أن يتكرر مع التذكير بالكود الذي ينتقل لآخر القائمة (go_Last) LIST1.accdb
  4. الإخوة الكرام .. هل يمكن التنقل في القائمة باستخدام الأكواد؟ يعني في الملف المرفق أريد عند الضغط على مربع (ابن عباس) ينتقل التحديد إلى ( عبد الله بن عباس) حاولت بعدة طرق منها: Me.Msaneed_List.Recordset.FindFirst "TNO=798" وأفضل ما وصلت إليه باستخدام كود Me.Msaneed_List.RowSource = "SELECT Tab_Msaneed.MSno,Tab_Msaneed.MS_NAMEX FROM Tab_Msaneed WHERE ((Tab_Msaneed.TNO) > 798) ORDER BY Tab_Msaneed.Tno;" وهو يجعل القائمة تبدأ من (ابن عباس)، وأنا أريد أن ينتقل إليه لا أن يبدأ منه، بحيث يمكنني استعراض ما قبله وما بعده. وكذلك هل يمكن إنشاء كود يعمل تماماً مثل استخدام مفتاحي (Ctrl+Home // Ctrl+End ) بحيث ينتقل المؤشر لأول أو آخر القائمة ؟ LIST.accdb
  5. الذي فهمته من كلامك أخي الكريم أن المشكلة قد تكون في جعل حقل الترقيم التلقائي (ID) هو المفتاح الأساسي فقمت بإضافة حقل رقمي آخر ليكون هو المفتاح الأساسي وهو حقل (bookID) وأنشأت العلاقات بين الجداول وعندما حاولت نقل المعلومات لجدول الربط (TAB_takhrij_X) حصلت نفس المشكلة ففرغت جدول الربط من المعلومات لأقوم بإضافتها من جديد يدويا من خلال نموذج (book) ولم تحدث مشكلة في الصفحات الأولى وعندما ذهبت لآخر صفحتين من كتاب (طبقات أصبهان) وجدوله (bookx) وحاولت إضافة رقم ربط خرجت نفس الرسالة وحتى أقطع الشك باليقين قمت بإنشاء قاعدة بيانات جديدة (3book) وأنشأت جدولين صغيرين بدون بيانات، لكن بنفس تصميم وأسماء الجداول السابقة، وأنشأت جدول الربط (TAB_takhrij_X) وجعلته فارغا لأقوم بتعبئته يدويا عبر نموذج (book) والكتاب الأول (طبقات أصبهان) وجدوله (bookx) وفيه خمس صفحات فقط تم ربطه عبر جدول الربط بلا مشاكل وكذا في الكتاب الثاني (تاريخ أصبهان) وجدوله (bookx2) إلى أن وصلت للصفحة (6) وعندما أضفت رقم الربط خرجت الرسالة أنا أجري تحديثا على جدول (bookx2) فلماذا تخرج لي رسالة أنه مطلوب سجل مرتبط في جدول (bookx) وكلاهما من الجداول الفرعية ولا رابط بينهما وكأن العلاقة المنشأة تتطلب وجود ترابط بين أرقام (bookID) في الجداول الفرعية هذا تفسيري لما حدث .. ولست من أهل الخبرة ولا أدري إن كان ما قمتُ به هو ما قصدته أخي الكريم .. أم أنني أخطات الفهم book3.accdb
  6. يعني لكل كتاب أرقام (ID) الخاصة به ورقم (ID) هو لعدد الصفحات أو الأحاديث حسب طبيعة الكتاب فهذا الكتاب عدد صفحاته (500) وبالتالي عدد (ID) هو (500) وذاك الكتاب عدد صفحاته (2000) وبالتالي عدد (ID) هو (2000) وأصلا فالكتابين المرفقين في الملف أنا اختصرتهما إلى (100) وإلا فأحدهما (2090) والآخر (4970) والذي ظهر لي أن لكي تكون العلاقة فيها تكامل فينبغي أن تكون كل هذه الجداول الفرعية لها نفس عدد (ID) وإلا لماذا يرفض إضافة رقم لــ (ID) موجود في جدول (bookx) وغير موجود في (book2) وإذا كان الأمر كذلك فهل من حل ؟
  7. ليست المشكلة بين الجدول الأصل والفروع المشكلة بين الجداول الفروع وهي جداول الكتب: bookx // bookx2 .. .. فرقم (ID) هو تبع لعدد الصفحات او الأحاديث فلا يمكن أن تتوافق أعداد صفحات الكتب والأحاديث
  8. حصل خطأ ورفعت الملف الخطأ .. هذا الملف الصحيح book2.accdb
  9. الذي يظهر لي أن المشكلة في وجود بعض أرقام (ID) في أحد الجداول وعدم وجودها في جدول آخر هذا ما ظهر لي عندما أنشأت جدولا جديدا فارغا للربط (XXXX) وجعلت العلاقة بالشكل المطلوب وعندما نقلت المعلومات بالنسخ واللصق رفض أن يدخل هذا الصف لأنه لا يوجد (ID) برقم (39) في جدول (bookx) وعندما حاولت أن أضيف رقما جديدا في جدول الربط يدويا من خلال النموذج (book) خرجت هذه الرسالة لأنه لا يوجد (ID) برقم (100) في جدول (bookx2) وكأنه من لوازم (التكامل المرجعي) أن يوجد ترابط بين أرقام (ID) في كل الجداول وهذا متعذر بالطبع، فلكل جدول أرقام (ID) الخاصة به هل ما استنتجتُه صحيح .. وما العمل ؟ ما فعلتُه كان قبل أن أرى مشاركتك أخي الكريم .. وأعتقد أن ما طلبتَه هو ما قمتُ به book2.accdb
  10. الإخوة الكرام .. في الملف المرفق أريد إنشاء علاقة بين (TAB) وعدة كتب أخرى (bookx // bookx2 // .. ..) عبر جدول الربط (TAB_takhrij_X) ولكن عند طلب أن تكون العلاقة بين الكتب وبين جدول الربط بخاصية (فرض التكامل المرجعي) مع (تتالي الحذف وتتالي التحديث) يتعذر ذلك وأنا بحاجة لهذه الخاصية، حتى إذا تم حذف صفحة من أحد الكتب تحذف بياناتها من جدول الربط (TAB_takhrij_X) فأين الخطأ ؟ book.accdb
  11. نعم أخي الكريم .. قد أدى المطلوب بحمد الله ، فجزاك الله خيرا وأحسن إليك وقد قمت بتجربته على الملف الأصلي والنتائج صحيحة بحمد الله، وقمت باختصار بعض الجمل في الاستعلام بناء على معرفتي بالحقول ومدلولاتها فأصبح هكذا: SELECT TAB.MNO, TAB.TNO, TAB.NASS, TAB.NASS1, TAB.TYPE1, TAB.TYPE2, Tab_Msaneed.MSNO, Tab_Msaneed.MS_NAMEX, TAB_Subject.SName, TAB_Subject.LVLno, TAB_Subject.Code, TAB_Subject.Total, TAB_Subject.LVL1, TAB_Subject.LVL2, TAB_Subject.LVL3, TAB_Subject.LVL4, TAB_Subject_X.MAIN_sub, TAB_Subject.ID, TAB_Subject.Xsub, TAB_Subject.ID_Xsub, (SELECT SName FROM TAB_Subject AS L1 WHERE L1.LVL1 = TAB_Subject.LVL1 AND L1.LVL2 = 0) AS LVL1name, (SELECT SName FROM TAB_Subject AS L2 WHERE L2.LVL2 = TAB_Subject.LVL2 AND L2.LVL3 = 0) AS LVL2name, (SELECT SName FROM TAB_Subject AS L3 WHERE L3.LVL3 = TAB_Subject.LVL3 AND L3.LVL4 = 0 AND L3.LVL3 > 0) AS LVL3Name, (SELECT SName FROM TAB_Subject AS L4 WHERE L4.LVL4 = TAB_Subject.LVL4 AND L4.LVL4 > 0) AS LVL4Name, (SELECT LISTname FROM DATA_list WHERE NOM2 = TAB.TYPE1 AND NOM1 = 1) AS TYPE1name, (SELECT LISTname FROM DATA_list WHERE NOM2 = TAB.TYPE2 AND NOM1 = 2) AS TYPE2name FROM (Tab_Msaneed INNER JOIN TAB ON Tab_Msaneed.MSNO = TAB.MUSNAD) INNER JOIN (TAB_Subject INNER JOIN TAB_Subject_X ON TAB_Subject.ID = TAB_Subject_X.SUB_ID) ON TAB.MNO = TAB_Subject_X.MNO ORDER BY TAB.TNO;
  12. أخي الكريم .. في الملف المرفق الاستعلام كما أستخدمه مع إضافة الحقول الجديدة المطلوب تعبئتها، مع ملاحظة أني لم أضف جدول (DATA_list) في شاشة الاستعلام، لأنه لا توجد بينه وبين الجداول الأخرى علاقة، وقد لا حظت أنك توصلت للنتائج المطلوبة دون أن يكون موجودا في شاشة الاستعلام QF_Subject3.accdb
  13. الفرق في وجود جدول آخر والعلاقات بين الجداول فالنسخة المرفقة من الاستعلام هي نسخة مصغرة للتجربة، حتى أنه فيه جدول (DATA_list) وليس في الاستعلام الأصلي الذي أستخدمه ، لأني لا أزال في طور التجارب، وقد أضيف جدولا آخر وأنا كنت أتوقع أن تكون معالجة الأمر بوضع دالة داخل الاستعلام، على شاكلة: أو بحيث أستطيع نقلها ووضعها في المكان المناسب على حسب التحديثات التي تطرأ على تكوين الاستعلام.
  14. التقصير مني أخي الكريم لأني لم أوضح الفكرة بالشكل المناسب 😐 النتيجة صحيحة 100% نعم .. هذه البداية فقط 😁 المطلوب إدراج هذه الشروط في الاستعلام الأصلي حتى لا أكون بحاجة لغيره .. أرجو أن يكون هذا ممكنا
  15. كالعادة .. أمور كنت أظنها يسيرة فإذا بها متشعبة ومعقدة حتى في نظر أهل الخبرة 😅 مقصدي الأهم من هذا الطلب معرفة ما إذا كان هذا الإجراء متاحا في الاستعلام، ثم إذا كان ممكنا هل هو (ظاهرة صحية) لا تسبب البطء في التشغيل لأن عندي استعلام يضم عدة جداول مترابطة، أريد أن أجعله مصدرا موحدا لعدة نماذج فإذا كان بالإمكان أن توجد هذه المعلومات في الاستعلام نفسه بحيث تعرض في النماذج من خلال (مربع نص) فهو أفضل، وإلا فأنا اعتدت على إظهار هذه المعلومات في النماذج باستخدام (قائمة تحرير وسرد) واستعلامات داخلية خاصة لكل نموذج. وقد حاولت مجددا في الاستعلام باستخدام جداول مكررة داخل الاستعلام، وتمكنت من الحصول على المطلوب في (LVL1) (LVL2) فقط ، دون المستوى الذي بعده (LVL3). ولا أدري أصلا إن كانت هذه الطريقة صحيحة أم أنها قد تتسبب بمشاكل أو بطء عند استخدام الاستعلام في النماذج الكبيرة والنتائج الي أظهرها الاستعلام الذي تفضلت به أخي الكريم أفضل، فقد أظهر الأسماء في جميع المستويات. لكن فيه نفس المشكلة التي ظهرت في محاولتي الأخيرة، وهي ظهور الاسم في المستويات الفارغة، أعني التي الرقم فيها (صفر) وربما السبب أن المستوى الأول والثاني (LVL1) (LVL2) موجودان في كل حديث، أما ما بعده فليس بالضرورة. فحيثما كان رقم (LVL3) أو (LVL4) هو (صفر) فالاسم = "" QF_Subject2.accdb
×
×
  • اضف...

Important Information