PDA

View Full Version : مشکل در استیمول و سی شارپ (حرفه ای)



juza66
چهارشنبه 15 مهر 1394, 19:37 عصر
با سلام خدمت اساتید محترم سایت

من این فرم زیر رو تویی استیمول ریپورت ساختم..


دوتا مشکل دارم...


1. میخوام هر صفحه از 1 تا 50 عدد بخوره و صفحه بعدی از 51 تا 100 شماره نخوره همون بشه 1 تا 50



2. الان من وقتی سلکت انجام میدم و پاس میدم به دیتاست و دیتاست رو پاس میدم به ریپورت به فرض مثال من 80 بیمار ثبت کردم و اومدم فرم رو طوری تنظیم کردم بیش تر از 50 بیمار تویی فرم جا نشه بقیه بیافتن صفحه بعدی :
و چون من باید فرمم جدول کشی باشه خوب با همون متغییرها جدول بندی میکنم و یک مشکل که دارم اینه که فرم اولی مثل دومی خط کشی باشه و اونجاهایی که دیگه تموم میشه خالی بمونن ..!!!!

http://bayanbox.ir/view/3831461450265112952/Untitled.png


راه حلی ندارم من فرم رو خط کشی کنم و اطلاعات دیتابیس رو پاس بدم و تویی جدول کشی های بیافتن؟! مثل این عکس زیر:

http://bayanbox.ir/view/8390676679996656589/Untitled2.png


برای این دومی من میگم بیام یک فایل عکس بصورت جدول کشی بسازم و اطلاعاتم رو بیریزم تویی همون جدول عکس تنـــــــــها بدیش اینه که بی کیفیت میشه!!!!!

aslan
چهارشنبه 15 مهر 1394, 20:12 عصر
سلام
1 - از variable استفاده کنید و بعد از چاپ هر سطر یکی بهش اضافه کنید و در نهایت در پایان صفحه عدد را ریست کن و ... ( از event های مربوط به دیتاباند میتونید استفاده کنید )
2 - از Empty Data استفاده کنید
موفق باشید

juza66
پنج شنبه 16 مهر 1394, 08:37 صبح
برای سوال دومم جوابتون عالی بود درست شد مرسی


ولی سوال اول هنوز مشکلم پابرجاست، چطوری باید اینکار رو انجام بدم؟!

بیام یکی یکی اطلاعات رو از دیتابیس بخونم و var روش برابر تعداد بذارم بعدش بیام چک کنم اگر var رسید به 50 دوباره ریست شو...

اینکار رو هم کردم همه Var میشدند همون عدد آخری که تمام میشه مثلا 30.... یا 21. .... 50 ....

ممنون میشم اگر راهنمایی کنید چون تمام سایت ها رو زیرور کردم نشد که نشد!!!

ژیار رحیمی
پنج شنبه 16 مهر 1394, 08:59 صبح
دوست گرامی شما میخوای 50 رکورد در هر صفحه داشته باشی شما یه page footer بزار ارتفاع page footer رو تنظیم کن که فقط 50 رکورد در دیتا باند جا بشه

juza66
پنج شنبه 16 مهر 1394, 09:06 صبح
خوب من اینکار رو کردم، مشکلی با جا دادن 50 رکورد ندارم

مشکلم اینه که وقتی از LINE استفاده میکنم میخوام تویی هر صفحه عددش از 1 تا 50 شروع بشه

ژیار رحیمی
پنج شنبه 16 مهر 1394, 09:25 صبح
در property دیتا باند خاصیت Reset page number رو true قراربده ببین مشکل حل میشه

juza66
پنج شنبه 16 مهر 1394, 09:40 صبح
انجام دادم فقط موقعی این انجام میشه که من بخوام شماره صفحه رو ریست کنم - نه شماره ردیف رو ...!!! :((

aslan
پنج شنبه 16 مهر 1394, 09:50 صبح
برای سوال دومم جوابتون عالی بود درست شد مرسی


ولی سوال اول هنوز مشکلم پابرجاست، چطوری باید اینکار رو انجام بدم؟!

بیام یکی یکی اطلاعات رو از دیتابیس بخونم و var روش برابر تعداد بذارم بعدش بیام چک کنم اگر var رسید به 50 دوباره ریست شو...

اینکار رو هم کردم همه Var میشدند همون عدد آخری که تمام میشه مثلا 30.... یا 21. .... 50 ....

ممنون میشم اگر راهنمایی کنید چون تمام سایت ها رو زیرور کردم نشد که نشد!!!

سلام
یک Variable ایجاد کنید مثلا بعنوان ردیف و .... ( که در دیتاباند برای چاپ ردیف استفاده میشود )
در Before Print Event دیتاباند شرط لازم ( برای کنترل تعداد ردیفهای چاپ شده و ریست شماره ردیف ) را اعمال کنید ...
تصویر ضمیمه فکر کنم گویا باشه
موفق باشید

juza66
پنج شنبه 16 مهر 1394, 10:28 صبح
دستت طلا عالی بود مرسی
پس مثل سی شارپ میشه برای استیمول هم کدنویسی کنیم (همون کدنویسی سی شارپ؟!) درسته؟! دمت گرم


فقط یک سوال دیگه چطوری میتونم بگم ردیف رو تا پایین ادامه بده بعد اگر اطلاعاتی وجود داشت برو ستون دوم؟! (عکس زیر)
135851

ژیار رحیمی
پنج شنبه 16 مهر 1394, 11:02 صبح
عذر خواهی میکنم دوست گرامی متوجه نشدم
شما در TextBox مربوط line یا سطر کد زیر رو قرار دهید
{IIF(Line % 51==0,1,Line % 51)}

hossein_rashkan
شنبه 15 آبان 1395, 22:37 عصر
با سلام
دوست عزیز من هم مشکل شما را دارم.
ایا منظور از emty data همان گزینه print if detail empty=True است?
با اینکه print if detail empty=True را true کردم ولی بقیه جدول رو نشون نمیده! دقیقا چه خصوصیاتی رو باید تنظیم کنم؟

row count=2
header count=1
print if detail empty=True

ممنون میشم جواب دهید