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

الردود الموصى بها

قام بنشر
10 ساعات مضت, Foksh said:

أخي الكريم @أحمد عمروف ، تفضل هذا التعديل على التوزيع الشفوي و توزيع اللياقة في زرين منفصلين ، التوزيع الشفهي حسب ما فهمت منك سيكون بتاريخ 31/05/2025 ، واللياقة افترضت تاريخ 10/06/2025 للتجربة ، على العموم ، راقب النتيجة في الجدولين وأخبرني بمدى دقتها أو صحتها أم لا !!!!

أستاذنا الكبير
بعد التحية والسلام عليكم ورحمة الله وبركاته
والله لا كلمات شكر توفيكم حقكم
في الحقيقية توزيع الطلاب في جدول الشفوي ممتاز وأكثر من رائع
ولكن .. في ملاحظة أنا غفلت عنها أثناء عرضي للمطلوب
وهي ..
أن جميع الصفوف ستبدأ الشفوي في نفس اليوم 31/5/2025
وبالتالي يكون
Day_Shafawe يبدأ لجميع الصفوف برقم 1
وأيضا
Magmoaa ستبدأ لجميع الصفوف برقم 1

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


آخر استفسار مشكورا .. هل ممكن جعل حقل Day_Shafawe رقميا بدلا من كونه نص
وأيضا
Magmoaa
كل التقدير والشكر لسعادتك .. مع خالص تقديري واحترامي ؛؛؛

Capture.JPG

قام بنشر
17 ساعات مضت, أحمد عمروف said:

أن جميع الصفوف ستبدأ الشفوي في نفس اليوم 31/5/2025

جميع الصفوف ( للمدرسة الواحدة أو جميع المدارس ) ستبدأ في يوم واحد للشفهي ؟؟؟؟؟

17 ساعات مضت, أحمد عمروف said:

وبالتالي يكون Day_Shafawe يبدأ لجميع الصفوف برقم 1

وأيضا Magmoaa ستبدأ لجميع الصفوف برقم 1

بحاجة للتوضيح أكثر ,,

 

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

 

بانتظار شرحك أكثر لكل النقاط والإحتمالات ( لتلافي الوقوع في مطبات سابقة في مواضيع مختلفة لعدم شرح المطلوب بشكل واضح ) ..

:wub:

 

قام بنشر
5 ساعات مضت, Foksh said:

جميع الصفوف ( للمدرسة الواحدة أو جميع المدارس ) ستبدأ في يوم واحد للشفهي ؟؟؟؟؟

أستاذنا الكبير
بعد التحية والسلام عليكم ورحمة الله وبركاته
أولا أشكر سعادتك للتواصل المستمر والله .. ومعذرة على عدم توضيح الفكرة كاملة من البداية
نعم .. ((
جميع الصفوف (لجميع المدارس) ستبدأ في يوم واحد للشفهي)) .. البداية واحدة للجميع مع مراعاة سعة قاعات كل صف.
 

5 ساعات مضت, Foksh said:

وأيضا Magmoaa ستبدأ لجميع الصفوف برقم 1

نعم .. كل المجموعات لأي صف ستبدأ برقم 1
مع خالص تقديري وشكري لسعادتك

 

5 ساعات مضت, Foksh said:

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

تمام جدا إن شاء الله تعالى

قام بنشر (معدل)
في 30‏/4‏/2025 at 23:12, أحمد عمروف said:

مراعاة سعة قاعات كل صف

أخي أحمد ، هل هذا المثال صحيح :-

 

مثال توضيحي لو كانت :

Cou_Stu = 45 (عدد الطلاب).

Seaa_Kaa_Shafawe = 20 (سعة القاعة).

فسيتوزعون كالآتي :

الجلسة 1 : 20 طالب (صباحي)

الجلسة 2 : 20 طالب (مسائي)

اليوم التالي :

الجلسة 3 : 5 طلاب (صباحي فقط)

 

