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

محمد ايمن

الخبراء
  • Posts

    1,667
  • تاريخ الانضمام

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

  • Days Won

    8

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

  1. انا استخدم 2007 وبرايي هو افضل اصدار
  2. الكود يوضع في زر اختيار الصورة فبعد اختيارها يقوم بترحيل الصورة الى السيرفر طبق الخطوات التالية 1- في جهاز السيرفر انشئ مجلد في القرص D وليكن اسمه img وقم بمشاركته مع السماح للمستخدمين بالتحكم الكامل طبعا هذه الخصائص تحصل عليها من الويندوز كما في الصورة 2- اضف الكود التالي الى نموذج حفظ الصورة في جميع الاجهزة Dim cr As New filesystemobject cr.CopyFile CurrentProject.Path & "\FileName1.jpg", "\\PcName\D:\img\FileName2.jpg", True End Sub filename1 هو اسم الصورة المراد نسخها من جهازك الى السيرفر pcname هو اسم جهاز السيرفر filename2 هو الاسم الذي ستحفظ به الصورة في جهاز السيرفر لاتنسى اضافة المرجع الموضودفي الصورة جرب ووافينا بالنتيجة
  3. اعذرني اخي الكريم ولكن عندك خطا في تصميم البرنامج لان رقم ID هو ترقيم تلقائي ان ان الارقام لن تتطابق بين الجدولين الا بالصدفة يفترض بدل الربط برقم ID ان تضع رقم للمادة في كلا الجدولين و يتم الربط بين الجدولين عن طريق هذا الرقم فكرة حذف سجل بعد بيع البضاعة فكرة خاطئة جدا وبدلا من حذف السجل انشئ جدول يحتوي على حركة المادة وبهذه الطريقة تستطيع ان تعلم ماذا اشتريت و ماذا بعت وطبعا بعد كل عملية بيع او شراء يتم تحديث كمية المادة الموجودة لديك في المستودع
  4. طبعا ممكن ذلك حاول تطبيق الفكرة التالية 1- استخرج مسار السيرفر (الجهاز الذي عليه قاعدة البيانات التي تحتوي على الجدول) 2- عند حفظ الصورة قم بارسالها الى جهاز السيرفر باستخدام الكود التالي Dim CerDll As New FileSystemObject CerDll.CopyFile 1, 2, True استبدل 1 و 2 بالمسارات التالية 1- تمثل مسار الصورة المخرنة في جهازك 2- تمثل مسار الصورة التي تريد تخزينها في جهاز السيرفر
  5. فكرة رائعة استاذي الكريم لكن هناك عيب بسيط فيها وهي ان رسالة التكرار لن تظهر حتى الانتهاء من السجل الحالي كاملا
  6. هل حولت قاعدة البيانات الى SQL ؟؟ اذا حولتها استبدل عبارة dbopentable ب dbOpenDynaset
  7. يمكن عمل ذلك لكن بالنسبة للشرط الثاني وهو ظهور كلمة ( تم التحديث ) فهذه الكلمة ستظهر دوما والسبب ان التحديث آلي اما لو كان يدوي فممكن عمل ذلك شرح الكود Dim Udate1 As Variant Dim Udate2 As Variant Dim Uyear1 As Variant Dim Uyear2 As Variant Udate1 = DLookup("tmonth", "tblmonth") Udate2 = Format(Now(), "MM") Uyear1 = DLookup("tyear", "tblmonth") Uyear2 = Format(Now(), "yyyy") Dim db As DAO.Database Dim rs As DAO.Recordset2 Set db = CurrentDb Set rs = db.OpenRecordset("الاسماء", dbOpenTable) تم تعريف اربع متغيرات وهي تخزن القيم التالية : الشهر المخرن في الجدول الشهر الحالي السنة المخرنة في الجدول السنة الحالية If Udate1 <> Udate2 Then With rs .MoveFirst Do While rs.EOF = False .Edit .Fields(7) = .Fields(7) + 3 .Update .MoveNext Loop End With DoCmd.RunSQL ("update tblmonth set tblmonth.tmonth='" & Udate2 & "'") MsgBox "تم التحديث" End If وضعنا شرط وهو اذا كان التاريخ المخرن في الجدول لا يساوي الشهر الحالي ( يعني شهر جديد ) ننفذ حلقة دورانية لتضيف الى جدول الاسماء 3 ايام لكل اسم If Uyear1 <> Uyear2 Then With rs .MoveFirst Do While rs.EOF = False .Edit .Fields(7) = .Fields(7) + 36 .Update .MoveNext Loop End With DoCmd.RunSQL ("update tblmonth set tblmonth.tyear='" & Uyear2 & "'") MsgBox "تم التحديث" End If الشرط الثاني يقارن السنة المخرنة في الجدول و السنة الحالية وفي حال عدم التطابق ( سنة جديدة ) ننفذ حلقة دورانية في جدول الاسماء لتضيف الى كل اسم 36 يوم testeja1.rar
  8. تحية طيبة استاذ رمهان ممكن شرح الكود
  9. تحية طيبة استاذي الكريم الفكرة في المرفق الثاني رائعة لكن لو اردنا تطبيقها على ثلاث نماذج !!!!!! وكل نموذج يحتوي على عشر حقول يكون الناتج 3*10 =30 سطر وبفرض اردت ان اعدل الكود في هذه الحالة يجب ان اعدل 30 سطر برمجي لذلك فكرت في ان اضع الكود في وحدة نمطية او كلاس في هذا المرفق كنت اتدرب على الوحدات النمطية و الكلاسات و طرق استخدامها
  10. ماهو المقصود بالجدول tblrec هل هو جدول مرتجع المبيعات ؟؟ ام ماذا ؟؟
  11. تحية طيبة استاذنا الغالي رمهان هناك مقولة ( كلما ازداد علمي ازداد علمي بجهلي ) الامثلة السابقة كلها تعاني من خطا اساسي وهو انو الكود يفتح الجدول للتحقق من القيمة و بالتالي اصبح الكود يتحقق من القيمة في الجدول عوضا عن التحقق من القيمة في السجل الحالي طبعا كان السبب هو قلة خبرتي في الاكواد في ذلك الوقت ( منذ 4 سنوات تقريبا ) الحمدلله وصلت للحل و لكن ابتعادي عن المنتدى في الفترة الماضية هو ما انساني اكمال الموضوع منع تكرار القيمة في نفس السجل 10.rar
  12. تفضل اخي الكريم نصيحة : حاول استخدام اللغة الانكليزية في تسمية الحقول و الجداول و النماذج فهي تجنبك الاخطاء البرمجية كثيرا مثال مربع السرد1.rar
  13. المرفق الذي ارسله اخينا عبد الله يعمل و بدون اي مشاكل !!!!!!!!!!!!! جربت كل النماذج والاستعلامات وهي تعمل 100 % اخي الكريم هل لك ان تحدد اين تظهر المشكلة بالضبط هل تظهر المشكلة في نموذج معين او استعلام معين وماهو اصدار الاوفيس الذي تستخدمه
  14. طبعا ممكن ذلك اخي طارق ساوافيك بالمرفق غدا ان شاء الله
  15. تحياتي استاذنا الغالي بالفعل تواردت الخواطر في نفس اللحظة وحتى نفس الكود الذي ذكرته لكنني احببت الاختصار قدر الامكان
  16. اخي سلمان الحمدلله على سلامتك الكود المستخدم للتحديث هو Requery لاحظ الكود في الصورة بعد اختيار النموذج المراد عرضه نضع الكود اصدقك القول اني لم اتعامل مع الوورد من قبل على العموم امهلني بعض الوقت لارى ان كان بالامكان تنفيذ طلبك
  17. تفضل اخي الكريم list box1.rar
  18. تفضل اخي الكريم هذا المثال البسيط قاعدة بيانات1.rar
  19. اخي طارق تحية طيبة المفترض ان يتم البحث و عرض الصور من ضمن البرنامج نفسه لا ان يتم يدويا لنفرض الآتي : الشخص س ورقمه 4000 سجل وثيقة زواج للمرة الأولى سيكون رقم الصورة في هذه الحالة 4000 زواج اذا اراد هذا الشخص اضافة وثيقة زواج للزوجة الثانية في هذه الحالة كيف سيكون رقم الصورة ؟؟؟؟؟؟ اذا كان 4000 زواج ففي هذه الحالة ستحذف صورة وثيقة الزواج الاولى وتستبدل بالثانية واذا اراد ان يطلق الزوجة الاولى و الثانية و ان يتزوج الثالثة ؟؟؟؟؟ كيف ستكون ارقام الصور في هذه الحالة اذا استخدمنا رقم الايدي الخاص بالشخص ؟؟ لذلك يجب ان تكون ارقام الصور هي ارقام فريدة غير قابلة للتكرار لتلافي حدوث استبدال للصورة في حال تكررت حالة الزواج او الطلاق
  20. تفضل اخي الكريم ولا تنسى ان تضع خاصية ( مفتاح المعاينة ) الى ( نعم ) في بقية النماذج Database2.rar
  21. طبعا ممكن ذلك انظر الى النموذج frm2 يظهر الناتج بعد كتابة التاريخ الثاني dsum3.rar
  22. اخي طارق تحية طيبة افتح نموذج اعدادت الصورة ( picsetting ) و عدل دقة الصورة الملتقطة الى 200 عوضا عن 2000
×
×
  • اضف...

Important Information