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

نام تاپیک: نمایش اطلاعات چند جدول به صورت مجزا درون Data Grid View

  1. #1

    نمایش اطلاعات چند جدول به صورت مجزا درون Data Grid View

    سلام .
    یه دیتابیس داریم که با Sql Compact پیاده سازی شده ،
    برای هر بخش یک جدول داریم . برای نمایش اطلاعات و جستجو ی هر بخش بدون مشکل میشه اطلاعات رو فراخوانی کرد .

    اما توی یه قسمت . باید یک اطلاعات کلی از همه جدول ها رو در اختیار داشته باشم .و نشون داده بشه . اون هم به صورت جداگونه و با فیلتر شدن بین دو تاریخ و نام شرکت ..
    یعنی زمانی که کاربر نام شرکت و یه بازه برای تاریخ معین میکنه اطلاعات مربوط به اون شرکت که توی چند جدول به صورت جداگونه ذخیره شده اند رو فیلد های خاصی از اون رو به صورت جداگونه توی Grid View نمایش داده بشه .

    من اومدم یه Table Adapter رو ساختم که شامل همه ی اون جدول هایی که باید نمایش داده میشد بود . اما وقتی اون رو به Grid View وصل میکنم . اطلاعات به صورت جداگونه نمایش داده نمیشه و همه اون اطلاعات رو به هم وصل میکنه .

  2. #2

    نقل قول: نمایش اطلاعات چند جدول به صورت مجزا درون Data Grid View

    دوستان راهی به نظر شون نمیرسه که اطلاعت دو جدول رو بتونیم توی یه گرید ویو نشون بدیم . یه جوری باید این اطلاعات رو با هم یکی کنیم . یعنی جداول رو با هم وصل کنیم . ولی چه جوری ؟؟
    با وصل کردن جدول ها . ستون های مشترک جداگونه میاد ...

    من میخوام . مثلا : سه تا فیلد شماره و مبلغ و کد رو که توی دو تا جدول دارم . به توی ستون ها به صورت عنوان نشون داده بشه . و اطلاعات هر دو تا جدول به صورت ردیفی مثل بقیه گزارش های عادی نشون داده بشه .
    دوستان راهی به نظر شون نمیرسه

  3. #3

    نقل قول: نمایش اطلاعات چند جدول به صورت مجزا درون Data Grid View

    در صورتی که جداول فیلد مشترک دارند به نظرم از join استفاده کنید جواب بگیرید.
    اگر نه میتونید از union در کوئری استفاده کنید.

  4. #4

    نقل قول: نمایش اطلاعات چند جدول به صورت مجزا درون Data Grid View

    فیلد مشترک دارند . مثلا نام شرکت .
    برای ثبت هزینه های داخلی شرکت من یه جدول ، و برای هزینه های خارجی هم یه جدول دارم . حالا زمانی که میخوام هزینه های داخلی و خارجی رو با هم نشون بدم . با Join کردن این کار رو میکنه ... اما مساله اینجاست که نمیخوام مثلا توی یه سطر . هم هزینه های خارجی رو نشون بده هم داخلی رو ...
    میخوام هزینه داخلی رو توی یه سطر و هزینه خارجی رو هم توی سطر جداگونه نشون بده . عنوان ها هم هزینه ها و تاریخ و کد های مربوطه باشه .

  5. #5

    نقل قول: نمایش اطلاعات چند جدول به صورت مجزا درون Data Grid View

    جدول جداگونه برای نام شرکت ها وجود نداره .
    سه تا جدول کلا هست که یکی هزینه های داخلی ، هزینه های خارجی و یکی هم هزینه های متفرقه
    هر کدوم از این جدول ها فیلد نام شرکت و تاریخ و جمع هزینه ها رو دارند .
    حالا زمانی که بخوایم توی یک بازه زمانی مشخص . مثلا از 10/12/1391 تا 20/12/1391 و با وارد کردن نام شرکت . بتونیم لیست تمام هزینه ها رو ببینیم.

    با دستور Union میشه نتیجه ها رو به هم الحاق کرد . اما چه طوری جداول رو با هم الحاق کنم .

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

  6. #6

    نقل قول: نمایش اطلاعات چند جدول به صورت مجزا درون Data Grid View

    آقا منم یه همچین مشکلی دارم
    جدول ها : خرید , فروش , هزینه , پرداختی
    حالا تو هر کدوم از اینا ما یه مبلغ داریم , یه تاریخ و یه شرح ماجرا.
    حالا میخوام مثل دوستمون به ازاء کد X اطلاعات جدول خرید بیاد و بعد فروش و بعد هزینه و بعدشم پرداختی و در نهایت با تاریخ sort بشه
    اساتید اگه کمک کنن ممنون میشیم !

  7. #7

    Talking نقل قول: نمایش اطلاعات چند جدول به صورت مجزا درون Data Grid View

    نقل قول نوشته شده توسط Mahmoud.Afrad مشاهده تاپیک
    ما الان چی کار میتونیم بکنیم در حالی که از ساختار جداول شما با خبر نیستیم.
    بزرگوار شما هر جور راحتی کار کن , شما یه مثال بزن که توش یه datatable یا gridview پر بشه اینطوری :(فیلد ها : tarikh , sharh , ghimat)(در ضمن این فیلد ها در همه جداول وجود داره )
    جدول اول که داریم (به عنوان مثال فروش) تمام رکوردهایی که id برابر با 2 هستش , تاریخ و شرح و قیمت رو به جدول یا گرید اضافه کن و حالا در ادامه
    جدول دوم (هزینه) تمام رکوردهایی که id برابر 2 هستش , تاریخ و شرح و قیمت به جدول یا گرید اضافه بشه و......
    نکته اینجاس که ما فقط میخوایم این اطلاعات رو پشت سر هم قرار بدیم و فاکتور چاپ کنیم به جای اینکه این همه فاکتور ذخیره کنیم
    این گوی و این میدان فک کنم واضح گفتم دیگه

  8. #8

    نقل قول: نمایش اطلاعات چند جدول به صورت مجزا درون Data Grid View

    نقل قول نوشته شده توسط ali.mansoori66 مشاهده تاپیک
    بزرگوار شما هر جور راحتی کار کن , شما یه مثال بزن که توش یه datatable یا gridview پر بشه اینطوری :(فیلد ها : tarikh , sharh , ghimat)(در ضمن این فیلد ها در همه جداول وجود داره )
    جدول اول که داریم (به عنوان مثال فروش) تمام رکوردهایی که id برابر با 2 هستش , تاریخ و شرح و قیمت رو به جدول یا گرید اضافه کن و حالا در ادامه
    جدول دوم (هزینه) تمام رکوردهایی که id برابر 2 هستش , تاریخ و شرح و قیمت به جدول یا گرید اضافه بشه و......
    نکته اینجاس که ما فقط میخوایم این اطلاعات رو پشت سر هم قرار بدیم و فاکتور چاپ کنیم به جای اینکه این همه فاکتور ذخیره کنیم
    این گوی و این میدان فک کنم واضح گفتم دیگه
    گوی و میدان دست شماست ما فقط میتونیم در اصلاح کد کمک کنیم.
    به جای join یک سلکت ساده از جداول میکنید و نتیجه ها رو union all میکنید.
    جواب بهتر می خواهید باید کدی که خودتون نوشتید را بزارید.
    آخرین ویرایش به وسیله Mahmoud.Afrad : شنبه 31 فروردین 1392 در 10:48 صبح

  9. #9

    نقل قول: نمایش اطلاعات چند جدول به صورت مجزا درون Data Grid View

    بالاخره با راهنمایی های شما تونستم با دستور Union All جدول ها رو به هم دیگه الحاق کنم . و با یه دستور شرطی هم نتیجه جستجو ها رو فیلتر کنم .
    اما یه مشکلی هست . توی فیلتر کردن بر اساس تاریخ .

    نتایج رو میخوام بر اساس یک بازه تاریخی هم نشون داده بشه . اما توی دیتابیس فقط تاریخ ثبت سند هست . تاریخ دومی رو باید خود کاربر تعیین کنه . مقدار تاریخ دومی رو چه طوری میشه توی کوئری فراخوانی کرد .

    این کدی هست که واسه الحاق دو جدول و فیلتر شدن نتایج هست

    SELECT tarikkh, peyvast, Name, sherkat, Mablagh
    FROM Transit_in
    WHERE (sherkat LIKE N'%' + @sherkat + N'%') AND (peyvast = @peyvast)
    UNION ALL
    SELECT Tarikh, peyvast, Name, sherkat, Mablagh
    FROM Transit_out
    WHERE (sherkat LIKE N'%' + @sherkat + N'%') AND (peyvast = @peyvast)

  10. #10
    کاربر دائمی
    تاریخ عضویت
    بهمن 1386
    محل زندگی
    شیراز
    پست
    330

    نقل قول: نمایش اطلاعات چند جدول به صورت مجزا درون Data Grid View

    خب تاریخ دوم رو هم خیلی راحت به عنوان یک پارامتر توی دستورsql بگیر و ازش استفاده کن

  11. #11

    نقل قول: نمایش اطلاعات چند جدول به صورت مجزا درون Data Grid View

    اگر تاریخ رو به صورت رشته با طول 10 ذخیره میکنید میتونید در شرط ها تاریخ رو به صورت مقایسه رشته ها در یک بازه بدست بیارید:
    ...  WHERE  ...  AND  tarikh >= @t1 AND tarikh <= @t2

  12. #12

    نقل قول: نمایش اطلاعات چند جدول به صورت مجزا درون Data Grid View

    من از دو Date And Time Picker توی فرم برای انتخاب بازه تاریخ استفاده کردم.
    اما مشکل زیادتر شد .
    نوع دیتای تاریخ رو توی دیتابیس از نوع Nvarchar انتخاب کردم . و موقع ذخیره کردن هم فقط مقدار Date And Time Picker رو دورن جدول ذخیره میکردم .
    اما حالا باید روی تاریخ عملیات مقایسه ای انجام بشه . میتونم از عملگر >= هم استفاده کنم . یا باید نوع دیتا رو به DateTime توی دیتابیس تغییر بدم . اگه نوع دیتا رو تغییر بدم . با کدوم خاصیت Date And Time Picker میتونم اطلاعات تاریخ رو درون دیتابیس ذخیره کنم .

    این کد ثبت اطلاعات فرم درون جدول هست .

    string Str_TRin = "insert into transit_in(Name,tarikkh,peyvast,sherkat,shomare,co ntinTedad,continSize,continShomare,hazine,Fhazine, tideWater,FtideWater,ezharname,Fezharname,govahi,F govahi,demond,Fdemond,masirKM,FmasirKM,tonKM,FtonK M,Karmozd,Mablagh,keshtirani,Fkeshtirani,qarantine ,Fqarantine,estandard,Festandard,Varizi,vaziat)" +
    "VALUES ('" + name_txt.Text + "' , '" + DATE.Value + "' , '" + Peyvast_txt.Text + "' ,'" + sherkat_txt.Text + "' ,'" + Num_TXT.Text + "','" + tedad_con.Text + "','" + size_con.SelectedItem + "' , '" + num_con.Text + "' ,'" + Hazineh.Text + "' , '" + f_hazine.Text + "' ,'" + tideWater.Text + "' , '" + f_tideWater.Text + "','" + copyEzharNAme.Text + "' , '" + f_copyEzharName.Text + "' , '" + govahiTazmin.Text + "' ,'" + f_gowahiTazmin.Text + "' ,'" + demond.Text + "' ,'" + f_demond.Text + "' , '" + MasirKM.Text + "' ,'" + f_masirKM.Text + "' ,'" + toneKM.Text + "','" + f_toneKM.Text + "' ,'" + Karmozd.Text + "','" + sum_txt.Text + "','" +Keshtirani.Text+"' ,'" +Fkeshtirani.Text+"' ,'"+qrantine.Text+"' ,'"+fqrantine.Text+"' ,'"+Estandard.Text+"','"+Festandard.Text+"','"+Var izi_TXT.Text+"','"+Vaziat.SelectedItem+"' )";

  13. #13

    نقل قول: نمایش اطلاعات چند جدول به صورت مجزا درون Data Grid View

    بهتره از یک datetime picker تاریخ شمسی استفاده و تاریخ رو شمسی در دیتابیس ذخیره کنید.
    farsiLibrary را از http://www.hightech.ir/Downloads دانلود و استفاده کنید.

  14. #14

    نقل قول: نمایش اطلاعات چند جدول به صورت مجزا درون Data Grid View

    مرسی Mahmoud .Afrad عزیز . با کمک شما و راهنمایی های استادانه ات . این مشکل برطرف شد .

    اما یه سوال دیگه هم ذهن من رو درگیر خودش کرده .
    ما اومدیم جدول ها رو به هم دیگه الحاق کردیم . بعد نتایج رو بر اساس فیلد های مختلف فیلتر کردیم . حالا نتیجه دلخواه مون رو داریم .
    اگه بخوایم این نتیجه دلخواه مون فیلد مبلغ اش یه مبلغ کل داشته باشه . که حاصل جمع مبلغهای فیلتر شده توی دیتا گرید هست . باید چیکار کنیم .

    میتونیم بیایم تمام سطر های دیتا گرید فیلد مبلغ اش رو بخونیم و با هم جمع کنیم و نتیجه اش رو مثلا توی یه متغییر ذخیره کنیم . که بعدا برای فرستادن اش به Report ازش استفاده کنیم ؟؟

  15. #15

    نقل قول: نمایش اطلاعات چند جدول به صورت مجزا درون Data Grid View

    برای تاریخ شمسی . من از Persian Date Time picker استفاده میکنم . که ساخته ی بچه های همین جا بود . حالات نمایش مختلفی رو هم داره .
    مرسی از این کامپوننتی که معرفی کردی ، ازش استفاده میکنم ببینم چه طوریه .

  16. #16

    نقل قول: نمایش اطلاعات چند جدول به صورت مجزا درون Data Grid View

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

    من از این کد میخوام استفاده کنم برای بدست آوردن تعداد سطر ها و بعد ستون مورد نظر رو باهاش جمع کنم

    Int32 temp;
    Int32 SUM;
    temp = DataGrid.Rows.Count-1;
    for (int i = 0; i < temp; i++)
    {

    textBox1.Text=Convert.ToString( SUM + Convert.ToInt32(DataGrid[2, i].Value.ToString()));
    }


    اما با این ارور مواجه میشم .
    Use of unassigned local variable 'SUM'

  17. #17

    نقل قول: نمایش اطلاعات چند جدول به صورت مجزا درون Data Grid View

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

    Int32 temp = 0;
    Int32 SUM = 0;
    temp = DataGrid.Rows.Count - 1;
    for (int i = 0; i < temp; i++)
    {
    SUM += Convert.ToInt32(DataGrid[2, i].Value);
    }
    textBox1.Text = SUM.ToString();

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

  1. سوال: نمایش اطلاعات چند جدول در یک gridview بوسیله linq
    نوشته شده توسط omega_pc در بخش دسترسی به داده ها (ADO.Net و LINQ و ...)
    پاسخ: 0
    آخرین پست: سه شنبه 19 اردیبهشت 1391, 19:17 عصر
  2. طرز نمایش اطلاعات چند جدول با هم در یک صفحه
    نوشته شده توسط hamidhassas در بخش PHP
    پاسخ: 1
    آخرین پست: جمعه 18 فروردین 1391, 13:21 عصر
  3. نمایش اطلاعات چند جدول در یک گزارشگیری
    نوشته شده توسط omega_pc در بخش ASP.NET Web Forms
    پاسخ: 3
    آخرین پست: یک شنبه 30 بهمن 1390, 13:37 عصر
  4. مشکل در نمایش اطلاعات چند جدول در کریستال
    نوشته شده توسط saeedhushmand در بخش C#‎‎
    پاسخ: 0
    آخرین پست: دوشنبه 23 آبان 1390, 16:57 عصر
  5. نمایش اطلاعات چند جدول در DataGridView
    نوشته شده توسط sahele_sheni در بخش VB.NET
    پاسخ: 5
    آخرین پست: دوشنبه 06 آبان 1387, 10:13 صبح

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

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