moho58 قام بنشر الخميس at 00:24 قام بنشر الخميس at 00:24 السلام عليكم الإخوة الأفاضل في هذا المنتدى الجميل لدي جدول فيه بيانات طلاب كمايلي: السنة الوظيفة الإسم الأول الإسم الثاني عندي جدول آخر يمثل رموز وظائف الطلاب : مثال: الوظيفة : أستاذ: رمزها: A رقمها: 50 ---- الوظيفة : مساعد معلم رمزها B : رقمها: 60 في هذا الموضوع اريد إنشاء رمز (كود ) للطلاب كمايلي: من النمودج frm_stag : مثال: من النمودج أختار السنة 2024 والوظيفة : أستاذ تظهر قائمة الطلاب واعرض التقرير : في التقرير أريد إضافة رمز الطلاب : رمز الطلاب يكون كمايلي: الوظيفة المختارة هي أستاذ: رقم الوظيفة هو : 50 رمز الوظيفة هو : A حسب الجدول فيكون رمز الطلاب كمايلي: الطالب الأول A50 الطالب الثاني A51 الطالب الثاني A52 إلى غاية انتهاء الطلاب الموجودين في الجدول بالنسبة للسنة: 2024 والوظيفة : استاذ وحسب ترتيب ID للطالب إذن رمز الطلاب يتكون من : رمز الوظيفة + رقم الوظيفة (موجودين في جدول code_grade وبعد يكون إضافة رقم 1 (+1) إلى غاية نهاية الطلاب . نفس الشئ لباقي السنوات والوظائف . نتمنى أنه يمكن تنفيذ الفكرة بشرط الابقاء على حقل ID ترقيم تلقائي ومفتاح اساسي في جدول info_stagieire الرجاء المساعدة والتوجيه وبارك الله فيكم baseA.accdb
Foksh قام بنشر الخميس at 01:39 قام بنشر الخميس at 01:39 وعليكم السلام ورحمة الله وبركاته .. تفضل يا صديقي ، تم تعديل الاستعلام في مصدر سجلات التقرير ليصبح :- SELECT info_stagiere.ID, info_stagiere.nom, info_stagiere.prenom, info_stagiere.annee, info_stagiere.grade, [code_grade].[code] & ([code_grade].[numero]+(SELECT COUNT(*) FROM info_stagiere AS T WHERE T.annee = info_stagiere.annee AND T.grade = info_stagiere.grade AND T.ID < info_stagiere.ID)) AS code_stagiere FROM info_stagiere INNER JOIN code_grade ON info_stagiere.grade = code_grade.grade WHERE (((info_stagiere.annee)=[Forms]![frm_stag]![ANNEE1]) AND ((info_stagiere.grade)=[Forms]![frm_stag]![GRADE1])); هل هذا طلبك ؟ baseA.accdb 2
تمت الإجابة ابوخليل قام بنشر الخميس at 02:38 تمت الإجابة قام بنشر الخميس at 02:38 معالجة جميلة استاذ فادي وهذه محاولة مني لإدراج الترقيم في الجدول Dim rs As Recordset Dim i As String Dim ii As Integer Dim x As Integer Set rs = CurrentDb.OpenRecordset("Query1") rs.MoveLast rs.MoveFirst i = Me.GRADE1.Column(1) ii = Me.GRADE1.Column(2) Do While Not rs.EOF rs.Edit rs!code_stagiere = i & (ii + x) rs.Update x = x + 1 rs.MoveNext Loop baseAA.rar 2
moho58 قام بنشر الخميس at 16:11 الكاتب قام بنشر الخميس at 16:11 14 ساعات مضت, Foksh said: وعليكم السلام ورحمة الله وبركاته .. تفضل يا صديقي ، تم تعديل الاستعلام في مصدر سجلات التقرير ليصبح :- SELECT info_stagiere.ID, info_stagiere.nom, info_stagiere.prenom, info_stagiere.annee, info_stagiere.grade, [code_grade].[code] & ([code_grade].[numero]+(SELECT COUNT(*) FROM info_stagiere AS T WHERE T.annee = info_stagiere.annee AND T.grade = info_stagiere.grade AND T.ID < info_stagiere.ID)) AS code_stagiere FROM info_stagiere INNER JOIN code_grade ON info_stagiere.grade = code_grade.grade WHERE (((info_stagiere.annee)=[Forms]![frm_stag]![ANNEE1]) AND ((info_stagiere.grade)=[Forms]![frm_stag]![GRADE1])); هل هذا طلبك ؟ baseA.accdb 576 kB · 5 downloads معذرة على التأخر في الرد بعد التجرب أخي الكريم الكود رائع جدا أخي الفاضل و شغال - لكن لا يقوم بتخزين قيمة code_stagiere المنشأة في جدول info_stagiere وبارك الله فيك أخي و جزاك الله كل الخير ورفعك في العلم درجات
moho58 قام بنشر الخميس at 16:30 الكاتب قام بنشر الخميس at 16:30 13 ساعات مضت, ابوخليل said: معالجة جميلة استاذ فادي وهذه محاولة مني لإدراج الترقيم في الجدول Dim rs As Recordset Dim i As String Dim ii As Integer Dim x As Integer Set rs = CurrentDb.OpenRecordset("Query1") rs.MoveLast rs.MoveFirst i = Me.GRADE1.Column(1) ii = Me.GRADE1.Column(2) Do While Not rs.EOF rs.Edit rs!code_stagiere = i & (ii + x) rs.Update x = x + 1 rs.MoveNext Loop baseAA.rar 38.08 kB · 11 downloads أعتذر عن التأخر في الرد استاذنا الفاضل بعد التجربة أستاذنا الفاضل: حقيقة الكود شغال بامتياز وبدون مشاكل - رائع جدا جدا-هذا هو المطلوب بالضبط رحم الله والديك وجزاك الله كل الخير في الدنيا والآخرة وجعله الله في ميزان حساناتك - ورفعك الله في العلم درجات - و وفقك وأعانك الله على فعل الخير
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.