-
Posts
9998 -
تاريخ الانضمام
-
تاريخ اخر زياره
-
Days Won
406
نوع المحتوي
المنتدى
مكتبة الموقع
معرض الصور
المدونات
الوسائط المتعددة
كل منشورات العضو jjafferr
-
اخي الفاضل بمجرد ان تفتح الالة الحاسبة وتستعمل الكود ، صحيح ما يشتغل ، ولكنك لو تتبعت الخطوات اللي اعطيتك ونظرت في قائمة مدير المهام ، لرأيت بأن مايكروسوفت غيروا اسم الالة الحاسبة في الوندوز الجديد ، والملف الجديد مو تنفيذي (يعني ماهو بصيغة exe) لذلك فلا يمكن اغلاقه بهذه الطريقة !! جرب الكود على اي من البرامج الاخرى ، فهو شغال ، وجربته قبل شوي مع برنامجين مختلفين !! هل تقصد ان النيترو يشتغل داخل نموذج في برنامج الاكسس ؟ اذا كان كذلك ، فيجب اغلاق النموذج او تغيير ملف الملف المفتوح وفتح ملف آخر ، ثم حذف الملف المطلوب. اخي الفاضل ، ياريت يكون عندك توضيح وبالتفصيل ، لأنه بعد حوالي شهر من وضعك للسؤال فهمت الآن (وان شاء الله فهمي صحيح!!) ان النيترو تفتحه في نموذج في برنامج الاكسس !! جعفر
-
في الواقع ما كنت مرتاح من المسافات بين السنوات ، وخصوصا المسافات بين الدرجات ، فتوصلت الى التالي : التقرير rpt_4 مصدر بياناته هو الاستعلام qry_4 والذي هو نسخة من qry_3 ، ولكننا ننادي وحدة نمطية تختلف قليلا عن سابقتها ، فهنا نستعمل لغة HTML : 1. الاستعلام qry_4 ، ونرسل البيانات المطلوبة الى الوحدة النمطية Year_Report_HTML . 2. وهذه هي الوحدة النمطية : Public Function Year_Report_HTML(lbl_str As String, id As Long) As String On Error GoTo err_Year_Report_HTML 'On Error Resume Next DoCmd.DeleteObject acQuery, "NewQueryDef" On Error GoTo err_Year_Report_HTML Dim rst As DAO.Recordset Dim lbl, str, mySQL As String mySQL = "Select * From qry_1 Where [Table2_id]=" & id & " Order By Table2_id desc" Set rst = CurrentDb.OpenRecordset(mySQL) Do While Not rst.EOF 'lbl = lbl & rst!Yearr & " " '2 spaces 'str = str & " " & rst!Report & " " '1 space and 8 spaces lbl = lbl & "<font color=black>" & rst!Yearr & "</font><font color=white>" & ChrW(&H2588) & ChrW(&H2588) & "</font>" str = str & "<font color=white>" & ChrW(&H2588) & "</font><font color=black>" & rst!Report & "</font><font color=white>" & ChrW(&H2588) & ChrW(&H2588) & ChrW(&H2588) & "</font>" rst.MoveNext Loop If lbl_str = "lbl" Then Year_Report_HTML = lbl Else Year_Report_HTML = str End If Exit_Year_Report_HTML: rst.Close: Set rst = Nothing Exit Function err_Year_Report_HTML: If Err.Number = 3061 Then 'too few parameters, expected 1 or more 'this error occurs when trying to run a query which needs its parameters from a Form, 'the Form should be open with the parameter, then this code take the values properly Dim qdf As QueryDef Dim prm As Parameter Set qdf = CurrentDb.CreateQueryDef("NewQueryDef", mySQL) For Each prm In qdf.Parameters prm.Value = Eval(prm.Name) Next prm Set rst = qdf.OpenRecordset(dbOpenDynaset) DoCmd.DeleteObject acQuery, "NewQueryDef" Resume Next ElseIf Err.Number = 7874 Then 'could not find QueryDef Resume Next ElseIf Err.Number = 2486 Then 'could not delete QueryDef Resume Next Else MsgBox Err.Number & vbCrLf & Err.Description End If End Function . ونلاحظ اننا نعطلي لون اسود للسنوات والدرجات ، ولكننا نعطي اللون الابيض "للمسافة" ، يعني فقط اطبع هذا التقرير على ورق ابيض ، حتى لا ترى "المسافات" : . 3. الحقلين الذين في الاستعلام ، نراهم هنا . وهذه اعدادات الحقلين حتى يأخذوا لغة HTML . والنتيجة : . جعفر 1161.tt.accdb.zip
-
الله يطول في عمرك اخوي ، هذا كان مثال ، والمثال يُغلق البرنامج calc.exe وهو الآله الحاسبه !! لذلك ، بدل هذا الاسم ، يجب ان تعرف اسم برنامجك ، ثم تستعمل اسم برنامجم بدل الاسم الموجود بالخط الاحمر ، ولمعرفة ايش اسم برنامج النيترو ، انظر الى هذا المثال (انا ما عندي نيترو علشان اعرف الاسم) : من شريط المهام اسفل الشاشة ، انقر بالفأرة اليمين ، فترى النافذة التالية : . فاذا اردنا معرفة اسم برنامج irfanView (المؤشر عليه بالسهم) (انت لازم تؤشر على اسم برنامج النيترو) ، وتنقر عيه بالفأرة اليمين ، ثم الاعدادات : . فنرى اسم البرنامج . استخدم اسم النيترو بدل الاسم باللون الاحمر في الكود ، ثم جرب برنامجك 🙂 جعفر
-
وعليكم السلام 🙂 الاستعلام الضمني الذي عملته انت كمصدر بيانات للتقرير Table1 هو اساس العمل ، فأخذت نسخه منه وعملته كاستعلام مستقل اسمه qry_1 ، والذي به معايير السنوات 🙂 اصبح لدينا : 1. مصدر بيانات تقريرك Table1 هو الاستعلام qry_1 ، 2. جعلت الاستعلام qry_1 مصدر بيانات للاستعلام الجدولي qry_2 ، والاستعلام qry_2 مصدر بيانات التقرير rpt_2 ، 3. صحيح ان التقرير rpt_2 شغال تمام ، ولكنه يحتوي على السنوات (2017 و 2018 و 2019) التي تم استعمالها كمعيار للاستعلام qry_1 ، مما يعني ان التقرير يجب تعديله يدويا كلما تغيرت السنوات !! على هذا الاساس ، اشتغلت على الاستعلام qry_3 واللي مصدر بياناته qry_1 ، ولكني استعملت وحدة نمطية لتعطيني السنوات ، حقل للسنوات lbl (وندمج فيه جميع السنوات) وحقل للدرجة str (وندمج فيه جميع الدرجات) ، ونستعمل "المسافات" لنفرز المسافات بينها ، التقرير rpt_3 مصدر بياناته هو الاستعلام qry_3 . جعفر 1161.tt.accdb.zip
-
اعرف ان السؤال التالي سيكون ، وهل هناك طريقة علشان ما يكون هناك مسافات فارغة مكان الحقول المخفاة !! والجواب بعمل تقرير فرعي ، هكذا : . . جعفر 1159.1.Certificates.accdb.zip
-
السلام عليكم 🙂 استعمل هذا الكود في التقرير Documents1 : Private Sub Detail_Format(Cancel As Integer, FormatCount As Integer) '1 If Me.annaul_1 = -1 Then Me.annaul_1.Visible = False: Me.based1.Visible = False: Me.rang1.Visible = False: Me.rang2.Visible = False Else Me.annaul_1.Visible = True: Me.based1.Visible = True: Me.rang1.Visible = True: Me.rang2.Visible = True End If '2 If Me.annaul_2 = -1 Then Me.annaul_2.Visible = False: Me.based2.Visible = False: Me.rang3.Visible = False: Me.rang4.Visible = False Else Me.annaul_2.Visible = True: Me.based2.Visible = True: Me.rang3.Visible = True: Me.rang4.Visible = True End If '3 If Me.annual_3 = -1 Then Me.annual_3.Visible = False: Me.based3.Visible = False: Me.rang5.Visible = False: Me.rang6.Visible = False Else Me.annual_3.Visible = True: Me.based3.Visible = True: Me.rang5.Visible = True: Me.rang6.Visible = True End If '4 If Me.annual_4 = -1 Then Me.annual_4.Visible = False: Me.based4.Visible = False: Me.rang7.Visible = False: Me.rang8.Visible = False Else Me.annual_4.Visible = True: Me.based4.Visible = True: Me.rang7.Visible = True: Me.rang8.Visible = True End If '5 If Me.annual_5 = -1 Then Me.annual_5.Visible = False: Me.based5.Visible = False: Me.rang9.Visible = False: Me.rang10.Visible = False Else Me.annual_5.Visible = True: Me.based5.Visible = True: Me.rang9.Visible = True: Me.rang10.Visible = True End If '6 If Me.annual_6 = -1 Then Me.annual_6.Visible = False: Me.till.Visible = False: Me.rang11.Visible = False: Me.rang12.Visible = False Else Me.annual_6.Visible = True: Me.till.Visible = True: Me.rang11.Visible = True: Me.rang12.Visible = True End If End Sub . كما ان الاستعلام مصدر بيانات التقرير يجب ان يُصبح: . فيصبح التقرير: . جعفر 1159.Certificates.accdb.zip
-
السلام عليكم 🙂 لو وضعت مثال من اول مشاركة ، ولوضح الامر 🙂 كذلك ، اذا فهمتك صح : اعمل هذا التغيير في الاستعلام هكذا: فستكون النتيجة: . جعفر
-
هي موجودة في قاعدة البيانات ، ولكن مخفية 🙂 جعفر
-
استعادة قاعدة الجداول محمية بباسورد أو إلحاق للقاعدة
jjafferr replied to qathi's topic in قسم الأكسيس Access
السلام عليكم 🙂 مع ان هذا الخيار ممكن استعماله ، ولكن ، للأسف الشديد ، هناك الكثير من المبرمجين يستعملون حقل الترقيم التلقائي كأحد الحقول التي يعتمد عليها البرنامج في التسلسل/الترقيم ، ومرتبط بجداول اخرى ، بينما يجب ان يكون حقل الترقيم التلقائي لإستخدام البرنامج (للفهرسة والوصول للسجلات) وليس لاستخدام المبرمج (لإستعماله في تسلسل/ترقيم الارقام او العملاء) . وعليه ، فإذا كان البرنامج يستعمل هذا النوع ، فإن حقل الترقيم التلقائي لن يحتفظ بالارقام الاصلية في البرنامج ، واستعلام الالحاق سيخلق ترقيم جديد ، مما سيجعل البرنامج لا يقوم بعمله بصورة صحيحة !! جعفر -
حياك الله اخوي ابوخليل 🙂 بسبب انك عامل مجموعات في البرنامج ، والبرنامج يشتغل عليه ، والمسميات اللي تشوفها هي عبارة عن مسميات المجموعات ، وعليه ، المجموعات 1 و 2 و 3 ، وزعهم يدويا على الباصات (عن طريق البرنامج طبعا) ، ومو لازم يملؤا الباصات ، وبعديت اعمل توزيع تلقائي ، فيضيف لك بقية العدد للباص ، ويكمل باقي الباصات 🙂 اما رقم 4 ، فما شاء الله تخصصك 🙂 جعفر
-
شكرا جزيلا اخوي كاسر 🙂 الظاهر بالغلط لعبت في اعدادات الاكسس ، وما كانت تطلع لي رسائل التحذير !! بالاضافة الى حلك ، ولكني افضل إخفاء هذه الرسائل بإستعمال : DoCmd.SetWarnings False DoCmd.RunSQL mySQL DoCmd.SetWarnings True و DoCmd.SetWarnings False DoCmd.RunSQL ("Delete * From tbl_Groups") DoCmd.OpenQuery "qry_Append_Tsjeel" DoCmd.OpenQuery "qry_Append_sub_Tsjeel" DoCmd.SetWarnings True وقد تم تحديث الملف المرفق في مشاركتي السابقة ، شكرا لك 🙂 جعفر
-
-
السلام عليكم 🙂 اذا تسمحي اخوي ابو خليل ، واخوي محمد ابوعبدالله 🙂 مشاركتي لا تؤدي العمل بضغطة زر ، وانما تقدر تستفيد منها لتوزيع الغرف لاحقا ايضا 🙂 الاختيار ليس تلقائي ، ولكنه يسهل العمل كثيرا 🙂 ومن تجربتي مع الحجاج ، بعض الاوقات في مجموعة تحب ان تكون مع مجموعة اخرى في الباص ، فطريقتي سوف تسهل عليك 🙂 العمل كله بيكون في الجدول tbl_Groups ، والعمل بالمجموعات ، لذا : 1 و 2. استعلامات الحاقية ، فقط لاخذ بيانات الجدولين tbl_Tsjeel والجدول tblSub_Tsjeel الى الجدول tbl_Groups . 4. نموذج العمل هو frm_Main تختار من قائمة "في انتظار التوزيع" (وفي الواقع الاختيار عن طريق userid) ، العدد الذي تريده ، وفي الاسفل بتشوف عدد اختياراتك ، ومجموع الاشخاص اللذين اخترتهم ، تختار الى اي باص تريد ان تلحقهم ، باختيار رقم الباص ، ثم النقر على الزر الاول (السهم من القائمة الى الباصات) ، وتلقائيا تشوف النتائج ، واذا اردت ارجاع اي مجموعة ، فالاختيار يكون من قائمة الباص ، وتنقر على الزر بالاسفل (السهم من الباصات الى القائمة) ، وتلقائيا تشوف النتيجة 🙂 . هي لعبة اكثر منها عمل 🙂 جعفر 1158.haj.mdb.zip
-
طريقة استدعاء خانة من الاستعلام الي النموذج
jjafferr replied to husseinamer's topic in قسم الأكسيس Access
حياك الله 🙂 وشكرا على الهدية الجميلة 🙂 جعفر -
المختصر المفيد : 1. اذا كان عندك على الاقل استعلامين/جدولين ، كل واحد يعمل بطريقته وبسجلاته ، يعني قد يكون عندك استعلام عادي به معايير ، واستعلام آخر به مجاميع ، واستعلام جدولي ثالث .... ، او بدل ما يكون الاستعلام جاهز ، ممكن مباشرة نكتب SQL الاستعلام في استعلام التوحيد ، مثل: 2. الشرط الوحيد هو ان يكون عدد الحقول نفسه لجميع الاستعلامات اللي تريد توحدها 🙂 3. ودمج الاستعلامات يكون عن طريق الامر Union ، والذي به لا تحصل على سجلات متكررة ، بينما الامر Union All ، يعطيك كل السجلات. 4. استعلام التوحيد الذي عملناه من الخطوة 3 ، يُعتبر استعلام عادي ، والذي يمكن ان تعمل استعلام جديد وتستعمل استعلام التوحيد كمصدر لبيانات الاستعلام الجديد ، للعلم ، استعلام التوحيد بطيء بالمقارنه مع بقية انواع الاستعلامات 🙂 جعفر
-
نعم انا متابع مجهود احوي محمد ابوعبدالله ، ولكني اردت المشاركة بطريقة اخرى للحل 🙂 جعفر
-
اخي عبد اللطيف 🙂 اعطنا ما عندك ، وخلينا نمشي معاك خطوة بخطوة 🙂 جعفر
-
السلام عليكم 🙂 هنا كانت نفس المشكلة جعفر
-
قاعدة بيانات لا تعمل على access 2007
jjafferr replied to 2003salah_salah's topic in قسم الأكسيس Access
شكرا اخي احمد على المساعدة 🙂 اخي صلاح : عندي هذه المكتبة . لما يشتغل البرنامج على الاوفيس 2003 اولا ، تلقى ان الرقم الموجود عندك هو 12 وهو للاوفيس 2003 (وياريت تعمل صورة منه لنا) ، ولكن لما تشغله على الاكسس 2007 ، فيصير رقمه 13 (وياريت تعمل صورة منه لنا) ، ولما تشغله على الاوفيس 2003 مرة اخرى ، سترى ان هناك كلمة MISSING (وياريت تعمل صورة منه لنا) ، فقم بإلغاء الاختيار ، واختار الرقم 12 : Microsoft Access 12.0 Object Library ، احفظ البرنامج ن اخرج منه ، ثم شغله مرة ثانية ، وشوف اذا اشتغل. جعفر -
قاعدة بيانات لا تعمل على access 2007
jjafferr replied to 2003salah_salah's topic in قسم الأكسيس Access
انا لا اعرف الفرنسية !! ولكن السؤال ، 1. لماذا تفتح البرنامج على اكسس 2007 ، ثم تفتح نفس البرنامج على اكسس 2003 ؟ 2. هل تحصل على هذه الرسالة لما تفتح البرنامج على اكسس 2007 او 2003 ؟ -
قاعدة بيانات لا تعمل على access 2007
jjafferr replied to 2003salah_salah's topic in قسم الأكسيس Access
انا ما اجتني اي رسالة ، والنموذج menu فتح بدون اي اخطاء . رجاء تعمل صورة من رسائل الخطأ -
قاعدة بيانات لا تعمل على access 2007
jjafferr replied to 2003salah_salah's topic in قسم الأكسيس Access
رجاء تعطي توضيح اكثر ، فانا لا املك اكسس 2003 -
قاعدة بيانات لا تعمل على access 2007
jjafferr replied to 2003salah_salah's topic in قسم الأكسيس Access
وعليكم السلام 🙂 اين المشكلة؟ جعفر -
وعليكم السلام 🙂 من هنا : https://www.tek-tips.com/viewthread.cfm?qid=900952 يكون الكود: Public Function getMyIP() Dim myWMI As Object, myobj As Object, itm Set myWMI = GetObject("winmgmts:\\.\root\cimv2") Set myobj = myWMI.ExecQuery("Select * from Win32_NetworkAdapterConfiguration Where IPEnabled = True") For Each itm In myobj getMyIP = itm.IPAddress(0) Exit Function Next End Function ونناديه من النموذج او اي مكان في البرنامج هكذا : A = getMyIP جعفر