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

jjafferr

أوفيسنا
  • Posts

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

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

  • Days Won

    404

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

  1. وعليكم السلام اختي في قواعد البيانات ، لا نحفظ حقل محسوب في جدول ، إلا اذا كان كُلاً ولا بُد اعملي استعلام ليعطيك هذه القيمة ، وكلما احتجتي لهذه القيمة لنموذج او تقرير ، فاستعملي الاستعلام جعفر
  2. تفضل بدون سجلات التاريخ الفارغة Between (IIf(Len([Forms]![main]![Datamasterform]![DateX] & "")=0,#01-Jan-1900#,[Forms]![main]![Datamasterform]![DateX])) And (IIf(Len([Forms]![main]![Datamasterform]![DateX] & "")=0,#01-Jan-2900#,[Forms]![main]![Datamasterform]![DateX]+65)) والشرح Between (IIf(Len([Forms]![main]![Datamasterform]![DateX] & "")=0,#01-Jan-1900#,[Forms]![main]![Datamasterform]![DateX])) And (IIf(Len([Forms]![main]![Datamasterform]![DateX] & "")=0,#01-Jan-2900#,[Forms]![main]![Datamasterform]![DateX]+65)) مع سجلات التاريخ الفارغة Between (IIf(Len([Forms]![main]![Datamasterform]![DateX] & "")=0,#01-Jan-1900#,[Forms]![main]![Datamasterform]![DateX])) And (IIf(Len([Forms]![main]![Datamasterform]![DateX] & "")=0,#01-Jan-2900#,[Forms]![main]![Datamasterform]![DateX]+65)) Or [DateX] Is Null والشرح Between (IIf(Len([Forms]![main]![Datamasterform]![DateX] & "")=0,#01-Jan-1900#,[Forms]![main]![Datamasterform]![DateX])) And (IIf(Len([Forms]![main]![Datamasterform]![DateX] & "")=0,#01-Jan-2900#,[Forms]![main]![Datamasterform]![DateX]+65)) Or [DateX] Is Null جعفر
  3. أخي محمد الربكة عندك في And و Or ، فرجاء مراجعة عملهم بالضبط. رجاء عمل التالي: 1. وانت في النموذج ، اضغط على زرّي لوحة المفاتيح: Ctrl + G 2. وسيأخذك الى صفحة الكود ، وستلاحظ نافذة صغيرة في اسفل صفحة الكود ، 3. السطر التالي ، احذف اول اشارة من سطره ، الاشارة: ' 'Debug.Print myCriteria' 4. اذهب للنموذج واعمل التصفية التي تريدها 5. ارجع لصفحة الكود ، وستلاحظ في النافذة الصغيرة وجود كود التصفية 6. انسخ هذا الكود 7. اعمل استعلام فارغ 8. بالزر اليمين في الاستعلام ، غيّر الاستعلام من تصميم الى SQL 9. احذف الكلمات الموجودة في الاستعلام ، والصق كود النموذج 10. شغّل الاستعلام ، وشوف نتائجه 11. ضع الاستعلام في وضع تصميم ، وشوف تفاصيله ، وهي التفاصيل التي قمت بها انت لتصفية النموذج. 12. العب في And و Or للحقول التي تريدها ، وسوف تعرف ايهم تستعمل والانسب لعملك ، وعليه ترجع لكود تصفية النموذج وتغيّر فيه حسب طلبك ************************* هذا الموضوع هو انشاء تصفية ولعدة حقول ، والحمدلله استطعت انت ان تجرب النتائج جعفر
  4. وعليكم السلام انت طلبت معرفة الفرق ، ولكنك انت الذي تحدد اهمية الكود من عدمه هذا الكود: لإنشاء فاتورة جديدة ، وهي الجزئية التي لا تزال موجودة ولم تحذفها انت ، اما الجزء الذي حذفته فهو لعمل سجل في النموذج الفرعي اذا بعد الحذف كل شيء كان تمام ، فتوكل على الله واستمر ******************* اعمل ضغط واصلاح لبرنامجك حتى تصغر حجمه جعفر
  5. وعليكم السلام اجلب بيانات النموذج من جديد، بالتحديثات DoCmd.Requery اذهب الى السجل الاخير DoCmd.GoToRecord , , acLast اضف سجل فارغ في الجدول Sales_Invoice_sub Set Rs = CurrentDb.OpenRecordset("Sales_Invoice_sub") Rs.AddNew Rs.Update Rs.Close Set Rs = Nothing اجلب بيانات النموذج الفرعي من جديد، بالتحديثات Me.[Sales_Invoice_sub_Subform].Requery جعفر
  6. وعليكم السلام المفروض ان الاكسس يعطيك كود مثل هذا: ([testQ].[datex] between #01-Jul-17# and #27-Apr-17#) AND ([testQ].[country1]= 'اسكندرية' or [testQ].[country1]= 'الدقهلية' or [testQ].[country1] is null) اليك الكود ، وقد فككته الى اصغر مكوناته وانت اعمل المدرسة Dim City As String City = "اسكندرية" City2 = "الدقهلية" 'مجموعة اوامر الحقل الاول 'للتاريخ myCriteria = "(" myCriteria = myCriteria & "[testQ].[datex] between #" & Me.DateX & "# and #" & Me.DateX - 65 & "#" myCriteria = myCriteria & ")" 'مجموعة اوامر الحقل الثاني myCriteria = myCriteria & " AND " myCriteria = myCriteria & "(" 'للنص myCriteria = myCriteria & "[testQ].[country1]= '" & City & "'" myCriteria = myCriteria & " or " myCriteria = myCriteria & "[testQ].[country1]= '" & City2 & "'" myCriteria = myCriteria & " or " myCriteria = myCriteria & "[testQ].[country1] is null" myCriteria = myCriteria & ")" 'للرقم 'myCriteria = myCriteria & " AND " 'myCriteria = myCriteria & "[testQ].[ID]<> " & Me.ID 'Debug.Print myCriteria Me.TestF.Form.Filter = myCriteria Me.TestF.Form.FilterOn = True جعفر
  7. أخي طارق رجاء اتباع الخطوات في الرابط التالي: جعفر
  8. رجاء مراجعة الموضوع في هذا الرابط لتوضيح اي الخيارين تستعمل ولكن عودة للبرنامج الذي لا يعمل ، السؤال هو: ما الذي لا يعمل في البرنامج؟ جعفر
  9. الذي فهمته صح ، ولكن ، بما انه كل جدول يمكنه ان يحتوي على مفتاح اساسي واحد فقط ، ولكنه يمكنك ان تجعل اكثر من حقل لا يقبل التكرار ، والطريقة هي ان تجعل هذه الحقول مفهرسة وان تجعلها لا تقبل التكرار (Indexed : Yes (No Duplicates) جعفر
  10. عفوا أخي عبدالله انت قصدك: جعفر
  11. نعم ، هذه مشكلة معروفة في الاكسس 2016 يجب ان تكون الصور بصيغة bmp يجب عليك ان تحدث نسخة الاكسس ، والرابط التالي فيه تحديث لهذه الفقرة فقط: https://support.microsoft.com/en-us/kb/3114379 جعفر
  12. وعليكم السلام الاكسس 2007 فما فوق ، فيه حماية ، لذلك فاول ما تفتح اي برنامج من مجلد غير موثوق به ، يظهر لك شريط وفي منتصفه مربع اصفر ، هنا تستطيع ان تنقر على المربع الاصفر (تمكين) لتخبر الاكسس انك تثق في البرنامج ، فعليه سيمكنك من العمل بالطريقة العادية ، وتشغيل الاوامر خلف الازرار اما اذا تجاهلت النقر على هذا المربع الاصفر ، فالنتيجة ستكون كما حصل لك ، انه لا شيء يعمل في الاكسس جعفر
  13. وعليكم السلام واهلا وسهلا بك في المنتدى هذا له علاقة باعدادات الوندوز ، حيث انك لم تقم بإختيار دولة عربية لحروف Unicode ، رجاء التاكد اختيار لغة الدولة في رقم 4 من الرابط المرفق جعفر
  14. أخي محمد هذا الشرح تم لك جعفر
  15. السلام عليكم تم طرح عدة اسئلة عن طريقة فرز او تصفية بيانات النموذج ، وسأقوم هنا بشرح الطريقتين: 1. إما عن طريق الاستعلام ، وهذا الرابط يعطينا المثال (والرجاء قراءته بتريث وتمعن وبالتفصيل) : 2. وإما عن طريق النموذج ، فميزتها: أ- انك تستطيع عمل تصفيه/تصفيات اضافية على النموذج او التقرير ، بعد تصفية الاستعلام ، ب- الاكسس سيعطيك الكود وسأشرح هنا كيفية عمل تصفية بيانات النموذج (وبنفس الطريقة يمكن عمل اكثر من تصفية ، وعمل فرز كذلك) : سأستعين بمرفق السؤال التالي للأخ محمد ، وبعد طلبت إذنه 1. قاعدة البيانات يجب ان تسمح لها ان تكون في وضع Layout View (هذا فقط حتى نتعلم الطريقة ، ويمكن الغاءه فيما بعد) ، . 2. النموذج يجب ان يكون غير منبثق . 3. هذا النموذج الذي نريد ان نعمل له تصفية بين تاريخين للحقل Date . 4. الهدف النهائي هو استخدام هذا الحقل لإدخال تاريخ معين ، ثم الضغط على زر "تصفية بين تاريحين" للقيام بالتصفية . 5. طريقة العمل: أ. بزر الفأرة اليمين نضغط في بيانات حقل التاريخ Date ، ب. ونختار تصفية التاريخ (السبب ان الاكسس اعطانا تصفية التاريخ هو لأن الحقل حقل تاريخ ، فلو كان الحقل نص او رقم لأعطانا الاكسس خيارات اخرى) ، ج. ونختار بين تاريخين (طبعا يمكنك اختيار اي من الاختيارات الاخرى ، وهذا يعتمد على التصفية التي تريد القيام بها) . د. تخرج لنا نافذة تطلب إدخال التاريخين (ويمكننا ادخال التاريخ بعدة طرق) ، وحسب اختيارنا ، والنتيجة المفروض ان نراها بعد التصفية هي السجلات بالاسهم الحمراء فقط . هـ. وهذه نتيجة التصفية اعلاه بين تاريخين . ح. والآن الى شرح كيفية الاستفادة مما عملناه اعلاه وتطبيقه في كود ، ننتقل بالنموذج الى وضع Layout View . ط. ونضغط بالفأرة اليسار على النموذج الفرعي الذي عملنا عليه التصفية ، ي. ثم ننظر في اعدادات النموذج ، الى ان نصل الى التصفية ، فنرى الكود الذي استعمله الاكسس للقيام بالتصفية ، فنعمل له نسخ ، ومثل ما اشرت اعلاه ، يمكننا اضافة اكثر من تصفية لأكثر من حقل ، ويمكن عمل فرز لحقل آخر ، ثم نرى الكود جاهزا هنا . ك. هذا الزر الذي سننقر عليه للقيام بالتصفية . ل. فنعمل الحدث على نقر الزر ، ثم نلصق الكود السابق ، ونقوم بتعديل التواريخ بما يناسب طلبنا ، وهو التصفية بين: تاريخ الحقل DateX و تاريخ الحقل DateX ناقصا 65 يوم ، او كما بالتواريخ في الملاحظات (باللون الاخضر في الكود) (ملاحظة مهمة للعلم: الاكسس يستخدم نظام التاريخ الامريكي في جميع عملياته ، والتاريخ الامريكي هو شهر/يوم/سنة ، كما نرى في كود التصفية) . م. وهنا نرى نتيجة النقر على زر "تصفية بين تاريخين" ، والذي يستعمل الكود اعلاه . ****************************************** اما اذا اردنا عمل استبعاد معلومة مثل "الاسكندرية" من قائمة Country . فيصبح الكود . ************************** الآن سنقوم بعمل اكثر من تصفية ، فرز بين تاريخين واستبعاد "الاسكندرية" فرزنا بين التاريخين ، وكانت نتيجته هكذا . واستبعاد معلومة مثل "الاسكندرية" من قائمة Country . فيصبح كود التصفية هكذا . والآن الى الكود الذي يضم هذه التصفيات: يجب ان نعرف اننا نتعامل مع مجموعة مختلفة من انواع الحقول ، وكل نوع له طريقة في عمل الكود ، فالسطر الاول هو تاريخ ، والسطر الثاني للنص ، ووضعت مثال في آخر سطر لحقل الرقم Dim City As String City = "اسكندرية" 'للتاريخ myCriteria = "([testQ].[datex] between #" & Me.DateX & "# and #" & Me.DateX - 65 & "#)" 'للنص myCriteria = myCriteria & " AND ([testQ].[country1]<> '" & City & "'" myCriteria = myCriteria & " or [testQ].[country1] is null)" 'للرقم 'myCriteria = myCriteria & " AND [testQ].[ID]<> " & Me.ID Me.TestF.Form.Filter = myCriteria Me.TestF.Form.FilterOn = True *********************************** كيف نعرف ان النموذج به تصفية: عند عمل التصفية في النموذج (وليس من الاستعلام) ، ستلاحظ ان النموذج يخبرك انك عملت تصفية ، هكذا بالتظليل الاصفر: . ولإزالة التصفية ، يجب عليك النقر على احد هذين المكانين المظللين بالاصفر ، او عمل زر: . والكود على نقر الزر سيكون: Me.TestF.Form.Filter = "" Me.TestF.Form.FilterOn = False جعفر 660.2.Test2006.mdb.zip
  16. أخي محمد وبدل ان اعطيك سمكة ، ما رأيك ان اعلمك الصيد فبدل ان اعطيك الكود ، سأشرح لك كيف تحصل على الكود الصحيح ولكن ، اسمح لي استعين بمرفقك ، وسأعمل موضوع مستقل اشرح بالتفصيل عن طريقة فرز وتصفية البيانات في النموذج جعفر
  17. وعليكم السلام معظم الاخطاء التي تأتي بإسم ActiveX مصدرها الاعدادات الاقليمية للوندوز ، رجاء التاكد اختيار لغة الدولة في رقم 4 من الرابط المرفق جعفر
  18. وعليكم السلام اخي طارق المصطلح "محي" غير متعارف عليه ، ولا اعرف معناه في الاكسس رجاء توضيح طلبك بالتفصيل جعفر
  19. وعليكم السلام في النموذج اعمل حقل التاريخ من ، والتاريخ الى ، ثم في الاستعلام في حقل التاريخ استعمل هذا الكود between [Forms]![main]![Datamasterform]![From_Date] and [Forms]![main]![Datamasterform]![To_Date] في الكود اعلاه ، لا تستطيع ان تُدخل Date() ، وانما يجب ان يكون تاريخ ، اما اذا اردت ادخال Date() ، فيكون ثابت هكذا ، ولا تستطيع اختيار تواريخ اخرى Between Date() And Date()-14 جعفر
  20. هناك العديد من الامثلة على الانترنت ، واليك بعضها: كود: http://www.utteraccess.com/wiki/AddTrustedLocation http://www.tek-tips.com/viewthread.cfm?qid=1718392 https://www.devhut.net/2010/06/23/vbscript-createset-trusted-location-using-vbscript/ معلومات عن كود وبرامج خارجية تقوم بالعمل: http://www.hitechcoach.com/index.php?option=com_content&view=article&id=51:trust-center-in-access-2007-and-2010&catid=61:access-2010 وبرنامج بالمجان: http://www.accessribbon.de/en/?Trust_Center:Trusted_Locations جعفر
  21. وعليكم السلام أخي محمد الصورة على شاشتي بدون اي اهتزاز ، ولكن ، طبيعة الوان الصورة الفاتحة والغامقة تعطي هذا الانطباع الموضوع لا علاقة له بالاكسس ، وانما بالصورة نفسها ، لذا فالحل هو في تغيير الصورة ، او وان كان ولابد من استخدام صورة معينة ، فاعمل مثل ما اخبرتك هنا: ارفق لك هذه الصورة ، وسترى الحركة فيها ، وبعيدا عن الاكسس ، وستلاحظ ان الحركة اكثر في الالوان الفاتحة جعفر
  22. هلا والله أخوي عبدالفتاح
  23. وعليكم السلام مافي داعي تستورد/تجلب الجدول Table1 من قاعدة البيانات db1 الى db2 ، وانما تقدر تربطه فقط جعفر
  24. وعليكم السلام اخي عبدالفتاح مافي داعي للكود من اصله اضف هذا الحقل الى الاستعلام Q_all ، ليحسب عدد حصص المدرسين: sthu88: Nz([sun1]/[sun1],0)+Nz([sun2]/[sun2],0)+Nz([sun3]/[sun3],0)+Nz([sun4]/[sun4],0)+Nz([sun5]/[sun5],0)+Nz([sun6]/[sun6],0)+Nz([sun7]/[sun7],0)+Nz([sun8]/[sun8],0)+Nz([sun9]/[sun9],0)+Nz([mon1]/[mon1],0)+Nz([mon2]/[mon2],0)+Nz([mon3]/[mon3],0)+Nz([mon4]/[mon4],0)+Nz([mon5]/[mon5],0)+Nz([mon6]/[mon6],0)+Nz([mon7]/[mon7],0)+Nz([mon8]/[mon8],0)+Nz([mon9]/[mon9],0)+Nz([tu1]/[tu1],0)+Nz([tu2]/[tu2],0)+Nz([tu3]/[tu3],0)+Nz([tu4]/[tu4],0)+Nz([tu5]/[tu5],0)+Nz([tu6]/[tu6],0)+Nz([tu7]/[tu7],0)+Nz([tu8]/[tu8],0)+Nz([tu9]/[tu9],0)+Nz([wed1]/[wed1],0)+Nz([wed2]/[wed2],0)+Nz([wed3]/[wed3],0)+Nz([wed4]/[wed4],0)+Nz([wed5]/[wed5],0)+Nz([wed6]/[wed6],0)+Nz([wed7]/[wed7],0)+Nz([wed8]/[wed8],0)+Nz([wed9]/[wed9],0)+Nz([thu1]/[thu1],0)+Nz([thu2]/[thu2],0)+Nz([thu3]/[thu3],0)+Nz([thu4]/[thu4],0)+Nz([thu5]/[thu5],0)+Nz([thu6]/[thu6],0)+Nz([thu7]/[thu7],0)+Nz([thu8]/[thu8],0)+Nz([thu9]/[thu9],0) وفي التقرير: اجعل مصدر بيانات الحقل sthu88 تشير الى حقل الاستعلام sthu88 ، واما حقل total ، فاجعل مصدره: =Sum([sthu88]) جعفر
  25. خلاص ولا يهمك 0 ; 0 ; 1.27 او اذا اردت 1.27 ;0 ; 0
×
×
  • اضف...

Important Information