PDA

View Full Version : سوال: تیک خوردن چند چک باکس در گزارش با توجه به مقدار یک فیلد



hasanr
سه شنبه 10 فروردین 1389, 11:43 صبح
سوال اصلی :
فیلدی از جدول توسط یک کمبو باکس ( یا option group )مقدار می گیرد ( خوب - متوسط - ضعیف ) اما در گزارش گیری سه چک باکس وجود دارد که بسته به مقدار فیلد باید یکی از آنها تیک بخورد . بهترین روش چیست ؟

(از مدیران محترم خواهشمندم برای بهسازی فروم بعد از پیدا شدن جواب مناسب عبارت ((سوال)) را از عنوان تاپیک حذف نمایند .)


======== پست بعدی ========
برای دومی یه راه پیدا کردم : کمبو باکس به فیلد مقدار بدهد و در گزارش گیری چک باکس غیرمتصل به کمبو را 3 بار تکرار کنیم و سپس با بررسی مقدار کمبو باکس،هریک از چک باکسها را که مربوط به مقدار مورد نظر است تیک بزنیم . نظرتون چیه ؟؟ راه بهتری هست ؟؟


سوال فرعی :
چگونه می توان مقدار انتخاب شده توسط Combobox ، یا radio button انتخاب شده در یک option button را به طور مستقیم در فیلد یا فیلدهایی از جدول قرار داد ؟

