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

jjafferr

أوفيسنا
  • Posts

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

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

  • Days Won

    408

كل منشورات العضو jjafferr

  1. وعليكم السلام أخي السؤال غير واضح رجاء تعطينا مثال او مثالين نقتدي بهم ، والمثال بالتواريخ (وليس كلاما فقط) ، يعني ماهو التاريخ ، وماذا تريد من نتائج التاريخ ، سواء ايام او اشهر جعفر
  2. أخي كريمو رجاء ملاحظت بيانات كريمو17 في النموذج FrmCridi و تلاحظ بياناته الجدول tbl_Avoid_Dates ، ثم تفتح النموذج Frm_kassem_months وتقارن النتائج. هذه مرحلة اولى ، فلذلك لم نغير سوى المجاميع ، ولم نتطرق للأشهر ، فاذا عبرنا هذه المرحلة ، فسننتقل الى المرحلة التي تليها. انا تركت لك وحدة نمطية بالنسبة للأشهر ، فهي تدقق في الجدول tbl_Avoid_Dates باسم EmployeeID ، واذا عنده عفو ، فانها لا تسمح بظهور الاسم في ذلك الشهر ، انظر الى هذا المثال ، وتستطيع نسخ الحقل لجميع التقارير التي لها علاقة بالسداد: جعفر 11.1.2015.March.accdb.zip
  3. عفوا على هذا الخطأ الحقل كان بصيغة رقم ، وجربت الكود عليه ، لكني غيرته الى نص ولم اجرب الكود جربه الان لوسمحت الكود اصبح: Else a = Nz(DMax("Val(Right([SeqNumber], 4))", "ClientExchange", "[DateExchange]=#" & Date & "#")) + 1 Me![SeqNumber] = Format(Me.WindowID, "00") & "-" & Format(a, "0000") ' Me![OUT-NUM] = Me![OUT-NUM] + 1 End If جعفر 39.Exchange.mdb.zip
  4. على بركة الله بس لازم تتأكد ان حقل BornNo لا يحتوي على رقم ، وإلا فإنك ستكتب عليه الرقم الجديد لهذا السبب استخدمت كود للتأكد بان الحقل فاضي ، واذا ما كان فاضي ، فالكود يسألك اذا كنت تريد تغيره هذا بداية الكود (الكود الكامل موجود في مشاركتي رقم 5): 'check if BornNo is in the Record If Len(Me.BornNo & "") <> 0 Then جعفر
  5. السلام عليكم اخي ابوزياد انت طلبت التنسيق التالي: على هذا الاساس ، يكون الكود في برنامجك كالتالي: Else a = Nz(DMax("[SeqNumber]", "ClientExchange", "[DateExchange]=#" & Date & "#")) + 1 Me![SeqNumber] = Format(Me.WindowID, "00") & "-" & Format(a, "0000") ' Me![OUT-NUM] = Me![OUT-NUM] + 1 End If جعفر 39.Exchange.mdb.zip
  6. طريقة جميلة أخي رمهان جعفر
  7. حياك الله أخوي أبوخليل
  8. وهذا هو الكود: Private Sub Cmd0_DblClick(Cancel As Integer) 'BornNo = Nz(DMax("[EarNo]", "AnimalsRecords" Or "BornsRecords", "[CowNo]= form![CowNo] and [Season]=form![Season]"), 0) + 1 'A = DMax("[EarNo]", "AnimalsRecords", "[CowNo]=" & Me.CowNo & " and [Season]=" & Me.Season) 'check if BornNo is in the Record If Len(Me.BornNo & "") <> 0 Then Dim Msg, Style, Response Msg = "Ear Number already exists in this Record, Do you want to over write?" Style = vbYesNo + vbCritical + vbDefaultButton2 ' Define buttons. Response = MsgBox(Msg, Style) If Response = vbYes Then ' User chose Yes, over write A = Nz(DMax("[EarNo]", "AnimalsRecords"), 0) + 1 B = Nz(DMax("[EarNo]", "BornsRecords"), 0) + 1 BornNo = A If B > BornNo Then BornNo = B Else ' User chose No. Exit Sub End If End If End Sub جعفر
  9. وعليكم السلام ما يصير Dsum من الجدولين في خطوة واحدة لازم تطلب الرقم الاعلى من الجدول الاول ، ثم الرقم الاعلى من الجدول الثاني ، ثم تقارن بين الرقمين ، وتختار الاعلى ، ثم تضيف اليه 1 جعفر
  10. أختي الفاضلة الرجاء النظر في مشاركتي رقم 8 ، ففيها ما اردتي ، ولكن: 1. الاكسس يعمل على نظام السجلات ، يعني سجل تحت سجل آخر (وليس عمود جنب عمود آخر) ، وقد عملت لك ذلك في مشاركتي رقم 8 اعلاه ، 2. الطريقة اللي انتي كتبتيها ، وهي بإستخدام الاعمدة (وليس السجلات). نعم نستطيع ان نطلب من الاكسس عمل اللي تريديه ، ولكنه غير صحيح. شوفي المثال التالي: بعد ما خلصتي من البرنامج (بطريقتك ، يعني بالاعمدة) ، يأتيك طلب بإضافة عدد المهندسين ، والعمال!! فالذي يجب ان تعمليه ، هو ان تدخلي التقرير ، وتعملي عليه التعديلات لكل وظيفة جديدة (يعني افقيا ، بنفس طريقة الاكسل) ، بينما في طريقتي ، فبمجرد إضافة الوظائف في الجدول ، التقرير يأخذ البيانات ويعطيك التقرير الصحيح ، وبدون تغيير اي شئ في التقرير. يعني: عمل الاكسل عمود جنب عمود ، بينما عمل الاكسس سطر تحت سطر جعفر
  11. وعليكم السلام أخي وائل انا فتشت في قوانين المنتدى ، بس للأسف الظاهر انهم تجاهلوا بعض الشروط ، لهذا ، فانا اضع بين يديك قانون جعفر: 1: ممنوع وضع مشاركات جديدة لها علاقة بالاكل ، إلا بعد الوجبات يعني تريدني ارد على سؤالك ، او ارد على بطني اللي يريد الزبيدي عُدنا للموضوع 1. انا غيرت مسمى الحقول الصفراء في النموذج الرئيسي الى: 2. في النموذج الفرعي ، في الحدث الحالي ، وضعت هذا الكود: يعني ، لازم تكون على السجل اللي تريد تعرف معلوماته ، وعليه بتحصل على النتيجة Private Sub Form_Current() On Error GoTo err_Form_Current Me.Parent.itemcode_count = 0 Me.Parent.itemcode_id = Me.itemcode Set rst = Me.RecordsetClone rst.MoveLast: rst.MoveFirst RC = rst.RecordCount For I = 0 To RC If Me.Parent.itemcode_id = rst!itemcode Then Me.Parent.itemcode_count = Me.Parent.itemcode_count + 1 End If rst.MoveNext Next I Exit Sub err_Form_Current: If Err.Number = 3021 Then 'no records Exit Sub Else MsgBox Err.Number & vbCrLf & Err.Description End If End Sub بس الظاهر ان عندك حدث آخر يتدخل كل شوي ، فلازم تعالجه علشان هذا الكود يشتغل عدل جعفر 41.AA.mdb.zip
  12. آسف وحقك علي هذا الرابط الصح: http://www.officena.net/ib/index.php?showtopic=59183 جعفر
  13. حياك الله أخي ابوزياد شو المطلوب ، شو اللي لازم انظر فيه ، وش المطلوب بعد الاطلاع؟ جعفر
  14. أختي الفاضلة ، المثال اللي ارفقتيه انت ، كان فيه الناقص ، وعلى هذا الاساس عملت البرنامج على العموم ، تفضلي التغيير 1. تم تغيير الحساب في الاستعلام ، 2. وعلى اساسه ، نرى النتيجة في التقرير: واذا لم يكن هذا قصدك ، فرجاء ان تعملي المطلوب فب الاكسل ، ثم تضعين لنا المثال. جعفر 40.tast66.accdb.zip
  15. السلام عليكم ورحمة الله وبركاته أخي كريمو الثاني وأستاذنا الفاضل محمد طاهر أسمحوا لي ان ادلوا بدلوي 1. القيت نظرة على كود النموذج Frm_kassem_months ، ولم استطع تفكيكه (في الواقع ما دوخت راسي في تفكيكه ) ، ولما رأيت ان المشكلة هي في إضافة مبالغ الاشهر المحذوفة ، رأيت ان الافضل ان اترك الكود كما هو ، وفي النهاية اجمع قيمة مبالغ الاشهر المحذوفة ، ثم اطرحها من المجاميع (رجاء المتابعة وملاحظة النتيجة في #4 في الاسفل) ، 2. أضفت حقل جديد للجدول tbl_Avoid_Dates ، اسميته DiscountPerMonth وهو الاقتطاع الشهري (حيث لاحظت ان كل استقطاع يكون له قيمته الخاصة) ، 3. فاصبح النموذج frm_Avoid_Dates يأخذ قيمة هذا الحقل من النموذج الفرعي FrmCridi_sub من الحقل DiscountPerMonth ، ثم يحفظه في الجدول tbl_Avoid_Dates ، في الحقل DiscountPerMonth. 4. (تابع من #1) في النموذج Frm_kassem_months ، في الحدث الحالي ، كتبت الكود لجمع مبالغ الاشهر المحذوفة ، وحساب عدد الاشهر المحذوفة (لا علاقة لها هنا ، ولكن قد يستفاد منها في مكان آخر) ، وثم طرح المجوعين لنحصل على المجموع الاصل (اي المجموع الذي لم يغيره الاشهر المحذوفة): 'lets check if this Employee have a void dates vTotal_Amounts = Nz(DSum("[DiscountPerMonth]", "tbl_Avoid_Dates", "[Name_ID]= " & Me.txtEmployeeID), 0) vTotal_Months = Nz(DCount("*", "tbl_Avoid_Dates", "[Name_ID]= " & Me.txtEmployeeID), 0) txtToalModan = SSS_Cridi + SSS_ElectroMeng + SSS_OtherDiscount - vTotal_Amounts txtBagi = Nz([txtToalModan], 0) - Nz(txtToalMonthsDiscount, 0) بعبارة أخرى ، من الصعب تغيير الكود الاصلي ، فنستطيع بواسطة حساب معلومات الاشهر المحذوفة من الجدول frm_Avoid_Dates ، واستعمالها في الاماكن التي تحتاج الى تضبيط قد لا تكون هذه الطريقة محبذة ، لأننا يجب ان نستعملها في التقارير كذلك ، ولكن ، اذا لم نستطع تغيير الكود الاصلي ، فنستطيع التحايل عليه جعفر
  16. السلام عليكم هل هذا المطلوب؟ 1. نعمل استعلام نحسب فيه عدد الوظائف: 2. وهذه نتيجة الاستعلام: 3. والآن للاعداد الافتراضية: يمكنك ان تدخلين هذا الرقم يدويا في الجدول ، ولكني ادخلتهم بالطريقة التي اعتقد بأنها صحيحة ، وهي العدد المطلوب لكل ادارة: 4. نعمل استعلام نحسب فيه عدد الوظائف الافتراضية: 5. وهذه نتيجة استعلام عدد الوظائف الافتراضية: 6. والآن عندنا استعلامين بهما المعلومات التي نريد ، لذا سنربطهما مع بعض ، لنحصل على النتائج: 7. وهذه النتيجة: 8. الآن للنتائج في الاستعلام: 9. والنتيجة: هل هذا المطلوب؟ جعفر 40.tast66.accdb.zip
  17. اعتقد الجدول بوضعه الحالي أفضل ، حيث يكلفك حقل واحد وهو SeqNumber ، بينما لو عملت جدول ثاني ، فبالاضافة الى انه يكلفك جدول آخر ، يجب ان تعمل علاقة بين الجدولين ، وفي كل عملية تريد فيها الترقيم ، تضطر الى استعلام يكون فيه الجدولين مرتبطين بعلاقة لكن ، الشخص الافضل في اختيار الطريقة الصحيحة هو انت ، وبما تعرفه عن برنامجك حاليا على ما هو عليه ، وحسب خططك المستقبليه له جعفر
  18. وعليكم السلام أخي سهلة SeqNumber = Nz(DMax("[SeqNumber]", "ClientExchange", "[DateExchange]=#" & Date & "#")) + 1 جعفر
  19. انا ما عملتها اعمل حقل ثالث في الجدول ، واعمل هذا الحقل في النموذج ، واعمل في الجدول والنموذج في تنسيق هذا الحقل: > وننتظر منك النتيجة جعفر
  20. آه نسيت ماذا سيحدث اذا وضعنا > في تنسيق النموذج وتنسيق الجدول لنفس الحقل جعفر
  21. سلام شباب ايش رايكم ، حل بدون كود طريقتين ، اختر اللي يعجبك 1. في النموذج ، للحقل A1 فقط: 2. في الجدول ، للحقل A2 فقط: 3. التجربة (انقر على الصورة حتى ترى تتحرك): 4. والنتيجة في الجدول: جعفر 38.Small_Letters.mdb.zip
  22. شكرا استاذنا الفاضل أبوخليل كان في سؤال آخر عن نفس الموضوع ، كنت مشارك فيه هنا: http://www.officena.net/ib/index.php?showtopic=60354 ولقد تركت فيه رابط هذا الموضع لتعم الفائدة جعفر
  23. وهذه طريقة اخرى مع مثال من استاذنا أبوخليل http://www.officena.net/ib/index.php?showtopic=60383 جعفر
×
×
  • اضف...

Important Information