اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

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

قام بنشر (معدل)

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

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

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

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

الكود

فى حدث عند التحميل للنموذج
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
قام بنشر (معدل)
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
قام بنشر
الان, عبد الفتاح كيرة 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