Lotfy14 قام بنشر منذ 5 ساعات قام بنشر منذ 5 ساعات السلام عليكم ورحمه الله وبركات الساده الزملاء ( اعضاء اوفيسنا ) لو وضعنا فى الاعتبار ان عندى نموذج اختار منه كود او اسم الموظف بيظهر ليه جميع بيانات الموظفين الموجوده فى المرفق ( tbl_Employees ) ومنها استطيع اختيارات البيانات التى اريد ان تظهر لى فى التقرير والتقرير هذا عباره عن بيانات حاله موظف وللاسف ليست البيانات ثابته بمعنى ( كل فترة الموظف بيريد فى بيان الحاله الخاص به ) ان يوضع بيانات معينه من الملف الخاص به وليس كل البيانات ولهذا السبب اريد ان يكون عن طريق الاختيار ( مربع اختيار ) لسهولة اخرج التقرير المطلوب وهذا حتى لا يتم كل فترة الدخول فى وضع التصميم للبرنامج وتغير البيانات المطلوبة على حسب الموظف ما يريده مرفق صوره موضحه للمطلوب ومرفق ملف اكسس به بعض من بيانات الموظفين يارب اكون قدرت اشرح المطلوب بيان حاله.accdb
تمت الإجابة Foksh قام بنشر منذ 4 ساعات تمت الإجابة قام بنشر منذ 4 ساعات وعليكم السلام ورحمة الله وبركاته ,, بعد فهم الموضوع ، هذه محاولتي البسيطة ، حيث بعد انشاء النموذج والتقرير ، وإضافة عنصر CheckBox جنب كل حقل ترغب بلإظهاره أو لا ، ومن خلال الزر في النموذج اعتمدت على TempVars لحفظ قيمة كل CheckBox ثم فتح التقرير من خلال الكود التالي في الزر :- Private Sub btn_PreviewReport_Click() TempVars("SelectedEmpCode") = Me.Tx_Emp.Column(0) TempVars("Show_NationalID") = Me.chk_NationalID.Value TempVars("Show_Emp_BirthDate") = Me.chk_Emp_BirthDate.Value TempVars("Show_Emp_Phone") = Me.chk_Emp_Phone.Value TempVars("Show_Qualification") = Me.chk_Qualification.Value TempVars("Show_Graduation") = Me.chk_Graduation.Value TempVars("Show_Emp_Address") = Me.chk_Emp_Address.Value TempVars("Show_Appointment") = Me.chk_Appointment.Value TempVars("Show_InsuranceID") = Me.chk_InsuranceID.Value TempVars("Show_JobDesc") = Me.chk_JobDesc.Value TempVars("Show_Department") = Me.chk_Department.Value TempVars("Show_Salary") = Me.chk_Salary.Value TempVars("Show_InsuranceFee") = Me.chk_InsuranceFee.Value DoCmd.OpenReport "Rpt_EmployeeStatement", acViewPreview End Sub الآن وفي التقرير ، استخدمت الـ Tag لتحديد ارتفاع العناصر جميعها بحيث تم تحديده 400 ، ومن هنا تم الاعتماد على الدالة :- Private Sub AdjustFieldVisibility(ctrl As Control, showField As Boolean) If showField Then ctrl.Height = Val(ctrl.Tag) ctrl.Visible = True Else ctrl.Visible = False ctrl.Height = 0 End If End Sub بإخفاء وتصغير ارتفاع العناصر التي لا نرغب بها .. وفي مصدر سجلات التقرير ، استخدم الاستعلام التالي :- SELECT * FROM tbl_Employees WHERE (((tbl_Employees.[Emp_Code])=[TempVars]![SelectedEmpCode])); وفي الحدث عند التنسيق ، استخدمت الكود التالي لاستدعاء الدالة السابقة وتطبيق الاخفاء على العناصر التي لا نريدها . Private Sub Detail_Format(Cancel As Integer, FormatCount As Integer) AdjustFieldVisibility Me.NationalID, TempVars!Show_NationalID AdjustFieldVisibility Me.Emp_BirthDate, TempVars!Show_Emp_BirthDate AdjustFieldVisibility Me.Emp_Phone, TempVars!Show_Emp_Phone AdjustFieldVisibility Me.Qualification, TempVars!Show_Qualification AdjustFieldVisibility Me.Graduation, TempVars!Show_Graduation AdjustFieldVisibility Me.Emp_Address, TempVars!Show_Emp_Address AdjustFieldVisibility Me.Appointment, TempVars!Show_Appointment AdjustFieldVisibility Me.InsuranceID, TempVars!Show_InsuranceID AdjustFieldVisibility Me.JobDesc, TempVars!Show_JobDesc AdjustFieldVisibility Me.Department, TempVars!Show_Department AdjustFieldVisibility Me.Salary, TempVars!Show_Salary AdjustFieldVisibility Me.InsuranceFee, TempVars!Show_InsuranceFee End Sub طبعاً طرق كثيرة قد تحقق لك المطلوب ، ولكن هذه رؤيتي وفي النهاية ، الملف بعد التعديل :- بيان حاله.accdb
Lotfy14 قام بنشر منذ 3 ساعات الكاتب قام بنشر منذ 3 ساعات حبيبى اخى Foksh تسلم ايدك والله على الشرح قبل الحل بحب الناس اللى بتشرح الحل لان دا بيفيد اكتر ما الحل الف شكر على سرعه الاستجابه لطلبى والطريقة مستوفاه جدا جدا ومنها اقدر استفيد فى حاجات تانيه فى برنامجى وارجع واقولك دا بسب شرح الجميل بارك الله فيك 1
Foksh قام بنشر منذ 3 ساعات قام بنشر منذ 3 ساعات 5 دقائق مضت, Lotfy14 said: حبيبى اخى Foksh تسلم ايدك والله على الشرح قبل الحل بحب الناس اللى بتشرح الحل لان دا بيفيد اكتر ما الحل الف شكر على سرعه الاستجابه لطلبى والطريقة مستوفاه جدا جدا ومنها اقدر استفيد فى حاجات تانيه فى برنامجى وارجع واقولك دا بسب شرح الجميل بارك الله فيك العفو يا صديقي 🤗 يسعدني ويشرفني إن الفكرة عجبتك ، طبعاً زي ما وضحت سابقاً انه في كتير طرق لتنفيذ الموضوع ، ولكن قد وقع تفكيري على هذه الفكرة من مشروع سابق ولم اجد فيها اي مشكلة 🤗 1
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.