بحث مخصص من جوجل فى أوفيسنا
Custom Search
|
نجوم المشاركات
Popular Content
Showing content with the highest reputation on 03 أبر, 2020 in all areas
-
السلام عليكم ورحمة الله وبركاته أهديكم برنامج لقراءة حركات الكلمة أي قراءة تشكيل الحروف . مثلاً كلمة ( الرَّحْمَنِ ) يقرأ البرنامج حركاتها هكذا ( شدة ، فتحة ، الصفر المستدير ، فتحة ، كسرة ) ولا أخفيكم أن أحد الأخوة الزملاء المهتمين بالقرآن الكريم في منتدانا الحبيب طلب مني ذلك على الخاص فأردت أن شارككم . البرنامج قابل للتطوير إن وجد أخطاء . ولا تنسونا من دعائكم ،، Read_HarakatV20_1.zip5 points
-
جزاكم الله خيرا اخوانى واساتذتى @ابو البشر و @محمد ابوعبد الله ومنورين المنتدى بالتوفيق اخوانى3 points
-
وعليكم السلام ورحمة الله وبركاته قبل اضافة الحقول الى النموذج تحتاج الى ضبط الجداول وعمل علاقات فيما بينها بطريقة صحيحة مثال سريع ومختصر للفكرة جدول الاباء : كود الاب + اسم الاب جدول الابناء : كود الابن + اسم الابن + كود الاب ( حقل غريب ) جدول الاحفاد : كود الحفيد + اسم الحفيد + كود الابن ( حقل غريب ) بعد تصميم الجداول بهذه الطريقة نقوم بعمل علاقات فيما بينها كود الاب في جدول الاباء مع كود الاب في جدول الابناء ( علاقة رأس باطراف ) كود الابن في جدول الابناء مع كود الابن في جدول الاحفاد ( علاقة رأس باطراف ) بهذه الطريقة يمكن وضع الحقول التي احتاجها في النموذج بدون مشاكل باذن الله تحياتي3 points
-
وعلكيم السلام ورحمة الله وبركاته برجاء مراجعة المرفق الاستعلام kan3 ارجو ان يكون هو المطلوب K_1_3.rar تحياتي3 points
-
اخي الفاضل محمد انا كان ردي على كود الاستاذ جعفر Dim myWhere As String myWhere = "login='" & Me.Texte1 & "'" myWhere = myWhere & " and" '<اهم شيء هو ترك مسافة في البداية قبل and myWhere = myWhere & " passe='" & Me.Texte3 & "'" '<اهم شيء هو ترك مسافة في البداية قبل passe Debug.Print myWhere If DCount("*", "test1", myWhere) = 0 Then MsgBox "????" Else DoCmd.OpenForm "test2", acNormal DoCmd.Close acForm, Me.Name, acSaveNo End If ولم اجرب التعديلات الاخيرة في رد الاستاذ جعفر لكونك وجدت ان الحل مناسب لك وهذا هو المطلوب اما بخصوص الرد الاخير للاستاذ جعفر فهوا الحل المناسب Dim u, p As String u = Replace(Me.Texte1, "'", "_") p = Replace(Me.Texte3, "'", "_") تقبل من اخيك اطيب ايات التقدير والاحترام3 points
-
الحمد لله ان الحل نفع معك علما باني قد تجاوزنة بالامر a' or 't'='t واعدت المحاولة بزيادة المسافة وايضا تم تجاوز كلمة المرور3 points
-
هذة ثغرة للاستعلامات البنيوية تمكن مستخدمها من الدخول على قواعد البيانات في حالات معينة وخطرها ليس فقط بامكانية تسجيل الدخول وانما يمكن تنفيذ اوامر sql مثل DROP TABLE وغيرها من الاوامر يتم الدخول باستخدام a' or 't'='t ' or '1'='1 ' or 1='1 هل هي مقتصرة على قواعد البيانات الحقيقة يمكن استخدامها مع تطبيقات php التي تستخدم قواعد البيانات ولكن التوسع في مثل هذه الامور اجده غير نافع في حالتك اخي جرب في كودك الاصلي ان تغيير تنسيق حقل الباس الى رقم عام ستجد ان الثغرة لن تعمل مع ذلك من الافضل ان تستخدم الكود الذي وضعه الاستاذ الفاضل @jjafferr If DCount("*", "test1", "login='" & Me.Texte1 & "'" & " and passe='" & Me.Texte3 & "'") > 0 Then MsgBox "????" Else DoCmd.OpenForm "test2", acNormal DoCmd.Close acForm, Me.Name, acSaveNo End If هذا والله اعلم3 points
-
وعليكم السلام 🙂 انا ما فهمت السؤال ، ولكن وجدت خطأ في الكود 🙂 وعلشان تعرف وين الخطأ ، دائما استعين بـ Debug.print ، وفي حالتك : Debug.Print "login='" & Me.Texte1 & "'" & "and passe='" & Me.Texte3 & "'" والنتيجة login='mmm'and passe='bb' . وتلاحظ انه ما في مسافة قبل and لهذا السبب ، الكود بعد التعديل يصير : Dim rs As dao.Recordset Set rs = CurrentDb.OpenRecordset("select * from test1", dbOpenDynaset) ' If Not rs.EOF Then rs.MoveFirst Debug.Print "login='" & Me.Texte1 & "'" & " and passe='" & Me.Texte3 & "'" rs.FindFirst ("login='" & Me.Texte1 & "'" & " and passe='" & Me.Texte3 & "'") If rs.NoMatch = True Then MsgBox "????" Else DoCmd.OpenForm "test2", acNormal DoCmd.Close acForm, Me.Name, acSaveNo End If rs.close Set rs = Nothing . وتستطيع ان تستعمل كود اخف : If DCount("*", "test1", "login='" & Me.Texte1 & "'" & " and passe='" & Me.Texte3 & "'") > 0 Then MsgBox "????" Else DoCmd.OpenForm "test2", acNormal DoCmd.Close acForm, Me.Name, acSaveNo End If . ولكن هذين الكودين يعتمدون على المعيار ، لذلك اعطيك طريقتي في عمل المعيار ، واللي يسهل عليك : . فيكون الكود في حالتك : Dim myWhere As String myWhere = "login='" & Me.Texte1 & "'" myWhere = myWhere & " and" '<اهم شيء هو ترك مسافة في البداية قبل and myWhere = myWhere & " passe='" & Me.Texte3 & "'" '<اهم شيء هو ترك مسافة في البداية قبل passe rs.FindFirst myWhere او If DCount("*", "test1", myWhere) > 0 Then جعفر3 points
-
استاذنا الفاضل @ابا جودى ليست المشكلة في استخدام Long Integer ولكن المشكلة انه استخدم Long Integer لعدد كبير جدا من الحقول مع عدم وجود داعي لذلك وهذا سؤثر سلباً على قاعدة البيانات وعلى حجمها فتنسيق Long Integer يحجز في الذاكرة 2,147,483,648 2,147,483,647 وهو سوف يسجل درجات مواد وهو بحاجة اقصى الى 6 او 7 ارقام فقط والله اعلم تحياتي2 points
-
2 points
-
Private Sub Detail_Print(Cancel As Integer, PrintCount As Integer) تحياتي2 points
-
ملاحطة أخي الكريم ....... ماذا لو تساوت مدرستان في عدد الطلاب والنسبة ...... المفرض هناك اول واول مكرر مثلا وهكذا .....2 points
-
استغفر االه انت معلمنا ونحن مجرد طلاب علم وقد وعدت سابقا بان اشرح كود الوارد اولا صادر اولا وهذا جزء من ذاك الكود لذا اسمحلي ان افتح موضوع جديد لشرح كود الوارد اولا صادر اولا او اخيرا ولان جهاز الكمبيوتر لدي بطيء بعض الشيء ولكي لا بفصل النت ويضيع ما اكتب ساكتب بعدة مشاركات ان شاء الله2 points
-
يمكننا بهذه الطريقة التغلب على هذه الحركات في اسم المستخدم او كلمة السر ، بحيث نستبدل اشارة ' بـ _ ونقارن الكلمات بالجدول : Dim u, p As String u = Replace(Me.Texte1, "'", "_") p = Replace(Me.Texte3, "'", "_") والآن جربها على اي من الطرق التي اقترحتها : Dim rs As dao.Recordset Dim u, p As String u = Replace(Me.Texte1, "'", "_") p = Replace(Me.Texte3, "'", "_") ' Set rs = CurrentDb.OpenRecordset("select * from test1", dbOpenDynaset) ' If Not rs.EOF Then rs.MoveFirst ' Debug.Print "login='" & u & "'" & " and passe='" & p & "'" ' rs.FindFirst ("login='" & u & "'" & " and passe='" & p & "'") ' If rs.NoMatch = True Then ' MsgBox "????" ' Else ' DoCmd.OpenForm "test2", acNormal ' DoCmd.Close acForm, Me.Name, acSaveNo ' End If ' ' Set rs = Nothing ' If DCount("*", "test1", "login='" & u & "'" & " and passe='" & p & "'") = 0 Then ' MsgBox "????" ' Else ' DoCmd.OpenForm "test2", acNormal ' DoCmd.Close acForm, Me.Name, acSaveNo ' End If Dim myWhere As String myWhere = "login='" & u & "'" myWhere = myWhere & " and" '<اهم شيء هو ترك مسافة في البداية قبل and myWhere = myWhere & " passe='" & p & "'" '<اهم شيء هو ترك مسافة في البداية قبل passe Debug.Print myWhere ' rs.FindFirst myWhere ' ' او If DCount("*", "test1", myWhere) = 0 Then MsgBox "????" Else DoCmd.OpenForm "test2", acNormal DoCmd.Close acForm, Me.Name, acSaveNo End If . جعفر2 points
-
2 points
-
شكرا جزيلا اخوي خالد 🙂 يا ريت اخوي محمد (rey360) اعطيتنا هذه التفاصيل من البداية 🙂 على العموم ، انا ارفقت لك هذا الكود في مشاركاتي السابقة ، فرجاء تجربه : Dim myWhere As String myWhere = "login='" & Me.Texte1 & "'" myWhere = myWhere & " and" '<اهم شيء هو ترك مسافة في البداية قبل and myWhere = myWhere & " passe='" & Me.Texte3 & "'" '<اهم شيء هو ترك مسافة في البداية قبل passe Debug.Print myWhere If DCount("*", "test1", myWhere) = 0 Then MsgBox "????" Else DoCmd.OpenForm "test2", acNormal DoCmd.Close acForm, Me.Name, acSaveNo End If جعفر2 points
-
منور اخى محمد @حلبي وعافانا الله واياكم وجميع المسلمين ان شاء الله برحمته جزاهم الله خيرا اخوانى واساتذتى2 points
-
انشاء الاستعلام وقت الحاجة بالكود وحذفه بعد الانتهاء من عمله بالكود كذلك قطعا افضل ولكن التعديل بتلك الطريقه لن يكون يسيرا على الجميع ان امكن ذلك فبها ونعم2 points
-
السلام عليكم احببت ان اخدمك واستخدمت طريقة التكلفة في اعمار الذمم وكانت النتيجة 24000سجل في اقل من ثواني معدودة طلعت النتيجة https://drive.google.com/file/d/1HWuQXyYFpT2KXRGS2dYlYhFRIbFUm53Z/view?usp=sharing السلام عليكم احببت ان اخدمك واستخدمت طريقة التكلفة في اعمار الذمم وكانت النتيجة 24000سجل في اقل من ثواني معدودة طلعت النتيجة https://drive.google.com/file/d/1HWuQXyYFpT2KXRGS2dYlYhFRIbFUm53Z/view?usp=sharing2 points
-
شكرا جزيلا 🙂 انا ارد على السؤال اثناء تناول الغداء ، فمعذور فالمعادلة الصحيحة تكون : If DCount("*", "test1", "login='" & Me.Texte1 & "'" & " and passe='" & Me.Texte3 & "'") = 0 Then جعفر2 points
-
الكثير من العادلات تقوم بهذا الشيء بالاضافة الى ما ذكره الأخ الرائد 77 هذا المعادلة (Ctrl+Shift+Enter) =SUM(IF(LEN(F6:F16)<>0,1,0)) واذا لم تعمل معك استبدل الفاصلة بفاصلة منقوطة لتبدو هكذا =SUM(IF(LEN(F6:F16)<>0;1;0))2 points
-
أستاذ جعفر أعتقد هذا السطر يساوي 0 و ليس أكبر من 02 points
-
تفضل =COUNTA(F6:F16)-COUNTIF(F6:F16;"") و اذا اردت الخلايا التي تحتوي على قيم نصية فقط =COUNTIF(F6:F16;"?*") ورقة عمل Microsoft Excel جديد __.xlsx2 points
-
السلام عليكم مشاركة مع استاذنا ابا جودى اتفضل اخي اتمنى يكون المطلوب تحياتي الحاق مشروط.rar2 points
-
2 points
-
تفضل Private Sub Form_Error(DataErr As Integer, Response As Integer) If DataErr = 2113 Then Response = acDataErrContinue me.undo msgbox "ادخل البطاقة مرة اخرى" me.ID.setfocus End If End Sub . ولكني لازلت اقول بأنه ممكن فيه طريقة افضل من هذه ، تلك التي يتسلسل فيها دخول البيانات من البطاقة !! لأنك بهذه الطريقة تضطر تصيد الاخطاء واحدة خلف الاخرى وووو ، بينما مثلا : لما تُدخل البطاقة في الجهاز ، يجب ان يكون التركيز على حقل رقم البطاقة ، وآخر حقل يتم ادخاله هو تاريخ الانتهاء ، ومنها ينتقل التركيز للحقل التالي ، هنا ، وعلى حدث "بعد التحديث" للحقل تاريخ الانتهاء ، يمكنك ان تظهر رسالة: هل تريد حفظ البيانات ، نعم ، لا : Dim Msg, Style, Title, Response Msg = "هل تريد حفظ البيانات ?" & vbcrlf & _ "نعم: احفظ البيانات" & vbcrlf & _ "لا : لا تحفظ البيانات" Style = vbYesNo + vbCritical + vbDefaultButton1 ' Define buttons. Title = "تم ادخال البيانات، ولكنها لم تُحفظ بعد" ' Define title. ' context. ' Display message. Response = MsgBox(Msg, Style, Title) If Response = vbYes Then ' User chose Yes. docmd.runcommand accmdsaverecord ' احفظ السجل me.id.setfocus 'وانتقل الى حقل ID مرة اخرى استعدادا لإدخال بيانات بطاقة جديدة Else ' User chose No. me.undo ' Perform some action. me.id.setfocus 'وانتقل الى حقل ID مرة اخرى استعدادا لإدخال بيانات بطاقة جديدة End If . الميزة في ظهور الرسالة هو ، انه لا يسمح لك عمل اي شيء آخر في السجل ، إلا بعد ان تستجيب للرسالة ، مما يسهل عليك ولا تحتاج الى بقية الكود ولا ولا 🙂 Private Sub Form_Error(DataErr As Integer, Response As Integer) Dim x As Integer x = DataErr If x > 0 Then ' Response = acDataErrContinue 'ÞÏ áÇ ÊÍÊÇÌ Çáì åÐÇ ÇáÓØÑ Me.Undo End If End Sub هو بمثابة هذا الكود لأن تقريبا جميع الاخطاء ارقامها موجبه Private Sub Form_Error(DataErr As Integer, Response As Integer) Response = acDataErrContinue Me.Undo End Sub جعفر2 points
-
بسم الله الرحمن الرجيم كما وعدت اساتذتي شارح الكود ولان جهازي بطيء بعض الشيء ولكي لا بفصل النت ويضيع ما اكتب ساكتب بعدة مشاركات ان شاء الله. اي كود يقوم على فهم الفكرة سيكون الشرح عن المخزون الفكرة تكمن اني اريد ان اعلم مقدار ما تبقى من المواد بعد ما تم صرفه والحل يكون على عدة خطوات لنتجاوز تسلسل الكود ولنفقز الى فهم الفكرة الخطوة الاولى:انشاء استعلام يدرج فيه كافة حركات ادخالات المواد مع عمود يقابلها بمجموع المخرجات للمادة مع الاخذ بعين الاعتبار المستودع الموجودة فيه mySQL = "SELECT trans.idproduct AS Prd, trans.datna AS xDate, trans.voucherno AS Doct,trans.description AS Doct1, trans.[in] AS Pr, trans.prix AS PP, nz([SumOfout],0) AS Sold, trans.idstore" & _ " FROM SalesTotal " & _ "INNER JOIN trans ON (SalesTotal.idstore = trans.idstore) AND (SalesTotal.idproduct = trans.idproduct) " & _ "WHERE trans.[in] > 0 And trans.[idstore] = '" & Forms!fautt1!autot7.Form!idstore & "'" & _ " and trans.idproduct='" & Forms!fautt1!autot7.Form!idproduct & "'" & _ "ORDER BY trans.idproduct, trans.datna;" Set qdf = db.CreateQueryDef(vbNullString, mySQL) Set Rs1 = qdf.OpenRecordset(dbOpenSnapshot) وهذا الاستعلام نستطيع ان نسميه جدلا استعلام افتراضي بدون امتداد لاسمه والهدف من ذلك حتى لا تتضر الى حذفه كلما اردت تنفيذ هذا الاستعلام لانه سينتج لك رسالة ان الاستعلام موجود مسبقا واذا اردت ان ترى الاستعلام باسم ايمن مثلا اكتب الكودالتالي qryName = "ayman" 'consumed is calculated in this query mySQL = "SELECT trans.idproduct AS Prd, trans.datna AS xDate, trans.voucherno AS Doct,trans.description AS Doct1, trans.[in] AS Pr, trans.prix AS PP, nz([SumOfout],0) AS Sold, trans.idstore" & _ " FROM SalesTotal " & _ "INNER JOIN trans ON (SalesTotal.idstore = trans.idstore) AND (SalesTotal.idproduct = trans.idproduct) " & _ "WHERE trans.[in] > 0 And trans.[idstore] = '" & Forms!fautt1!autot7.Form!idstore & "'" & _ " and trans.idproduct='" & Forms!fautt1!autot7.Form!idproduct & "'" & _ "ORDER BY trans.idproduct, trans.datna;" Set qdf = db.CreateQueryDef(qryName) qdf.SQL = mySQL qdf.Execute 'لاظهار الاستعلام المنشأ -ايمن-اعادة الانعاش Application.RefreshDatabaseWindow طبعا ترى هذا الكود في قاعدة البيانات المرفقة في شاشة الفواتير في النموذج الفرعي autot7 في حدث بعد التحديث fifo اخواني ساكمل بعد التاكد من اني وفقت في شرح الفكرة الاولى1 point
-
وبذلك نرتكب مخالفة لقوانين المنتدى لمجرد التفكير حتى فى إجابة السؤال الثانى فصلا وكرما وليس امرا افتح موضوع جديد كما اننى اعتذر للتأخير فى الرد بسبب سوء الانترنت اتابع من الجوال وكن يعلم الله مشقة ذلك تعب بالقراءة وشاشة صغيرة وتحميل المرفقات للجوال ولاانتقال بها للحاسوب للاطلاع والتعديل ثم العودة بها للجوال لارفعها على المنتدى رجاء التمس لى العذر ان تاخرت عليكم بالرد1 point
-
1 point
-
1 point
-
1 point
-
1 point
-
تفضل اخي الكريم Private Sub Detail_Print(Cancel As Integer, PrintCount As Integer) If ID = 4 Then ID.LeftMargin = 3000 End If End Sub تحياتي1 point
-
1 point
-
للاسف لم تظبط معى ان شاء الله احد اخواننا واساتذتنا يساعدنا تقبل تحياتى وتمنياتى لك وللجميع بالتوفيق1 point
-
وعليكم السلام ورحمة الله وبركاته بهذا الشكل !!! ماذا الفائدة التي تريدها اقصد انك في التعليمات البرمجيو لا بد ان تحدد ما تريده بالضبط مثال للتوضيح if Me.ID.Value=4 then لون الحقل بلون احمر else اتركه كما هو end if برجاء توضيح المطلوب اكثر مع مثال للتوضيح اكثر تحياتي1 point
-
اضافة لما اشار اليه الاستاذ @محمد ابوعبد الله ماهي العلاقة بين هذا الحقل من جدول 2 مع سجلات النموذج المبني على جدول 1 هل ترغب في اظهار قيمة الحقل وفقا لمعايير محددة او فقط قيمة الحقل هل ترغب في عرض اول سجل او اخر سجل او مجموع مثلا او فاتورة بيع الفاتورة الاخير اجمالي قيمة الفواتير الخ من الافضل الاطلاع على موضوع الاستاذ محمد طاهر1 point
-
1 point
-
السلام عليكم 🙂 ليش ما تحبون الوحدات النمطية ، سهلة ولذيذة 🙂 بدل هذا الحقل UnionUnit: IIf([units]="جرام","كيلو جرام",IIf([units]="كيلو جرام","كيلو جرام",IIf([units]="قرص","قرص"))) استعمل units2: G_to_K_u([units],[wzn]) وهاي الوحدة النمطية ماله Public Function G_to_K_u(u As String, w As Double) As String 'convert Gram to Kilogram 'units If u = "جرام" Then G_to_K_u = "كيلو جرام" Else G_to_K_u = u End If End Function . وبدل هذا الحقل UnionMeasure: IIf([units]="جرام",Format([wzn]/1000,"#,##0.000"),IIf([Units]="كيلو جرام",Format([wzn],"#,##0.000"),IIf([units]="قرص",[wzn]))) استعمل wzn2: G_to_K_w([units],[wzn]) وهاي الوحدة النمطية ماله Public Function G_to_K_w(u As String, w As Double) As Double 'convert Gram to Kilogram 'wzn If u = "جرام" Then G_to_K_w = w / 1000 Else G_to_K_w = w End If End Function . جعفر 1202.Qs For Weight (UP2).mdb.zip1 point
-
السلام عليكم 🙂 اخواني ، الجميع يساعد في المنتدى بوقته وبدون مقابل ، وعندنا مثل يقول: حبة الزبيب ما تشبّع ، ولكنها تحلّي الفم 🙂 فرجاء خلونا نشجع الاعضاء في العطاء 🙂 لما تحصل على رد له قيمة ، فتشجيعا للعضو الذي يساعدك ، اخبر العضو بأنك مُعجب برده ، هكذا : . . ولما تحصل على اجابة لسؤال موضوعك ، فرجاء اختيار افضل اجابة ، هكذا (حتى مستقبلا يسهل معرفة الاجابة الصحيحة) : . شكرا 🙂 جعفر ومع الاعتذار لأخي احمد لإستخدام اسمه في المثال 🙂1 point
-
قم باغلاق تشغيل الفيديو من اعدادت الفيس وتشغله لما تحب تشوفه وكفايه تحميل الصور عليه وربنا يعينك على شغل الباقات ده1 point
-
حتى النت الارضى الان فى وقت الحظر كل النت بيتقل مصر والعالم كله عالنت ههههههههههههههه ربنا يعدى الايام دى على خير وعفانا الله واياكم ان شاء الله وجميع المسلمين ان شاء الله1 point
-
جزاكم الله خيرا 🙏 شكرا لك سيدي الكريم 🌹 لوتشرح يكون تفضلا وتكرما منكم سيدى يعنى دائماً وابدا اعمل حساب طلاب العلم امثالى والذين ينتظرون العلم بلهفة مشتاق1 point
-
وعليكم السلام ورحمه الله وبركاته واياكم ان شاء الله ولم افعل شىء وما انا الا سوى طالب علم فى مدرسه اوفيسنا وانتم اساتذتى جزاكم الله خيرا على كل ما تقدمونه فى سبيل التعلم ومساعده جميع الاخوان تعبك راحه اخى واستاذى محمد والحمد لله الذى بنعمته تتم الصالحات وان من الله عليك بالحل اللذى اراحك هل اطلعت على المرفق الاخير اخى محمد؟1 point
-
أستاذ kha9009lid الطريقتين يمكن اختراقهما بعدما عدلة كتابة كما في الصورة أدناه If DCount("*", "test1", "login='" & Me.Texte1 & "'" & " and passe='" & Me.Texte3 & "'") = 0 Then MsgBox "????" Else DoCmd.OpenForm "test2", acNormal DoCmd.Close acForm, Me.Name, acSaveNo End If Dim myWhere As String myWhere = "login='" & Me.Texte1 & "'" myWhere = myWhere & " and" '<اهم شيء هو ترك مسافة في البداية قبل and myWhere = myWhere & " passe='" & Me.Texte3 & "'" '<اهم شيء هو ترك مسافة في البداية قبل passe Debug.Print myWhere If DCount("*", "test1", myWhere) = 0 Then MsgBox "????" Else DoCmd.OpenForm "test2", acNormal DoCmd.Close acForm, Me.Name, acSaveNo End If الا أنا الطريقة الاخيرة للاستاذ jjafferr لا يمكن اخترقها بهذه الكيفية1 point
-
1 point
-
1 point
-
الشكر لله ثم لاخواننا واساتذتنا جزاهم الله خيرا بالتوفيق اخى حسين ونادينى باخى فلست سوى طالب علم مبتدىء بارك الله فيك اخى1 point
-
1 point
-
السلام عليكم اخي اريد منك خدمه اريد اضافه الفلتره حسب عدد الاشهر مثال // كشف اخر6 شهور بشرط انه ما يظهر الا الاشهر المتعلقه برقم وعند عدم وجود التاريخ يظهر رساله بدلك والشهر الي مش موجود او السنه يتم استبعاده من البحث ارجو ان اكون وصلت الفكره ولك جزيل الشكر1 point