View Full Version : سوال: عدم نمایش اطلاعات دیتا بیس درگرید
etedali
جمعه 08 شهریور 1387, 13:48 عصر
سلام به همه دوستان.
من یک مشکل دارم اینکه در برنامه ام اطلاعات داخل یکی از جدول هام نمایش داده نمیشه در صورتی که قبلامشکلی نداشت اما الان هر کاری می کنم اطلاعات دیتا بیس را در گرید نمایش نمیده در صورتی که دیتا بیس من پر هست و حتی فرمی را که برای ویرایش ساختم وقتی صدامیزنم اطلاعات در فیلدها نمایش میده اما بعد از ثبت دوباره گرید من خالی است مشکل از چی میتونه باشه؟
Hsimple11
جمعه 08 شهریور 1387, 14:13 عصر
دقت کنید که ستونهاتون رو از خود گرید پاک نکرده باشید.
etedali
جمعه 08 شهریور 1387, 14:20 عصر
ستون ها هم هست به دیتا بیس هم وصله.
حتی دکمه ایی گذاشتم برای حذف قبلش چک میکنه اگر دیتا بیس پر باشه داده انتخابی را حذف کنه این دکمه هم تا زمانی که دیتا بیسم پره کار میده همه چیز درست کار میکنهاما باز هم داده ها را نشان نمیده:عصبانی++:
behzad_dr
جمعه 08 شهریور 1387, 15:49 عصر
سلام دوست گرامی :
احتمال داره ، شما در گریدت برای فیلدهای قایل نمایشتون TITLE انتخاب کردی اما فیلدها رو تک تک به تیبل مربوطه و فیلد مربوطه اتصال ندادی ...
و الان شما با هر بار اضافه کردن به تیبلتون یه رکورد خالی در گریدتون دیده میشه .. درسته؟
Hsimple11
جمعه 08 شهریور 1387, 16:10 عصر
یک DBGrid جدید به فرمتان اضافه کنید و به دیتاست خود متصل کنید ببینید مشکل از گرید است یا DataSet
SYNDROME
جمعه 08 شهریور 1387, 16:40 عصر
آیا گرید شما دارای رکورد است و اطلاعات نمایش داده نمی شود و یا اصلاً هیچ رکوردی در آن وجود ندارد؟
آیا مثلاً که نشانگر کرسر است را در کنار Grid می بینید؟
اگر رکوردی وجود ندارد یا مشکل در برقرای ارتباط با بانک دارید با اصلاً aDO شما رکوردی ندارد.
اگر کرسر را می بیند پس مشکلی در بر قراری ارتباط ندارید.پس مشکل از شرط شماست که هیچ رکوردی بر نمی گرداند.
موفق باشید
etedali
جمعه 08 شهریور 1387, 17:36 عصر
یک DBGrid جدید به فرمتان اضافه کنید و به دیتاست خود متصل کنید ببینید مشکل از گرید است یا DataSet
یک گرید جدید اضافه کردم نشان نداد.
اما در یک پروژه جدید اگر گرید را به دیتا بیس وصل کنم اطلاعات را نشان میده اما به محض رفتن به برنامه اصلی باز نشون نمیده.
آیا گرید شما دارای رکورد است و اطلاعات نمایش داده نمی شود و یا اصلاً هیچ رکوردی در آن وجود ندارد؟
آیا مثلاً که نشانگر کرسر است را در کنار Grid می بینید؟
اگر رکوردی وجود ندارد یا مشکل در برقرای ارتباط با بانک دارید با اصلاً aDO شما رکوردی ندارد.
اگر کرسر را می بیند پس مشکلی در بر قراری ارتباط ندارید.پس مشکل از شرط شماست که هیچ رکوردی بر نمی گرداند.
موفق باشید
بله رکورد داره.
نشان گر کرسر را هم می بینم.
شرطی من نگذاشتم میشه بیشتر توضیح بدبد.
احتمال داره ، شما در گریدت برای فیلدهای قایل نمایشتون TITLE انتخاب کردی اما فیلدها رو تک تک به تیبل مربوطه و فیلد مربوطه اتصال ندادی ...
و الان شما با هر بار اضافه کردن به تیبلتون یه رکورد خالی در گریدتون دیده میشه .. درسته؟
وصل کردم اما نشان نمیده
Hsimple11
جمعه 08 شهریور 1387, 17:43 عصر
ببینید چه عملی انجام داده اید که در این پروژه این اتفاق افتاده. همه موارد را چک کنید. مثلا ببینید فیلدهاتون رو به دیتاست خود Insert کرده اید و حالا Visible اونا False شده باشه؟
vcldeveloper
جمعه 08 شهریور 1387, 17:56 عصر
به چه نوع بانکی وصل شدید؟ از چی برای اتصال استفاده کردید؟ احیانا رکوردهای دیتاست بصورت unidirectional نیستند؟ مثلا در DBExpress داده ها بصورت unidirectional دریافت میشند، برای اینکه قابلیت رفت و برگشت روی رکوردها داشته باشید، باید از ClientDataset استفاده کنید، یا در SDAC گزینه ایی برای unidirectional کردن وجود داره. DBGrid نمیتونه روی دیتاست های unidirectional درست عمل کنه.
as13851365
جمعه 08 شهریور 1387, 18:34 عصر
شما مشخصاتی از فرمتان را بدهید تا دوستان بیشتر راهنمایی کنند!
شما از ADOTable استفاده می کنید یا Table
نام DBGrid شما چیه ؟
در حالت کلی شما می تونید روی DBGrid ( جدول ) دابل کلیک کنید و از کادری که باز می شه گزینه Add All Fields رو انتخاب کنید مشکل حل خواهد شد اگر این گزینه غیره فعال بود یعنی ارتباط جدول شما قطع شده است برای این کار می تونید مقدار DataSource جدول را جک کنید ببینید آیا DataSource ی به این جدول وصل است یا نه اگر وصل نبود از لیستی که باز می شه یکی را انتخاب کنید اگر بود که DataSource مورد نظر را انتخاب کنید و مقدار Data Set آن را جک کنید اگر خالی بود از منوی گشوییش مقداری را برایش انتخاب کنید اگر خالی نبود ADO Table و یا ADOQuery و یا Table مورد نظر را انتخاب کنید و مقدار Connection رو چک کنید اگر درست بود که روش دابل کلیک کنید و در کادری که باز می شه در وسط صفحه کلیک راست کنید و مقدار Add All Fields را انتخاب کنید
اگر مشکل همچنان پابرچا بود تمام کانکتش ها رو دوباره از اول جک کنید
etedali
جمعه 08 شهریور 1387, 18:58 عصر
به چه نوع بانکی وصل شدید؟ از چی برای اتصال استفاده کردید؟ احیانا رکوردهای دیتاست بصورت unidirectional نیستند؟ مثلا در DBExpress داده ها بصورت unidirectional دریافت میشند، برای اینکه قابلیت رفت و برگشت روی رکوردها داشته باشید، باید از ClientDataset استفاده کنید، یا در SDAC گزینه ایی برای unidirectional کردن وجود داره. DBGrid نمیتونه روی دیتاست های unidirectional درست عمل کنه.
SQL Server 2000
Ado Table-Ado Conection
etedali
جمعه 08 شهریور 1387, 19:31 عصر
من در برنامه برای تست کدی نوشتم تا جدول مورد نظرم را رفرش کنم پیغام زیر را میده در صورتی که نباید این پیغام را بده درضمن من دستور Refresh را برای بقیه Table ها اگر به کار ببرم این پیغام را نمیده
vcldeveloper
شنبه 09 شهریور 1387, 02:53 صبح
من در برنامه برای تست کدی نوشتم تا جدول مورد نظرم را رفرش کنم پیغام زیر را میده در صورتی که نباید این پیغام را بده درضمن من دستور Refresh را برای بقیه Table ها اگر به کار ببرم این پیغام را نمیده
این جدولتون فیلد کلید منحصر به فرد داره؟
etedali
شنبه 09 شهریور 1387, 03:49 صبح
بله داره.
میخواستم بدونم مشکلی نداره من برنامه را بگذارم روی سایت تا دوستان نگاه کنند شاید اینجوری مشکلم زودتر حل بشه.
vcldeveloper
شنبه 09 شهریور 1387, 03:53 صبح
میخواستم بدونم مشکلی نداره من برنامه را بگذارم روی سایت تا دوستان نگاه کنند شاید اینجوری مشکلم زودتر حل بشه.
نه، چه مشکلی؟!
hadisalahi2
شنبه 09 شهریور 1387, 12:59 عصر
به نظر من بهترین کار همین بود که برنامتون رو میگذاشتید تا دوستان براتون درستش کنند. این طوری هم در وقت خودت صرفه جویی میشه هم در وقت دوستان
mosharecat
شنبه 09 شهریور 1387, 17:42 عصر
ببین دوست عزیز چند وقت پیش خود منهم همچین مشکلی داشتم ... فکر کنم شما یه دیتاماژول دارین پس برین اون فرم و فرمی که گرید توی اون هست توی فرم دیتاماژول uses کنین صد در صد مشکل حل میشه ... موفق باشین
etedali
دوشنبه 11 شهریور 1387, 21:00 عصر
دانلود (http://rapidshare.com/files/141840478/Store.7z)
فایل کوئری دیتا بیس را داخل فولدر برنامه گذاشتم در فایل متنی به نام sp
لطفا ببینید چرا لیست مشتریان را نشان نمی دهد.
Hsimple11
پنج شنبه 14 شهریور 1387, 00:48 صبح
دوست گرامی من برنامه شما را دانلود کردم اما Error های زیادی میداد. و متاسفانه وقت نکردم تا بتونم اجراش کنم. بعدم هم چرا تمام برنامه را آپلود کرده اید؟! با این حجم و فرم های بدون اسم. فقط قسمتی که مشکل وجود داشت را قرار میدادید. اگر هم در یک فرم جدید که ایجاد میکنید داده ها نمایش داده می شوند آن فرم را از اول بسازید.
etedali
پنج شنبه 14 شهریور 1387, 10:13 صبح
سلام دوست من ممنون که برنامه را دانلود کردی اگر برنامه را با دلفی 2007 باز کنی مشکل نمیگیره بازم ممنون که اهمیت دادی.
Hsimple11
پنج شنبه 14 شهریور 1387, 12:29 عصر
متاسفانه فعلا این نسخه را ندارم. ولی اگر برایتان مقدور بود حجم کمتری را آپلود کنید.
موفق باشید.
saleh_fartash
جمعه 15 شهریور 1387, 02:23 صبح
دو ستان من قبلا با چنین مشکلی رو برو شدم و به هر مشکل فنی فکر کردم و بعد فهمیدم اشتباهی داره جدول فیلتر میشه و چون جوابی نیست هیچی نشون نمیده!!
چون از این چیزهایی که دوستمون می گن من می گم اشکال اینه حالا می خوای یه چک بکن و همه جا رو چک کن ممکن اشتباهی کدی رو نوشته باشی.
etedali
جمعه 15 شهریور 1387, 02:29 صبح
سلام به همه دوستان.
باتشکراز همه دوستانی که من را در حل مسئله کمک کردند من مشکلم حل شد منتها گفتم راه حل را هم بنویسم تا تاپیک کامل بشه. اشکال برنامه این بود که کد زیر در فایل Dpr برنامه دوبار تکرار شده بود حالا نمیدونم چرا اینجوری شده بود اما وقتی یکی را حذف کردم برنامه درست شد.
Application.CreateForm(TDm, Dm);
Dm اسم دیتا ماژول بود که استفاده کرده بودم.
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.