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

متقاعد

الخبراء
  • Posts

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

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

  • Days Won

    25

كل منشورات العضو متقاعد

  1. Sub DeleteRecordsExceptOne() Dim db As DAO.Database Dim rsFatora As DAO.Recordset Dim strInvoiceID As Integer strInvoiceID = 1001 Set db = CurrentDb Set rsFatora = db.OpenRecordset("SELECT * FROM tblFatora WHERE FatoraId <> " & strInvoiceID & "") Do While Not rsFatora.EOF rsFatora.Delete rsFatora.MoveNext Loop rsFatora.Close db.Close Set rsFatora = Nothing Set db = Nothing End Sub ايضا في السطر الرابع طالما نتعامل مع متغيير رقمي فلماذا علامات التنصيص وفي جميع الاحول لا افصل كتابة رقم الفاتورة في الكود وانما نستخدم حقل في النموذج لرقم الفاتورة المستثناه حيث يفترض بالمستخدم عدم الدخول للاكواد
  2. طالما توجد علاقة وتكامل وتتالي يكتفى بالحدف من جدول الفاتورة فقط هذا امر بديهي وبالتالي اتفق تماما مع رأي استاذنا الكبير ويمكن الاستغناء عن ثمانية اسطر في الوحدة النمطية
  3. صحيح لان معيار الحقل النصي يختلف عن الحقل الرقمي ويكتب هكذا ⬇️ DoCmd.OpenForm "Patient Profile", , , "[PatientID]='" & Me.PatientID & "'" الملف مرفق ID4.accdb
  4. الحمد لله هناك تحسن و الله خير حافظ جرب الان اسندنا مصدر الى السجلات الى كود استعلام تجميع الملف مرفق Multi Report(2).accdb
  5. اذا كان الشهر 30 يوم نفتح الاستعلام ونعدل وياتي بعده شهر 31 ثم 29 ثم 28 ونعود للتعديل وهكذا الى مالا نهاية تلافيا لرسالة ادخال قيمة عندما يختلف عدد الايام مختلف لذا اعتقد ان الافضل ان نعمل دالة بسيطة تمر على الحقول في الجدول في البداية تستثني حقل المعرف وحقل الاسم ثم تعوض عن كل حقل فارغ بصفر وكل حقل يحتوي على بيانات برقم واحد ثم تجمع الدالة الحقول فاذا كان الناتج صفر فهذا يعني ان الحقول فارغة ويكون الصفر هو معيار حذف السجلات في هذه الطريقة لايهم عدد ايام الشهر ولا يتطلب منا تعديل المعيار عند اختلاف عدد الايام Public Function sum_fld(num As Long) Dim rst As DAO.Recordset Dim fld As Field Dim x As Byte Set rst = CurrentDb.OpenRecordset("Select * From [ta1] Where [idd]= " & num) x = 0 For Each fld In rst.Fields If fld.Name <> "idd" And fld.Name <> "1" Then If IsNull(fld.Value) Then x = x + 0 Else x = x + 1 End If End If Next sum_fld = x rst.Close End Function ثم نعمل استعلام DELETE Ta1.*, sum_fld([IDD]) AS Expr2 FROM Ta1 WHERE (((sum_fld([IDD]))=0)); اخيرا توجد طرق اخرى ولكني اكتفي بذلك الملف مرفق Database13.accdb
  6. بالاضافة لما اشار اليه الاساتذه هذا الموضوع يشرح عدة طرق لكيفية نقل حقل او عدة حقول من نموذج لاخر ربما يفيدكم واعتذر عن وضع مثال حاليا علما بانه توجد طرق اخرى ولكن لا يتسع وقتي لشرحها
  7. بداية اتفق مع الاستاذ @عبدالجيد في امكانية عمل البرنامج بشكل يتوافق مع تصميم قواعد البيانات مشاركة مع الاستاذ @Moosak طريقة بسيطة باستخدام عد الحقول الفارغة الملف مرفق واعتذر مقدما لعدم مراجعة العمل لانشغالي Database13.accdb
  8. في زر الامر ضع الكود التالي ⬇️ Dim rs As DAO.Recordset Dim i As Integer Dim r As String Set rs = CurrentDb.OpenRecordset("test") rs.MoveFirst For i = 1 To rs.RecordCount If rs!ID = Me.ID Then r = rs!Rptname DoCmd.OpenReport r, acViewPreview End If rs.MoveNext Next rs.Close Set rs = Nothing ربما توجد طرق ابسط ولكن ليس لدي وقت لذلك اللهم اشف والدي واجعل ما اصابه من ابتلاء في ميزان اعماله Multi Report.accdb
  9. اقصد ان الجهاز الاخر يحتوي على لوحة ام بمعالجين من نوع Intel® Xeon CPU Socket LGA 2066 و 12 شريحة رام ddr4 تدعم تصحيح الاخطاء "تستخدم مع اجهزة السيرفرات" وعند تجربة البرنامج لم يتعرف عليهما واعطى قراءة غير صحيحة ربما يكون لي عودة للتجربة مع اجهزة اخرى بعتاد مختلف عن الجهازين السابقين تحياتي
  10. الحقيقة ان التعامل مع الجدول اسهل من التعامل مع مربع القائمة كل ماهو مطلوب ان نعمل حلقة تمر على سجلات الجدول بشرط رقم ملف المريض ثم نعمل متغير نصي ياخذ قيمته من حقل Reportname ونستخدم المتغيير للتعويض عن اسم التقرير وتوجد طرق اخرى ولكن هذا مافكرت به ولكن كما اشار استاذنا الفاضل @ابوخليل هذا طلب مختلف ويتطلب له موضوع جديد
  11. تجربتي مع اخفاء جزء من الصورة لاسباب خاصة ايضا احد الاجهزة لم يكتشق نوع المعالج ولا الرام بينما في هذا الجهاز اكتشف كل المكونات
  12. الشكر لله اخي بالتوفيق ونتوقف هنا ولك بالمثل واكثر
  13. طريقة اخرى باستخدام for next Dim k As String Dim i As Integer For i = 0 To List2.ListCount - 1 If List2.Selected(i) = True Then k = List2.Column(0, i) DoCmd.OpenReport k, acViewPreview End If Next i الملف مرفق Listbox.accdb
  14. امر اخير لماذا تتعب نفسك بكتابة اسماء التقارير في الليست بوكس وكلما اضفت تقرير تقوم باضافة اسمه بينما ممكن جعل مصدر الليست SELECT MSysObjects.Name FROM MSysObjects WHERE (((MSysObjects.Type)=-32764)); وهنا تجد ان اي تقرير تعمله تجد اسمه موجود تلقائي Listbox.accdb
  15. جرب في زر الامر اكتب Dim k As Variant Dim r As String For Each k In Me.List2.ItemsSelected r = Me.List2.ItemData(k) DoCmd.OpenReport r, acViewPreview Next k الملف مرفق Listbox.accdb
  16. ربما لم تسمع المنصة لا تنفذ مشاريع باسمها وانما هي وسيلة رسمية لجمع التبرعات و تتبع مركز الملك سلمان للإغاثة والأعمال الإنسانية ومجموع التبرعات لمنكوبي الزلزال حتى هذه الدقيقة 367,696,355 ريال وتم جمعها من 1,647,788 متبرع ولو حبيت تتطلع على اعمال المركز والمشاريع المنفذه شاهد هنا اللهم اجعل عملنا خالصا لوجهك الكريم
  17. لغتي الانجليزية جيدة ولكن العربية عشق واعتزاز وفخر
  18. ياهلا باخي الحبيب قاسم نحن معذورون معذورون خبر مرفوع بالواو "لانها جمع مذكر سالم" ولو سبقت بال التعريف جاز نصبها على اعتبارها مفعول به منصوب على الاختصاص بفعل محذوف وجوبا مع فاعله كقوله تعالى (قالوا إِنَّ لَنا لَأَجرًا إِن كُنّا نَحنُ الغالِبينَ) اما خلاف ذلك وارفع بواو و بيا اجرر وانصب .. سالم جمع عامر و مذنب وشبه ذين و به عشرونا .. وبابه ألحق و الأهلونا أولو و عالمون علييونا.. وأرضون شذ و السنونا وبابه ومثل حين قد يرد .. ذا الباب و هو عند قوم يطرد
  19. عمل جميل بارك الله فيك بطريقتين الباء حرف جر طريقتين اسم مجرور باليا لانه مثنى بالألف ارفع المثنى وكلا .. إذا بمضمر مضافا وصلا كلتا كذاك اثنان واثنتان .. كابنين وابنتين يجريان وتخلف اليا في جميعها الألف .. جرًا ونصبًا بعد فتح قد ألف
  20. اختيار موفق وموسى يستاهل الف مبروك استاذ موسى🌹
  21. اعتقد ⬇️ هذا الموضوع
  22. اتفق معك بمراجعة سريعة وجدت مثل ذلك ولكني توقفت عند استخدام if اربع عشرة مرة في حدث واحد ومع كل ذلك يكفي الاستاذ jo انه عمل برنامج جميل يخدمه في عمله تحياتي
  23. هههههه مشكله ادوية الزكام 😄 أَتَرجو أَن تَكونَ وَأَنتَ شَيخ .. كَما قَد كُنتَ أَيّامُ الشَباب تحياتي 🌹
  24. هههههه الله يا استاذنا دقق تجد الفرق
  25. كلمة باللاتينية تعني مبدأ اوكام او نصل اوكام وهو مبدأ يتبني نظرية التقتير وملخص الامر اذا تساوت الحلول فأن الحل الاسهل هو الافضل اما هذه الابيات الاربعة فهي جزء من مثلثة قطرب "سديد الدين البهنسي" يختار في كل بيتين كلمة واحدة الاولى بالفتح والثانية بالكسر والثالثة بالضم فيتغير معنى الكلمة بتغيير الحركة ثم تختم الرباعية ببيتين تشرح معنى الكلمة بنفس الترتيب والشرح في البيتين الاخيرين ليس لقطرب وانما لابن رزيق . اخيرا اتمنى الا يكون في الامر مخالفة لقوانين الموقع والا فاتوقف والتزم بالقوانين . تحياتي
×
×
  • اضف...

Important Information