اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

نجوم المشاركات

  1. sandanet

    sandanet

    الخبراء


    • نقاط

      15

    • Posts

      1366


  2. kha9009lid

    kha9009lid

    الخبراء


    • نقاط

      13

    • Posts

      1347


  3. محمد أبوعبدالله

    • نقاط

      9

    • Posts

      1998


  4. jjafferr

    jjafferr

    أوفيسنا


    • نقاط

      8

    • Posts

      10020


Popular Content

Showing content with the highest reputation on 11/18/19 in مشاركات

  1. السلام عليكم ورحمة الله تعالى وبركاته أما بعد ... استكمالاً لفكرة سابقة قدمها الاستاذ الخبير @SEMO.Pa3x "حسنين حرزالدين" على الرابط التالي جعل قاعدة البيانات تعمل بوجود الانترنت ( تفعيل عن بعد ) ومن ثم فكرة الاستاذ الخبير @Elsayed Bn Gemy "السيد جمال السيد" على الرابط التالي التحكم فى قفل وفتح قاعدة البيانات اونلاين ومن ثم فكرة الاستاذ القدير @صالح حمادي على الرابط التالي https://www.officena.net/ib/topic/97710-التحكم-فى-قفل-وفتح-قاعدة-البيانات-اونلاين/?do=findComment&comment=596125 وبعدها اقترحت المساهمة بتطوير فكرة الاستاذ السيد والاستاذ صالح وبمساعدة الاساتذة الكبار وعلى رأسهم الاستاذ الجليل المبدع دائماً " الاستاذ جعفر " @jjafferr الذي له الفضل الكبير علي من بعد الله والاستاذ "Abu Elkaram" @AlwaZeeR مع الاخذ بالاعتبار ماتقدم به الاستاذ حسنين في هذه المشاركة https://www.officena.net/ib/topic/97710-التحكم-فى-قفل-وفتح-قاعدة-البيانات-اونلاين/?do=findComment&comment=596463 وبالقليل من المجهود الذاتي توصلت الى الطريقة التالية في تفعيل البرنامج عن طريق الانترنت وحماية البرنامج من النسخ وها أنا اضع ملف مقفل للتجربة قبل وضع الملفات مفتوحة . أتمنى من الاساتذة تجربته وابداء الملاحظات لتطوير البرنامج والشكر موصول لكل من ساهم ولو بالقليل في انجاح هذا البرنامج تحياتي https://www.dropbox.com/s/066y7hbt7zna87b/protection_trial.zip?dl=0 protection_trial.zip
    6 points
  2. وعليكم السلام هذا هيكون صعب فالصف هيبقى طويل قوى لو ممكن عمل فى صفحة 2 بحث بمجرد ادخال اسم الشركة يجلب كل بياناتها بطريقة رأسية هيبقى بالطبع أفضل بكثير وتستطيع رؤية كل البيانات بسهولة ويسر تفضل تم بمعادلات المصفوفة ترحيل.xlsx
    3 points
  3. آمل التوضيح أخي جمال أين تريد إضافة العملة في أي نموذج أو تقرير ؟ حياك الله أخي أحمد ما هي الرسالة التي تظهر لك حين العمل على اوفيس 2003 آمل إرسالها للنظر في نوع الرسالة أو الخطأ . اتبع الخطوات التالية كما هي موضحة في الصورة المتحركة : بالسلامة
    2 points
  4. الاخوة الاعزاء اساتذتى الافاضل ب السلام عليكم ورحمة الله وبركاته بعد اذن حضراتكم ممكن اشارك بحل ترتيب.rar
    2 points
  5. السلام عليكم 🙂 شكرا على هذه التحفة ، المكملة لبقية التحف والتي ذكرت روابطها في او مشاركة 🙂 بهذه الطريقة ، فعلا اصبح المنتدى يزخر بما لذ وطاب 🙂 الآن اخونا @SEMO.Pa3x بيشتغل عليها ويدلو بدلوه فيها 🙂 جعفر
    2 points
  6. جرب الملف تحياتي جدول1.xlsx
    2 points
  7. كبداية المشروع لا يتعدى مبيعات مشتريات مخزون على عجالة اقترح جدول للموردين رقم المورد اسم المؤسسة المندوب ارقام الاتصال الخ اذا كان الدفع نقدي نكتفي بحقل المبلغ المدفوع في فاتورة شراء والا فنحتاج جدول للسداد جدول للاصناف رقم الصنف الصنف المورد الكمية سعر الشراء سعر البيع الوحدة (حبة او كرتون او .... الخ) وممكن عمله عن طريق جدولين للمشاريع الصغيرة جدول واحد يكفي جدول راس الفاتورة شراء رقم الفاتورة تاريخها المورد نوع الفاتورة نقدي او اجل السعر الاجمالي جدول اطراف شراء رقم الصنف الصنف المورد الكمية سعر الشراء الكمية المتبقية في المخزن قبل الشراء الحالي لغرض تحديث الكمية في جدول الاصناف بعد كل عملية شراء جدول راس الفاتورة بيع مشابهه لرقم 3 مع اضافة حقل لعدد الاصناف وحقل لعدد البنود جدول اطراف الفاتورة بيع مشابه ل 4 مع اضافة حقل للخصم حقل للضريبة حقل للكمية المتبقية من الصنف بعد البيع لغرض تحديث الكمية المتبقية في جدول الاصناف جدول موزعين جدول السداد للموزعين ( الكهربائيين ) الجداول من4 الى 6 يمكن اختصارها الى جدولين مع تحديد نوع الفاتورة شراء او بيع بالنسبة للموزعين ( الكهربائيين ) انت يهمك مشترياتهم منك وسدادهم للمبالغ وما اعتقد يهمك لمن يبيع هذة كبداية وفي الموقع العديد من الامثلة وفي المرفقات ملف نصي لا اعرف من كتبه جزاه الله كل خير يشرح انشاء مشروع مشابه ربما يفيدكم الاطلاع مع اعتذاري لكوني كتبت الرد بشكل سريع علما بانه في عملية انشاء قواعد البيانات ربما يستغرق وقت التخطيط والتحليل والاستشارة وقت يفوق المدة المطلوبة لبناء القاعدة Warehouses_and_Saling_system.rar
    2 points
  8. استاذي @kha9009lid لكونك خبير في الاكسس فهذا يعني انك ملم اكثر منا في شتى جوانب الاكسس لذلك مهما كان اهتمامك حول أي موضوع بالمننتدى فتفاعلك سيكون بالتأكيد مفيد لنا تحياتي لك
    2 points
  9. والله يا استاذي انا الى لي الشرف بمعرفة امثالكم كنت اقصد في مشاركتي انه طالما ان التفعيل يكون عن طريق الانترنت فيفترض الا يمكن الوصول الى النماذج وخيارات القاعدة لانه يمكن تجاوز النموذج الخاص بالتفعيل والدخول للخيارات وتعديل نموذج البداية ولكن بعد ردك فهمت ان الهدف الحالي فقط اختبار فاعلية التفعيل عن طريق النت وكبداية لما سياتي لاحقا ولكوني لا اهتم بموضوع الحماية لكون جل عملي لجهة العمل او برامج لجهات غير ربحية فلم اطلع على النقاشات والمواضيع المثبت والتي اشرتم اليها في الموضوع مع شكري وتقديري لكم وللزملاء الذين اثروا الموقع بهذة المشاركات المتميزة واعتذر عن اي سوء فهم حصل بغير قصد
    2 points
  10. Application.DisplayAlerts = False ActiveWorkbook.Save ActiveWorkbook.Close Application.DisplayAlerts = True End Sub هاذا الموديل يقوم بإغلاق الملف وحفظة اذا لم ترغب بحفظة احذف السطر ActiveWorkbook.Save
    2 points
  11. جرب هذه الداله بعد اذن أ/ سليم Boook1.xlsx
    2 points
  12. يمكن حلها بثلاث طرق خذف التحديث وسبق ان اشار استاذ @jjafferr لرقم التحديث حسب الاصدار جعل مصدر استعلام التحديث من استعلام اخر وليس من الجدول مباشرة عن طريق اضافة عبارة للاستعلام (SELECT * FROM اسم الجدول) او الانتظار لحين اصدار مايكروسوفت تحديث لحل المشكلة
    2 points
  13. السلام عليكم, هذا جدول يوضح لكم تنسيقات الارقام في الاكسس كالعملة وغيرها. ارجو ان يفيدكم. انواع التنسيقات "5" التنسيق لعدد موجب "-5" التنسيق لعدد سالب "0.5" التنسيق لعدد عشري "0" التنسيق الخاص بالصفر Zero-length string ("") 5 -5 0.5 0 0 5 -5 1 0 0.00 5.00 -5.00 0.50 0.00 #,##0 5 -5 1 0 $#,##0;($#,##0) $5 ($5) $1 $0 $#,##0.00;($#,##0.00) $5.00 ($5.00) $0.50 $0.00 0% 500% -500% 50% 0% 0.00% 500.00% -500.00% 50.00% 0.00% 0.00E+00 5.00E+00 -5.00E+00 5.00E-01 0.00E+00 0.00E-00 5.00E00 -5.00E00 5.00E-01 0.00E00 "$#,##0;;\Z\e\r\o" $5 $-5 $1 Zero بالتوفيق للجميع
    2 points
  14. هذه رسالة تنبيه لانك تقوم بتشغيل استعلام تحديث اضغط yes ليستمر بالعمل تحياتي
    2 points
  15. السلام عليكم الاخ الكريم / S0bhy بارك الله فيك الملف المرفق منك لم اتمكن من فك الضغط الخاص به ولكن اليك المرفق اظن به ما تريد ... شاهد المرفق واشعرنا بالنتائج ( قم بالوقوق علي الصف الذي تريد نسخه بمعادلاته وتنسيقاته في اي خليه فيه ثم اضغط علي الزر الاحمر الموجود بالملف ستظهر لك نافذة تتطلب منك عدد الصفوف المراد اضافتها قم بوضع العدد الذي تريد اضافته ثم اضغط موافق ستتم الاضافة ) تقبل خالص تحياتي نسخ واضافة الصفوف المطلوبه بمعادلاتها وتنسيقاته.xls
    2 points
  16. السلام عليكم الاخ الكريم / اياد م .. بارك الله فيك تقبل خالص تحياتي اليك نفس الملف الخاص بالقدير الصديق العزيز / يحياوي .. جزاه الله خيرا ولكن بتعديل بسيط ليعمل كما تريد ( اغلاق الملف فقط بعد المدة التي تحددها في بنفسك في الكود من خمول الملف ) واليك الملف التالي قم بتجربته واخبارنا بالنتائج تقبل خالص تحياتي غلف الملف بعد مدة من ترك ملف غير نشط.xls
    2 points
  17. وعليكم السلام ورحمة الله وبركاته استخدم الوحدة النمطية التالية Function strHijri(dtGregorian As Date) As String ' returns a date in Hijri format for a given western date VBA.Calendar = vbCalHijri strHijri = Day(dtGregorian) & "/" _ & Month(dtGregorian) & "/" _ & Year(dtGregorian) VBA.Calendar = vbCalGreg End Function ثم استخدم التالي في اي مكان في البرنامج =strHijri([اسم حقل التاريخ]) TEST - Copy.accdb تحياتي
    2 points
  18. في كثير من الاحيان، نلجأ الى استخدام الدالة IF أو غيرها من دوال الشروط للتحقق من قيم رقمية. ملاحظة: الدالة تتحقق من الارقام فقط. مثلا لو كان الحقل يتحوي القيمة 1 اظهر لي رسالة جيد واذا كان الحقل يحتوي القيمة 2 اظهرلي رسالة متوسط واذا كان الحقل يحتوي القيمة 3 اظهر لي رسالة ضعيف في الوضع الطبيعي VBA داخل النماذج يكون If txt_Status = 1 Then MsgBox "جيد" ElseIf txt_Status = 2 Then MsgBox "متوسط" ElseIf txt_Status = 3 Then MsgBox "ضعيف" Else MsgBox "لا توجد قيمة مطابقة" End If وفي الاستعلام يكون Check_Value: IIf([text_Status]=1;"جيد";IIf([text_Status]=2;"متوسط";IIf([text_Status]=3;"ضعيف";"لا توجد قيمة مطابقة"))) اما الدالة Choose مختصرة وسهلة اكثر. Nz(Choose(txt_Status, "Good", "Semi-Good", "Bad"), "No Value !") تقوم الدالة بعرض مكان القيمة الصحيحة بين القيم الموضوعه حسب الحقل الموجود txt_Status تحياتي لكم. حسنين
    1 point
  19. عليكم السلام، اهلا بالمعلم. سبق وذكرت سابقاً اني اعتزلت الهندسة العكسية منذ سنوات طويلة. لكن بما انك وجهت لي دعوة فهذا يشرفني. اولا: البرنامج يتصل هنا https://dl.dropboxusercontent.com/s/n702324j1aclxel/active1.txt تظهر البيانات مشفرة 251252255254253252250248256247249256245249249245250248249257292250253245249249245250248249257213210252252253252251249257253252247248249245249249245250248249257292249256245249249245250248249257213210251254253252251249257256248247248249245249249245250248249257292250248245249249245250248249257213210251253254253252251248257252247249256245249249245250248249257292250253245249249245250248249257213210250248250252254257248255248247249256245249249245250248249257292250253245249249245250248249257 بعد فك التشفير 347654208/18-11-2019\25-11-2019 445431954/01-11-2019\18-11-2019 365431980/01-11-2019\20-11-2019 356543094/18-11-2019\25-11-2019 202469070/18-11-2019\25-11-2019 الرقم الاول يمثل رقم العميل / تاريخ اليوم / تايخ انتهاء التفعيل اعجبتني عبارة ( هناك خطأ غير متوقع ؟ ) بالنهاية شكرا للاخ صاحب الموضوع على مجهودة الجميل
    1 point
  20. 1 point
  21. المرفق الذي أرسلته لك كما هو طلبك .. انظر الصورة التالية :
    1 point
  22. كل الشكر على الرد السريع ضبطت معاي الله يوفقكم ويرزقكم الفردوس الأعلى
    1 point
  23. احسنت اخي @أحمد الفلاحجى فعلا الملف للاستاذ محمد فؤاد جزاه الله كل خير اعتقد انه كان يشارك في منتديات الفريق العربي للبرمجة
    1 point
  24. أستاذي الكريم @kha9009lid لقد ارفقت صورة تدل على انك فتحت النموذج frm3 فقط لا أعلم ما المقصود من ذلك فأنا لم اشر الى عدم امكانية الدخول الى باقي النماذج وانما فكرة البرنامج هي تطوير طريقة التفعيل عن طريق الانترنت استاذي الفاضل @kanory يبدو ان الاصدارات الحديثة لاتتفاعل مع الأكواد البرمجية للإصدارات القديمة فأنا جربت الملف على اصدار اوفيس 2003 و 2007 و 2010 فقط .. ارجو منك ارفاق صورة للنموذج frm2 لمعرفة مكان الخلل
    1 point
  25. الاخوة الكرام السلام عليكم ورحمة الله وبركاته لدي نموذج يعرض درجات طلاب ويوجد به حقل غير منضم للتحقق من نجاح او رسوب الطالب ( ولا ارغب ان يكون هذا الحقل في استعلام لاسباب ) المهم اني اريد عمل فلتر للطلاب بناءاً على مربع تحرير وسرد غير منضم ايضا اختار منه الحالة التي اريد ان يتم الفلتر عليها مرفق مثال وبه تجربة لكود الفلتر Db5.rar تحياتي
    1 point
  26. أنظر أخي .... لم افعل النسخة ظهرت هذه ؟؟؟؟
    1 point
  27. تفضل قد تفيد في تصفية النموذج أنظر , Db5.rar
    1 point
  28. السلام عليكم 🙂 شكرا اخي كاسر ، فلقد تذكرت اني مررت بمثل هذه المشكلة ، ودخت الى ان عرفت المشكلة 🙂 لما تستخدم الاكسس 2007 فما فوق ، فالاكسس يحمي الكمبيوتر ولا يسمح لك ان تفتح اي برنامج ، اذا اردت فتح البرنامج في مجلد "غير موثوق به" ، لذا ، اذا فتحت البرنامج في مجلد غير موثوق به ، سيظهر لك هذا الخط الاصفر ، وبه زر "تمكين المحتوى" : . لذا عليك بضغط الزر ، وسيعمل الكود في برنامجك بطريقة عادية. ولكن ، وحتى لا تحصل على هذه الرسائل دائما ، يجب عليك ان تعمل مجلد/مجلدات موثوق بها : ويجب ان تتأكد من انك سمحت للاكسس ان يعطيك الخط الاصفر : بعد هذا ، المفروض ان برنامجك يشتغل عدل 🙂 ولكن ، هناك مشكلة يقوم بها الكثير من المبرمجين ، وهذه المشكلة في جعل النموذج: منبثق = نعم ، شكلي او مشروط = نعم ، ويجعل النموذج ينفتح على حجم الشاشة (docmd.maximize) : . فلما ينفتح البرنامج ، سيكون الخط الاصفر خلف النموذج ، فلن تراه ، وعليه لن يعمل البرنامج !! جعفر
    1 point
  29. ما شاء الله .... الله اكبـــــــــــر تمام جزاكم الله خيـــــــرا اعتذر للتأخيــــــر .. كنت على سفر
    1 point
  30. بالتوفيق اخي الكريم ليس هذا السبب الوحيد ايضا كان لديك خطأ في ترتيب احداث زر الامر حفظ لكونك عملت مايكروا ووضعت فيه مجموعة احداث لم ترتب بشكل صحيح لكون حدث اضافة سجل انت وضعته قبل تشغيل استعلام تحديث وبالتالي يتم تنفيذ استعلام لتحديث حقل فارغ جزاك الله خير على الدعاء وتقبل كل الود والتقدير
    1 point
  31. الف شكر استاذي الفاضل فعلا المشكلة كانت في استبدال الجدول باستعلام كما في الطريقة 2 وضبطت المشكلة اسال الله العلي القدير ان يوفقك ويحفظك
    1 point
  32. وعليكم السلام-تفضل =CONCATENATE(E4," ",E5," ",E6," ",E7," ",E8," ",E9," ",E10," ",E11)
    1 point
  33. ما شاء الله استاذي @sandanet لا تنفك أن تقوم بتطوير الحماية بشكل افضل .. تعتبر أنت كنز ثمين لمنتدانا الشامخ .. فجزاك الله عنا كل خير .. ساقوم بالتجربة بأذن الله .. بعد التحميل أكثر من مرة ظهرت رسالة تلف الملف هل ممكن أعادة رفع الملف
    1 point
  34. يختلف تصميم كل موقع في تسمية الحقول وهذا مثال لاستاذنا جعفر يشرح الطريقة تحياتي
    1 point
  35. ممكن اعرف ايه الفائدة من عمل نسخه كل ساعة؟ سوف تتراكم النسخ الاحتياطية وتأخذ مساحة من القرص الصلب كبيرة لو افترضنا أن سوف يكون لديك في اليوم ١٠ نسخ * عدد ايام عمل البرنامج في الشهر يكفيك نسخة كل يوم او كل شهر ..
    1 point
  36. السلام عليكم بالنسبة لربط الشهادة (وورد) بملف إكسيل يحوي عدة شيتات غير ممكن (باستعمال خاصية "دمج المراسلات") حسب رأيي... ولحل المشكلة قمت بإنشاء شيت جديد "الشهادات" في ملف الإكسيل الذي فيه البيانات وإدراج المعادلات اللازمة لاستخراج هذه الشهادات كما تريد مع كود لطباعة كل هذه الشهادات... أرجو أن تفي الغرض المطلوب... بن علية حاجي المصنف1.xlsm
    1 point
  37. وعليكم السلام-تفضل استاذ قيس لك ما طلبت المصنف1.xlsm
    1 point
  38. السلام عليكم ورحمة الله أحببت أن أشارك معكم في بخصوص هذا الموضوع بطريقة مختلفة بعض الشيء.. أرجو أن تجدوا فيها شيئا جديدا :: تنبيهات --- يتم رسم التقرير برمجيا.. --- عدد السجلات في رأس التقرير ثابتة من ناحية التصميم، متغيرة من ناحية البيانات.. - يتم تفيير البيانات في هذا المقطع وفقا لكميات البيانات.. - تستطيع كمية البيانات في هذا المقطع زيادة عدد صفحات التقرير تناسبا مع مصدر بيانات التقرير.ز - عدد السجلات المعروضة في هذا المقطع (10) سجلات لكل صفحة --- مصدر البيانات الأساسي هو الاستعلام (QRY_MATERIAL) --- يعاد بناء هذا الاستعلام كاستعلام (توحيد) بناءً على الفرضيتين التاليتين: -- التوحيد من أجل تكملة العشرة.. -- يتم إخفاء السجلات الوهمية بفحص معطيات الحقل الوهمي (TEST) - تزيد قيمة هذا الحقل كلما زادت الاستعلامات الوهمية (...،0،1،2) - البيانات الحقيقة تأخذ القيمة (0) --- إذا كانت بيانات مقطع الرأس أكبر من بيانات مصدر البيانات الأساسي -- يزيد عدد الاستعلامات الوهممية بواقع استعلام لكل (10) سجلات لزيادة عدد الصفحات -- يتم احتساب عدد الاستعلامات وتضمينها برمجيا بواسطة الإجراء (UNION_SQL) أرجو ألا تبخلوا بالنقد والتعليق😁 MATRIX REPORT.accdb
    1 point
  39. السلام عليكم بعد اذن استاذنا الكبير بن علية حاجى يمكنك محاولة تفهم المعادلات بنفسك لحسن التعلم فهذه المعادلة تستخدم لفصل المادة : =IF(E3="","",IF(ISERROR(FIND("/",E3,1)),TRIM(MID(E3,1,FIND("الشعبة",E3,1)-1)),TRIM((MID(E3,1,FIND("الشعبة",E3,1)-1))&(MID(E3,FIND("/",E3,1),FIND("الشعبة",E3,1)-1))))) وهذه لفصل الشعبة -فكل ما عليك تغيير رقم الخلية التى بداخل المعادلة للخلية التى تريد الفصل منها =IF(E3="","",IF(ISERROR(FIND("/",E3,1)),TRIM(MID(E3,FIND("الشعبة",E3,1)-1,15)),TRIM(MID(E3,FIND("الشعبة",E3,1)-1,FIND("/",E3,1)-FIND("الشعبة",E3,1)+3))&" "&TRIM(MID(E3,FIND("الشعبة",E3,FIND("/",E3,1)),15)))) اتمنى ان تكون قد تفهمت الموضوع فهو بسيط وسهل
    1 point
  40. طيب يا اخى الحبيب واستاذى الجليل تركت لنا البرنامج بدون ان تضع كلمة مرور المستخدم واشتاق ان اطلع عليه كثيرا اين كلمة المرور
    1 point
  41. بارك الله فيك أخي @ابوآمنة يكون هذا العمل ذخراً لك يوم القيامة .. واحتسب الاجر عند الله
    1 point
  42. ماشاء الله برنامج متعوب عليه ... بارك الله فيك
    1 point
  43. جزاك الله خيراً علي هذا العمل الكبير والمفيد جدا لمعظم الاعضاء جاري الاطلاع والإفادة بعد الاطلاع برنامج متعوب فيه وجميل جدا بارك الله فيك وجزاك الله خيرا
    1 point
  44. أخي الكريم المفترض انت من يضع المثال للتعديل عليه . لكن انظر المثال .... حاول التعديل على النموذج ثم قم بالتحديث ولاحظ الفرق Ka-Update.rar
    1 point
  45. اعرض الملف إرسال البريد من الأكسس بسم الله الرحمن الرحيم السلام عليكم ورحمة الله وبركاته كل عام أنتم بخير وسعادة ورضا ************** موعدنا اليوم مع ملف يحتاجه كل مهتم ببرمجة الأكسس في إرسال رسائل بريد للعملاء أو المستخدمين ====== مباشرة بدون استخدام برنامج outlook من خلال CDO وكذلك باستخدام outlook --------------------------- بالنسبة لاستخدام cdo يجب إدخال عنوان بريدك في gmail وكلمة مروره في المكان المخصص في الكود مع استعمال جميع المميزات /////////////////////////////////////////////// وبالنسبة لمن يستخدم outlook يجب أن يكون تطبيق اوتلوك مثبت على الجهاز ومفعل مع استعمال جميع المميزات ****************************** يوجد بالملف كود للتأكد من الاتصال بالانترنت من عدمه وكذلك لفتح صندوق حواري اختيار ملفات ********************** الكود يعمل على كل إصدارات الأوفيس دمتم في رعاية الله وحفظه والقادم أفضل إن شاء الله صاحب الملف أ / محمد صالح تمت الاضافه 25 ماي, 2017 الاقسام قسم الأكسيس
    1 point
  46. السلام عليكم ورحمة الله جرب اخى هذا المرفق _رأس و تذييل .rar
    1 point
  47. الخطوه الأهم في تصميم اي قاعدة بيانات هي وضع مخطط العمل , و لكي نعرف مخطط العمل لابد من الاحاطه بالهدف المطلوب من انشاء قاعدة البيانات . لدينا شركة NorthWind أو الرياح الشماليه , شركة تقوم بشراء وبيع البضائع , عملية الشراء غير مطروقه في هذه القاعده , و انما الاهتمام كله موجه لعملية البيع ( و طبعا بالامكان تصميم مايلزم لعمليات الشراء ) . عملية البيع تتم بناء على طلبيات مسبقه من العملاء , بحيث يتم تحديد الأصناف المطلوب ارسالها للعميل و الأسعار ووسيلة الشحن وموعد الشحن المطلوب و رقم الموظف الذي قام بتسجيل بيانات الطلبيه . بالنسبه للبضائع لابد من مراعاة أن يكون هناك مخزون متوفر حيث أن البضائع التي تم بيعها للعملاء ستخفض الرصيد الموجود بالمخازن , و طبعا في حال انخفاض هذا الرصيد عن حد اعادة الطلب , فيجب اعداد طلبية شراء لتغذية المخزون , و لكن كما ذكرنا عملية الشراء غير متطرق اليها في هذه القاعده . اذا يمكننا الآن أن نضع تصورا للجدول التي ينبغي انشاؤها حيث : - طالما لدينا بضائع يتم بيعها اذا لابد من انشاء جدول خاص بالبضائع Product - لدينا عملاء اذا نحتاج الى جدول للعملاء Customers - لدينا طلبيات اذا نحتاج الى جدول خاص للطلبيات اذ لكل عميل طلبيه مستقله Orders هذه هي الجداول الرئيسيه التي نحتاجها و سنقوم بتصميمها الآن . قبل البدء بتصميم الجداول لابد من الاشاره الى بعض التوصيات في بناء الجداول و هي : أولا : الجدول هو المادة التخزينيه للبيانات الرئيسيه , اذ يجب أن يحتوي على القيم التي لاتتأثر بغيرها اي على سبيل المثال اذا كانا نريد حساب المعادله التاليه القيمه = الكميه * سعر الوحده يمكن أن نضع حقلا للكميه المباعه و حقلا لسعر الوحده أما القيمة و التي هي عباره عن سعر الوحده * الكميه , فلا يجب أن يكون حقلا ضمن الجدول وذلك لأنه يتأثر بقيمة كل من الكمية و السعر فاذا تغير سعر الوحده فان الجدول لايستطيع حساب القيمه من تلقاء نفسه الا من خلال تشغيل كود معين , لذلك يستعاض عن هذا باستخراج القيمة من خلال استعلام يحوي حقل محسوب يساوي الكميه * السعر ثانيا : يجب فصل البيانات الخاصه بجزئيه معينه عن بعضها , مثلا الجدول الرئيسي لدينا هو جدول الطلبيات , و حيث أننا نريد أن ندخل اسم العميل في الطلبيه , و حيث أننا نحتاج بنفس الوقت لمعرفة بيانات كامله عن هذا العميل , فاذا كنا سنقوم بادخال بيانات العميل هذه كل مره في جدول الطلبيات فسيكون هذا عملا مرهقا , لذلك احتجنا أن تكون بيانات العميل في جدول مستقل تجتمع فيه بياناته الكامله , و نكتفي في جدول الطلبيات بوضع حقل واحد لرقم العميل , و بعملية الربط بين الجدولين نستطيع معرفة مانريد من بيانات عن هذا العميل . ثالثا : يفضل أن تكون استخدام الأسماء الانكليزيه لكل مكونات قاعدة البيانات و خاصة اسماء الجداول و الحقول , لأن استخدام الأسماء العربيه يسبب ارباكات أثناء العمل بالمعادلات و أكواد الفيجوال بيسيك رابعا : تجنب وضع مسافات في التسميات , مثلا اذا كنت تريد تسمية Product List فالأفضل وصلها هكذا ProductList لنبدأ الآن بتصميم الجدول الأسهل في هذه القاعده و هو جدول العملاء , و لنتصور أنه يحتوي الحقول التاليه : اسم العميل CompanyName العنوان Address المدينه City الدوله Country المنطقه Region الرمز البريدي PostalCode الهاتف Phone الفاكس Fax و سنحتاج اضافة لذلك بيانات عن الشخص الذي سنتصل به مثل اسمه ContactName و عمله الوظيفي ContactTitle و طبعا قبل كل ذلك نحتاج الى كود العميل CustomerID و هو الذي سيكون صلة الربط مع الجداول الأخرى و المفتاح الرئيسي لهذا الجدول قاعدة البيانات هذه موجوده بشكل جاهز مع الأكسس من قائمة الأدوات - أمثله , يمكن تنزيلها للاطلاع عليها , و لكن من أراد أن يستفيد أكثر فليحاول التصميم بنفسه لزيادة مهارته و ليبدأ بتصميم جدول العملاء و سنتابع ان شاء الله بقية الجداول في الدرس التالي
    1 point
×
×
  • اضف...

Important Information