اذهب الي المحتوي
أوفيسنا

كود جلب أسماء كل التقارير فى القاعدة الحالية و فتحها


الردود الموصى بها

السلام عليكم و رحمة الله

هذا كود منقول من أحد الكتب

يجلب أسماء كل التقارير فى القاعدة

ويشغلها من كمبوبوكس

الكود

فى حدث عند التحميل للنموذج
Private Sub Form_Load()
Dim newvallist As String
newvallist = ""
Dim obj As AccessObject
For Each obj In CurrentProject.AllReports
newvallist = newvallist + Chr(34) + obj.Name + Chr(34) + ";"
Next obj
Me.objCombo.RowSource = "value list"
Me.objCombo.RowSource = newvallist
Me.objCombo.Value = Me.objCombo.ItemData(0)


End Sub
ثم فى حدث بعد التحديث للكمبوبوكس
لفتح التقارير حسب الاسم المختار
Private Sub objCombo_AfterUpdate()
DoCmd.OpenReport Me.objCombo, acViewPreview
End Sub

الملف المستخدم 2003   -  2007

كود أسماء كل تقارير القاعدة الحالية.rar

و هذا تعديل للكود بحيث يجلب أسماء التقارير مع مسمياتها التوضيحية 

كود أسماء كل 8التقارير.rar

تم تعديل بواسطه عبد الفتاح كيرة
إضافة الصورة النهائية للملف
  • Like 3
رابط هذا التعليق
شارك

السلام عليكم

استاذنا وحبيبنا  عبد الفتاح  شكرا   لك ان تضع الكل في اهتمامك

للاثراء : هذه طريقة اخرى باستخدام جدول النظام

وعندي تساؤل  ولكني سأطرحه لاحقا

 

كود أسماء كل التقارير2.rar

  • Like 3
رابط هذا التعليق
شارك

عليكم السلام أستاذنا و حبيبنا أبا خليل

حياك الله

ولا حرمنا الله إثراءاتك القيمة

جار  الاطلاع

يمكن بتغيير كلمة واحدة فى الكود

جلب النماذج

لا التقارير

 

59171e0a62a97_Screenshot_-----.png.2149603b0a82589b3ef3595a144d6cda.png

رابط هذا التعليق
شارك

5 ساعات مضت, ابوخليل said:

السلام عليكم

استاذنا وحبيبنا  عبد الفتاح  شكرا   لك ان تضع الكل في اهتمامك

للاثراء : هذه طريقة اخرى باستخدام جدول النظام

وعندي تساؤل  ولكني سأطرحه لاحقا

 

كود أسماء كل التقارير2.rar

اضم صصوتى لصوت استاذى الجليل ومعلمى القدير ووالدى الحبيب الاستاذ الفاضل @ابو خليل

وذلك لان من جدول النظام وعن طريق الاستعلام تستطيع التحكم فى التقارير التى تريد ان تظهر فى الكمبوبكوس :wink2:

فتسطيع بذلك ان تظهر ما تريد وتخفى ما تريد

تم تعديل بواسطه ابا جودى
رابط هذا التعليق
شارك

ابا جودي ليس هناك تصويت :smile:

انا طرحت المثال لاثراء الموضوع  ولحاجة في نفسي  وهو هذا الاستفسار :

كما في  المرفق في مشاركتي السابقة أسماء  التقارير مكتوبة بحروف انجليزية  ، وهذا الذي اتبعه في اعمالي

 ثم اني في نموذج التقارير  اكتب وصفا عربيا لما يحتويه التقرير  أي تسمية عربية تدل على المحتوى .

السؤال :

هل يمكن اظهار تسمية  عربية للتقرير  في مربع التحرير  بناء على التسمية التوضيحية المكتوبة في التقرير ؟

سواء  بطريقة استاذنا عبد الفتاح  او الطريقة الثانية او اي طريقة اخرى ؟

