زياد الحسناوي قام بنشر ديسمبر 18, 2018 قام بنشر ديسمبر 18, 2018 السلام عليكم عندي فكرة عمل تقرير حسب رغبة المستخدم فعند الضغط ع زر طباعة تقرير تظهر اسماء جميع الحقول الموجودة ضمن قاعدة البيانات في جميع الجداول و بجوار كل اسم حقل مربع اختيار و يختار ما يرغب به في التقرير فهل يمكن عمل مثل هكذا فكرة
أ / محمد صالح قام بنشر ديسمبر 18, 2018 قام بنشر ديسمبر 18, 2018 كل شيء ممكن ولكن ابدأ في تصميم الملف وحاول أنت أولا وإذا وقفت معك خطوة ستجد الجميع يساعدك لكن عرض الفكرة وغيرك ينفذ ربما لا تجدها 1
زياد الحسناوي قام بنشر ديسمبر 18, 2018 الكاتب قام بنشر ديسمبر 18, 2018 14 دقائق مضت, أ / محمد صالح said: كل شيء ممكن ولكن ابدأ في تصميم الملف وحاول أنت أولا وإذا وقفت معك خطوة ستجد الجميع يساعدك لكن عرض الفكرة وغيرك ينفذ ربما لا تجدها البرنامج كامل وما فيه نقص بس جتني فكرة التقرير بهالطريقة وحبيت اعرف تنجح ام لا اذا تنجح فشرح للطريقة او ملف يبين طريقة العمل
أ / محمد صالح قام بنشر ديسمبر 19, 2018 قام بنشر ديسمبر 19, 2018 كل شيء ممكن وينجح مع الإصرار ولكن أكره الكلام النظري فائدته قليلة جدا وحسب فهمي للمطلوب يمكن تصميم النموذج كما تشاء مع مراعاة أن جميع أسماء الحقول في قاعدة البيانات كلها غير ممكنة نظريا وعند اختيار الأعمدة يتم تجميع نص الاستعلام بلغة sql وبناء تقرير جديد بناء على الاستعلام بهذه الدالة المعرفة Function CreateDynamicReport(strSQL As String) Dim db As DAO.database ' database object Dim rs As DAO.Recordset ' recordset object Dim fld As DAO.Field ' recordset field Dim txtNew As Access.TextBox ' textbox control Dim lblNew As Access.Label ' label control Dim rpt As Report ' hold report object Dim lngTop As Long ' holds top value of control position Dim lngLeft As Long ' holds left value of controls position Dim title As String 'holds title of report 'set the title title = "Title for the Report" ' initialise position variables lngLeft = 0 lngTop = 0 'Create the report Set rpt = CreateReport ' set properties of the Report With rpt .Width = 8500 .RecordSource = strSQL .Caption = title End With ' Open SQL query as a recordset Set db = CurrentDb Set rs = db.OpenRecordset(strSQL) ' Create Label Title Set lblNew = CreateReportControl(rpt.Name, acLabel, _ acPageHeader, , "Title", 0, 0) lblNew.FontBold = True lblNew.FontSize = 12 lblNew.SizeToFit ' Create corresponding label and text box controls for each field. For Each fld In rs.Fields ' Create new text box control and size to fit data. Set txtNew = CreateReportControl(rpt.Name, acTextBox, _ acDetail, , fld.Name, lngLeft + 1500, lngTop) txtNew.SizeToFit ' Create new label control and size to fit data. Set lblNew = CreateReportControl(rpt.Name, acLabel, acDetail, _ txtNew.Name, fld.Name, lngLeft, lngTop, 1400, txtNew.Height) lblNew.SizeToFit ' Increment top value for next control lngTop = lngTop + txtNew.Height + 25 Next ' Create datestamp in Footer Set lblNew = CreateReportControl(rpt.Name, acLabel, _ acPageFooter, , Now(), 0, 0) ' Create page numbering on footer Set txtNew = CreateReportControl(rpt.Name, acTextBox, _ acPageFooter, , "='Page ' & [Page] & ' of ' & [Pages]", rpt.Width - 1000, 0) txtNew.SizeToFit ' Open new report. DoCmd.OpenReport rpt.Name, acViewPreview 'reset all objects rs.Close Set rs = Nothing Set rpt = Nothing Set db = Nothing End Function بالتوفيق 2
REDA.M.A قام بنشر ديسمبر 19, 2018 قام بنشر ديسمبر 19, 2018 السلام عليكم مرفق مثال تقريبا مشابه للطلب _ منقول يمكن تكون فى فكره حسب الطلب اختيار من الجدول.rar
زياد الحسناوي قام بنشر ديسمبر 19, 2018 الكاتب قام بنشر ديسمبر 19, 2018 (معدل) 4 ساعات مضت, أ / محمد صالح said: كل شيء ممكن وينجح مع الإصرار ولكن أكره الكلام النظري فائدته قليلة جدا وحسب فهمي للمطلوب يمكن تصميم النموذج كما تشاء مع مراعاة أن جميع أسماء الحقول في قاعدة البيانات كلها غير ممكنة نظريا وعند اختيار الأعمدة يتم تجميع نص الاستعلام بلغة sql وبناء تقرير جديد بناء على الاستعلام بهذه الدالة المعرفة Function CreateDynamicReport(strSQL As String) Dim db As DAO.database ' database object Dim rs As DAO.Recordset ' recordset object Dim fld As DAO.Field ' recordset field Dim txtNew As Access.TextBox ' textbox control Dim lblNew As Access.Label ' label control Dim rpt As Report ' hold report object Dim lngTop As Long ' holds top value of control position Dim lngLeft As Long ' holds left value of controls position Dim title As String 'holds title of report 'set the title title = "Title for the Report" ' initialise position variables lngLeft = 0 lngTop = 0 'Create the report Set rpt = CreateReport ' set properties of the Report With rpt .Width = 8500 .RecordSource = strSQL .Caption = title End With ' Open SQL query as a recordset Set db = CurrentDb Set rs = db.OpenRecordset(strSQL) ' Create Label Title Set lblNew = CreateReportControl(rpt.Name, acLabel, _ acPageHeader, , "Title", 0, 0) lblNew.FontBold = True lblNew.FontSize = 12 lblNew.SizeToFit ' Create corresponding label and text box controls for each field. For Each fld In rs.Fields ' Create new text box control and size to fit data. Set txtNew = CreateReportControl(rpt.Name, acTextBox, _ acDetail, , fld.Name, lngLeft + 1500, lngTop) txtNew.SizeToFit ' Create new label control and size to fit data. Set lblNew = CreateReportControl(rpt.Name, acLabel, acDetail, _ txtNew.Name, fld.Name, lngLeft, lngTop, 1400, txtNew.Height) lblNew.SizeToFit ' Increment top value for next control lngTop = lngTop + txtNew.Height + 25 Next ' Create datestamp in Footer Set lblNew = CreateReportControl(rpt.Name, acLabel, _ acPageFooter, , Now(), 0, 0) ' Create page numbering on footer Set txtNew = CreateReportControl(rpt.Name, acTextBox, _ acPageFooter, , "='Page ' & [Page] & ' of ' & [Pages]", rpt.Width - 1000, 0) txtNew.SizeToFit ' Open new report. DoCmd.OpenReport rpt.Name, acViewPreview 'reset all objects rs.Close Set rs = Nothing Set rpt = Nothing Set db = Nothing End Function بالتوفيق ممنون جدا استاذ @أ / محمد صالحع الشرح جربته ولم ينغع هذا ملف تجريبي يرجى التعديل عليه 2 ساعات مضت, رضا محمد علي said: السلام عليكم مرفق مثال تقريبا مشابه للطلب _ منقول يمكن تكون فى فكره حسب الطلب اختيار من الجدول.rar مشكور استاذ ولكن هذا الملف يختار الحقول من جدول واحد وانا بحاجة للاختيار من اكثر من جدول 000 - Copy.rar تم تعديل ديسمبر 19, 2018 بواسطه zYo
محمد عبد الشفيع قام بنشر ديسمبر 19, 2018 قام بنشر ديسمبر 19, 2018 21 ساعات مضت, zYo said: السلام عليكم عندي فكرة عمل تقرير حسب رغبة المستخدم فعند الضغط ع زر طباعة تقرير تظهر اسماء جميع الحقول الموجودة ضمن قاعدة البيانات في جميع الجداول و بجوار كل اسم حقل مربع اختيار و يختار ما يرغب به في التقرير فهل يمكن عمل مثل هكذا فكرة عزيزى ارح بالك هذا الموضع العظيم فيه ماتريد واكثر للاستاذ والخبير القدير @jjafferr بالتوفيق باذن الله
زياد الحسناوي قام بنشر ديسمبر 19, 2018 الكاتب قام بنشر ديسمبر 19, 2018 منذ ساعه, محمد عبد الشفيع said: عزيزى ارح بالك هذا الموضع العظيم فيه ماتريد واكثر للاستاذ والخبير القدير @jjafferr بالتوفيق باذن الله تمام و رائع ولكن يجب الاختيار من جدول واحد وليس عدة جداول
محمد عبد الشفيع قام بنشر ديسمبر 19, 2018 قام بنشر ديسمبر 19, 2018 57 دقائق مضت, zYo said: تمام و رائع ولكن يجب الاختيار من جدول واحد وليس عدة جداول اذن عليك محاولة التعديل لجعله ياخذ من اكتر من جدول وستكون رائعة بالتاكيد 1
زياد الحسناوي قام بنشر ديسمبر 19, 2018 الكاتب قام بنشر ديسمبر 19, 2018 8 دقائق مضت, محمد عبد الشفيع said: اذن عليك محاولة التعديل لجعله ياخذ من اكتر من جدول وستكون رائعة بالتاكيد اكيد طبعا ان شاءالله احاول بعد ان اتواصل مع استاذ @jjafferr
ابوآمنة قام بنشر ديسمبر 19, 2018 قام بنشر ديسمبر 19, 2018 منذ ساعه, zYo said: تمام و رائع ولكن يجب الاختيار من جدول واحد وليس عدة جداول حاول عمل استعلام يضم الحقول التي تريد من الجداول . 1
زياد الحسناوي قام بنشر ديسمبر 19, 2018 الكاتب قام بنشر ديسمبر 19, 2018 3 دقائق مضت, saleh204 said: حاول عمل استعلام يضم الحقول التي تريد من الجداول . @saleh204 جربت ولم تنجح هل يمكنك التعديل ع الملف وارساله
Hamdi Edlbi-khalf قام بنشر ديسمبر 30, 2018 قام بنشر ديسمبر 30, 2018 (معدل) السلام عليكم .. أرغب بأن أضيف تجربتي المتواضعة عسى أن يكون بها طلبك . الفكرة بالخطوات المختصرة : 1- عمل تقرير يتضمن جميع الحقول التي نرغب بعرضها. 2- جعل خاصة يقبل النمو لمربعات النص ( و يمكن اللجوء إلى بعض الأكواد التي تسمح بنمو مربعات النص في التقارير طولاً و عرضاً مع أني لم أجربها و ليست لدي كوني لم أحتجها). 3- اجعل مصدر التقرير استعلاماً مصمماً من جميع الجداول التي لديك. 4-أخيراً اعتمد التنسيق الشرطي ففي حال خلو مربع النص من أية بيانات تختفي الليبل ( تكون بلون خلفية التقرير). 5-في حال كنت ترغب بتسجيل كامل البيانات في جميع الجداول و لكن عرض ما ترغب به منها، يمكن أن تلجأ إلى التنسيق الشرطي أيضاً( كعمل مربع نص عند وجود قيمة معينة فيه تختفي الليبل) لم أجرب استخدام تطبيق الفكرة بخاصية VISIBLE و إنما استخدمت التنسيق الشرطي فقط . يمكن ملائمة الفكرة حسب الحاجة. و سأكون بالخدمة عند وجود أي استفسار. و أضيف إلم ترق لك هذه الطريقه فهي ليست احترافية كونها من غير محترف - لا يمتهن هذا الاختصاص- حديث العهد إلى حد ما في هذا المجال إلا أنها قد لبت احتياجاتي سابقاً و أحببت أن أشارككم بها. تم تعديل ديسمبر 30, 2018 بواسطه Khalf
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.