mbdeon قام بنشر أبريل 8, 2020 قام بنشر أبريل 8, 2020 لدي مربع Checkbox اسمه dd أضفت له الكود التالي ليقوم بتنفيذ استعلام ولكن لم ينجح معي علماً أني مستجد في اكسس If Me.dd = 1 Then Dim t t = MsgBox("åá ÃäÊ ãÊÃßÏ ãä ÑÛÈÊß ÍÐÝ ßÇÝÉ ÇáÃÕäÇÝ ãä ÇáÝÇÊæÑÉ¿", vbYesNo, "ÍÐÝ ÇáÃÕäÇÝ ãä ÇáÝÇÊæÑÉ") If t = vbYes Then DoCmd.SetWarnings False DoCmd.OpenQuery "ÇÓÊÚáÇã ÍÐÝ ÝÇÊæÑÉ" Me.dd = 0 DoCmd.SetWarnings True Else If t = vbNo Then MsgBox "Êã ÇáÊÑÇÌÚ Úä ÇáÍÐÝ" End If If Me.dd = 0 Then Dim r r = MsgBox("åá ÃäÊ ãÊÃßÏ ãä ÑÛÈÊß ÅÖÇÝÉ ÇáÕäÝ ááÝÇÊæÑÉ¿", vbYesNo, "ÍÝÙ ÇáÕäÝ") If r = vbYes Then DoCmd.SetWarnings False DoCmd.OpenQuery "Q1" DoCmd.OpenQuery "Q2" Me.dd = 1 DoCmd.SetWarnings True Else If r = vbNo Then MsgBox "Êã ÇáÊÑÇÌÚ Úä ÇáÍÝÙ" DoCmd.CancelEvent End If End If End If End If End If End Sub أرجو المساعدة ولكم كل الشكر
jjafferr قام بنشر أبريل 8, 2020 قام بنشر أبريل 8, 2020 وعليكم السلام اخي الفاضل 🙂 واهلا وسهلا بك في المنتدى 🙂 الخطأ عندك في السطر الاول ، حيث انه لما تنقر على كائن صح/خطأ ، فعلامة الصح قيمتها -1 ، وعلامة بدون صح قيمتها 0 ، فعليه يصبح الكود : If Me.dd = -1 Then ولكن ، ايش رأيك في هذ التنسيق ، بحيث بإستعمال TAB الكيبورد ننسق الكود ، فتصبح قراءة الكود سهله ، ونعرف كل مجموعة وين بدايتها ووين نهايتها : If Me.dd = -1 Then Dim t t = MsgBox("?? ??E ?E??I ?? ?UEE? ??? ?C?E C????C? ?? C??CE??E?", vbYesNo, "??? C????C? ?? C??CE??E") If t = vbYes Then DoCmd.SetWarnings False DoCmd.OpenQuery "C?E??C? ??? ?CE??E" Me.dd = 0 DoCmd.SetWarnings True ElseIf t = vbNo Then MsgBox "E? C?E?C?? ?? C????" End If ElseIf Me.dd = 0 Then Dim r r = MsgBox("?? ??E ?E??I ?? ?UEE? ??C?E C???? ???CE??E?", vbYesNo, "??U C????") If r = vbYes Then DoCmd.SetWarnings False DoCmd.OpenQuery "Q1" DoCmd.OpenQuery "Q2" Me.dd = 1 DoCmd.SetWarnings True ElseIf r = vbNo Then MsgBox "E? C?E?C?? ?? C???U" DoCmd.CancelEvent End If End If جعفر 1 1
mbdeon قام بنشر أبريل 8, 2020 الكاتب قام بنشر أبريل 8, 2020 الله يعطيك العافية أخي جعفر يال فرحتي بردك بصراحة ماعندي خلفية كبيرة في الاكسس لكن اجلس احاول واعدل في الكود من الصباح ههههه ما نزلت الموضوع الا لما عجزت التنسيق كذا ممتاز وشكرا لتوجيهك على فكرة استفدت كثيرا من ردودك ومساعدتك للجميع في عدة مواضيع في المنتدى ويعلم الله أنني توقعت أن تكون أنت أول من يرد شكرا لك ياغالي
Hawiii قام بنشر أبريل 8, 2020 قام بنشر أبريل 8, 2020 توجد عدة ملاحظات على الكود ، ولكني سأضيف على الأستاذ جعفر هذه الملاحظة: عند حصر الاختيار في قيمتين فقط مثل نعم ولا ، صح وخطأ فلا داعي لاستخدام ElseIf كما التالي: If Me.dd = -1 Then ElseIf Me.dd = 0 Then End If والأصح أن تكتب هكذا: If Me.dd = -1 Then Else End If ويمكن كتابتها بشكل مختصر كالتالي: If Me.dd Then Else End If
mbdeon قام بنشر أبريل 9, 2020 الكاتب قام بنشر أبريل 9, 2020 أهلا بك أخي الكريم أرجو أن أكون فهمت بشكل صحيح تقصد ان الكود يصير بهذا الشكل؟ If Me.dd = -1 Then Dim t t = MsgBox("?? ??E ?E??I ?? ?UEE? ??? ?C?E C????C? ?? C??CE??E?", vbYesNo, "??? C????C? ?? C??CE??E") If t = vbYes Then DoCmd.SetWarnings False DoCmd.OpenQuery "C?E??C? ??? ?CE??E" Me.dd = 0 DoCmd.SetWarnings True ElseIf t = vbNo Then MsgBox "E? C?E?C?? ?? C????" End If Else Dim r r = MsgBox("?? ??E ?E??I ?? ?UEE? ??C?E C???? ???CE??E?", vbYesNo, "??U C????") If r = vbYes Then DoCmd.SetWarnings False DoCmd.OpenQuery "Q1" DoCmd.OpenQuery "Q2" Me.dd = 1 DoCmd.SetWarnings True ElseIf r = vbNo Then MsgBox "E? C?E?C?? ?? C???U" DoCmd.CancelEvent End If
Hawiii قام بنشر أبريل 9, 2020 قام بنشر أبريل 9, 2020 (معدل) If Me.dd Then if vbYes = MsgBox("?? ??E ?E??I ?? ?UEE? ??? ?C?E C????C? ?? C??CE??E?", vbYesNo, "??? C????C? ?? C??CE??E") Then 'DoCmd.SetWarnings False DoCmd.OpenQuery "C?E??C? ??? ?CE??E" Me.dd = Not Me.dd 'DoCmd.SetWarnings True Else MsgBox "E? C?E?C?? ?? C????" End If Else if vbYes = MsgBox("?? ??E ?E??I ?? ?UEE? ??C?E C???? ???CE??E?", vbYesNo, "??U C????") Then 'DoCmd.SetWarnings False DoCmd.OpenQuery "Q1" DoCmd.OpenQuery "Q2" Me.dd = Not Me.dd 'DoCmd.SetWarnings True Else MsgBox "E? C?E?C?? ?? C???U" DoCmd.CancelEvent End If End If تم تعديل أبريل 9, 2020 بواسطه Hawiii
jjafferr قام بنشر أبريل 9, 2020 قام بنشر أبريل 9, 2020 11 ساعات مضت, mbdeon said: التنسيق كذا ممتاز وشكرا لتوجيهك حياك الله 🙂 10 ساعات مضت, Hawiii said: ويمكن كتابتها بشكل مختصر كالتالي شكرا جزيلا على هذه الملاحظات ، وتفسير جميل 🙂 مثل ما تلاحظ اني عملت تغيير "كبير" في قص/دمج الكود ، ولكن جميع التغييرات واضحة ، وما حبيت ان اعمل التغيير اللي انت تفضلت به ، لأنه ليس من الكود ، والسائل ما بيفهم ، وبالتالي بيضيع ومو هذا المطلوب 🙂 جعفر
Hawiii قام بنشر أبريل 9, 2020 قام بنشر أبريل 9, 2020 44 دقائق مضت, jjafferr said: لأنه ليس من الكود ، والسائل ما بيفهم ، وبالتالي بيضيع ومو هذا المطلوب حياك الله أستاذنا جعفر ، الحقيقة كلامك يحتاج إلى توضيح: ليس من الكود؟ مو هذا المطلوب؟ عموما أنا علقت على خطأ في كتابة الكود وأعتقد هذا هو الصح أن لا تمرر الأخطاء كمسلمات ، وإلا إذا السائل ما عرف خطأه كيف له أن يتعلم ويصلح أخطاءه أو يقلل منها!! أنا قلت أن هناك ملاحظات على الكود ومع ذلك عند قراءتي للكود كنت واثق أنه سينفذ المطلوب ولم أشأ أن أتدخل إلا لما سألني مرة أخرى فاختصرت الموضوع وأجريت تعديل شامل بشكل نموذجي حسب اجتهادي ولو وجه السؤال لك لم تدخلت. على كل حتى مع تصحيحك لخطأ قيمة الـ True من 1 إلى -1 ، بقى هناك تكرار لنفس الخطأ لم تلحظه. وكذلك ملاحظتي للاستخدام الخاطئ لـ ElseIf هو كذلك مكرر في الكود ثلاث مرات وليس مرة واحدة. عموما أنا معكم بشكل مؤقت حتى تنتهي مشكلة الكورونا ثم نتفرغ لما هو أهم بالنسبة لأولوياتي ، وأنا هنا فقط أشغل وقتي في شيء يفيد الناس ولا مشكلة عندي للانسحاب إذا كانت مداخلاتي ستسبب مشكلات لكم وأنتم أولى بهذا المنتدى مني فما أنا إلا ضيف طارئ ومؤقت. ملاحظة وأرجو أن لا تزعلوا مني ، المنتدى في كتابة الأكواد بشكل عام متواضع ويلزمكم استقطاب خبراء فن الكتابة 🙂
jjafferr قام بنشر أبريل 9, 2020 قام بنشر أبريل 9, 2020 الظاهر كلامي بالفعل يحتاج له توضيح 🙂 اخي الفاضل ، اما تصحيحك للكود ، فانا قلت فيه : منذ ساعه, jjafferr said: شكرا جزيلا على هذه الملاحظات ، وتفسير جميل 🙂 اما السطر الثالث : منذ ساعه, jjafferr said: 1. وما حبيت ان اعمل التغيير اللي انت تفضلت به ، لأنه ليس من الكود ، 2. والسائل ما بيفهم ، 3. وبالتالي بيضيع ومو هذا المطلوب 1. من الكود الذي وضعه صاحب الموضوع ، ومن سؤاله ، يتضح مدى معرفة صاحب الموضوع بالكود ، وبالفعل ، حدسي كان في محله ، وفي مشاركته الثانية اكد هذا الكلام 🙂 لهذا السبب ، ما اردت ان اعمل تغيير جوهري في الكود حتى يفهم التصحيح اللي انا عملته ، وما اردت ان اعمل اي تغيير خارج الكود كذلك حتى يفهم التصحيح اللي انا عملته 🙂 2. والسبب في كل هذا ، حتى السائل يفهم التعديل اللي انا عملته ، وما يضيع ، 3. اما اذا ما فهم التعديل ، فبالتالي بيضيع ، ومو هذا المطلوب بالشرح 🙂 وانا والاستاذ رمهان دائما في اخذ وعطاء في موضوع الكود ، فهو ماشاءالله محترف في التخزيل والاختصار (وهذا هو الاحتراف) ، بينما انا اشرح بخطوات اكثر (وليس هذا بالاحتراف) ، ولكن وجهة نظري هي ، ان السائل لن يفهم الكود المقتضب ، ولن يستطيع تعديله في المستقبل ، لهذا السبب اتعمد الكود الاطول (او يمكن لأني من المدرسة القديمة وما اخذت اي دروس في البرمجة !!) ، 26 دقائق مضت, Hawiii said: عموما أنا معكم بشكل مؤقت حتى تنتهي مشكلة الكورونا ثم نتفرغ لما هو أهم بالنسبة لأولوياتي ، وأنا هنا فقط أشغل وقتي في شيء يفيد الناس ولا مشكلة عندي للانسحاب إذا كانت مداخلاتي ستسبب مشكلات لكم وأنتم أولى بهذا المنتدى مني فما أنا إلا ضيف طارئ ومؤقت. اذن الحمدلله ان فايروس كورونا منه فائدة ، وهو وجودك معانا ، فأهلا وسهلا بك اخي الفاضل معانا في كل وقت 🙂 27 دقائق مضت, Hawiii said: ملاحظة وأرجو أن لا تزعلوا مني ، المنتدى في كتابة الأكواد بشكل عام متواضع ويلزمكم استقطاب خبراء فن الكتابة 🙂 اعضاء منتديات البرمجة العالميه بوجه عام ، متطوعين ، وما كلهم بنفس المستوى ، ولكن الهدف هنا مساعدة الآخرين ، ونرحب بوجود المحترفين ، ونرحب بوجودك معنا ، وهذا الميدان يا حميدان 🙂 جعفر 1 2
Hawiii قام بنشر أبريل 9, 2020 قام بنشر أبريل 9, 2020 للتو انتبهت أنك عدلت على كود السائل ، وللتو عرفت ما يريد من الكود لأن العربي كان غير مقروء ، وتعديلي كان "عمياني" بدون أن أفهم الرسائل 🙂 لقد قمت بتصميم نموذج وإضافة Checkbox باسم dd ولصق كود السائل في حدث AfterUpdate وبعد أن أصبحت نصوص الرسائل مقروءة ، أنصح السائل أن يعمل زرين أحدهما للإضافة وأخر للحذف أفضل من هذه الطريقة الغريبة!! ، وربما له هدف لا نعرفه من هذه الطريقة فإذا عرف السبب بطل العجب. 2
jjafferr قام بنشر أبريل 9, 2020 قام بنشر أبريل 9, 2020 في الواقع المنتديات عالم بذاته ، وبالخصوص المنتديات العربية ، ومختلف عن عالمنا الذي نعيش فيه ، وشوي شوي بدأت اتاقلم عليه ، ومازلت احاول 🙂 فأهلا وسهلا بك في التأقلم في هذا العالم 🙂 جعفر 1
mbdeon قام بنشر أبريل 9, 2020 الكاتب قام بنشر أبريل 9, 2020 8 ساعات مضت, Hawiii said: للتو انتبهت أنك عدلت على كود السائل ، وللتو عرفت ما يريد من الكود لأن العربي كان غير مقروء ، وتعديلي كان "عمياني" بدون أن أفهم الرسائل 🙂 لقد قمت بتصميم نموذج وإضافة Checkbox باسم dd ولصق كود السائل في حدث AfterUpdate وبعد أن أصبحت نصوص الرسائل مقروءة ، أنصح السائل أن يعمل زرين أحدهما للإضافة وأخر للحذف أفضل من هذه الطريقة الغريبة!! ، وربما له هدف لا نعرفه من هذه الطريقة فإذا عرف السبب بطل العجب. الكود أخي الحبيب لتشغيل استعلام تحديث للمخذون واعتماد بنود الفاتورة في نموذج فرعي مستمر وفي حال التأشير على خانة الاختيار يتم تشغيل الاستعلام وتحديث الكمية في المخزون وعندما يتم إلغاء التأشير يتم تشغيل استعلام تحديث لتحديث الكمية وحذف البند من الفاتورة أما وضع زرين أحدهما للإضافة والآخر للحذف فلا أرى أنه عملي خصوصا أن المستخدم قد يقوم بتكرار الحفظ وبالتالي تنفيذ الاستعلام لأكثر من مرة ولكن كونه مربع اختيار يجعل المستخدم يقوم بالتأشير عليه لمرة واحدة ويتضح له أنه تم حفظه وعند إلغاء التأشير يتم تشغيل استعلام الحذف وبالتالي نحافظ على المخزون صحيحاً لاحظ الصورة المرفقة ملاحظة لو لدى أحدكم طريقة أخرى لأداء العملية فأرحب بأي اقتراحات
mbdeon قام بنشر أبريل 9, 2020 الكاتب قام بنشر أبريل 9, 2020 (معدل) أيضاً مفيد في حفظ الفاتورة بحيث لو وجد مربع بدون تحديد تظهر رسالة تفيد بعدم حفظ جميع بنود الفاتورة وبالتالي إما إزالة البند من الفاتورة وإما حفظه قبل تفعيل الحفظ عندها يتم تفعيل الطباعة وبدون ذلك لن يتم الحفظ وفي حال عدم الحفظ لن تتم الطباعة تم تعديل أبريل 9, 2020 بواسطه mbdeon إضافة مرفق
mbdeon قام بنشر أبريل 9, 2020 الكاتب قام بنشر أبريل 9, 2020 وهذا يأخذنا إلى سؤال آخر !! هل يمكن تنفيذ شرط يستند إلى مربع اختيار ضمن نموذج مستمر ؟؟ مثلا بوضع شرط كود الصنف مثلاً (لأنه حقل فريد) إذا نعم أرجو الإفادة بالكود المناسب
Hawiii قام بنشر أبريل 10, 2020 قام بنشر أبريل 10, 2020 توكل على الله ، أنا قلت إذا عرف السبب بطل العجب ، وكل الطرق تؤدي إلى روما. مع ملاحظة أنه يمكنك أن تنقذ كل الأوامر المطلوبة في النموذج الفرعي من خلال النموذج الأب/الأساس ، الأخوة لن يقصروا معك ، وأنصحك بالمحاولة والتجربة قبل السؤال والحصول على أجوبة سريعة لن تتعلم منها. وسامحوني أنا بعض المصطلحات والمسميات لا أفهما.
mbdeon قام بنشر أبريل 10, 2020 الكاتب قام بنشر أبريل 10, 2020 18 ساعات مضت, Hawiii said: توكل على الله ، أنا قلت إذا عرف السبب بطل العجب ، وكل الطرق تؤدي إلى روما. مع ملاحظة أنه يمكنك أن تنقذ كل الأوامر المطلوبة في النموذج الفرعي من خلال النموذج الأب/الأساس ، الأخوة لن يقصروا معك ، وأنصحك بالمحاولة والتجربة قبل السؤال والحصول على أجوبة سريعة لن تتعلم منها. وسامحوني أنا بعض المصطلحات والمسميات لا أفهما. تسلم يا غالي فعليا كل ما وصلت له في حياتي هو بالمحاولة والخطأ وعادة لا أطلب المساعدة إلا عندما أتيقن بوصولي لطريق مسدود 20 ساعات مضت, mbdeon said: وهذا يأخذنا إلى سؤال آخر !! هل يمكن تنفيذ شرط يستند إلى مربع اختيار ضمن نموذج مستمر ؟؟ مثلا بوضع شرط كود الصنف مثلاً (لأنه حقل فريد) إذا نعم أرجو الإفادة بالكود المناسب من لديه أي إفادة أرجو المساعدة ولكم كل الشكر
jjafferr قام بنشر أبريل 10, 2020 قام بنشر أبريل 10, 2020 منذ ساعه, mbdeon said: من لديه أي إفادة أرجو المساعدة ولكم كل الشكر الافضل ان تضع مثال علشان نفهمه ، وعلى اساسه نعطيك الجواب 🙂 جعفر
mbdeon قام بنشر أبريل 10, 2020 الكاتب قام بنشر أبريل 10, 2020 23 ساعات مضت, mbdeon said: أيضاً مفيد في حفظ الفاتورة بحيث لو وجد مربع بدون تحديد تظهر رسالة تفيد بعدم حفظ جميع بنود الفاتورة وبالتالي إما إزالة البند من الفاتورة وإما حفظه قبل تفعيل الحفظ عندها يتم تفعيل الطباعة وبدون ذلك لن يتم الحفظ وفي حال عدم الحفظ لن تتم الطباعة كما تلاحظ في فاتورة البيع يجب أن يقوم المستخدم بحفظ الصنف عن طريق تحديد خانة الاختيار لكل صنف ثم حفظ الفاتورة ليتم تحديث عدة حقول مرتبطة برأس الفاتورة وذلك بالضغط على زر حفظ الفاتورة في أسفل النموذج المطلوب ألا يتمكن من تنفيذ زر حفظ الفاتورة إلا عندما تكون جميع خانات الاختيار محددة لكل صنف وفي حال لم تكن جميعها محددة تظهر للمستخدم رسالة بأن بعض بنود الفاتورة لم تحفظ ويجب حفظها أو إزالتها أرجو أن تكون الفكرة واضحة
mbdeon قام بنشر أبريل 11, 2020 الكاتب قام بنشر أبريل 11, 2020 وكما لايخفى عليك أخ جعفر أن زر حفظ الفاتورة موجود في النموذج الرئيسي وبنود الفاتورة في النموذج الفرعي
mbdeon قام بنشر مايو 14, 2020 الكاتب قام بنشر مايو 14, 2020 في ١٠/٤/٢٠٢٠ at 23:27, jjafferr said: الافضل ان تضع مثال علشان نفهمه ، وعلى اساسه نعطيك الجواب 🙂 جعفر مازلت في انتظار مساعدتك أخي الكريم
ابوخليل قام بنشر مايو 14, 2020 قام بنشر مايو 14, 2020 في ١٠/٤/٢٠٢٠ at 23:27, jjafferr said: الافضل ان تضع مثال علشان نفهمه ، وعلى اساسه نعطيك الجواب 🙂 جعفر 2 ساعات مضت, mbdeon said: مازلت في انتظار مساعدتك أخي الكريم يقصد الاستاذ جعفر بالمثال هو ان تضع مرفقا مصغرا تظهر المشكلة فيه ويمكن التعديل عليه 2
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.