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

jjafferr

أوفيسنا
  • Posts

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

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

  • Days Won

    406

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

  1. شكرا اخي وضاح وانا شاكر متابعتك كذلك جعفر
  2. ولا يهمك في الواقع كنت اقدر اعمل استعلام واحد فقط qry_Absences_Sum ، بحيث في الوحدة النمطية استطيع ان اجعل مصدر البيانات من الجدول ، ولكني جعلت الاستعلام الذي انت عملته (استعلام تجميع دروس الغياب) ولكني اعطيته مسمى انجليزي ، qry_Absences ، هو مصدر البيانات ، والسبب هو انك قد تريد لاحقا ان تعمل تصفية للغياب ، بإستخدام التاريخ او بين تاريخين مثلا ، وبدلا ان ترجع للوحدة النمطية وتعمل تغيير عليها ، فكل الذي عليك عمله هو اضافة التاريخ وتصفيته في الاستعلام qry_Absences جعفر
  3. حياك الله، ولي الشرف
  4. حياك الله همممم ، انت الوحيد الذي سألني عن هذا التسلسل كل سؤال أرد عليه في المنتدى وبه مرفق ، اجعله عندي في تسلسل وإذا تطلب الأمر تعديل جذري عليه، فيظل التسلسل + 0.1 و حقوق الطبع والنشر محفوظة جعفر
  5. انت لم تستعمل الاستعلامات مثل التي انا استعملتها!! عندي استعلامين ، وعندك استعلام واحد ، والكود يرجع ويناديه!! جعفر
  6. تفضل ولا داعي لإستخدام Recordset ، فـ Dcount تفي بالغرض Private Sub Form_Load() 'Me.CPU = GetWmiDeviceSingleValue("Win32_Processor", "ProcessorID") 'Me.BIOS = GetWmiDeviceSingleValue("Win32_BIOS", "SerialNumber") C = GetWmiDeviceSingleValue("Win32_Processor", "ProcessorID") 'Debug.Print C '++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Dim obj_FSO As Object, obj_Drive As Object Set obj_FSO = CreateObject("Scripting.FileSystemObject") Set obj_Drive = obj_FSO.GetDrive("c:\") 'MsgBox obj_Drive.SerialNumber ' Me.HardSerial = obj_Drive.SerialNumber H = obj_Drive.SerialNumber 'Debug.Print H Set obj_FSO = Nothing Set obj_Drive = Nothing ' If DCount("*", "tbl", "[Pro]='" & C & "' And [Hard]='" & H & "'") > 0 Then 'Exists DoCmd.OpenForm "frm2" Else DoCmd.OpenForm "frm1" End If DoCmd.Close acForm, Me.Name End Sub جعفر 775.1.mdb.zip
  7. عذرا ، انا لا اعرف اي شيء ن قاعدة بياناتك ، فاذا اردت النظر فيها ، رجاء ارفاقها ، واخبارنا مكان المشكلة بالضبط جعفر
  8. وعليكم السلام . . . Option Compare Database Option Explicit Public Function Gather_Materials(ByVal N As String) As String 'N = Name Dim rst As DAO.Recordset Dim RC As Integer Dim i As Integer Dim Together As String Dim How_Many_Materials As Integer 'كم عدد المواد في جدول المواد How_Many_Materials = DCount("*", "Materials") ' اقرا بيانات الاستعلام الذي به صافي المواد ، الى الذاكرة العشوائية للكمبيوتر 'ونستخدم اسم الشخص لتصفية الاستعلام Set rst = CurrentDb.OpenRecordset("Select * From qry_Absences Where [Aname]='" & N & "'") rst.MoveLast: rst.MoveFirst RC = rst.RecordCount 'عدد سجلات الاستعلام qry_Absences Together = "" 'قم بقراءة جميع سجلات الاستعلام ، واضف المواد ، بينهم فاصلة For i = 1 To RC Together = Together & " ، " & rst!Amaterial rst.MoveNext Next i 'اقفل واحذف الالاستعلام من الذاكرة العشوائية rst.Close: Set rst = Nothing 'تخلص من اول فاصلة Together = Mid(Together, Len(" ، ") + 1) 'اذا كان عدد المواد = عدد سجلات الاستعلام If How_Many_Materials = RC Then Together = "جميع الدروس" End If 'ارسل النتيجة الى الاستعلام Gather_Materials = Together End Function . جعفر 774.استعلام تجميع دروس الغياب في حقل واحد.accdb.zip
  9. اخي شفان بحثت في احد برامجي الرئيسية ، وبالفعل رايت انني استخدمت هذه الطريقة اكثر من مكان ، مثلا: A = Me.Name Forms!frm_Main!cmb_Full_Name = "" Forms!frm_Main!cmb_Full_Name.Requery Forms!frm_Main!cmb_Full_Name2 = "" Forms!frm_Main!cmb_Full_Name2.Requery Forms!frm_Main!iFull_Name = "" DoCmd.Close acForm, "frm_All_Last_wo_COMM" DoCmd.Close acForm, A و A = Me.Name Forms!frm_Personel_S!sfrm_Personel.Form.Requery Forms!frm_Personel_S!sfrm_Employee_Movement.Form.Requery Forms!frm_Personel_S!sfrm_Committees.Form.Requery Forms!frm_Personel_S!sfrm_Appreciation_Punishment.Form.Requery DoCmd.Close acForm, A و A = Me.Name Forms!frm_Personel_S!sfrm_Personel.Form.Requery Forms!frm_Personel_S!sfrm_Employee_Movement.Form.Requery DoCmd.Close acForm, A . واستخدمت طريقتك مباشرة ، فتم اغلاق النموذج بطريقة صحيحة!! فلا ادري اين صادفت هذه المشكلة ، وعليه اتبعت الطريقة الجديدة!! فهذا معناه ان طريقتك المباشرة تعمل وبدون مشاكل جعفر
  10. الله يسهل عليك ان شاء الله
  11. حياك الله ما دام الربط موجود ، تقدر تتوسع اكثر بإضافة التاريخ/السنة مثلا للنموذج الفرعي ، ثم في التقرير تفرز وتصفي بالتاريخ او بين تاريخين ، مثلا جعفر
  12. وعليكم السلام طريقتك في ادخال البيانات في الجدول 2 غير صحيحة ، فهي لا تتماشى مع قواعد البيانات ، وانما هي نسخة من طريقة عمل الاكسل !! فالطريقة الصحيحة هي ان يكون عندك حقل رقم الموظف ، وحقل النوع (نوع الخطورة) نعم حقل واحد فقط ، ثم تعمل نموذج/تقرير رئيسي للجدول 1 ، ونموذج/تقرير فرعي للجدول 2 ، وتربط الرئيسي والفرعي بحقل رقم لموظف ، ويكون عندك اي عدد تريد في حقل النوع ، وليس 60 فقط جعفر
  13. الجملة Me.Name معناها اسم النموذج/التقرير ، فلما تفتح نموذج/تقرير جديد وانت لم تغلق النموذج القديم ، وخصوصا اذا هذا النموذج/التقرير الجديد عنده حدث "عند التحميل او عند الفتح" ، فالجملة Me.Name لا تكون محفوظة للنموذج القديم ، وانما للنموذج/التقرير الجديد. لذلك يُنصح ان: تحفظ اسم النموذج في متغير ثابت (مؤقتا ، مثل A) ، تفتح النموذج/التقرير الجديد ، ان تستخدم DoCmd.Close acForm, A للدلالة على ما تريد اغلاقه (خصوصا ان بعض المبرمجين للأسف يعطون نفس التسمية للنموذج والتقرير) ، فحينها لا يعرف الاكسس من يغلق ، فيغلق النموذج الجديد بدلا من القديم المطلوب اغلاقه. وقد صادفت هذا الخطأ عدة مرات (ولم اعرف لماذا لم يتم فتح النموج/التقرير الجديد ، لأن الاكسس كان يفتحه ويُغلقه على طول) ، الى ان تعلمت ان ابرمج بهذه الطريقة جعفر
  14. اذا ممكن تعديل بسيط على كود أخي شفان A = Me.Name DoCmd.OpenReport "Rep1", acViewPreview DoCmd.Close acForm, A جعفر
  15. وعليكم السلام النموذج الذي تتكلم عنه لا يوجد في المرفق . كما انه قاعدة البيانات فارغة فلا نستطيع ان نجرب عليه بالطريقة الصحيحة!! جعفر
  16. وعليكم السلام من برنامجك المرفق ، اخبرنا ماهي القيمتين اللي المفروض يظهروا؟ جعفر
  17. وعليكم السلام انت قلت: بس الظاهر جوابي كان متأخر: جعفر
  18. تفضل الكود: Private Sub CA_invoice2(ad, inv) If Len(Nz(inv, 0) & "") = 0 Then Me.frmsubSearch_sales.Form.Filter = "" Me.frmsubSearch_sales.Form.FilterOn = False Else Me.frmsubSearch_sales.Form.Filter = "[Adfah]='" & ad & "' And [Rjmfatwra] like '*" & inv & "*'" Me.frmsubSearch_sales.Form.FilterOn = True End If End Sub Private Sub A_invoice_Change() Call CA_invoice2("اجل", Me.A_invoice.Text) End Sub Private Sub C_invoice_Change() Call CA_invoice2("نقدي", Me.C_invoice.Text) End Sub جعفر 770.بحث بالنقدي والاجل.mdb.zip
  19. أخي علي اخبرني في اي مكان تريد ان اضع الكود جعفر
  20. السلام عليك اخي وضاح الرابط شارح فيه المطلوب 100% جعفر
  21. شوف البرنامج المرفق لوسمحت وكما قلت ، ماشي على الطريق الصحيح جعفر 769.ps.accdb.zip
  22. السلام عليكم أخي علاء ، المنتدى مليء بمثل هذا السؤال ، وكل ما عليك عمله هو استخدام خاصية البحث ، قواعد المشاركة فى الموقع اضغط هنـــــــــامن فضلك لقراءة القواعد كاملة و بصفة خاصة نؤكدعلى ما يلي 1- يمنع منعا باتا نشر أية مواد تخالف حقوق الملكية الفكرية و يرجى الابلاغ عن المشاركات المخالفة من خلال زر تقرير اسفل المشاركة 2-يجب استخدام خاصيةالبحث قبل طرح السؤال توفيرا للوقت و الجهد. 3-ضرورة كتابة عنوان واضح للموضوع يدل على محتواه ويعطي وصفاً مختصرا للسؤال. 4-ممنوع منعا باتاً كتابة عناوين سينمائية مثل عاجل ، نداء الي فلان ، الي الخبراء ، طلب مساعدة ، أريد حلا..... 5-يمكن استعجال الرد باستخدام تعبير -للرفع- و غير مسموح بالالحاح او اللوم فجميع الاعضاء يشاركون تطوعا طبقا لسعة وقتهم. ومخالفة ذلك تعرض الموضوع للحذف واليك بعض هذه المواضيع: https://www.officena.net/ib/topic/43015-استخراج-تاريخ-الميلاد-من-الرقم-القومي-عنوان-معدل/?do=findComment&comment=247938 https://www.officena.net/ib/topic/49846-طريقة-كتابة-الرقم-القومي/?do=findComment&comment=304211 https://www.officena.net/ib/topic/73911-إستخراج-تاريخ-الميلاد-والسن-والنوع-من-الرقم-القومي/?do=findComment&comment=475682 https://www.officena.net/ib/topic/62992-استخراج-تاريخ-من-الرقم-القومي/?do=findComment&comment=409130 وهذا البحث يعطيك جميع المواضيع التي تخص الاكسس https://www.google.com/search?biw=1400&bih=870&ei=ugIfWp7dC8qza6a5m9AG&q=-excel+access+"الرقم+القومى"+site%3Awww.officena.net&oq=-excel+access+"الرقم+القومى"+site%3Awww.officena.net&gs_l=psy-ab.3...18076.24409.0.25876.0.0.0.0.0.0.0.0..0.0....0...1.1.64.psy-ab..0.0.0....0.ngMmP-xMScE جعفر
  23. هذه هي الطريقة الصحيحة ، ولم يتوقف عندي الكود ، واكمل بالطريقة الصحيحة جعفر ششششش ، لا يسمعوك ويردون عليك
  24. انت عملت موضوع جديد لسؤالك الجديد ، وهذه هي الطريقة الصحيحة ، حسب قوانين المنتدى جعفر
×
×
  • اضف...

Important Information