PDA

View Full Version : سوال: مشکل با DataGridViwe



h_m0zhdeh
چهارشنبه 29 آذر 1391, 08:32 صبح
با سلام
من یه جدول امکانات دارم که فیلدهای : شوفاژ - آبگرمکن - بخاری - کولر - چیلر و ... داره
که اگه هر کدوم از این فیلدها رو داشت مقدارش یک میشه وگرنه مقدارش صفره
حالا باید همه ی این فیلدهایی رو که مقدارش یک شده رو توی یه ستون DataGridViwe به نام امکانات نمایش بدم ولی نمیدونم چطوری توی یه ستون نمایش بدم و چطوری به جای یک ها اسم فیلد رو بذارم
مثلا : شوفاژ - بخاری - کولر در یک ستون نمایش داده شود در حالی که مقدارشون یکه !!

group45
چهارشنبه 29 آذر 1391, 09:08 صبح
با سلام
اینکار عملی نیست چون واسه رکورد اول ممکنه یه فیلد صفر باشه ولی تورکورد دوم همون فیلد یک باشه. لابته میشه موقه قرار دادن مقادیر در جدول اونا رو بررسی کرد و مقادیر صفر رو نوشت وجود ندارد.

h_m0zhdeh
چهارشنبه 29 آذر 1391, 09:48 صبح
به نظرتون اگه زمانی که کاربر داره امکانات رو از checkbox انتخاب می کنه من همه مواردی رو که انتخاب کرده رو بریزم تو یه فیلد جدول(به صورت رشته) بعد اون فیلد رو تو datagridviwe خودم فراخوانی کنم این کار درسته؟

Mahmoud Zaad
چهارشنبه 29 آذر 1391, 10:02 صبح
سلام
این کار (پست 1) کاملاً عملی هست
شما می تونید کوئری تون رو شبیه به کوئری زیر بنویسید
SELECT Id, Address, CASE Bokhari WHEN 0 THEN '' WHEN 1 THEN 'بخاری' END +' '+ CASE Shofaj WHEN 0 THEN '' WHEN 1 THEN 'شوفاژ' END +' '+ CASE Abgarmkon WHEN 0 THEN '' WHEN 1 THEN 'آبگرمکن' END AS abgm FROM tb1

h_m0zhdeh
چهارشنبه 29 آذر 1391, 10:20 صبح
این روش خیلی با حال بود!! " تا حالا تو کوئری شرط نزده بودم" :کف:
فقط یه سوال ؟؟




SELECT Id, Address, CASE Bokhari WHEN 0 THEN '' WHEN 1 THEN 'بخاری' END +' '+ CASE Shofaj WHEN 0 THEN '' WHEN 1 THEN 'شوفاژ' END +' '+ CASE Abgarmkon WHEN 0 THEN '' WHEN 1 THEN 'آبگرمکن' END AS abgm FROM tb1

آخرش AS abgm چیه؟(اسم یه فیلد برای نمایش این کوئریه؟)

group45
چهارشنبه 29 آذر 1391, 10:20 صبح
به نظرتون اگه زمانی که کاربر داره امکانات رو از checkbox انتخاب می کنه من همه مواردی رو که انتخاب کرده رو بریزم تو یه فیلد جدول(به صورت رشته) بعد اون فیلد رو تو datagridviwe خودم فراخوانی کنم این کار درسته؟
با سلام
بر اساس تیک خورده و نخورده صفر و یک را به رشته اضافه کنید و تو دیتابیس بریزید و هنگام فراخوانی از دیتابیس تک تک صفر و یک ها رو بررسی کرده و مقدار معادل آنرا در جدول جایگزاری کنید

Mahmoud Zaad
چهارشنبه 29 آذر 1391, 10:25 صبح
این روش خیلی با حال بود!! " تا حالا تو کوئری شرط نزده بودم" :کف:
فقط یه سوال ؟؟


آخرش AS abgm چیه؟(اسم یه فیلد برای نمایش این کوئریه؟)
اون یه فیلد مجازی هست. در واقع ما چندتا فیلد رو ترکیب کردیم و اسمش رو گذاشتیم abgm. شما هر اسمی دوست دارید بنویسید. As هم یعنی "به عنوان" یعنی این فیلد جدید رو با عنوان abgm در نظر بگیر! As رو باید بنویسید.

h_m0zhdeh
چهارشنبه 29 آذر 1391, 10:28 صبح
یعنی این فیلد رو به DataGridViwe خودم Bind کنم دیگه؟
درست فهمیدم؟:خجالت:

Mahmoud Zaad
چهارشنبه 29 آذر 1391, 10:32 صبح
یعنی این فیلد رو به DataGridViwe خودم Bind کنم دیگه؟
درست فهمیدم؟:خجالت:
آره درسته.

h_m0zhdeh
چهارشنبه 29 آذر 1391, 10:35 صبح
مرسی خیلی کمک کردید... یه پروژه رو نجات دادید:قلب: