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

Foksh

الخبراء
  • Posts

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

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

  • Days Won

    126

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

  1. طيب .. بطريقتي سأسأل .. هل الفرق هو الحقول التالية :- TNO, NASS, nass1 MSNO, MS_NAMEX من جدول Tab_Msaneed ID_Xsub, Code, Parentx, Total, LVLno, Xsub MAIN_sub من جدول TAB_Subject_X يعني مقصدي انت تريد اضافة كافة الحقول الى الاستعلام الذي خرجت به ويلبي حاجتك في القيم المطلوب عرضها ، صحيح ؟؟؟ مع العلم أنك تستطيع إزالة الشرط :- AND TAB_Subject.ID IN (76, 159, 1873) هل هذا الاستعلام يلبي احتياجك على سبيل المثال :- SELECT TAB.MNO, TAB.TNO, TAB.NASS, TAB.nass1, Tab_Msaneed.MSNO, Tab_Msaneed.MS_NAMEX, TAB_Subject.ID, TAB_Subject.ID_Xsub, TAB_Subject.SName, TAB_Subject.Code, TAB_Subject.Parentx, TAB_Subject.Total, TAB_Subject.LVLno, TAB_Subject.LVL1, IIf(TAB_Subject.LVL1 = 0, Null, (SELECT TOP 1 SName FROM TAB_Subject AS L1 WHERE L1.LVL1 = TAB_Subject.LVL1 AND L1.LVL2 = 0 AND L1.LVL3 = 0 AND L1.LVL4 = 0)) AS LVL1name, TAB_Subject.LVL2, IIf(TAB_Subject.LVL2 = 0, Null, (SELECT TOP 1 SName FROM TAB_Subject AS L2 WHERE L2.LVL1 = TAB_Subject.LVL1 AND L2.LVL2 = TAB_Subject.LVL2 AND L2.LVL3 = 0 AND L2.LVL4 = 0)) AS LVL2name, TAB_Subject.LVL3, IIf(TAB_Subject.LVL3 = 0, Null, (SELECT TOP 1 SName FROM TAB_Subject AS L3 WHERE L3.LVL1 = TAB_Subject.LVL1 AND L3.LVL2 = TAB_Subject.LVL2 AND L3.LVL3 = TAB_Subject.LVL3 AND L3.LVL4 = 0)) AS LVL3name, TAB_Subject.LVL4, IIf(TAB_Subject.LVL4 = 0, Null, (SELECT TOP 1 SName FROM TAB_Subject AS L4 WHERE L4.LVL1 = TAB_Subject.LVL1 AND L4.LVL2 = TAB_Subject.LVL2 AND L4.LVL3 = TAB_Subject.LVL3 AND L4.LVL4 = TAB_Subject.LVL4)) AS LVL4name, TAB_Subject.Xsub, TAB_Subject_X.MAIN_sub, TAB.TYPE1, (SELECT LISTname FROM DATA_list WHERE NOM2 = TAB.TYPE1 AND NOM1 = 1) AS TYPE1name, TAB.TYPE2, (SELECT LISTname FROM DATA_list WHERE NOM2 = TAB.TYPE2 AND NOM1 = 2) AS TYPE2name FROM ((TAB INNER JOIN Tab_Msaneed ON TAB.MUSNAD = Tab_Msaneed.MSNO) INNER JOIN TAB_Subject_X ON TAB.MNO = TAB_Subject_X.MNO) INNER JOIN TAB_Subject ON TAB_Subject_X.SUB_ID = TAB_Subject.ID ORDER BY TAB.TNO;
  2. جميع الصفوف ( للمدرسة الواحدة أو جميع المدارس ) ستبدأ في يوم واحد للشفهي ؟؟؟؟؟ بحاجة للتوضيح أكثر ,, سنتوقف عن العمل على توزيع اللياقة ، وسنعمل على الشفهي لحين خروجك بنتيجة صحيحة ، وخذ بعين الاعتبار وجود يوم الجمعة كإجازة لا يتم التوزيع فيه حالياً . بانتظار شرحك أكثر لكل النقاط والإحتمالات ( لتلافي الوقوع في مطبات سابقة في مواضيع مختلفة لعدم شرح المطلوب بشكل واضح ) ..
  3. أخي طاهر ، غلق الموضوع باختيارك أفضل إجابة
  4. 😕 لماذا تختار الشرح المبهم والذي لا يؤدي الى توضيح الفكرة والهدف .. الحقول التي غير موجودة في استعلامي هي ؟؟؟ ( أرجو تحديدها ) ولا تنسى أنني اتعامل مع مرفقك وليس مع المرفق الذي تملكه وتطبق عليه ان كان مختلفاً في بنيته وتركيبه .
  5. وعليكم السلام ورحمة الله وبركاته ,, لتطبيق فكرتك البسيطة ، اعتقد ان حاجتك لاستخدام جدول مؤقت هي أفضل شيء . ومن ثم يتم اضافة القيم التي يتم اختيارها اليه وجعله مصدر للتقرير . جرب هذه الفكرة علها تفيدك 😎 . BASE_e.accdb
  6. هذا أحد احتمالات لم تكن في حسبانك ، ورقمها 1 - 4 ، وعليه سيتم اضافة جملة Case لهذا الشكل الجديد من الإحتمالات .. Case (zawjValue = 1 And zawjaValue = 4) يوجد مربع نص = Txx في التقرير ، غير مهم ، وتستطيع حذف اي شيء متعلق به في الكود ، فهو كان فقط لتحديد الإحتمالات التي كنت أعمل عليها . فتح تقرير FACE16.zip
  7. الفرق في عدم وجود بعض الحقول ، صحيح ؟؟ ام ماذا ؟؟؟
  8. الزوجة متوفية لم تكن ضمن اسلوب العمل والاحتمالات التي حددتها ,, 🙄 لهذا طلبت منك سابقاً وضح جميع الاحتمالات ، ولكنك لم تأخذ الموضوع بشكل جدي وحقيقي وقابل للحصول في احتمال . على العموم ارسل مرفقك الأخير بعد تعديلاتك التي أجريتها مؤخراً
  9. امممم تقريباً بدأ افهم 😅😅 جرب هذا الاستعلام !!! SELECT TAB_Subject.ID, TAB_Subject.LVL1, IIf(TAB_Subject.LVL1 = 0, Null, (SELECT TOP 1 SName FROM TAB_Subject AS L1 WHERE L1.LVL1 = TAB_Subject.LVL1 AND L1.LVL2 = 0 AND L1.LVL3 = 0 AND L1.LVL4 = 0)) AS LVL1name, TAB_Subject.LVL2, IIf(TAB_Subject.LVL2 = 0, Null, (SELECT TOP 1 SName FROM TAB_Subject AS L2 WHERE L2.LVL1 = TAB_Subject.LVL1 AND L2.LVL2 = TAB_Subject.LVL2 AND L2.LVL3 = 0 AND L2.LVL4 = 0)) AS LVL2name, TAB_Subject.LVL3, IIf(TAB_Subject.LVL3 = 0, Null, (SELECT TOP 1 SName FROM TAB_Subject AS L3 WHERE L3.LVL1 = TAB_Subject.LVL1 AND L3.LVL2 = TAB_Subject.LVL2 AND L3.LVL3 = TAB_Subject.LVL3 AND L3.LVL4 = 0)) AS LVL3name, TAB_Subject.LVL4, IIf(TAB_Subject.LVL4 = 0, Null, (SELECT TOP 1 SName FROM TAB_Subject AS L4 WHERE L4.LVL1 = TAB_Subject.LVL1 AND L4.LVL2 = TAB_Subject.LVL2 AND L4.LVL3 = TAB_Subject.LVL3 AND L4.LVL4 = TAB_Subject.LVL4)) AS LVL4name, TAB.TYPE1, (SELECT LISTname FROM DATA_list WHERE NOM2 = TAB.TYPE1 AND NOM1 = 1) AS TYPE1name, TAB.TYPE2, (SELECT LISTname FROM DATA_list WHERE NOM2 = TAB.TYPE2 AND NOM1 = 2) AS TYPE2name FROM TAB, TAB_Subject_X, TAB_Subject WHERE TAB.MNO = TAB_Subject_X.MNO AND TAB_Subject_X.SUB_ID = TAB_Subject.ID AND TAB_Subject.ID IN (76, 159, 1873) ORDER BY TAB_Subject.ID; استخدمت الدالة IIf في كل حقل من حقول أسماء المستويات ، ونجعل الاسم يظهر فقط إذا كانت القيمة المقابلة > 0 ، وإلا = Null هل التالي صحيح في الصورة ؟
  10. 😅 الموضوع أكثر من متشعب .. ولكن كمحاولة لست متأكداً من نتائجها ، قمت بالتجربة على قيم محددة في الاستعلام التالي ، جربه فضلاً أخي الكريم @nssj . SELECT TAB_Subject.ID, TAB_Subject.LVL1, (SELECT TOP 1 SName FROM TAB_Subject AS L1 WHERE L1.LVL1 = TAB_Subject.LVL1 AND L1.LVL2 = 0 AND L1.LVL3 = 0 AND L1.LVL4 = 0) AS LVL1name, TAB_Subject.LVL2, (SELECT TOP 1 SName FROM TAB_Subject AS L2 WHERE L2.LVL1 = TAB_Subject.LVL1 AND L2.LVL2 = TAB_Subject.LVL2 AND L2.LVL3 = 0 AND L2.LVL4 = 0) AS LVL2name, TAB_Subject.LVL3, (SELECT TOP 1 SName FROM TAB_Subject AS L3 WHERE L3.LVL1 = TAB_Subject.LVL1 AND L3.LVL2 = TAB_Subject.LVL2 AND L3.LVL3 = TAB_Subject.LVL3 AND L3.LVL4 = 0) AS LVL3name, TAB_Subject.LVL4, (SELECT TOP 1 SName FROM TAB_Subject AS L4 WHERE L4.LVL1 = TAB_Subject.LVL1 AND L4.LVL2 = TAB_Subject.LVL2 AND L4.LVL3 = TAB_Subject.LVL3 AND L4.LVL4 = TAB_Subject.LVL4) AS LVL4name, TAB.TYPE1, (SELECT LISTname FROM DATA_list WHERE NOM2 = TAB.TYPE1 AND NOM1 = 1) AS TYPE1name, TAB.TYPE2, (SELECT LISTname FROM DATA_list WHERE NOM2 = TAB.TYPE2 AND NOM1 = 2) AS TYPE2name FROM TAB, TAB_Subject_X, TAB_Subject WHERE TAB.MNO = TAB_Subject_X.MNO AND TAB_Subject_X.SUB_ID = TAB_Subject.ID AND TAB_Subject.ID IN (76, 159, 1873) ORDER BY TAB_Subject.ID; عله يكون بداية طيبة ..
  11. وعليكم السلام ورحمة الله وبركاته .. حاولت فهم الموضوع من معطياتك أخي الكريم ولكني لم أوفق .. ان أمكن توضيح أكثر فنكون من الشاكرين
  12. إذا الآن يستحق الموضوع اغلاقه بفضل الله تعالى 😉
  13. هل جميع الإحتمالات التي تخص هذا الموضوع تمت بنجاح ؟؟؟ موضوع التنسيق الخاص بالتواريخ ضمن ضوابط وشروط محددة ، انصحك بفتح موضوع جديد مستقل له .
  14. استدعاء الدالة يا صديقي من خلال زر على سبيل المثال .. في اكسيس ، تم تنفيذها بشكل ميسر ودون اي مشاكل ، أما للفكرة التي في خيالك ان كانت من أجل التفعيل ومنع النقل الغير مصرح به للمشروع ، فيوجد أساليب كثيرة ممكن تطبقها على مشروعك . لست ضليع بالمستوى الذي لدى الأخوة هنا في قسم اكسيل ، ولكني في اكسيس أأكد لك أنه ذلك يسير بطرق وحلول كثيرة وكثيرة وكثيرة ,,
  15. سؤال جميل جداً .. برأيي هل من الممكن أن يكون السبب لتحديد الخصم للصنف / أصناف محددة وليس للفاتورة بشكل عام !! فقد تتيح له فرصة الخصم على اصناف محدة وليس جميع الاصناف ، أو الإستفادة من فكرة العروض على الأصناف ( إن لم يخني التعبير )
  16. أخي الكريم @أحمد عمروف ، تفضل هذا التعديل على التوزيع الشفوي و توزيع اللياقة في زرين منفصلين ، التوزيع الشفهي حسب ما فهمت منك سيكون بتاريخ 31/05/2025 ، واللياقة افترضت تاريخ 10/06/2025 للتجربة ، على العموم ، راقب النتيجة في الجدولين وأخبرني بمدى دقتها أو صحتها أم لا !!!! فكرة توزيع تلقائي لمستويين (2).zip
  17. تمام ، بناءً على كلامك ، سيكون التعديل كالتالي ، وأنصح بدراسة وتجربة جميع الإحتمالات حتى تلم بها دون اي مشاكل .. استبدل التعديل السابق بالتالي في التقرير :- Private Sub ProcessNoRemarriageCertificate() Me.L3.Visible = False Me.L2.Visible = True Me.L1.Visible = True Call InitializeControlsVisibility Dim zawjValue As Integer, zawjaValue As Integer zawjValue = Nz(Me.Tbl_ZAWJ_Hamech.Value, 0) zawjaValue = Nz(Me.Tbl_ZAWJA_Hamech.Value, 0) Dim dateDivorce As Date, dateDeath As Date On Error Resume Next dateDivorce = Nz(DLookup("[تاريخ (الوفاة - الطلاق)]", "N_Mariag"), 0) dateDeath = Nz(DLookup("[تاريخ الوفاة]", "N_Mariag"), 0) On Error GoTo 0 Select Case True ' حالة "لم تطلق منذ زواجها" Case (zawjValue = 1 And zawjaValue = 1) Me.k5.Visible = False Me.Da5.Visible = True Me.Za5.Visible = True ' حالة "عدم إعادة الزواج وهي أرملة" Case (zawjValue = 2 And zawjaValue = 1) Me.k6.Visible = False Me.Da6.Visible = True Me.Za6.Visible = True ' حالة "عدم إعادة الزواج وهي مطلقة" Case (zawjValue = 1 And zawjaValue = 2) Me.k7.Visible = False Me.Da7.Visible = True Me.Za7.Visible = True ' حالة "الزواج المنعقد بين السيد والسيدة" Case (zawjValue = 1 And zawjaValue = 1) Me.k8.Visible = False Me.Za8.Visible = True Me.Com8.Visible = True Me.Ne8.Visible = True ' الحالة الجديدة أخي طاهر عندما يكون الزوج متوفي والزوجة مطلقة (zawjValue = 2 And zawjaValue = 2) Case (zawjValue = 2 And zawjaValue = 2) If dateDeath > dateDivorce And dateDivorce <> 0 And dateDeath <> 0 Then ' إذا توفي الزوج بعد تاريخ طلاق الزوجة Me.k7.Visible = False Me.Da7.Visible = True Me.Za7.Visible = True Else Me.k7.Visible = True Me.Da7.Visible = False Me.Za7.Visible = False End If End Select DoCmd.Close acForm, "A3" End Sub Private Sub InitializeControlsVisibility() Dim controlNames As Variant controlNames = Array("k5", "Da5", "Za5", "k6", "Za6", "Da6", _ "k7", "Za7", "Da7", "k8", "Za8", "Com8", "Ne8", _ "k1", "Za1", "Da1", "k2", "Za2") Dim ctrlName As Variant For Each ctrlName In controlNames On Error Resume Next Me.Controls(ctrlName).Visible = (Left(ctrlName, 1) = "k") On Error GoTo 0 Next ctrlName End Sub
  18. أخي @طاهر اوفيسنا ، توضيحك للقيم الخاصة بالهامش في الجداول جاءت لك بفائدة كبيرة وهذا الى حد ما جزء من التأسيس الصحيح . تم استخدام هياكل تحكم أفضل من الجمل الشرطية . حيث استبدلت عبارات If-ElseIf المتعددة ببنية Select Case أكثر وضوحاً واستقرار مع دالة مساعدة بسيطة ، في المرفق التالي :- فتح تقرير FACE15.zip وفي الواقع انا تلافيت التعديل والعبث في مكونات جداولك بعد تعليقك على تعديلاتي في التقرير 😅 . ردك جعلني أتراجع عن المتابعة الى حد ما سابقاً ولكن الحمد لله تيسرت بطريقتك المشروعة .
  19. اعتذر منك عن المواصلة ، فعملك يحتاج لإعادة بنااااااء . وخصوصاُ فكرة الهوامش الغير متوحدة ، بما أنك أوجدت جدول للهوامش فمن المفترض ان يضم جميع الإحتمالات وبأسلوب صحيح وليس كما في الجدول الخاص بالهامش = Tbl_Hamech هامش العملية على قيد الحياة و غير مطلقة على قيد الحياة و مطلقة بتاريخ : مطلقة بتاريخ : ومتوفيه بتاريخ : متوفية بتاريخ : وفي الجدول الخاص بالزوج = Tbl_ZAWJ الهامش متوفي بتاريخ : متوفي بتاريخ : على قيد الحياة بينما في الجدول الخاص بالزوجة = Tbl_ZAWJA الهامش على قيد الحياة و مطلقة بتاريخ : على قيد الحياة و غير مطلقة على قيد الحياة و مطلقة بتاريخ : فمن المفترض ان يلم الجدول الخاص بالهوامش بجميع الحالات والتي يمكن ان تساعدك في تحقيق طلبك . وعليه فأن القيمة في الحقل في جدول الزوج والزوجة للحقل الهانش ستكون بما يناظرها في جدول الهوامش .. هذه وجهة نظري الغير ملزمة لك ، ما لم يكن هناك وجهة نظر أخرى لأحد الأساتذة , أو إن لم أخرج لك بطريقة أخرى تحافظ على ما تريده ، مع العلم أنني استشرتك في التعديل على فكرة التقرير ، وقد سمحت لي بما يتحقق مع مطلبك ثم عدلت عن الفكرة بإنها تغير من بنية التقرير ( بسبب قيود إدارة الحالة المدنية الجزائرية .
  20. وعليكم السلام ورحمة الله وبركاته ، صدقاً لم أتجاهل طلبك ، ولكن لضغط العمل سبب في تأخري بالرد ليس إلا ,, سأحاول غداً ان شاء الله تعديل الفكرة حسب ملفك الأخير
  21. أخي @طاهر اوفيسنا ، ممكن توضح لي الحقل Hamech ???????? قيمته في جدول الزوجة Tbl_ZAWJA = الهامش على قيد الحياة و مطلقة بتاريخ : على قيد الحياة و غير مطلقة على قيد الحياة و مطلقة بتاريخ : بينما في الاستعلام = 2 OR 4 الأمر يستدعي إصلاح الكثير من الأخطاء للحصول على طلبك ،
  22. أخي @طاهر اوفيسنا ,, جرب هذا التعديل البسيط بعد ان تجاهلت ما كنت اعمل عليه سابقاً ,, فتح تقرير FACE14.zip عدلت عن السلوك السابق ، واتبعت سلوك جديد في التنفيذ ، جربه ان كان ناجحاً . فأنت أدرى مني بسلوك برنامج وآلية العمل عليه .
  23. ماتت الأفكار عند هذه النقطة ، بعد ان انتهينا من تنفيذ الفكرتين الأولى والثانية
×
×
  • اضف...

Important Information