طرح قيمة من قاعدة البيانات
#1
السلام عليكم و رحمة الله و بركاته

ما هو الكود الصحيح لعملية طرح في قاعدة البيانات

حيث أنه لدي جدوليين يحتويان على سلعة و لما يقوم البائع بالبيع فإنه تطرح القيمة المباعة من السلعة الإجمالية.

استعملت الكود التالي:

كود :
abstable2.edit; abstable2.fieldvalues['kamiya'] := abstable2.fieldvalues['kamiya'] - strtofloat (edit2.text); abstable2.post;
و شكرا مسبقا
لا إله إلا الله محمد رسول الله
الرد
#2
المثال و المطلوب غير واضح
الرد
#3
شكرا أخي على التدخل و لكن السؤال يقول:

لدي جدول يحتوي على سلعة مثلا: أقراص العدد20 و لما أبيع كمية مثلا 5 فلابد للكمية السلعة أن تتغير من 20 لتصبح 15.

استخدمت الكود أعلاه لكنه يضيف القيمة بجانب القيمة السابقة بمعني تصبح:
520 بدلا من 15.
لا إله إلا الله محمد رسول الله
الرد
#4
وعليكم السلام و رحمة الله تعالى و بركاته:
أخي تأكد من نوع بيانات الحقل kamiya قد يكون نص type de donnée char
و لتفادي أي مشكل استعمل الخاصية
fieldbyname('').asfloat
مثال

abstable2.edit;
abstable2.fieldvalues['kamiya'] := abstable2.fieldbyname['kamiya'].asfloat
- strtofloat (edit2.text);
abstable2.post;
بالتوفيق
الرد
#5
جزاك الله خيرا أخي makhlouf و ما هو الفرق بين AsString و AsFloat

علما أن الكزد الصحيح هو
كود :
form1.ABSTable1.FieldValues['kamiya'] := form1.ABSTable1.FieldByName('kamiya').Asfloat - form3.ABSTable1.FieldByName('kamiya').asfloat ;
لا إله إلا الله محمد رسول الله
الرد
#6
مبرمج مبتدأ كتب :
جزاك الله خيرا أخي makhlouf و ما هو الفرق بين AsString و AsFloat

علما أن الكزد الصحيح هو
كود :
form1.ABSTable1.FieldValues['kamiya'] := form1.ABSTable1.FieldByName('kamiya').Asfloat - form3.ABSTable1.FieldByName('kamiya').asfloat ;

العفو يا أخي و الحمد لله ما دمت وجدت الحل أما الفرق بينهما فهو:
AsString : يعيد القيمة كحرف
AsFloat : يعبد القيمة كعدد حقيقي
بالتوفيق
الرد


التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم