PDA

View Full Version : گروه بندی در DBGrid Ehlib



hadisalahi2
دوشنبه 01 شهریور 1389, 11:28 صبح
با سلام به همه دوستان.
من قصد استفاده از امکانات گروهبندی در کامپوننت گرید Ehlib رو دارم.
از داخل دمو ها نحوه گروهبندی با جداول رو یاد گرفتم ولی متاسفانه مثالی برای گروهبندی با AdoQuey نداره.من خودم سعی کردم این کار رو انجام بدم ولی متاسفانه چند تا خطا میده.
اگه دوستان در این مورد اطلاعاتی دارند ممنون میشم در اختیار قرار بدن
یا حق

nice boy
دوشنبه 01 شهریور 1389, 18:48 عصر
من هم از adoDataset و هم از AdoQuery با این کامپوننت استفاده کردم و مشکلی نداشتم
شما باید روی TMemTableEhb دابل کلیک کنید و Assign Local data رو به یک AdoQuery وصل کنید

hadisalahi2
سه شنبه 02 شهریور 1389, 13:48 عصر
با تشکر میشه یک نمونه برنامه برام بزارید ممنون میشم
یا حق

hadisalahi2
سه شنبه 02 شهریور 1389, 14:26 عصر
در ضمن من در ارتباط با Adoquery با MemTable مشکلی ندارم ولی مشکل اینجاست که هنگامی که دستورات SQl رو تغییر میدم خروجی اون روی Grid تاثیر نمی گذاره. به عنوان مثال اگه اول هنگام ارتباط کل فیلدها جدول رو Select کردم و حالا توی برنامه فقط دو تا فیلد رو Select کنم ، بازهم توی Grid همون خروجی قبلی نمایش داده میشه.
در صورتی که گروه بندی انجام نشده باشه با Close کردن و مجددا باز کردن Memtabel خروجی اس کیو ال در گرید دیده میشه ولی هنگامی که گروهبندی اعمال شده باشه پیغام خطای زیر رو میده

hadisalahi2
جمعه 05 شهریور 1389, 13:39 عصر
دوستان هیچ کس با Ehlib گروه بندی نکرده؟

maddahi.m.p
شنبه 06 شهریور 1389, 18:24 عصر
با سلام
گروه بندی با ehlib بسیار ساده است البته فقط مشکل راست به چپ دارد که میشه اونم حل کرد البته نمونه کد هواستید بزارم براتون .

ضمنا شما با کدام ورژن کار می کنید ؟

khoshblagh
یک شنبه 07 شهریور 1389, 08:22 صبح
با سلام
گروه بندی با ehlib بسیار ساده است البته فقط مشکل راست به چپ دارد که میشه اونم حل کرد البته نمونه کد هواستید بزارم براتون .

ضمنا شما با کدام ورژن کار می کنید ؟
ممنون میشوم نمونه کد برای استفاده قرار بدهید. متشکرم

nice boy
یک شنبه 07 شهریور 1389, 19:11 عصر
در ضمن من در ارتباط با Adoquery با MemTable مشکلی ندارم ولی مشکل اینجاست که هنگامی که دستورات SQl رو تغییر میدم خروجی اون روی Grid تاثیر نمی گذاره. به عنوان مثال اگه اول هنگام ارتباط کل فیلدها جدول رو Select کردم و حالا توی برنامه فقط دو تا فیلد رو Select کنم ، بازهم توی Grid همون خروجی قبلی نمایش داده میشه.
در صورتی که گروه بندی انجام نشده باشه با Close کردن و مجددا باز کردن Memtabel خروجی اس کیو ال در گرید دیده میشه ولی هنگامی که گروهبندی اعمال شده باشه پیغام خطای زیر رو میده
تا اونجایی که من فهمیدم MemTable داده ها رو به صورت Cache شده نمایش میده در نتیجه اگه Query شما تغییر کنه روی گرید تاثیری نداره جهت رفع این مشکل از یک DataSetDriverEh استفاده کنید.
ابتدا خاصیت Provider Dataset رو به Adoquery وصل کنید بعد خاصیت DataDriver مربوط به MemTable رو به Provider وصل کنید. تا این مشکل حل بشه.

hadisalahi2
دوشنبه 08 شهریور 1389, 11:44 صبح
میشه لطف کنید یک نمونه پروژه اینجا قرار بدید؟