خطر في بالي ان استخدم  IIF  في الاستعلام ‘ ولكن في هذه الطريقة سنضطر الى كتابة التسميات داخل الكود

 

 

 

رابط هذا التعليق
شارك

2 دقائق مضت, ابوخليل said:

ابا جودي ليس هناك تصويت :smile:

انا طرحت طريقة اخرى للاثراء  ولحاجة في نفسي  وهو هذا الاستفسار :

كما في  المرفق في مشاركتي السابقة أسماء  التقارير مكتوبة بحروف انجليزية  ، وهذا الذي اتبعه في اعمالي

 ثم اني في نموذج التقارير  اكتب وصفا عربيا لما يحتويه التقرير  أي تسمية عربية تدل على المحتوى .

السؤال :

هل يمكن اظهار تسمية  عربية للتقرير  في مربع التحرير  بناء على التسمية التوضيحية المكتوبة في التقرير ؟

سواء  بطريقة استاذنا عبد الفتاح  او الطريقة الثانية او اي طريقة اخرى ؟

خطر في بالي ان استخدم  IIF  في الاستعلام ‘ ولكن في هذه الطريقة سنضطر الى كتابة التسميات داخل الكود

 

 

 

طيب ما نعمل جدول به اسم التقرير الذى نريد عرضه باسمه ووصفه

وفى الكمبوبكس يدون مصدره هذا الجدول :wink2:

وده مثال اثراء ايضا للمنتدى باستخراج كل اسماء الكائنات فى قاعدة البيانات حتى الجداول المرتبطة :wink2:

هذا التعديل على المثال الاصلى دون المساس باى شئ 
فقط اضفت الاستعلامات التى مصدرها جداول النظام 


استعلامات اسماء الكائنات.rar

اقتباس

خطر في بالي ان استخدم  IIF  في الاستعلام ‘ ولكن في هذه الطريقة سنضطر الى كتابة التسميات داخل الكود

طيب ممكن نعمل جدول ونعمل منه dlockup علشان ما نفتح التصميم ونقدر نغير الاسم من الجدول  :wink2:

وبكده التسميات مش راح تكون فى الكود

  • Like 1
رابط هذا التعليق
شارك

أعتقد أننا نضيف فى الكود حقلا ثانيا

و نحاول الوصول إلى خاصية التسمية التوضيحية للتقرير

و هى إحدى خواص التقرير كالاسم و الطول و العرض .....الخ

نملأ  بها الحقل الثانى

التشغيل يبقى تبعا للحقل الأول مع إخفاء و إظهار الثانى الذى به التسمية

و الله أعلم

 

 

رابط هذا التعليق
شارك

استاذ @ابو خليل

لو تكرمت ممكن مرفق حضرتك بالفكرة 
 

اقتباس

خطر في بالي ان استخدم  IIF  في الاستعلام ‘ ولكن في هذه الطريقة سنضطر الى كتابة التسميات داخل الكود

 

  • Like 1
رابط هذا التعليق
شارك

1 دقيقه مضت, عبد الفتاح كيرة said:

نسيت

يجب أن يكون للتقرير تسمية توضيحية فى نافذة الخصائص

انا كاتبها في مثالي : عبدالفتاح

ولكني لم استطع  الوصول اليه

14 دقائق مضت, ابا جودى said:

لو تكرمت ممكن مرفق حضرتك بالفكرة 

تفضل  تم التعديل

كود أسماء كل التقارير4.rar

  • Like 2
رابط هذا التعليق
شارك

51 دقائق مضت, ابوخليل said:

تفضل  تم التعديل

كود أسماء كل التقارير4.rar

اسف على التأخير كان معايا تلفون

اتفضل استاذى الجليل ومعلمى القدير ووالدى الحبيب 

 

- اولا تشغيل الاستعلام         "get_all_report"
- ثانيا فتح الجدول                      "myReports"
- ثالثا ضع الوصف المناسب لكل تقرير فى المكان المناسب
- رابعا حدد التقارير التى تريد ظهورها فقط فى مربع التحرير والسرد