استخدم هذا التعديل في دالة التوزيع الشفهي ، وطابقها مع حساباتك ومتطلباتك ان كانت صحيحة

    Dim db As DAO.Database
    Dim rs As DAO.Recordset
    Dim rsInsert As DAO.Recordset
    Dim sql As String
    Dim GroupNo As Long
    Dim DateCounter As Date
    Dim DayCounter As Long
    Dim Period As String
    Dim StudentLeft As Long
    Dim MaxPerSession As Long
    Dim StudentsThisSession As Long

    Set db = CurrentDb

    ' جلب جميع الصفوف لجميع المدارس بترتيب واضح
    sql = "SELECT * FROM Tb_Cou_Stu ORDER BY ID_School_B, ID_Room_B"
    Set rs = db.OpenRecordset(sql, dbOpenSnapshot)
    Set rsInsert = db.OpenRecordset("Tb_Tawze_Shafawe", dbOpenDynaset)

    Do Until rs.EOF
        ' بدء التوزيع من اليوم المحدد لكل صف بشكل مستقل
        DateCounter = StartDate
        DayCounter = 1
        GroupNo = 1

        StudentLeft = rs!Cou_Stu
        MaxPerSession = rs!Seaa_Kaa_Shafawe

        Do While StudentLeft > 0
            ' تجاوز الجمعة
            Do While Weekday(DateCounter, vbSaturday) = 6
                DateCounter = DateAdd("d", 1, DateCounter)
                DayCounter = DayCounter + 1
            Loop

            ' جلسة صباحية
            StudentsThisSession = IIf(StudentLeft >= MaxPerSession, MaxPerSession, StudentLeft)
            rsInsert.AddNew
            rsInsert!ID_School_C = rs!ID_School_B
            rsInsert!ID_Room_C = rs!ID_Room_B
            rsInsert!Date_Shafawe = DateCounter
            rsInsert!Day_Shafawe = DayCounter
            rsInsert!S_M = "صباحي"
            rsInsert!Magmoaa = GroupNo
            rsInsert!Cou_Stu_Shafawe = StudentsThisSession
            rsInsert.Update

            StudentLeft = StudentLeft - StudentsThisSession
            GroupNo = GroupNo + 1

            ' جلسة مسائية (إن تبقى طلاب)
            If StudentLeft > 0 Then
                StudentsThisSession = IIf(StudentLeft >= MaxPerSession, MaxPerSession, StudentLeft)
                rsInsert.AddNew
                rsInsert!ID_School_C = rs!ID_School_B
                rsInsert!ID_Room_C = rs!ID_Room_B
                rsInsert!Date_Shafawe = DateCounter
                rsInsert!Day_Shafawe = DayCounter
                rsInsert!S_M = "مسائي"
                rsInsert!Magmoaa = GroupNo
                rsInsert!Cou_Stu_Shafawe = StudentsThisSession
                rsInsert.Update

                StudentLeft = StudentLeft - StudentsThisSession
                GroupNo = GroupNo + 1
            End If

            ' الانتقال لليوم التالي
            DateCounter = DateAdd("d", 1, DateCounter)
            DayCounter = DayCounter + 1
        Loop

        rs.MoveNext
    Loop

    rs.Close: rsInsert.Close
    Set rs = Nothing: Set rsInsert = Nothing: Set db = Nothing

    MsgBox "تم توزيع جلسات الشفوي لجميع الصفوف بشكل صحيح", vbInformation + vbMsgBoxRight, "نجاح"

مسألة الصباحي والمسائي لم أطبقها حالياً ، فهي ليست ذات علاقة بآلية التوزيع في الوقت الحالي ,

تم تعديل بواسطه Foksh
قام بنشر (معدل)
2 ساعات مضت, Foksh said:

أخي أحمد ، هل هذا المثال صحيح :-

السلام عليكم ورحمة الله وبركاته
وحياكم الله وبياكم ؛؛؛
نعم المثال صحيح تماما

 

تم تعديل بواسطه أحمد عمروف
قام بنشر
2 ساعات مضت, Foksh said:

استخدم هذا التعديل في دالة التوزيع الشفهي ، وطابقها مع حساباتك ومتطلباتك ان كانت صحيحة