nice boy
دوشنبه 08 شهریور 1389, 21:16 عصر
میشه لطف کنید یک نمونه پروژه اینجا قرار بدید؟
این نمونه رو ببینید

hadisalahi2
سه شنبه 09 شهریور 1389, 13:05 عصر
دوست عزیز برنامه ای که شما فرستادید بازهم همون مشکل رو داره.
اگه موقعی که Grid در حالت گروهبندی قرار داره اگه دستور Select رو تغییر بدی بازهم همون پیام خطا رو میده و دیگه نمیشه با پروژه کار کرد.
آیا در کامپیوتر شما گروهبندی با تغییر دستورات Sql هنوز هم کار میکنه؟

nice boy
سه شنبه 09 شهریور 1389, 20:50 عصر
شما گفتید موقعی که دستورات رو اجرا می کنید گرید Refresh نمیشه

مشکل اینجاست که هنگامی که دستورات SQl رو تغییر میدم خروجی اون روی Grid تاثیر نمی گذاره.من هم نمونه رو به این خاطر گذاشتم :لبخندساده:
اما در مورد مشکلی که با گروهبندی داره باید بگم به نظر من طبیعیه وقتی شما مثلا داده ها رو با فیلد Name گرهبندی کردید و بعد دستور رو عوض می کنید و در Query جدید دیگه این فیلد وجود نداره خوب باید هم خطا بده.
البته من فرصت نکردم سورس کامپوننت رو ببینم شاید راه حلی براش باشه یا می تونید این مورد رو به عنوان یه Bug به تولید کنندش اعلام کنید تا برطرفش کنه. :متفکر:
قبلا من ایرادی در حالت RighttoLeft دیدم و گزارش کردم که رفع شد

hadisalahi2
پنج شنبه 11 شهریور 1389, 11:59 صبح
یک سوال جدید دیگه برام پیش اومده میخواستم بدونم شما میتونید جوابش بدید؟
هنگامی که در حالت Design من گروهبندی رو اعمال میکنم، به صورت صحیح در حالت طراحی نمایش میده اما وقتی برنامه رو اجرا میکنم، حالت گروهبندی فعال نیست و باید اون پنل گروهبندی رو ظاهر کنم تا کاربر با کشیدن فیلد بتونه گروهبندی رو عوض کنه.
چطوری میشه این حالت رو هنگام اجرا هم فعال کرد.
در ضمن چطوری از طریق کد نویسی ، ذگروهبندی رو عوض کنم؟
در ضمن شما میدونی چطوری میشه اون متن پنل گروهبندی را فارسی کرد؟
یا حق

hadisalahi2
شنبه 13 شهریور 1389, 09:11 صبح
جناب nice boy (http://barnamenevis.org/forum/member.php?u=48568) من منتظر نظرات ارزشمند شما هستم
یا حق

nice boy
یک شنبه 14 شهریور 1389, 21:52 عصر
جناب nice boy (http://barnamenevis.org/forum/member.php?u=48568) من منتظر نظرات ارزشمند شما هستم
یا حق
شما لطف دارید


چطوری میشه این حالت رو هنگام اجرا هم فعال کرد.
در ضمن چطوری از طریق کد نویسی ، ذگروهبندی رو عوض کنم؟

DBGridEh1.DataGrouping.GroupLevels.Add.Column:=DBG ridEh1.Columns[1];

hadisalahi2
دوشنبه 15 شهریور 1389, 14:44 عصر
در مورد تغییر عنوان پانل گروهبندی به فارسی اطلاعی ندارید؟
یا حق

nice boy
دوشنبه 15 شهریور 1389, 22:44 عصر
در مورد تغییر عنوان پانل گروهبندی به فارسی اطلاعی ندارید؟
یا حق
متاسفانه در این مورد اطلاعی ندارم

maddahi.m.p
سه شنبه 16 شهریور 1389, 16:31 عصر
برای فارسی کردن عناوین فایل های سورس کامپوننت را فارسی کنید .. بعد کامپایل کنید

hadisalahi2
سه شنبه 16 شهریور 1389, 16:42 عصر
برای فارسی کردن عناوین فایل های سورس کامپوننت را فارسی کنید .. بعد کامپایل کنید
میشه بفرمایید کدوم فایل و در کدوم قسمت؟
یا حق