- خامسا افتح النموذج وقم بالتجربة  :rol:

كود أسماء كل التقارير5.rar

انا حاولت التسهيل قدر الامكان على المستخدم بعمل استعلام حتى لا يدخل الاسماء للتقارير بنفسه وقد يخطئ :wink2:

طبعا استاذى الجليل ومعلمى القدير ووالدى الحبيب استاذى الفاضل @ابو خليل:fff::fff:
انتظر تحليل حضرتك للفكرة والالية 

تم تعديل بواسطه ابا جودى
رابط هذا التعليق
شارك

عملك يؤدي الغرض بامتياز

ولكن الفكرة التي نريد الوصول اليها تختلف

نحن لا نريد ان نستعين باستعلامات  ولا جداول

نريد توظيف مربع التحرير فقط

  • Like 1
رابط هذا التعليق
شارك

56 دقائق مضت, ابوخليل said:
منذ ساعه, ابا جودى said:

 

تفضل  تم التعديل

كود أسماء كل التقارير4.rar

هذا غير فعال مع قاعدة بها 50 تقريرا مثلا

يبدو أن التسمية التوضيحية غير عنوان التقرير

caption  = عنوان التقرير

و يمكن الوصول إليها من داخل التقرير

me.caption= "أبو خليل"

أما الوصف أو التسمية التوضيحية فلا

رابط هذا التعليق
شارك

14 دقائق مضت, ابا جودى said:

اسف على التأخير كان معايا تلفون

اتفضل استاذى الجليل ومعلمى القدير ووالدى الحبيب 

 

- اولا تشغيل الاستعلام         "get_all_report"
- ثانيا فتح الجدول                      "myReports"
- ثالثا ضع الوصف المناسب لكل تقرير فى المكان المناسب
- رابعا حدد التقارير التى تريد ظهورها فقط فى مربع التحرير والسرد

- خامسا افتح النموذج وقم بالتجربة  :rol:

كود أسماء كل التقارير5.rar

انا حاولت التسهيل قدر الامكان على المستخدم بعمل استعلام حتى لا يدخل الاسماء للتقارير بنفسه وقد يخطئ :wink2:

طبعا استاذى الجليل ومعلمى القدير ووالدى الحبيب استاذى الفاضل @ابو خليل:fff::fff:
انتظر تحليل حضرتك للفكرة والالية 

 

تنقيح وتعديل بسيط وافضل
1- حفظا لعدم التغيير او حذف اسماء التقارير 
2- تقليل الخطوات وتسهيلها اكثر على المستخدم

تم اختزال كل الخطوات السابقة فى المرفق السابق فيتم التعامل مباشرة وفورا من النموذج        "frm_myReports"
من خلال النموذج يتم
- وضع الوصف المناسب لكل تقرير فى المكان المناسب دون السماع باضافة سجلات بالخطأ او تغيير اسم التقرير 
- تحديد التقارير التى تريد ظهورها فقط فى مربع التحرير والسرد 

كود أسماء كل التقارير6.rar

رابط هذا التعليق
شارك

يبدو أننا سنغير الاتجاه فى التفكير

تصدير قائمة أسماء التقارير التى حصلنا عليها إلى جدول

ثم ملء الكمبوبوكس بها

يعنى الجدول وسيط بين الكود و الكمبوبوكس

 

رابط هذا التعليق
شارك

2 دقائق مضت, عبد الفتاح كيرة said:

يبدو أن التسمية التوضيحية غير عنوان التقرير

caption  = عنوان التقرير

و يمكن الوصول إليها من داخل التقرير

me.caption= "أبو خليل"

أما الوصف أو التسمية التوضيحية فلا

المشكلة اننا لن نتمكن من الوصول الى خصائص التقرير الا بعد فتحه

 

  • Like 1
رابط هذا التعليق
شارك

11 دقائق مضت, ابوخليل said:

عملك يؤدي الغرض بامتياز

