-
Posts
9903 -
تاريخ الانضمام
-
تاريخ اخر زياره
-
Days Won
404
نوع المحتوي
المنتدى
مكتبة الموقع
معرض الصور
المدونات
الوسائط المتعددة
كل منشورات العضو jjafferr
-
وعليكم السلام اختي في قواعد البيانات ، لا نحفظ حقل محسوب في جدول ، إلا اذا كان كُلاً ولا بُد اعملي استعلام ليعطيك هذه القيمة ، وكلما احتجتي لهذه القيمة لنموذج او تقرير ، فاستعملي الاستعلام جعفر
-
طرق فرز وتصفية البيانات للنماذج ، وتصفية التقارير
jjafferr replied to jjafferr's topic in قسم الأكسيس Access
تفضل بدون سجلات التاريخ الفارغة 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 جعفر -
طرق فرز وتصفية البيانات للنماذج ، وتصفية التقارير
jjafferr replied to jjafferr's topic in قسم الأكسيس Access
أخي محمد الربكة عندك في And و Or ، فرجاء مراجعة عملهم بالضبط. رجاء عمل التالي: 1. وانت في النموذج ، اضغط على زرّي لوحة المفاتيح: Ctrl + G 2. وسيأخذك الى صفحة الكود ، وستلاحظ نافذة صغيرة في اسفل صفحة الكود ، 3. السطر التالي ، احذف اول اشارة من سطره ، الاشارة: ' 'Debug.Print myCriteria' 4. اذهب للنموذج واعمل التصفية التي تريدها 5. ارجع لصفحة الكود ، وستلاحظ في النافذة الصغيرة وجود كود التصفية 6. انسخ هذا الكود 7. اعمل استعلام فارغ 8. بالزر اليمين في الاستعلام ، غيّر الاستعلام من تصميم الى SQL 9. احذف الكلمات الموجودة في الاستعلام ، والصق كود النموذج 10. شغّل الاستعلام ، وشوف نتائجه 11. ضع الاستعلام في وضع تصميم ، وشوف تفاصيله ، وهي التفاصيل التي قمت بها انت لتصفية النموذج. 12. العب في And و Or للحقول التي تريدها ، وسوف تعرف ايهم تستعمل والانسب لعملك ، وعليه ترجع لكود تصفية النموذج وتغيّر فيه حسب طلبك ************************* هذا الموضوع هو انشاء تصفية ولعدة حقول ، والحمدلله استطعت انت ان تجرب النتائج جعفر -
وعليكم السلام انت طلبت معرفة الفرق ، ولكنك انت الذي تحدد اهمية الكود من عدمه هذا الكود: لإنشاء فاتورة جديدة ، وهي الجزئية التي لا تزال موجودة ولم تحذفها انت ، اما الجزء الذي حذفته فهو لعمل سجل في النموذج الفرعي اذا بعد الحذف كل شيء كان تمام ، فتوكل على الله واستمر ******************* اعمل ضغط واصلاح لبرنامجك حتى تصغر حجمه جعفر
-
وعليكم السلام اجلب بيانات النموذج من جديد، بالتحديثات 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 جعفر
-
طرق فرز وتصفية البيانات للنماذج ، وتصفية التقارير
jjafferr replied to jjafferr's topic in قسم الأكسيس Access
وعليكم السلام المفروض ان الاكسس يعطيك كود مثل هذا: ([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 جعفر -
أخي طارق رجاء اتباع الخطوات في الرابط التالي: جعفر
-
رجاء مراجعة الموضوع في هذا الرابط لتوضيح اي الخيارين تستعمل ولكن عودة للبرنامج الذي لا يعمل ، السؤال هو: ما الذي لا يعمل في البرنامج؟ جعفر
-
الذي فهمته صح ، ولكن ، بما انه كل جدول يمكنه ان يحتوي على مفتاح اساسي واحد فقط ، ولكنه يمكنك ان تجعل اكثر من حقل لا يقبل التكرار ، والطريقة هي ان تجعل هذه الحقول مفهرسة وان تجعلها لا تقبل التكرار (Indexed : Yes (No Duplicates) جعفر
-
عفوا أخي عبدالله انت قصدك: جعفر
-
مشكلة حدثت بعد ترقية الاكسيس من 2003 الى 2016
jjafferr replied to محمد احمد لطفى's topic in قسم الأكسيس Access
نعم ، هذه مشكلة معروفة في الاكسس 2016 يجب ان تكون الصور بصيغة bmp يجب عليك ان تحدث نسخة الاكسس ، والرابط التالي فيه تحديث لهذه الفقرة فقط: https://support.microsoft.com/en-us/kb/3114379 جعفر -
مشكلة حدثت بعد ترقية الاكسيس من 2003 الى 2016
jjafferr replied to محمد احمد لطفى's topic in قسم الأكسيس Access
وعليكم السلام الاكسس 2007 فما فوق ، فيه حماية ، لذلك فاول ما تفتح اي برنامج من مجلد غير موثوق به ، يظهر لك شريط وفي منتصفه مربع اصفر ، هنا تستطيع ان تنقر على المربع الاصفر (تمكين) لتخبر الاكسس انك تثق في البرنامج ، فعليه سيمكنك من العمل بالطريقة العادية ، وتشغيل الاوامر خلف الازرار اما اذا تجاهلت النقر على هذا المربع الاصفر ، فالنتيجة ستكون كما حصل لك ، انه لا شيء يعمل في الاكسس جعفر -
وعليكم السلام واهلا وسهلا بك في المنتدى هذا له علاقة باعدادات الوندوز ، حيث انك لم تقم بإختيار دولة عربية لحروف Unicode ، رجاء التاكد اختيار لغة الدولة في رقم 4 من الرابط المرفق جعفر
-
أخي محمد هذا الشرح تم لك جعفر
-
السلام عليكم تم طرح عدة اسئلة عن طريقة فرز او تصفية بيانات النموذج ، وسأقوم هنا بشرح الطريقتين: 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
-
أخي محمد وبدل ان اعطيك سمكة ، ما رأيك ان اعلمك الصيد فبدل ان اعطيك الكود ، سأشرح لك كيف تحصل على الكود الصحيح ولكن ، اسمح لي استعين بمرفقك ، وسأعمل موضوع مستقل اشرح بالتفصيل عن طريقة فرز وتصفية البيانات في النموذج جعفر
-
النماذج ماتفتح وتظهر رسالة خطأ مكتوب بها راجع ActiveX (معدل)
jjafferr replied to فارس النجرس's topic in قسم الأكسيس Access
وعليكم السلام معظم الاخطاء التي تأتي بإسم ActiveX مصدرها الاعدادات الاقليمية للوندوز ، رجاء التاكد اختيار لغة الدولة في رقم 4 من الرابط المرفق جعفر -
وعليكم السلام اخي طارق المصطلح "محي" غير متعارف عليه ، ولا اعرف معناه في الاكسس رجاء توضيح طلبك بالتفصيل جعفر
-
وعليكم السلام في النموذج اعمل حقل التاريخ من ، والتاريخ الى ، ثم في الاستعلام في حقل التاريخ استعمل هذا الكود between [Forms]![main]![Datamasterform]![From_Date] and [Forms]![main]![Datamasterform]![To_Date] في الكود اعلاه ، لا تستطيع ان تُدخل Date() ، وانما يجب ان يكون تاريخ ، اما اذا اردت ادخال Date() ، فيكون ثابت هكذا ، ولا تستطيع اختيار تواريخ اخرى Between Date() And Date()-14 جعفر
-
هناك العديد من الامثلة على الانترنت ، واليك بعضها: كود: 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 جعفر
-
وعليكم السلام أخي محمد الصورة على شاشتي بدون اي اهتزاز ، ولكن ، طبيعة الوان الصورة الفاتحة والغامقة تعطي هذا الانطباع الموضوع لا علاقة له بالاكسس ، وانما بالصورة نفسها ، لذا فالحل هو في تغيير الصورة ، او وان كان ولابد من استخدام صورة معينة ، فاعمل مثل ما اخبرتك هنا: ارفق لك هذه الصورة ، وسترى الحركة فيها ، وبعيدا عن الاكسس ، وستلاحظ ان الحركة اكثر في الالوان الفاتحة جعفر
-
هلا والله أخوي عبدالفتاح
-
تحديث جدول في قاعدة خارجية بحسب المعرف id
jjafferr replied to محمد القدسي's topic in قسم الأكسيس Access
وعليكم السلام مافي داعي تستورد/تجلب الجدول Table1 من قاعدة البيانات db1 الى db2 ، وانما تقدر تربطه فقط جعفر -
وعليكم السلام اخي عبدالفتاح مافي داعي للكود من اصله اضف هذا الحقل الى الاستعلام 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]) جعفر
-
خلاص ولا يهمك 0 ; 0 ; 1.27 او اذا اردت 1.27 ;0 ; 0