بحث مخصص من جوجل فى أوفيسنا
Custom Search
|
-
Posts
4193 -
تاريخ الانضمام
-
تاريخ اخر زياره
-
Days Won
179
نوع المحتوي
التقويم
المنتدى
مكتبة الموقع
معرض الصور
المدونات
الوسائط المتعددة
كل منشورات العضو Foksh
-
لا اعلم طبيعة العمل في مشروعك الذي تقوم بالتطبيق عليه ، ولكن كما رأيت في ملفك المرفق تم التطبيق بنفس الخطوات التي ذكرتها لك سابقاً.. او ارسل نسختك ليتم التنفيذ عليها.
-
ولا يهمك اخي سامر .. 😇
-
طيب أخي @2saad ، حتى لا نحمّل الاستعلام مصدر سجلات التقرير حملاً زائداً ( من وجهة نظري ) ، قمت بإنشاء دالة بسيطة تقوم بجلب التلاميذ الذين الدمج لهم <> 1 ، كالتالي :- Public Function GetDamgStudents(lagnaID As Long) As String Dim sql As String Dim hasRecords As Boolean sql = "SELECT Studentname FROM Tbl_student WHERE id_lagna = " & lagnaID & " AND damg_id <> 1 AND alsaf_Id = " & Forms!frm_Reports!ComboSaf With CurrentDb.OpenRecordset(sql) hasRecords = (Not .EOF) Do Until .EOF GetDamgStudents = GetDamgStudents & !Studentname & vbCrLf .MoveNext Loop .Close End With If Not hasRecords Then GetDamgStudents = "لا يوجد تلاميذ دمج لهذه اللجنة" Else GetDamgStudents = Trim(GetDamgStudents) End If End Function وعليه قمت بإنشاء مربع نص = "lstDamgStudents" مصدر بياناته استدعاء الدالة بهذا الشكل :- =GetDamgStudents([id_lagna]) وهذه صورة للنتيجة ، علماً أنك لم تقم بارفاق الملف الصحيح كما في الصورة ( ولا أعتقد أنه ضروري ، بما انك تنقل التعديلات الي مشروعك الرئيسي ) وعليه ، يصبح تعديلي في هذا الملف :- Data21.zip * ملاحظة ، تم عمل تنسيقات بسيطة لاخفاء مربع النص عندما لا يكون في اللجنة تلاميذ دمج ، وتستطيع الاستغناء عن هذه الفكرة طبعاً .
-
ان كان التعبير والشرح غير كافي ، فارسل صورة توضح المطلوب يا صديقي ( على اعتبار انه نفس الطلب الرئيسي لك )
-
انصحك بالبدء بفهم طبيعة تركيب وانشاء استعلام ، ثم توسع للذهاب الى الفلترة من خلال الـ VBA 😉 قمت بانشاء الاستعلام في وضع التصميم أولاً وتعريف المعاملات من خلال الزر ، ثم تضمن الشروط . حيث قمت بإضافة الشروط كما في الصورة التالية مراعياً اظهار السجلات كاملة عند فتح النموذج :- أما فيما يخص جزء PARAMETERS ( أو ما يعرف بالمعاملات ) وشرحها ، فهي كالآتي بشرح مختصر بسيط :- يتم توجيه الحديث مباشرة أنه يا آكسيس هناك بعض القيم سيتم إدخالها من النموذج ( Frm_Bons ) ، فقم بحفظها مؤقتاً لاستخدامها في الفلترة التي سيتم تطبيقها . وتم تطبيق جزء الشروط ( WHERE ) ، كما رأيت سابقاً مع استخدام الدالة Like لعدم التقيد بقيمة محددة كاملة ، بل يمكنك كتابة جزء من القيمة النصية المطلوب البحث عنها والفلترة ، بمعنى أصح وإن جاز التعبير هو نظام يشبه محركات البحث المعتادة مثل جوجل . يعني باختصار ، الاستعلام يعمل عمل فلتر الماء على مراحل يمرر البيانات عبر مرشح العميل أولاً ، ثم مرشح نوع البون ، ثم مرشح التاريخ ، ثم مرشح المنتج . وبالتالي أفضل الاستعلام أكثر من الفلترة من خلال الأكواد لسهولة ومرونة التعامل معه بشكل بصري أكثر من الكتابي . هذا والله أعلم طبعاً 😇
-
استبدل الإستعلام السابق ، بالاستعلام التالي :- PARAMETERS [Forms]![Frm_Bons]![cmpagen] Long, [Forms]![Frm_Bons]![cmpkind] Text ( 255 ), [Forms]![Frm_Bons]![fromdate] DateTime, [Forms]![Frm_Bons]![todate] DateTime, [Forms]![Frm_Bons]![cmb_prod] Text ( 255 ); SELECT tbl_Bons.Bon_nu, tbl_Bons.BonDate, tbl_Bons.Bon_kind, tbl_Bons.agent_id, tbl_Bons.carNo, tbl_Bons.driver_nm, tbl_Bons.Prod_no, tbl_Bons.Qty, tbl_Bons.sale_price, tbl_Bons.Remark, [sale_price] * [Qty] AS txtall FROM tbl_Bons WHERE (tbl_Bons.agent_id=Forms!frm_Bons!cmpagen Or Forms!Frm_Bons!cmpagen Is Null) And (tbl_Bons.Bon_kind Like "*" & Forms!Frm_Bons!cmpkind & "*" Or Forms!Frm_Bons!cmpkind Is Null) And ((tbl_Bons.BonDate>=Forms!Frm_Bons!fromdate Or Forms!Frm_Bons!fromdate Is Null) And (tbl_Bons.BonDate<=Forms!Frm_Bons!todate Or Forms!Frm_Bons!todate Is Null)) And (tbl_Bons.Prod_no Like "*" & Forms!Frm_Bons!cmb_prod & "*" Or Forms!Frm_Bons!cmb_prod Is Null); تطبيق الفلترة على 4 مراحل كما تريد ، ومن رأيي الإستعلام أفضل لك للتعامل مع الفلترة المتعددة
-
تريد الأسهل أم الأصعب لك ولعملك ؟؟ ممكن توضح أكثر ؟
-
العفو أخي الكريم .. لا تنسى إغلاق مواضيعك 😇 .
-
كلامك سليم 100% ، ولكن هناك حل لهذه المشكلة أيضاً نستخدم هذا الكود في حدث "في الحالي - On Current" مع الكود السابق Private Sub Form_Current() Dim bVisible As Boolean bVisible = (Me.total_out <> 0) With Me.CmdM .Transparent = Not bVisible .Enabled = bVisible End With With Me.CmdL .Transparent = Not bVisible .Enabled = bVisible End With With Me.CmdB .Transparent = Not bVisible .Enabled = bVisible End With End Sub DD-JO_2010.accdb
-
وعليكم السلام ورحمة الله وبركاته .. فليسمح لي أخي @kkhalifa1960 ، لم لا نستخدم الدالة "Transparent" !!!! في حدث عند الرسم ( On Paint ) للجزء ( التفاصيل - Detail ) للنموذج ، نكتب الكود التالي :- If Me.total_out = 0 Then Me.CmdM.Transparent = True Me.CmdL.Transparent = True Me.CmdB.Transparent = True Else Me.CmdM.Transparent = False Me.CmdL.Transparent = False Me.CmdB.Transparent = False End If والنتيجة في الصورة التالية :- مرفق مثال الأستاذ خليفة مشكوراً على طرحه ، مع أن الأحق بإرفاق ملف هو أخونا @jo_2010 ، حتى لا نقع في اختلاف الأفكار والتسميات .... إلخ DD-JO_2010.accdb
-
وعليكم السلام ورحمة الله وبركاته ،، أخي الكريم ، قم بتعديل استعلام النموذج الى الاستعلام التالي :- PARAMETERS [Forms]![Frm_Bons]![cmpagen] Long, [Forms]![Frm_Bons]![cmpkind] Text ( 255 ), [Forms]![Frm_Bons]![fromdate] DateTime, [Forms]![Frm_Bons]![todate] DateTime; SELECT tbl_Bons.Bon_nu, tbl_Bons.BonDate, tbl_Bons.Bon_kind, tbl_Bons.agent_id, tbl_Bons.carNo, tbl_Bons.driver_nm, tbl_Bons.Prod_no, tbl_Bons.Qty, tbl_Bons.sale_price, tbl_Bons.Remark, [sale_price] * [Qty] AS txtall FROM tbl_Bons WHERE (tbl_Bons.agent_id=Forms!frm_Bons!cmpagen Or Forms!Frm_Bons!cmpagen Is Null) And (tbl_Bons.Bon_kind Like "*" & Forms!Frm_Bons!cmpkind & "*" Or Forms!Frm_Bons!cmpkind Is Null) And ((tbl_Bons.BonDate>=Forms!Frm_Bons!fromdate Or Forms!Frm_Bons!fromdate Is Null) And (tbl_Bons.BonDate<=Forms!Frm_Bons!todate Or Forms!Frm_Bons!todate Is Null)); وفي مربعات النص الخاصة بالتواريخ ( من - إلى ) و مربعي التحرير والسرد ( cmpagen و cmpkind ) اجعل لهم الحدث بعد التحديث = Me.Requery أما بخصوص الزر CmdRemoveFilter لأزالة الفلترة ، فقد تم تعديله كالتالي :- Private Sub CmdRemoveFilter_Click() Me.FilterOn = False Me.cmpagen = Null Me.cmpkind = Null Me.fromdate = Null Me.todate = Null Me.Requery End Sub ملفك بعد التعديل :- 10.accdb
-
استفسار : هل توجد طريقة لتغيير واجهة موقع اوفسينا الى العربية
Foksh replied to sm44ms's topic in قسم الأكسيس Access
هههههههه ، هو لفظ تعودت عليه ، ولكن العبارة الصحيحة فعلاً "اختر تمت الإجابة" سيتم عمل مسح للكاش بعد هذه الرسالة -
وعليكم السلام ورحمة الله وبركاته ، أهلاً بك في مشاركتك الأولى معنا أخي الكريم . ونتمنى أن تجد الفائدة والمعلومة التي تبحث عنها , دعني ألفت انتباهك الى ضرورة التقيد بسياسة وقوانين المنتدى ، بحيث يتم ارفاق ملف بسيط للمشكلة وشرح وافي وكافي للمطلوب ، حتى تتوضح اصورة لمن يقرأ مشكلتك ويساهم في ايجاد حل مناسب لها . أهلاً وسهلاً ، وشكراً لك رحابة صدرك كما أود لفت انتباهك الى ان زر اختيار افضل إجابة مخصص لتختار الإجابة التي حققت طلبك بشكل كامل . وهي دلالة على ان الموضوع قد تم انهائه بحل المشكلة .
-
أخي طاهر ، الواضح من خلال الكود انك تعتمد على مربع النص IDM كشرط للحصول على رقم الهامش للزوجة ، ولكن!! مربع النص IDM عند الكود التالي :- If SearchListZ.ListIndex = -1 Then Me.IDM = SearchListZ.Column(0, 1) Else: Me.IDM = SearchListZ.Column(0) Cr = DLookup("Hamech", "Tbl_ZAWJA", "IDM =" & Me.IDM) If Cr = 4 Then MsgBox " تنبيه ! هذه الزوجة متوفيه" DoCmd.Close acForm, "A1" تكون قيمته = تاريخ ميلاد الزوجة ، وهنا لا تتم المقارنة بالشرط بشكل صحيح . لذا ، انشئ مربع نص جديد على سبيل المثال Tx_IDM ، واجعل قيمته = رقم الزوجة Me.Tx_IDM = [Forms]![Search_Frm]![IDM] ثم عدل الجزء السابق ليصبح :- If SearchListZ.ListIndex = -1 Then Me.IDM = SearchListZ.Column(0, 1) Else: Me.IDM = SearchListZ.Column(0) Cr = DLookup("Hamech", "Tbl_ZAWJA", "IDM =" & Me.Tx_IDM) If Cr = 4 Then MsgBox " تنبيه ! هذه الزوجة متوفيه" DoCmd.Close acForm, "A1" وعليه سيظهر لك مسج انه هذه الزوجة متوفية ، ونفس الشيء عند الزوج في مربع النص IDP ، هو شرط لجلب قيمة الهامش ، ولكن قيمته = تاريخ ميلاد الزوج قمت بذكر المشكلة وتركت الحل لك لتتبين لك الأمور بشكل واضح .
-
أخي طاهر ، الواضح من خلال الكود انك تعتمد على مربع النص IDM كشرط للحصول على رقم الهامش للزوجة ، ولكن!! مربع النص IDM عند الكود التالي :- If SearchListZ.ListIndex = -1 Then Me.IDM = SearchListZ.Column(0, 1) Else: Me.IDM = SearchListZ.Column(0) Cr = DLookup("Hamech", "Tbl_ZAWJA", "IDM =" & Me.IDM) If Cr = 4 Then MsgBox " تنبيه ! هذه الزوجة متوفيه" DoCmd.Close acForm, "A1" تكون قيمته = تاريخ ميلاد الزوجة ، وهنا لا تتم المقارنة بالشرط بشكل صحيح . لذا ، انشئ مربع نص جديد على سبيل المثال Tx_IDM ، واجعل قيمته = رقم الزوجة Me.Tx_IDM = [Forms]![Search_Frm]![IDM] ثم عدل الجزء السابق ليصبح :- If SearchListZ.ListIndex = -1 Then Me.IDM = SearchListZ.Column(0, 1) Else: Me.IDM = SearchListZ.Column(0) Cr = DLookup("Hamech", "Tbl_ZAWJA", "IDM =" & Me.Tx_IDM) If Cr = 4 Then MsgBox " تنبيه ! هذه الزوجة متوفيه" DoCmd.Close acForm, "A1" وعليه سيظهر لك مسج انه هذه الزوجة متوفية ، ونفس الشيء عند الزوج في مربع النص IDP ، هو شرط لجلب قيمة الهامش ، ولكن قيمته = تاريخ ميلاد الزوج قمت بذكر المشكلة وتركت الحل لك لتتبين لك الأمور بشكل واضح .
-
لماذا في الخاص أخي طاهر ,, المنتدى قائم على الفائدة العامة وللجميع ، أم هل هو صعب عليك أن تقوم بفتح موضوع جديد !!
-
استفسار : هل توجد طريقة لتغيير واجهة موقع اوفسينا الى العربية
Foksh replied to sm44ms's topic in قسم الأكسيس Access
العفو اخي الكريم ، فضلاً وليس أمراً .. لا تنسى اغلاق الموضوع باختيار افضل اجابة . -
كيف يمكن فتح النموذج المنبثق في الأعلى دائماً ؟
Foksh replied to sm44ms's topic in قسم الأكسيس Access
ارسل ملفك !! -
أخي طاهر , هل هذا الطلب نفس المشكلة السابقة ؟؟؟؟؟؟؟؟؟؟؟ من الواضح أنه لا ، ليس له صلة وعلاقة بالمشكلة الأولى . انصحك بفتح موضوع جديد كي لا يكون في نفس الموضوع أكثر من مشكلة ولن يستدل أحد على المشاكل من خلال العنوان . على الرغم من أنه عند اختيار "مبروكه منيح11" ، لم تظهر لي الرسالة ان "هذه الزوجة متوفية" . شكراً لك سعة صدرك
-
كيف يمكن فتح النموذج المنبثق في الأعلى دائماً ؟
Foksh replied to sm44ms's topic in قسم الأكسيس Access
وعليكم السلام ورحمة الله وبركاته ,, من تبويب ( Other - أخرى ) من خصائص النموذج ، اجعل قيمة ( مشروط - Modal ) = نعم -
استفسار : هل توجد طريقة لتغيير واجهة موقع اوفسينا الى العربية
Foksh replied to sm44ms's topic in قسم الأكسيس Access
أخي الكريم وعليكم السلام ورحمة الله وبركاته.. العنوان ليس له دلالة على موضوع المشكلة ، هذا من جهة. من جهة أخرى وتصحيحاً لخطأ مطبعي ، اسم الموقع أوفيسنا 😇 . ثالثاً انزل الى نهاية الصفحة ستجد في الأسفل زر Language - اللغة ، فمنه تستطيع تغيير لغة الموقع . اذا لم تنجح ، فقط قم بحذف الكاش من المتصفح الخاص بك وحاول مرة أخرى. -
بعد التدقيق في فكرة أستاذي ومعلمي @ابوخليل ، تبين لي ان المتغير لا يتم حجزه بشكل مناسب قبل فتح التقرير ، وهنا خطر لي تعديل بسيط بحيث نعتمد على قيمة CheckBox في النموذج A1 والذي هو مفتاح الربط في فكرتي ، بحيث اذا كان فارغاً يتم تعديل القيمة كما فعل أستاذي في فكرته ، وإلا فيتم عرض النص الأصلي ( بين عرض اسم الزوج أو الزوجة ) جرب تعديل حدث عند التحميل للتقرير بهذا الأسلوب :- Private Sub Report_Load() Me.Rep1.Value = Rept1 Me.Rep2.Value = Rept2 'المعلومات الشخصية Me.Nom.Value = TempVars("Nom") Me.Prenom.Value = TempVars("Prenom") Me.Date_Naiss.Value = TempVars("Date_Naiss") Me.Lieu_Naiss.Value = TempVars("Lieu_Naiss") Me.Nom_Per.Value = TempVars("Nom_Per") Me.Nom_Mer.Value = TempVars("Nom_Mer") Me.CheckBox.Value = TempVars("CheckBox") Me.Prenom1.Value = TempVars("Prenom1") Me.ep = IIf(([CheckBox]) = 0, "أرملة", "حرم") 'الشاهد الاول Me.C1.Value = TempVars("C1") Me.N1.Value = TempVars("N1") Me.d1.Value = TempVars("D1") Me.L1.Value = TempVars("L1") 'الشاهد الثاني Me.C2.Value = TempVars("C2") Me.N2.Value = TempVars("N2") Me.D2.Value = TempVars("D2") Me.L2.Value = TempVars("L2") ''السكن وبلدية الاقامة Me.N4.Value = TempVars("N4") Me.N5.Value = TempVars("N5") If Not IsNull(Forms!a1!CheckBox) Or (Forms!a1!CheckBox) <> "" Then text1 = [Prenom] & " " & [Nom] & " " & [ep] & " " & [Prenom1] Else text1 = [Prenom] End If End Sub
-
تمت الإجابة بكل التفاصيل في هذه المشاركة ، في الموضوع : عمل كشفين لجنة
-