بحث مخصص من جوجل فى أوفيسنا
![]()
Custom Search
|
-
Posts
9915 -
تاريخ الانضمام
-
تاريخ اخر زياره
-
Days Won
404
نوع المحتوي
المنتدى
مكتبة الموقع
معرض الصور
المدونات
الوسائط المتعددة
كل منشورات العضو jjafferr
-
ترقيم تلقائي لحقل في جدول يتغير بتغير الشهر
jjafferr replied to osama_matafy's topic in قسم الأكسيس Access
السلام عليكم أخي المارد اذا كان الحقل myDate بصيغة تاريخ ، فالمعادلة التالية هي لصيغة ارقام: j = "Day(MyDate) = " & Day(Me.MyDate) واذا اردنا ان نعملها بصيغة تاريخ ، فالمعادلة ستكون ، كما شرحتها انت في موضوع رابط دالة DLookup ، والتي تعتبر مثل Dsum و Dmax ووو: http://www.officena.net/ib/index.php?showtopic=61469 j = "Day(MyDate) = #" & Day(Me.MyDate) & "#" جعفر -
يا سلام ، هذا الفن وإلا بلاش
-
انا دايخ وتعبان ، فاعطيت ما قل ودل ولكن ، لو ان سؤالك كان فيه عملية غير السالب والموجب والجمع ، كنا نضطر للكود بس الحمدلله جت سليمة جعفر
-
لأن الطريقة الثانية فيها كود طويل وللعلم ، بدل : DoCmd.RunCommand acCmdSaveRecord تقدر تستعمل me.refresh او if me.dirty then me.dirty=false والقصد هو حفظ السجل جعفر
-
قصدك ياكسلان
-
تفضل يا ريس في النموذج: وكود بعد التحديث: Private Sub PSelect_AfterUpdate() DoCmd.RunCommand acCmdSaveRecord End Sub طبعا في طرق اخرى ، بس انا اليوم كسلان جعفر 73.Absence of Employees.mdb.zip
-
زيادة مبلغ إيقاف الخصم الشهري الى مبلغ القرض
jjafferr replied to طاهر اوفيسنا's topic in قسم الأكسيس Access
وعليكم السلام أخي كريمو نعم عدت اليوم عصرا من سفري وان شاء الله غدا اواصل من حيث انتهينا ، إلا اذا عندك ملاحظات جديدة جعفر -
السلام عليكم ايش رأيك في هذه الطريقة: سحب أكثر من حقل من سجل واحد في الجدول ، وهذا الرابط فيه المثال http://www.officena.net/ib/index.php?showtopic=61152&p=394338 جعفر
-
تهنئة للأخ أبو ياسر الترقية الى عضو خبير
jjafferr replied to عبدالله المجرب's topic in قسم الأكسيس Access
مبارك إن شاء الله أبو ياسر :-) و إن شاء الله نرى مشاركاتك في مساعدة الأخوة كذلك :-) جعفر -
زيادة مبلغ إيقاف الخصم الشهري الى مبلغ القرض
jjafferr replied to طاهر اوفيسنا's topic in قسم الأكسيس Access
وعليكم السلام ورحمة الله وبركاته 01- فكرة الترتيب تتم لجميع القروض ويكتب 0.00 في الجدول tbl_Loans للأشهر المعفاة لا ليس لجميع القروض ، وإنما للقرض الذي الذي تم اختياره (السجل الذي تكون عليه في Cridi وتضغط على زر اعادة تقسيم الاقتطاع). بعدما وجدت صعوبة في قرض2 الى قرض 4 ما هي هذه الصعوبة ، رجاء اعطني تفاصيل دقيقة بأمثلة لوسمحت ، لأني اخبرتك: فكل شئ يعتمد على هذا النموذج. 02- مالغاية من أنشاء نموذج فرعي FrmCridi_sub_OLD انا عندما اغير شئ في برنامج ، دائما احتفظ بالاصل ، واطلق عليها OLD ، حتى اعرفه ، ويمكن في النهاية حذفه. 03 - الإستعلام qry_Loans ينقصة الباقي الشهري وهذا هو " لب المطلب " الذي تطرقنا له منذ البداية المسألة سهلة ولكننا لم نصل اليها: 1. عند دفع كل شهر ، فسنكتب في خانة Payment_Made في النموذجfrm_Loans ، القيمة المدفوعة لذلك الشهر (وهذا ينطبق على الموظف الذي يريد ان يدفع اي مبلغ يحب في ذلك الشهر) ، 2. عندها ، كل الذي يجب عمله هو جمع حقل Cridi وحقل Payment_Made في الاستعلام qry_Loans ، ونطرحهم من بعض لنحصل على الباقي الشهري Remaining . 04- النموذج الفرعي FrmCridi_sub2 الدي هو دمج بين Cridi و Elec عند فتحة لا نلاحظ شيئا به بالرغم أني سجلت معلومات ب Elec انا صغرت الحقول لكي يتسع المكان لبقية حقول ElectroM الاضافية ، ولكني لم اصل اليها. (ولكني ضبطته بحيث تستطيع استبداله مكان FrmCridi_Sub ، وسيعمل بالطريقة الصحيحة) ، ولكن ، قد نلغي فكرة دمج النموذجين ، فعندها تستطيع ان تنسخ الكود من النموذج Cridi الى النموذج ElectroM لعمل الازم. 05- زر سداد المبلغ بنموذج Cridi لا يعمل هذا الزر يجب ان يفتح النموذج frm_Loans للقرض/السجل الذي تكون عليه في Cridi ، وانت بعد ذلك تدخل مبلغ السداد للشهر المطلوب (لاحظ 03.1 و 03.2 اعلاه لمعرفة طريقة الحساب). 06- عند تجربة قرض ومن بعد يتم حذفه نلاحظ انه يحدف من الجدول Cridi ولا يحذف من الجدول tbl_Loans اعمل علاقة بين الجدول Cridi والجدول tbl_Loans كما في الصورة المرفقة: آمل ان توفق في إنشاء كود للباقي "Remaining" في الإستعلام qry_Loans رجاء مراجعة 03.1 اعلاه أخي كريمو انت الآن تستطيع ان تملئ الفاراغات التي انا لم اكملها ، فالموضوع الآن اصبح واضحا لطريقة عمل الجدول tbl_Loans ، نعم قد نحتاج حقل خاص لـ Payment_Made_Cridi و Payment_Made_Elec ، ولكن سنعرف هذا الشئ لما نوصل الى Elec ، والذي انت تستطيع ان تعمله ، بواسطة نفس الكود الموجود في Cridi. رجاء ملاحظت اني في اي للتاريخ ، فاني أغير اليوم واجعله" اول الشهر" (لهذا السبب كنت تحصل على خطأ في الكود في النموذج frm_Avoid سابقا). جعفر -
تثبيت رقم على باقى الخلايا بالضغط على زرار
jjafferr replied to khaledhelmy's topic in قسم الأكسيس Access
حياك الله هاه ، هل استقر رأيك على صورة معينة حياك الله اعتقد سؤالك في الموضوع الاخر يعتبر ملغي الان ، صح؟ جعفر -
تثبيت رقم على باقى الخلايا بالضغط على زرار
jjafferr replied to khaledhelmy's topic in قسم الأكسيس Access
تعديل بسيط ، اذا لم يتم اخيار اي رقم وتم الغاء الامر: Private Sub Command25_Click() 'On Error Resume Next ' DoCmd.GoToRecord , , acNewRec 'If Me.NewRecord And Me.CurrentRecord > 1 Then ' Me.NUM_ESAL = DLast("[num_esal]", "1") ' End If Num = InputBox("Please Enter the number") If Len(Num & "") = 0 Then Exit Sub Set rst = Me.RecordsetClone rst.MoveLast: rst.MoveFirst RC = rst.RecordCount DoCmd.GoToRecord , , acFirst For I = 1 To RC rst.Edit rst!NUM_ESAL = Num rst.Update rst.MoveNext Next I End Sub جعفر -
تثبيت رقم على باقى الخلايا بالضغط على زرار
jjafferr replied to khaledhelmy's topic in قسم الأكسيس Access
تفضل أخي هذا كود الزر: Private Sub Command25_Click() 'On Error Resume Next ' DoCmd.GoToRecord , , acNewRec 'If Me.NewRecord And Me.CurrentRecord > 1 Then ' Me.NUM_ESAL = DLast("[num_esal]", "1") ' End If Num = InputBox("Please Enter the number") Set rst = Me.RecordsetClone rst.MoveLast: rst.MoveFirst RC = rst.RecordCount DoCmd.GoToRecord , , acFirst For I = 1 To RC rst.Edit rst!NUM_ESAL = Num rst.Update rst.MoveNext Next I End Sub مافي داعي تكتب الرقم ، وطريقة العمل: 1. اختر التاريخ ، 2. اضغط على الزر ، 3. في نافذة تطلب منك الرقم ، ادخل الرقم واضغط ok والسلام جعفر -
تفضل وهذا هو الكود: Option Compare Database Private Sub Command18_Click() ' 'get the days, months, years ' Call YMDDif(Date_From, Date_To) 'ما قبل 1/8/1994 ' Me.Basic_Salary_Contributions = Me.Basic_Salary * 0.05 * _ ((Me.txt_Years * 12) + (Me.txt_Months) + (Me.txt_Days / 30)) 'بعد 1 / 8 / 1994 ' Me.Basic_Salary_Contributions = Me.Basic_Salary * 0.06 * _ ((Me.txt_Years * 12) + (Me.txt_Months) + (Me.txt_Days / 30)) Me.txt_Years = 0 Me.txt_Months = 0 Me.txt_Days = 0 Me.txt_Years_After = 0 Me.txt_Months_After = 0 Me.txt_Days_After = 0 'Check_Date = CDate(1 / 8 / 1994) Check_Date = DateSerial(1994, 8, 1) 'case 1 If Me.Date_From >= Check_Date Then 'get the days, months, years Call YMDDif(Date_From, Date_To) Me.Basic_Salary_Contributions = Me.Basic_Salary * 0.06 * _ ((Me.txt_Years * 12) + (Me.txt_Months) + (Me.txt_Days / 30)) GoTo Exit_1: End If 'case 2 If Me.Date_From <= Check_Date And Me.Date_To <= Check_Date Then 'get the days, months, years Call YMDDif(Date_From, Date_To) Me.Basic_Salary_Contributions = Me.Basic_Salary * 0.05 * _ ((Me.txt_Years * 12) + (Me.txt_Months) + (Me.txt_Days / 30)) GoTo Exit_1: End If 'case 3 If Me.Date_From <= Check_Date Then 'get the days, months, years Call YMDDif(Date_From, Check_Date) Me.Basic_Salary_Contributions = Me.Basic_Salary * 0.05 * _ ((Me.txt_Years * 12) + (Me.txt_Months) + (Me.txt_Days / 30)) 'get the days, months, years Call YMDDif_After(Check_Date, Date_To) Me.Basic_Salary_Contributions = Basic_Salary_Contributions + (Me.Basic_Salary * 0.06 * _ ((Me.txt_Years_After * 12) + (Me.txt_Months_After) + (Me.txt_Days_After / 30))) End If Exit_1: 'من 2 / 11 / 1996 ' Me.Salary_Additions_Contributions = Me.Salary_Additions * 0.06 * _ ((Me.txt_Years * 12) + (Me.txt_Months) + (Me.txt_Days / 30)) End Sub Public Sub YMDDif(sDate1, sDate2) 'sdate1 earliest date sdate2 later Dim iYear As Integer Dim iMonth As Integer Dim iDay As Integer Dim dInterim1 As Date iMonth = DateDiff("m", sDate1, sDate2) If Day(sDate1) > Day(sDate2) Then iMonth = iMonth - 1 End If dInterim1 = DateAdd("m", iMonth, sDate1) iDay = DateDiff("d", dInterim1, sDate2) Me.txt_Days = iDay Me.txt_Months = iMonth Mod 12 Me.txt_Years = iMonth \ 12 'YMDDif = CStr(y) & " Years " & CStr(M) & " months " & CStr(D) & " days" End Sub Public Sub YMDDif_After(sDate1, sDate2) 'sdate1 earliest date sdate2 later Dim iYear As Integer Dim iMonth As Integer Dim iDay As Integer Dim dInterim1 As Date iMonth = DateDiff("m", sDate1, sDate2) If Day(sDate1) > Day(sDate2) Then iMonth = iMonth - 1 End If dInterim1 = DateAdd("m", iMonth, sDate1) iDay = DateDiff("d", dInterim1, sDate2) Me.txt_Days_After = iDay Me.txt_Months_After = iMonth Mod 12 Me.txt_Years_After = iMonth \ 12 'YMDDif = CStr(y) & " Years " & CStr(M) & " months " & CStr(D) & " days" End Sub انا طلبت منك: يعني بغيت لما ادخل تواريخ ، اعرف مو نتائجها ، فعلى اساسه اصلح الكود ، بس للأسف انت ما حطيت شئ!! والملف يجب ان يكون مضغوط علشان ترفعه للمنتدى ، ماعدا الصور جعفر 63.1.مساهمة الراتب.accdb.zip
-
زيادة مبلغ إيقاف الخصم الشهري الى مبلغ القرض
jjafferr replied to طاهر اوفيسنا's topic in قسم الأكسيس Access
السلام عليكم أخي كريمو الرجاء تجربة المرفق للنموذج Cridi ، وتأخير الاستقطاع ، والتأكد ان كل التغييرات تمام في الجدول tbl_Loans. لن ننتقل الى ElectroM ، لأنه ببساطة نسخ ولصق (مع تعديل بسيط) من كود Cridi. اذا تلاحظ ، عملت Cidi_sub2 ، والفكرة هي دمج Cridi و Elec في هذا النموذج (وعليه لن نحتاج الى كود آخر لنموذج آخر) ، كان ودي ان اضع frm_Loans كنموذج فرعي في النموذج Cridi ، حيث ستكون عندك المعلومة كاملة عن جميع القروض للموظف. جعفر 11.4.FrmDiscountReport.mdb.zip -
السلام عليكم جرب الملف المرفق لوسمحت واذا في اي ملاحظة ، ياريت تعمل لي مثل الجدول: المدة قبل (يوم ، شهر ، سنة) ، المدة بعد (يوم ، شهر ، سنة) ، وتحط النتائج في المعادلة. جعفر 63.مساهمة الراتب.accdb.zip
-
-
تفضل والطريقة: 1. تعمل استعلام للطلبة الحاضرين في ذلك اليوم ، 2. تعمل استعلام يقارن: أ- الجدول اللي فيه جميع الاسماء ، ب- مع الاستعلام اللي فيه الطلبة الحاضرين. جعفر 66.BarcodeStudent.mdb.zip
-
السلام عليكم شباب ممكن ان ادلو بدلوي في الواقع ، مع سهولة الدالة ، إلا ان لها استعمالات اكاد لا استغني عنها في اي من برامجي 1.عندنا قيمة الحقل في الجدول ممكن تكون Null ، ومعناه ان مافي اي معلومة دخلت في هذا الحقل ، 2.وممكن ان تكون هناك قيمة في الحقل ، 3.وممكن يكون فاضي ، ومعناه انه تم ادخال قيمة في الحقل ومن ثم تم حذف هذه القيمة. اذا كان اسم الحقل fName مثلا ، واذا اردنا ان نعرف اذا كان الحقل فاضي ، فعادة نقوم بالكود التالي لفحص الطريقتين: if isNull([fName]) or if [fName]="" ولكني استخدم دالة LEN لفحص الطريقتين مرة واحدة ، هكذا: if LEN([fName] & "")=0 جعفر
-
عفوا ، انا اعتقدت تقرير المتأخرين عطني شوية وقت واحاول اعمل لك استعلام الغائبين جعفر
-
ليش؟ رجاء لا تغير المفتاح الرئيسي ، لأنه تارة ينفعك انت ، وتارة ينفع البرنامج. فاذا امكن ، ارجع المفتاح الرئيسي. حياك الله التقرير عبارة عن تنسيق للإستعلام ، فعليك بالرأس وسيأتيك الذيل ببلاش سر الاستعلام هو التنسيق ، لاحظ الصورة المرفقة ، التنسيق في النموذج ، وفي الاستعلام: ياريت تخلي لنا الرابط هنا ، علشان يستفيد الجميع من الشرح جعفر
-
السلام عليكم أستاذنا الفاضل / الجندبي (هاي لزقة فيك ) كان على بالي أخبرك عن موضوع ارفاق صور الطلبه في البرنامج ، ولكن وللأسف نسيت وشكرا لأخي حربي ، ذكرني بالموضوع فكرة إرفاق الصور داخل البرنامج ، ستؤدي الى مشاكل في البرنامج ، ومنها ان حجم البرنامج سيصبح كبيرا ، وقد لن تستطيع تستعمله!! والطريقة الصحيحة هي جعل الصور في مجلد على الكمبيوتر ، وانا افضل ان يكون هذا المجلد في نفس المجلد الذي يكون فيه برنامج الجداول (هذا اذا كان برنامجك مقسم الى قسمين) ، وإلا فيكون المجلد في نفس مجلد البرنامج. الملف المرفق بصيغة 2003 ، مع بعض التعديلات على البرنامج السابق ، والصور غير مرفقة في الجدول في البرنامج ، وانما هناك مجلد اسمه Student_Pictures (وانا وضعت فيه صورة للأخ أحمد واخرى لرائد) ، ويجب ان تضع مجلد الصور في نفس مجلد البرنامج (ما يهم اين ، ودائما تستطيع ان تنقلهم معا الى اي مكان تحب ، بشرط ان يكونوا مع بعض) ، واذا اردت ان يكون مجلد الصور في اي مكان آخر في الكمبيوتر ، فيجب تغيير المسار في الوحدة النمطية (وهناك مثال لهذا). جرب ادخال الباركود لأحمد او رائد ، ثم اضغط TAB ، وسترى الصورة جعفر 66.BarcodeStudent.mdb.zip
-
وعليكم السلام أخي المسألة مو فقط مسألة استيراد ملفات pdf ، وانما كيف وضعها على النموذج كذلك ، فنموذجك مهيأ للصو وليس لملفات pdf!! الرابط التالي يعطيك مثال للإثنين: http://www.officena.net/ib/index.php?showtopic=60235 جعفر
-
مع اني معارض فكرة إعطاء تقرير عن المتأخرين (مو انا كنت منهم ايام زمان ) ، ولكن تفضل: جعفر 66.BarcodeStudent.accdb.zip
-
حياك الله