View Full Version : و باز هم Countinus Form ها
ryonis
چهارشنبه 18 خرداد 1390, 11:42 صبح
سلام دوستان و اساتيد عزيز...:تشویق:
اين مشكل ، مدتهاست عذابم ميده :عصبانی++:و انواع و اقسام راه ها رو رفتم. اما نشد كه نشد! :گریه:
فرض بفرماييد در يك فرم، نتيجه يك جستجو، به صورت سابفرم نمايش بشه. مي خواهم برخي از ركوردهاي نمايش شده در سابفرم رو به روشي انتخاب كنم و مطابق نظر كاربر، در يك جدول (table) ديگه كپي كنم.
مثلا كنار هر ركورد يك chechbox باشه كه كاربر براي انتخاب ركوردهاي موردنظرش و كپي در يك جدول ديگر رو چك باكس هر ركورد كليك كنه.
اگه سوالم هنوز گنگه :افسرده:، اجازه بديد ساده تر عرض كنم : در يك فرم Countinus چه جوري مي تونم از يك checkbox براي هر ركورد استفاده كنم. چرا كه با كليك بر هر چك باكس، تمامي چك باكس ها كليك ميخوره!!:متعجب:
:متفکر::متفکر:
مهدی قربانی
چهارشنبه 18 خرداد 1390, 12:29 عصر
سلام
مي تونيد در جدولي كه سابفرم شما به اون باند شده يك فيلد چك باكس قرار بديد كه اين بدلكاري رو انجام بده به اين ترتيب كه بعد از چك زدن چك باكس ركوردهاي انتخابي و انجام عمليات مورد نظر شما در نهايت با يك دستور مجدداً چك باكسها Reset شوند .
ryonis
شنبه 21 خرداد 1390, 09:05 صبح
سلام
مي تونيد در جدولي كه سابفرم شما به اون باند شده يك فيلد چك باكس قرار بديد كه اين بدلكاري رو انجام بده به اين ترتيب كه بعد از چك زدن چك باكس ركوردهاي انتخابي و انجام عمليات مورد نظر شما در نهايت با يك دستور مجدداً چك باكسها Reset شوند .
سلام مهدي جان. ميشه يه مقدار بيشتر توضيح بدي؟ منظورت اينه كه هر ركوردي كه تيك خورد رو تگ كنم و دوباره برگردم منتظر ركورد بعدي؟
مهدی قربانی
شنبه 21 خرداد 1390, 11:04 صبح
سلام
چنانچه نتايج نمايش داده شده در سابفرم حاصل يك جستجو يا فيلتر باشه شما يك تعداد ركورد داريد كه مي خواين تعدادي رو از اين مجموعه انتخاب كنيد و يك عملياتي رو روي اونها انجام بديد بنابراين اگر در جدولي كه سابفرم مورد نظر رو به اون باند كرديد يك فيلد Yes/No ايجاد كنيد مي تونيد در آن واحد هر تعداد ركورد مورد نظر رو در سابفرم انتخاب و عمليات رو به صورت يكجا با استفاده از حلقه يا هر روش مناسب انجام و بعد همون تعداد انتخاب شده (True) رو از حالت انتخاب خارج كنيد بازم تاكيد مي كنم بصورت گروهي و يكجا نه تك تك . البته روش ديگه اي هم متصوره و اون استفاده از ليست باكس بجاي سابفرم هست كه باز به شما قابليت Multi Select رو ميده .
ARData
شنبه 21 خرداد 1390, 12:18 عصر
دوست عزيز شما در جدولي که مربوط به اين سابفرم ميشه يک فيلد با فرمت yes no ايجاد مي کنيد و کنترل سورس فيلد تيک سابفرمتونو اين فيلد قرار مي ديد . بنابر اين در هر فيلدي که که تيک مي زنين همون فيلد تيک خورده و فيلدهاي ديگه بدون تيک باقي مي مونن . و چون گزارشتونو بر اساس فيلهاي تيک خورده فيلتر کرده ايد بنابراين به هدفتون خواهيد رسيد ...
ryonis
دوشنبه 23 خرداد 1390, 11:30 صبح
دوست عزيز شما در جدولي که مربوط به اين سابفرم ميشه يک فيلد با فرمت yes no ايجاد مي کنيد و کنترل سورس فيلد تيک سابفرمتونو اين فيلد قرار مي ديد . بنابر اين در هر فيلدي که که تيک مي زنين همون فيلد تيک خورده و فيلدهاي ديگه بدون تيک باقي مي مونن . و چون گزارشتونو بر اساس فيلهاي تيک خورده فيلتر کرده ايد بنابراين به هدفتون خواهيد رسيد ...
اولاً كه واقعاً از پاسخگويي تون ممنونم. دوماً درخصوص راهنمايي خوب تون، بفرماييد كه اگه سابفرم نتيجه يك كوئري باشه چه كنم؟ به انتهاي كوئري ايجادكننده سابفرم، يك ستون YES/NO ايجاد كردم و روي فرم يك checkbox مرتبط با اون هم اضافه كرده ام . اما نتيجه هماني شد كه در شكل بالاتر ديديد.
ARData
دوشنبه 23 خرداد 1390, 16:57 عصر
شما کيوئري رو در حالت طراحي باز کنيد و فيلدي را که در اين جدول تعريف نموده ايد در اين کيوئري نيز پياده نماييد يعني با دابل کليک بر روي نام فيلد ايجاد شده در جدول موجود در اين کيوئري ، فيلد را در کيوئري پياده نماييد تا در سابفرم مربوطه نيز لينک شود ...
mehdi_fiz
دوشنبه 23 خرداد 1390, 18:16 عصر
سلام دوست عزیز
نمونه فایلتون رو بذارید تا دوستان بهتر راهنمایی تون کنند
موفق باشید
mazoolagh
دوشنبه 23 خرداد 1390, 21:12 عصر
اولاً كه واقعاً از پاسخگويي تون ممنونم. دوماً درخصوص راهنمايي خوب تون، بفرماييد كه اگه سابفرم نتيجه يك كوئري باشه چه كنم؟ به انتهاي كوئري ايجادكننده سابفرم، يك ستون YES/NO ايجاد كردم و روي فرم يك checkbox مرتبط با اون هم اضافه كرده ام . اما نتيجه هماني شد كه در شكل بالاتر ديديد.
ببینین در کل اگر در یک فرم پیوسته فیلد unbound داشته باشین مشکل همین هست که باهاش مواجه شدین - و همونطور که دوستان راهنمایی کردن با اضافه کردن فیلد موردنظرتون به جدول در واقع مشکل unbound رو برطرف میکنین.
حالا اگر recordsource شما یک query هست مشکلی نیست ولی باز هم باید فیلد مورد نظر رو از جدول بیاره یعنی bound باشه و گرنه داستان همین هست.
ryonis
سه شنبه 24 خرداد 1390, 13:46 عصر
سلام دوست عزیز
نمونه فایلتون رو بذارید تا دوستان بهتر راهنمایی تون کنند
موفق باشید
چشم، اينم يه نمونه ساده. ممنون ميشم
ARData
سه شنبه 24 خرداد 1390, 14:10 عصر
فايل اصلاح شده طبق اظهارات اين تايپيک و ايجاد فيلد CheckReport در جدول مربوطه به حضورتان تقديم مي شود ...
http://ardata.persiangig.com/db1%20Revision.rar
ryonis
چهارشنبه 25 خرداد 1390, 08:10 صبح
فايل اصلاح شده طبق اظهارات اين تايپيک و ايجاد فيلد CheckReport در جدول مربوطه به حضورتان تقديم مي شود ...
بسيار متشكرم. خيلي ممنون. متوجه فرمايشات قبلي تان شدم. اما احتمالاً مشكل بعدي من، عدم امكان افزودن فيلد جديد به table است. در اينصورت راه حلي وجود خواهد داشت؟
ryonis
شنبه 28 خرداد 1390, 08:12 صبح
در صورتي كه نخواهيم به جدول مورد نظر فيلدي بيافزاييم آيا راه حلي وجود دارد دوستان؟ مثلا يك table واسطه يا temporary يا ...؟:متفکر:
ryonis
دوشنبه 30 خرداد 1390, 10:01 صبح
در صورتي كه نخواهيم به جدول مورد نظر فيلدي بيافزاييم آيا راه حلي وجود دارد دوستان؟ مثلا يك table واسطه يا temporary يا ...؟:متفکر:
? چه كنم؟ به نظر اساتيد، اگه يك جدول مياني (temp) ايجاد كنم كه فيلد موردنظر در آن اضافه بشه مشكل حل ميشه؟
mazoolagh
دوشنبه 30 خرداد 1390, 22:25 عصر
بله
کافی هست که این فیلد(ها) به یک فیلد جدول bound باشن. حالا مهم نیست که این جدول چگونه ایجاد شده.
اگر به هر دلیل نمیتونین طراحی جدول اصلی رو تغییر بدین اون رو به یک اسم دیگه ذخیره (فقط جدول و نه دیتا) و فیلد(های) مورد نظر رو به جدول جدید اضافه کنین.
در برنامه تون قبل از باز شدن فرم، نخست رکوردهای جدول جدید رو حذف و با یک query رکوردهای مورد نظر رو بهش کپی کنین. البته اندکی overhead خواهید داشت که ظاهرا گریزی ندارین.
-----------------
یک مشکل اکسس همین هست که چیزی مثل dataset نداره و همین هست که در مواردی مثل این ایجاد مشکل میکنه.
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.