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

نام تاپیک: خطای is not a valid floating point value در Fast Report

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

    خطای is not a valid floating point value در Fast Report

    با سلام دوستان گرامی
    من تا زمانیکه از ویندوز 7 استفاده می کردم گزارشات بدون هیچ اشکالی اجرا می شود و ولی از زمانیکه ویندوز 8.1 استفاده کردم متاسفانه هنگام نمایش با خطا is not a valid floating point value رخ می دهد.
    خطا زمانی رفع می شود که در تنظیمات کنترل پنل علامت اعشار"." را "/" تغییر داده شود. به نظر روش منطقی نیست.
    من Delphi XE6 و Fast Report 5.3.16 استفاده می کنم.
    عکس های ضمیمه عکس های ضمیمه

  2. #2

    نقل قول: خطای is not a valid floating point value در Fast Report

    سلام.
    به نسخه ربطی نداره، به پیش فرض مرتبطه، برای همین توصیه می کنم در برنامه این تنظیمات چک شده و بر طبق اون تبدیلات رشته به عدد انجام بشه.
    یا این که هنگام ورود به برنامه برای یوزر این تنظیمات رو انجام بدید.
    توابع تبدیل تاریخ با دقت 5000 سال
    پذیرش پروژه، کامپوننت، آموزش برنامه نویسی (دلفی، اس کیو ال، ..) -> 09123780840

    دوستای گلم حمایت کنید : https://cafebazaar.ir/app/com.nikanmehr.marmarxword/


    نرم افزار پخش مویرگی

  3. #3
    کاربر دائمی
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    تهران
    پست
    360

    نقل قول: خطای is not a valid floating point value در Fast Report

    با سلام خدمت یوسف زالی
    این خطا ارتباط به تبدیل رشته به عدد ندارد در واقع در زمان طراحی گزارش پیش فرض ویندوزCustomize Format\Decimal Symbol '/' باشد و در رایانه دیگر پیش فرض ویندوز '.' رخ می دهد.
    http://stackoverflow.com/questions/2...rror-in-delphi
    برای اینکه متوجه مشکل شوید فایل 1 , 2 را با Note Pad باز کنی متوجه منظورم می شوید .
    FastErr.rar
    آخرین ویرایش به وسیله fahimi : پنج شنبه 22 بهمن 1394 در 05:47 صبح

  4. #4
    کاربر دائمی
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    تهران
    پست
    360

    نقل قول: خطای is not a valid floating point value در Fast Report

    متاسفانه در ویندوز 8 به بالا زمانیکه شما تنظیمات را Persian انتخاب می کنید پیش فرض اعشاری را '/' تبدیل می کند با به وجود آمدن مشکلات در در تعدادی از برنامه ازجمله Excel کامپوننت Fast Report می شود در حالیکه مفهوم '/' آن به '.' متفاوت می باشد . برنامه ها / را به عنوان یک عملگرا برداشت می کند.
    ساده ترین را در هنگام طراجی گزارش بررسی کنیم که در کنترل پانل Customize Format\Decimal Symbol حتماً '.' باشد و در صورتی که در هنگام طراحی علامت اعشاری در ویندوز '/' بوده است. ابتدا تنظیم کنترل پانل '/' قرار می دهیم پس باز کردن فایل گزارش کنترل پانل را به '.' تغییر و مجددا ذخیره می کنیم
    عکس های ضمیمه عکس های ضمیمه

  5. #5
    کاربر دائمی آواتار ariobarzan
    تاریخ عضویت
    تیر 1386
    محل زندگی
    ايران زمين
    پست
    411

    نقل قول: خطای is not a valid floating point value در Fast Report

    سلام
    به محض تغییر در تنظیم کنترل پنل باوجودی که قبلش گزارش را باز کردم باز هم پیام خطا دیده میشه و اجازه ذخیره شدن نمیده

  6. #6
    کاربر دائمی
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    تهران
    پست
    360

    نقل قول: خطای is not a valid floating point value در Fast Report

    با سلام
    من به ترتیب زیر انجام داده ام
    1- تنظیمات کنترل پانل را "/" قرار دادم.
    2- فایل گزارش Fr3 را باز کردم
    3- تنظیمات کنترل پانل را "." تغییر دادم.
    4- برای اینکه کلید ذخیره در دسترس قرارگیرد اندازه یکی از Memo را تغییر دادم و گزارش را ذخیره کردم
    روش بالا در ویندوز 10 و 7 تت کردم مشکلی پیش نیامد.

  7. #7
    کاربر دائمی آواتار ariobarzan
    تاریخ عضویت
    تیر 1386
    محل زندگی
    ايران زمين
    پست
    411

    نقل قول: خطای is not a valid floating point value در Fast Report

    سلام و تشکر
    بمحض تغییر تنظیمات کنترل پانل از / به . فست شروع میکنه به نمایش پیام خطا و اصلا مهلت نمیده که بخوام اندازه memo را تغییر بدم

  8. #8

    نقل قول: خطای is not a valid floating point value در Fast Report

    ببخشید دوستان عزیز
    این خطا مربوط به هیچ کدوم از موارد بالا نمیشه
    این پیام مربوط به عدم سازگاری نسخه های 32 و 64 بیتی ویندوز با کامپوننت هستش

    من یک گزارش در ویندوز 64 بیتی با نسخه 64 کامپایل کردم و هنگام اجرا در نسخه 32 بیتی این مشکل بوجود اومد
    جالبه که دوباره تو نسخه 64 بیتی هم مجدد باز نشد

    بعد از کلی کنکاش فهمیدم اون نسخه ای که با خود دلفی نصب میشه این مشکل رو داره
    و وقتی نسخه کامل فست رو نصب کردم این مشکل حل شد

    یا حق

  9. #9
    کاربر دائمی
    تاریخ عضویت
    اسفند 1388
    محل زندگی
    يك جاي خوش آب و هوا و سالم
    پست
    112

    نقل قول: خطای is not a valid floating point value در Fast Report

    من همین مشکل رو داشتم
    فایل طراحی رو با notepad باز کن و تمام / رو با . جایگزین کن
    فقط دقت کن انتهای تگهای xml تغییر نکنه
    آخرین ویرایش به وسیله یوسف زالی : چهارشنبه 26 اسفند 1394 در 05:57 صبح

  10. #10

    نقل قول: خطای is not a valid floating point value در Fast Report

    مشکل مربوط به تابع تبدیل رشته به اعداد اعشاری در فست ریپورته. شما میتونید با روش زیر مشکل رو حل کنید
    1- frxutils.pas این فایل رو از پوشه fastreport باز کنید
    2- اینو پیدا کنید : :function frxStrToFloat(s: String): Extended
    3- حالا [',', '.'] به این [',', '.','/'] تبدیل کنید
    حالا با خیال راحت تو هر ویندوزی استفاده کنید
    msalahia@yahoo.com

  11. #11
    مدیر بخش آواتار Mahmood_M
    تاریخ عضویت
    بهمن 1384
    محل زندگی
    گیلان _ رشت
    پست
    2,460

    نقل قول: خطای is not a valid floating point value در Fast Report

    این مشکلات باید توسط متغیر عمومی FormatSettings حل بشه
    در شروع برنامه فرمتهای دلخواه برای اعداد اعشاری و تاریخ و ... توسط این رکورد تعیین کنید تا در تمام سطح برنامه از همین فرمتها استفاده بشه و وابستگی برنامه به فرمتهای پیشفرض ویندوز از بین بره

  12. #12
    کاربر دائمی
    تاریخ عضویت
    اسفند 1387
    محل زندگی
    ایران تهران
    پست
    608

    نقل قول: خطای is not a valid floating point value در Fast Report

    ممنونم از راهنمایی شما دوستان توجه داشته باشند که تو پروژه های بزرگ که یه حجمی گزارش طراحی شده و یه حجمی هم یوزر خودش گزارش طراحی کرده نمیشه بهش گفت
    رجیون رو بذار روی '/' بعد گزارش رو باز کن بعد دوباره رجیون رو بذار روی '.' ما هم این مشکل رو داشتیم چون تو پروژه ما تغیین جدا کننده اعشار دست خود کاربره decimal symbol ...

    ریطی هم به کامپوننت نداره فقط در سورس تولید کننده کامپوننت '/'وجود نداره ... که با راهنمایی خوب ایشون حل شد


    function frxStrToFloat(s: String): Extended;
    var
    i: Integer;
    begin
    for i := 1 to Length(s) do
    {$IFDEF Delphi12}
    if CharInSet(s[i], [',', '.','/']) then
    {$ELSE}
    if s[i] in [',', '.','/'] then
    {$ENDIF}
    {$IFDEF Delphi16}
    s[i] := FormatSettings.DecimalSeparator;
    {$ELSE}
    s[i] := DecimalSeparator;
    {$ENDIF}
    while Pos(' ', s) <> 0 do
    Delete(s, Pos(' ', s), 1);
    Result := StrToFloat(s);
    end;



  13. #13

    Thumbs up نقل قول: خطای is not a valid floating point value در Fast Report

    نقل قول نوشته شده توسط benyaminrahimi مشاهده تاپیک
    ممنونم از راهنمایی شما دوستان توجه داشته باشند که تو پروژه های بزرگ که یه حجمی گزارش طراحی شده و یه حجمی هم یوزر خودش گزارش طراحی کرده نمیشه بهش گفت
    رجیون رو بذار روی '/' بعد گزارش رو باز کن بعد دوباره رجیون رو بذار روی '.' ما هم این مشکل رو داشتیم چون تو پروژه ما تغیین جدا کننده اعشار دست خود کاربره decimal symbol ...

    ریطی هم به کامپوننت نداره فقط در سورس تولید کننده کامپوننت '/'وجود نداره ... که با راهنمایی خوب ایشون حل شد


    function frxStrToFloat(s: String): Extended;
    var
    i: Integer;
    begin
    for i := 1 to Length(s) do
    {$IFDEF Delphi12}
    if CharInSet(s[i], [',', '.','/']) then
    {$ELSE}
    if s[i] in [',', '.','/'] then
    {$ENDIF}
    {$IFDEF Delphi16}
    s[i] := FormatSettings.DecimalSeparator;
    {$ELSE}
    s[i] := DecimalSeparator;
    {$ENDIF}
    while Pos(' ', s) <> 0 do
    Delete(s, Pos(' ', s), 1);
    Result := StrToFloat(s);
    end;


    بسیار عالی بود
    مشکل از اساس حل شد


  14. #14
    کاربر دائمی آواتار hp1361
    تاریخ عضویت
    دی 1384
    محل زندگی
    تهران
    پست
    735

    نقل قول: خطای is not a valid floating point value در Fast Report

    نقل قول نوشته شده توسط MASAELI مشاهده تاپیک
    بسیار عالی بود
    مشکل از اساس حل شد
    مشکل از اساس حل شد، اما اساسی حل نشده.

    همانطور که آقای مهری گفتند، یک متغیر Global در برنامه های دلفی هست که فرمت ها رو تعیین میکنه بنام FormatSettings .

    این متغیر فیلدهایی داره که برای تعیین فرمت موارد مختلفی چون تاریخ، واحد پول و ... داره.

    فقط کافیه در رویدادی چون OnCreate فرم اصلی این کد رو برای تعیین فرمت ممیز شناور بنویسید:


    FormatSettings.DecimalSeparator:='.';


    البته شما بجای اون نقطه هرچیز دیگه ای هم میتونید بزارید. با این روش در تمام برنامه که شامل گزارش ها هم میشه، ممیز بصورت نقطه شناخته خواهد شد.

    موفق باشیم

تاپیک های مشابه

  1. خطای is not a valid win32 application
    نوشته شده توسط karamoz در بخش C#‎‎
    پاسخ: 9
    آخرین پست: دوشنبه 12 خرداد 1399, 00:39 صبح
  2. پاسخ: 6
    آخرین پست: یک شنبه 09 مهر 1391, 22:30 عصر
  3. سوال: روخداد خطای is not a valid win32 applicaion
    نوشته شده توسط abasfar در بخش برنامه نویسی اسمبلی خانواده x86
    پاسخ: 4
    آخرین پست: چهارشنبه 07 دی 1390, 09:55 صبح
  4. '8810002003' is not a valid integer value در دلفي 7 خطا می دهد
    نوشته شده توسط ali_abbasi22145 در بخش مباحث عمومی دلفی و پاسکال
    پاسخ: 4
    آخرین پست: دوشنبه 25 خرداد 1388, 12:49 عصر
  5. پیغام خطای is not a valid MySql
    نوشته شده توسط Mahdi_S_T در بخش PHP
    پاسخ: 2
    آخرین پست: یک شنبه 27 شهریور 1384, 12:08 عصر

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

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