الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

سؤال عن زيادة وانقاص ارتفاع الصفوف في تقرير

مغلق
بدأه mt في 4 ديسمبر 2001 · 5 رد · 613 مشاهدة · في مراجعة المواضيع
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

التقرير يحتوي على اسماء ولكن المشكلة احياناً يكون التقرير على صفحتين والصفحة الثانية تحتوي على اسم شخص واحد فقط .

قمت بعمل شريط للتقرير يحتوي على امرين .

المطلوب : الاول يقوم بزيادة ارتفاع السجلات بالتقرير والثاني انقاصها مع تناسب حجم الخط مع ارتفاع السجلات او انقاصها.ولاننسى تحديث التقرير بعد كل خطوه.

#2

الأخ mt

أولاً : لم توضح ماهي المقاطع الموجودة على التقرير لنتصور شكل التقرير الموجود لديك ؟

ثانياً : ما المشكلة إذا ظهر سجل واحد في الصفحة التالية إذا كان فوقه التسميات الخاصة بالحقول الموجودة في مقطع تفصيل ؟

ثالثاً : طريقتك هذه وهي توسيع وتضييق مقطع التفصيل أظنها فيها تشويه لشكل البيانات في الصفحة ، وأيضا لابد أن تفتح التقرير في عرض المعاينة لتوسيع أو تضييق مقطع التفصيل .

عموما أعلن عن الدالتين العامتين وضع كل واحدة في زر على شريط الأدوات الذي عملته :

Public Function زيادة_الارتفاع()
DoCmd.OpenReport Screen.ActiveReport.Name, acViewDesign
Screen.ActiveReport.Section(0).Height = _
Screen.ActiveReport.Section(0).Height + 50
DoCmd.OpenReport Screen.ActiveReport.Name, acViewPreview
End Function

والثانية :

Public Function زيادة_الارتفاع()
DoCmd.OpenReport Screen.ActiveReport.Name, acViewDesign
Screen.ActiveReport.Section(0).Height = _
Screen.ActiveReport.Section(0).Height - 50
DoCmd.OpenReport Screen.ActiveReport.Name, acViewPreview
End Function

بعد إجاباتك على سؤالي السابق سأبحث عن طريقة أفضل من هذه الطريقة .

ولك تحياتي

#3

اولاً:المقاطع : رأس ,تفصيل،تذييل (الراس والتذييل ثابته).

ثانياً: لاتوجد مشكله ولكن اذا كان ممكن افضل وخاصة انني احتاجها لتسجيل بيانات يدوياً بعد طباعة التقرير مقابل كل اسم .وانا استخدم الان دمج المراسلات في الوورد واقوم بتصغير ارتفاع الصفوف اذا تطلب الامر ذلك لكن لو تكون عن طريق الاكسس اسرع .

ثالثاً : ماكنت اتوقع انها صعبة .وليس شرطاً عن طريق التقرير اذا فيه طريقه افضل. ولك تحياتي

#4

في الكود الذي ذكرته إن شاء الله ما يحقق لك طلبك .

ولك تحياتي

#5

اذا فيه غيره افضل مع العلم ان القاعدة سوف تتحول الى mde

شوف اللي صار معي بالكود بعد التغييرات : http://mypage.ayna.com/mutlq/db1.mdb

وفيه حل اخير وهو ان اقوم بعمل اكثر من تقرير وبناء على عدد السجلات يتم تحديد تقرير معين.مع انه لايفي بالطلوب بالشكل المراد. ولك مني التحيه والدعاء بهذا الشهر الفضيل.

#6

الأخ mt

الكود الموجود كود جميل ومما يميزه تكبيره للمقطع مع الخط بارك الله فيك .

بالنسبة لشريط الأدوات في خصائص التقرير صفحة التبويب غير ذلك في خاصية شريط الأدوات اختر repq_st أفضل من طريقة إظهاره بالكود .

أما عند تحويل الملف لـ MDE فلن تنفع طريقتي ولا طريقتك وقد وجدت طريقة وهي :

Me.Section(0).Height = InputBox("أدخل القيمة:")

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

الطريقة الأخيرة التي ذكرتها غير عمليه من ناحية وجود أكثر من نسخة للتقرير .

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

أعلن عن متغير على مستوى الوحدة النمطية للتقرير :

Dim عدد_السجلات

وفي حدث عند التنسيق لمقطع تفصيل ضع الكود التالي :

عدد_السجلات = عدد_السجلات + FormatCount
If عدد_السجلات = 15 Then
Me.Section(0).ForceNewPage = 1
عدد_السجلات = 0
Else
Me.Section(0).ForceNewPage = 0
End If

مع تغيير الرقم 15 بالرقم الذي يناسبك .

ولك تحياتي

هذا الموضوع مغلق.

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…