-
Posts
371 -
تاريخ الانضمام
-
تاريخ اخر زياره
نوع المحتوي
المنتدى
مكتبة الموقع
معرض الصور
المدونات
الوسائط المتعددة
كل منشورات العضو nssj
-
الإخوة الكرام .. في الملف المرفق كود لحذف سجل أو عدة سجلات، بعد نسخها لجدول آخر وهو يعمل معي بشكل جيد والحمد لله لكن توجد مشكلة .. أرجو أن تكون بسيطة وهو أنه بسبب استخدام (Requery) يرجع لأول الملف والموضع المطلوب أن يرجع إليه، هو قبل أول حديث تم حذفه ففي هذا المثال إذا تم تحديد عدة سجلات لحذفها أولها رقمه (42) فالمطلوب أن يرجع لأول حديث قبله وهو (38) Delete.accdb
-
تنفيذ الأمر في السجلات التي يتم تحديدها بالفأرة فقط
nssj replied to nssj's topic in قسم الأكسيس Access
أحسن الله إليك أخي الكريم .. تم المطلوب بحمد الله -
تنفيذ الأمر في السجلات التي يتم تحديدها بالفأرة فقط
nssj replied to nssj's topic in قسم الأكسيس Access
أحسن الله إليك أخي الكريم .. وكالعادة: أولا: أخذت وقتاً حتى استوعبت ما قمت به أخي الكريم 🙄 ثانيا: بعد الاستيعاب – وكالعادة – لا بد من ممارسة هوايتي المفضلة: التعديل على الأكواد 😁 وهذه المرة من المرات القلييييلة التي تنجح فيها تجاربي دون أن أثقل عليك وعلى الإخوة الكرام وخلاصة التجارب: 1- جعلت الكود الذي في الفورم لا يعمل إلا بعد الكبس على زر معين If Me.SelHeight = 0 Or Me.TempVars_Clear.Caption = "no" Then Exit Sub 2- تمكنت من جعله عند الطلب يطبق أكثر من مهمة متعاكسة، مهمة على (MOVEX) ومهمة مختلفة على (SelectX) .. .. If Me.com1.Enabled = True Then Call com1_Click ElseIf Me.TempVars_Use.Enabled = True Then Call TempVars_Use_Click End If ولتجنب موضوع نسيان التحديد وتركه جعلت في أول كل كود منهما If TempVars!tmpVars_DoIn = 0 Then Exit Sub وفي آخره TempVars!tmpVars_DoIn = 0 والأمور بحمد الله تمام .. فبارك الله فيك أخي الكريم ولكن قبل ختام الموضوع عندي استفسار أخير: كونك أخي الكريم جعلت الجملة الشرطية التي تحدد متى يتم تنفيذ الكود بهذه الصيغة CurrentDb.Execute .. … .. WHERE TNO In (" & Mid(TempVars!tmpVars_DoIn, 3) & ")" هذا يعني أنه من غير الوارد أن يتم الأمر كما كنت أظن، يعني جملة شرطية ( WHERE .. .. ..) تعتمد فقط على السجلات التي يتم تحديدها بالفأرة دون الحاجة إلى مربع اختيار هذا لأن عندي عدة جداول ليس فيها مربع اختيار (SelectX) وقد أحتاج لتنفيذ أمر على عدة سجلات متتالية يتم تحديدها بالفأرة فكان ظني أن أستخدم هذه العبارة الشرطية لتنفيذ الأمر في السجلات المحددة لكن ما فهمته الآن أنه لا بد من وجود مربع اختيار لتنفيذ المهام على السجلات المحددة هل ما فهمته صحيح أخي الكريم ؟ -
تنفيذ الأمر في السجلات التي يتم تحديدها بالفأرة فقط
nssj replied to nssj's topic in قسم الأكسيس Access
أحسن الله إليك أخي الكريم .. يبدو أن الموضوع ليس سهلا كما كنت أظن أنا كنت أظن أن الأمر سيتم بصياغة الجملة التي بعد (WHERE) بمعني أن تكون هناك جملة أو صيغة تميز السجلات التي تم تحديدها بالفأرة لينفذ عليها الأمر وأنا كنت أنوي استخدام هذه الجملة لتنفيذ أوامر أخرى مثل (حذف سجلات تم تحديدها بالفأرة) وغير ذلك، أحيانا على مربع (MOVEX) وأحيانا على مربع (SelectX) -وهو غير موجود في النموذج المرفق لأنه للتجربة فقط- وذلك حسب طبيعة الكود ومهمته لكن .. إذا كان الأمر لا يتم إلا بهذه الطريقة، بوضع الأمر في الفورم نفسه، فهل من طريقة لجعل تنفيذه بعد الكبس على الزر، فلا أريد كلما تم تحديد سجل أو عدة سجلات أن يقوم الكود بالعمل فورا وتبقى إشكالية لو كان المطلوب تطبيق الأمر على المربع الآخر (SelectX) عند الحاجة لذلك في مهمة أخرى -
تنفيذ الأمر في السجلات التي يتم تحديدها بالفأرة فقط
nssj replied to nssj's topic in قسم الأكسيس Access
أخي الكريم .. يبدو أني لم أوضح المطلوب بشكل جيد 😐 المطلوب في هذه الصورة أن يضع الكود علامة صح في المربع في السجلات الأربع التي تم تحديدها والكود الذي تفضلت به يضع (صح) في بقية السجلات هذا بعد أن أضع أنا فيها علامة (صح) -
الإخوة الكرام .. المطلوب تنفيذ هذا الأمر CurrentDb.Execute "UPDATE [TAB] SET [TAB].[MoveX] = Yes" في السجلات التي يتم تحديدها بالفأرة فقط وليس في كل السجلات select.accdb
-
مساعدة في استعراض السجلات حسب القوائم المنسدلة المتفرعة
nssj replied to nssj's topic in قسم الأكسيس Access
تم المطلوب بحمد الله .. انطلاقا من الكود الذي تفضلت به أخي الكريم، وبعد عدة تجارب، مع التعديل على جدول (DATA_list) وإضافة خانة (الكل) ، أصبحت النتائج تظهر بالشكل المطلوب .. وهذا الملف بعد آخر التجارب والإضافات Msaneed List 9.rar -
مساعدة في استعراض السجلات حسب القوائم المنسدلة المتفرعة
nssj replied to nssj's topic in قسم الأكسيس Access
أحسن الله لك أخي الكريم .. النتيجة أفضل بكثير وتم تجاوز مشكلة تغيير البيانات في الجدول بعد أن تذكرت شيئا سمعته في بعض الفيديوهات من النت، فجعلت القوائم (غير منضم) وتم الأمر لكن بقيت قضية استعراض الكل عند جعل القائمة فارغة تظهر المشكلة إذا كانت كل القوائم ممتلئة: فإذا أردت استعراض بعضها، مثلا (الرجال – حرف الراء) فلا يكفي أن أفرغ القائمتين الأخريين، بل لا بد من إلغاء التصفية أولا ثم إعادة اختيار (الرجال) ثم اختيار (حرف الراء) فهل من طريقة لجعل الفلترة تعتبر الفراغ في أي خانة يعني إظهار الكل في هذه الخانة مع اعتبار بقية الخانات يعني بمجرد تفريغ الخانة الأولى يستعرض النتائج حسب بقية الخانات سواء كانت (مسانيد أو مبهمات أو مراسيل) وعند تفريغ الخانة الثالثة تظهر كل النتائج باعتبار (الرجال – حرف الراء) سواء كانت أسماء أو كنى ، مسانيد أو مبهمات أو مرسلات .. وهكذا -
مساعدة في استعراض السجلات حسب القوائم المنسدلة المتفرعة
nssj replied to nssj's topic in قسم الأكسيس Access
جزاك الله خيرا أخي الكريم د.كاف يار .. لكن لا تزال هناك بعض الملاحظات: 1- لم تكن النتائج الدقيقة في كل مرة لكن بعد التعديل التالي على الكود أصبحت النتائج دقيقة varFilter = (varFilter) & "[LVL1] lIKE " & LVL1 & "" varFilter = (varFilter + " and ") & "[LVL2] lIKE " & LVL2 & "" varFilter = (varFilter + " and ") & "[LVL3] lIKE " & LVL3 & "" varFilter = (varFilter + " and ") & "[LVL4] lIKE " & LVL4 & "" 2- هل بالإمكان أن تخرج النتائج حتى لو كانت بعض الخيارات فارغة، يعني إذا أردت أن أعرف نتيجة (النساء – حرف السين) فقط، تخرج .. (مبهمات – الكنى – حرف العين) .. (مراسيل – حرف الدال) وهكذا ولأني أحب التجارب حاولت بوضع عدة احتمالات مثل If IsNull(LVL1) And IsNull(LVL4) Then ولكن ليس دائما تخرج النتيجة المطلوبة 3- عند تغيير الخيارات تتغير البيانات في السطر الأول من الجدول ومن تجاربي أيضا أنني حاولت أن أجعل النتائج تخرج عبر استعلام ظنا مني أن البيانات لن تتغير في الجدول، ولكنها تغيرت وفي الملف المرفق نتيجة تجاربي التي لم تنجح 😁 Msaneed List 7.rar -
مساعدة في استعراض السجلات حسب القوائم المنسدلة المتفرعة
nssj replied to nssj's topic in قسم الأكسيس Access
🤔 😐 🤔 -
الإخوة الكرام .. في الملف المرفق جدول (TAB_Msaneed_list) وهو فهرس للمسانيد (Tab_Msaneed)، وهو فهرس من أربع مستويات، ويأخذ بياناته باستعلامات بوساطة جدول (DATA_list)، كما يظهر في النموذج (Frm_Msaneed_list) وهذه الطريقة في عمل الفهرس كانت بناء على توجيهات أحد الإخوة، ولكن انقطع الاتصال معه، وأنا الآن في (حيص بيص 🙄) والمشكلة التي واجهتها هي في عرض قائمة المسانيد المطلوبة حسب القوائم المختارة فإذا أردت مثلا استعراض مسانيد حرف (الجيم) من كنى الرجال، أقوم باختيار هذه الخيارات من القوائم، فتعرض النتيجة في النموذج الفرعي (Fsub_Msaneed) ولكن .. لا تظهر النتائج معي إلا بالتنقل بين السجلات .. يعني علي أن أنتقل بين السجلات حتى تظهر النتيجة المطلوبة في حين أنني إذا قمت بتغيير الاختيارات من القوائم تتغير البيانات في الجدول المصدر (TAB_Msaneed_list) بدل أن تتم عملية الانتقال، لذلك فعلت خاصية التأمين لهذه القوائم حتى لا تتغير البيانات أعرف أنني ارتكبت عدة أخطاء .. ويمكن أكون (خبصت الدنيا 😁) لكن هذا أفضل ما استطعت الوصول إليه حسب معلوماتي 😐 Msaneed List.rar
-
الحمد لله .. بعد عدة تجارب تم الوصول للمطلوب باستعلام واحد وهذه التجارب الناجحة -وإن كانت قليلة- تشعرني إنو في أمل جزاك الله خيراً أخي الكريم وأحسن إليك
-
فعلا أخي الكريم .. هذا بيت القصيد: إني أقدر أشرح ما هو المطلوب وأوضح الصورة بدقة ، بس مش دايما بتزبط معي للأسف 😐 على كل .. بعد إجراء بعض التجارب حصل معي بعض التقدم، لكن قبل هيك خليني أحاول أشرح المطلوب مرة ثانية .. يمكن هالمرة يكون كلامي أوضح أخي الكريم .. جدول (Tab_Msaneed) فيه ترتيب المسانيد الموجودة في الملف الرئيسي (TAB) لأن الأحاديث مرتبة على المسانيد، والجدولين مرتبطين بالمفتاح الرئيسي (MNO) ورقم كل مسند موجود في حقل (MUSNAD) في الملف الرئيسي .. وهذا طبعا بعد مساعدتك المشكورة في الموضوع السابق (نسخ أول سطر يبدأ بقيمة معينة ووضعها في حقل في جدول آخر) المطلوب الآن هو معرفة أول حديث يبدأ به كل مسند في الجدول الرئيسي ووضع رقم (MNO) الخاص به في حقل خاص في جدول (Tab_Msaneed) .. وهذا ما تم بفضل الاستعلام الذي تفضلت به لكن فاتني أن أنبه أن ترتيب الأحاديث في الجدول الرئيسي هو حسب (TNO) وليس حسب (MNO) ، لأن الترتيب يتغير كثيرا حسب الإضافة والحذف والنقل، والمفتاح الرئيسي لا يقبل التعديل، فالمطلوب إحضار رقم أول حديث بناء على هذا الترتيب * ولم يظهر خلل في الملف المرفق لأنه ملف مختصر تتوافق فيه أرقام الحقلين (MNO) (TNO) لكن عند استخدامه فعليا في الملف الحقيقي حيث يوجد فرق بين الحقلين ظهر الخلل يظهر هذا في الملف المرفق الجديد في موضعين: 1- مسند (3: مسند أبان المحاربي) فرقم (MNO) لأول حديث فيه حسب الترتيب المعتمد هو (30001) بينما سيكون رقمه إذا كان الترتيب على أساس (MNO) هو (3) وهي النتيجة التي أخرجها الاستعلام لأنه اعتبر أن الترتيب على أساس (MNO) 2- وكذلك في أول مسند (7: أبي بن كعب) أول حديث فيه حسب الترتيب المعتمد هو (30007) بينما الاستعلام جعله (4) لأنه فعلا أول حديث في هذا المسند على أساس أن الترتيب حسب (MNO) * وهنا قلت لحالي: طيب ليش الغلبة ووجع الراس .. خليني أعتمد على رقم (TNO) وبلاش من (MNO) وبالاعتماد على شرحك الواضح للخطوات عدلت على الاستعلام بحيث يكون الاعتماد على (TNO) ، وهكذا أدرج رقم (TNO) لأول حديث في كل مسند في حقل (First_TNo) في جدول (Tab_Msaneed) ولكن ظهر أن هذا الأمر غير عملي .. وأن الأفضل إدراج رقم (MNO) للحديث لأن رقم (TNO) يتغير باستمرار، ولم تنجح محاولة إنشاء علاقة مع خاصية (تتالي التحديث) بالاعتماد عليه لأنه من غير المناسب جعله مفتاحا رئيسيا فالمطلوب إدراج رقم (MNO) بدل (TNO) وهذا ما لم أستطع فعله في نفس الاستعلام * وللتوضيح أكثر: في الملف المرفق في جدول (Tab_Msaneed) ثلاثة حقول: - (MNO) وتظهر فيه النتيجة بالاعتماد على الاستعلام الذي تفضلت به (Query2) - (First_TNo) وتظهر فيه النتيجة بالاعتماد على الاستعلام المعدل (QueryTno) - (First_MNO) وفيه النتائج المطلوب الوصول لها: رقم (MNO) لأول حديث في كل مسند على أساس أن الترتيب حسب (TNO) وتمكنت من الوصول لهذه النتيجة من خلال استعلام تحديث منفصل (QueryMno) يعتمد على نتيجة الاستعلام المعدل السابق (QueryTno) والمطلوب إن أمكن الوصول لهذه النتيجة باستعلام أو كود واحد لأنه سيتم استخدامه دوريا لتحديث البيانات كلما أدت عمليات الإضافة والنقل إلى تغيير الحديث الذي يكون في بداية المسانيد، أو إضافة مسند جديد في جدول المسانيد 1418.Musnad2.accdb
-
كل الشكر والتقدير لك أخي الكريم جعفر لكن معلش طول بالك وما تزعل مني .. نسيت معلومة مهمة ومؤثرة في النتائج .. كان لازم أتذكرها 🙄 وهي أن المطلوب إحضار أول قيمة لـ (MNO) على أساس أن الترتيب على حسب (TNO) وليس على (MNO) مهمة (TNO) هي ترتيب الأحاديث وهو رقم يتغير حسب الإضافة والحذف والنقل، أما (MNO) فهو رقم ثابت ينتقل مع الحديث حيثما ذهب للتوضيح أضفت سجل في أول مسند أبي بن كعب (7) ورقم (MNO) لهذا السجل (2000) ورقم (TNO) هو [14] فالمطلوب إحضار رقم (MNO : 2000) لأنو هو الأول في الترتيب وليس (MNO : 4) طبعا حاولت أعمل حالي فهمان وأصلح غلطتي لحالي بدون ماأزعجك .. عشان هيك تأخرت في الرد .. وبعد كل التجارب : مازبطت معي 😐 ولأني كنت غرقان في التجارب ما قرأت مشاركتك الأخيرة إلا لما جهزت هذا الرد .. على كل إذا تجاوزنا مشكلة الترتيب على (TNO) ففي عندي حكي بخصوص الموضوع الثاني .. برضو شغلة ما كنت منتبه إلها 🙄😐
-
الإخوة الكرام .. في الملف المرفق حقل (MUSNAD) في جدول (TAB) هو حقل رقمي مرتبط بجدول (Tab_Msaneed) والمطلوب طريقة لفرز أول رقم بدون مكرراته لوضع رقم (MNO) الخاص به في حقل (MNO) في جدول (Tab_Msaneed) بحيث يدل على رقم أول حديث يبدأ به هذا المسند وهل يمكن أن يتغير هذا الرقم تلقائيا إذا تغير ترتيب الأحاديث بسبب الحذف والإضافة والنقل أم لا بد من تحديث هذا الحقل بين الحين والآخر ؟ Musnad.rar
-
هل هذا يعني أن ماقمت به صحيح !! .. هيك ممكن آخذ في حالي مقلب 🙃
-
نسخ أول سطر يبدأ بقيمة معينة ووضعها في حقل في جدول آخر
nssj replied to nssj's topic in قسم الأكسيس Access
بارك الله فيك أخي الكريم وأحسن إليك .. تم المطلوب بحمد الله -
نسخ أول سطر يبدأ بقيمة معينة ووضعها في حقل في جدول آخر
nssj replied to nssj's topic in قسم الأكسيس Access
أخي الكريم جعفر .. جزاك الله خيراً وأحسن إليك أكرر شكري لك على نصائحك وتوضيحاتك .. لأنه يهمني أن أعرف كيف تمت معالجة المشكلة، فهذا ربما يساعدني في تجاربي ومحاولاتي القادمة .. لعلي أستطيع أن أحل بعض مشاكلي بنفسي ولكن -كما هو المعتاد 😁- هذا لا يمنع أن تكون لدي بعض الاستفسارات أولا: لا حظت وجود سطر فارغ في آخر نتيجة الاستعلام: وحاولت تعديل الاستعلام إلى: S: Mid([NASS],1,InStr([NASS],Chr(10))) Mid([NASS],1,InStr([NASS],Chr(13)+Chr(10))) والنتيجة نفسها .. لا يزال السطر الفارغ في آخر الحقل موجودا .. ومع أنه يمكن حذفه باستخدام الكود القديم الذي تفضلت به - واللي غلبنا ووجع راسنا 😅-: كود حذف الأسطر والمسافات (Remove_Extras) لكن أحببت أن أنقل لك هذه الملاحظة فربما يكون بإمكانك معالجتها بتغيير صيغة الاستعلام ثانيا: رقم (1) في الاستعلام أثار فضولي .. وفهمت من كلامك أن وظيفته تحديد متى تبدأ مهمة الاستعلام، فرقم واحد تعني أن يبدأ من أول حرف، فجربت أن أغيره إلى (4) حتى يبدأ النسخ من رابع حرف، أي بعد الرمز المطلوب (@@$ ) ، وفعلا هذا ما حدث .. لكن لا حظت أن تغيير الرقم أثر أيضا على آخر النص المطلوب نسخه .. فزاد بعض الأحرف من السطر التالي، وبدون سطر فارغ ! .. كما في الصورة فهل هذا يعني أني ما استنتجته من كلامك غير صحيح وأن لهذا الرقم تأثير آخر ؟ -
الإخوة الكرام .. في الملف المرفق جدول (TAB) حقل (NASS) المطلوب نسخ كل أول سطر يبدأ بـ [@@$] والترتيب على أساس (TNO) ووضعه في حقل (MS_NAME) في جدول (TAB_Msaaneed) كل ما استطعت فعله هو استعلام لحصر السجلات المطلوبة من جدول (TAB) والتي تبدأ [@@$] أما كيفية نسخ أول سطر من كل سجل منها ووضعه في حقل (MS_NAME) من الجدول الثاني .. فهذا صعب جداً علي 😐 MZ.accdb
-
الإخوة الكرام .. في الملف المرفق نموذج (FRM1) يحتوي على: 1- كود يقوم بإضافة سجل جديد بعد السجل الحالي مباشرة وليس في آخر الجدول 2- كودين: أحدهما لنقل السجل الحالي للأعلى خطوة واحدة، والثاني لنقله للأسفل خطوة واحدة. والمطلوب تحويل هذه الأكواد لوحدة نمطية (module) لاستخدامها في عدة نماذج وقمت بمحاولة تحويلها لوحدات نمطية: - كود الإضافة (Mod_ADDRe) - كود النقل لأعلى وأسفل في وحدة نمطية واحدة (Mod_Move_Recode) وتطبيق هذه الوحدات النمطية في النماذج: * FRM_RMZ * FRM_ROWA * FRM_TF_TYPE وما قمت به هو مجرد محاولة وتجربة .. ومع أنني لم أواجه مشاكل في استخدامها، ولكن لا بد من التأكد من صحة ما قمت به وتصحيح الأخطاء والوصول لأفضل الصيغ قبل استخدام هذه الأكواد .. فلا مجال للتجارب عند بدء العمل الجاد .. وأنا أنتظر من أهل الخبرة في هذا الملتقى المبارك النصح والتوجيه للوصول إلى أفضل النتائج وتجنب الأخطاء قدر الإمكان .. والله الموفق. module.rar
-
للتذكير .. فالمشاغل كثيرة .. والمطالب أكثر .. والوقت أضيق 🙂
-
هل لك أخي الكريم أن تجرب على الملف المرفق .. أو تدلني على الطريقة إن كان تطبيقها سهل على المبتدئين أمثالي view.accdb
-
جزاك الله خيرا على الإفادة أخي الكريم .. ولكن هل يختلف الأمر في حالة ما إذا كان المطلوب التغيير على فورم فرعي من الفورم الرئيسي .. أم لا بد أيضا من الذهاب إلى وضع التصميم
-
الإخوة الكرام .. إذا كنت أستخدم النموذج وهو في طريقة عرض (ورقة بيانات) مثلاً ، هل أستطيع تغييره إلى (مفرد & مستمر & منقسم) باستخدام زر وأنا في نفس النموذج دون الذهاب لعرض التصميم ؟؟