PDA

View Full Version : مشکل DataGrid بازم



gh_fereydonpoor
یک شنبه 21 فروردین 1384, 19:38 عصر
سلام به همه دوستان
ما در پروژه مون به یک جا رسیدیم که قراره اطلاعات بیماران و اطلاعات جواب هر آزمایش وارد شود .
حالا تعداد آزمایشها هر دفعه متغیر است و برای بعضی از آنها نباید مقدار وارد شود چون بیمار آنها را ندارد جال من چگونه باید فیلدهای datagrid رو نصبت به تعداد آزمایشها متغیر تعریف کنم و چگونه امکان Edit رو از بعضی از Column های یک Row بگیرم ؟ و ....

M.GhanaatPisheh
یک شنبه 21 فروردین 1384, 23:52 عصر
من فکر می کنم شما توی طراحی پایگاه داده اشتباه کردید.
لطف کنید بیشتر توضیح بدید.

gh_fereydonpoor
دوشنبه 22 فروردین 1384, 06:56 صبح
سلام
من چندین Table دارم مثل بیمار - پذیرش - لیست آزمایشها - آزمایش پذیرش که این آخری دارای فیلدهای شماره پذیرش و شماره آزمایش و جواب آزمایش است. حال اگر بیماری پذیرش شود به ازای هر آزمایش او باید یک رکورد در این جدول داشته باشد. و از جدول است که بقیه Joinها تولید می شوند.
نمی دونم توضیحم کامل بود یا نه.

روح اله معینی زاده
دوشنبه 22 فروردین 1384, 11:56 صبح
سلام خدمت دوست گرامی

شما ببینید آیا می توانید کلیه‌ی آزمایش‌هایی رو که ممکن است روی یک بیمار صورت گیرد، در بانک اطلاعاتی و در یک جدول بیاورید یا نه؟ شاید هم با یک تقسیم بندی بتوان تمام آزمایش‌هایی رو که روی یک بیمار در بخش خاصی می شود را در یک جدول آورد و برای هر بخش جدولی جدا داشته باشید.

سپس اگر یک جدول بود که راحت است و همه در یک گرید می آید (پیش فرض همه‌ی مقادیر جدول رو روی همان کلمه‌ای که خودتان در عکس گفته‌اید «ندارد» بگذارید تا در صورتی که نیاز نیست کاربر مجبور به پر کردن خانه‌ها نشود)

اگر هم چند جدول درست شد که می توانید از قبل نام مثلا بخش رو انتخاب کنید و سپس با توجه به انتخاب کاربر جدول رو صدا بزنید و تمام.

ببخشید اگر راهنمایی من هیچ تاثیر به حال شما نداره :cry: :oops:

با احترام- خدانگهدار

M.GhanaatPisheh
دوشنبه 22 فروردین 1384, 12:01 عصر
اگر یه تصویر از ساختار DataBase و اینجا بذاری می شه مشکل رو پیدا کرد.
آزمایش رو به عنوان یه Entity در نظر گرفتید؟
با توجه به تصویر بالا مشخصه که Redandancy خیلی بالاست شکل زیر رو ببین.

M.GhanaatPisheh
دوشنبه 22 فروردین 1384, 12:03 عصر
توجه کنید که با یک Join ساده می تونید هر اطلاعاتی که خواستید از جداول استخراج کنید.
اون مشکلی رو هم که ذکر کردید دیگه پیش نمیاد.

gh_fereydonpoor
دوشنبه 22 فروردین 1384, 12:53 عصر
سلام به دوستان
مرسی از راهنمایی های تان
بله دقیقا ساختار بانک به همین صورت است که ذکر شده است ولی مشکل من این است که در یک سمت باید لیست آزمایشها آورده شود و در طرف دیگر باید لیست بیماران
و برای هر انتخاب باید این آزمایشها تغییر کند بنابراین Column ها نیز تغییر می کند.

M.GhanaatPisheh
دوشنبه 22 فروردین 1384, 21:02 عصر
یعنی باید حتما گزارش به این شکل باشه که جلوی اسم هر بیمار کل آزمایشاش مشخص بشه؟(توی همون سطر؟)
آخه مساله اینجاست که ممکنه n تا آزمایش وجود داشته باشه.
این نحوه نمایش اطلاعات که منطقی نیست دوست من.

gh_fereydonpoor
دوشنبه 22 فروردین 1384, 21:17 عصر
بله مانند Exel البته من با بدبختی تونستم این کارو بکنم
روش کار هم اینه که با درست کردن Dataset بصورت دستی و پر کردن آن از اطلاعات حقیقی و اضافه کردن TableStyle در RunTime این رو حل کردم و فعلا مشکلم در UpDate کردن اطلاعات هست که اون رو هم فردا در حال برسی هستم.

M.GhanaatPisheh
دوشنبه 22 فروردین 1384, 21:20 عصر
شاید استفاده از Grid و DataSet به صورت Master/Detail هم بی فایده نباشه.

gh_fereydonpoor
دوشنبه 22 فروردین 1384, 21:23 عصر
مرسی نه اینا همه اطلاعات مریض رو با هم وارد می کنند و اون قضیه پیچیده می شه

gh_fereydonpoor
دوشنبه 22 فروردین 1384, 21:26 عصر
سوال دیگه
چطوری می شه که بعضی از Column های یک Row خاص Editable نباشند و در Row دیگه باشند؟
چطوری می شه رنگ Backcolor یک Column خاص از Row حاص رو عوض کرد بدون استفاده از inherit از Datagridtextbox Column

M.GhanaatPisheh
سه شنبه 23 فروردین 1384, 01:42 صبح
چطوری می شه که بعضی از Column های یک Row خاص Editable نباشند و در Row دیگه باشند؟
راهی سراغ ندارم
البته بعید هم نمی دونم بشه این کار رو کرد.


چطوری می شه رنگ Backcolor یک Column خاص از Row حاص رو عوض کرد بدون استفاده از inherit از Datagridtextbox Column
یه مقدار باید کد بنویسی
لینک زیر رو ببین ایده بگیر :
http://www.windowsforms.net/Forums/ShowPost.aspx?tabIndex=1&tabId=41&PostID=2652
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnwinforms/html/wnf_CustDataGrid.asp
http://www.syncfusion.com/FAQ/WinForms/FAQ_c44c.asp

M.GhanaatPisheh
سه شنبه 23 فروردین 1384, 01:56 صبح
http://www.dotnet247.com/247reference/articles/1/8355.aspx

gh_fereydonpoor
سه شنبه 23 فروردین 1384, 06:37 صبح
ممنون از لینکها تون
ولی این ها رو قبلا دیدم تقریبا خوب هستند ولی اون کاری رو که من می خواهم انجام نمی دهند.
باز هم ممنون مرسی

M.GhanaatPisheh
سه شنبه 23 فروردین 1384, 10:43 صبح
دوست عزیزم
دقیقا می خواید چیکار کنید؟
می شه واضح بیان کنید؟