-
Posts
9998 -
تاريخ الانضمام
-
تاريخ اخر زياره
-
Days Won
406
نوع المحتوي
المنتدى
مكتبة الموقع
معرض الصور
المدونات
الوسائط المتعددة
كل منشورات العضو jjafferr
-
الطريقة الصحيحة في البحث / التصفية عن طريق الاستعلام
jjafferr replied to jjafferr's topic in قسم الأكسيس Access
عملت لك الاضافة ، اللي تحتها خط احمر ، وتقدر تعملها للحقل الآخر للبحث : . والنتيجة: . جعفر 1031.Advanced Search Marj3.accdb.zip -
السلام عليكم 🙂 وبعد ملاحقة الرابط الى آخر الى آخر الى آخر الى آخر الى آخر الى آخر الى ... ، ومحاربة مضاد الفيروسات على كمبيوتري مع هذه الصفحات والتي تحاول زرع برامج خبيثة عليه ، اليكم الرابط الاخير لتحميل البرنامج: https://www.file-up.org/azot1x4brsec جعفر ملاحظة: بسبب صعوبة حصول الاعضاء على البرنامج من رابط الرفع ، تم اضافة المرفق الى الموضوع الاصل 🙂
-
السلام عليكم 🙂 في الماضي كان عندنا معيار واحد فقط (التاريخ) ، بينما الآن اصبح عندنا معيارين (التاريخ و الادارة) ، وهذا اخذ مني اكثر من يومين للوصول اليه !! على العموم ، نظّفت الكود بطريقة اخرى ، والعرض اصبح الآن يأخذ الصفحة كاملة ، وعلى اساسه يعمل عرض الحقول 🙂 وهذا الكود كاملا: Private Sub Report_Open(Cancel As Integer) Dim ctrl As Control Dim A As Integer Dim Empty_Cells As Integer Dim Full_Cells As Integer Dim W As Integer Dim myWhere As String Dim rpt_width As Integer Dim Full_Date As Date Dim D As Integer Dim Y As Integer Dim M As Integer 'W = 2200 / 4 'field width Empty_Cells = 0 Full_Cells = 0 'the name rpt_width = 0 Y = Forms!Report!iYear 'year M = Forms!Report!iMonth 'month 'lets fit/expand the controld based on the avaible width 'how many Full_Cells For D = 1 To 31 Full_Date = DateSerial(Y, M, D) myWhere = "[edara]='" & Forms!Report!cmd_edara_N & "'" myWhere = myWhere & " And " myWhere = myWhere & "[zeiara_date]=" & DateFormat(Full_Date) A = DCount("*", "zeara", myWhere) If A <> 0 Then Full_Cells = Full_Cells + 1 End If Next D W = Me.Width - (Me.Printer.LeftMargin + Me.Printer.RightMargin + Me("mogh_name").Width) W = W / (Full_Cells - 1) For D = 1 To 31 Full_Date = DateSerial(Y, M, D) 'the field Names from the Crosstab query 'check if this field exists int the table myWhere = "[edara]='" & Forms!Report!cmd_edara_N & "'" myWhere = myWhere & " And " myWhere = myWhere & "[zeiara_date]=" & DateFormat(Full_Date) A = DCount("*", "zeara", myWhere) If A = 0 Then 'field dose not exist Me("txt_" & D).Width = 0 'trim field size to Zero Me("txt_" & D).Visible = False 'make the field invisible Me("txt_" & D).ControlSource = "" 'remove the Control Source Me("lbl_" & D).Width = 0 'trim label size to Zero Me("lbl_" & D).Visible = False 'make the label invisible Empty_Cells = Empty_Cells + 1 'Debug.Print "Off " & Me("txt_" & D).Name & vbTab & "D:" & D & vbTab & "Full:" & Full_Date & vbTab & "A:" & A Else 'field exists Me("txt_" & D).Width = 1 * W 'set the field width Me("txt_" & D).Visible = True 'make the field visible Me("txt_" & D).ControlSource = Full_Date Me("lbl_" & D).Width = 1 * W 'set the label width Me("lbl_" & D).Visible = True 'make the label visible Me("lbl_" & D).Caption = D & "/" & M 'give the label, a caption Full_Cells = Full_Cells + 1 rpt_width = rpt_width + Me("txt_" & D).Width 'add the width 'Debug.Print "ON " & Me("txt_" & D).Name & vbTab & "D:" & D & vbTab & "Full:" & Full_Date & vbTab & "A:" & A End If Next D Me.Width = rpt_width + Me("mogh_name").Width 'the final Report width End Sub جعفر 1030.rpt_Monthly_Crosstaby.mdb
-
الطريقة الصحيحة في البحث / التصفية عن طريق الاستعلام
jjafferr replied to jjafferr's topic in قسم الأكسيس Access
مافهمت قصدك في السؤال: فالبيانات عندك تظهر بالكامل ، ولا حاجة الى عمل اي شيء !! ولكن ، اذا اردت معرفة طريقة عمل تحديث الحقل الفارغ بعلامة - ، فاليك هذه الصورة كمثال: . جعفر -
السلام عليكم 🙂 اخي سامي: وضع اكثر من سؤال في الموضوع يُعتبر مخالف لقوانين المنتدى ، والاسئلة اعلاه خارجة عن الموضوع 🙂 جعفر
-
الطريقة الصحيحة في البحث / التصفية عن طريق الاستعلام
jjafferr replied to jjafferr's topic in قسم الأكسيس Access
السلام عليكم 🙂 . 1. نعم ، بعمل مجموعة استعلامات تحديث ، استعلام لكل جدول (وقد نحتاج الى اكثر من استعلام للجدول) ، ولكن يعملون بحدث رز واحد ، 2. نعم ، ولكن هذا يعتمد على المعيار والتصفية ، ويمكنك تجربة هذا على حقل معين في الجدول ، قم بتغيير بيانات بعض الحقول الفارغة الى - ، وشوف النتيجة. نعم كلامك صحيح. سبق وان ناقشنا هذا الموضوع ، وبعمق ، فرجاء لا تأتي بأسماء اعضاء وتحرجهم ، والنتيجة ببساطة انك لن تجد لهم جواب في اسئلتك القادمة (وقد تم حذف اسم العضو من موضوعك اعلاه). مشكلتك الاساسية هي عدم ظهور كافة البيانات في الاستعلام (الاستعلام وبدون اي معايير) ، وذلك لأن العلاقة التي عملتها بين الجدولين لا تطلب جميع السجلات وبغض النظر من وجودها في الجدول الآخر او لا ، وقد قام الاخ كاسر @kaser906 مشكورا بتوضيح وتعديل الاستعلام في 3 ابريل ، اي قبل 8 ايام تقريبا ، وذلك في الموضوع والطريقة التي قام بها: بما ان ربطك للجدولين ظاهرا هكذا (علاقة الربط غير حقيقة الربط) ، ولكن حقيقة ، الربط بحقل "اسم الشهرة" و"المؤلف" ، لأنك مستخدم Lookup لحقل "المؤلف" ، فالحقول (في المربع الاحمر) التي لا توجد اسماء لها في الجدول الآخر ، لن تظهر في الاستعلام . وبالنقر المزدوج على خط العلاقة بين الجدولين ، تظهر لنا هذه النافذه ، والتي نختار منها جميع السجلات في الجدول Marj3 ، بغض النظر اذا كانت موجودة في الجدول الآخر او لا . والنتيجة تكون هكذا (لاحظ السهم تحت الرقم 1) . وعلى اساسه نرى جميع البيانات في الاستعلام . الى هنا وينتهي الذي قام به الاخ كاسر ، ولما نرى النتيجة في النموذج ، وبعد إضافة معيار البحث في الاستعلام ، ثم نبحث عن: "د" . ففي واقع الامر ، لم تكن عندك مشكلة في NULL ، وانما في عرض البيانات بطريقة صحيحة 🙂 جعفر 1029.نموذج بحث.accdb.zip -
الطريقة الصحيحة في البحث / التصفية عن طريق الاستعلام
jjafferr replied to jjafferr's topic in قسم الأكسيس Access
لإضافة السجلات الفارغة ، يجب اضافة الجزء الاخير من المعادلة التاليه: Like IIf(Len([forms]![frm_Main]![fName] & '')=0,"*","*" & [forms]![frm_Main]![fName] & "*") or [DateX] is null هذا معناه انك تبحث عن معلومه معينه ، ويعطيك الاكسس هذه المعلومه ، وطبعا الحقل الفارغ البكر NULL لا يحتوي على هذه المعلومة ، لذلك تريد: 1. بيانات البحث ، 2. الحقول الفارغة في الحقل. ولكن دعني اعطيك نصيحة ، فالعمل على الحقول التي بها بيانات وبها فارغة ، ليس بالعمل السهل ، لذلك ، فالافضل ان تعبئ هذه الحقول الفارغة بعلامة مثل "-" (شرطة او ناقص) ، ولسهولة العمل ، اعمل استعلام تحديث لهذا الحقل ، بحيث تُدخل علامة - في جميع الحقول الفارغة ، فيصبح بحثك اسهل 🙂 جعفر -
السلام عليكم 🙂 مع خالص الشكر، هل ممكن شرح نتعلم منه هذه الطرق في عمل استعلام البحث من حيث (غرض الاستخدام - والمميزات والعيوب - وكيفيه التنفيذ) هذه الروابط فيها المطلوب: 1. 2. . جعفر
-
الطريقة الصحيحة في البحث / التصفية عن طريق الاستعلام
jjafferr replied to jjafferr's topic in قسم الأكسيس Access
السلام عليكم 🙂 الدقة: جميع الاستعلامات لها نفس الدقة في تصفية/فرز البيانات ، السرعة: الاستعلام العادي من خلال معالج الاستعلام كان يمتاز عن بقية انواع الاستعلامات (وهنا لا اتكلم عن Recordset) ، بأن الاكسس كان يعمل له Compile وايضا يعمل له خطة عمل ، مما يجعله اسرع من بقية الانواع ، حيث انه يكون جاهزا للعمل بمجرد فتحه ، اما الآن ، وبوجود الاجهزة الجديدة والسريعة ، فبقية انواع الاستعلام ، تقوم بعمل Compile بسرعة عند استعمالها ، فلا نلاحظ الفرق في سرعة بينهم. ولكن ، هذا كله يعتمد على طريقة عمل الاستعلام ، بغض النظر عن نوعه 🙂 واهم شيء لجعل الاستعلام يعمل بسرعة هو ، عمل فهرسة (في الجداول) للحقول التي بها معايير ، او الحقول التي بها ربط بين الجداول. جعفر -
مساعدة في تجاوز رسالة خطأ في OLE و عنصر ActiveX
jjafferr replied to salimboub24's topic in قسم الأكسيس Access
وعليكم السلام 🙂 اخي حسنين ، الصور التي وضعتها في الموضوع لا تظهر !! يجب ان تختار اللغة التي كتبت فيها البرنامج في المادة 4 من الصورة ادناه: . جعفر -
درس حماية قاعدة البيانات واستحاله فتحها ( تحدي الهندسة العكسية )
jjafferr replied to SEMO.Pa3x's topic in قسم الأكسيس Access
حياك الله اخوي حسنين ، واهلا وسهلا بك 🙂 وشكرا الموضوع المميز 🙂 جعفر -
-
وعليكم السلام 🙂 اخبرك طريقة الصيد ، بدل ان اعطيك سمكه 🙂 الجزء الاول هنا . والجزء الثاني . ولسرعة جلب البيانات ، استعمل التالي وبدون ذكر الحقل ، لأنك في نهاية الامر تحسب عدد السجلات: DCount("*", . وللتأكد انك صرت صياد ، وبعد ان تحصل على النتيجة الصحيحة ، اريدك تعرض لنا الكود بالكامل و النتيجة 🙂 جعفر
-
مشكلة عند تحويل قاعدة البيانات الى accde
jjafferr replied to محمد أبوعبدالله's topic in قسم الأكسيس Access
السلام عليكم شباب 🙂 في مشاركتي لسؤال من نفس النوع ، وبعد البحث في الانترنت ، وضعت هذه المشاركة ، ولم يتم تجربة الكود ، والفكرة هي عمل التحويل الى accde على جهاز العميل برمجيا : . وفي هذا الموضوع ، تم تجربة الكود وبنجاح 🙂 . جعفر -
مكتبة الموقع - التحكم بقاعدة بيانات الخلفية على الشبكة
jjafferr replied to ابو جودي's topic in قسم الأكسيس Access
وعليكم السلام ورحمة الله وبركاته 🙂 شكرا لك على هذه الكلمات الجميلة ، وانا شخصيا ، ونحن كمنتدى وإدارة المنتدى ، نعتز ونفتخر برؤية مشاركات فيها فائدة للجميع ، وبالذات بافكار جديدة 🙂 نحن محظوظين بوجودنا في قريتنا الصغيرة "منتدى افسينا" ، وبوجود الاعضاء جيران لنا ، وبالاخص جيران امثالكم 🙂 جعفر -
السلام عليكم 🙂 نعم ممكن 🙂 هذا الجدول الجديد، مثلا: تم تعديل الاستعلام والوحدة النمطية لتتضمن جميع الدرجات: والنتيجة: وهذه الوحدة النمطية المعدلة: Public Function Per(Deg As String, Final_Grade As Integer) As String 'Expr1: IIf([Deg1]="غـ","متخلف",IIf(((Val([Deg1])/20)*100)<50,"Less50",IIf(((Val([Deg1])/20)*100) Between 50 And 55,"50-55%",IIf(((Val([Deg1])/20)*100) Between 55.1 And 60,"55-60%",IIf(((Val([Deg1])/20)*100) Between 60.1 And 65,"60-65%",IIf(((Val([Deg1])/20)*100) Between 65.1 And 70,"65-70%",IIf(((Val([Deg1])/20)*100) Between 70.1 And 75,"70-75%",IIf(((Val([Deg1])/20)*100) Between 75.1 And 80,"75-80%",IIf(((Val([Deg1])/20)*100) Between 80.1 And 85,"80-85%",IIf(((Val([Deg1])/20)*100) Between 85.1 And 90,"85-90%",IIf(((Val([Deg1])/20)*100) Between 90.1 And 95,"90-95%",IIf(((Val([Deg1])/20)*100) Between 95.1 And 99.99,"95-99%","100%")))))))))))) Dim Grade As Double Grade = ((Val(Deg) / Final_Grade) * 100) If Deg = "غـ" Then Per = "متخلف" ElseIf Grade < 50 Then Per = "Less50" ElseIf Grade >= 50 And Grade <= 55 Then Per = "50-55%" ElseIf Grade >= 55.1 And Grade <= 60 Then Per = "55-60%" ElseIf Grade >= 60.1 And Grade <= 65 Then Per = "60-65%" ElseIf Grade >= 65.1 And Grade <= 70 Then Per = "65-70%" ElseIf Grade >= 70.1 And Grade <= 75 Then Per = "70-75%" ElseIf Grade >= 75.1 And Grade <= 80 Then Per = "75-80%" ElseIf Grade >= 80.1 And Grade <= 85 Then Per = "80-85%" ElseIf Grade >= 85.1 And Grade <= 90 Then Per = "85-90%" ElseIf Grade >= 90.1 And Grade <= 95 Then Per = "90-95%" ElseIf Grade >= 95.1 And Grade <= 99.99 Then Per = "95-99%" Else Per = "100%" End If 'Debug.Print "Grade of: " & Deg & "/" & Final_Grade & " = " & Per End Function وهذه نتيجة كل درجة على حدة: Grade of: 13/20 = 60-65% Grade of: 11/20 = 50-55% Grade of: 11/20 = 50-55% Grade of: 10/20 = 50-55% Grade of: 0/20 = Less50 Grade of: 0/20 = Less50 Grade of: 9/20 = Less50 Grade of: 8/20 = Less50 Grade of: 7/20 = Less50 Grade of: 6/20 = Less50 Grade of: 5/20 = Less50 Grade of: 12/20 = 55-60% Grade of: 12/20 = 55-60% Grade of: 3/20 = Less50 Grade of: 2/20 = Less50 Grade of: 1/20 = Less50 Grade of: 4/20 = Less50 Grade of: 6/30 = Less50 Grade of: 1/30 = Less50 Grade of: 2/30 = Less50 Grade of: 3/30 = Less50 Grade of: 20/30 = 65-70% Grade of: 20/30 = 65-70% Grade of: 9/30 = Less50 Grade of: 0/30 = Less50 Grade of: 7/30 = Less50 Grade of: 15/30 = 50-55% Grade of: 8/30 = Less50 Grade of: 20/30 = 65-70% Grade of: 19/30 = 60-65% Grade of: 18/30 = 55-60% Grade of: 16/30 = 50-55% Grade of: 14/30 = Less50 Grade of: ÛÜ/30 = ãÊÎáÝ Grade of: ÛÜ/30 = ãÊÎáÝ Grade of: ÛÜ/30 = ãÊÎáÝ Grade of: 5/30 = Less50 Grade of: 17/30 = 55-60% Grade of: 14/50 = Less50 Grade of: 10/50 = Less50 Grade of: 11/50 = Less50 Grade of: 13/50 = Less50 Grade of: 20/50 = Less50 Grade of: 15/50 = Less50 Grade of: 16/50 = Less50 Grade of: 17/50 = Less50 Grade of: 18/50 = Less50 Grade of: 19/50 = Less50 Grade of: ÛÜ/50 = ãÊÎáÝ Grade of: 19/50 = Less50 Grade of: 12/50 = Less50 Grade of: 75/100 = 70-75% Grade of: 75/100 = 70-75% Grade of: ÛÜ/100 = ãÊÎáÝ Grade of: 50/100 = 50-55% Grade of: 60/100 = 55-60% Grade of: 70/100 = 65-70% Grade of: 65/100 = 60-65% Grade of: 40/100 = Less50 Grade of: 85/100 = 80-85% Grade of: 85/100 = 80-85% Grade of: 90/100 = 85-90% Grade of: 90/100 = 85-90% Grade of: 95/100 = 90-95% Grade of: 95/100 = 90-95% Grade of: 100/100 = 100% Grade of: 100/100 = 100% Grade of: 60/100 = 55-60% Grade of: 50/100 = 50-55% Grade of: 40/100 = Less50 Grade of: 0/100 = Less50 Grade of: 15/100 = Less50 Grade of: ÛÜ/100 = ãÊÎáÝ Grade of: 55/100 = 50-55% Grade of: 65/100 = 60-65% Grade of: 18/100 = Less50 Grade of: ÛÜ/100 = ãÊÎáÝ Grade of: ÛÜ/100 = ãÊÎáÝ Grade of: 80/100 = 75-80% Grade of: 80/100 = 75-80% Grade of: 30/100 = Less50 Grade of: 13/20 = 60-65% Grade of: 11/20 = 50-55% Grade of: 11/20 = 50-55% Grade of: 10/20 = 50-55% Grade of: 0/20 = Less50 Grade of: 0/20 = Less50 Grade of: 9/20 = Less50 Grade of: 8/20 = Less50 Grade of: 7/20 = Less50 Grade of: 6/20 = Less50 Grade of: 5/20 = Less50 Grade of: 12/20 = 55-60% Grade of: 12/20 = 55-60% Grade of: 3/20 = Less50 Grade of: 2/20 = Less50 Grade of: 1/20 = Less50 Grade of: 4/20 = Less50 Grade of: 6/30 = Less50 Grade of: 1/30 = Less50 Grade of: 2/30 = Less50 Grade of: 3/30 = Less50 Grade of: 20/30 = 65-70% Grade of: 20/30 = 65-70% Grade of: 9/30 = Less50 Grade of: 0/30 = Less50 Grade of: 7/30 = Less50 Grade of: 15/30 = 50-55% Grade of: 8/30 = Less50 Grade of: 20/30 = 65-70% Grade of: 19/30 = 60-65% Grade of: 18/30 = 55-60% Grade of: 16/30 = 50-55% Grade of: 14/30 = Less50 Grade of: ÛÜ/30 = ãÊÎáÝ Grade of: ÛÜ/30 = ãÊÎáÝ Grade of: ÛÜ/30 = ãÊÎáÝ Grade of: 5/30 = Less50 Grade of: 17/30 = 55-60% Grade of: 14/50 = Less50 Grade of: 10/50 = Less50 Grade of: 11/50 = Less50 Grade of: 13/50 = Less50 Grade of: 20/50 = Less50 Grade of: 15/50 = Less50 Grade of: 16/50 = Less50 Grade of: 17/50 = Less50 Grade of: 18/50 = Less50 Grade of: 19/50 = Less50 Grade of: ÛÜ/50 = ãÊÎáÝ Grade of: 19/50 = Less50 Grade of: 12/50 = Less50 Grade of: 75/100 = 70-75% Grade of: 75/100 = 70-75% Grade of: ÛÜ/100 = ãÊÎáÝ Grade of: 50/100 = 50-55% Grade of: 60/100 = 55-60% Grade of: 70/100 = 65-70% Grade of: 65/100 = 60-65% Grade of: 40/100 = Less50 Grade of: 85/100 = 80-85% Grade of: 85/100 = 80-85% Grade of: 90/100 = 85-90% Grade of: 90/100 = 85-90% Grade of: 95/100 = 90-95% Grade of: 95/100 = 90-95% Grade of: 100/100 = 100% Grade of: 100/100 = 100% Grade of: 60/100 = 55-60% Grade of: 50/100 = 50-55% Grade of: 40/100 = Less50 Grade of: 0/100 = Less50 Grade of: 15/100 = Less50 Grade of: ÛÜ/100 = ãÊÎáÝ Grade of: 55/100 = 50-55% Grade of: 65/100 = 60-65% Grade of: 18/100 = Less50 Grade of: ÛÜ/100 = ãÊÎáÝ Grade of: ÛÜ/100 = ãÊÎáÝ Grade of: 80/100 = 75-80% Grade of: 80/100 = 75-80% Grade of: 30/100 = Less50 جعفر 1022.Problem 55-2003.mdb.zip
-
ظهور الترتيب فى التقرير كما تم ترتيبه فى النموذج
jjafferr replied to محمد احمد لطفى's topic in قسم الأكسيس Access
تفضل 🙂 الطريقة هي: فتح التقرير للمعاينه (بطريقة مخفية) ، في التقرير ، في خانة الفرز ، نرسل اليه فرز النموذج الفرعي ، ثم نعطي التقرير الأمر بالقيام بالفرز ، (وفي سطر آخر كذلك يمكننا ان نرسل اليه تصفية النموذج الفرعي Filter ، ثم يجب ان نعطي التقرير الأمر بالقيام بالتصفية FilterOn) ، ثم نطبع التقرير ، ثم نغلق التقرير . فرز التقرير حسب فرز النموذج الفرعي: DoCmd.OpenReport "Q1", acViewPreview, , , acHidden Reports!Q1.OrderBy = Me.SUB.Form.OrderBy Reports!Q1.OrderByOn = True Dim PauseTime, Start PauseTime = 1 ' Set duration. Start = Timer ' Set start time. Do While Timer < Start + PauseTime DoEvents ' Yield to other processes. Loop DoCmd.OutputTo acOutputReport, "Q1", acFormatPDF, ("RateCard" & Format(Now(), "mmmyyyy hhmmss") & ".pdf"), True DoCmd.Close acReport, "Q1", acSaveNo . وعلى هذا القياس تستطيع عمل تصفية كذلك 🙂 جعفر 1027.test2000.mdb.zip -
تفضل ، والطريقة اللي تريدها هي رقم 2 في الرابط جعفر
-
السلام عليكم ورحمة الله وبركاته الاستعلام يُعتبر العمود الفقري لقواعد البيانات ، وكلما زادت معرفتنا به ، كلما يصبح البرنامج افضل واسرع 🙂 البحث/التصفية في الاستعلام من الطرق المهمة ، ولكن وللأسف الشديد ، ارى الكثير من المبرمجين لا يعرفون الطريقة الصحيحة في عملها ، فالطريقة الغير صحيحة قد تعطيك النتائج ولكن على حساب وقت تنفيذ الاستعلام 😞 الامثله هنا تقوم على انه يوجد لدينا نموذج اسمه frm_Main ، وبه حقل الاسم fName ، وحقل التاريخ:من Date_From ، وحقل التاريخ:الى Date_To ، والحقول في الاستعلام ، حقل الاسم fName ، وحقل التاريخ DateX . 1. اذا اردنا البحث عن اسم كامل (وليس جزء من اسم) ، فيجب ان يكون المعيار في الاستعلام: [forms]![frm_Main]![fName] 2. واذا كان حقل الاسم فارغا في النموذج ، ونريد ان نرى جميع الاسماء ، فالمعيار يصبح: iif(len([forms]![frm_Main]![fName] & '')=0,[fName],[forms]![frm_Main]![fName]) والشرح للتأكد بأن الحقل فارغ في النموذج، بدل ان نكتب IsNull([forms]![frm_Main]![fName]) or [forms]![frm_Main]![fName]=0 فإننا نختصر هذين الشرطين بشرط واحد len([forms]![frm_Main]![fName] & '')=0 iif(كان الحقل فارغ في النموذج,[fName] اعطنا جميع بيانات الحقل,[forms]![frm_Main]![fName]واذا كان الحقل به قيمة فاستعمل هذه القيمة) . 3. اذا اردنا البحث عن جزء من الاسم Like IIf(Len([forms]![frm_Main]![fName] & '')=0,"*","*" & [forms]![frm_Main]![fName] & "*") والشرح IIf(Len([forms]![frm_Main]![fName] & '')=0 نعم Like "*" لا Like "*" & [forms]![frm_Main]![fName] & "*") . 4. اذا اردنا البحث بين تاريخين بدون سجلات التاريخ الفارغة Between (IIf(Len([Forms]![frm_main]![Date_From] & '')=0,#01-Jan-1900#,[Forms]![frm_main]![Date_From])) And (IIf(Len([Forms]![frm_main]![Date_To] & '')=0,#01-Jan-2900#,[Forms]![frm_main]![Date_To])) والشرح Between (IIf(Len([Forms]![frm_main]![Date_From] & '')=0,#01-Jan-1900#,[Forms]![frm_main]![Date_From])) And (IIf(Len([Forms]![frm_main]![Date_To] & '')=0,#01-Jan-2900#,[Forms]![frm_main]![Date_To])) مع سجلات التاريخ الفارغة Between (IIf(Len([Forms]![frm_main]![Date_From] & '')=0,#01-Jan-1900#,[Forms]![frm_main]![Date_From])) And (IIf(Len([Forms]![frm_main]![Date_To] & '')=0,#01-Jan-2900#,[Forms]![frm_main]![Date_To])) Or [DateX] Is Null والشرح Between (IIf(Len([Forms]![frm_main]![Date_From] & '')=0,#01-Jan-1900#,[Forms]![frm_main]![Date_From])) And (IIf(Len([Forms]![frm_main]![Date_To] & '')=0,#01-Jan-2900#,[Forms]![frm_main]![Date_To])) Or [DateX] Is Null او طريقة استاذنا واخونا العود ابو خليل Between nz([forms]![frm_main]![Date_From];"01/01/1900") And nz([forms]![frm_main]![Date_To];"01/01/2100") . جعفر
- 24 replies
-
- 16
-
-
-
وعليكم السلام 🙂 هذا يعتمد على طريقة عملك للبحث ، هل عن طريق الاستعلام ، او بالكود في النموذج مباشرة عن طريق Filter ، او بالكود وتغيير Recordset او تغيير RecordSource ، جعفر
-
ظهور الترتيب فى التقرير كما تم ترتيبه فى النموذج
jjafferr replied to محمد احمد لطفى's topic in قسم الأكسيس Access
وعليكم السلام 🙂 هنا ترى احد الطرق: جعفر -
وعليكم السلام ورحمة الله وبركاته 🙂 واهلا وسهلا بك في المنتدى 🙂 في الواقع السؤال هو ، هل قرأت قوانين المنتدى قبل طرحك للسؤال؟ قسم الأكسيس Access تابع هذا القسم 58 Access هذا المنتدى مخصص لمشاركات الأكسيس قواعد المشاركة فى الموقع و بصفة خاصة نؤكدعلى ما يلي 1- يمنع منعا باتا نشر أية مواد تخالف حقوق الملكية الفكرية و يرجى الابلاغ عن المشاركات المخالفة من خلال زر تقرير اسفل المشاركة 2-يجب استخدام خاصيةالبحث قبل طرح السؤال توفيرا للوقت و الجهد. 3-ضرورة كتابة عنوان واضح للموضوع يدل على محتواه ويعطي وصفاً مختصرا للسؤال. 4-ممنوع منعا باتاً كتابة عناوين سينمائية مثل عاجل ، نداء الي فلان ، الي الخبراء ، طلب مساعدة ، أريد حلا..... 5-يمكن استعجال الرد باستخدام تعبير -للرفع- و غير مسموح بالالحاح او اللوم فجميع الاعضاء يشاركون تطوعا طبقا لسعة وقتهم. ومخالفة ذلك تعرض الموضوع للحذف رجاء عمل موضوع جديد وفق شروط المنتدى 🙂 يُقفل الموضوع. جعفر
-
تعبئة حقول بناء على اختيار حقل داخل النموذج
jjafferr replied to ASD-pcit's topic in قسم الأكسيس Access
وعليكم السلام ما اعرف شو المطلوب الآن؟ جعفر -
وعليكم السلام ورحمة الله وبركاته حيالله حبيبنا الغالي واخونا العود ابو خليل 🙂 اي والله من سفره طويله الى سفرات قصيرة الى سفره طويله من يوم الاحد الجاي ان شاء الله 🙂 ويا صباح الخيرات اخي jo_2010 وبعد اذن حضرتك ، فأنا لم اعدك لأني كنت اعرف مسبقا اني على سفر ووقتي سيكون جدا ضيق ، لهذا السبب كتبت لك ، ولكن وللأسف ماصار لي وقت ، وسافرت !!
-
فتح تقريرين ببيانات مختلفه علي حسب تصفية الاستعلام الجدولي
jjafferr replied to jo_2010's topic in قسم الأكسيس Access
وعليكم السلام 🙂 اخي jo_2010 1. انت لازلت تقوم بإرفاق برنامجك القديم ، مع اني قمت بالتعديل عليه هنا وقام أخونا الفاضل ابو خليل بعمل تقريبا نفس التعديل هنا (يعني بدأ من الصفر بالتعديل) مما يأخذ الوقت من اللي يريد يساعدك ، فياريت تشتغل على آخر مرفق 🙂 2. اذا لم تحصل على رد لموضوعك ، فهذا قد يكون بسبب ان موضوعك غير واضح ، لذلك اذا ارفقت مثال او مثالين لطريقة الجواب المرجّوه في ملف اكسل او وورد او عمل صورة مثلا ، فهذا سيسهل الموضوع كثيرا علينا. جعفر