• الإعلانات

    • فيصل الحربي

      تسجيل عضوية جديدة في المنتدى   01/31/2016

      السلام عليكم ورحمة الله وبركاته  عزيزي العضو الجديد :  حاليا رسالة الإيميل لتأكيد صحة إيميلكم تذهب للبريد العشوائي ( جاري حل المشكلة )  فإذا لم تجد رسالة التحقق من إيميلكم في صندوق الوارد لديكم إتجه للبريد العشوائي ( JUNK)  وقم بتفعيل إشتراككم من هناك   

Creative Man

اعضاء
  • عدد المشاركات

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

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

السمعه بالموقع

15 عادي

عن Creative Man

  • الرتبة
    عضو
  1. الخصم المشروط في جدول مبيعات

    الاخ الفاضل   مع الاسف الكثير ينظر للحلول البرمجية انها الهدف الرئيس من حل المشكلات. مع الاسف نفتقد الكثير من بناء المنطق Logic . الحل البرمجي سهل جدا لطلبك لكن الحل نفسه سيولد مشكلة! المشكلة عندك لو تم الخصم المبلغ بنسبة 5% فيتم حسم المبلغ ويتم حفظ القيمة (overwriting) لو اردت الان الغاء الخصم كيف تسترجع المبلغ الاصلي حيث انه تم استبداله بالمبلغ بعد الخصم!!   انت محتاج لبعض التعديلات قبل البدء في الحل البرمجي   اولا يفترض ان تعمل حقل اضافي في الجدول وتسميه  Deduction حيث الحقل سيحمل قيمة الخصم و في نفس الوقت سيمنع من تاثر المبلغ من التغيير وبالتالي نستيطع استعادته اثناء الغاء الخصم   ثانيا قم باضفة هذا الحقل Deduction الى الفورم  مع تبديل القيم المبدئية Default value الى 0   ثالثا قم بتعديل المعادلة في الاستعلام الى التالي total: ([quantity]*[price])-[deduction]   الان ضف هذا الكود الى الفورم Private Sub Cash_Click() Call get_deduction End Sub   Private Sub Price_AfterUpdate() Call get_deduction End Sub   Private Sub Quantity_AfterUpdate()   Call get_deduction End Sub   Public Sub get_deduction()   Const deductionPercent = 0.05 '5%   If Me.Cash = -1 Then     Me.Deduction = 0     Me.Deduction = Me.Total * deductionPercent         Else             Me.Deduction = 0 End If   End Sub       بالتوفيق تحياتي     Sales-Ahmed.zip
  2. الخصم المشروط في جدول مبيعات

    الاخ الفاضل   مع الاسف الكثير ينظر للحلول البرمجية انها الهدف الرئيس من حل المشكلات. مع الاسف نفتقد الكثير من بناء المنطق Logic . الحل البرمجي سهل جدا لطلبك لكن الحل نفسه سيولد مشكلة! المشكلة عندك لو تم الخصم المبلغ بنسبة 5% فيتم حسم المبلغ ويتم حفظ القيمة (overwriting) لو اردت الان الغاء الخصم كيف تسترجع المبلغ الاصلي حيث انه تم استبداله بالمبلغ بعد الخصم!!   انت محتاج لبعض التعديلات قبل البدء في الحل البرمجي   اولا يفترض ان تعمل حقل اضافي في الجدول وتسميه  Deduction حيث الحقل سيحمل قيمة الخصم و في نفس الوقت سيمنع من تاثر المبلغ من التغيير وبالتالي نستيطع استعادته اثناء الغاء الخصم   ثانيا قم باضفة هذا الحقل Deduction الى الفورم  مع تبديل القيم المبدئية Default value الى 0   ثالثا قم بتعديل المعادلة في الاستعلام الى التالي total: ([quantity]*[price])-[deduction]   الان ضف هذا الكود الى الفورم Private Sub Cash_Click() Call get_deduction End Sub   Private Sub Price_AfterUpdate() Call get_deduction End Sub   Private Sub Quantity_AfterUpdate()   Call get_deduction End Sub   Public Sub get_deduction()   Const deductionPercent = 0.05 '5%   If Me.Cash = -1 Then     Me.Deduction = 0     Me.Deduction = Me.Total * deductionPercent         Else             Me.Deduction = 0 End If   End Sub       بالتوفيق تحياتي    
  3. [عنوان مخالف]اسغاثه

    مثل ماقالت الاخت الزهرة الحل هو ان تضع البرنامج هنا اما التشخيص بهذه الطريقة صعب. في حل اخردائما اعمله اثناء تلف ملف قاعدة البيانات:   1- اعمل ملف قاعدة بيانات جديد 2 انقل كافة الكائنات (جداول واجهات الخ) من الملف المعطوب الى الجديد   جرب هذه الخطوات وان شاء الله تصلح معاك   تحياتي
  4. مثل ماقالت الاخت زهرة مطلبك مش واضح من البداية كل مرة يبين شي! بخصوص الليبل عشان يتوافق مع الشريط التقديمي فقط اضف هذا السطر ولنفرض اسم الليبل هو tblLabel tblLabel.Caption=tdf.Name وليكن هذا السطر قبل جملة الحذف DoCmd.RunSQL "DELETE * FROM " & Table.Name & ";"تحياتي
  5.   الاخ العزيز   هذا الكود لحذف جميع محتويات الجدوال في قاعدة البيانات Dim db As DAO.DatabaseDim Sql As StringDim tdf As DAO.TableDefSet db = CurrentDbDoCmd.SetWarnings FalseFor Each tdf In db.TableDefs If Not (tdf.Name Like "MSys*" Or tdf.Name Like "~*") Then Sql = "Delete * From " & tdf.Name DoCmd.RunSQL Sql End IfNextSet tdf = NothingSet db = NothingDoCmd.SetWarnings Trueتحياتي
  6. [عنوان مخالف]اسغاثه

    الاخ العزيز   ملف قاعدة البيانات اكسس مش مثل قواعد البيانات الاخرى SQL  او Oracle عوامل كثيرة بل حتى تافهه قد تسبب في تلف الملف مثل انقطاع التيار الكهربائي لذلك من الافضل عمل نسخة احتباطية يوميا. من اكبر اخطاء المبرمجين في الاكسس هو اثناء عمل برنامج معين يتم عمل ملف واحد يحوي جميع الكائنات وهذا يجعل امر حل الملفات التالفة اكثر تعقيدا. من الافضل فصل الملف الى جزئين Back-End و Front-End   تحياتي
  7. الله يبارك فيك .... ولك بالمثل من الشكر والعرفان   تحياتي
  8. الاخ الفاضل   الملف لم يشتغل لسببين الاول تحتاج ان تفعل الماكرو من الخيارات لكي يتم تنفيذ الكود السبب الثاني انك حتى لو فعلت الماكرو لن يشتغل الكود في التقرير الا اذا غيرت طريقة عرض التقرير من الخصائص الى "معاينة قبل الطباعة" خذ في الاعتبار هذه الاشياء   هذا مرفق ملف بعد التعديل بناء على طلبك اتمنى هو المطلوب   تحياتي Creative Man.rar
  9. عليكم السلام   ببساطة لاتوجد خاصية في قاعدة البيانات للاستعلام عن سجلات محذوفة بخلاف ماهو موجود في قواعد البيانات الضخمة مثل Oracle حيث تمتار بوجد Recycle bin. بمعنى اخر اذا حذفت السجلات فهي غير موجودة في قاعدة البيانات لذلك لايمكن انشاء استعلام لوجود شي هو غير موجود اساسا.   بشكل تفصيلي, تحتاج الى إضافة تفاصيل اكثر. مثلا هل يوجد لديك Backup قبل عملية الحذف ام لا؟ هل تتكلم على جدول واحد من قاعدة البيانات ام عدة جداول   اذا كان هناك backup قبل عملية الحذف تستطيع ان تعمل استعلام بين قاعدة البيانات الحالية و النسخة الاحتياطية قبل عملية الحذف بحيث يقوم الاستعلام بايجاد السجلات الموجودة في النسخة الاحتياطية و الغير موجودة في النسخة الحالية.   نعود لقرائة سؤالك من زاوية اخرى,   هل يمكن عمل استغلام للسجلات المحذوفة؟ نعم يمكن اذا كان هنالك جدول Log يتم فيه تخرين السجلات المحذوفة بعد اي عملية حذف   تحياتي
  10. عمل تسلسل في استعلام

    عمل ممتاز تشكر عليه اخي الكريم   ملاحظة بسيطة:   الكثير من الدوال, الكلاسز او المودلز التي يفوم بنشرها المطورين عادة تحتوي على حاجتين مهمتي   1- Comments: وهي الملاحظات التي توضح وظيفة الكود, مخرجاته , طريقة عمله الخ 2- مزاياه و عيوبه   لكن في الاخر هذا لاينقص هذا العمل الجبار   تحياتي +1
  11. الاخ الكريم   قبل الرد على السؤال لابد ان نستوضح منك بعض الاشياء:   1- اذا كان عدد السجلات هو نفس عدد السجلات التي في الصورة لماذا لاتقوم بالتعديل يدويا لحفظ اليد و التخلص من العناء في كتابة الاكواد لتنفيذ ماتريده 2- لماذا تحتاج ان يكون السجل الفارغ هو نفس السجل السابق مع العلم ان العمود الاخر لايحمل قيمة (فارغ). اليس من الافضل حذف هذه السجلات؟   طبعا سوالك ينقصه كثير من المعطيات ... عشان تجد من يساعدك سهل المهمة للاخرين   تحياتي
  12. الأخ عبدلله انا معك في كلامك وهو منطقي ١٠٠٪ ولقد بينت في النقاط السابقة ان الفرونت اند و الباك اند هو ليخدم غرض تعدد المستخدمين على الشكبة لكني اقترحت هذا الاقتراح من باب ان الأخ أراد ان يكون هنالك ملفين لكل لغة وان يكون التحديث تلقائيا. اذا كان الامر مجرد ملفين فلن تكون الصيانة مكلفة ام اذا تعددت فانا أيضاً معك قد تكون هنالك طرق مثل ما تفضلت لكن بكل أمانة انا لم اتطرق لعمل واجهات بلغات مختلفة واذا كنت او كان اي احد يعرف طرق افضل ليتكرم علينا
  13. في خدمتك عزيزي كان هذا المثال فقط عملي ليكل تصلك الفكرة! اذا فهمتها تستطيع ان تضع المسار الذي يناسبك وتغير في الكود فقط. اذا اضطررت ان تنتقل الى مرحلة اكثر تطور وان تجعل الملفات تشتغل دون المعاناة فهنالك المثال الذي وضعته الأخت زهرا. أيضاً هنالك أمور اكثر تعقيدية لكن لا أحبب تشتيت محور نقطة السؤال وبالتالي فقدان الفائدة. تحياتي لك
  14. ارجو من الاخوان الاهتاما في محور السؤال وعدم تشتيت السأل فهو الى الان لم يستسقي الفكرة. بعد ماتتمركز الاجابة عنده نستطيع التطرق الى محاور اخرى   بالنسبة لرسالة الخطا ... فهو كما ذكر الاخ سلامنا لكم فك ضغط الملف وضع الملف في ملف Users  في المسار C   C:\Users\ARB AND ENG   بالنسبة للسوال الاخر كيف تم ربط الجداول فانت ذكرت بنفسك انك تعرف انه من الادوات يتم تقسيم الملف ونعم هذا هو الجواب     بالنسبة للاخ سلامنا لكم ... انا بالعكس على النقيض فا انا لا استغرب من سؤالك لان هذا السيناريو هو عادة يتبع ليخدم عدة مستخدمين على الشبكة وهو عادة بعيد عن تناولنا في المنتدى لان اغلب المبرمجين هنا يهتمون بتصميم برامج احادية المستخدم و ان تعدد المستخدمين لكن على جهاز واحد وهو خلاف لمبدأ للفكرة التي طرحتها انا.   تحياتي
  15. ابو شادي   هذا مثال عملته لك لاحظ في المرفقات هنالك 3 ملفات.   1- لواجهات اللغة العربية (يحوي كل الكائنات ماعدا الجداول) 2- لواجهات اللغة الانجليزية (يحوي كل الكائنات ماعدا الجداول) 3- ملف قاعدة البيانات (يحوي الجداول فقط)   يمكنك تغيير اللغة من العربية الى الانجليزية و العكس صحيح دون التاثير في البيانات ودون الحاجة في كتابة اوامر برمجية لتحديث البيانات حين فتح اي من الملفين.   طبعا ماذكره الاخ عبد الله هو صحيح لكن هذا في الاصدارات القديمة. في الاصدرات الجديدة من 2007-2020 فهنالك زر في الاكسس يقوم بكل هذه المهمة   ايضا انا اقترحت هذا السيناريو من فهمي لطلبك بانك محتاج ان يكون هنالك ملف للغلة العربية وملف اخر للانجليزية وان يتم التحديث تلقائيا حين التعامل مع اي ملف   اتمنى ان يكون هذا مفيد   تحياتي   ARB AND ENG.rar