به نظرم می توان در رویداد Lost focus یا click با اجرای یک query مقدار را در table وارد کرد
(به این پست (http://barnamenevis.org/showpost.php?p=481494&postcount=33) آقای قربانی نگاه کنید)
یا اینکه ؛ توسط Combobox ، یا option button ، تکست باکس را کنترل کرد و تکست باکس ، فیلد مربوطه را کنترل کند
آیا روش منطقی تر و توسط کد نویسی (به ویژه جهت درج در چند فیلد) وجود دارد ؟

dadsara
شنبه 14 فروردین 1389, 09:49 صبح
سلام

چگونه می توان مقدار انتخاب شده توسط Combobox ، یا radio button انتخاب شده در یک option button را به طور مستقیم در فیلد یا فیلدهایی از جدول قرار داد ؟

همین کاری که در نمونه انجام داده اید درست است
دوست عزیز در ریپورت شما می توانید تنها گزارشات را مشاهده نمائید نه اینکه آنرا تغییر دهید ، علی ایحال یک نمونه گزارش باتوجه به نمونه جنابعالی ایجاد و پیوست گردید

hasanr
شنبه 14 فروردین 1389, 13:36 عصر
سلام و ممنون بابت زحمتتون
× عنوان قبلی تاپیک مناسب تر بود چون هدف اصلی سوال دوم بوده است و ضمنا سوال اول در مورد درج مقدار یک کمبو باکس در چند فیلد مختلف بوده ( با توجه به مقدار کمبو باکس ) که به نظرم می شود با if های مختلف یا دستور case آنرا تکمیل تر کرد .
دوست من ، من نمیخواهم در گزارش چیزی را تغییر بدهم . فقط میخواهم که اگر فیلد مشخصه اول مثلا ((خوب)) بود چک باکس 1 تیک بخورد و اگر مقدار فیلد مشخصه اول ((متوسط)) بود چک باکس دوم و ... (در زمینه ای مشابه این تاپیک (http://barnamenevis.org/forum/showthread.php?t=170048) وجود دارد )
× در زیر عبارت == پست بعدی == راه حلی را که به ذهنم می رسه نوشتم ، اگر ممکنه بزرگواری کنید و تصحیحش کنید یا کد رو بنویسید
×چون ممکنه هنوز منظورم رو درست بیان نکردم نمونه موجود در پست 1 رو با نمونه جدیدتر که رساتر باشه عوض کردم .
بازم هم ممنونم

mehdi_fiz
یک شنبه 15 فروردین 1389, 01:05 صبح
سلام دوست عزيز
نمونه فايل شما اصلاح شد
موفق باشيد

مهدی قربانی
یک شنبه 15 فروردین 1389, 15:52 عصر
سلام
گزارش موجود در نمونه و كد نويسي در رخداد On Format اون رو بررسي كنيد .

hasanr
یک شنبه 12 اردیبهشت 1389, 01:27 صبح
سلام راه حلهای ارایه شده در 2 پست قبل به ویژه پست 5 کاملا راهگشا بودند ضمن تشکر از دوستان ؛
به یک مشکل جدید و به نظرم اساسی برخورد کردم که امیدوارم باز هم دوستان در صورت امکان کمک کنند
درنمونه ای که ضمیمه شده در مورد تیک خوردن چک باکسهای متفاوت مشکلی نیست اما وقتی که مقادیر فیلد رنگ باید از جدول دیگری انتخاب شوند به هیچ شکل نمی شود در گزارش چک باکس ها را تیک زد ( یا تکست باکس را با × پر نمود) مگر اینکه در هنگام مقایسه از شماره فیلد یا همان ID استفاده کرد که متاسفانه در نمونه بنده چون کاربر میتواند رنگها را اضافه کند ( با استفاده ار رویداد Not in list) ، به بن بست خورده ام و تقاضای کمک دارم
ممنون

مهدی قربانی
یک شنبه 12 اردیبهشت 1389, 09:29 صبح
سلام
شما در Select case درست عمل نكرده بوديد ، به كدهاي اصلاح شده توجه و با نمونه قبلي مقايسه كنيد تا متوجه مغايرتها بشيد .

hasanr
دوشنبه 13 اردیبهشت 1389, 01:08 صبح
سلام و با تشکر از پاسخ سریع شما
دوست من تو ضمیمه شما دو فایل وجود داشت که هر چه فکر کردم متوجه نشدم چرا فایل nemone را هم ارسال کردین .جالب اینکه این فایل در پست 4 توسط دوست دیگری ارسال شده بود !!! و جنابعالی در پست 5 از select case استفاده کرده بودین که من هم از روش شما استفاده کردم
در هر صورت در فایل Nemone5 مشکل درج رنگ غیره ، در گزارش کاملا حل شده و از این بابت ممنونم :

Case Else
Me.Text31 = " "
Me.Text32 = " "
Me.Text33 = Me.Rang.Column(1)

اما همانطور که گفتم مشکل اصلی اینه که جستجو بر اساس نام رنگ ها ممکن نیست و مستحضرید که کاربر درفرم جستجو باید از نام رنگ استفاده کنه و نه از کد رنگ یا همون ID جدول رنگ ها به عبارت دیگه میخام کاربران امکان سرچ رکوردها رو بر اساس رنگ داشته باشند .
(اگه راهی باشه که کاربر مقدار رنگ رو وارد کنه و کوئری نتیجه جستجوی کد رنگ رو برگردونه مشکل حل میشه به شرطی که توجه داشته باشیم که تعداد رنگها ثابت نیست و به کاربر امکان اضافه کردن رنگهای دیگه هم داده شده )

به فایل اصلاحی شما فرمی برای جستجو اضافه کردم لطفا اگر ممکنه بررسی بفرمایید

مهدی قربانی
دوشنبه 13 اردیبهشت 1389, 08:03 صبح
سلام
در مورد 2 نمونه كه اشاره كرديد احتمالاً در زمان rar‌كردن نمونه 5 دو فايل با هم انتخاب شده بوده .
علت عدم برگردوندن ركورد در جستجو بوسيله كامبو رنگ هم مشكل بر ميگرده به اينكه جنس فيلد رنگ شما Number‌هست و طبيعيه كه نمي تونه با رشته يا همون عنوان رنگ همخواني داشته باشه مقدار قابل جستجوي شما در اصل بايد كد رنگ باشه تا نتيجه صحيح رو برگردونه بنابراين من كامبو رنگ رو تغييراتي دادم تا عليرغم حفظ ظاهر يعني نمايش عنوان رنگها در اصل كد رنگها براي جستجو لحاظ بشه .

hasanr
دوشنبه 13 اردیبهشت 1389, 09:00 صبح
سلام و با تشکر صمیمانه
جناب قربانی خدایی آخرشی :تشویق::تشویق::تشویق:
راستش دیشب حدودا 1 ساعت بعد از ارسال اون پست ، درست با همین روش شما به جواب رسیدم و تصمیم داشتم صبح اول وقت! برای اطلاع دیگر دوستان نتیجه رو بنویسم که سحر خیز بودن و سرعت بالای شما در حل مشکل واقعا غافلگیرم کرد :متعجب::متعجب:

توضیح اینکه در برگه فیلد مشخصات کمبو رنگ تغییراتی انجام شده است