ورود

View Full Version : سوال: مشکل در رتبه بندی در یک گزارش گیری Crytal Report



arash.gh
دوشنبه 16 آبان 1390, 16:00 عصر
دوستان سلام خسته نباشید
یه برنامه دارم برای تولید کارنامه ماهانه دانش آموزان
برنامه کارش تموم شده الان یه فرم گزارش درست کردم با کریستال ریپورت که کارنامه هستش بعدش الان یه مشکل دارم وقت گزارش گیری می خوام رتبه فرد رو تو کلاس و پایه معلوم کنم.چطور می تونم اینکارو کنم از تو خود کریستال ریپورت میشه اینکارو کرد؟بعدم نمره درس ها رو از نوع real گرفتم بعد تو فرم ها یه maskedtext گذاشتم که نمره باید به این صورت وارد بشه __.__ اگه 20 رو وارد کنن اینجوری باید وارد کنن 20.00 وقتی تو بانک ذخیره می شه به صورت 20 خالی ذخیره می شه ولی تو گزارش 20.00 نشون میده.اینو چیکارش کنم
دوتا عکس از جدول ها و یه عکسم از report گذاشتم که بهتر منظورم رو متوجه بشید ممنون از راهنمایی هاتون.
7754277541

Mahmoud Zaad
دوشنبه 16 آبان 1390, 16:25 عصر
سلام
در مورد سوال اول، شما برای اینکه رتبه رو به دست بیارید باید نمره همه دانش آموزا رو داشته باشید در صورتیکه برای تهیه کارنامه شما فقط نمره یه دانش آموز رو به گزارش می فرستید پس به نظر من با این مفروضات نمیشه این کارو کرد.
در مورد سوال دوم، شما باید فیلدهای نمره رو تبدیل به نامبر کنید(برای هر کدوم از فیلدها یه فرمول تعریف کنید و از قسمت فرمولها > string> ToNumber رو انتخاب کنید) بعد بر فرمول رو بکشید توی گزارش و روی اون راست کلیک کنید و format object رو انتخاب کنید از قسمت Number حالتیکه ممیز نداره انتخاب کنید

arash.gh
سه شنبه 17 آبان 1390, 13:45 عصر
دوست عزیز سلام ممنون از پاسختون
اول باید بگم که من نمره همه دانش آموز ها رو با شماره دانش آموزی شون تو یه جدول ذخیره می کنم به اسم tblkarname اون بالا هست که شامل فیلد شماره دانش آموزی - نام درس - نمره - ماه و غچند تا فیلد دیگه هستش لازم به ذکر که بگم این کارو برای کارنامه ماهانه انجام می دم حالا من برای گزارش گیری یک view ساختم تو sql اونو به گزارش می گیرم تا حدودی کارم راه افتاده فقط مشکل تعیین رتبه رو دارم می خوام رتبه هر دانش آموز تو هر درس رو در کلاس و پایه تک تک تعیین و چاپ کنم.الانم این کارو تو SQL انجام میدم اما تو گزارش گیری نموتنم استفاده کنم تو SQL با این دستور انچام میشه
Select stdID,ROW_NUMBER() OVER(ORDER BY nomre DESC) AS 'Rank' From tblkarnamem where drsname=N'جغرافيا'
اما تو گزاش نمیتونم بگم کدوم درس چون همه درس ها رو باید بیاره اگه تو خط بالا توجه کنید یه WHERE داره که نام درس رو مشخص می کنه یعنی رتبه دانش آموز تو اون درس اما تو گزارش نمیتونم توی فرمان select بگم کدوم درس فکر کنم با اسکریپت نویسی خود crstal report انجام میشه اما متسفانه من اسکریپت نویسی رو تو کریستال ریپورت کار نکردم.

برای قسمت مممیز هم اگه میشه یکم بیشتر توضیح بدید ممنون میشم.
مرسی

arash.gh
جمعه 20 آبان 1390, 14:30 عصر
کسی نیست جواب مارو بده