با سلام می خوام در fdquery از چند جدول جوین بزنم ولی یک در زمان تغییر داده ها فقط یک جدول در گیر بشه و داده های یک جدول تغییر کنه لطفا کمک کنید
با سلام می خوام در fdquery از چند جدول جوین بزنم ولی یک در زمان تغییر داده ها فقط یک جدول در گیر بشه و داده های یک جدول تغییر کنه لطفا کمک کنید
سلام
لطفا کمی واضحتر بفرمایید که میخواهید چه کاری انجام بدین ؟
نمونه ای از جدول یا کوئری مورد نظر را اینجا بزارید بهتره .
باسلام من در دستور SQL مشکل ندارم ولی زمانی که توسط FDQuery میخواهم در داده ها تغییری ایجاد کنم چون در دستور SQL از جوین چند جدول استفاده کردم به مشکل میخورم چون مثلا در Insert میخواهد به جدولهای دیگر هم رکورد اضافه کند در حالی که من فقط به یک جدول میخواهم رکورد اضافه کنم در ADOQuery d یک پراپرتی بود به نام unique Table ولی من در FDQuery ندیدم
اکثرا از fdqury استفاده میکنند ولی سوال شما زیاد مشخص نیست .
اگه درست متوجه شده باشم شما موقعی که کوئری میگیرید یه سری اطلاعات رو هم ویرایش میکنید بطور اتوماتیک . درسته ! ؟ فقط میخواهید رکورد جدید اضافه نشه ! اگه اینه من برای این کار در رویداد onNewRecord مربوط به fdqury کد dataset.cancel رو قرار میدم .
اگرم این نیست نمونه ای از برنامه را قرار بدهید تا بررسی بشه .
با سلام مجدد فرض بر این که در قسمت 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 فقط برای نمایش به کاربر استفاده میکنم راه حل پیشنهادی شما چه هست ممنون از همه
سلام حسین آقا
اینو امتحان کن شاید جواب بده . خودم تست نکردم ولی بخاطر عدم استفاده از 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 رو میدونید برام بگید ممنون
سلام حسین آقای گل
شرمنده بنده در این زمینه دانش زیادی ندارم و متاسفانه نمیتونم کمکی بکنم. از سایر دوستان که تجربه و تخصص این موضوع را دارند خواهش میکنم به این حسین آقای گل ما پاسخ مشکل گشا بدن
علاقه مندي ها (Bookmarks)