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

ابوخليل

أوفيسنا
  • Posts

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

  • Days Won

    239

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

  1. Between [forms]![start]![frm]![date_m] And [forms]![start]![frm]![date_m1])) OR Between [forms]![start]![frm]![date_h] And [forms]![start]![frm]![date_h1])) معيار الاستعلام 2.rar
  2. عليكم السلام ورحمة الله وبركاته بداية عندي لك توجيه حول تسمية الكائنات : فمن الخطأ تسمية الكائنات والعناصر بأرقام فقط حيث يجب ان يبدأ اسم الكائن بحرف فمثلا : الاستعلام بدلا من 551 يكون اسمه q552 فحرف q يرمز الى query >>> او اي حرف آخر والتقرير بدلا من 551 يكون اسمه r552 فحرف r يرمز الى report >>> او اي حرف آخر بالنسبة لمشكلتك ( حسب تصميمك للبرنامج ) لها حل وحيد وهو ان تدرج حساب جديد مثلا : عهد اعمال ومشتريات من موظف تفضل تم التعديل حسب ما تم ايضاحه مشكلة في التقرير00.rar
  3. الف مبروك للعراق وحظ اوفر لعمان تحب المحارش يابو احمد _ الله يحفظك _ والا العناد ليس من صفات المدح ما تدري الا جايينك على عسبان النخل .. وقتها فك روحك امزح .. قصدك انت ان هممهم عالية وأهل للمنافسات القوية
  4. شكرا ابو احمد على المرور .. جميع ما في المنتدى حلالك اخي طاهر : فقط ضع كود التحويل في حدث النموذج الحالي Private Sub Form_Current() Me.date_h = UmR2L(date_m) Me.date_h1 = UmR2L(date_m1) End Sub تفضل بعد التعديل فترة بين تاريخين ميلادي وهجري.rar
  5. من الاهمية بمكان الاحتراف في تصميم الجداول ، لأنها القاعدة التي يبنى عليها البرنامج ، لذا سميت قواعد بيانات وحتى نتمكن من بناء الجداول بطريقة سليمة وصحيحة ونتلافى المشاكل والصعوبات في تنفيذ بعض الاجراءات مستقبلا : يجب عند التصميم ان نتخيل ونتصور عمل جميع واجهات الادخال وواجهات الاخراج ، بمعنى اوضح يجب ان اتخيل عمل النماذج عند الادخال ، وكيف استخرج وأعرض ادق البيانات كتقارير بأقل عدد من الاستعلامات والأكواد . الاصناف تختلف حسب المشروع ، والاساس هو ثلاثة اشياء : كود الصنف واسمه وسعر البيع ، وبعض الاصناف تحتاج الى شيء من التفصيل كــ الوحدات والعدد في كل وحدة ونحو ذلك لم اذكر سعر الشراء لأن سعر الشراء مرتبط برقم الفاتورة ، وتتم عمليات الشراء على فترات متباعدة وقد يتغير السعر في الصنف الواحد بين فاتورة وأخرى ، ومكانه الصحيح في جدول الحركات او ما يسمى بتفصيل العمليات ، بينما سعر البيع مرتبط برقم الصنف ، وعمليات البيع مستمرة على مدار الساعة لذا تثبيت سعر البيع مطلوب من اجل السرعة في الادراج في جدول الحركة فهو عبارة عن مشتريات لم تسجل بعد ، سواء عند العمل على البرنامج لأول مرة .. او عند الجرد السنوي والرغبة في ترحيل بيانات العام المنصرم والعمل من جديد وهنا تتضح اهمية تحليل البيانات وتصميم الجداول بما يتوافق معه . تصور انك في نهاية العام وبعد اخذ نسخة احتياطية تستطيع تصدير الاصناف المتبقية في المخزن ثم استيرادها الى النسخة الجديدة كرصيد افتتاحي . معظم البرامج يوجد فيها هذه الخاصية .. ولكنها غير متاحة الا لصاحب الصلاحية ، لأن الاصل عدم التعديل .. والحذف محظور تماما تجد ادناه مرفق لبعض الجداول الأساسية لعمليات البيع والشراء اطلع عليها جيدا ووافني بما يشكل عليك فهمه ملحوظة : سوف افصل المشاركات الاخيرة بموضوع وعنوان جديد buyAndSale.accdb
  6. السلام عليكم تم فصل هذا النقاش من موضوع سابق لتطرقه الى عملية بناء الجداول من الامور المتعارف عليها خاصة في برامج الحسابات والمالية هي منع منعا باتا اجراء الحذف او التعديل على البيانات التاريخية ويقصد بالبيانات التاريخية كل ما سبق ادخاله بعد اجراء عملية الحفظ . بحيث لو تم ارجاع سلعة بعد ساعة من البيع فانه يتم عمل ارجاع للسلعة بعملية جديدة وسجل جديد . ولست بحاجة الى مرفق فالمسألة واضحة فالمكان الذي نسجل فيه قيمة المشتريات او قيمة المبيعات نضع فيه العدد في الاخير وعند الاستعلام والجرد : نطرح مجموع المبيعات من مجموع المشتريات لاظهار المتبقي ...... لو طلب صاحب العمل تقريرا بعدد مشتريات صنف معين خلال سنتين : كل ما علينا هو عمل استعلام لجمع عمود المشتريات اما حسب فكرتك الحالية .. فسوف تعمل على جمع عدد المبيعات من هذا الصنف + ما تبقى من المشتريات ... وهذا لا يعطي نتيجة صحيحة ودقيقة في الغالب لوجود مرتجعات بيع وشراء واصناف تستبعد لعدم صلاحيتها .
  7. وجهة نظري ان الكميات مكانها جدول التفاصيل .. سواء كان العمل على جدولين او جدول واحد للمبيعات والمشتريات جعلها في جدول الاصناف غير مناسب اوبالاصح غير احترافي المبرمج او المصمم لقواعد البيانات يبحث عن التعامل المستقبلي السهل مع البيانات
  8. يبدو انك تعمل على تعديل نسخة من برنامج الاستاذ صالح @ابوآمنة فرجعت الى محفوظاتي ووجدت لك نسخة متكاملة .. عمل احترافي رائع متقن .. وفي الوقت نفسه يحقق طلبك الذي هو : عند النقر على الزر مرة أخرى يزداد العدد والشيء الجميل ان تحقيق ذلك يتم من طريقين اما بالنقر على الزر مرة اخرى او النقر على علامة + في النموذج الفرعي Restaurant100%.rar
  9. جميل جدا استاذ خليفة مرجع جميل مفيد وأفكار فريدة ..
  10. تفضل المعيار متغير عام فلترة5.accdb
  11. كون التصميم بسيط ومباشر ، هذا يحقق القوة والسرعة انظر هذا التعديل .. بلا اكواد ولا استعلامات ولا فلترة فلترة4.accdb
  12. عليكم السلام شكرا استاذ حمدي على حرصك واهتمامك بما يخدم المصلحة العامة طبعا في موضوع وعنوان جديد افضل . وللعلم موضوعنا هذا : ( تعريف مربعات نص غير منضمة الى كود الارسال ) سوف اقوم بتعديله الى : ( تنسيق الرسالة الى واتساب )
  13. جربت على اول مرفق لك وادخلت قريب من 15 الف سجل لأتأكد من السرعة ، تفاجأت انها اسرع من رمش العين لذا رددنا بضاعتكم اليكم ومؤكد ان الخلل عندك في برنامجك وليس المثال فلترة3.rar
  14. لو بينت لنا حاجتك الى ما تريد عمله .. اي ما الفكرة من اظهار البيانات في الرئيس رغم وجودها في الفرعي .. حيث ان المصدر جدول واحد هل استفساري واضح ؟
  15. ملحوظة في مثالك يوجد فنكشن مفقود باسم mm()
  16. لم ابحث في الخطوط ، يمكن ان نجد خطا مشابها ولكن لدي مثال لرسم هذه الكلمات بالكود في التقرير للاستاذ منصر الآنسي تفضل اذا كانت تفي بالغرض التقارير الآنسي2.mdb
  17. غفلت ان انبهك لعمل فهرسة لحقل كود الصنف وهي سبب رئيس في هذه المشكلة جرب اعمل فهرسة للحقل في خصائص الجدول
  18. عليكم السلام ورحمة الله وبركاته يوجد اكثر من طريقة لتنفيذ التصفية احدها الاعلان عن متغير عام يحمل قيمة كود الصنف ويتم توظيفه للبحث عنه في النموذج الرئيس ولكنك تريد السرعة في التنفيذ لذا ارشح لك التصفية من خلال الاستعلام انظر في مصدر بيانات النموذج الرئيس ( الاستعلام ) اتمنى ان يفي بالغرض فلترة2.accdb
  19. تفضل Private Sub cmb_Committe_Click() If cmb_Committe = "النموذج الاول" Then DoCmd.OpenForm "نموذج1" ElseIf cmb_Committe = "النموذج الثانى" Then DoCmd.OpenForm "نموذج2" ElseIf cmb_Committe = "النموذج الثالث" Then DoCmd.OpenForm "نموذج3" End If End Sub القوائم2.rar
  20. انظر هذه المشاركة تماما مثل طلبك ثم انظر الحل في المشاركة التي تليها
  21. ايضا لدي توجيه للاستاذ حمدي _ وسبق ان نبهت عليه ما دام الاستاذ موسى اجرى تعديلات جوهرية على الملف _ حاول ان تجعل هذا الملف هو الاساس عند طلبك لتعديلات اخرى حول واتساب قم بتسميته اسما فريدا يخصه بحيث تصل اليه بسهوله اعتقد انك تفهم قصدي .. لانك في كل استفسار ترفق مثالا يختلف عن ما سبقه . يجب ان يكون العمل تراكمي على مثال واحد .. وتكتفي انت بالنسخ واللصق في برنامجك اذا طبقت هذا ستجد القبول من اخوتك وستجد سرعة المبادرة في مساعدتك
  22. شكرا استاذنا على التعقيب وبهذا يصبح الكود حسب ما هو مطلوب : Dim ctl As Control For Each ctl In Me.Controls If ctl.ControlType = 111 Then If x_change = 0 Then ctl.Locked = True Else ctl.Locked = False End If End If Next ctl
×
×
  • اضف...

Important Information