View Full Version : سوال: بعد از جستجوی یک عدد مقادیر خواسته شده مربوط به اون فیلد رو داخل ادیت نشون بده؟
ms.nazeri
پنج شنبه 17 تیر 1389, 18:06 عصر
سلام من یک مشکلی دارم اما نمیدونم شما متوجه حرفم میشین یا نه؟؟
راستش:
من می خوام وقتی کاربر شماره فاکتوری رو داخل ادیت وارد کرد ، و دکمه مشاهده رو زد، فیلدهای چهارم از همان جدول و فیلد پنجم از جدول دیگه رو که مربوط به همین شماره فاکتور هست رو داخل ادیت مورد نظرم نشون بده ؟
ولی این کد که نوشتم فقط اولین مقدار فیلد چهارم یا پنجم جدولهای مورد نظرم رو نشون میده و هر شماره فاکتوری که وارد کنم باز هم همین مقدارو نشون میده داخل ادیت ها ؟؟
begin
adotable4.Filtered:=false
adotable4.Filter:='shomarefaktor='+trim(edit1.Text ) i
adotable1.Filtered:=true
if adotable1.RecordCount <> 0 then
begin
edit3.Text:=adotable4.Fields[4].Value
edit2.Text:=adotable2.Fields[5].Value i
end
end;
MOJTABAATEFEH
پنج شنبه 17 تیر 1389, 18:32 عصر
سلام من یک مشکلی دارم اما نمیدونم شما متوجه حرفم میشین یا نه؟؟
راستش:
من می خوام وقتی کاربر شماره فاکتوری رو داخل ادیت وارد کرد ، و دکمه مشاهده رو زد، فیلدهای چهارم از همان جدول و فیلد پنجم از جدول دیگه رو که مربوط به همین شماره فاکتور هست رو داخل ادیت مورد نظرم نشون بده ؟
ولی این کد که نوشتم فقط اولین مقدار فیلد چهارم یا پنجم جدولهای مورد نظرم رو نشون میده و هر شماره فاکتوری که وارد کنم باز هم همین مقدارو نشون میده داخل ادیت ها ؟؟
begin
adotable4.Filtered:=false
adotable4.Filter:='shomarefaktor='+trim(edit1.Text ) i
adotable1.Filtered:=true
if adotable1.RecordCount <> 0 then
begin
edit3.Text:=adotable4.Fields[4].Value
edit2.Text:=adotable2.Fields[5].Value i
end
end;
دوست عزیز لطفا منظورتون رو واضح تر بیان کنید و برای اینگونه کارها بهتره از دستورات SQL استفاده کنید
موفق باشید
hossein_h62
پنج شنبه 17 تیر 1389, 23:16 عصر
سلام
براحتی میتونید با استفاده از DBEdit این کار رو انجام بدید.
pezhvakco
جمعه 18 تیر 1389, 08:45 صبح
درود :
adotable4.Filtered:=false
adotable4.Filter:='shomarefaktor='+trim(edit1.Text ) i
adotable1.Filtered:=true
if adotable1.RecordCount <> 0 then
این 1 و 4 رو یک تغییر بده ؟
edit3.Text:=adotable4.Fields[4].Value
edit2.Text:=adotable2.Fields[5].Value i
شما شماره 1 رو فیلتر کردی و داری داده ها رو از 2 و 4 می گیری !
شما کی شماره 2 رو فیلتر کردی ؟
بهتره برای گرفتن اطلاعات ستون خاصی از جدول از کد دستور زیر استفاده کنی >
Edit1.Text:=DataSet1.FieldByName('Col').AsString;
فکر خوش .
homayoun_sa
جمعه 18 تیر 1389, 17:31 عصر
اگر منظورت نمایش دو فیلد از 2 جدول است که بهترین روش اون استفاده از دستور join در SQL است که به راحتی بتونی به فیلدهای مورد نظرت دسترسی و هر طور که بخوای اونا رو نمایش و پردازش کنی
نیازی هم نیست که به صورت فیزیکی دو جدول با هم ارتباط داشته باشند (Relation)
و کل اون adoQuary را به گرید مورد نظر ارتباط بده
SELECT dbo.table1.Id,dbo.table2.Id
FROM dbo.table1.id INNER JOIN
dbo.table2 ON dbo.table1.Id = dbo.table2.id
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.