PDA

View Full Version : دستور Locate درست کار نمی کند!!



Krubnik
یک شنبه 12 تیر 1384, 14:16 عصر
دستور Locate در Delphi 7 با بانک SQL و ویندوز XP روی اطلاعات فارسی درست کار نمی کند. آیا کسی به این مشکل برخورد کرده؟

Kamyar.Kimiyabeigi
یک شنبه 12 تیر 1384, 14:21 عصر
ممکنه کدتونو در topic قرار بدین تا بهتر متوجه بشم؟

Krubnik
یک شنبه 12 تیر 1384, 14:45 عصر
PrsFrmMainList.CompanyStp.Locate(Format('%s',[trim (Combobox1.text)]),Edit1.Text,([loCaseInsensitive, loPartialKey]));
if checkbox1.Checked=True then
PrsFrmMainList.CompanyStp.Filter:=trim(Combobox1.T ext)+' LIKE '+''''+Edit1.text+'%'+'''';
PrsFrmMainList.CompanyStp.Filtered:=True;

Kamyar.Kimiyabeigi
یک شنبه 12 تیر 1384, 17:47 عصر
شما نام فایلی رو که روش locate می کنین رو از combo می گیرین؟

Krubnik
دوشنبه 13 تیر 1384, 09:28 صبح
کاربر اسم فیلد رو می تونه انتخاب کنه. ولی اون مهم نیست. شما این طوری فرض کنید:

PrsFrmMainList.CompanyStp.Locate('FCompanyName',Ed it1.Text,([loCaseInsensitive,loPartialKey]));

Kamyar.Kimiyabeigi
دوشنبه 13 تیر 1384, 09:45 صبح
درود
به نظر من یک بار با loPartialKey تنهایی و یک بارم با loCaseInsensitive تنهایی امتحان کن ببین درست میشه؟

Krubnik
سه شنبه 14 تیر 1384, 10:12 صبح
کار نکرد! :گیج:

Kamyar.Kimiyabeigi
سه شنبه 14 تیر 1384, 13:48 عصر
از دستور trim برای edit1.text استفاده کن

Krubnik
سه شنبه 14 تیر 1384, 14:53 عصر
متشکرم، مشکلشو فهمیدم چیه

Kamyar.Kimiyabeigi
سه شنبه 14 تیر 1384, 15:43 عصر
به منم میگین برام جالبه
:موفق:

Krubnik
چهارشنبه 15 تیر 1384, 10:16 صبح
ما دو تا حرف ک توی ویندوز XP داریم که یکیش باگ داره و موقع Sort کردن آخر لیست قرار میگیره. من تمام حروف ک رو به اونی که توی SQL درست کار میکنه تبدیل کردم . ولی وقتی توی فرم Search اسمی رو وارد می کردم اون ک ای وارد میشد که ویندوز باهاش مشکل داره. در نتیجه نمی تونست رکورد مربوطه رو پیدا کنه.

امیدوارم که توضیحات بالا کامل بوده باشه.

Kamyar.Kimiyabeigi
چهارشنبه 15 تیر 1384, 13:15 عصر
ممنون
:موفق:

Kamyar.Kimiyabeigi
چهارشنبه 15 تیر 1384, 13:16 عصر
فکر کنم اگر از kbdfa.dll استفاده کنی دیگه به این جور مشکلات بر نمی خوری

Krubnik
دوشنبه 20 تیر 1384, 13:15 عصر
من چنین فایلی رو دارم. آیا نسخه خاصی از این فایل باید در فولدر ویندوز کپی بشه؟

alidehban
شنبه 19 شهریور 1390, 21:20 عصر
سلام...
ببخشید تاریخ پست قبلی سال 6 سال پیشه! اما من امروز مشکل جدیدی تو ههمین زمینه دارم و اونم اینه که از اولشم من با تمام مسایل گفته شده در اینجا آشنایی داشتم و مشکلی با اکسس 2003 نداشتم اما تو یه پروژه بانک اکسس 2007 دارم ودر شرایط یکسان رو 2003 سرچ فارسی داره روی 2007 سرچ فارسی حتی بدون حروف ( ک ) و ( ی ) هم جواب نمیده(تو شرایط یکسان )

yhakzar
سه شنبه 22 شهریور 1390, 15:41 عصر
با سلام
دستور locate تنها بر روی فیلد کلیدی جداول کار می کنه ، در صورتیکه فیلد مورد جستجو فیلد کلید نباشد دستور locate با توجه به شرایط منتایچ مختلفی را بر می گرداند و هیچگونه مشکلی با زبان فارسی ندارد. فقط فرموش نشود تنها و تنها بر روی فیلد کلیدی جدول درست کار می کند ، برای جستجو برای فیلدهای دیگر باید از دستور Filter استفاده شود.

موفق باشید

persianboy_333
چهارشنبه 30 شهریور 1390, 14:08 عصر
با سلام
دستور locate تنها بر روی فیلد کلیدی جداول کار می کنه ، در صورتیکه فیلد مورد جستجو فیلد کلید نباشد دستور locate با توجه به شرایط منتایچ مختلفی را بر می گرداند و هیچگونه مشکلی با زبان فارسی ندارد. فقط فرموش نشود تنها و تنها بر روی فیلد کلیدی جدول درست کار می کند ، برای جستجو برای فیلدهای دیگر باید از دستور Filter استفاده شود.

موفق باشید

سلام دوست عزیز

من با اکسس توسط adotable,datasource,dbgrid ارتباط برقرار کردم. یه فرم لاگین ساختم و جدولم دو فیلد user , pass رو داره. با چه دستوری میتونم محتویات edit1,edit2 که همون user,pass هستش رو با جدول اکسس مقایسه کنم و در صورت درست بودن هر دو وارد فرم اصلی بشه؟؟؟

ممنون میشم کمکم کنید واسه پروژه پایانیه!!