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

ابو جودي

أوفيسنا
  • Posts

    6,830
  • تاريخ الانضمام

  • Days Won

    186

كل منشورات العضو ابو جودي

  1. اتفضلى يا افندم دى ابسط طريقة لو حابة طرق اكثر تعقيدا نحن فى الخدمه New Microsoft Access Database.accdb
  2. طيب ما هو حضرتك يا افندم وضعتى المرفق لما افتح النموذج الاول visit_frm الحقول مقفولة ومفيش بيانات فى الحقول فطبعا مش عارف اجرب فكتبت لحضرتك الاجابة النظرى وفقا للسؤال النظرى
  3. بسيطة الفكرة الاولى بدلى السطر ده DoCmd.OpenForm culture_frm بالكود Dim ID As Integer Dim tcode As String ID = Me.ID tcode = Me.tcode DoCmd.OpenForm "culture_frm", , , "ID = " & ID & " AND tcode = '" & tcode & "'"
  4. يعنى انت عاوز الاتى تحدد اولا اسم اللجنة ورقم اللجنة ومن مربع سرد للمعلمين تحدد المعلمين بناء على الفصل الدراسى ؟
  5. ممكن سؤال اجاوب على طول واللا فى شروط يجب توافرها الاول مثل الفصل الدراسي او الصف الذى يعمل به المعلم ؟؟؟ وهل تريد اختيار المعلمين عشوائيا ام بالترتيب تبعا لكود المعلم ؟؟؟ يجب عليك توضيح وذكر كل الاعتبارات الواجب اخذها بعين الاعتبار ليتم تحليل البيانات وفقا لذلك ثم وضع الالية المناسبة للاجابة بناء على هذا التحليل يا سيدى الفاضل
  6. شوف يا سيد @عامر الراشدي 777 وبما انك عذو جديد لو بحثت قليلا فى المنتدى لوجدت درر اولا واخيرا وقبل اى شئ اذا وحدت موضوعات للاستاذ @jjafferr لا تفكر كثيرا ولا تتردد بكل الاحوال ان شاء الله تجد مرادك ومبتغاك الموضوع الاول وتقدر تتسلى بعد كده فى الموذوع الثانى ده واخر وووووو ان شاء الله تجد ما تريد بس اتعب وحاول تبحث الاول لا قدر الله ان تعثرت فى التطبيق او استصعبت فهم اى شئ ارجع للموضوع واضف سؤالك وان شاء الله تجد العون من الاساتذة والخبراء
  7. ان شاء الله ابشروا واستبشروا بالخيـــــرات اقترب اجل مفاجأه لا مثيل لها فى المواقع العربيه او الفنرجية منها ههههههه عحبتنى قوى الفنرجية دى سبحان الله احيانا قدرا يصادفنى وانا الف واعسس وادور واسريش ع الانترنت موضوعات تم اخذها من هنا وتترجم فى مواقع الفرنجة املا من اصحاب الموضوعات ان يجدوا حلولا او اقتراحات افضل منا ويعلم الله دائما يكون لنا نحن رواد وطلاب منتديات اوفيسنا ومشاركة مع اساتذتنا الافاضل العظماء السبق بوضع الاجابات والحلول والاطروحات التى لا يحصلونها اصلا من عند الفرنجة ولكن ............ هههههههههه لن أكمل كفاية كده وبالمصرى كده الحدق يفهم استعدوا وليبدأ العد التنازلى من الان
  8. انت بتقلب فى المنتدى يا فؤش وتطلع المرفقات القديمة... عاااااش انتظروا قريبا جدا بأمر الله كدت انتهى من تحضير هدية قيمة بمعنى الكلمة إن شاء سوف تكون طفرة بمعنى الكلمة فى موضوع التفقيط وحصريا فى منتدانا الحبيب لن تجدوا لها مثيل الا فى المكتبة العامرة 😄 لانه وصل بالسلامة للمكتبة
  9. ابشر بالخير وانتظر هدية ان شاء الله سوف تنال رضاكم انا دوخت فى الكود بتاعك وفضلت الف والفلف حوالين روحى ههههههههههههه ومبقتش فاهم انت عاوز ايه بالتحديد من كتر الدوال ولكن ان شاء الله سوف اتيكم بهدية قيمة
  10. وعليكم السلام جرب الكود التالى من فضلك قمت باضافة حلقة تكرارية لعمل لوب على كل السجلات Dim sql As DAO.Recordset Dim rsInvoice As DAO.Recordset Dim strAmount As String Dim Amount As Double Dim i As Integer Dim exists As Boolean Dim rsCheck As DAO.Recordset Dim strSQL As String Dim invoiceNumber As String Dim invoiceDate As Date Dim totalInstallments As Integer Dim currentInstallmentDate As Date ' فتح مجموعة السجلات للتعامل مع جدول الفواتير Set rsInvoice = CurrentDb.OpenRecordset("SELECT * FROM Faturas", dbOpenDynaset) ' فتح مجموعة السجلات للتعامل مع جدول الأقساط Set sql = CurrentDb.OpenRecordset("G2", dbOpenDynaset) ' التكرار على كل سجل فاتورة في جدول الفواتير Do Until rsInvoice.EOF invoiceNumber = rsInvoice![رقم] invoiceDate = rsInvoice![Date] totalInstallments = rsInvoice![NO] ' حساب المبلغ وتنسيقه Amount = Round(rsInvoice![المبلغ] / totalInstallments, 2) strAmount = NoToTxt(Amount, "دينار", "فلس") ' التكرار على كل قسط للفاتورة الحالية For i = 0 To totalInstallments - 1 exists = False currentInstallmentDate = DateAdd("m", i, invoiceDate) ' تحقق مما إذا كان السجل موجودًا بالفعل strSQL = "SELECT * FROM G2 WHERE [رقم] = '" & invoiceNumber & "' AND [التاريخ] = #" & Format(currentInstallmentDate, "yyyy/mm/dd") & "#" Set rsCheck = CurrentDb.OpenRecordset(strSQL, dbOpenDynaset) If Not rsCheck.EOF Then exists = True End If rsCheck.Close Set rsCheck = Nothing ' إذا لم يكن السجل موجودًا، قم بإضافة سجل جديد If Not exists Then With sql .AddNew ![رقم] = invoiceNumber ![التاريخ] = currentInstallmentDate ![المبلغ] = Amount ![المبلغ كتابه] = strAmount ![القسط] = "لم يتم الدفع" .Update End With End If Next i rsInvoice.MoveNext Loop ' إغلاق مجموعة السجلات وتحديث النموذج sql.Close Set sql = Nothing rsInvoice.Close Set rsInvoice = Nothing Forms("f1").Requery
  11. وانا لم استخدمها تقريبا ولكن سوف ادرسها واحاول تقديم ما يمكننى تقديمه بخصوصها بما يفتح به الله على ولكن ان تأخرت عليكم التمسوا لى العذر
  12. اولا بارفو شاطر والله انك بتحاول وتعافر وتشغل دماغك صدقنى المعلومة والفكرة اللى بتتعب وتدوخ فيها وتحصلها بصعوبة علشان تروح من مخك هتروح بصعوبة برضو اما اللى بيجى سهل بيروح اسهل ما بيجى انا اسف جدا جدا جدا لحضرتك والله كنت تعبان والعلاج بتاعى مش موجود سامحنى ع التأخير بس فعلا الموضوع اكبر منى الحمد لله رب العالمين اه نسيت اقول لك خليك كريم وبطل بخل لما تكون كاتب سؤال طالما وصلت للاجابة بتاعته بفضل الله تضع الاجابة بالاكواد وبالمرفق علشان الكل يتعلم وعدد النوايا مساعدة للغير وعلم ينتفع به ونسأل الله تعالى القبول
  13. يا عم حرام عليك انت عامل ايه انت كل ما تلاقى موضوع بيتكلم عن التفقيط او تحويل الارقام لـ تيكست تضيف اكواده وخلاص ؟؟؟
  14. اولا ياريت مرفق للكود اللى بتشتغل بيه ثانيا ممكن التوضيح هل تريد 150.320 ان تحصل على النتيجة الصحيحة فقط يعنى انت عاوز النتيجة = مائة وخمسون دينار فقط لاغير
  15. اتفضل Dim sql As DAO.Recordset Dim strAmount As String Dim Amount As Double Dim i As Integer Dim exists As Boolean Dim rsCheck As DAO.Recordset Set sql = CurrentDb.OpenRecordset("G2", dbOpenDynaset) Amount = Round(Forms![f1]![المبلغ] / Forms![f1]![NO], 2) strAmount = NoToTxt(Amount, "دينار", "فلس") ' Check if records already exist for the same invoice number For i = 0 To Forms![f1]![NO] - 1 exists = False Set rsCheck = CurrentDb.OpenRecordset("SELECT * FROM G2 WHERE [رقم] = " & Forms![f1]!X & " AND [التاريخ] = #" & Format(DateAdd("m", i, Forms![f1]![Date]), "yyyy/mm/dd") & "#", dbOpenDynaset) If Not rsCheck.EOF Then exists = True End If rsCheck.Close If Not exists Then With sql .AddNew ![رقم] = Forms![f1]!X ![التاريخ] = DateAdd("m", i, Forms![f1]![Date]) ![المبلغ] = Round(Forms![f1]![المبلغ] / Forms![f1]![NO], 2) ![المبلغ كتابه] = strAmount ![القسط] = "لم يتم الدفع" .Update End With End If Next i sql.Close Forms("f1").Requery
  16. على اساس ان السطر ده مش موجود ؟؟ لا والله فقط انا مريض ولكن ما ينفعش انت تنزل هدية وانا ما ارد عليك لا ولازم اعبى مكتبتى انا التانى اوماااااااااااال
  17. الاستاذ الجليل صاحب المكتبة العامرة @Moosak انت مبدع وعبقرى ما شاء الله تبارك الله تسلم ايدك اسأل الله أن يديم عليكم الصحة والعافية وأن يحفظكم من كل سوء ومكروه ويبارك فيكم وفي أرزاقكم ويسهل لكم اموركم وان يحسن لكم القضاء ويبعد عنكم الشقاء ولا يمر عليكم يوم إلا وأنتم في نعمة وصحة وعافية اللهم آمين يارب العالمين 🤲
  18. بصراحة لا اتذكر السبب تحديدا ولتأكدى من التجربة اكثر من مرة والحصول على نقس النتيجة وقتها اعتقدت انها مشكلة وقصور فى الاكسس
  19. سبحان الله مع انو جربتها ولكن لا اعرف لماذا لم تعمل وممكن تنفيذ السيناريو المطلوب بالشكل التالى بوضع الكود الاتى فى وحدة نمطية عامة لو اردنا استدعاء الكود اكثر من مرة وفى اكثر من مكان Const TargetTableName As String = "tblDataB" Const SourceTableName As String = "tblData" Sub CopyTableWithOverwrite() ' Check if the destination table already exists and delete it If TableExists(TargetTableName) Then DoCmd.DeleteObject acTable, TargetTableName End If ' Copy the source table to the target table DoCmd.CopyObject , TargetTableName, acTable, SourceTableName End Sub ' Helper function to check if a table exists Function TableExists(tableName As String) As Boolean Dim db As DAO.Database Dim tdf As DAO.TableDef On Error Resume Next Set db = CurrentDb Set tdf = db.TableDefs(tableName) TableExists = (Err.Number = 0) On Error GoTo 0 Set tdf = Nothing Set db = Nothing End Function على ان يكون الاستدعاء فقط بالشكل التالى على زر الامر او وفق اهوائك ورغباتك فى الحدث والوقت المناسبين ' Call the CopyTableWithOverwrite subroutine to perform the table copy CopyTableWithOverwrite
  20. طيب هو الموضوع عنوانه : تصميم برنامج لسنتر بلاي ستيشن يعنى لا يوجد اسئلة ينتظر وضع اجابات لها اذا لابد ومن الاولى ان نبدأ بالتحليل النظرى ثم التحليل المنطقى ثم وضع الية العمل والسيناريو وفقا للتحليل ثم بدأ البناء ليكون على اساس سليم وصحيح وبدء البناؤ يبدأ ببناؤ الجداول الصحيح اولا وليس بالحسابات والنماذج ثم الجداول
  21. بدون زعل لو الموضوع بالشكل ده بس حرام يتعمل لع قاعدة وتشغل له جهاز حاسب الى مخصوص كراسة وقلم وعيش حياتك اسهل اه والله زيمئولك كده بالنسبة لكل جهاز دى انسخ بس الاكواد ولصق لكل زر امر مع تغيير اسماء العناصر والحمد لله ان انا مش فاضى لان لو الموضوع كده بس انا كنت ممكن يجيلى شلل لان مبدئيا انا كنت اضع للقاعدة من 4 الى 6 جداول ووجع قلب وكتابة اكود المطلوب ده لعب عيال وتم تحقيقه خلاص
  22. شوف يا سيد فوكش انا فعلا والله برد وشغال فى حجات تخص عملى تقريبا مضغوط قليلا والموضوع ده عاوز له روقان لو عاوز الفكرة اللى بتدور فى مخيلتى نظريا ارجع لموضوع الجداول بتاعك بتاع انشاء الجدول الديناميكى فى جزء يخص خضائص الحقل عند انشاء الجدول الجديد ده شق الاجابة الثانى والمطلوب لتحقيق اجابة السؤال الشق الاول للوصول لتلك المرحلة عمل دالة لتمرير اسم الجدول الاساسى االيها بتقوم بعمل دوران على الحقول لمعرفة وتيديل الاتى فى مصفوفة مثلا اسم الحقل نوع الحقل وصف الحقل تسمية الحقل ويتم تمرير البسانات دى للكود بتاعك اللى اتكلمنا عنه فى الشق الاول لفة رخمة وعاوزة روقان بجد
  23. لو ركزت شوية فى كلامى بدون نقاش انت جرب وشوف علشان تتأكد
  24. بعد اذن استاذى الجليل ومعلمى القدير و والدى الحبيب الاستاذ @ابوخليل حياكم الله وبياكم الموضوع به تحد كبير فعلا على استحياء دعنى اوضح لك الامور لتتضح الرؤية من نقاط ضعف الاكسس انه لا يقوم بعمل نسخ الجدول بخصائص الحقول بداخله ولكن يتم ذلك بهيكل الجدول فقط وبيانات الحقول يعنى ابه الكلام دة ببساطة سوف اشرح على الصور الاتية الجزء المأطر بالازرق والذى يحمل العنوان Description ( Optional ) والذى يتم فيه كتابة وصف لكل حقل والجزء المأطر بالاسفل باللون البنفسجى وهو الـ Caption لكل حقل هذان يعدان من خصائص الحقول داخل الجدول عند عمل حذف للجدول الثانوى ونسخ الجدول الاساسى لا يأتى الجدول الجديد وليد عملية الاستنساخ بهذه الخصائص لاعداد الحقول فى الجدول الاساسى ولكن ولكن ولكن والله اعلم اعتقد قد يكون لها حل برمجى وانا ان شاء الله اعمل على ذلك
×
×
  • اضف...

Important Information