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

Dream_Works

المشرفين السابقين
  • Posts

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

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

كل منشورات العضو Dream_Works

  1. السلام عليكم أخي الكريم ... حتى الآن شغلك جميل جداً ... و لكن توجد بعض الملاحظات التي يستحسن عملها ( ليست ضرورية جداً ) 1- وضع جدول خاص بالدول وربطه باستخدام الحقل Country ID للأسباب التالية : 1- تجميع كل الدول في جدول واحد مما يسهل عليك عمل Combo Box لاختيار الدولة 2- أن يكون الأمر بمثابة Validation لإسم الدولة ... إذا أدخلته بشكل نصي عادي لا يمكنك التأكد من أن اسم الدولة صحيح ( احتمال نفس الكلام ينطبق على العنوان و لكنك تحاول تقليل المخاطر قدر ما تستطيع ) لأنه لا يمكنك عمل جدول للعناوين 3- عملية البحث بالأرقام في الاستعلامات أسهل على المعالج من البحث وسط الحروف 2- يستحسن أثناء استخدام الصور خصوصاً في الأكسيس ( قبل 2007 ) أن يتم تخزين موقعها في الكمبيوتر بشكل نصي التعامل مع الصور في قاعدة البيانات يحتاج بعض المجهود و شئ من الخبرة ... فاحتمال تتعب معاه ... :) هذه بعض الشروحات من الأستاذه زهره العبدالله التي تساعدك في التعامل مع الصور إدراج الصور في النماذج و التقارير تغيير امتداد الصور حسب اعتقادي إن برنامجك هو مشروع تخرج ... إذا كان كذلك يمكنك تمشيها على OLE 3- احذر من نوع الحقل AutoNumber لأنه احتمال يسبب لك مشاكل عند حذف أحد السجلات من منتصف الجدول ( فإن الأرقام لا يُعاد ترقيمها ) ... توجد بعض المواضيع للتعامل مع الترقيم التلقائي في الأكسيس ... منها على ما أذكر ... 1- حذف العلاقات بين الجداول المتصلة بواسطة حقل الترقيم التلقائي ( لأنه مفتاح رئيسي ) 2- نسخ الحقل في عرض التصميم 3- حذف الحقل 4- حفظ الجدول 5- إستعادة الحقل مرة أخرى ... لصق 6- حفظ الجدول 7- ستُعاد الأرقام كلها صحيحة مرة أخرى ( في النهاية ... إعادة العلاقات مع باقي الجداول ) أحد الحلول البسيطة الأخرى ... هي إذا لم يكن يهمك عرض محتويات حقل الترقيم التلقائي و إنك قد استخدمته للتمييز فقط ... يمكنك استخدام خاصية Current Record في النموذج التي تعرض الرقم التسلسلي للسجل دون حقل الترقيم التلقائي ) 4- في جدول Tbl Category يمكنك وضع Combo Box في الجدول ( LookUp ) و تعتمد على Value List حتى تضمن أن البيانات الصحيحة هي التي سيتم إدخالها فقط و حتى تضمن تسهيل إدخال البيانات
  2. أرجو أن يكون هذا هو المطلوب Replace2.zip
  3. أرجو المزيد من التوضيح : 1- كيف يمكن تحديد الجزء المطلوب استبداله و الجزء البديل و تحديد الجدول المطلوب استبدال البيانات فيه !!!! ... كل الجداول ؟
  4. إذن يجب إرفاق قاعدة بياناتك لمعرفة المشكلة و حلها جرب على السريع : خاصية PopUp في النموذج الفرعي = Yes
  5. أرجو أن يكون هذا المطلوب: تم عمل الآتي 1- تغيير خاصية visible إلى No لكل المربعات المطلوب إخفاؤها عند بداية فتح النموذج وضع الكود التالي Private Sub Combo0_AfterUpdate() Dim check As Boolean With Me check = .Combo0 = "تصميم" .TxtDesignType.Visible = check .LblDesignType.Visible = check .LblSub.Visible = check End With End Sub ملحوظه : لقد غيرت بعض أسماء مربعات النصوص لتسهيل التعامل معها Database8.zip
  6. أخي الكريم للأسف أنا وقفت في نقطتين ... و احتمال لا أستطيع استكمالهما لانشغالي ( الصراحة بحثت كثيراً و لم أجد حل .... ينبغي علي البحث أكثر ... ) و هما : 1- ترتيب الملفات حسب تاريخ آخر تعديل 2- تظليل ملف معين من الملفات توجد نقاط لم أفهمها و هي 1- ما هو المجلد الذي يتم فتحه عند أول ضغطة لزر المجلد الافتراضي ... ( أنا افترضت مجلد قاعدة البيانات نفسها ) 2- ما هو المجلد الذي يتم فتحه عند أول ضغطة مجلد آخر ... ( أنا افترضت مجلد قاعدة البيانات نفسها ) 3- إذا تم إغلاق النموذج هل تريد أن يبقى المجلد الافتراضي أم يُمسح أرجو أن يتم تعريف مكتبة الأكواد Microsoft Office Object Library إن لم تكن معرفة في جهازك أعتذر عن عدم مقدرتي في مساعدتك و لكني سأحاول ... و أرحو من باقي الأعضا ء أن يساعدونا في الحل ... ______Microsoft_Office_Access_____.zip
  7. هل تريد إعادة ترتيب الملفات بالكامل حسب تاريخ التعديل أم تظليل آخر ملف فقط ... لأنني واقف حالياً عند هذه النقطة ...
  8. هذي احتمال تاخذ وقت معاي ... و لا أدري إن كنت تصبر علي أم لا ... أم أنك قد حصلت على الحل من طرف آخر ...
  9. أخي الكريم أرجو أني قد فهمت ما تريد بالشكل المطلوب أضف سطر الكود هذا إلى برنامجك MsgBox "تم تسجيل القيد رقم " & DOCNO ليصبح كله بهذا الشكل Dim rs As DAO.Recordset, i As Byte, AccountNumber As String, DOCNO As Long AccountNumber = Me.DebitAccount DOCNO = CLng(DMax("DOCNO", "Trans", "DocType Like '*قيد*' ")) + 1 Set rs = CurrentDb.OpenRecordset("Trans") With rs For i = 1 To 2 .AddNew .Fields("ACCTNO") = AccountNumber .Fields("DOCTYPE") = "سند قيـد-JV" .Fields("DOCNO") = DOCNO .Fields("DATE") = Me.DATE .Fields("DETAILS") = Me.DETAILS .Fields("Chq_Dat") = Me.DATE .Fields("ChqNo") = Me.ChqNo If i = 1 Then .Fields("DR") = Me.DR Else .Fields("CR") = Me.DR End If .Update AccountNumber = 4800001 Next i .Close End With MsgBox "تم تسجيل القيد رقم " & DOCNO End Sub
  10. التقريب ممكن بالدالة round ولكنها لم تكن تعمل بشكل جيد على ما أعتقد في الاصدارات السابقة ( 2003 أو قبل ) على ما أذكر بالاصدارات السابقة كنت أضيف على الرقم نسبة ضئيلة جداً ( واحد من مليون قبل التقريب ) ... لا أذكر بالضبط كيف حللت هذه المشكلة حسب معلوماتي : أكسيس 2007 Me.Text2 = Round(Me.Text0) أكسيس 2003 Me.Text2 = Round(Me.Text0 + 0.00000000001)
  11. بما أنني كتبت الكود ... أعتقد أنني قادر على شرحه ... Public UserName As String هذا السطر لتعريف متغير ( مكان لتخزين اسم المستخدم فيه بشكل مؤقت حتى تُغلق قاعدة البيانات ) كلمة Public معناها أن المتغير يمكن الدخول عليه من أي نموذج أو تقرير Public Sub GetUserName(FrmName As String) Forms(FrmName).Caption = UserName End Sub هذا الكود وُضع لإدخال اسم المستخدم الموجود في المتغير السابق في شريط عنوان النموذج المذكور اسمه حيث أنه يستقبل اسم النموذج و يضعه في المتغير FrmName ثم يضع اسم المستخدم في شريط عنوانه وضعت هذا الكود حتى يمكن احداث أي تغييرات مطلوبه أثناء استرجاع اسم المستخدم بسهولة و يسر ( قوانين برمجيه احتمال يصعُب عليكِ فهمها ) ... لاستخدام الكود .... تختاري النموذج المطلوب وضع اسم المستخدم في شريط عنوانه و تقومي بعمل الآتي و تضعين هذا الكود بالضبط داخل الحدث OnLoad GetUserName.GetUserName (Me.Name) وهو الكود الخاص باستدعاء الكود الموجود في الوحدة النمطية Module ووضع اسم النموذج فيه
  12. السلام عليكم أشكر أخي hema212006 على مساعدته . أخي alsaeed . أعتقد حسب رأيي إن تصميم قاعدة بياناتك خاطئ .... حسب اعتقادي كل رقم وظيفي يتبعه اسم موظف واحد ( محدد ) و صورة واحدة (محددة ) و تاريخ تعيين واحد ( محدد ) حسب تصميمك كل رقم وظيفي واحد يتبعه عدة أسماء لموظفين !!!!! . لذلك يجب وضع البيانات المتاحة كلها في جدول واحد التعامل مع الصور في قاعدة البيانات يحتاج بعض المجهود و شئ من الخبرة ... فاحتمال تتعب معاه ... :) هذه بعض الشروحات من الأستاذه زهره العبدالله التي تساعدك في التعامل مع الصور إدراج الصور في النماذج و التقارير تغيير امتداد الصور لذلك : تم إزالة جميع الجداول و الاستعلامات ما عدا جدول2 و إضافة حقل الصورة له على ضوء ما ورد في دروس الأستاذه زهره العبدالله ... يستحسن تغيير نوع حقل الصورة إلى حقل نصي ... يمكنك الاستعانه بالدرس و تقليد ما فيه لفتح نتائج معينة في التقرير يمكن إضافة أمر البحث ضمن أمر فتح التقرير بالشكل التالي DoCmd.OpenReport "report", acViewPreview, WhereCondition:="[الرقم الوظيفي] = '" & Me.الرقم_الوظيفي & "'" [الرقم الوظيفي] هو اسم الحقل الموجود في التقرير الخاص بالرقم الوظيفي Me.الرقم_الوظيفي = هو قيمة الرقم_الوظيفي الموجودة في النموذج ( 55 مثلاً ) ملحوظة : عادةً : الأكسيس يتعامل مع مربعات النصوص في النماذج ك حقول نصية و ليس رقمية أو غيرها لذلك يتم التعامل معها على أنها حقول النصية في حال وجود مشاكل في قبولها ك حقول رقمية للتعامل مع الحقول النصية في أوامر البحث يجب إحاطة العنصر النصي بعلامتي اقتباس مفردتين ( ' ) db9.zip
  13. أرجو أن يكون هذا هو المطلوب Sample4Add.zip
  14. الصراحة ليس لدي الوقت الكافي لإضافة شروحات مطولة لذلك من باب شيء أفضل من لا شيء هذا موقع مايكروسوفت لشرح الدوال و الخصائص مايكروسوفت هذا قسم من منتدى ... به مجموعة كتب بالعربية و الإنجليزية قسم خاص بالكتب
  15. السلام عليكم أخي الكريم , هذا الأمر ممكن في كل إصدارات الأوفيس عدا 2007 ... أعتقد أنك تستخدم أوفيس 2007 ... فقد واجهت هذه المشكلة من قبل ... إما أن تثبت أوفيس 2003 لعملية التحويل هذه أو أن تثبت Office 2007 Service Pack 2 .... للأسف لم يتثبت معي وواجهت بعض المشاكل في التثبيت ... و ليس لدي الوقت الكافي للبحث عن حلها ( باختصار : وقفت عند هذه النقطة ) جرب تنزيله أنت ... احتمال تضبط معاك Office 2007 SP2
  16. أخي الكريم مع وجود الملف اتضحت الأمور ... كان فهمي للمشكلة خاطئ للأسف أرجو أن يكون هذا هو الحل المطلوب لوضع مجموعات على مستوى الصفحات لا يتم ذلك إلا بالكود ... لذلك اضطررت لاستخدامه شرح تقارير أكسيس من مايكروسوفت في حالة وجود أي نقطة غامضه به سأشرحها بإذن الله إن أمكن ملفات الأكسيس لا يمكن رفعها مباشرة يجب ضغطها أولا db.zip
  17. مجموعة الحقول هذه على ما أعتقد كلها لها قيمة معينه فريدة و هي رقم الموظف .... فلكل موظف مجموعة حقول خاصه به على ما أعتقد ... لذلك يمكنك استخدام Grouping في التقرير أرجو إرفاق قاعدة بياناتك مع تحديد الحقول المطلوب جمعها ( يستحسن أن تصمم التقرير بالشكل المطلوب أولا ) وجدت لك ملف لشرح الطريقة و لكنه يعمل ببرنامج QuickTime Player 41__Report__Group_Footer_.zip
  18. يمكنك البحث بواسطة رسالة الخطأ نفسها في جوجل هذا موقع يحتوي على العديد من رسائل الخطأ ... احتمال مو كلها رسائل الخطأ في أكسيس هذا غير إن معظم رسائل الخطأ في أكسيس تظهر مع أرقامها ... أرجو التدقيق قليلا في المربع الذي يحتوي على رسالة الخطأ
  19. الأمر يختلف حسب نوعية الخطأ من أكثر الطرق شيوعاً للتعامل مع الأخطاء ... هي وضع الكود في الحدث On Error للنموذج Private Sub Form_Error(DataErr As Integer, Response As Integer) End Sub فقط تضع هذا الكود Response = false و لكنه سيلغي جميع الأخطاء لذلك يجب أن تحدد الخطأ المراد إلغاؤه عن طريق رقمه ... و بالتالي يصبح الكود بهذا الشكل تقريبا if dataErr = 1298 Response = false end if
  20. يوجد في هذا المنتدى برنامج محاسبي متكامل و مفتوح المصدر يمكنك النظر فيه برنامج محاسبي
  21. تفضل أخي الكريم أرجو أن يكون هذا هو ما تريد المسألة كما قلت لك أخي الكريم ... بيانات المستخدم الحالي كلها ... رقمه و اسم المستخدم و كلمة السر و غيرها تتخزن في متغير اسمه MyUser بعد أن تتم فك الشفرة الموجودة في جدول users يمكنك استرجاع بيانات المستخدم بالكود و استخدامها في أي وقت ... و لكن لا يمكنك تغييرها إلا بإسم مستخدم و كلمة سر صحيحين حتى بالكود ... ( الكود جميل و فكرته جميلة ) User Name : Sami Password: 8484 db1.zip
  22. أخي الكريم أعتقد أن مشكلة برنامجك خاصة بالإكسيل و ليس الأكسيس ... لذلك أرجو منك تنزيل موضوعك في منتدى الإكسيل التابع لمنتديات أوفيسنا منتدى الإكسيل
×
×
  • اضف...

Important Information