PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : کار با FDQuery



hosein_57
19 / December / 2015, 01:29 PM
با سلام می خوام در fdquery از چند جدول جوین بزنم ولی یک در زمان تغییر داده ها فقط یک جدول در گیر بشه و داده های یک جدول تغییر کنه لطفا کمک کنید

meyti
19 / December / 2015, 03:33 PM
سلام
لطفا کمی واضحتر بفرمایید که میخواهید چه کاری انجام بدین ؟
نمونه ای از جدول یا کوئری مورد نظر را اینجا بزارید بهتره .

hosein_57
19 / December / 2015, 03:47 PM
سلام
لطفا کمی واضحتر بفرمایید که میخواهید چه کاری انجام بدین ؟
نمونه ای از جدول یا کوئری مورد نظر را اینجا بزارید بهتره .

باسلام من در دستور SQL مشکل ندارم ولی زمانی که توسط FDQuery میخواهم در داده ها تغییری ایجاد کنم چون در دستور SQL از جوین چند جدول استفاده کردم به مشکل میخورم چون مثلا در Insert میخواهد به جدولهای دیگر هم رکورد اضافه کند در حالی که من فقط به یک جدول میخواهم رکورد اضافه کنم در ADOQuery d یک پراپرتی بود به نام unique Table ولی من در FDQuery ندیدم

hosein_57
21 / December / 2015, 10:52 AM
با سلام می خوام در fdquery از چند جدول جوین بزنم ولی یک در زمان تغییر داده ها فقط یک جدول در گیر بشه و داده های یک جدول تغییر کنه لطفا کمک کنید

عزیزان من هیچ کدام تجربه کار با FDQuery ندارن که کمک من کنند؟

meyti
21 / December / 2015, 11:19 PM
عزیزان من هیچ کدام تجربه کار با FDQuery ندارن که کمک من کنند؟

اکثرا از fdqury استفاده میکنند ولی سوال شما زیاد مشخص نیست .

اگه درست متوجه شده باشم شما موقعی که کوئری میگیرید یه سری اطلاعات رو هم ویرایش میکنید بطور اتوماتیک . درسته ! ؟ فقط میخواهید رکورد جدید اضافه نشه ! اگه اینه من برای این کار در رویداد onNewRecord مربوط به fdqury کد dataset.cancel رو قرار میدم .
اگرم این نیست نمونه ای از برنامه را قرار بدهید تا بررسی بشه .

hosein_57
22 / December / 2015, 10:27 AM
با سلام مجدد فرض بر این که در قسمت SQL کامپوننت FDQuery دستور زیر نوشته شود

SELECT t1.RecNo,t1.CodePersona,t2.NamePersona,t1.StartDat e,t1.EndDate
FROM Tbl_Acc_DefineCashier t1
inner join Tbl_Acc_DefinePersona t2 on t1.CodePersona=t2.CodePersona

حالا شما بخواهید فقط در جدول Tbl_Acc_DefineCashier یک رکورد اضافه بشود و fdquery را به حالت insert ببری بعد همه فیدهای آنرا پر کنی و post کنی چون فیلد NamePersona از یک جدول دیگر در select شرکت کرده و شما میخواهی این اجازه را به کاربر بدهید تا با انتخاب کردن NamePersona شما CodePersona را به دست بیاورید تا در جدول Tbl_Acc_DefineCashier ذخیره کنید سیستم این اجازه را به شما نمیدهد چون فیلد NamePersona که مقدار گرفته مال جدول دیگری هست که شما اصلا قصد تغییر در ان را ندارید ولی fdquery جدول Tbl_Acc_DefinePersona را هم به حالت insert برده و از شما میخواهد همه فیلدهای کلیدی آن را پور کنید در حالی که من فقط باجدول Tbl_Acc_DefineCashier کار دارم و از جدول Tbl_Acc_DefinePersona فقط برای نمایش به کاربر استفاده میکنم راه حل پیشنهادی شما چه هست ممنون از همه

مجید
22 / December / 2015, 11:42 AM
سلام حسین آقا
اینو امتحان کن شاید جواب بده . خودم تست نکردم ولی بخاطر عدم استفاده از Join ممکنه به هدفت برسی



SELECT t1.RecNo,t1.CodePersona,
(Select NamePersona from Tbl_Acc_DefinePersona t2 where t1.CodePersona=t2.CodePersona) as NamePersona ,
t1.StartDate,t1.EndDate
FROM Tbl_Acc_DefineCashier t1


ضمنا اگه زحمتی نیست لطفا نتیجه را هم اینجا اعلام کن تا بفهمیم درست بوده یا نه

hosein_57
22 / December / 2015, 01:39 PM
سلام حسین آقا
اینو امتحان کن شاید جواب بده . خودم تست نکردم ولی بخاطر عدم استفاده از Join ممکنه به هدفت برسی



SELECT t1.RecNo,t1.CodePersona,
(Select NamePersona from Tbl_Acc_DefinePersona t2 where t1.CodePersona=t2.CodePersona) as NamePersona ,
t1.StartDate,t1.EndDate
FROM Tbl_Acc_DefineCashier t1


ضمنا اگه زحمتی نیست لطفا نتیجه را هم اینجا اعلام کن تا بفهمیم درست بوده یا نه
سلام عشق اقا مجید این مثالی که من زدم یک مثال ساده بود ممکنه بیش از 6 الی 10 جدول جوین بخورند که نمیخوام ساب کوئری بزنم در ADOQuery یک پراپرتی داشت که به شکل زیر مقدار میگرفت
ADO.Properties['Unique Table'].Value := TableName
ولی درFDQuery این وجود نداره لطفا اگر قابلیتهای درFDQuery نیست به ADOQuery رو میدونید برام بگید ممنون

مجید
22 / December / 2015, 08:58 PM
سلام حسین آقای گل
شرمنده بنده در این زمینه دانش زیادی ندارم و متاسفانه نمیتونم کمکی بکنم. از سایر دوستان که تجربه و تخصص این موضوع را دارند خواهش میکنم به این حسین آقای گل ما پاسخ مشکل گشا بدن