PDA

View Full Version : سوال: کریستال ریپورت



izanlo
چهارشنبه 08 آذر 1391, 18:27 عصر
95738سلام دوستان
من می خوام با کریستال ریپورت یک سری کارت طراحی کنم که اطلاعاتش رو از دوتا شیت در اکسل می گیره شیت اول شامل اطلاعات پرسنل و شیت دوم شامل اطلاعات افراد تحت تکفل هست من یه دکمه رو فرمم گذاشتم که می خوام با کلیک کردن رو اون برای تک تک افراد کارت چاپ بشه یعنی تک تک رکوردهای شیت اول رو بخونه و همچنین اگه تو شیت دوم افرادی رو تحت تکفل داره اونا رو هم رو همون کارت چاپ کنه ولی نمیدونم چطوری افراد تحت تکفل رو به کارت اضافه کنم. نمونه اش رو براتون گذاشتم اگه کسی میتونه کمکم کنه.

lahiji
چهارشنبه 08 آذر 1391, 20:09 عصر
سلام

یه query بنویس که اطلاعات را از شیت اول بخونه یعنی فیلدهایی رو که نیاز داری رو select کن البته باید یه کلید Uniq در شیت اولت داشته باشی مانند کد ملی یا شماره پرسنلی یا هر چیز دیگری که فقط در شیت اول برای هر فرد یکبار ایجاد شده باشد

حالا باید relation کنی بین شیت اول با شیت دوم(تحت تکفل)
یعنی باید فیلد uniq شیت اول رو با کلید شیت دوم رابطه داشته باشه به صورت union

بعدش داخل query فیلدهای رو که از شیت دوم میخواهی رو هم انتخاب کن

تا اینجا فقط یه query ساختی که خروجی آن باید فیلدهای انتخابی از شیت اول و دومت باشه

حالا داخل کریستال یه گروپ درست کن که باید کلید انتخابی (مانند کد ملی رو ) بهش بدی
بعدش میتونی تمام فیلدهای موجود در کریستال رو پیاده سازی کنی
امید وارم توضیحاتی که دادم کارتو راه بندازه
البته اگر نتونستی query درست کنی از dataset استفاده کن راحتره چون میتونی همون دیتاست رو بیاری داخل کریستال
موفق باشی

izanlo
پنج شنبه 09 آذر 1391, 09:07 صبح
سلام
از توضیحاتتون ممنون ولی این کارو کردم چیزی رو که می خوام جواب نمیده وقتی گروپ می کنم اطلاعات افراد تحت تکفل هر کدوم تو یه صفحه میاد و پشت سرهم داخل کارت نمیاد

lahiji
جمعه 10 آذر 1391, 12:03 عصر
سلام

بفرمائید دوست عزیز

من خودم از این روش استفاده می کنم

فقط برای اینکه برنامه رو run کنی دیتا بیس رو attach کن داخل sql server

در ضمن کانکشن رو هم عوض کن من در فایل app.config کانکشن رو ست کردم

موفق باشی

izanlo
جمعه 10 آذر 1391, 14:13 عصر
سلام
دوست عزيز از اينكه مشكلمو پيگيري مي كنيد واقعا ممنونم ولي شما متوجه سوالم نشديد همونطوري كه در تصويري كه قرارداده بودم مي بينيد اطلاعات پرسنل از يك شيت دريافت و در بخش سمت چپ تصوير قرار مي گيره اطلاعاتش توي يه سطر نيست و مشكل دقيقا همينجاست اگه داخل يه سطر باشه هيچ مشكلي ندارم و مي تونم اطلاعات پرسنل و افراد تحت تكفلش رو نشون بدم ولي چون اطلاعات داخل يك سطر نيست و ارتفاع بخش Details زياد مي شه در حد 4 يا 5 سطر حالا وقتي اطلاعات افراد تحت تكفل رو كه از شيت دوم مي خونم اولين ركورد رو در اولين خط در بخش وسطي تصوير قرار ميده و ركورد دوم رو به فاصله 5 سطري كه در بخشDetails وجود داره به پايين منتقل ميكنه و در ضمن اطلاعات پرسنل رو دوباره تكرار مي كنه با اين كه گروپ هم كردم.
چيزي كه مي خوام اينه
95816


95817
95818
اما چيزي كه در گزارشم مياد اينه
95819
وقتي افراد تحت تكفل رو به گزارش اضافه نمي كنم اطلاعات پرسنل هم تكرار نميشه.راستي ديتابيسي كه گذاشتين باز نشد و من فقط تونستم از داخل ويژ‍وال گزارشتون رو ببينم ولي اجراشو نه.

lahiji
جمعه 10 آذر 1391, 14:59 عصر
علت اینکه پرسنل در صفحه دیگه می یاد گروپ نشدن اطلاعات جدول پرسنلی است
مثال :اگر کد ملی رو از جدول پرسنلی گروپ نکنی برای هر تعداد افراد تحت تکفل در جدول تحت تکفل تکرار میکنه

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

فقط فرقی که داره نوع چاپش فرق میکنه که خودت میتونی اونها را با طراحی خودت چیدمان کنی

izanlo
شنبه 11 آذر 1391, 10:05 صبح
دوست عزیزم من با جدولی که شما طراحی کردین مشکلی ندارم مشکل من همون چیدمانشه. شما اطلاعات پرسنل رو در یک سطر و اطلاعات افراد تحت تکفل رو زیر همون سطر قرار دادین من نمی خوام اینطوری باشه می خوام اطلاعات پرسنل کنار اطلاعات تحت تکفل باشه و وقتی چیدمان رو عوض می کنم بهم میریزه.

izanlo
پنج شنبه 16 آذر 1391, 22:13 عصر
دوستان یکی کمکم کنه..........