PDA

View Full Version : سوال: لطفا: تعويض اطللاعات گزارش با استفاده از اطلاعات ديتابيس



ali_ahr7
یک شنبه 24 مرداد 1389, 21:51 عصر
بنام خدا

سلام به همه برنامه نويساي عزيز طاعات و عباداتتون قبول.

سوال اينه فرض كنيد توي ديتابيس سه عدد 1 ، 2 , 3 بسته به وضعيت شخصي ذخيره شده.
مثلا اگر فرد دانشجو باشد عدد 1
اگر فرد دانش آموز ياشه عدد 2
و اگر هيچ كدوم نباشه عدد 3 ذخيره شده باشه.
سوال اينه چطور ميتونم در خروجي گزارشم به جاي هر عدد وضعيت شخص چاپ بشه؟

من سرچ كردم ولي چيز خاصي پيدا نكردم لطفا در صورت امكان همكاري كنيدومتشكرم

راستي من از كريستال ريپورت و vb2008 استفاده ميكنم.بازم متشكرم از توجهتون

b.mahsa
یک شنبه 24 مرداد 1389, 21:59 عصر
میتونی view بزنی رو دو تا table یکی شامل 123 یکی هم توضیحاتش

ali_ahr7
یک شنبه 24 مرداد 1389, 22:22 عصر
لطفا بيشتر توضيح بدين متشكر.

Mani_rf
دوشنبه 25 مرداد 1389, 08:59 صبح
بنام خدا




سلام به همه برنامه نويساي عزيز طاعات و عباداتتون قبول.


سوال اينه فرض كنيد توي ديتابيس سه عدد 1 ، 2 , 3 بسته به وضعيت شخصي ذخيره شده.
مثلا اگر فرد دانشجو باشد عدد 1
اگر فرد دانش آموز ياشه عدد 2
و اگر هيچ كدوم نباشه عدد 3 ذخيره شده باشه.
سوال اينه چطور ميتونم در خروجي گزارشم به جاي هر عدد وضعيت شخص چاپ بشه؟


من سرچ كردم ولي چيز خاصي پيدا نكردم لطفا در صورت امكان همكاري كنيدومتشكرم



راستي من از كريستال ريپورت و vb2008 استفاده ميكنم.بازم متشكرم از توجهتون


2روش برای این کار وجود داره :

1- هنگام خواندن اطلاعات از دیتابیس با استفاده از Case When مقدار های لازم را جایگزین مقدار عددی بکنی

مثال :


Select Name,
Family,
Case User_Status
When 1 Then 'دانشجو'
When 2 Then 'دانش آموز'
When 3 Then 'هیچکدام'
end as User_Status
From Student

2- موقع نمایش در کریستال با استفاده از دستور Select مقدار های را تغییر دهی.

ali_ahr7
دوشنبه 25 مرداد 1389, 09:18 صبح
اولا از توجهتون خيلي ممنونم. دوما ميشه در باره روش دوم بيشتر توضيح بدين؟

و اينكه آيا روشي هست كه بشه با استفاده از كدنويسي در vb مفادير رو تغيير داد و بعد اونو به كريستال فرستاد؟اگر هست ممنون ميشم اونو مطرح كنين.

Mani_rf
دوشنبه 25 مرداد 1389, 10:08 صبح
اولا از توجهتون خيلي ممنونم. دوما ميشه در باره روش دوم بيشتر توضيح بدين؟

و اينكه آيا روشي هست كه بشه با استفاده از كدنويسي در vb مفادير رو تغيير داد و بعد اونو به كريستال فرستاد؟اگر هست ممنون ميشم اونو مطرح كنين.

تو کریستال برروی Textی که 1و2و3 را نمایش میده راست کلیک کن گزینه Edit Formula... را بزن
در پنجره ای که باز میشه میتونی هر تغییری که نیاز داری را روی اطلاعاتی که نمایش داد میشه اعمال کنی ، زبان اون هم خوشبختانه VB است.
برای مثال برای تغییر 1و2و3 به رشته مورد نظر از چنی کدی استفاده کن:


Select {FildName}
Case 1: "دانشجو"
Case 2: "دانش آموز"
Case 3 : "هیچکدام"

برای تبدیل در خود زبان هم روش هست اما خیلی بهینه نیست و پیشنهاد نمی کنم.