ولكن الفكرة التي نريد الوصول اليها تختلف

نحن لا نريد ان نستعين باستعلامات  ولا جداول

نريد توظيف مربع التحرير فقط

استاذى الجليل ومعلملى القدير ووالدى الحبيب الاستاذ الفاضل @ابوخليل
ولكن فى مرفق حضراتكم كل ما يتم اضافة تقرير يجب فتح الكود للتعديل بالاسم والوصف العملية مرهقة جدا جدا وبخاصة ان كانت التقارير كثيرة

 

11 دقائق مضت, عبد الفتاح كيرة said:

هذا غير فعال مع قاعدة بها 50 تقريرا مثلا

يبدو أن التسمية التوضيحية غير عنوان التقرير

caption  = عنوان التقرير

و يمكن الوصول إليها من داخل التقرير

me.caption= "أبو خليل"

أما الوصف أو التسمية التوضيحية فلا

هذا غير فعال مع قاعدة بها 50 تقريرا مثلا

استاذ @عبد الفتاح كيرة

انا مع حضرتك لكن سيتم تسجيل الوصف مره واحده ثم لا تنسى هناك مرونه فى تحديد التقارير التى تريد ظهورها 
وفى الاخر هذه فكرتى المتواضعه احبذ دائما المرونه فى استخدام وتعديل قاعدة البيانات دون الرجوع الى التصميم 

طبعا من انا لاتناقش واتحاور مع اساتذتى الكرام فلا يفتى ومالك فى المدينة ولا ولن تعلو العين ابدا
لكم كل الشكر والتقدير والاجلال والاحترام ولكن احاوركم لاتعلم وانهل من بحور علومكم بارك الله لكم وفتح عليكم وغفر لكم ولوالديكم

اطيب الامنيات :fff::fff:

تم تعديل بواسطه ابا جودى
رابط هذا التعليق
شارك

1 دقيقه مضت, عبد الفتاح كيرة said:

يبدو أننا سنغير الاتجاه فى التفكير

تصدير قائمة أسماء التقارير التى حصلنا عليها إلى جدول

ثم ملء الكمبوبوكس بها

يعنى الجدول وسيط بين الكود و الكمبوبوكس

 

ما دام سيتغير الاتجاه  وتقرر الاستعانة بوسائط فأنا أرجح رأي  آخر

فاذا اردنا توظيف مربع التحرير  

فعلينا ان نكتب التقارير بحروف عربية ..  واعتمد احدى الطريقتين الأوليين  ,,  واريح راسي

  • Like 1
رابط هذا التعليق
شارك

3 دقائق مضت, ابوخليل said:

ما دام سيتغير الاتجاه  وتقرر الاستعانة بوسائط فأنا أرجح رأي  آخر

فاذا اردنا توظيف مربع التحرير  

فعلينا ان نكتب التقارير بحروف عربية ..  واعتمد احدى الطريقتين الأوليين  ,,  واريح راسي

فعلا الحل الوحيد لو لم نريد استخدام اى وسيط هو تسمية التقارير باسماء عربيه

  • Like 1
رابط هذا التعليق
شارك

أبشر بما يسرك أبا خليل

هذه وظيفة مخصصة لجلب التسمية التوضيحية للتقارير

Public Function GetReportCaption(RptName As String) As String
Static RptCaptions As Collection

    If RptCaptions Is Nothing Then Set RptCaptions = New Collection
    On Error Resume Next
    GetReportCaption = RptCaptions(RptName)
    If Err.Number = 0 Then Exit Function
    On Error GoTo 0

    DoCmd.OpenReport RptName, acViewDesign, , , acHidden
    RptCaptions.Add Reports(RptName).Caption, RptName
    DoCmd.Close acReport, RptName

    GetReportCaption = RptCaptions(RptName)
End Function
 

وهذا استدعاؤها من نفس كود الكمبوبوكس

Private Sub Form_Load()
Dim newvallist As String, myrpt As String
newvallist = ""
Dim obj As AccessObject

