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

jjafferr

أوفيسنا
  • Posts

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

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

  • Days Won

    404

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

  1. السلام عليكم ورحمة الله وبركاته 🙂 عندما يكون برنامج الاكسس يعمل ، وفجأة بدأ بإعطاء رسائل خطأ وبدون اي تعديل في البرنامج ، او عند عمل تعديل على البرنامج يُغلق الاكسس: . طريقة العمل: سيفتح البرنامج ، ويجب عليك غلقه ، الى ان لا يفتح تلقائيا مرة اخرى. ولكن ، يجب دائما اخذ الاحتياط وعمل نسخة من البرنامج قبل عمل هذه الخطوات. اقدم لكم شرح بسيط عن الموضوع: في الكثير من الاوقات ، لما نعمل الكود ، نقوم بتعديل وتغيير وتضبيط الكود عدة مرات ، ولكن الاكسس في بعض الاحيان يبقى محتفظ بالكود القديم في ذاكرته !! لذلك : 1. اثناء البرمجة ، وبشكل يومي اقوم بتشغيل هذا الملف المرفق ، 2. وقبل تسليم البرنامج الى الزبون ، اقوم بتشغيل الملف للمرة الاخيرة ، واجهز البرنامج لتسليمه الى الزبون وهذا هو الكود المعدل عن النسخة السابقة: Private Sub cmd_Decompile_Click() Dim MSAccPath As String Dim RegKey As String Dim WSHShell 'As Object Dim waitOnReturn As Boolean: waitOnReturn = True ' Get MSACCESS.exe directory from the Registry RegKey = "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\" & _ "CurrentVersion\App Paths\MSACCESS.EXE\Path" Set WSHShell = CreateObject("WScript.Shell") ' Get parent directory MSAccPath = WSHShell.RegRead(RegKey) ' Decompile WSHShell.Run Chr(34) & MSAccPath & "MSACCESS.EXE" & Chr(34) & " " & Chr(34) & Me.str_File_Single & Chr(34) & " /decompile", , waitOnReturn ' compact WSHShell.Run Chr(34) & MSAccPath & "MSACCESS.EXE" & Chr(34) & " " & Chr(34) & Me.str_File_Single & Chr(34) & " /compact", , waitOnReturn ' cmd compile WSHShell.Run Chr(34) & MSAccPath & "MSACCESS.EXE" & Chr(34) & " " & Chr(34) & Me.str_File_Single & Chr(34) & " /cmd compile", , waitOnReturn ' compact WSHShell.Run Chr(34) & MSAccPath & "MSACCESS.EXE" & Chr(34) & " " & Chr(34) & Me.str_File_Single & Chr(34) & " /compact", , waitOnReturn ' Clear shell var Set WSHShell = Nothing End Sub جعفر Decompile_2.zip
  2. المزه بعد ما اشوف التعب عليك 🙂 جعفر
  3. وعليكم السلام 🙂 لو تفتح صفحة الاكواد VBA في برنامجك عن طريق ctrl+G ثم تضغط على الزر F1 على لوحة المفاتيح ، علشان يظهر لك مساعد الاكسس ، ثم تكتب فيه inputbox ، وبيعطيك التفاصيل كاملة 🙂 وكتبت لك المسميات بالانجليزي ، علشان ما ينقلب السطر ويلخبط الامر ، ولا تعرف اوله من آخره !! If InputBox("اتصل بمدير النظام لطلب التعديل على الملف","This is the message Title") = "abc" Then Me.AllowEdits = True End If جعفر
  4. السلام عليكم 🙂 ايش رايك باستعمال الكود التالي ، وحذف احداث النقر الـ 56 الموجودة بالكود 🙂 ' date picker buttons Public Function dxx() DateClick (Right(Screen.ActiveControl.Name, 2)) End Function . . جعفر 1048.Officena DatePicker.mdb.zip
  5. وعليكم السلام 🙂 جرب العمل بطريقة هذا الرابط : جعفر
  6. اخي الفاضل ، هذا الموضوع من سنة 2007 !! رجاء فتح موضوع جديد خاص بك ، وضع فيه جميع التفاصيل ، وعينه من قاعدة بياناتك ، وان شاء الله تحصل على رد من الاعضاء 🙂 جعفر
  7. وعليكم السلام 🙂 السؤال الاول هو: هل قسمت قاعدة بياناتك الى قسمين/ملفين : 1. ملف الجداول ، وجعلته على مجلد مشاركة ، 2. مجلد المشاركة ، هل اعطيت جميع المستخدمين صلاحية القراءة والكتابة فيه ، 3. ملف الواجهة ، والذي يحتوي على بقية كائنات البرنامج ، هل جعلت نسخة منه على كمبيوترات المستخدمين ، 4. ملف الواجهة ، هل ربطته بملف الجداول الموجود في مجلد المشاركة؟ جعفر
  8. بالعكس ، انا في الخدمة 🙂 جعفر
  9. اخي الفاضل انا ما قلت ممنوع تسأل ، وانما طلبت منك: صاحب الموضوع صار له فترة ما داخل المنتدى ، فهذا معناه انك قد تضطر ان تنتظر طويلا الى ان تحصل على رده ، بينما اذا عملت موضوع جديد ، فهناك الكثير من الاعضاء والخبراء المتواجدين ، واحدهم حتما سيرد على في فترة اقصر بكثير من رد صاحب الموضوع 🙂 لهذا السبب: رجاء عمل موضوع جديد لسؤالك ، واشر الى هذا الرابط ، حتى يساعدك الاعضاء 🙂 جعفر
  10. معلش يا استاذ محمد ، اخذني على قدر عقلي ، طلبت منك عدم ادخال عدة اسئلة في الموضوع ، واذا بك واصلت في السؤال الآخر "على سبيل الدعابة ليس أكثر" ، وفي الموضوع الآخر كذلك عملت نفس المخالفة وسألت سؤال خارج عن الموضوع!! شو اللي تريد ان نعمله نحن المشرفين !! فنحن لسنا شرطة كما قال عنا البعض ، وانما نعطي من وقتنا الخاص لجعل المنتدى يعمل بسلاسة ، واذا تركنا المواضيع بدون رقابه والاعضاء يكتبون ما يشائون ، فذلك المنتدى سيتغير اسمه الى منتدى سوق السمك لقواعد البيانات 🙂 جعفر
  11. وهذا انذار شفوي لك ، لوسمحت احترم قوانين المنتدى !! شو يضرك اذا فتحت موضوع خاص لكل سؤال؟؟؟؟؟؟ واذا ما كنت تدري ، فهذه قوانين المنتدى جعفر
  12. هممم ورابطك يشير الى هذا الموضوع . والذي لا علاقة له بالبحث والفرز !! يعني انت محتاج تعمل موضوع جديد آخر ، لسؤالك هذا 🙂 سوف اسمح لك بتعليق اخير هنا في هذا الموضوع ، حتى تكتب موضوع جديد ، وترفق رابط الموضوع هنا ، وسوف اغلق هذا الموضوع ، تماشيا مع قوانين المنتدى. مرة اخرى ، شكرا لإحترامك لقوانين المنتدى 🙂 جعفر
  13. السلام عليكم 🙂 اخي احمد ، الموضوع هذا من تاريخ 11/2015 ، فرجاء عمل موضوع جديد لسؤالك ، واشر الى هذا الرابط ، حتى يساعدك الاعضاء 🙂 شكرا جعفر
  14. السلام عليكم 🙂 اختي الفاضلة ، هذا الموضوع اصبح برنامجا !! رجاء الالتزام بقوانين المنتدى ، سؤال واحد لكل موضوع 🙂 رجاء فتح موضوع مستقل لكل سؤال ، وارفقي الرابط هنا ، حتى يستطيع الاعضاء متابعة السؤال في الرابط. شكرا جعفر
  15. السلام عليكم 🙂 اخي محمد ، ارى ان سؤال الموضوع قد قم الاجابه عليه ، ودخلت في اسئلة اخرى ، وهذا مخالف لشروط المنتدى ، بوضع سؤال واحد لكل موضوع 🙂 رجاء فتح موضوع جديد لكل سؤال 🙂 شكرا جعفر
  16. وعليكم السلام ورحمة الله وبركاته 🙂 ويصدق عليه الحديث الشريف : من عمل بما يعلم أورثه الله علم ما لم يعلم 🙂 في الواقع احنا كمنتدى نهنئ انفسنا ، قبل ان نهنئ @ابا جودى 🙂 جعفر
  17. وعليكم السلام 🙂 بما ان الاخ حسنين @SEMO.Pa3x هو صاحب الرابط ، فهو الاكثر تأهيلا لمعرفة الجواب 🙂 جعفر
  18. السلام عليكم 🙂 اخي @essam rabea كنت خبير ، والآن اهلا وسهلا بك خبيرا معتمدا بيننا 🙂 جعفر
  19. اهلا وسهلا ابو محمد 🙂 من زمان ما لك شوفه 🙂 جعفر
  20. هذا السطر معناه اكتب لي قيمة متغير mySQL في النافذة تحت الكود ، وجميل لما نمشي مع الكود سطر بسطر ، بحيث الكود يخبرنا بقيم المتغيرات ، اثناؤ عمل الكود : جعفر
  21. قصدك بطريقتي في تفكيك اسطر الكود وتبسيطها الى اسطر ، لأن الكود هذا مو خط يدي 🙂 الجزء الاول من كودك ناقص ، وبعد التعديل ، ويجب ان يكون هكذا: Private Sub CreatAdmin() mySQL = "INSERT INTO tbllvlUsers" mySQL = mySQL & "( UserID," '1 UserID mySQL = mySQL & "lvlGroupID," '2 GroupID mySQL = mySQL & "UName," '3 UserName mySQL = mySQL & "Password," '4 Password mySQL = mySQL & "Fname," '5 FullName mySQL = mySQL & "lvlQ ," '6 Questions mySQL = mySQL & "lvlAnsr," '7 Answers mySQL = mySQL & "Umail )" '8 EmailUsers 'Debug.Print mySQL mySQL = mySQL & " SELECT " mySQL = mySQL & " '1' AS UserID," '1 UserID mySQL = mySQL & " '2' AS lvlGroupID," '2 GroupID mySQL = mySQL & " Encrypt(KeyEnde(),'admin') AS UName," '3 UserName mySQL = mySQL & " Encrypt(KeyEnde(),'admin') AS Password," '4 Password mySQL = mySQL & " Encrypt(KeyEnde(),'admin') AS Fname," '5 FullName mySQL = mySQL & " Encrypt(KeyEnde(),'admin') AS lvlQ," '6 Questions mySQL = mySQL & " Encrypt(KeyEnde(),'admin') AS lvlAnsr," '7 Answers mySQL = mySQL & " Encrypt(KeyEnde(),'admin@admin.com') AS Umail;" '8 EmailUsers 'Debug.Print mySQL DoCmd.SetWarnings False DoCmd.RunSQL mySQL DoCmd.SetWarnings True MsgBox "تم إنشاء المستخدم المسئول عن قاعدة البيانات" & vbCrLf & _ "اسم المستخدم هو : (admin)" & vbCrLf & _ "كلمة المرور هى : (admin)", _ vbOKOnly, _ "تبيـــه هــــام" End Sub جعفر
  22. وعليكم السلام 🙂 اذا اردنا ان نعرف الطلبة اللي مأخذين مادة معينة (رقم المادة) ، فنقدر نعمل استعلامين (او استعلام وجدول) ، ونربطهم بحقل المادة ، فيظهر جميع اسماء الطلبة المأخذين هذه المادة ، ووحتى اذا اردنا ان نعرف الطلبة اللي لديهم نفس المادة (رقم المادة) ، والحاصلين على نفس [النتيجة] ، وعندهم نفس [الصفة] ، فكذلك نربط الاستعلامين (او استعلام وجدول) ، بهذه الحقول ، ويظهر لنا اسماء الطلبة ، ولكن ، كل طالب في سجل مختلف ، وقد يكون الطالب اخذ مادة فقط ، وآخر اخذ جميع المواد ، ولكنك لا تريد هذا كله ، فانت واقعا تريد حقل واحد فيه معلومة الطالب هكذا : [رقم المادة] و [النتيجة] و [الصفة] ، ومن ثم تريد ان تعرف جميع الطلبة الذين يحملون نفس هذه المعلومة ، بالإضافة الى هذا ، فانت لا تريد هذا الحقل لكل [رقم المادة] ، وانما تريد ان تجمع جميع [رقم المادة] و [النتيجة] و [الصفة] لكل المواد اللي اخذها ، يعني تحول السجلات الى سجل واحد ، وتجمع بيانات هذه الحقول مع بعض ، ومن ثم تريد تعمل مقارنة بين نتائج الطلبة ، وتعرف هؤلاء الطلبة المتحدين في هذه البيانات كامله والطريقة اللي عملتها ، هي عمل كود في وحدة نمطية ، نرسل لها بيانات الطالب من الاستعلام qry_ALL_Student والذي مصدر بياناته الاستعلام qry_ALL ، مسلسلة ومفروزة حسب [رقم المادة] و [النتيجة] و [الصفة] ، وتقوم الوحدة النمطية بجمعها ، ثم ارسالها مرة اخرى الى حقل في الاستعلام: السجل السابق = السجل الحالي & "_" & rst![رقم المادة] & "-" & rst![النتيجة] & "-" & rst![الصفة] . وعلى هذا الاساس ، يكون هذا الاستعلام فيه اسم الطالب ، وهذا الحقل ، وهنا نربط هذا الاستعلام ببقية الجداول للحصول على اسم الطالب وووو في استعلام اخير qry_Results ، ونطلب منه عدم تكرار الاسم وعدم إظهار الاسم الذي نبحث عنه ، وهو مصدر بيانات النموذج الفرعي 🙂 جعفر
×
×
  • اضف...

Important Information