نمایش نتایج 1 تا 11 از 11

نام تاپیک: گرفتن اطلاعات از چند جدول و نمایش در datagridview

  1. #1

    گرفتن اطلاعات از چند جدول و نمایش در datagridview

    سلام مهندسین عزیز روزتون مبارک

    دوستان من میخام گزارش بالانس مالی رو پیاده سازی کنم و نیاز دارم از هر جدول یک یا چند فیلد رو سلکت کنم و در دیتاگرید نمایش بدم
    بین جدوال هم ارتباطی نیست
    ولی خب باید یه شرط برای انتخاب فیلد ها بزارم که اونم سال هستش
    مثلا تاریخ به این صورت در جدول ذخیره شده 1394/12/1
    مثال : از جدول price فیلد price
    از جدول ghoboz فیلد pardakhti
    از جدول help فیلد price

    اول اومدم یه کمبو باکس قرار دادم و همه سال ها رو در اون لود کردم

     private object[] year = { "1394", "1395", "1396", "1397", "1398", "1399", "1400", "1401", "1402", "1403", "1404", "1405", "1406", "1407" };


     private void Frm_Balance_Mali_Year_Load(object sender, EventArgs e)
    {
    combo_year.Items.AddRange(year);

    }


    بعد این سلکت رو زدم ولی فیلد های خالی رو سلکت زد
     var Qselect = from s in db.Tbl_dareyafti2s
    where s.date == combo_year.Text.Substring(0, 4)
    select new { s.price };
    dataGridView1.DataSource = Qselect;

    ممنون میشم راهنمایی کنید .یا راه حلی پیشنهاد بدید
    آخرین ویرایش به وسیله vB.N3T : چهارشنبه 05 اسفند 1394 در 11:58 صبح

  2. #2
    منتظر تایید آدرس ایمیل
    تاریخ عضویت
    خرداد 1391
    پست
    337

    نقل قول: گرفتن اطلاعات از چند جدول و نمایش در دیتاگیرید

    دوست عزیز برای انتخاب از هر جدول به عقیده من باید یک ویو از جداول بسازی. و با یک دستور سلکت اون محتویات ویو را نمایش بدی.

  3. #3
    مدیر بخش آواتار ژیار رحیمی
    تاریخ عضویت
    مهر 1386
    محل زندگی
    تهران
    پست
    1,095

    نقل قول: گرفتن اطلاعات از چند جدول و نمایش در دیتاگیرید

    دوست گرامی شما داری یه تاریخ رو با یک عدد مقایسه میکنی

    var year=Convert.ToInt32( combo_year.Text.Substring(0, 4));
    var Qselect = from s in db.Tbl_dareyafti2s
    where s.date.Date.Year ==year
    select new { s.price };
    dataGridView1.DataSource = Qselect;


    برای کویری از سه جدول که ارتباطی باهم ندارند سه کویری رو مثل کویری که برات نوشتم انجام بده سپس نتایج کویری ها رو Cancat کن نتیجه دلخواه شما بدست میاد
    First,solve the problem then write the code

  4. #4

    نقل قول: گرفتن اطلاعات از چند جدول و نمایش در datagridview

    جناب رحیمی تاریخ در جدول به صورت یه رشته 1394/12/1 دخیره میشه
    در این خط با خطا مواجه میشه

    where s.date.Date.Year ==year

    Date و Year

  5. #5
    مدیر بخش آواتار ژیار رحیمی
    تاریخ عضویت
    مهر 1386
    محل زندگی
    تهران
    پست
    1,095

    نقل قول: گرفتن اطلاعات از چند جدول و نمایش در datagridview

    نقل قول نوشته شده توسط vB.N3T مشاهده تاپیک
    جناب رحیمی تاریخ در جدول به صورت یه رشته 1394/12/1 دخیره میشه
    در این خط با خطا مواجه میشه

    where s.date.Date.Year ==year

    Date و Year
    روش اول براساس مقایسه سال

    var year= combo_year.Text.Substring(0, 4);
    var seledaryafti = from s in db.Tbl_dareyafti2s
    where s.date.Substring(0, 4) ==year
    select new { s.price };

    روش دوم مقایسه بر اساس تاریخ ،سرعت اجرا بهتر و سرباری کمتری نسبت به کد بالا داره

    var startDate=string.Format("{0}/01/01",year);
    var endDate=string.Format("{0}/12/30",year);
    var seledaryafti = from s in db.Tbl_dareyafti2s
    where s.date >=startDate && s.date<=endDate
    select new { s.price };
    آخرین ویرایش به وسیله ژیار رحیمی : چهارشنبه 05 اسفند 1394 در 20:13 عصر
    First,solve the problem then write the code

  6. #6

    نقل قول: گرفتن اطلاعات از چند جدول و نمایش در datagridview

    خیلی خیلی ممنون جناب مهندس رحیمی گل دقیقا درست
    جناب رحیمی امکانش هست هر select نتیجش در سلول جدا دیتاگرید قرار بگیره ؟ من با
     seledaryafti.Concat(select_price);

    2 تا سکت زدم..نتایج رو در یه ستون زیر هم میاره

    از این کد استفاده کردم که در سلول اول بریزه اما نشد
      dataGridView1.CurrentRow.Cells[0].Value = seledaryafti;

  7. #7
    مدیر بخش آواتار ژیار رحیمی
    تاریخ عضویت
    مهر 1386
    محل زندگی
    تهران
    پست
    1,095

    نقل قول: گرفتن اطلاعات از چند جدول و نمایش در datagridview

    نقل قول نوشته شده توسط vB.N3T مشاهده تاپیک
    خیلی خیلی ممنون جناب مهندس رحیمی گل دقیقا درست
    جناب رحیمی امکانش هست هر select نتیجش در سلول جدا دیتاگرید قرار بگیره ؟ من با
     seledaryafti.Concat(select_price);

    2 تا سکت زدم..نتایج رو در یه ستون زیر هم میاره

    از این کد استفاده کردم که در سلول اول بریزه اما نشد
      dataGridView1.CurrentRow.Cells[0].Value = seledaryafti;
    دوست گرامی نتیجه کویری بصورت مجموعه یی از رکوردهای تک ستونی Price هست یک عدد برای شما برنمیگردونه .در صورتی که بخوای Sum ،Ave و ... در کویری باشه میتونی نتیجه رو دریک سلول قرار بدی
    First,solve the problem then write the code

  8. #8

    نقل قول: گرفتن اطلاعات از چند جدول و نمایش در datagridview

    جناب رحیمی من میخام به فرم بالانس مالی شبیه زیر طراحی کنم
    و با این سکلت ها مقدار ها رو گرفتم
    به نظر شما چطور اونارو بفرستم به گزارش با توجه به این که هر فیلد از یه جدول هست
    میخاستم هر سلکت در یه ستون دیتاگرید قرار بگیره و در اخر جمع کل هر ستون رو بفرستم برای گزارش
    الان کل سلکت ها در یه ستون هست .
    برای هر سکلت یه دیتاگرید بزارم ایا روش خوبیه یا غیر حرفه ای میشه ؟
    ایا پیشنهادی دارید برای ساختن گزارشش
    ممنون121.jpg

  9. #9
    مدیر بخش آواتار ژیار رحیمی
    تاریخ عضویت
    مهر 1386
    محل زندگی
    تهران
    پست
    1,095

    نقل قول: گرفتن اطلاعات از چند جدول و نمایش در datagridview

    در تصویر در هر سلول جمع رکورد های اون حساب یا جدول هست (مثل کل دریافتی از کشاورزان یا پرداختی های آنها) شما در کویری از sum استفاده کن و نتیجه رو که یک عدد مجموع میباشد در سلول مورد نظر در دیتاگرید قرار بده

    dataGridView1.CurrentRow.Cells[0].Value = seledaryafti.Sum(c=>c.price);
    First,solve the problem then write the code

  10. #10

    نقل قول: گرفتن اطلاعات از چند جدول و نمایش در datagridview

    جناب رحیمی
    من تمام سلکت ها رو زدم و در دیتا گرید ریختم
    حتی به گزارش هم فرستادم.الان داشتم برنامه رو تست میکرم همین قسمتی که سلکت میزنه با این خطا مواجه شده.
    بعد کل اطلاعات جداول رو دلیت کردم و دومرتبه وارد کردم و برنامه و سکلت ها درست شد
    سوالم اینه در اینده این مشکل پیش نیاد موقع نصب برنامه و...
    ایا دلیل خاصی داشته که برنامه بی دلیل به اینکه جداول دیتا داشتن این خطا رخ بده !؟
    مقدار هم داره جدول.121.png
    آخرین ویرایش به وسیله vB.N3T : پنج شنبه 06 اسفند 1394 در 10:34 صبح

  11. #11
    مدیر بخش آواتار ژیار رحیمی
    تاریخ عضویت
    مهر 1386
    محل زندگی
    تهران
    پست
    1,095

    نقل قول: گرفتن اطلاعات از چند جدول و نمایش در datagridview

    احتمالا دیتاگرید شما فاقد سطر هست یا CurrentRow به سطر سیستمی دیتاگرید اشاره میکنه (Header گرید) پس CurrentRow دیتاگرید شما null میباشد(بهتره بجای CurrentRow از ایندکس سطر استفاده کنی)
    First,solve the problem then write the code

تاپیک های مشابه

  1. گرفتن اطلاعات از یک جدول و دخیره در جدول دیگر
    نوشته شده توسط mehdihalla در بخش T-SQL
    پاسخ: 3
    آخرین پست: چهارشنبه 09 اردیبهشت 1394, 08:58 صبح
  2. گرفتن اطلاعات از چند جدول با شرایط خاص با linq
    نوشته شده توسط moona9090 در بخش دسترسی به داده ها (ADO.Net و LINQ و ...)
    پاسخ: 1
    آخرین پست: چهارشنبه 25 بهمن 1391, 09:31 صبح
  3. پاسخ: 4
    آخرین پست: شنبه 15 مهر 1391, 09:38 صبح
  4. سوال: فراخواني اطلاعات از چند جدول و نمايش در كريستال ريپورت
    نوشته شده توسط rana-writes در بخش ابزارهای گزارش سازی
    پاسخ: 1
    آخرین پست: چهارشنبه 17 اسفند 1390, 22:35 عصر
  5. نمایش اطلاعات از چند جدول در یک دیتاگرید
    نوشته شده توسط jannati در بخش ASP.NET Web Forms
    پاسخ: 3
    آخرین پست: یک شنبه 19 مهر 1383, 18:30 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •