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

Dream_Works

المشرفين السابقين
  • Posts

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

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

كل منشورات العضو Dream_Works

  1. أخي الكريم أحياناً يمكن استخدام الماوس و القوائم بطريقة تعطي نتائج أفضل من الكود ... المشكلة التي لم أكن منتبه إليها هي ضرورة وضع اسم المعلم في ال Page Footer و ليس Report Footer و بذلك يكون اسم المعلم دائما في الأسفل حتى لو وضعت بيانات طالب واحد فقط في الصفحة أرجو أن يكون هذا المطلوب ملحوظة : إن لم يكن هذا هو الحل المطلوب ... أرجو توضيح المشكلة التي تتطلب ضرورة الكود db1.zip
  2. أرجو أن يكون هذا المطلوب ... أرجوالتأكد من تعبئة Certificate ID في حالة الإضافة _______________________3.zip
  3. أرجو أن يكون هذا المطلوب ... بدون كود ... فقط إعادة تحجيم ... db1.zip
  4. غريبه ... جرب التأكد من الخيارات المتاحة لمحرر الكود Tools -> Options و جرب تشغيل ملف آخر للأكسيس لمعرفة مكان الخلل بالضبط ( بملف معين أو نسخة الأوفيس كلها ) إذا كان الملف ... ارفق ملفك ... و إذا كانت النسخة ... أعد تركيبها من جديد
  5. احتمال يجب عليك إضافة اللايبراري (Reference) المطلوب لهذه الأداه في نسخة الأوفيس التي لديك ... أرجو إرفاق قاعدة بياناتك للتأكد من ذلك
  6. حركة جميلة بالفعل ... الله يعطيك العافية ...
  7. الحمدلله أن تحقق مرادك ... سواء مني أو من غيري ...
  8. احتمال أنشغل شوي هاليومين ... أرجو إنك تطول بالك معاي ... أو احتمال عضو آخر يستكمل ما بدأته أنا ... للرفع
  9. أخي الكريم أحياناً توجد مشاكل عند استخدام حقل ال AutoNumber لذلك ... لا يستحسن استخدامه لأنه عند مسح صف من صفوف الجدول لا تتم إعادة ترقيمه بشكل تلقائي و يصعب التحكم فيه ... فيستلزم الأمر بعض الاجراءات. المهم .... بما أنك تعتبر أن الحقل AutoNumber سيعمل معك بشكل صحيح مبتدئاً من الواحد يمكنك أن تبدأ من الصفر بإحدى الطريقتين 1- تغيير مصدر مربع النص في الفورم إلى AutoNumber - 1 2- عمل استعلام كامل يحتوي على المعادلة السابقة أرجو أن يكون هذا طلبك بالتوفيق ...
  10. الله يعطيك العافية ... برنامج رائع و متعوب عليه بالفعل ... أبرز ما أعجبني فيه هو نموذج بيانات الكتاب ( إغلاق النموذج و تغيير لون خلفيته مع كل فتح للنموذج ) ... حركة جميله و مبتكرة ...
  11. جرب هالمحاولة Test_14.zip
  12. أخي الكريم أرجو منك القيام بالتعديلات التالية في البرنامج: تعديل أسماء الحقول الموجودة في الكود حتى تكون مطابقة تماماً لأسماء الحقول في الجدول rs.Fields("اسم الحقل") = .ControlSource rs.Fields("قيمة الحقل الأصلية") = .OldValue rs.Fields("قيمة الحقل المتغيرة") = .Value rs.Fields("من قام بالتعديل") = acbCurrentUser() rs.Fields("تاريخ ووقت التعديل") = Now يجب إضافة الحقل "اسم الحقل" في جدول ال Alamari ... يجب أن تكون أسماء الحقول في الكود متطابقة تماماً مع أسماء الحقول في الجدول 2- هذا هو الكود الصحيح لمناداة الوحدة النمطية Call FillItems.FillItems(Me.name) 3- يجب تجربة الكود على فورم آخر غير ال AlAmari هذا إذا كان على حسب فهمي أن جدول Alamari هو المسؤول عن تسجيل التعديلات ... حتى تتم التجربة بشكل صحيح ... جرب نسخ أي نموذج آخر و في الحدث BeforeUpdate للنموذج استدعِ الكود من الوحدة النمطية يتبقي فقط حقل "اسم الجدول" الذي سأضيفه إنشاء الله قريبا في الكود ... أرجو أن تقوم بتنفيذ تعليماتي بنفسك للأسباب التالية 1- حتى تتعلم على تصميم البرامج 2- لأن قاعدة بياناتك كبيرة بعض الشيء فلا نريد تنزيل نسخة منها على السيرفر ... بين الحين و الآخر ... أو مسح النسخ السابقة 3- وجود تعديلات الكود بشكل واضح في المنتدى دون تحميله على البرنامج ... يساعد أي عضو آخر في فهم المشكلة و كيفية حلها دون الحاجة إلى تنزيل البرنامج 4- تعليماتي بسيطة نسبياً و يمكنك عملها بسهولة و بسرعة إذا لم تستطع تنفيذ تعليماتي ... أرجو إبلاغي بذلك أرجو إبلاغي بأي ملاحظات أخرى ... حتى أضعها في اعتباري عند تعديل الكود بالتوفيق
  13. أخي الكريم أرجو إبلاغي بملاحظاتك ... ما الذي تجده ناقصاً بالضبط؟ ... لأني حالياً أعتقد أنه ينقصني فقط تعبئة اسم الجدول
  14. بما أنك مستعجل قليلاً ... فسأخبرك بما توصلت اليه الى الآن (الحل غير مكتمل) أضفت الوحدة النمطية FillItems ووضعت الكود المطلوب بها و الذي تتم مناداته بالحدث BeforeUpdate للنموذج ما ينقصني حالياً ... هو استخدام وسيلة ممتازة لاستخراج اسم الجدول من الكنترول دون تحميل مجهود يُذكر على المعالج ... هذا غير أن الكود لم أختبره يشكل جيد ... أرجو منك رؤيته و إبلاغي بملاحظاتك Public Sub FillItems(StrFormName As String) Dim ctrl As Control, rs As DAO.Recordset Set rs = CurrentDb.OpenRecordset("alamari") For Each ctrl In Forms(StrFormName) With ctrl Select Case .ControlType Case acTextBox, acComboBox, acCheckBox, acListBox If .ControlSource <> "" And .Value <> .OldValue Then ' Fill The Table rs.AddNew rs.Fields("اسم الحقل") = .ControlSource rs.Fields("القيمة الأصلية") = .OldValue rs.Fields("القيمة المتغيرة") = .Value rs.Fields("اسم المستخدم") = acbCurrentUser() rs.Fields("التاريخ و الوقت") = Now rs.Update End If End Select End With Next ctrl rs.Close End Sub ملاحظات : 1- تمت إضافة حقل في الجدول يحتوي على اسم الحقل المعدله بياناته 2- مازال البحث عن طريقة شاملة لتعبئة اسم الجدول سارياً حتى يتم الاعتماد على هذا الكود لكل النماذج 3- أسماء الحقول الموجودة بالكود مختلفة لذلك أرجو تعديلها حسب المطلوب 4- الكود غير مكتمل و لم يتم اختباره بشكل جيد
  15. شكراً على مجهودك أخي الكريم ...
  16. جرب تغيير خاصية Pop Up للفورم المطلوب إلى Yes و إذا لم تنفع أرجو إرفاق قاعدة بياناتك
  17. أخي العزيز أحياناً يصعب عمل برامج كاملة لأنها تتطلب وقتا و مجهوداً .... فأنا عن نفسي احتمال لن يمكنني تلبية طلبك لسببين : 1- أنني لا أجلس أمام شاشة الكمبيوتر لفترات طويله و لدي مشاغل في حياتي 2- أنه يوجد العديد من الأعضاء الذين يرغبون بالرد على استفساراتهم ... فلا أعتقد أنه من العدل تخصيص نسبة كبيرة من وقتي لك و ترك الآخرين على حسب فهمي لكلامك فأنك خريج جامعي في علوم الكمبيوتر ... ( طلباتك تستلزم معرفة قواعد البيانات بشكل عام و ليس الأكسيس على وجه الخصوص ... فكيف لم تدرس قواعد البيانات مع أنه فرع هام جداً في الكمبيوتر و لا أعتقد أنه يوجد طالب جامعي لم يدرس قواعد البيانات .... ) و مع ذلك سأحاول الرد طلبك و لن أستطيع أن أعدك بشيء ... أو احتمال غيري يرد على استفسارك . بالتوفيق إن شاء الله
  18. أخي الكريم أعتقد أن الحقول المطلوبه يجب مسحها من الجدول ... لأن قيمها تعتمد على قيم حقول أخرى (Default_Coming , Real_Coming) لذلك يمكن الاعتماد كلياً على القيم الموجودة في وقت الحضور الفعلي و المفترض دائماً لاستخراج باقي القيم المطلوبه بالاستعلام ... دون الحاجة إلى تخزينها في الجداول و تكبير حجم قاعدة بياناتك أرحو النظر في الملف المعدل المرفق باختصار تم عمل الآتي : 1- لحساب الفرق بين وقتين بالأكسيس بالشكل المطلوب يمكن الاعتماد ببساطة على المعادلة التالية : الوقت الأول - الوقت الثاني - 1 2- تم استخراج باقي القيم باستخدام الدالة Switch بالتوفيق elhodoor.zip
  19. أنا أختلف معك في الرأي 1- الله سبحانه و تعالى له 99 اسما ً ... هل تعتقد أننا لن يمكننا استخدام هذه الأوصاف كلها .... و منها ... الكبير - القوي ... و هذه صفات شائعة نستخدمها بكثره ... عندما نقول مثلا : هذا منزل كبير 2- الصفات هذه لها درجات ... يعني مثلاً .. إذا كان حاتم الطائي كريماً فالله أكرم و إذا كان المصارع قوياً فالله أقوى ... و إذا كان نبينا محمد (ص) حليماً فالله أحلم
  20. قاعدة بياناتك تحتوي على العديد من الجداول و النماذج ... أرجو الآتي : 1- تحديد النموذج أو النماذج المطلوب تسجيل بيانات تعديلاتها . 2- تصميم جدول التعديلات و إبلاغي باسمه
  21. أرجو مراجعة الروابط التالية ... احتمال تنفع ... باللغة العربية باللغة الانجليزية
  22. أختي الكريمة أعتقد إن الخلل موجود في تصميم الجداول ... إذا كان كلا الجدولين مرتبطين بحقل المفتاح الرئيسي لكلاهما فيستحسن دمجهما في جدول واحد لأن العلاقة ستكون ... (واحد - واحد ) أما في الحالة التي تريدينها فإن الموظف الواحد ممكن تكون له عدة شهادات .... فالعلاقة المطلوبة هي ( واحد - متعدد ) ملحوظه : أعتقد حسب رأيي أن الشهادة أيضاً ممكن أن يأخذها عدة موظفين ( خريجين من نفس الجامعة مثلاً )... لذلك العلاقة احتمال يجب أن تكون ( متعدد - متعدد ) ... و هذا الرأي يتوقف على حسب فهمك لمتطلبات البرنامج ندخل في المفيد ... المطلوب 1- حذف العلاقة الموجودة بين الجدولين ... 2- تسمية حقل المفتاح الرئيسي في جدول الشهادات ( الجدول الثاني ) باسم مختلف 3- وضع حقل جديد في جدول الشهادات اسمه ُُُُEmployee ID و بنفس خصائص حقل المفتاح الرئيسي في الجدول الأول ... و ذلك للربط بين الجدولين باستخدامه 4- هنا تصبح العلاقة بالشكل المطلوب ( واحد - متعدد ) 5- الآن يمكن عمل ال Form المطلوب بال Wizard بسهوله ملحوظة : تم عمل التعديلات بالأوفيس 2007 لأنه الموجود في مقر عملي _______________________2.zip
  23. أختي الكريمه أرجو أن أكون قد فهمت قصدك بالنسبه لطلبك الثاني ... الذي فهمته هو أنكِ تريدين تطابق الأرقام بين السجل الأول و الثاني ... الأرقام تتطابق من نفسها عن الاختيار من القائمة المنسدله الموجوده في الأعلى ... لذلك يمكنك حذف مربع النص الموجود بالأسفل الخاص بال EmployeeID أو إخفاؤه ... لأن نتائجه دائماً صحيحه فالأفضل ألا تعطي للمستخدم فرصه لتغييرها بالتوفيق إن شاء الله
  24. أرجو رؤية الملف على الرابط تم وضع التعديلات التالية 1- التخلص من المسج "عفواً يا شيخ " ... بوضع أمر Exit Sub وسط الكود ... يمكنك إزالته فيما بعد 2- تعديل الكود في الحدث User_AfterUpdate ووضع Me.requery 3- التأكد من اختيار اسم مستخدم صحيح من القائمة المنسدلة عن طريق 1- وضع خاصية LimitToList = True وضع كود عرض المسج في الحدث On Not in List مع هذا يوجد نقص في الكود ... حيث أن أزرار الحركة يمينا و يساراً بالسجلات لا تعمل بشكل صحيح بالتوفيق ... ______________2.zip
  25. أشكرك أخي الكريم ... برنامج جميل ...
×
×
  • اضف...

Important Information