تم التجريب أستاذنا الكبير
والنتيجة أكثر من رائعة
التوزيع صواب 100 % بكامل تفاصيله وأجزاءه
ده ليس كود وليست هذه دالة .. إنما دي تحفة فنية وفكرة غير عادية
حيث تم التوزيع مراعيا كل القيود والشروط والتداخلات الغريبة
يكفي أن أقول لسعادتك أن حوالي خمسة أفراد كانوا يقوموا بهذا الإجراء في مدة تزيد عن أسبوع
وبتجريب الكود كانت النتيجة مبهرة للجميع
سلمك الله ورفع قدرك وزادكم علما وحلما.
يتبقى إن  شاء الله كود توزيع اختبار اللياقة - عندما تجد سعادتك الوقت المناسب
كل التقدير  والشكر والاحترام لسيادتكم والله ؛؛؛

قام بنشر
12 ساعات مضت, أحمد عمروف said:

والنتيجة أكثر من رائعة

أخي أحمد الحمد لله انه الأمور كانت نتيجتها كما تريد ، وان شاء الله متابع مع توزيع اللياقة ،

 

بالنسبة لاختيار أفضل إجابة ، فهي عادة يا صديقي تُعطي لصاحب الحل وليس لصاحب الموضوع 😅 ، وهي عادة دلالة على أن الموضوع تم إغلاقه وانتهت جميع مشاكله .. لذا اجعلها آخر شيء حتى ننتهي من التوزيع اليوم ان شاء الله .

قام بنشر

 

  1. الآن جميع طلاب الشفهي سيخضعون للياقة ، صحيح ؟ أي لا يوجد استثناءات !!
  2. يتم توزيعهم على جلستين (صباحي / مسائي) بنفس مبدأ الشفوي .
  3. القدرة الاستيعابية للياقة تختلف :
    صباحي = 70 طالب
    مسائي = 60 طالب
  4. يتم أخذ الطلاب من جدول Tb_Tawze_Shafawe بترتيب ظهورهم ( حسب Magmoaa ) .
  5. يتم حفظ التوزيع في جدول Tb_Tawze_Leyaka .
  6. للتأكيد . يوجد حقل From_Mag_Shafawe سنستخدمه لتوثيق أن المجموعة ( أو جزء منها ) جاءت من مجموعة شفوي رقم كذا .
  7. يتم تجاهل يوم الجمعة كالعادة من التوزيع .
  8. يتم التوزيع من تاريخ معين سيتم تحديده ( أخبرني هذه النقطة بوضوح ) .
  9. الترقيم Magmoaa_Leyaka سيبدأ من 1 ويستمر بترتيب التوزيع دون إعادة الترقيم .

 

هل هناك أي استثناءات أو شروط إضافية لم تذكرها بعد

على سبيل المثال :-

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

كل التقدير 

2 ساعات مضت, Foksh said:

أخي أحمد الحمد لله انه الأمور كانت نتيجتها كما تريد ، وان شاء الله متابع مع توزيع اللياقة ،

 

كل التقدير لسعادتك

1 ساعه مضت, Foksh said:

هل هناك أي استثناءات أو شروط إضافية لم تذكرها بعد

 

وعليكم السلام ورحمة الله وبركاته

أكرمك وأعزك الله أستاذنا الكبير

وكل التقدير والشكر لسعادتك ..

بالنسبة لجميع التوصيفات التي أضفتها سعادتك .. تماما بالضبط كما أشرت حضرتك
استثناءين فقط في
8 - يتم التوزيع من تاريخ معين سيتم تحديده .. نعم بالفعل (سيتم تحديد تاريخ مسبق للياقة).

9 - الترقيم Magmoaa_Leyaka سيبدأ من 1 لكل مجموعات تخص الصف الدراسي الواحد (بكل مدرسة)

يعني الصف الأول في مدرسة الفاروق .. نبدا المجموعات 1 ثم 2 ثم 3

يعني الصف الرابع  في مدرسة عمر بن الخطاب .. نبدا المجموعات 1 ثم 2 ثم 3

وهكذا

