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

jjafferr

أوفيسنا
  • Posts

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

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

  • Days Won

    415

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

  1. وعليكم السلام 🙂 1. رجاء اعطاء تفصيل عن هذه النقطة ، ورجاء وضع تجربتك ، حتى يساعدك الاعضاء 🙂 جعفر
  2. السلام عليكم 🙂 اخوي حسين ، هذه نتيجة تجربتي: . فالخطأ في اظهار الحروف الانجليزية وليس العربية ، فلا اعتقد بأن اعدادات اللغة لها علاقة !! جعفر
  3. اخي الفاضل ، انت عملت هذا الموضوع ، وموضوع: فتح تطبيق الاكسيس بحجم صغير accmdappsize - قسم الأكسيس Access - أوفيسنا (officena.net) وبدل ان تشارك فيهما ، واذا بك تضع نفس المشاركة في موضوع آخر لا علاقة له بطلبك !! رجاء متابعة موضوعك مع الاعضاء هنا ، والاستفسار عن اي شيء يواجهك 🙂 جعفر
  4. السلام عليكم 🙂 اخي الفاضل ، بما انك في بداية برمجة مشروعك ، فاقترح عليك التالي: 1. بدل ان يكون لكل ولاية جدولين ، والى الآن عندك 3 ولايات ، اي 6 جداول ، وبالامكان الزيادة (نموذجك الرئيسي فيه هذا الخيار ، بالاضافة الى ان الشباب في بقية الولايات ممكن تستعمل برنامجك 🙂) ، فيجب عليك عمل جدولين فقط يشمل جميع الولايات ، سواء الموجودة او التي سيتم اضافتها : جدول tbl_VillageID (وتم اضافة حقل CityID وحقل التسلسل Seq) ، واستكمالا للموضوع ، الجدول tbl_CityID (ولاحقا تقدر تضيف جدول للمحافظات كذلك) . جدول tbl_CityData (هذا احد جداولك ولم اعمل عليه اي تغيير) . 2. على هذا الاساس ، فانت بحاجة الى نموذج واحد فقط لجميع الولايات ، بحيث عن طريق حقل/حقول Combobox او Listbox في النموذج تختار الولاية ، ومنها القرية ، لاحظ ان بيانات المحافظة والولاية والقرية ، جميعها موجودة في هذا النموذج ، فكل اللي لازم يصير الآن هو ان تعمل فرز وتصفية لهذه البيانات ، وبإستعلام واحد يأخذ معايير التصفية من (حقل/حقول Combobox او Listbox في النموذج اعلاه ، طبعا هاي لإدخال البيانات). اذا تحب ان تمشي في هذا الطريق ، فرجاء اعمل التعديلات على برنامجك من خلال هذه الجداول والنموذج والتقرير ، ونأخذ الموضوع من هناك ان شاء الله 🙂 وإلا ، فكذلك اخبرني ، علشان ارفق لك طلبك الاصل 🙂 جعفر 1376.1.صحيفة - Copy.accdb.zip
  5. تفضل 🙂 من استعلام المجاميع qry_rpt ننادي الدالة Concatenate_test_items التي تقوم بإرسال قيمة code ، ومنها تجمع النتائج test في سطر واحد . والنتيجة . ونستعمل هذا الاستعلام كمصدر بيانات التقرير. وهذه هي دالة Concatenate_test_items : Public Function Concatenate_test_items(C As String) As String Dim rst As DAO.Recordset Dim myWhere As String 'do the Where Criteria in an easy way, item by item myWhere = myWhere & "[code]='" & C & "'" 'set the Data source Set rst = CurrentDb.OpenRecordset("Select [test] From [Table1] Where " & myWhere) 'Loop through the Records Do Until rst.EOF 'Concatenate the items Concatenate_test_items = Concatenate_test_items & ", " & rst!test 'move to the next Record rst.MoveNext Loop 'Remove the initial ", ", thats why we start from the 3rd letter Concatenate_test_items = Mid(Concatenate_test_items, 3) 'clean up memory rst.Close: Set rst = Nothing End Function جعفر ملاحظة: لأني لا استعمل ActiveX الباركود ، فقد قمت بحذفه من الكود ، فيجب ان تختاره مرة اخرى 1377.test.accdb.zip
  6. وعليكم السلام 🙂 الباركود فيه الرقم 11 فقط ، فرجاء شرح ما هو المطلوب ، وبالتفصيل 🙂 جعفر
  7. المنتدى مليء بمثل هذا الموضوع ، فرجاء البحث 🙂 واتمنى بالفعل انك تبحث ، لأن كم المواضيع الموجودة في المنتدى ، واختلاف طرق سردها ، واختلاف الاعضاء والخبراء ، سيغنيك عن رد من عضو واحد 🙂 جعفر
  8. في هذه الحالة ، رجاء ارفاق نسخة من اخر نسخة تعمل عليها ، علشان اشتغل عليها مباشرة 🙂 ورجاء اخبرني ما هي الخطوات التي تتبعها انت في العمل ، علشان احاول اخلي العمل يتأقلم على طريقتك 🙂 جعفر
  9. وعليكم السلام 🙂 جعفر
  10. عفوا اخي د.حسنين 🙂 طريقتي التي شرحتها هنا ، لا تستخدم نماذج منبثقة 🙂 جعفر عفوا اخي ، لم افهم المطلوب!! جعفر
  11. وبإستخدام كود اخوي حسين ، ولكن على الحدث "قبل التحديث" : if [TextBox]>99 then MsgBox "الكمية تتجاوز الحد المسموح", vbCritical + vbMsgBoxRight, "تنبيه" cancel=true End if جعفر
  12. كلام اخوي ابوخليل عن اذا كان النموذج به قسم واحد ، مثل الصورة اللي ارفقها (كل الكائنات في قسم التفصيل) ، بينما النموذج المرفق فيه قسم "رأس الموضوع" Form Header ، وقسم "التفصيل" Detail ، لذا ، فكل قسم له ترقيم خاص به 🙂 . جعفر
  13. يجب ان يوضع الكود في حدث "بعد التحديث" AfterUpdate او حدث "عند فقد التركيز" On Lost Focus للحقل مخزن
  14. وعليكم السلام 🙂 في الموضوع التالي مرفق ، وهو يقوم بالخطوات التي تسأل عنها : . ولكن يجب عليك الوصول الى طلبك بين الاكود 🙂 جعفر
  15. وعليكم السلام 🙂 الظاهر انك تستخدم كود في التقرير لإخفاء الحقول ، ولكنك لا تخفي السجلات ، لهذا السبب ترى سجلات بدون حقول !! فالاسهل انك تعمل تصفية لهذه السجلات في الاستعلام ، ثم عرض السجلات كامله 🙂 جعفر
  16. تفضل جرب المرفق ، ولكن ، لما تكتب في السجل ، فتلقائيا سيظهر لك سجل جديد في الاسفل ، ولكن لما تنتهي من تعبئة السجل ، فتلقائيا سيختفي ، الى ان تضغط على زر سجل جديد مرة اخرى 1376.block5-.accdb.zip
  17. وعليكم السلام 🙂 عملت زر في النموذج الرئيسي . وهذا الكود لحدث تحميل النموذج ، وحدث آخر عن نقر الزر Private Sub Form_Load() Me.subtblIbriData.Form.AllowAdditions = False End Sub Private Sub cmd_Add_Record_Click() Me.subtblIbriData.Form.AllowAdditions = True Me.subtblIbriData.SetFocus Me.subtblIbriData!Block.SetFocus End Sub جعفر 1376.block5-.accdb.zip
  18. حياك الله 🙂 وانصحك انك دائما تستعمل البرنامج المرفق ، كل مرة تعدل على برنامجك ، وكل مرة تصادف مشكلة : جعفر
  19. هذه مكتبة 32بت ، وانت جهازك 64بت ، فكان لازم لها معالجة ، وتمت المعالجة والحمدلله بحيث تعمل على النواتين 32بت و 64بت 🙂 بس هل اشتغل الاستعلام ؟ جعفر
  20. استبدل السطر بهذا : Private Declare PtrSafe Function apiGetLocaleInfo Lib "kernel32" _ واعمل compile مرة اخرى
  21. اعمل Compile . وشوف وين يعطيك خطأ ، اريد صورة من السطر اللي قف عليه الخطأ ، ورسالة الخطأ نظام الافيس عندك 32بت او 64بت ؟
  22. الظاهر ان احد المكتبات عندك مفقودة ، فرجاء تعمل التالي علشان نعرف ايهم/ . اتوقع ان تكون احد المكتبات مكتوب عليها MISSING ، فرجاء خلينا نشوف الصورة النالية من برنامجك
  23. ولكي يكون الموضوع متكامل 🙂 وبدل ان تستخدم القوائم المختصرة الافتراضية : و والتي تسمح للمستخدم ان يدخل في تصميم النموذج والتقرير ، او بدل ان تخفي القائمة المختصرة من البرنامج فلا يستفيد المستخدم من احد اهم القوى المتوفرة في الاكسس بدون برمجة ، اعمل قائمتك المختصرة مثل: او او او او حسب التعليمات في هذ الموضوع: القائمة المختصرة - Shortcut menu - قسم الأكسيس Access - أوفيسنا (officena.net) جعفر
  24. كنت اتمنى تكون في المرفق بيانات كفاية علشان اعرف وين الخطأ !! جرب التالي : في الاستعلام احذف الحقل التالي NewNamee: TrimAll([xQ]," ") اضف الحقل التالي NewNamee2: TrimAll2([xQ]) . ثم اضف الدالة التالية الى الوحدة النمطية: Function TrimAll2(thisString As String) As String TrimAll2 = Replace(thisString, " ", " ") '6 TrimAll2 = Replace(TrimAll2, " ", " ") '5 TrimAll2 = Replace(TrimAll2, " ", " ") '4 TrimAll2 = Replace(TrimAll2, " ", " ") '3 TrimAll2 = Replace(TrimAll2, " ", " ") '2 TrimAll2 = " " & Trim(TrimAll2) & " " End Function وشوف اذا اشتغل الاستعلام. جعفر
×
×
  • اضف...

Important Information