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

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

قام بنشر

السلام عليكم

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

حيث انه لدي كائن

Box

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

انا وضعت الكود التالي

Me.Box29.Height = Me.Section(0).Height
 

ولكن اذا زاد ارتفاع التقرير لا يزيد ارتفاع الكائن

المثال في المرفقات

وشكرا لكم

 

db1.rar

قام بنشر

لا تظهر المشكلة فعرض المربع يزداد مع عرض التفصيل

قام بنشر

عزيزي

جرب استبدال امستطيل بمربع نص ثم ماوس ايمن واختيار ارسال للخلف من قائمة الموضع 

بالتوفيق

قام بنشر

السلام عليكم

اخوي اعتقد ان المطلوب غير واضح تماما  لغالب الاعضاء

فلو  ارفقت صورة معدلة  او رسم لما ينبغي  ان يظهر  المربع داخل التقرير  بصورة صحيحة حسب رغبتك

لعلك تحصل على تفاعل اكثر من اخوتك

قام بنشر

اذا كان

مربع النص المظلل و مربع النص القابل للتمدد

كلاهما يتمدد ارتفاعاً

فهذا معناه أنه بعد الحدث

Me.Box29.Height 

يأتي حدث آخر ويتخطاه وهو

me.info2 (can Grow=yes)

 

قام بنشر

اخي جمال المشكلة ان المربع المظلل لا يتمدد اكثر من ارتفاع تفصيل التقرير المحدد في التصميم 

وعندما بتمدد مربع النص info لا يتمدد معه للاسفل 

 

قام بنشر
4 minutes ago, metwali said:

اخي جمال المشكلة ان المربع المظلل لا يتمدد اكثر من ارتفاع تفصيل التقرير المحدد في التصميم 

وعندما بتمدد مربع النص info لا يتمدد معه للاسفل

ربما يكون هناك حل جاهز ومتعارف عليه لهذا الأمر

وسوف ننتظر ربما يحلها أحد الأخوة

واذا لم يكن

فيمكننا أن  نحاول تمديد المربع المظلل اعتمادا على الارتفاع المتوقع للمربع

info

لكن لا أعدك بنجاح التجربة تماما

 

قام بنشر

الف شكر لك اخي الكريم جمال 
لا يمكن توقع ارتفاع النص 

info

لانه يعتمد على ادخال المستخدم

 

 

ننتظر لعل الله يكرمنا بمساعدة من الاخوة الكرام

شكرا لك

قام بنشر

السلام عليكم

من الصباح وانا احاول تطويع المربع  وخرجت بهذه النتيجة

اتمنى  تستطيع توظيفها في برنامجك

Dim i As Integer
Private Sub Detail_Format(Cancel As Integer, FormatCount As Integer)
 i = Me.lbl1.Height + Me.Detail.Height + Me.txt1.Height
  Me.txt1.Height = i
 Me.lbl1.Height = i
End Sub

 

fieldGrow.rar

قام بنشر

الف شكر لك استاذي الكبير ابو خليل 

وجعل تعبك في ميزان حسناتك 

 

نلاحظ ان ارتفاع النص

txt1 

يتمدد بنسبة ثابتة ومها زاد طول النص لا يتمدد معه

شكرا لتعبك ما قصرت 

قام بنشر

استأذن من استاذنا الكرام السيد @ابوخليل و السيد @رمهان و السيد @Gamal.Saad

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

اولا : انا اضفت حقلين جديدين في استعلام مصدر التقرير وهما 

1 /

id1: Len([info2])

لكي نعرف عدد المسافات اي الحروف في حقل اينفو 2

2 /

dd: [id1]\98

لان كل سطر الكامل هو يساوي 98 مسافات لذا انا اضفت هذا الحقل لكي نعرف عدد الاسطر في حقل اينفو 2

ثانيا : غيرت خاصية التفصيل can Grow الى لا كما مبينة في الصورة

1.PNG.a3e59ebc11eabc5439fb058d25174565.PNG

ثالثا : استخدمت هذا الكود في التفصيل عند الفورمات

Private Sub Detail_Format(Cancel As Integer, FormatCount As Integer)
    Dim i As Integer
        i = ((Me.dd + 1) * 0.503) * 567 
   Me.Box34.Height = i + (1.802 * 567)
End Sub

اتفضل القي نظرتا الى التقرير ووافيني بالنتيجة

db1 (2).rar

م.2005.شفان ريكاني

 

 

  • Like 2
قام بنشر

جميل أستاذ شيفان

كان في خاطري هذه الفكرة أيضا

لذلك قلت للأستاذ متولي صاحب الموضوع

يمكننا توقع التمدد

لكن العقبة التي كانت أمامي

وما زلت أراها في ملفك المرفق

أنه وبعد القيام باضافة المزيد من السجلات ظهر هناك فارق على مستوى الفواصل بين السجلات

لكن داخل كل سجل فالتجربة ناجحة بصورة ممتازة

 

  • Like 1
قام بنشر
الان, Gamal.Saad said:

وما زلت أراها في ملفك المرفق

أنه وبعد القيام باضافة المزيد من السجلات ظهر هناك فارق على مستوى الفواصل بين السجلات

لكن داخل كل سجل فالتجربة ناجحة بصورة ممتازة

شكرا لك سيد جمال على التنبيه

تم العلاج بواسطة اضافة سطر الى الكود

والكود سيكون كالتالي

Private Sub Detail_Format(Cancel As Integer, FormatCount As Integer)
    Dim i As Integer
        i = ((Me.dd + 1) * 0.503) * 567
    Me.Box34.Height = i + (1.802 * 567)
    Me.Detail.Height = Me.Box34.Height
End Sub

db1 (2) (2).rar

هل ممكن تعمل التجربة على المرفق

م.2010.شفان ريكاني

  • Like 2
قام بنشر
4 minutes ago, Shivan Rekany said:

شكرا لك سيد جمال على التنبيه

تم العلاج بواسطة اضافة سطر الى الكود

والكود سيكون كالتالي


Private Sub Detail_Format(Cancel As Integer, FormatCount As Integer)
    Dim i As Integer
        i = ((Me.dd + 1) * 0.503) * 567
    Me.Box34.Height = i + (1.802 * 567)
    Me.Detail.Height = Me.Box34.Height
End Sub

db1 (2) (2).rar

هل ممكن تعمل التجربة على المرفق

م.2010.شفان ريكاني

ههههههه النتيجة ممتازة حتى تاريخه

كنت أريد أسوي لك أكثر من اعجاب

Like

لكن ذلك غر متاح بالمنتدى للأسف

 

  • Like 2
قام بنشر (معدل)
الان, Gamal.Saad said:

ههههههه النتيجة ممتازة حتى تاريخه

الحمد لله بنسبة لنا تم الجواب على الأسئلة لكن بعد ما وصلتنا رأيي صاحب السؤال السيد @metwali

الان, Gamal.Saad said:

كنت أريد أسوي لك أكثر من اعجاب

Like

لكن ذلك غر متاح بالمنتدى للأسف

:smile:

شكرا لك سيد جمال 
شكرا لانك معنا

م.2012.شفان ريكاني

تم تعديل بواسطه Shivan Rekany
  • Like 1
قام بنشر

السلام عليكم 

الشكر الجزيل لكل الاخوة الاساتذة الكرام على تعبهم ومجهودهم الجبار 

الحل ممتاز 

لكن لا استطيع الاستغناء عن خاصية

can grow = yes

 

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.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information