View Full Version : مشکل با ClientDataSet و جستجو بصورت Query
FirstLine
چهارشنبه 04 اردیبهشت 1387, 10:29 صبح
با سلام
من یه فایل XML دارم که در ابتدای برنامه اونو در یک ClientDataSet بارگذاری و لود میکنم و یه DataSource هم به آن وصل کرده ام و محتویات را بدرستی داخل یک دیتاگرید نمایش میدهد.
مشکل اینجاس که من الان باید بتونم با Select نویسی و Query روی این فایل XML جستجو انجام دهم، (مثل AdoQuery) و فقط نتیجه این کوری جدید در دیتاگرید نمایش داده شود.
چجوری میشه این کار را انجام داد؟
آیا میشه AdoQuery را به این ClientDataSet متصل کرد؟
با تشکر
delphiprog3000
چهارشنبه 04 اردیبهشت 1387, 18:44 عصر
با سلام.
امیدوارم منظور شما رو درست فهمیده باشم.
clientdataset خاصیت commandtext داره که خودتون باید از اون مستحضر باشید. و دستورات را میتوان به آن پاس داد.
ولی به نظر من اگه اشتباه نکنم clientdataset راه ارتباطی جز Mastersource نداره.
حالا باز نیاز به تحقیق داره.
امیدوارم مشکلت حل شه.
موفق باشید.........
FirstLine
پنج شنبه 05 اردیبهشت 1387, 09:16 صبح
با سلام
از لطف و راهنمایی شما خیلی ممنونم.
مشکل من اینه که این یه قسمت رو درست متوجه نشدم و بلد نیستم، لطفا راهنمایی بفرمایید که:
یک clientdataset دارم که اطلاعات خود را در ابتدای لود شدن از یک فایل XML میخونه و با توجه به وجود یک DataSource همه اطلاعات را در یک DBGrid نمایش میدهد.
تا اینجای کار درسته و مشکلی نیست.
حالا نیازه که من بتونم پرس و جوس زیر را روی این clientdataset اعمال کنم
Select * from test where id=2
چجوری و کجا باید این کوری را بنویسم و اجرا کنم تا در DBGrid فقط رکورد شماره 2 و یا شرط کوری جدید را نمایش دهد؟
آیا میشه از ADOQuery در یه جای این مجموعه استفاده کرد؟
لطفا با مثال بفرمایی و یا لینکش رو هم لطف کنید.
با تشکر
delphiprog3000
پنج شنبه 05 اردیبهشت 1387, 09:41 صبح
سلام دوست عزیزم.
ببینید تمامی ابزارهای دیتابیس خاصیتهایی برای پاس دادن دستورات sql دارند.
در شی Adoquery با خاصیت sql میتوان متن دستور را ارسال کرد.
در Clientdataset نیز با خاصیت Commandtext میتوانید دستورات خود را ارسال کنید.
و بقیه خصوصیات و عملکردها شبیه اشیا دیگر است.
این مثال:
with ClientDataSet1 do
begin
Close;
CommandText:=str1;
open;
if not IsEmpty then
begin
Close;
CommandText:=Str2;
Execute;
end;
end;
موفق باشید.........
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.