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

ابوخليل

أوفيسنا
  • Posts

    11,735
  • تاريخ الانضمام

  • Days Won

    197

مشاركات المكتوبه بواسطه ابوخليل

  1. اعتراضي على التوسع بعيدا عن صلب الموضوع لاسباب :

    1- ان الاصل في البرنامج درجات يتم ادخالها ونتيجة تستخرج

    2- التشعب قد يطول مثلا :

    1- مرتبات المعلمين وغيرهم

    - حضور وغياب المعلمين وتأخرهم .. وتسديد فراغ الحصص في هذا الحال

    - اثر ذلك على مسير الرواتب

    - حضور وغياب الطلاب وتأخرهم .. وتأثير ذلك على درجات اعمال السنة

    - النقل المدرسي

    وغيرها من الأمور المرتبطة باليوم الدراسي

  2. ما شاء الله عليك 

    ولكنك تقفز لخطوات متقدمة ليس من صلب الموضوع

    لأن مسألة المرفقات برنامج قائم بذاته خاصة اذا كان للطالب او المعلم اكثر من مرفق ، هنا يلزم عمل جدول فرعي خاص بمرفقات الطلاب وآخر  بمرفقات المعلمين

    هذا بالنسبة للمرفقات ولو تركتها لنهاية البرنامج لكان افضل لك ... لأن المهم هو صلب الموضوع

    المرفقات تجدها في اي مشروع .. ( مدارس/ موظفين / مالي / خدمات عامة ...... الخ

    علاوة على انه يوجد في المنتدى امثلة ومرفقات كثيرة جدا تعالج مسألة المرفقات بزوايا مختلفة 

    ------------------

    بالنسبة لمعرفات الطلاب 

    ان اردت الاعتماد على حقل id كمعرف فيجب ان يبدأ ترقيم الطلاب من 101 

    اما ان جعلت المعرف هو الرقم الوطني فهنا تنحل مشكلة الترقيم  ويمكنك جعل الـــ  حقل id  ترقيم تلقائي

     

  3. السلام عليكم

    توافقت الكتابة مع مشاركة اخي فادي الأخيرة

    انا ارى ان حل اخونا البرناوي نموذجي .. ولمعالجة التكرار يتم حذف البيانات من الجدول قبل كل امر على النحو التالي

    Private Sub أمر0_Click()
    DoCmd.SetWarnings False
    DoCmd.RunSQL "DELETE TEMP_DATE.*, * FROM TEMP_DATE"
    DoCmd.SetWarnings True
    Call InsertYears
    End Sub

     

    3الأعوام بين تاريخين.accdb

    • Thanks 1
  4. ليست كل العلاقات ذات اهمية داخل الجداول

    المهم ضبط الجداول بصورة صحيحة

    تفضل تم التعديل بشكل سريع .. ومن ضمنها التسميات يفضل ان لا تبدأ بارقام

    ايضا الترقيم يفضل ان لا يبدأ بالرقم 1  الا لمن لا يتجاوز عددهم 9  والبداية من 11  لمن لن يتجاوز عددهم 99  او 111 لمن لن يتجاوز عددهم 999  ... وهكذا  ... والسبب هو ما سوف تواجه عند الفرز والتصفية والبحث .. 

    School2.rar

  5. جدول المعلمين وجدول الطلاب صح عليك المعرف فريد غير قابل للتكرار  .. وزيادة انت جعلتها مفاتيح للجدول

    الافضل جعلها مفهرسة غير قابلة للتكرار  وتجعل مفاتيح الجداول ترقيم تلقائي

    الجداول الفرعية تضع لها مفاتيح ترقيم تلقائي ، ومعرف المعلم ومعرف الطالب : قابل للتكرار = نعم

    معلومة : اي جدول الافضل تصنع له ترقيم تلقائي ويكون هو المفتاح غالبا

    مفتاح الجدول هذا يخص اكسس وليس له علاقة بمشروعك

  6. انا كنت اعمل على الكود

    لما رأيت كود الاستاذ فادي وقرأته اعتقدت  انه يلبي المطلوب وتوقفت عن اكمال الكود

    الآن وبعد تأكيد ما فهمته من قبل الاستاذ احمد اليكم الحل

    دالة تأخذ قيمة B وتقارنها بأي حقل داخل السجل :

    Public xfld As Byte
    Public Function Allfld(x As String) As String
    On Error GoTo ErrHandler
    Dim rs As Object, i As Integer
      Set rs = CurrentDb.OpenRecordset("SELECT TP2.* FROM TP2 WHERE TP2.GradeNO= " & [Forms]![form1]![A] & "")
         i = 0
          For Each Field In rs.Fields
             i = i + 1
             If x = rs.Fields(i) Then
                    xfld = 1
            Exit Function
          End If
          Next
         Set rs = Nothing
    ErrHandler:
    If Err.Number = 3256 Then
    Exit Function
    End If
    End Function

    ويتم مناداتها من النموذج :

    Private Sub B_AfterUpdate()
    xfld = 0
    Call Allfld(Me.B)
    If xfld = 0 Then
      MsgBox "البيانات غير متطابقة"
            Undo
            Exit Sub
    End If
    End Sub

     

     

    Test-11.rar

    • Thanks 2
  7. العلاقات اوجدت حتى لا يتم ادخال بيانات في الجدول الفرعي ليس لها بالجدول الرأس ارتباط او علاقة اوصفة  ..  سمها ما شئت

    انا استخدم مربع التحرير عوضا عن العلاقة .. لذا نادرا احتاج للعلاقات بين الجداول

    العلاقات عندي في الاستعلامات فقط ..

    تثبيت العلاقات في الجداول دائما تعيق صناعة الاستعلامات

    __________________

    المهم كي تتعلم بصورة صحيحة لا تخرج من الجداول حتى يعطيك الخبراء هنا الإشارة الى الخطوة التالية

    ____________

    المشروع المدرسي .. ان كان لادخال الدرجات واستخراج النتائج فكما تفضلت المستهدف هو الطالب

    وان ارد ضمن المشروع عمل الجدول المدرسي فسيصبح مشروعين داخل مشروع واحد ونستهدف هنا المعلم

    اذكر عملت درس تعليمي مدرسي هنا  .. سابحث لك عنه .

    هذا هو الرابط

    • Like 1
    • Thanks 1
  8. مشروع العيادة : اكتروني بلا ورق

    الأدوات على الأرض : نقاط فرعية او حواسيب متوفرة عند كل من : ( الاستقبال / الفحص السريع/ غرف  عيادة (طبيب) / مختبر / اشعة / صيدلية

    الرسم التصوري :

    رأس الهرم أو رأس المشروع = المريض

    لذا يجب ان يكون معرف المريض في جميع الجداول الرئيسية

    مسار البرنامج او الخطوات : تتم آليا

    1- الاستقبال : تسجيل المريض وتحويله الى الفحص السريع

    2- يظهر عن الطبيب الذي تم اختياره

    3- بعد الفحص يتم اكمال الخطوات التي يراها الطبيب

    4- يظهر عند المختبر او الاشعة ويتم ادخل النتائج

    5- يطلع عليها الطبيب ويصرف الدواء

    6 - تظهر عند الصيدلي

    _________

    بناء على هذا التصور  .. يتم تقدير الجداول 

    بالطبع يوجد الكثير من الجداول الفرعية التي تخدم المسار

    -----------------

    نصيحة ... برنامج العيادات كبير ومتشعب جدا ,, ومادمت تريد التعلم فابحث عن مشروع سهل ويسير

     

     

     

    • Thanks 1
  9. 43 دقائق مضت, alhourriah said:

    أنهيت تقريباً موضوع تصميم الجداول والنماذج والأوامر المتعلقة بها وتفاصيل جيدة والصفحة الرئيسية والمتعلق بها وهذا برأيي السهل، وبقي الصعب وهو ترجمة هذه الأمور إلى تفاصيل، وما أقوم به هو التدريب على أي برنامج مشروح على اليوتيوب للمبتدئين وإعادة التطبيق بدون العودة للفيديو بمعظم المراحل، إلا ما استعصى علينا.

     

    بعد ان اقمت البناء  والجدران والغرف والدور الثاني ... تأتي تسأل عن القواعد والميدات والأعمدة !!!

    من سنين وفي كل مشاركة مناسبة وانا اوجه  :Rules:  واقول  80% من بناء المشروع يتمثل في ضبط الجداول

    لن يكون مبرمجا متمكنا  حتى يكون في مخيلته رسم تصوري للمشروع  ( المدخلات/ المخرجات ) حال تصميمه للجداول

     

  10. علم البرمجة 80% ممارسة .. و 20% دراسة نظرية

    الدراسة النظرية المكثفة مع ممارسة قليلة .. نهايتها النسيان

    الأشياء التي ترسخ بالذاكرة هي الاشياء التي تكتشفها او تصل اليها بالمحاولة والخطأ

    منتدى اكسس اوفيسنا هو اكبر صرح تعليمي على مستوى الوطن العربي .. وبالمجان

    اذا اتبع الشخص طرق التعلم الصحيحة من الصفر  .. سوف يصل الى الاحتراف في مدة وجيزة

    الطريقة .. هي بناء مشروع  يكون هو فعلا بحاجته .. او بتكليف من شخص آخر يحتاجه

    لأن التعلم من اجل التعلم فقط  تضعف الهمة فيه غالبا وهذا شيء مجرب .. بسبب فقد الحافز

    • Like 6
    • Thanks 2
  11. 1 ساعه مضت, بونس الخطابي said:

    الله ينور دربك استاذ ابوخليل . ويجعل ذلك في ميزان حسناتك.  كل كلمات الشكر والعرفات لاتفيك حقك .

    لا اضيف شيء لان كلشيء تمام زي العسل  لكن عندما اطلعت على نموذج التغيرات  توقعت لم يحصل شيء  وعند اطلاعي على الجدول وجدت كل ما اتمناه ويبدو انك لم تنزل الحقل BuyerName في النموذج لكثرة مشاغلك . ارجو اعادة تنزيل القاعده ليستفاد منها غيري لاني لم انزلها لكي لايعتقد غيري بان لي دور في صياغتها الجميله ولكي يبقى الفضل لك . اكرر شكري وتقديري

    اقتباس

    لاني لم انزلها لكي لايعتقد غيري بان لي دور في صياغتها الجميله ولكي يبقى الفضل لك . اكرر شكري وتقديري

    الفضل لله ..

    لم افهم .. فالحقل BuyerName  وضعته في جدول المتابعة فقط .. وهو يمثل حقل الاسم في النموذج الرئيسي ..

    آأأأه تقصد في نموذج عرض التغييرات

    بالعكس اذا يوجد اضافة جميل ان ترفعها هنا فنحن جميعا  نتعلم ونساعد بعض

    • Thanks 1
  12. شرح وافي جزاك الله خيرا

     كان ينقصني فهم خطوات الاجراء ...  فالمتعة تأتي حين تستوعب عمل الكود

    بناء على التسمية العامة يتم اخفاء جميع الازرار الفرعية

    وبناء على التسمية العامة + رقم زر القسم  يتم اظهار الازرار الفرعية لهذا القسم

     عمل جميل اعجبني وهو نموذجي لمن اراد القوائم العمودية

     

     

    • Like 1
  13. 32 دقائق مضت, Moosak said:

    ابحث عنك وجابك الله نصيدك في هذه الزحمة :smile:

    هذا مثال لك اعجبني جدا ضمن الرابط الذي وضعه اخونا @Foksh

    يشتمل على 6 اقسام  ويندرج تحت كل قسم فرعين

    ماذا لو كل قسم اختلف عدد الازرار الفرعية فيه عن الآخر ؟

    مثلا نريد تحت القسم الاول 4 ازرار فرعية  وتحت القسم الثاني زر واحد وتحت الثالث 2 زرين ... وهكذا حسب الحاجة

     

    صفحة رئيسية مطورة 2.rar

    • Like 1
  14. 1 ساعه مضت, Foksh said:

    كفكرة جانبية ، اذا كانت الطابعة لا تدعم الطباعة على الوجهين ، فممكن نعمل حيلة نخلي آكسيس يعملها بطريقتنا الخرنفعية 😂

    اول طلب نقول لآكسيس اطبع الصفحات الفردية في التقرير ، وبس تخلص طلعلي رسالة تقولي اقلب الورق ورجعه للطابعة واضغط موافق ليتم طباعة الصفحات الزوجية 😁

    Private Sub CommandButton_Click()
        Dim i As Integer
        Dim rpt As Report
        Dim totalPages As Integer
        Dim response As VbMsgBoxResult
        
    Set rpt = Reports![اسم_التقرير]
        
    DoCmd.OpenReport "اسم_التقرير", acViewNormal    
        totalPages = rpt.Pages
        
    For i = 1 To totalPages Step 2
            DoCmd.PrintOut acPages, i, i, , , acPrintAll
        Next i
        
    response = MsgBox("يرجى قلب الأوراق ووضعها مرة أخرى في الطابعة. انقر 'موافق' للمتابعة.", vbOKCancel + vbInformation, "قلب الأوراق")
        
    If response = vbOK Then
            For i = 2 To totalPages Step 2
                DoCmd.PrintOut acPages, i, i, , , acPrintAll
            Next i
        End If
        
    DoCmd.Close acReport, "اسم_التقرير"
    End Sub

    جرب الفكرة دي ، وننتظر نتيجة التجربة 🤗

    نعم هذه هي المتبعة على الطابعات العادية

    علما ان الطابعة تقوم بالمهمة لوحدها ... 

    كتاب او رسالة جامعية مكونة من 500 ورقه ( وجه واحد ) والصفحات مرقمة

    1- اضع 250 ورقة في درج الطابعة

    2- اختار من خصائص الطابعة ( طباعة الصفحات الفردية)

    3- بعد اكتمال الطباعة اقلب مجموعة الورق ( المحافظة على الترتيب نفسه)

    4- اختار من خصائص الطابعة ( طباعة الصفحات الزوجية )

    • Like 3
×
×
  • اضف...

Important Information