-
چندتا سوال
سلام خدمت همه
1- من میخوام از کادر جستجو برای برنامه ام* استفاده کنم بطوری که مثلا نام کاربری را جستجو کند ولی هر کاری میکنم فقط اعداد را جستجو میکند ، کسی میدونه چطوری باید این مشکل را برطرف کنم؟
2-بنده از اکسس برای بانک اطلاعاتی استفاده میکنم و خاصیت شماره همراه را روی نامبر گذاشتم ، اما وقتی در برنامه میخواهم شماره همراه کسی را وارد کنم ارور میده که طول کاراکتر ها زیاده. دلیل این ارور چی هست ؟
-
در پاسخ به سوال اول :
اگر از فیلتر استفاده کنید به صورت زیر :
*کد:
کد:
Adotable1.filtered:= False;
Adotable1.filtere:= "UserName="+QuotedStr(edit1.text);
adotable1.filtered:=true;
و اگر از کوئری استفاده کنید بدین صورت :
کد:
کد:
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add("select * from test *where id="+DBLookupComboBox1.text+" ") *;
ADOQuery1.Open;
در پاسخ به سوال دوم هم کار شما اشتباهه و شماره موبایل از نوع Number نیست ، باید از نوع ShortText انتخاب بشه و*FieldSize*نهایتا 11 کاراکتر باشه.
نامبر 10*کاراکتر رو میپذیره ...
-
مدیر جان من از فیلتر و چنین کدی استفاده میکنم.
کد:
کد:
var s:string;
begin
if Edit1.text<>" " then
* begin
if combobox1.itemindex=0 then s:="kdparvande="""+edit1.text+"""";
if combobox1.itemindex=3 then s:="shshnasname="""+edit1.text+"""";
adotable1.filter:=s;
* * adotable1.filtered:=true;
* * * *
* * if adotable1.isempty=true then
* * * *begin
* * * * * *showmessage("چنين چيزي وجود ندارد");
* * * * * *ActiveControl:=edit1;
* * * * end;
end
else
*begin
* * showmessage("لطفا مقداري را وارد کنيد");
* * ActiveControl:=edit1;
* end;
* end;
در صورتی که اشتباهی در کد میبینید خواهشا یادآوری کنید.
و اینکه در اکسس گفته های بالایی شما وجود ندارند!!
ببینید :
[برای مشاهده لینک ها شما باید عضو سایت باشید برای عضویت در سایت بر روی اینجا کلیک بکنید]
[برای مشاهده لینک ها شما باید عضو سایت باشید برای عضویت در سایت بر روی اینجا کلیک بکنید]
-
-
شما از نسخه ی قدیمی استفاده می کنید.(اون مربوط به**2013* Access بود )
در نسخه ی شما باید text رو انتخاب کنید.
و همچنین شما باید برای*متغیر رشته ای از تابع QuotedStr استفاده کنید.
-
خب تو بخش کد ها مشلی نیست؟!
من از کد بالا برای جستجو نام افراد استفاده کردم ولی جواب نداد.
-
شما باید مقدار edit1 رو به این صورت بگیرید :
کد:
کد:
QuotedStr(edit1.text)
دقیقا مثل مثال بالا. دقت کنید ...
-
یه سوال دیگه
چطور میتونم در دلفی xe4 یک کمبو باکس برای فرمم قرار بدم بطوری که هر کدوم از گزینه های درون کمبو باکس را که انتخاب کنم یک دی بی گرید (جدول) جداگانه را نمایش بده؟!
مثلا هر جدول مربوط به یک ماه یا یک سال باشد.
با تشکر از پاسخگویی
-
مثل مثال خودتون عمل کنید :
در رویداد مربوط به Select* کلیک کرده و کد زیر رو بنویسید
کد:
کد:
if combobox1.itemindex=0 then
begin
dbgrid1.datasource := datasourseUsers;
end;
if combobox1.itemindex=1 then
begin
dbgrid1.datasource := datasoursePersonality;
end;
-
مرسی مدیر جان
البته باید برای هر جدول در برنامه یک جدول در اکسس طراحی بشه و برای استفاده از هر ایتم در کمبو باکس از یک ادو تیبل و یک دیتا سورس استفاده کرد، و برای کل برنامه از یک ادوکانکشن استفاده کرد.
با تشکر
-
نقل قول از admin
شما باید مقدار edit1 رو به این صورت بگیرید :
کد:
کد:
QuotedStr(edit1.text)
دقیقا مثل مثال بالا. دقت کنید ...
مدیر عزیز من از کد بالا به شکل زیر استفاده کردم ولی باز هم نام و فامیل را جستجو نمیکنه!!
کد:
کد:
var s:string;
begin
if Edit1.text<>" " then
** begin
if combobox1.itemindex=0 then s:="name="""+QuotedStr(edit1.text)+"""";
if combobox1.itemindex=1 then s:="family="""+QuotedStr(edit1.text)+"""";
-
دوست عزیز دقت بفرما شما وقتی از دستور فوق استفاده میکنید دیگر نیازی به کوتیشن نیست
دستور صحیح خوب دقت کن کوتیشنهای اضافه حذف شده
کد:
کد:
if combobox1.itemindex=0 then s:="name= " + QuotedStr(edit1.text) ;
دستور فوق یک جفت کوتیشن به* اول و انتهای متن داخل ادیت شما اضافه میکند اگر متوجه نمیشوید که خرجی چگونه است* کافی است متغییر S را به لیبل تخصیص بده تا ببنی خروجی متن گفته شده چطوری است
با امید موفقیت