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

jjafferr

أوفيسنا
  • Posts

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

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

  • Days Won

    404

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

  1. نعم ، الكل سيحصل على نفس الرقم المكرر ، ولتلافي هذا ، يجب حفظ السجل بعد عملية اخذ الرقم التالي مباشرة ، مثلا: me.ID=Nz(DMax("[id]";"monsrf";"Month([c_date])=Month(date())"))+1 docmd.runcommand accmdsaverecord . بهذه الطريقة ، سيكون هناك فاصل زمني بين نقر زر كل مستخدم ، حتى ولو بجزء من الثانية ، والبرنامج تلقائيا سيعطي الارقام بدون تكرار 🙂 جعفر
  2. يمكن عمل Recordset بإستعمال اي من المكتبتين ADO او DAO ، ولكنك هنا استعملت مكتبة DAO 🙂 جعفر
  3. رجاء تنقر على كلمة "قام jjafferr بالرد علي هذا الموضوع"
  4. السلام عليكم 🙂 الطريقة الوحيدة اللي اعرفها هي عمل نموذج غير منظم ، وجميع الحقول في النموذج تكون غير منظمة ، اليك هذا الرابط الذي مفروض ان يفيدك ، وبه رابط لمرفق تستطيع انزاله . بس يحتاج تشرب قهوة ثقيلة تعدل مزاجك قبل ان تقرأ الرابط 🙂 جعفر
  5. اخي أمير ، ما دخل هذا الموضوع في سؤالك؟ رجاء عدم خلط المواضيع. انت فتحت موضوع لهذا السؤال ، وانا تركت لك جواب هناك جعفر
  6. شوف هذا المرفق جعفر 1104.jo.accdb.zip
  7. شو المشكلة ، حقل الترقيم مثله مثل اي حقل آخر تبحث فيه؟
  8. حياك الله ، وشكرا على المرفق النهائي 🙂 جعفر
  9. اخوي خالد 🙂 لما تحط كود في مشاركة ، انتقر على هذا الزر : وبتنفتح لك نافذة ، ادخل فيها الكود ، علشان تحصل على الكود بطريقة صحيحة ، قارن كودك بالاعلى مع هذا الكود : =Nz(DMax("[id]";"monsrf";"Month([c_date])=Month(date())"))+1 جعفر
  10. النموذج هو المكان الصحيح لعمل التسلسل ، فانت على الطريق الصحيح 🙂 ليش تريد تعمل التسلسل من الاستعلام؟ ورجاء ضع لنا الكود الشغال على النموذج 🙂 جعفر
  11. علشان اخلص الشغل بسرعة ، انا عملت جميع النماذج ، فاحذف اللي ما تريده 🙂 وفيه تعديل بسيط على الوحدة النمطية لإصطياد خطأ عدم وجود الحقل في النموذج المفتوح : Function Update_All() On Error GoTo err_Update_All Dim mySQL As String Dim arr_Fields() As Variant Dim New_value As Long Dim Old_value As Long Dim Number_Field As String Dim tbl_Name As String Dim This_Count As Integer Dim Prev_Count As Integer Dim ctrlN As String Dim frmN As String Dim i As Integer Dim j As Integer Dim This_CountF As Integer Dim Prev_CountF As Integer frmN = Screen.ActiveForm.Name ctrlN = Screen.ActiveControl.Name arr_Fields = Array("من رقم الوارد", "الي رقم الوارد", "من رقـم الرمبة", "الي رقـم الرمبة", "من رقم التخليص", "الي رقـم النخليص") New_value = Forms(frmN)(ctrlN) If Len(Forms(frmN)(ctrlN).OldValue & "") <> 0 Then Old_value = Forms(frmN)(ctrlN).OldValue End If tbl_Name = "جدول الرصاص" 'save Form values If Forms(frmN).Dirty Then Forms(frmN).Dirty = False '1 'get the hieghst value of all fields For i = LBound(arr_Fields) To UBound(arr_Fields) ctrlN = arr_Fields(i) Number_Field = ctrlN & "_2" 'New value This_CountF = DCount("*", tbl_Name, "[" & ctrlN & "]=" & New_value) If This_CountF > 0 Then This_Count = This_Count + This_CountF End If 'Old value If Len(Old_value & "") <> 0 Then Prev_CountF = DCount("*", tbl_Name, "[" & ctrlN & "]=" & Old_value) If Prev_CountF > 0 Then Prev_Count = Prev_Count + Prev_CountF End If End If Next i 'save Form values If Forms(frmN).Dirty Then Forms(frmN).Dirty = False '2 'change the values in the Fields For i = LBound(arr_Fields) To UBound(arr_Fields) ctrlN = arr_Fields(i) Number_Field = ctrlN & "_2" 'New value mySQL = "UPDATE [" & tbl_Name & "] SET [" & Number_Field & "] = " & This_Count mySQL = mySQL & " WHERE [" & ctrlN & "]=" & New_value 'Debug.Print i & "N > " & mySQL; "" DoCmd.RunSQL mySQL 'Old value If Len(Old_value & "") <> 0 Then mySQL = "UPDATE [" & tbl_Name & "] SET [" & Number_Field & "] = " & Prev_Count mySQL = mySQL & " WHERE [" & ctrlN & "]=" & Old_value 'Debug.Print i & "O > " & mySQL DoCmd.RunSQL mySQL End If 'force the field in the Form to take the new value Forms(frmN)(Number_Field).Requery Next i Exit_Update_All: Exit Function err_Update_All: If Err.Number = 438 Then 'field not in the Form Resume Next Else MsgBox Err.Number & vbCrLf & Err.Description End If End Function جعفر 1095.رصاص رقم.accdb.zip
  12. اولا لا يوجد عندك جدول بهذا الاسم !! ثانيا ، حتى لو افترضنا ان قصدك "جدول الرصاص" ، فهو يحتوي على الكثير من الحقول ، فأي الحقول اللي تريد ان نطبق عليها المثال؟ . واي النماذج اللي تريد ان يكون فيها الكود؟ جعفر
  13. رجاء اشرح المطلوب ، على اي جدول / نموذج / اسماء الحقول اللي يجب العمل عليها!! انا وقتي اصبح جدا ضيق ، و بسافر قريبا ان شاء الله ، فرجاء اعطني المعلومات بسرعة 🙂 حياك الله اخوي قاسم 🙂 جعفر
  14. وعليكم السلام 🙂 في تصميم النموذج ، اهب الى الادوات ، واختار : . . وامشي مع التعليمات والخطوات اللي يعطيها البرنامج 🙂 جعفر
  15. في هذه الحالة ، جرب هذا المرفق ، وبدون مكتبة MessageBoxW جعفر
  16. اخذا بالاعتبار مرفقك الاول ، الطريقة اللي تريدها تصير فقط عن طريق النموذج ، اعمل الكود التالي قبل حفظ النموذج: Private Sub Form_BeforeUpdate(Cancel As Integer) Me.مفتاح = Me.[م] & Me.[رقمها] & Me.[الآية] End Sub جعفر
  17. الحمدلله انك حصلت على ما تريد 🙂 ولكن ، سؤالك هو بينما عمل لك اخوي مسفر ، حقل محسوب ، والذي لا يمكن عمل مفتاح اساس له !! جعفر
  18. وعليكم السلام 🙂 سبحان الله ، قبل يومين كنت اتصفح احد المشاركات القديمة وشفت اسمك واسم واخوان آخرين غابوا عنا ، واليوم جمعنا الله سبحانه وتعالى مرة ثانية 🙂 اشتغلت على قاعدة بيانات القرآن الكريم من فترة ، فإستقطعت جدول الآيات لك وعملته كمثال ، اسم الجدول tbl_Ayah : 1. اضفت حقل sKey ، ونوعه رقم ، ولاحظ انه عندي سابقا حقل مفتاح اساس Auto_ID . استعلام تحديث ، وضم الحقل الثلاث الى الحقل الجديد . والنتيجة . ازيل مفتاح الاساس ، واحفظ الجدول . 1. انقر على حقل Auto_ID ثم خليك ضاغط على زر Ctrl على الكيبورد ، ثم انقر على الحقل sKey 2. انقر على ايقونة المفتاح . ونرى انه صار عندنا الحقلين ، بمفتاح الاساس (في الواقع الحقل الاول هو مفتاح الاساس ، والاكسس رابط الحقل الثاني بالمفتاح الاساس مال الحقل الاول 🙂 ) احفظ الجدول ، اذهب الى اعدادات الحقل sKey ، واجعله مفهرس وغير قابل للتكرار ، احفظ الجدول . وللعلم ، الجدول فيه حقلين للآيات ، حقل بالتشكيلة Ayah_Text2 (ونستعمل هذا الحقل للعرض) ، وحقل آخر بدون تشكيلة Ayah_Text_Simple (ونستعمل هذا الحقل للبحث عن الكلمات) 🙂 جعفر 1103.Database1.accdb.zip
  19. اخي الفاضل ، جوابك لا يفيدك ولا يفيدنا في حل مشكلتك !! لازم تخبرنا اللي عملته ، واين صادفتك المشكلة ، وايش نوع المشكلة ، واذا في رسالة خطأ ، فنريد نعرف هذه الرسالة ، وعلى اي سطر ، ووووو جعفر
  20. اصل الموضوع من هنا . اخي امير ، يجب ان تعطينا معلومات علشان نقدر نرد عليك بالطريقة الصحيحة !! 1. شو اسم النموذج الرئيسي ، 2. شم اسم حقل البحث ، 3. شو اسم النموذج الفرعي ، 4. شو مصدر بيانات النموذج الفرعي ، 5. شو المعيار اللي عندك للبحث ، 6. شو اسم الحقل اللي يقوم عليه البحث؟ جعفر
  21. نفس الطريقة اعلاه ، ولكن بتغيير في الوحدة النمطية التالية: Public Function MyMesg(Mesgtxt As String, _ Optional ByVal Buttons As VbMsgBoxStyle = vbOKOnly, _ Optional ByVal Title As String = "Judy", _ Optional ByVal HelpFile As Variant, _ Optional ByVal Context As Variant, _ Optional ByVal AdditionalInfo As String) As VbMsgBoxResult Mesgtxt = Replace(Mesgtxt, "& Strxx", AdditionalInfo) MyMesg = MsgBox(Mesgtxt, Buttons + vbMsgBoxRtlReading + vbMsgBoxRight + vbDefaultButton1, Title) End Function حعفر 1102.الرسائل من داخل V .01.mdb.zip
  22. المرفق فيه وحدة نمطية اخرى اسمها Update_Each تعمل للحقل الذي نغير فيه القيمة فقط 🙂 جعفر
  23. هممم ، يعني في اعضاء آخرين ، غير صاحب الموضوع ، يقراؤن اجاباتي 🙂 جعفر
  24. بما انك ترسل مجموعة بيانات الى الوحدة النمطية MyMesg ، فتستطيع ارسال معلومة اخرى ، وهي بيانات الحقل المتغير يعني ، بدل: بدل MyMesg (txtOfMesg), vbOKOnly, strMsgTitle & strUserLogin استعمل MyMesg (txtOfMesg), vbOKOnly, strMsgTitle & strUserLogin,,, me.txtProfessor وبعدين في الوحدة النمطية تلعب فيها كما تشاء ، مثل: Public Function MyMesg(Mesgtxt As String, _ Optional ByVal Buttons As VbMsgBoxStyle = vbOKOnly, _ Optional ByVal Title As String = "Judy", _ Optional ByVal HelpFile As Variant, _ Optional ByVal Context As Variant, _ Optional ByVal AdditionalInfo As String) As VbMsgBoxResult Mesgtxt = "This text is additional:" & AdditionalInfo & vbCrLf & Mesgtxt MyMesg = MsgBox(Mesgtxt, Buttons + vbMsgBoxRtlReading + vbMsgBoxRight + vbDefaultButton1, Title) End Function جعفر
×
×
  • اضف...

Important Information