delphi4arab منتديات دلفي للعرب

نسخة كاملة : كيفية التعامل مع الارقام و عدد الأصفار يمين الفاصلة
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
قمت ب صنع قاعدة بيانات أكسس 2007 ويوجد عندي حقل من نوع ارقام لكن تواجهني مشكلة
هذا الحقل ناتج من عملية قسمة داخل البرنامج المشكل انه عندما تكون النتيجة بدون فاصلة لامشكل
لكن عندما تكون الفاصلة تقع المشكلة حيت ان العملية تجري صحيحة لكن عندما تخفظ النتيجة يكون هناك عدد كبير بعد الفاصلة
متلا:
123.36 تحفظ 123.35647589741236

أستعمل دلفي 7 و ado
قم بالذهاب الى عامود القاعدة في برنامج اكسس وقم بتحديد نوع المتغير الخاص بالخانة

إجعل المتغير صغير وتفادى الـ LongInt وماشابه
السلام عليكم...

السبب لا علاقة له بـ Access أو غيره، و إنما ناتج عن طريقة تخزين الأعداد ذات الفاصلة في الكمبيوتر حيث كثيراً ما تخزن الكسور كأرقام تقريبية تعتمد دقتها على حجم نوع البيانات، و لا يد لنا في ذلك.

في برامج دلفي يمكنك التخلص من المشكلة بسهولة، و ذلك بضبط الخاصية DisplayFormat للحقل المعني على 0.00 لعرض خانتين فقط يمين الفاصلة (اجعل عدد الأصفار يمين الفاصلة على حسب عدد خانات الكسر التي تريدها).

نرجو الاستفادة و السلام.
شكرا لكم لكن عادة أستعمل adoquery بطريقة ديناميكية
كيف يمكنني استعمال displayforam في هذه الحالة
استخدم دالة التقريب round قبل الحفظ للحقل المراد حفضة وتستطيع حفظ رقيمن او ثلاثة بعد الفاصلة
المشكلة أنه داخل الأكسس الاعداد عادية
المشكل يظهر داخل دلفي
انا اعاني من مشكلة التقريب فعند كتابة 12.5 يكتبها 12 سواء في الاكس اوفي الدالفي