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

نام تاپیک: استفاده از فیلد های دو جدول برای نمایش در کریستال ریپورت

  1. #1

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

    دوستان عزیز من ممنون میشم منو راهنمایی کنید . ببینید من میخام که به طور مثال 3 فیلد از جدول 1 و 5 فیلد از جدول 2 به کریستال ریپورت اضافه کنم . یه دیتاست درست کردم با دو تا دیتا تیبل در داخلش که یکی از دیتاتیبل هابه جدول1 و دومی نیز به جدول 2 و حالا این کد ها رو نوشتم . (در ضمن با یک جدول مشکلی ندارم اما دو جدول رو گیر کردم.) البته من این کدی که نوشتم نمی دونم دزسته یا نه اما همینو نوشتم . در ضمن در مورد دیتاست و دیتا تیبل اصلا میشه اینکارو برای دوجدول انجام داد یا روش دیگری داره واین کارم درست نیست.
    string connectionString = String.Format(@"Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirector  y|\mydb.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True");

    using (DataSet2 DS2 = new DataSet2())
    {
    DS2.Clear();
    SqlConnection connection1 = new SqlConnection();
    using (SqlDataAdapter adapter1 = new SqlDataAdapter())
    {

    connection1.ConnectionString = connectionString;
    adapter1.SelectCommand = new SqlCommand();
    adapter1.SelectCommand.Connection = connection1;
    adapter1.SelectCommand.CommandText = "SELECT * FROM tbl1,tbl2";
    adapter1.SelectCommand.CommandType = CommandType.Text;
    adapter1.Fill(DS2, "tbl1");
    adapter1.Fill(DS2, "tbl2");
    }
    CrystalReport21.SetDataSource(DS2.Tables["tbl1"]);
    CrystalReport21.SetDataSource(DS2.Tables["tbl2"]);

    }
    crystalReportViewer1.ReportSource = CrystalReport21;

  2. #2

    نقل قول: استفاده از فیلد های دو جدول برای نمایش در کریستال ریپورت

    میشه یه کمکی کنید . در این مورد کسی اطلاعایی نداره ؟

  3. #3

    نقل قول: استفاده از فیلد های دو جدول برای نمایش در کریستال ریپورت

    کسی نبود؟..................

  4. #4
    کاربر تازه وارد
    تاریخ عضویت
    فروردین 1386
    محل زندگی
    شیراز
    سن
    39
    پست
    74

    نقل قول: استفاده از فیلد های دو جدول برای نمایش در کریستال ریپورت

    برای اینکار حتما باید اول در دیتابیس یک view کنی که فیلد های مورد نظرت (از دو جدول) رو داشته باشه.
    سپس با اون view مثل یه جدول می تونی کار کنی.

  5. #5

    نقل قول: استفاده از فیلد های دو جدول برای نمایش در کریستال ریپورت

    یعنی اینه تو فرم لود کریستال ریپورت ویور دوتا table رو select کنم . بعدا" این کد هام جواب میده . الان این کد ها درسته؟؟؟؟؟؟؟؟؟؟؟؟

  6. #6

    نقل قول: استفاده از فیلد های دو جدول برای نمایش در کریستال ریپورت

    نقل قول نوشته شده توسط hossein2007 مشاهده تاپیک
    برای اینکار حتما باید اول در دیتابیس یک view کنی که فیلد های مورد نظرت (از دو جدول) رو داشته باشه.
    سپس با اون view مثل یه جدول می تونی کار کنی.
    خب من بالا همین کارو کردم دیگه!!!!!

  7. #7
    کاربر دائمی آواتار morteza271
    تاریخ عضویت
    اسفند 1387
    محل زندگی
    مشهد
    پست
    1,723

    نقل قول: استفاده از فیلد های دو جدول برای نمایش در کریستال ریپورت

    دوست عزیز چرا در کدتون از دوتا table استفاده کردین در صورتی که کوئری شما یه جدول میده ولی شما نوشتین:
    adapter1.Fill(DS2, "tbl1");                    adapter1.Fill(DS2, "tbl2");
    }
    CrystalReport21.SetDataSource(DS2.Tables["tbl1"]);
    CrystalReport21.SetDataSource(DS2.Tables["tbl2"]);

    نتیجه کوئری شما
    adapter1.SelectCommand.CommandText = "SELECT *  FROM tbl1,tbl2";

    یه دونه جدول هست.
    با استفاده از همین کوئری(یا هر گوئری دیگه) میتونی اطلاعات رو از دو جدول به گزارشت انتقال بدی.
    موفق باشی

  8. #8

    نقل قول: استفاده از فیلد های دو جدول برای نمایش در کریستال ریپورت

    راستش نفهمیدم منظورتونو اینو میدونم که select میکنه
    adapter1.SelectCommand.CommandText = "SELECT *  FROM tbl1,tbl2";

    اما چه جوری tbl1 و tble2 رو به CrystalReport21 ست کنم . اگه میشه کدمو تغییر بدین. یه بار دیگه بگم بهتره . دوست من من تو dataset دو تا datatable دارم .
    میخام هردو رو بکشم بیرون اما
    adapter1.Fill(DS2, "tbl1");                    adapter1.Fill(DS2, "tbl2");
    }
    CrystalReport21.SetDataSource(DS2.Tables["tbl1"]);
    CrystalReport21.SetDataSource(DS2.Tables["tbl2"]);

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

  9. #9
    کاربر دائمی آواتار morteza271
    تاریخ عضویت
    اسفند 1387
    محل زندگی
    مشهد
    پست
    1,723

    نقل قول: استفاده از فیلد های دو جدول برای نمایش در کریستال ریپورت

    راستش من با کریستال کار نکردم ولی تا جایی که میدونم خیلی راحت میشه کل دیتاست رو به کریستال متصل کنی و از داخل اون میتونی جدول هاتو انتخاب کنی!بیشتر از این دیگه نمیدونم.
    توی گوگل سرچ کن آموزش کریستال زیاد هست.
    موفق باشی

    حالا من یه سوال از شما دارم:
    آیا کریستال ریپورت حالت End User داره یا نه؟

  10. #10

    نقل قول: استفاده از فیلد های دو جدول برای نمایش در کریستال ریپورت

    منظورتو از end user نفهمیدم. من کلا کار میکنم با این کریستال اینها . حالا اگه بشه end user رو تشریح کنی که ...

  11. #11
    کاربر دائمی آواتار morteza271
    تاریخ عضویت
    اسفند 1387
    محل زندگی
    مشهد
    پست
    1,723

    نقل قول: استفاده از فیلد های دو جدول برای نمایش در کریستال ریپورت

    یعنی اینکه تهیه گزارش رو بسپاری دست کاربری که از برنامه استفاده میکنه.
    یعنی خودم یه صفحه گزارش درست کنم و وقتی کاربر یه دکمه رو میزنه اونه صفحه رو باز کنه و کاربر بتونه تغییرش بده و سپس چاپش کنه،همین.
    میشه یا نه؟

  12. #12

    نقل قول: استفاده از فیلد های دو جدول برای نمایش در کریستال ریپورت

    منظورت اینه که تعداد فیلد مثل id ,name ,family رو پیش فرض داری و میخای کاربر پیش فرض اینو داشته باشه و اگه دوست داشت name,family رو پرینت بگیره؟ مثلا" دیگه id رو دیگه پرینت نگیره

  13. #13

    نقل قول: استفاده از فیلد های دو جدول برای نمایش در کریستال ریپورت

    بچه کسی نتونست کمکی بهم کنه؟

  14. #14

    نقل قول: استفاده از فیلد های دو جدول برای نمایش در کریستال ریپورت

    دوست عزیز باید در دستور select ای که نوشتی نام فیلد های مورد نظر جدول 1 و جدول 2 را هم می نوشتی
    مثل دستور زیر
    "SELECT tbl1.name,tbl1.family,tbl2.code, tbl2.name,tbl2.tedad,tbl2.vazn,tbl2.ghemat FROM tbl1 CROSS JOIN tbl2"
    موفق باشی

  15. #15

    نقل قول: استفاده از فیلد های دو جدول برای نمایش در کریستال ریپورت

    دوست عزیز میشه یه نمونه کار بهم بدین این موضوع حل بشو نیست فکر کنم

  16. #16

    نقل قول: استفاده از فیلد های دو جدول برای نمایش در کریستال ریپورت

    سلام دوست من،
    شما اول بیا و دقیق بگو میخوای چی نشون بدی.
    یعنی نمونه اطلاعاتی که داخل هر کدوم از جداولت هست رو بنویس. بعد رو یه کاغذ یه شکل از گزارشت بکش که دقیقا چی میخوای. بعد بهت میگم چیکار کنی.
    در مورد کدی که نوشتی یه توضیح کوچیک میدم. ببین دوست من، وقتی که یه دونه Select نوشتی، حالا توش ۲ تا جدول رو inner join کردی یا ۱۰۰ تا رو فرق نمیکنه، خروجی این دستور یه جدوله با ترکیبی از ستونهای جداولی که داخل Select آوردی.
    بنابراین اونجا که دو تا table رو با dataadapter پر کردی اشتباهه. در واقع در عمل هر دو تا جدول یکیه محتواشون. بنابراین فقط یه دونه datatable رو پر کنی کافیه و نیاز به دو تا نیست. البته باید توضیح بدم که یه راه دیگه هم هست که به جای اینکه اینجا Inner join کنی، میتونستی دو تا دستور select بنویسی که هر کدوم فقط یکی از دو تا table رو select کنه اونوقت باید هر کدوم از select ها رو برمیداشتی میریختی داخل یه datatable جدا.
    اینکه از کدوم روش استفاده کنی بستگی به شرایط داره. که اون رو هم اول باید کاری که تو خط اول گفتم انجام بدی. بنابراین فعلا اینارو ولش کن. برگرد سر اون خط اول که بهت گفتم. هر وقت کشیدیش بیا اینجا توضیح بده که میخوای باهاش چیکار کنی.
    موفق باشی

  17. #17

    نقل قول: استفاده از فیلد های دو جدول برای نمایش در کریستال ریپورت

    ببینید من دو تا جدول دارم که هر کدوم 3 تا فیلد دارن تو هر کدوم از این دو جدول یک فیلد داریم که بهم Relation شدن و کلید خارجی هستن . به طو مثال فیلد IdCode nدر جدول1 با IdCode در جدول2 . حالا میخام یه جوری quqery بنویسم که اطلاعات دو جدول رو با در نظر گرفتن این فیلد خارجی که دو تا جدول رو بهم ربط داده مقدارهای هر دو جدول رو بکشم بیرون و تو کریستال ریپورت نشون بدم . این کل کاریه که من میخام بکنم .
    از شما ممنونم دوست عزیز که تو جه کردین

  18. #18
    کاربر تازه وارد
    تاریخ عضویت
    فروردین 1386
    محل زندگی
    شیراز
    سن
    39
    پست
    74

    نقل قول: استفاده از فیلد های دو جدول برای نمایش در کریستال ریپورت

    نقل قول نوشته شده توسط RIG000 مشاهده تاپیک
    یعنی اینه تو فرم لود کریستال ریپورت ویور دوتا table رو select کنم . بعدا" این کد هام جواب میده . الان این کد ها درسته؟؟؟؟؟؟؟؟؟؟؟؟
    دوست عزیز منظورم اینه که توی محیط sql server یک view کن.(زیر همون جایی که Table ها رو می سازی)

  19. #19

    نقل قول: استفاده از فیلد های دو جدول برای نمایش در کریستال ریپورت

    یچه ها من نتونستم دو تا جدول رو باهم اخرش تو Crystal نشون بدم . اخرش یه نمونه گذاشتم که کار هاش انجام شده فقط دوستان کسی می تونه این قسمتش رو تنظیم کنه . ممنون میشم . هر جور relation زدم نشد تدو table رو تو یه table ریختم بیش از اندازه نشون داد . اگه میشه کمک کنید. مرسی
    فایل های ضمیمه فایل های ضمیمه

  20. #20

    نقل قول: استفاده از فیلد های دو جدول برای نمایش در کریستال ریپورت

    کسی نبود کمک کنه ؟

  21. #21

    نقل قول: استفاده از فیلد های دو جدول برای نمایش در کریستال ریپورت


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

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