For Each obj In CurrentProject.AllReports
myrpt = GetReportCaption(obj.Name)
newvallist = newvallist + Chr(34) + myrpt + Chr(34) + ";"
Next obj
Me.objCombo.RowSource = "value list"
Me.objCombo.RowSource = newvallist
Me.objCombo.Value = Me.objCombo.ItemData(1)
End Sub
 

طبعا أنا مؤقتا وضعت التسمية التوضيحية مكان اسم التقرير

المطلوب الآن

هو 

وضع اسم التقرير فى العمود الأول للكمبوبوكس

ووضع التسمية فى العمود الثانى له

يعنى خطوة واحدة إضافية و نعلن الانتصار بعون الله

المرفق

كود أسماء كل 7التقارير.rar

 

  • Like 2
رابط هذا التعليق
شارك

11 دقائق مضت, عبد الفتاح كيرة said:

أبشر بما يسرك أبا خليل

هذه وظيفة مخصصة لجلب التسمية التوضيحية للتقارير

Public Function GetReportCaption(RptName As String) As String
Static RptCaptions As Collection

    If RptCaptions Is Nothing Then Set RptCaptions = New Collection
    On Error Resume Next
    GetReportCaption = RptCaptions(RptName)
    If Err.Number = 0 Then Exit Function
    On Error GoTo 0

    DoCmd.OpenReport RptName, acViewDesign, , , acHidden
    RptCaptions.Add Reports(RptName).Caption, RptName
    DoCmd.Close acReport, RptName

    GetReportCaption = RptCaptions(RptName)
End Function
 

وهذا استدعاؤها من نفس كود الكمبوبوكس

Private Sub Form_Load()
Dim newvallist As String, myrpt As String
newvallist = ""
Dim obj As AccessObject

For Each obj In CurrentProject.AllReports
myrpt = GetReportCaption(obj.Name)
newvallist = newvallist + Chr(34) + myrpt + Chr(34) + ";"
Next obj
Me.objCombo.RowSource = "value list"
Me.objCombo.RowSource = newvallist
Me.objCombo.Value = Me.objCombo.ItemData(1)
End Sub
 

طبعا أنا مؤقتا وضعت التسمية التوضيحية مكان اسم التقرير

المطلوب الآن

هو 

وضع اسم التقرير فى العمود الأول للكمبوبوكس

ووضع التسمية فى العمود الثانى له

يعنى خطوة واحدة إضافية و نعلن الانتصار بعون الله

المرفق

كود أسماء كل 7التقارير.rar

 

هل يمكن استدعاء GetReportCaption  فى استعلام ؟؟؟؟؟؟؟؟؟

  • Like 1
رابط هذا التعليق
شارك

5 دقائق مضت, ابا جودى said:

هل يمكن استدعاء GetReportCaption  فى استعلام ؟؟؟؟؟؟؟؟؟

طبعا هى وظيفة يمكن استدعاؤها فى الاستعلام

 

  • Like 1
رابط هذا التعليق
شارك

الان, عبد الفتاح كيرة said:

طبعا هى وظيفة يمكن استدعاؤها فى الاستعلام

 

طيب ممكن مرفق بعد استدعاء تلك الوظيفة فى الاستعلام

رابط هذا التعليق
شارك

أبشروا بما يسركم جميعا

بفضل الله

تمكنا من حشو الكمبوبوكس بقائمة من عمودين

الثانى اسم التقرير

والأول التسمية التوضيحية للتقرير الموجودة بنافذة الخصائص

والتشغيل

بارك الله فيكم

إنجاز رائع بفضل الله ثم بفضل اقتراحات أبى خليل

تفضل

جلب أسماء التقارير و أسمائها التوضيحية العربية و تشغيلها من كمبوبوكس

كود أسماء كل 8التقارير.rar

 

  • Like 3
رابط هذا التعليق
شارك

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • اضف...

Important Information