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

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

بدأه medreg في 5 سبتمبر 2009 · 5 رد · 1,675 مشاهدة · في لغة Delphi
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

اللغة التي اتعامل بها هي الدلفي7 فرنسي

هل من خبير في هذا الشأن واقصد تحديد عدد السجلات في الكويكربور

كل هذه الحلول التي قدمت لا تفي بالغرض المطلوب

ما أطلبه هو كود لتحديد عدد السطور اوالتسجيلات المطلوب ظهورها وا يكون الكود على الشكل التالي

إذا كان عدد السجلات الموجودة في الجدول هي 5 سجلات فقط يجب اضافة 10 سطور في الكويكربور فارغة لإكتمال عدد السطور المطلوبة وهو 15 سطر

وإذا كان عدد السجلات الموجود في الجدول هو أكثر من 15 ولنفرض ان العدد 20 فالمطلوب إظهار 15 سطر او سجل منه ثم ينتقل للصفحة الثانية ويصع فيها 5 سجلات الباقية مع إضافة 10 سطور اخرى فارغة هذا هو المطلوب من غير ان اضافة قاعدة بيانات مؤقتة وإضافة سجلات فارغة بها

ارجو المحاولات في حل هذه المعضلة

جزاكم الله عنا ل خير

#2

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

#3

السلام عليكــم ورحمـة الله وبركاتــه ،،

اهلا وسهلا بك اخي الكريم وكما وعدتك بانجاز مثال على هذا السؤال

تفضل المثال موجود بالمرفقات وهناك عدت طرق لذلك

اتمنى لك الافادة

وفقنا الله واياكم لما يحبه ويرضاه

Test.rar

1

اللهم علمنا ما ينفعنا وانفعنا بما علمتنا وانفع الناس بنا واغفر لنا وارحمنا

#4
alswah كتب:
اتمنى ان تعيد السؤال بصيغة أخرى حتى تتضح الصورة اكثر لكي نستطيع ان نتشارك معك بأفكار قد تصل بك إلى الحل .. ويا حبذا لو أرفقت مثال على ما قمت بعمله

السلام عليكم

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

لنفرض ان عدد السجلات المطلوب ان تظهر على الورقة هي 15 سجل فقط لاغير

وإن كانت قاعدة البيانات تحتوي على اقل من 15 سجل ولنفرض انها تحتوي على 10 سجلات فقط

هنا المطلوب :

يجب ان تظهر على الورقة الـ10 سجلات الموجودة بقاعدة البيانات إضافة الى 5 اسطر فارغة على الورقة اي كأن قاعدة البيانات تحتوي على5 سجلات فارغة مع الى الـ10

وان كان عدد السجلات الموجود بقاعدة البيانات اكثر من 15 سجل ولنفرض 20 سجل موجودة بقاعدة البيانات

فالمطلوب إظهار 15 سجل على الورقة واضافة ورقة اخرى بنفسس المعيار اي تحتوي على 5 سجلات و10 سجلات فارغة

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

ومن دون ان نرسم جدول كامل يحتوي على 15 سجل اي ارسم السطر الأول فقط في BandDetail

والباقي يضاف تلقائيًا حسب عدد السجلات المطلوب

لقد حصلت على كود وهو بالمرفق لكن لا يفي بالغرض

علي .ع كتب:

السلام عليكــم ورحمـة الله وبركاتــه ،،

اهلا وسهلا بك اخي الكريم وكما وعدتك بانجاز مثال على هذا السؤال

تفضل المثال موجود بالمرفقات وهناك عدت طرق لذلك

اتمنى لك الافادة

وفقنا الله واياكم لما يحبه ويرضاه

شكرًا اخ علي على تعاونكم معنا

ربما كما قال الأخ ان السؤال ينقصه بعض التوضيحات

ولذلك قمت بالتوضيح مع ارفاق المثال الذي يحتوي على كود خا بالشر المطلوب

Impression1.zip

#5

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

انا عملت على خمسة بامكانك ان تجعلها اكثر من ذلك

وان تغيير في الكود بما يتناسب مع متطلباتك صدقني ان الباقي سهل ولا يتطلب الكثير

وفقنا الله واياكم

اللهم علمنا ما ينفعنا وانفعنا بما علمتنا وانفع الناس بنا واغفر لنا وارحمنا

#6
علي .ع كتب:
اعتقد ان المطلوب مفهوم بالنسبة لي ما عليك الا التعديل على المرفق

انا عملت على خمسة بامكانك ان تجعلها اكثر من ذلك

وان تغيير في الكود بما يتناسب مع متطلباتك صدقني ان الباقي سهل ولا يتطلب الكثير

وفقنا الله واياكم

مشكور على متابعتكم للموضوع

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

انت رسمت الجدول بالخمسة المطلوبة وهو من المفروض ان لا ترسم الجدول بخمسة سطور كما هو موضح في الجدول الذي رسمته

بل يجب ان يرسم السطر الأول فقط وتغلق DetailBand1 ولا يبقى منها سوى قدر سجل واحد بعد السطر المتعلق ColumnHeaderBand1 حتى لا نكثر من QRShape

والباقي يزداد حسب المطلوب في الشرط

والشرط يقول اذا كان عدد السجلات اقل من 5 مثلا يجب اضافة السطور المتبقية تلقائيًا فارغة

هذا ما كنت اريد توضيحه من دون ان ترسم الجدول بأكمله

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

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

ارجو ان اكون قد وصلت الفكرة على الشكل المطلوب

ارجو ان تدقق في الموضوع والمرفق

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

procedure TForm2.DetailBand1BeforePrint(Sender: TQRCustomBand;
  var PrintBand: Boolean);
begin
if (Form1.table1.RecNo)>1 then begin
   if (Form1.table1.RecNo mod 5) = 1  then
   QuickRep1.NewColumn;
end;
end;

كما ارجو ان لا اكون قد اكثرت عليكم بمطلبي هذا اعذروني فانا مبتدئ ولم افرأ قط عن البرمجة كل هذا جاء نتيجة فضولية فقط

pre_imprime.rar

تم تعديل هذه المشاركة بواسطة medreg في 6 سبتمبر 2009 في 11:19

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

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

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

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

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