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

Moosak

أوفيسنا
  • Posts

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

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

  • Days Won

    55

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

  1. أهلا أخي نبيل .. 🙂 طريقة الحساب معقدة جدا .. والشرح لم يوصل الفكرة .. 😅 ولكن لي محاولة 🙂 هل هذا يفي بالغرض ؟ nabilali.accdb
  2. فكرة إبداعية خارج الصندوق .. أحييك 👍😉
  3. مهندسنا الغالي @ابو جودي قام بعمل الجزء الأول من الطلب 🙂 وأنا أكملت الجزء الثاني .. وهو عرض الصور في الفورم الآخر .. 🙂 وهذه هي النتيجة : << ملاحظة >> الحد الأقصى لعدد الصور القابل عرضها هو 16 صورة .. ولعرض المزيد يجب تعديل تصميم النموذج وزيادة خانات الصور ومن ثم تعديل الكود ليقبل أكثر من ذلك. 🙂 المرفق : Req_Link_img.accdb
  4. سامي أضفت لك هذي .. If IsNull(Me.cmbSchool) Or IsNull(Me.cmbAlwilaya) Or Me.cmbSchool = "" Or Me.cmbAlwilaya = "" Then MsgBox "يرجى اختيار الولاية والمدرسة", vbCritical + vbMsgBoxRight, "تنبيه" Exit Sub End If بس هذا ما حصلته 🙂 بس ممكن تنسخ نفس الكود وتحطه على زر الحفظ لما يطلع بالسلامة 😄 تعديل نموذج الفرز مهم.accdb
  5. العفو أخي أبا عبدالرحمن 🙂
  6. حياك الأخ سامي 🙂 ضبطت لك الكود الخاص بالـ PDF : Dim reportName As String Dim fileName As String reportName = "rptsubschool" fileName = Application.CurrentProject.Path & "\" & "Schools" & "\" & frmSubSchool!ename & ".pdf" If Len(Dir(Application.CurrentProject.Path & "\" & "Schools" & "\", vbDirectory)) = 0 Then MkDir (Application.CurrentProject.Path & "\" & "Schools" & "\") DoCmd.OutputTo acOutputReport, reportName, acFormatPDF, fileName, True 'End If End Sub السطر التالي أضفته ليتأكد من أنه شي مجلد اسمه Schools بجانب قاعدة البيانات .. لأنه أعطاني خطأ لما ما لقيه .. If Len(Dir(Application.CurrentProject.Path & "\" & "Schools" & "\", vbDirectory)) = 0 Then MkDir (Application.CurrentProject.Path & "\" & "Schools" & "\") وكذلك صلحت لك مصدر بيانات التقرير ليكون مطابق للمدرسة المختارة في صفحة البحث .. باقي عليك تضبط حجم التقرير لأنه أعرض من صفحة ال A4 لذلك ينقسم التقرير لصفحتين 🙂 المرفق : تعديل نموذج الفرز مهم.accdb
  7. تم التعديل أخي أبو عبدالرحمن كما طلبت .. وأبقيت على الكود السابق لكي يعمل تلقائيا عند إضافة سجل جديد .. أولا قمت بتغيير أسماء جميع العناصر والحقول إلى اللغة الإنجليزية لكي يسهل التعامل مع الأكواد 🙂 ثم أضفت هذا الكود على زر إعادة الترقيم : Private Sub ReNumbringBtn_Click() Dim DB As dao.Database Dim RS As dao.Recordset Set DB = CurrentDb Set RS = DB.OpenRecordset("Table1") ' تصفير الأرقام للبدأ من جديد DoCmd.SetWarnings False DoCmd.RunSQL ("update table1 set t1 = 0") DoCmd.SetWarnings True ' إعادة الترقيم With RS .MoveFirst Do Until .EOF .Edit !t1 = Nz(DMax("t1", "Table1", "[SchoolName]='" & !SchoolName & "'") + 1, 1) .Update .MoveNext Loop End With Set DB = Nothing Set RS = Nothing DoCmd.OpenTable "table1" MsgBox "تم ترقيم المدارس بنجاح", vbOKOnly, "انتهى" End Sub والآن يمكنك تجربته ولا تنسى تغيير المسميات التي في الكود لتوافق المسميات الموجودة لديك 🙂 المرفق : Numbring.accdb
  8. الله يبارك فيك أخي أبو عبدالرحمن .. 🌹 هل جربت المرفق ؟ .. كود ال VBA الذي وضعته لك يقوم بما ذكرته . أم تقصد أنك تريد طريقة لإعادة ترقيم أسماء المدارس السابقة في قاعدة البيانات لديك ؟
  9. الآن بفضل الله اتضح أن المشكلة ليست في أصل البرنامج وإنما في أسماء ملفات الـ(BE) .. وبعد أن قام أستاذنا جعفر @jjafferr مشكورا بإصلاح المسميات ندعوكم أساتذتنا وأحبائنا للتجربة وإبداء رأيكم وملاحظاتكم 🙂 المرفق والشرح موجود هنا :
  10. الآن فهمت عمي جعفر لما رجعت للملفات وفحصت ومحصت وجربت أنسخ ملفات أخرى 😅🖐🏼️ لكن أليس من المفترض أنه عند نقل الملفات من جهاز إلى آخر أن ينتقل الملف بعلاته ( بالاسم المشوه 😁 ) ويتعامل معاه بنفس الطريقة ؟! إلى الآن ما جربت أنقله جهاز آخر .. لكني صلحت أسماء الملفات اللي عندي في جهازي 🙂 حاشاك عن المدوده .. الظاهر إني أنا اللي كنت متدوده 😂 الحين وضحت الصورة الحمد لله وسأراعيها مستقبلا 🙂 رحلة سعيدة موفقة باش مهندس ولا تنسانا من الهدايا 😉 معاني الكلمات : المتدوده بالعماني : هو الشخص الغائب عن وعيه وفاقد للتركيز في لحظة ما 🙂
  11. أولا : أشكر لك اللحظات التي بذلتها للتجربة والتصحيح باش مهندس @jjafferr .. 🌹🎉 مع أني لا زلت ما فاهم أين تكمن المشكلة بالضبط ولا كيف أحلها 😅 لأن الظاهر الأمور شغالة معي تمام .. ما أدري هل المشكلة تستمر حتى مع استخدام المستعرض لجلب المسار ؟ طبعا هذا ما حصل معي حتى بعد إعادة التسمية ..🤷‍♂️ حتى مع استخدام خاصية نسخ المسار على الرغم من ذلك القاعدة تظهر عندي بدون مشاكل 😅 ما أدري هل واجه أحد الأخوة نفس المشكلة في هذا الموضوع ؟ أسأل الله العظيم رب العرش العظيم أن يحفظك في حلك وترحالك .. 🙂 واضح جدا أنك مستعجل لدرجة أنك نسيت ترفق الملف 😅 يكفيني شرفا هذي الشهادة منك باش مهندس ☺️
  12. في هذه الحالة هذي تُعمل في فورم وليس في الجدول مباشرة .. تضع هذا الكود في حدث بعد التحديث لاسم المدرسة : Private Sub اسم_المدرسة_AfterUpdate() Dim N As Integer N = Nz(DMax("t1", "جدول1", "[اسم المدرسة]='" & Me.اسم_المدرسة & "'") + 1, 1) Me.t1 = N End Sub بشرط كتابة اسم المدرسة بشكل صحيح لكي يتعرف عليه الكود . وعند إضافة سجل جديد سيعطيك الرقم التالي لأكبر رقم مسجل في الجدول لنفس المدرسة 🙂 New Microsoft Access Database.accdb
  13. وعليكم السللام ورحمة الله وبركاته أخي أبو عبدالرحمن ماهو هدفك من الترقيم بهذه الطريقة ؟ لعله توجد طريقة أفضل من هذه بإنشاء جدول آخر يتم وضع فيه السجلات الخاصة بكل مدرسة .. 🙂
  14. يا ساتر 😅 .. الحين اسم البرنامج انجليزي والقاعدة انجليزي !! ما العمل ؟ أنت حليت المشكلة ولا تختبرني ؟ 😁✋🏻
  15. السلام عليكم ورحمة الله وبركاته .. رجعت لك من جديد عمي جعفر @jjafferr ( ما نسيت السالفة ) 😅 هذي المرة راجع مع إضافات مميزة 🙂 .. أخذت ملاحظاتك للأستاذ أبو خليل بعين الاعتبار 👍😉 إليك الجديد في البرنامج : أول شيء عليك أن تقوم به (كمبرمج) هو إضافة روابط قواعد البيانات الخلفية للاتصال وتخزينها في البرنامج ( لاحظ أن جدول قواعد البيانات المخزنة هو جدول محل وليس جدول مرتبط) .. وهذا الجديد : 1 - أضفت خيار الاتصال التلقائي 🙂 : البرنامج يتصل تلقائيا بأول قاعدة جداول يجدها عند توافر 3 شروط : 1- يكون خيار (اتصال تلقائي )مفعل 2- يكون خيار (عرض المسار )مفعل 3- تكون القاعدة متوفرة. 2 - أضفت خيار عرض المسار : لعرض المسار في قائمة المسارات اللي تظهر أو عدم عرضه وتخزينه فقط لاعتبارات تخدم المبرمج فقط 🙂 3 - أضفت خيار كتابة كلمة مرور قاعدة البيانات في حال كان لها باسوورد ، في حالة لا يوجد كلمة مرور يترك الحقل فاضي والبرنامج سيتعامل معها بطريقته . ---------------------------------------------------------------------------------- الآن باعتبار أن لدينا ثلاث قواعد بيانات وكلها مخزنة في الجدول .. هكذا تقوم القاعدة بالإتصال التلقائي لما نكون في جهاز المبرمج : 🙂 ولما ننتقل إلى جهاز العميل .. يقوم البرنامج بالاتصال تلقائيا بقاعدة البيانات في جهازة .. وعندما لايجد البرنامج أي قاعدة بيانات متوفرة .. يفتح لك نافذة إنشاء اتصال جديد .. أو أنك تعدل الروابط في قسم التعديل .. ====================================================== الآن لإلغاء موضوع الاتصال التلقائي يحتاج أنك تلغي الخيار (اتصال تلقائي ) بتلك القاعدة .. ويمكنك تحطه لقاعدة معينة وتلغيه من الباقيات .. بعد كذا عند الفتح ( لما تكون ألغيت الاتصال التلقائي ) ستظهر لك هذي النافذة مباشرة ( الاتصال اليدوي بقاعدة البيانات ) : لاحظ أنه يخبرك في الأسفل بآخر قاعدة كان متصل بها .. أو القاعدة اللي متصل بها الآن 🙂 بالمناسبة الآن بعد إضافة حقل لكلمة المرور الخاصة بقاعدة البيانات .. الآن البرنامج يسألك إذا كان لها باسوورد أو لا عند عمل اتصال بقاعدة جديدة 🙂 ===================================================================== وبخصوص ماكرو ال Autoexc تم تطويره أيضا 🙂 وضيفة الماكرو أنه يشغل لنا دالة اسمها Start .. ولها 4 متغيرات هذي المرة بدل 3 🙂 1 - تعطيها اسم أول نموذج أو فورم تريده يشتغل . 2- تكتب ( true / False ) وذلك لتقفيل البرنامج بشكل كامل وإخفاء النوافذ العلوية وتعطيل القوائم الخاصة ووو ... إلخ 😁 ( باختصار تجهيز البرنامج للتسليم النهائي). 3- تكتب ( true / False ) في حالة أنك تريد تفعيل خاصية الاتصال التلقائي لقاعدة الجداول أو تعطيله . 4 - نكتب فيه اسم أحد الجداول المرتبطة وذلك لفحص إذا كان البرنامج متصل بقاعدة البيانات (الجداول) أو لا .. شي أكثر من كذا دلع !! 😄 ====================================== والآن مع اللحظة الحاسمة .. ملف التحميل 😊 طبعا الغرض الأساسي من وضع العمل هنا .. لارتباطة بالموضوع الأساسي لأستاذنا @jjafferr وأيضا يهمني رأيه ورأيكم جميعا في هذا الابتكار بغرض التعديل والتطوير والتحسين 🙂 والهدف الأكبر خدمة المبرمجين وتسهيل حياتهم 😊 المرفق : Auto Reconnect FE.zip
  16. الشكر لكم جميعا .. وعقبالكم يا رب 🙂🌹
  17. وعليكم السلام ورحمة الله وبركاته .. 1- إذا كان الهدف عدم الطباعة أكثر من مرة خلال فترة فتح البرنامج .. يعني يمكن يغلق البرنامج ويفتحه من جديد ويطبع .... : >> في هذي الحالة تعمل متغير عام X في موديول يخزن عدد مرات الطباعة وتعمل شرط إذا كان X>1 لا يسمح للطباعة وإذا كان X<1 يمكن الطباعة بس عيبه أنه ال X تتصفر لما يغلق البرنامج. 2 - و إذا التقرير بس يطبع مرة وحدة في العمر 😁 فتعمل جدول لحفظ عدد مرات الحفظ وممكن تستدعيها بدالة Dloockup مثلا وبناءا على القيمة تحط الشرط 🙂 >> لكن لو صار خطأ في طباعة النسخة الأولى مثلا واحتجت تعيد الطباعة .. يحتاج تحط مخرج للإدارة للسماح بإعادة الطباعة .. 🙂
  18. تضحكلك الدنيا باش مهندس 😄 طبعا ولا خاصية تشتغل معي (لعله المكتبات الخاصة بها غير مضافة عندي ) .. وهذي واحدة من الرسائل اللي تظهر لي ( كلها تحمل رقم الخطأ 91 ) ..: وهذي قائمة المكتبات حسب ما تظهر لي :
  19. على أي نموذج تريد تشتغل أخي @awael5 ؟ وما هو المكان الذي تريد حفظ الصور فيه ؟
  20. نزلت الاثنين .. بس الثلاثاء ما يشتغل !! 😅✋🏻 أمزح .. وما اشتغلوا باثنيتهم .
×
×
  • اضف...

Important Information