** لا يوجد أي داعي لربط توزيع الياقة بالشفوي ..
واذا اضطررت للربط .. فسيكون سهلا إن شاء الله حيث أن جدول اللياقة موضح به (المدرسة والصف)

** هل نراعي توزيع اللياقة حسب المدرسة أو الصف أو نوزعهم ككتلة واحدة فقط حسب ترتيب الشفوي ؟

التوزيع سيكون (كل دفعات الشفوي بصف معين) سيتم التعامل معها لإنتاج مجموعات اللياقة (70 أو 60) والباقي يرحل للمجموعة التالية في الياقة.

يعني الصف الواحد في توزيع الشفوي .. والذي تم تقسيمه لدفعات .. سيتم التعامل مع الدفعات لإنتاج مجموعات اللياقة.

طلب أخير .. هل ممكن فتح حقل ينوه فيه إلى الدفعات التي تم توزيعها في لإنتاج مجموعة اللياقة
يعني مثلا لو المجموعة الصباحية في الياقة تكونت من (دفعة 1 + دفعة 2 + دفعة 3 + جزء من دفعة 4)
هل ممكن كتابة هذه الدفعات في حقل مستقل بهذا الشكل (دفعة 1 / دفعة 2 / دفعة 3 / دفعة 4)

ولا يسعني إلا تقديم كل التقدير والشكر لسعادتك والله على هذا الدعم وهذا التألق.

قام بنشر
56 دقائق مضت, أحمد عمروف said:

كل التقدير 

كل التقدير لسعادتك

وعليكم السلام ورحمة الله وبركاته

أكرمك وأعزك الله أستاذنا الكبير

وكل التقدير والشكر لسعادتك ..

بالنسبة لجميع التوصيفات التي أضفتها سعادتك .. تماما بالضبط كما أشرت حضرتك
استثناءين فقط في
8 - يتم التوزيع من تاريخ معين سيتم تحديده .. نعم بالفعل (سيتم تحديد تاريخ مسبق للياقة).

9 - الترقيم Magmoaa_Leyaka سيبدأ من 1 لكل مجموعات تخص الصف الدراسي الواحد (بكل مدرسة)

يعني الصف الأول في مدرسة الفاروق .. نبدا المجموعات 1 ثم 2 ثم 3

يعني الصف الرابع  في مدرسة عمر بن الخطاب .. نبدا المجموعات 1 ثم 2 ثم 3

وهكذا

** لا يوجد أي داعي لربط توزيع الياقة بالشفوي ..
واذا اضطررت للربط .. فسيكون سهلا إن شاء الله حيث أن جدول اللياقة موضح به (المدرسة والصف)

** هل نراعي توزيع اللياقة حسب المدرسة أو الصف أو نوزعهم ككتلة واحدة فقط حسب ترتيب الشفوي ؟

التوزيع سيكون (كل دفعات الشفوي بصف معين) سيتم التعامل معها لإنتاج مجموعات اللياقة (70 أو 60) والباقي يرحل للمجموعة التالية في الياقة.

يعني الصف الواحد في توزيع الشفوي .. والذي تم تقسيمه لدفعات .. سيتم التعامل مع الدفعات لإنتاج مجموعات اللياقة.

طلب أخير .. هل ممكن فتح حقل ينوه فيه إلى الدفعات التي تم توزيعها في لإنتاج مجموعة اللياقة
يعني مثلا لو المجموعة الصباحية في الياقة تكونت من (دفعة 1 + دفعة 2 + دفعة 3 + جزء من دفعة 4)
هل ممكن كتابة هذه الدفعات في حقل مستقل بهذا الشكل (دفعة 1 / دفعة 2 / دفعة 3 / دفعة 4)

ولا يسعني إلا تقديم كل التقدير والشكر لسعادتك والله على هذا الدعم وهذا التألق.

أخي أحمد ، جرب هذا التعديل الجديد من حيث الدقة والتوافق بين الشفهي واللياقة ؛ حيث تم اضافة حقلين في جدول اللياقة ( رقم الصف ، وملاحظات ) في المرفق التالي :-

 

 

فكرة توزيع تلقائي لمستويين (3).mdb

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information