Hadi22 قام بنشر أبريل 14, 2016 قام بنشر أبريل 14, 2016 السلام عليكم اخواني اعضاء منتدى اوفيسنا لاغنى عنكم في المساعدة لدي قاعدة بيانات مرفقة وهي عبارة عن ادارة مهام اود منكم مساعدتي في تحديث حالة المهمة عند فتح حالة المهمة يفتح نموذج بداخلة قائمة منسدلة المسبوق اسمهم ب حالة Maintb المفترض عند الضغط على القائمة المنسدلة تقوم بعرض جميع الموظفين الموجودين في جدول بعد اختيار الموظف يتم عرض جميع المهام المشترك فيها هذا الموظف شاكرا لكم اعزائي Database1.rar
jjafferr قام بنشر أبريل 14, 2016 قام بنشر أبريل 14, 2016 وعليكم السلام فتشت الجداول الثلاث ، ولم القى حقل للموظفين!! وياريت تعطينا شرح مفصل اكثر ، حتى نستطيع ان نقتدي به ونساعدك في برنامجك جعفر
Hadi22 قام بنشر أبريل 14, 2016 الكاتب قام بنشر أبريل 14, 2016 1 minute ago, jjafferr said: وعليكم السلام فتشت الجداول الثلاث ، ولم القى حقل للموظفين!! وياريت تعطينا شرح مفصل اكثر ، حتى نستطيع ان نقتدي به ونساعدك في برنامجك جعفر عفوا الموظفين المقصود بهم
jjafferr قام بنشر أبريل 14, 2016 قام بنشر أبريل 14, 2016 طيب ، ايش نعمل بهذه الاسماء؟ لوسمحت تعطينا مثال/شرح مفصل ، حتى نستطيع ان نقتدي به ونساعدك في برنامجك جعفر
Hadi22 قام بنشر أبريل 14, 2016 الكاتب قام بنشر أبريل 14, 2016 10 minutes ago, jjafferr said: طيب ، ايش نعمل بهذه الاسماء؟ لوسمحت تعطينا مثال/شرح مفصل ، حتى نستطيع ان نقتدي به ونساعدك في برنامجك جعفر المقصود هو التالي عند فتح نموذج تحديث حالة المهمة الموجودين في الصورة ادناه بدائرة حمراء Maintb يقوم المستخدم باختيار احد الموظفين الموجودين في الجدول وعند اختيار مثلا حالة مشرف 1 قسم 1 يظهر في النموذج اسفل القائمة المنسدلة جميع المهام المرتبطة بهذا الموظف ارجو ان تكون وضحت الفكرة
jjafferr قام بنشر أبريل 14, 2016 قام بنشر أبريل 14, 2016 تفضل . الكود الذي يقوم بالعمل هو: Private Sub Form_Open(Cancel As Integer) Me.sfrm_updatefrm.Visible = False End Sub Private Sub poscom_AfterUpdate() Me.sfrm_updatefrm.Visible = True H = "حالة " & [Forms]![updatefrm]![poscom] B = "بريد " & [Forms]![updatefrm]![poscom] Me.sfrm_updatefrm!lbl_H.Caption = H Me.sfrm_updatefrm!lbl_B.Caption = B Me.sfrm_updatefrm!str_H.ControlSource = H Me.sfrm_updatefrm!str_B.ControlSource = B mySQL = "SELECT Category, [Sub-Category], Action, [Due Date], " mySQL = mySQL & "[" & H & "], " mySQL = mySQL & "[" & B & "]" mySQL = mySQL & " FROM Maintb" 'Debug.Print mySQL Me.sfrm_updatefrm.Form.RecordSource = mySQL Me.sfrm_updatefrm.Requery End Sub جعفر 368.Database1.mdb.zip 1
Hadi22 قام بنشر أبريل 14, 2016 الكاتب قام بنشر أبريل 14, 2016 40 minutes ago, jjafferr said: تفضل . الكود الذي يقوم بالعمل هو: Private Sub Form_Open(Cancel As Integer) Me.sfrm_updatefrm.Visible = False End Sub Private Sub poscom_AfterUpdate() Me.sfrm_updatefrm.Visible = True H = "حالة " & [Forms]![updatefrm]![poscom] B = "بريد " & [Forms]![updatefrm]![poscom] Me.sfrm_updatefrm!lbl_H.Caption = H Me.sfrm_updatefrm!lbl_B.Caption = B Me.sfrm_updatefrm!str_H.ControlSource = H Me.sfrm_updatefrm!str_B.ControlSource = B mySQL = "SELECT Category, [Sub-Category], Action, [Due Date], " mySQL = mySQL & "[" & H & "], " mySQL = mySQL & "[" & B & "]" mySQL = mySQL & " FROM Maintb" 'Debug.Print mySQL Me.sfrm_updatefrm.Form.RecordSource = mySQL Me.sfrm_updatefrm.Requery End Sub جعفر 368.Database1.mdb.zip عمل ومجهود تشكر عليه اخي جعفر ممكن تشرح لي هذا الكود H = "حالة" & [Forms]![updatefrm]![poscom]
jjafferr قام بنشر أبريل 14, 2016 قام بنشر أبريل 14, 2016 تفضل سيدي الفاضل Private Sub Form_Open(Cancel As Integer) 'عند فتح النموذج ، اجعل النموذج الفرعي مخفي 'لأننا لا نريد المستخدم ان يرى غير البيانات المطلوبة Me.sfrm_updatefrm.Visible = False End Sub Private Sub poscom_AfterUpdate() 'الآن وقد تم اختيار الشخص ، نجعل النموذج الفرعي مرئي Me.sfrm_updatefrm.Visible = True 'هناك حقلين موجودين في الجدول لكل شخص 'حقل يبدأ بكلمة "حالة" و حقل يبدأ بكلمة "بريد" فقط 'فإذا اضفنا كلمة "حالة " قبل اسم الشخص ، ثم اضفنا اسم الشخص عليها 'ستكون نفس اسم الحقل في الجدول ، ونفس الشئ بالنسبة للحقل الثاني، بريد H = "حالة " & [Forms]![updatefrm]![poscom] B = "بريد " & [Forms]![updatefrm]![poscom] 'نعطي هذه الاسماء لمسميات الحقول Me.sfrm_updatefrm!lbl_H.Caption = H Me.sfrm_updatefrm!lbl_B.Caption = B 'والآن نعطي هذه الاسماء كمصدر للحقول Me.sfrm_updatefrm!str_H.ControlSource = H Me.sfrm_updatefrm!str_B.ControlSource = B 'الآن نعمل استعلام ، ليكون مصدر للنموذج الفرعي 'اولا نأخذ الحقول الثابتة mySQL = "SELECT Category, [Sub-Category], Action, [Due Date], " 'نضيف الحقلين المتغيرين للشخص، والتي تم عملهما في اعلاه mySQL = mySQL & "[" & H & "], " mySQL = mySQL & "[" & B & "]" 'ونكمل الاستعلام بإضافة مصدر معلوماته ، وهو الجدول mySQL = mySQL & " FROM Maintb" 'Debug.Print mySQL 'الآن وقد تم عمل استعلام مصدر بيانات النموذج الفرعي 'نخبر البرنامج ان يستعمله Me.sfrm_updatefrm.Form.RecordSource = mySQL 'ولو انه لا داعي للسطر التالي ، ولكنه لإعادة قراءة البيانات من الجدول Me.sfrm_updatefrm.Requery End Sub جعفر 1
Hadi22 قام بنشر أبريل 15, 2016 الكاتب قام بنشر أبريل 15, 2016 14 hours ago, jjafferr said: تفضل سيدي الفاضل Private Sub Form_Open(Cancel As Integer) 'عند فتح النموذج ، اجعل النموذج الفرعي مخفي 'لأننا لا نريد المستخدم ان يرى غير البيانات المطلوبة Me.sfrm_updatefrm.Visible = False End Sub Private Sub poscom_AfterUpdate() 'الآن وقد تم اختيار الشخص ، نجعل النموذج الفرعي مرئي Me.sfrm_updatefrm.Visible = True 'هناك حقلين موجودين في الجدول لكل شخص 'حقل يبدأ بكلمة "حالة" و حقل يبدأ بكلمة "بريد" فقط 'فإذا اضفنا كلمة "حالة " قبل اسم الشخص ، ثم اضفنا اسم الشخص عليها 'ستكون نفس اسم الحقل في الجدول ، ونفس الشئ بالنسبة للحقل الثاني، بريد H = "حالة " & [Forms]![updatefrm]![poscom] B = "بريد " & [Forms]![updatefrm]![poscom] 'نعطي هذه الاسماء لمسميات الحقول Me.sfrm_updatefrm!lbl_H.Caption = H Me.sfrm_updatefrm!lbl_B.Caption = B 'والآن نعطي هذه الاسماء كمصدر للحقول Me.sfrm_updatefrm!str_H.ControlSource = H Me.sfrm_updatefrm!str_B.ControlSource = B 'الآن نعمل استعلام ، ليكون مصدر للنموذج الفرعي 'اولا نأخذ الحقول الثابتة mySQL = "SELECT Category, [Sub-Category], Action, [Due Date], " 'نضيف الحقلين المتغيرين للشخص، والتي تم عملهما في اعلاه mySQL = mySQL & "[" & H & "], " mySQL = mySQL & "[" & B & "]" 'ونكمل الاستعلام بإضافة مصدر معلوماته ، وهو الجدول mySQL = mySQL & " FROM Maintb" 'Debug.Print mySQL 'الآن وقد تم عمل استعلام مصدر بيانات النموذج الفرعي 'نخبر البرنامج ان يستعمله Me.sfrm_updatefrm.Form.RecordSource = mySQL 'ولو انه لا داعي للسطر التالي ، ولكنه لإعادة قراءة البيانات من الجدول Me.sfrm_updatefrm.Requery End Sub جعفر ممتاز اخي جعفر انا اعدت استخدام الكود ولكن في النموذج الفرعي يظهر لي جميع المهام وليس المهام الخاصة بالاسم المختار فقط ّ؟؟ هل الكود ادناه صحيح Me.sfrm_updatefrm.Visible = True H = "Status " & [Forms]![updatefrm1]![poscom] Me.sfrm_updatefrm!lbl_H.Caption = H Me.sfrm_updatefrm!str_H.ControlSource = H mySQL = "SELECT [Item ID], Category, [Sub-Category], Action, [Due Date], " mySQL = mySQL & "[" & H & "] " mySQL = mySQL & " FROM Maintb" 'Debug.Print mySQL Me.sfrm_updatefrm.Form.RecordSource = mySQL Me.sfrm_updatefrm.Requery
jjafferr قام بنشر أبريل 15, 2016 قام بنشر أبريل 15, 2016 1 ساعه مضت, Hadi22 said: انا اعدت استخدام الكود الكود ظاهرا تمام !! ارفق البرنامج اشوفه جعفر
jjafferr قام بنشر أبريل 16, 2016 قام بنشر أبريل 16, 2016 هل من الطبيعي ان جميع الاشخاص لديهم نفس هذه المعلومات التي في المربع الاحمر؟ والمعلومات المتغيرة فقط تلك التي في المربع الازرق؟ جعفر
Hadi22 قام بنشر أبريل 16, 2016 الكاتب قام بنشر أبريل 16, 2016 10 دقائق مضت, jjafferr said: هل من الطبيعي ان جميع الاشخاص لديهم نفس هذه المعلومات التي في المربع الاحمر؟ والمعلومات المتغيرة فقط تلك التي في المربع الازرق؟ جعفر اخي جعفر Category جميع المعلومات متغيرة ماعدا الحقل الاول هذا الحقل بياناته كتغيره ايضا ولكن محددة في قائمة منسدلة
jjafferr قام بنشر أبريل 16, 2016 قام بنشر أبريل 16, 2016 ولكن في الجدول Maintb ، هناك حقل واحد فقط لجميع الحقول في المربع الاحمر!! يعني هل افهم من كلامك ، انه كلما اردت اضافة مهمة Category لشخص ، فيجب ان تغير بقية الحقول كذلك؟ اذا كان الجواب نعم ، فهذا معناه ان جدولك يحتاج الى تعديل ، بحيث كلما تُدخل مهمة ، فيجب ان تعمل سجل جديد في الجدول يخص هذا الشخص فقط. انتظر منك الرد لإجراء التعديل على الجدول. جعفر
jjafferr قام بنشر أبريل 16, 2016 قام بنشر أبريل 16, 2016 اليك التعديلات: 1. عمل جدول خاص بالموظفين: . 2. تغيير جدول Maintb الى التالي: . الآن ، كل سجل يخص موظف واحد فقط ، وكلما اردت اضافة معلومات ، فيجب إضافة سجل/سجلات جديده للموظف حسب الحاجة من المهمات طبعا الآن يجب ان تغير في نموذج الادخال ، وعليه لازم نغير طريقة عمل النماذج اللي اشتغلنا عليها سابقا ، وكذلك التقرير. جعفر 368.Database1.mdb.zip
Hadi22 قام بنشر أبريل 17, 2016 الكاتب قام بنشر أبريل 17, 2016 13 hours ago, jjafferr said: اليك التعديلات: 1. عمل جدول خاص بالموظفين: . 2. تغيير جدول Maintb الى التالي: . الآن ، كل سجل يخص موظف واحد فقط ، وكلما اردت اضافة معلومات ، فيجب إضافة سجل/سجلات جديده للموظف حسب الحاجة من المهمات طبعا الآن يجب ان تغير في نموذج الادخال ، وعليه لازم نغير طريقة عمل النماذج اللي اشتغلنا عليها سابقا ، وكذلك التقرير. جعفر 368.Database1.mdb.zip حاولت بهذه الطريقة اخي ولم تنجح معي
Hadi22 قام بنشر أبريل 17, 2016 الكاتب قام بنشر أبريل 17, 2016 تم تعديل قاعدة البيانات ارجو او تطلع عليها اخي جعفر Database21.zip
jjafferr قام بنشر أبريل 17, 2016 قام بنشر أبريل 17, 2016 تفضل ، انا اقصد هذه الطريقة ونعم يمكن العمل بطريقتك ، وهي ستكون اسهل ، ولكن ، انت تعمل السجل ، وقد تكون بياناته ليست لجميع الموظفين ، لكنك تدفع ثمن هذا السجل بكثرة حقوله ، كما انه كلما زاد عندك المستخدمين ، اضطررت ان تغير الجدول وتضيف مستخدم جديد ، وهذا غير عملي ولا تحتاج الى نموذج لطباعة التقرير جعفر 370.Database21.accdb.zip 1
Hadi22 قام بنشر أبريل 18, 2016 الكاتب قام بنشر أبريل 18, 2016 19 hours ago, Hadi22 said: تم تعديل قاعدة البيانات ارجو او تطلع عليها اخي جعفر Database21.zip شكرا اخي جعفر ماذا اذا كان لدي بريد الكتروني لكل مستخدم وعند الضغط على حفظ يتم ارسال البيانات المدخلة الى المستخدمين الذين تم اختيارهم ؟؟
jjafferr قام بنشر أبريل 18, 2016 قام بنشر أبريل 18, 2016 السلام عليكم نعم ممكن ، ويمكنك ارسال الايميل بعدة طرق ، والرابط هذا فيه طريقتين: ولكن ، رجاء افتح موضوع جديد بهذا الخصوص جعفر
Hadi22 قام بنشر أبريل 19, 2016 الكاتب قام بنشر أبريل 19, 2016 On 4/17/2016 at 9:18 PM, jjafferr said: تفضل ، انا اقصد هذه الطريقة ونعم يمكن العمل بطريقتك ، وهي ستكون اسهل ، ولكن ، انت تعمل السجل ، وقد تكون بياناته ليست لجميع الموظفين ، لكنك تدفع ثمن هذا السجل بكثرة حقوله ، كما انه كلما زاد عندك المستخدمين ، اضطررت ان تغير الجدول وتضيف مستخدم جديد ، وهذا غير عملي ولا تحتاج الى نموذج لطباعة التقرير جعفر 370.Database21.accdb.zip IDاخي جعفر هل يمكن استبدال ال باسم المستخدم مباشرة ؟
jjafferr قام بنشر أبريل 19, 2016 قام بنشر أبريل 19, 2016 وعليكم السلام السبب اللي جعلني استخدم ID بدلا عن اسم المستخدم هو ، انه قد يكون عندك اكثر من مستخدم بنفس نوع الوظيفة ، فالطريقة الصحيحة هي استخدام ID المستخدم ولكن ، مادام البرنامج يشتغل معاك ، اعمل اللي يعجبك جعفر
Hadi22 قام بنشر أبريل 19, 2016 الكاتب قام بنشر أبريل 19, 2016 1 minute ago, jjafferr said: وعليكم السلام السبب اللي جعلني استخدم ID بدلا عن اسم المستخدم هو ، انه قد يكون عندك اكثر من مستخدم بنفس نوع الوظيفة ، فالطريقة الصحيحة هي استخدام ID المستخدم ولكن ، مادام البرنامج يشتغل معاك ، اعمل اللي يعجبك جعفر لانه تحدث مشكلة عند استخراج التقرير وهو ظهور الاي دي بدلا من اسم المستخدم
jjafferr قام بنشر أبريل 19, 2016 قام بنشر أبريل 19, 2016 التقرير مبني على استعلام ، ويمكنك اضافة/تغيير اي شئ في الاستعلام ، وبالتالي تستطيع إظهاره في التقرير جعفر
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.