اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

عمر ضاحى

الخبراء
  • Posts

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

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

  • Days Won

    8

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

  1. ممكن طبعا باستخدام دالة like Like "*" & "مدير" & "*" هنا هيجيب اى حاجه فيها كلمة مدير 123.rar
  2. ممكن تشوف الشرح هذا عمل بسيط لشرح الفكره
  3. اذا انت بحاجه الى اعادة توزيع الجداول يجب ان تفرق بين الجداول الثابته والمتغيره هناك جداول تحتوي على بيانات ثابته مثل اسماء الوظائف الجنسيات وجداول بيناتها متغيره مثل بيانات الموظفين هنا احنا بحاجه الى عمل شئ مهم قبل ان نبدأ بتكوين الجداول وهو معرفة ماذا سوف تكون العلاقة بين الجداول انظر الى ملف المرفق ملاحظات :- 1- تم تغير اسم جدول (الموظفين) الى (tblEmpInfo) لسهولة التعامل معه فيما بعد >> - تم تغير اسماء الحقول فى جدول lلعربي الى الانجليزي ايضا لنفس الغرض >> - تم تغير نوع البيانات فى الحقل (JobTitle) من (نص)الى رقم لكي يتم الربط به >> - تم تغير نوع البيانات فى الحقل (IDemp) من (رقم تلقائى )الى رقم حتى يمكنك التحكم فى رقم الموظف واذا احببت ان تكون تلقائى يمكن استخدام هذه الداله (افضلها) Nz(DMax("[IDemp]";"tblEmpInfo");0)+1 2-تم تغير اسم جدول (الوظيفة) الى (tblJobTitle) لسهولة التعامل معه فيما بعد >> - تم تغير اسماء الحقول فى جدول lلعربي الى الانجليزي ايضا لنفس الغرض 3- تم حذف جدول (التصنيف) لتكرار البيانات فى جدول اخر (الوظيفة)(tblJobTitle) 4- تم انشاء علاقه بين الجدولين بعد كل هذا الامور هتكون واضحه نأتي لكيف اضافة البيانات (محتاجين هنا نعمل استعلام لجمع هذه البيانات ببعض ) وهيكون مثلا اسمه (QRY_All) يلا بينا نربط كل ده بالنموذج Database32_OmarDahy.rar وهكذا تخرج لنا النتيجه اتمنى ان اكون قد اجبت على سؤالك واذا كان هناك نقطه لم تفهمها لا تتردد فى طرح اسألتك ونجن تحت امرك
  4. ممكن توضح اكثر يعنى تقصد هل تريد عدم تكرار البيانات ؟ اذا كان هذا قصدك فيجب ان يكون لكل عضو (موظف) له رقم الخاص به كتعريف له وتضع مفتاح لهذا الحقل وهنا لكن يتكرر
  5. ارفع الملف على اى سيرفر خارجي مثل المديافير
  6. انه لشرف لى اكون اول من يرد على الموضوع بارك الله فيك مجهود رائع
  7. اين المرفق ؟ وهل يمكن شرح لنا الملف يعنى علاقة الجداول ببعض ؟
  8. بارك الله فيك استاذي هذا كله بفضل تعليم اساتذتى فى المنتدي بارك الله فيهم وحفظهم من كل سوء وما ارانا الله فيهم شر وبارك الله لهم فى عافيتهم ومالهم وعلمهم
  9. حضرتك عندك كذا ملاحظه اولا يفضل ان تكون قاعدة البيانات مكتوبه بالانجليزي (حتى لا يكون هناك خطأ فى الربط ويكون العمل سهل) ثانيا اسماء الحقول متكرره فى جدولين (يجب ان يكون هناك فرق فى اسماء الجداول التى سوف تربط معا بعلاقة ثالثا ممكن فى هذه الحالة تستخدم دالة Dlookup لحل مشكلتك
  10. ممكن تجرب هذا 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 شكرا لك اخ عمر ضاحي فلا هذه المرة اشتغل معايا هل جربت هذا الحل ؟
  11. اذا كان ما تريد هو حساب العمر بين تاريخين اليك هذا النتيجه (مرفق معها مديول "داله حسابيه ") Function fAge(dteStart As Variant, dteEnd As Variant) As Variant '******************************************* 'Purpose: Accurately return the difference ' between two dates, expressed as ' years.months.days 'Coded by: raskew (from MS Access forum) 'Inputs: From debug (immediate) window ' 1) ? fAge(#12/1/1950#, #8/31/2006#) 'Calculate btw 2 specific dates ' 2) ? fAge(#12/30/2005#, Date()) ' Calculate as of today's date '******************************************* Dim intHold As Integer Dim dayhold As Integer 'correctly return number of whole months difference 'the (Day(dteEnd) < Day(dteStart)) is a Boolean statement 'that returns -1 if true, 0 if false intHold = DateDiff("m", dteStart, dteEnd) + (Day(dteEnd) < Day(dteStart)) 'correctly return number of days difference If Day(dteEnd) < Day(dteStart) Then dayhold = DateDiff("d", dteStart, DateSerial(Year(dteStart), Month(dteStart) + 1, 0)) + Day(dteEnd) Else dayhold = Day(dteEnd) - Day(dteStart) End If fAge = LTrim(Str(intHold \ 12)) & " years " & LTrim(Str(intHold Mod 12)) & " months " & LTrim(Str(dayhold)) & " days" End Function ضريبة (1).mdb
  12. بعتذر لحضرتك انا مش قادر افهم ما تريد هل تريد ان يتم الحساب كانه مثلا كحساب الاعمار ؟
  13. هو حضرتك جايب الارقام دي من فين ؟ لان حسب مثالك دي النتائج للاسف انا ضعيف فى هذا الباب ممكن نسأل اهل العلم فى هذا الجانب مثل استاذى الكريم @ابو جودي @Moosak
  14. DateDiff("ww";[txtDate1];[txtDate2]) لكن افضل ان تكون DateDiff("d";[txtDate1];[txtDate2])/7 لا فى الدالة الاولى اذا كان الفتره بين التاريخين هم 4 اسابيع ويومين كمثل فانه يحسبه 5 اسابيع DateDiff("m";[txtDate1];[txtDate2])
  15. اتفضل هذا التعديل 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 تم وضع معيارين معا واتمنى ان اكون قد وضحت الفكره لك وانك فهمت الكود كيف يعمل واذا كان هناك شئ غير مفهوم تفضل وسوف اشرحه لك او يشرحه لك اى شخص هنا
  16. ممكن تجرب هذا 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 ايه المعيار ال حضرتك تريده هل هو عدد السجلات ام اجمالى الدين للعميل ؟
  17. ممكن تجرب هذا 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 طبعا لا تنسي ان تعدل فى اسماء التقارير حسب ما تريد
  18. تفضل هذه المحاولة *تم اضافة رقم معرف فى جدول t_name&datemousade للتمييز نصيحه لازم يكون فى كل جدول حاجه اشبه بالسيريل نمبر خاص بالجدول علشان ممكن تحتاجه فيما بعد فى الفلتره والتحديد طبعا انت هتشوف ايه الحقول المطلوبه لان صعب عرض كل البيانات دي فى شاشه واحده المرفق مساعدات مرضية جديد2.rar
  19. هذا هو المطلوب بارك الله فيك
  20. نصيحه اى معيار لا يكون بالاسم دائما يكون برقم معرف لماذا ؟ لان الرقم لا يمكن ان يكون فيه احتمالات اما الاسماء فهناك يمكن ان يتكرر الاسم او الاسم فيه همزه زيادة حرف ناقص حرف زائد ..... الخ اما الرقم فالرقم هو رقم يكتب عربي يكتب انجليزي الرقم هو رقم لا يمكن ان يكون هناك احتمالات له نأتي هنا لطلب الاخر ممكن توضح اكثر هذا الاستعلام سوف يأخذ المعيار من اين ؟ بمعني اصح اين النموذج الذى سوف تبني عليه هذا الاستعلام
  21. انظر الى المرفق *تم اضافة حقل جديد فى جدول child_family حتى يكون هناك معرف خاص لكل فرد من افراد الاسرة مساعدات مرضية جديد2.accdb
  22. حلو بدأنا نقرب الموضوع طيب البيانات التى سوف تسجلها هيكون فى اى جدول (جدول التخزين)
  23. واضح ان حضرتك لم تفهمنى الموضوع اشبح بتسلسل هرمي يعنى اسم الموظف يندرج تحته بيانات البيانات تندرج تحتها بيانات اخرى منفصله هكذا تكون اما ان تكون نفس البيانات فى النموذج الفرعي هي هي التى فى combo 6 فى النموذج الرئيسي ؟ ما الفائده ؟ لازم يكون فى بيانات اخرى مختلفه من جدول اخر مختلف مثلا هكذا (كمثال) >اسم الموظف >>تحته >> اسماء عائلته (الزوجات مثلا) >>>تحته >>> اسماء الاطفال من هذه الزوجات وهكذا فى هذه اللحظه هتكون العلاقه واضحه بين الجداول وايضا واضح المطلوب برمجته
  24. اولا باشكر حضرتك على تعبك بارك الله فيك لكن للاسف الحل لم ينجح بيعطينى خطأ m7alfa.accdb
×
×
  • اضف...

Important Information