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

عمر ضاحى

الخبراء
  • Posts

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

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

  • Days Won

    10

كل منشورات العضو عمر ضاحى

  1. DateDiff("ww";[txtDate1];[txtDate2]) لكن افضل ان تكون DateDiff("d";[txtDate1];[txtDate2])/7 لا فى الدالة الاولى اذا كان الفتره بين التاريخين هم 4 اسابيع ويومين كمثل فانه يحسبه 5 اسابيع DateDiff("m";[txtDate1];[txtDate2])
  2. اتفضل هذا التعديل Private Sub Commande24_Click() Dim varcode As String Dim vars As String Dim ContRec As Integer Dim DlookupRec As String DlookupRec = Nz(DLookup("mtRole", "listecont", "code='" & Forms!Chrche_Filter!code & "'"), 0) ContRec = DCount("code", "listecont", "[code]='" & Me.code & "'") Debug.Print "ContRec >> " & ContRec Debug.Print "DlookupRec >> " & DlookupRec If Me.code.Value <> "" Then varcode = "'" & Me.code.Value & "'" If x <> "" Then x = x & " and " End If x = x & "code = " & varcode & " " End If 'If Nz(DLookup("mtRole", "listecont", "code='" & Forms!Chrche_Filter!code & "'"), 0) <> 0 Then ' ' DoCmd.OpenReport "data", acViewPreview, , x 'Else ' DoCmd.OpenReport "nodata", acViewPreview, , x 'End If If (ContRec <> 0) And (DlookupRec = 0) Then DoCmd.OpenReport "nodata", acViewPreview, , x ElseIf (ContRec >= 1 And ContRec <= 3) And (DlookupRec <> 0) Then DoCmd.OpenReport "data_01_3", acViewPreview, , x ElseIf (ContRec >= 4 And ContRec <= 9999) And (DlookupRec <> 0) Then DoCmd.OpenReport "data_4_9999", acViewPreview, , x End If End Sub ايضا المرفق Database10_1.rar تم وضع معيارين معا واتمنى ان اكون قد وضحت الفكره لك وانك فهمت الكود كيف يعمل واذا كان هناك شئ غير مفهوم تفضل وسوف اشرحه لك او يشرحه لك اى شخص هنا
  3. ممكن تجرب هذا Private Sub Commande24_Click() Dim varcode As String Dim vars As String Dim ContRec As Integer ContRec = DCount("code", "listecont", "[code]='" & Me.code & "'") Debug.Print "ContRec >> " & ContRec If Me.code.Value <> "" Then varcode = "'" & Me.code.Value & "'" If x <> "" Then x = x & " and " End If x = x & "code = " & varcode & " " End If 'If Nz(DLookup("mtRole", "listecont", "code='" & Forms!Chrche_Filter!code & "'"), 0) <> 0 Then ' ' DoCmd.OpenReport "data", acViewPreview, , x 'Else ' DoCmd.OpenReport "nodata", acViewPreview, , x 'End If If ContRec <= 0 Then DoCmd.OpenReport "nodata", acViewPreview, , x ElseIf ContRec >= 1 And ContRec <= 17 Then DoCmd.OpenReport "data", acViewPreview, , x ElseIf ContRec >= 18 And ContRec <= 999999999 Then DoCmd.OpenReport "data", acViewPreview, , x End If End Sub ايه المعيار ال حضرتك تريده هل هو عدد السجلات ام اجمالى الدين للعميل ؟
  4. ممكن تجرب هذا Private Sub Commande24_Click() Dim varcode As String Dim vars As String Dim ContRec As Integer ContRec = DCount("code", "listecont", "[code]='" & Me.code & "'") Debug.Print "ContRec >> " & ContRec If Me.code.Value <> "" Then varcode = "'" & Me.code.Value & "'" If x <> "" Then x = x & " and " End If x = x & "code = " & varcode & " " End If 'If Nz(DLookup("mtRole", "listecont", "code='" & Forms!Chrche_Filter!code & "'"), 0) <> 0 Then ' ' DoCmd.OpenReport "data", acViewPreview, , x 'Else ' DoCmd.OpenReport "nodata", acViewPreview, , x 'End If If ContRec <= 0 Then DoCmd.OpenReport "nodata", acViewPreview, , x ElseIf ContRec >= 1 And ContRec <= 17 Then DoCmd.OpenReport "data", acViewPreview, , x ElseIf ContRec >= 18 And ContRec <= 999999999 Then DoCmd.OpenReport "data", acViewPreview, , x End If End Sub طبعا لا تنسي ان تعدل فى اسماء التقارير حسب ما تريد
  5. تفضل هذه المحاولة *تم اضافة رقم معرف فى جدول t_name&datemousade للتمييز نصيحه لازم يكون فى كل جدول حاجه اشبه بالسيريل نمبر خاص بالجدول علشان ممكن تحتاجه فيما بعد فى الفلتره والتحديد طبعا انت هتشوف ايه الحقول المطلوبه لان صعب عرض كل البيانات دي فى شاشه واحده المرفق مساعدات مرضية جديد2.rar
  6. هذا هو المطلوب بارك الله فيك
  7. نصيحه اى معيار لا يكون بالاسم دائما يكون برقم معرف لماذا ؟ لان الرقم لا يمكن ان يكون فيه احتمالات اما الاسماء فهناك يمكن ان يتكرر الاسم او الاسم فيه همزه زيادة حرف ناقص حرف زائد ..... الخ اما الرقم فالرقم هو رقم يكتب عربي يكتب انجليزي الرقم هو رقم لا يمكن ان يكون هناك احتمالات له نأتي هنا لطلب الاخر ممكن توضح اكثر هذا الاستعلام سوف يأخذ المعيار من اين ؟ بمعني اصح اين النموذج الذى سوف تبني عليه هذا الاستعلام
  8. انظر الى المرفق *تم اضافة حقل جديد فى جدول child_family حتى يكون هناك معرف خاص لكل فرد من افراد الاسرة مساعدات مرضية جديد2.accdb
  9. حلو بدأنا نقرب الموضوع طيب البيانات التى سوف تسجلها هيكون فى اى جدول (جدول التخزين)
  10. واضح ان حضرتك لم تفهمنى الموضوع اشبح بتسلسل هرمي يعنى اسم الموظف يندرج تحته بيانات البيانات تندرج تحتها بيانات اخرى منفصله هكذا تكون اما ان تكون نفس البيانات فى النموذج الفرعي هي هي التى فى combo 6 فى النموذج الرئيسي ؟ ما الفائده ؟ لازم يكون فى بيانات اخرى مختلفه من جدول اخر مختلف مثلا هكذا (كمثال) >اسم الموظف >>تحته >> اسماء عائلته (الزوجات مثلا) >>>تحته >>> اسماء الاطفال من هذه الزوجات وهكذا فى هذه اللحظه هتكون العلاقه واضحه بين الجداول وايضا واضح المطلوب برمجته
  11. اولا باشكر حضرتك على تعبك بارك الله فيك لكن للاسف الحل لم ينجح بيعطينى خطأ m7alfa.accdb
  12. اين جدول المرضى ال هاخذ منه combo6 له البيانات
  13. هل هذا الذى فى جدول T_aa ؟ اين الجدول الخاص به ؟ اعتقد انه فى جدول child_family صحيح ؟
  14. اعتذر لك مش قادر افهم حضرتك يعنى المفترض لما اختار اسم المريض من combo2 ايه ال يظهر لى فى combo6 ولما اختار من combo6 ايه ال يظهر لى فى النموذج الفرعي
  15. الحمد لله انك قد توصلت للحل هذه فكره كنت اظنها غير مفيده اكثر من انها تكون مفيده لكن مع ذلك حبيت اشاركها لعل ^_^ لكن طلع الحل فى مكان اخر فالحمد لله انها اتحلت المشكله مع حضرتك واعتذر عن تقديم حل حقيقى لك لقلة علمي
  16. اسمح لى اضع ملاحظه قد تكون ليس لها اى فائده لكن حابب اشارك معك فكره غبيه كده جرب تعيد ترتيب الاحتمالات مثلا اجعل ال null اولا ومن ثم الى الاحتمال التالى فالتالى ^_^
  17. جرب المرفق هل هذا ما تريد ؟ مساعدات مرضية جديد2.accdb
  18. هذا مخالف يمكن ان تستخدم داله if مثل If IsNull(المعيار) Then الحالة الاولى Else الحالة الثانيه End If
  19. السلام عليكم ورحمة الله وبركاته رمضان كريم ^_^ ويتقبل الله منا ومنكم صالح الاعمال انا معي دالة لكن مش عارف اوصل للصيغه الصحيحه لحلها الهدف من الداله هو الوصول لاعلى قيمه (رقم) فى جدول تحت معيارين الاول مطابقة رقم الموظف الثاني ان يكون داخل السنه الحالية اولا الداله بهذه الصيغه تعمل جيدا =Nz(DMax("[NoM7alfa]";"tblM7alfa";"[EmpNoM7alfa]=[Forms]![frmSearch]![SubfrmQTGetAlll].[Form]![Emp_No]" And [M7alfaDate]<=#31/12/2022#);0)+1 لكن لما حبيت اجعل المعيار الثاني يكون تلقائى فكرت باستخدام دالة Between و ايضا DateSerial Between DateSerial(Year(Date); Month(Date); 1) AND DateSerial(Year(Date); Month(Date) + 1; 0) حتى احصل على تاريخ بين اول السنه واخر السنه الحاليه الان اريد ان ادمج بين الدالتين فكرت ان اجعلها هكذا =Nz(DMax("[NoM7alfa]";"tblM7alfa";"[EmpNoM7alfa]=[Forms]![frmSearch]![SubfrmQTGetAlll].[Form]![Emp_No]" And [M7alfaDate]<= Between DateSerial(Year(Date); Month(Date); 1) AND DateSerial(Year(Date); Month(Date) + 1; 0) );0)+1 لكنها لا تعمل ويظهر لى خطأ فى تركيب الداله
  20. انت ممكن فى النموذج والتقرير تجمع بين الحقل الرقمي والنص معا باستخدام & وهذا ايضا يتطلب ان يكون هناك حقل نصي فى الاساس وايضا حقل رقمي وتجمع بينهم فى حقل ثالث او مباشرتا فى النوذج والاستعلام والتقرير
  21. هناك الكثير من المواضيع التى تتحدث عن هذا الامر ممكن حضرتك تراجعها واذا واجهتك مشكله اثناء التنفيذ برجاء وضع موضوع موضح فيه المشكله تحديدا مع مرفق اتركك الان مع مواضيح تخص طلبك وسوف تستفاد منها ان شاء الله
  22. يا هلا انت قدامك طريقه من اثنين (حسب رأئي الذى قد يكون خطأ) اما انك تعمل حقل فى النموذج الرئيسي يكون فيه رقم المريض وتعمل استعلام عن بيانات المريض بناءا على معيار رقم المعرف فى النموذج الرئيسي ورقم المعرف فى النموذج الرئيسي يكون قائمة مصدرها ارقام واسماء المرضي من الجدول وبكده عند اختيار رقم المعرف تظهر جميع البيانات للمريض او تستخدم دالة DLookUp كمثال :- DLookUp("[name_marid]";"[t_name&datemousade]";"[id_name&family] ="& [Forms]![T_ALL]![id] &"") وتضعها فى كل حقل تريد استدعاء البيانات طبعا لا تنسي تغير اسم الشئ الذى تريد استدعائه مثل انا هنا باستدعي الاسم [name_marid] اتمنى اكون شرحة لك الحل
  23. نفس النتيجه مرفق ملف للنظ والوقوف على المشكله وين S7.rar
×
×
  • اضف...

Important Information