نمایش نتایج 1 تا 27 از 27

نام تاپیک: مرتب سازی فیلد های فارسی

  1. #1
    کاربر تازه وارد
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    United Arab Emirates
    پست
    97

    مرتب سازی فیلد های فارسی

    لطفا اگر میتوانید کمک یا راهنمایی کنید.
    در table میخواهم مرتب سازی و ایندکس انجام دهم بنحوی که حروف مختص فارسی نیز در محل خود قرار گیرند. آیا در هنگام تعریف جدول این امکان وجود دارد . زیر حروف گچپژ در ابتدای ایندکس قرار میگیرند در صورتی که در اکسل مشکلی ندارم. لازم به ذکر است من در محیط WIN2000 کار میکنم. قبلا از لطف دوستان متشکرم

  2. #2
    کاربر دائمی آواتار Mohammad_Mnt
    تاریخ عضویت
    اسفند 1381
    محل زندگی
    جنگلی به نام ایران
    سن
    41
    پست
    1,875
    اول برنامه دستور زیر رو قرار بدین و بعد ایندکس ها رو دوباره بسازین
    SET Collate To "Arabic"

  3. #3
    کاربر تازه وارد
    تاریخ عضویت
    مرداد 1382
    محل زندگی
    ایران - یزد
    پست
    32
    میتونی یه تابع بنویسی و از اون در اندکس هات ازش استفاده کنی
    مثلا تابع Sort
    Inde On Sort(Name) Tag Name

  4. #4
    کاربر دائمی آواتار mehran_337
    تاریخ عضویت
    مهر 1384
    محل زندگی
    رشت
    پست
    1,305
    من از تابعی که آقا کیا به اسم conv ساخته بودن استفاده می کنم همون
    return chrtran('پژگچ','بزکج')
    بعد من اونو گسترش دادم و حروف ا - آ - و ک که با 2 کد وجود داره رو همه رو یه کارکتر مشابه جایگزین کردم . اما چون در این تابع گفتیم بجای پ ب در نظر بگیر در مرتب سازی پ رو ب فرض می کنه و بین دو کلمه بوشهر وپاوه اول پاوه رو سورت بعد بوشهر.
    مشکل بعدیم اینه :
    فرض کنید من گریدی دارم که در "داینامیک بک کالر " دستور دادم رکوردهای زوج رو رنگی کن با تابع recno()
    اما وقتی مرتب سازی می شه رکورد ها جاشون عوض می شه خب این طبیعیه.
    می خوام بدوم در جدول مرتب شده چطور جای فعلی رکورد و تشخیص بدیم آیا تابعی هست که وقتی رکورد 20 در حالت مرتب شده در جای 3 قرار گرفت مقدار 3 رو بر گردونه . یا مثلا توی گرید می تونیم ردیف فعلی رو بدونیم که در داینامیک بک کالر با شماره رکورد کار نکنیم آیا شماره ردیف وجود داره؟؟
    با تشکر

  5. #5
    سلام
    من از یک تابعی که خودم نوشته ام استفاده میکنم. و توی اون هم مرتبسازی درست انجام میشه. توی ایندکس بانک هم می نویسم farsisort(cNameFiled) به جای cfiledname هم نام فیلدم را قرار میدهم.
    ____________________________
    همه چیز را همگان دانند و همگان هنوز از مادر زاده نشده اند. (بزرگمهر حکیم)

  6. #6
    این هم فایلش:
    فایل های ضمیمه فایل های ضمیمه
    ____________________________
    همه چیز را همگان دانند و همگان هنوز از مادر زاده نشده اند. (بزرگمهر حکیم)

  7. #7
    کاربر دائمی آواتار mehran_337
    تاریخ عضویت
    مهر 1384
    محل زندگی
    رشت
    پست
    1,305
    ممنونم جناب توکل دانلودش کردم . دیگه وقتی شما ازش استفاده می کنید حتما مشکل ما رو حل می کنه . بازهم ممنونم

  8. #8
    کاربر دائمی آواتار mehran_337
    تاریخ عضویت
    مهر 1384
    محل زندگی
    رشت
    پست
    1,305
    جناب آقای توکل ! دانلود کردم اما مرتب سازی بازهم درست نشد . البته از تابع alltrim باید استفاده می کردم و گرنه کلماتی که تعداد حروف کمتری دارند را اول سورت می کرد . اگه می شه من و راهنمایی کنید

  9. #9
    پارس پندار ادعای مرتب سازی صحیح "پژگچ" رو میکنه. اتفاقی دیدم:
    http://www.parspendar.net/fa/general-info.php
    البته نمیدونم می ارزه یا نه چون قیمت نداده.
    اما میشه یه تابع نوشت که اون فیلد رو بخونه و به عدد تبدیل کنه . مثلا برای الف 1 برای ب 2 الی آخر و بعد سورت بر اساس شماره ها انجام بشه.

  10. #10
    کاربر دائمی آواتار mehran_337
    تاریخ عضویت
    مهر 1384
    محل زندگی
    رشت
    پست
    1,305
    حامد جان سلام! کجایی پیدات نیست؟؟
    تکه کدهای جالب و عقب انداختیا !! ما که منتظر کدهای جالبت هستیم.
    در ضمن بابت پارس پندار دستت درد نکنه و لی می خوام بدونم توی این سالها بچه ها این مشکلو چطوری حل کردند . یعنی در برنامه هاشون چطور مرتب سازی می کردند.؟
    به هر حال من خیلی به تابع درستی در این زمینه نیاز دارم ...

  11. #11
    سلام
    همانطور که حامد عزیز گفت پارس پندار این مشکل رو حل کرده من بر خلاف نظریه تمام بچه های انجمن این نرم افزار رو خریدم و از اون در یک پروژه تا به حال استفاده کردم و واقعا" جواب خوبی گرفتم بسیاری از مشکلات فارسی حل میشه. البته قیمتش 95 هزار تومن است
    رهرو

  12. #12
    کاربر دائمی آواتار mehran_337
    تاریخ عضویت
    مهر 1384
    محل زندگی
    رشت
    پست
    1,305
    نمی تونی فقط توابعشو بدی حتما باید کلشو بخریم؟
    --------------------
    ایها الناس یه تابع برای سورت فارسی ...
    آخرین ویرایش به وسیله mehran_337 : دوشنبه 03 مهر 1385 در 10:29 صبح دلیل: این پست به دلیل تکراری بودن بطور خودکار ادغام شده است.

  13. #13
    مدیر بخش آواتار binyaz2003
    تاریخ عضویت
    آبان 1382
    محل زندگی
    کرمان
    سن
    39
    پست
    2,107
    تمام توابع پارس پندار در توابع fll هستند که اونها هم برای اجرا قفل سخت افزاری رو چک میکنند
    وب سایت شخصی
    وبلاگ آموزش ویژوال فاکس پرو - به دلیل تعطیل شدن میهن بلاگ نوشته های وبلاگ به وب سایت شخصی منتقل شدند.

  14. #14
    کاربر دائمی آواتار mehran_337
    تاریخ عضویت
    مهر 1384
    محل زندگی
    رشت
    پست
    1,305
    پس بچه ها برای سورت کردن اطلاعات فارسی چی کار می کنن . خب اینکه در برنامه این امکان باشه که نمیشه منکر شد . چون توی هر بانکی باید کاربر بتونه به ترتیب الفبا مشاهده کنه...

  15. #15
    کاربر دائمی آواتار mehran_337
    تاریخ عضویت
    مهر 1384
    محل زندگی
    رشت
    پست
    1,305
    کسی نمی خواد به داد ما برسه؟؟؟؟؟؟

  16. #16
    نقل قول نوشته شده توسط mehran_337
    نمی تونی فقط توابعشو بدی حتما باید کلشو بخریم؟
    --------------------
    ایها الناس یه تابع برای سورت فارسی ...
    مهران جان سلام :
    از اینکه بخوام تابع اونو برایتان اپلود کنم حرفی ندارم ولی کار نمیکنه ! البته :
    یک نکته جالب اینجاست که جای تامل داره
    اگر یک فرم رو طراحی کنی و این فرم رو به کامپیوتر دیگری انتقال بدی دیگه به هنگام استفاده از فرم قفل رو چک نمیکنه!!!؟ البته این موضوع رو خود شرکت پارس پندار هم متذکر شده بود من فکر میکنم یک شماره سریال تو مموری فورم میشنه که کارش تست قفله؟! نظر شما چیه!
    رهرو

  17. #17
    کاربر دائمی آواتار mehran_337
    تاریخ عضویت
    مهر 1384
    محل زندگی
    رشت
    پست
    1,305
    نه من دندون طمع و از پارس پندار کشیدم.. فقط الان هم نیاز من سورت فارسیه.
    یه چیز بی دردسر

  18. #18
    کاربر دائمی آواتار mehran_337
    تاریخ عضویت
    مهر 1384
    محل زندگی
    رشت
    پست
    1,305
    هم اکنون نیازمند کمکهایتان هستیم

  19. #19
    آقا شما خودتون تقریبا انجامش دادید. فقط کافیه بجای کاراکتر شماره قرار بدید و بعد سورت کنید. تابع آقای توکل هم منطقا باید درست کار کنه.
    اشکال از کجاست؟

  20. #20
    سلام

    این هم یک جدول از شهرهای ایران که دو tag دارد. بسته به اینکه بخواهید بر اساس استان با شهر باشد آنرا set order کنید. البته باید تابع farsisort در setpath یا موارد قابل جستجوی فاکس باشد.
    فایل های ضمیمه فایل های ضمیمه
    ____________________________
    همه چیز را همگان دانند و همگان هنوز از مادر زاده نشده اند. (بزرگمهر حکیم)

  21. #21
    کاربر دائمی آواتار mehran_337
    تاریخ عضویت
    مهر 1384
    محل زندگی
    رشت
    پست
    1,305
    آقا رضا دستت درد نکنه . جالبه اینکه با فایل شما خوب کار می کنه . اما با فایلهای من مشکل داره . در ضمن چرا شما از alltrim() استفاده نکردید و درست نشون می ده اما اگه من از اون استفاده نکنم بر اساس تعداد حرف مرتب می شند کلمات 3 حرفی اول و کلمات طولانی تر آخر . بعدشم باید بگم farsisort(allt(fieldname))
    اینهم فایل من
    فایل های ضمیمه فایل های ضمیمه

  22. #22
    مدیر بخش آواتار binyaz2003
    تاریخ عضویت
    آبان 1382
    محل زندگی
    کرمان
    سن
    39
    پست
    2,107
    احتمالا مشکل از کیبوردته
    این و طبق روشی که گقته نصب کنید کاملا درست عمل میکنه

    http://www.tebyan.net/download/new/d...asp?fileid=627
    وب سایت شخصی
    وبلاگ آموزش ویژوال فاکس پرو - به دلیل تعطیل شدن میهن بلاگ نوشته های وبلاگ به وب سایت شخصی منتقل شدند.

  23. #23
    کاربر دائمی آواتار mehran_337
    تاریخ عضویت
    مهر 1384
    محل زندگی
    رشت
    پست
    1,305
    اون dbf که من فرستادم چون قدیمیه برای راست چین کردنش از space استفاده می کرد بهمین خاطر نیاز به alltrim داشت . مشکل از تایع آقای توکل نبود.
    حالا مرتب شده اش خوبه اما نمی دونم چرا بعضی حروف بازهم سرجاش نیستند حرف ب و ت جالبه که همه ب و ت ها درست هستند الا چند تا اسم.
    روش آقای بی نیاز هم جواب نداد اما فایل خوبی بود جای دیگه به درد می خوره

  24. #24
    سلام

    اگر می گفتید ک و ی شاید چون اولین بار این تابع را زمان ویندوز ۹۸ نوشتم اما در ویندوز XP تغییرش دادم.

    شاید یک روز طول کشید دو رشته را درست کنم!!!

    راهش هم این بود:

    کلیه کاراکترها را در یک جدول ذخیره کردم. (از 128 تا ۲۵۵)
    بعدش با excel سورت کردم و جدول بدست آمده را به رشته تبدیل کردم. بعدا که XP آمد حروف ک و ی را هم درست کردم. شما میتونید از ۳۲ تا ۲۵۵ را هم همین کار را باهاش انجام بدید.



    امامشکل اساسی از ویندوز است که یونیکد نیست.
    ____________________________
    همه چیز را همگان دانند و همگان هنوز از مادر زاده نشده اند. (بزرگمهر حکیم)

  25. #25
    کاربر دائمی آواتار mehran_337
    تاریخ عضویت
    مهر 1384
    محل زندگی
    رشت
    پست
    1,305
    خدا رو شکر تا حالا که در یکی دو فرم مشکلی نداشتم . انشاءالله که تا آخر همین طور باشه
    از زحمات شما متشکرم

  26. #26
    نقل قول نوشته شده توسط mehran_337
    خدا رو شکر تا حالا که در یکی دو فرم مشکلی نداشتم . انشاءالله که تا آخر همین طور باشه
    از زحمات شما متشکرم
    من یک تابع دارم که مشکل رو کامل حل کرده اگر فیلدت انگلیسی هم باشه بازم کار میکنه
    فقط باید یک فیلد معکوس توی table در نظر بگیری اندازه فیلد فارسیت و معکوس فرسیت رو توی اون بریزه بعد توی مرتب سازی براساس فیلد معکوس مرتب کنی
    index on fsis_field_name tag tag_name
    و بعد در نمایش فارسی اونو انتخاب کنی
    set order to tag_number
    همه چیز حله .
    هر کی میخواد بگه

  27. #27
    کاربر دائمی آواتار mehran_337
    تاریخ عضویت
    مهر 1384
    محل زندگی
    رشت
    پست
    1,305
    کاش آپلود می کردین و گذاشتین . به هر حال من نیاز دارم. با تشکر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •