السلام عليكم
لدي جدول فيه : مبلغ أ - مبلغ ب = الباقي
المبلغ أ يتم كتابته يدويا
المبلغ ب يتم جلبه من جدول ثاني وبعدها يأخذ قيمت المبلغ المتبقي (الباقي)
علما ان كل تسجيل يتم حذف (مبلغ أ) مختلف عن الاخر
والشكل موضح في الصورة المرفقة
السلام عليكم
لدي جدول فيه : مبلغ أ - مبلغ ب = الباقي
المبلغ أ يتم كتابته يدويا
المبلغ ب يتم جلبه من جدول ثاني وبعدها يأخذ قيمت المبلغ المتبقي (الباقي)
علما ان كل تسجيل يتم حذف (مبلغ أ) مختلف عن الاخر
والشكل موضح في الصورة المرفقة
وما هو السؤال
إذا رأيتموني غبت فأطلت الغياب فربما أكون قد انتقلت عن الدنيا إلى الآخرة
فما أحوجني إلى دعوة صالحة من أخ لي كريم
أول برنامج عربي للمحاسبة والتجارة وإدراة المخازن يعمل على اللينكس والماك والويندوز
السلام عليكم
المطلوب هو:
1. كيف يتم ادراج (المبلغ ب)من جدول ثاني في التسجيل الأول ؟
2. كيف يتم وضع الباقي في مكان (المبلغ ب ) ابتداءا من التسجيل الثاني ؟
3. وفي كل عملية ننقص (المبلغ أ) من (المبلغ ب )والحصول على (الباقي) ؟
وشكرا مسبقا على الاهتمام ...
Bachirsoft كتب:السلام عليكم
المطلوب هو:
1. كيف يتم ادراج (المبلغ ب)من جدول ثاني في التسجيل الأول ؟
2. كيف يتم وضع الباقي في مكان (المبلغ ب ) ابتداءا من التسجيل الثاني ؟
3. وفي كل عملية ننقص (المبلغ أ) من (المبلغ ب )والحصول على (الباقي) ؟
وشكرا مسبقا على الاهتمام ...
في هذه الحال أرى أن أفضل الطرق لفعل ذلك هو الإجراء المخزن Procedure stockée
أما عن طريق أكواد دالفي فسيطول الأمر عليك مع أنه ممكن
أنا على عجلة وسأوافيك غدا إن شاء الله
إذا رأيتموني غبت فأطلت الغياب فربما أكون قد انتقلت عن الدنيا إلى الآخرة
فما أحوجني إلى دعوة صالحة من أخ لي كريم
أول برنامج عربي للمحاسبة والتجارة وإدراة المخازن يعمل على اللينكس والماك والويندوز
السلام عليكم ورحمة الله
في هذه الحالة يمكن فعل الاتي
قم بتعريف متغير من نوع الحقل " الباقي "
مثلا : var var1:integer باعتبار ان الحقل من صحيح
وعند الضغط على الزر الذي ينفذ العملية اكتب الاوامر التالية
1- table.last
2- اسند القيمة في الحقل " الباقي " للمتغير
3- اضافة سجل جديد تكون فيه العملية : الرقم الذي تدخله بشكل يدوي ( + - / * ) القيمة المخزنة في المتغير وايضا تسند للحقل ب القيمة التي في المتغير
والناتج يكون في الحقل الاخير
هذا اذا كنت تبحث عن الفكرة اما اذا كنت تريد الكود فارفق مثال لنعدل عليه
تقبل تحياتي
----------------------------------------------------------------------

السلام عليكم
لقد أرفقة مثال واضح
لدينا :
reste = MT-Prix
والمطلوب هو :
في التسجيل الأول MT تأخذ قيمة المبلغ MT الموجود في الجدول 2 (Table2)
التسجيلات الأخرى MT يأخذ قيمة Reste.
وأن يأخذ قيمة 12800 عوض من 13000 في السطر الثاني
و هذا هو الملف
وشكرا على الاهتمام والمشاركة
تم تعديل هذه المشاركة بواسطة Bachirsoft في 13 أغسطس 2012 في 19:41
السلام عليكم ورحمة الله
اخي بشير
في البداية عندما تعمل على تطبيقات قواعد البيانات دائما حاول اجراء العمليات الحسابية بعيدا عن الحقول , اي عن طريق متغيرات تقوم انت بتعريفها
ثم تسند النتائج للحقول .. لأن اجراء عمليات حسابية على الحقول مباشرة يسبب بعض المشاكل في التطبيق " هذا من واقع تجربتي الشخصية "
ما اقوم به عادتا هو انشاء سجل/سجلات تكون حقوله هي نفس الحقول في الجدول/الجداول المراد التعامل معها
الان بالنسبة لك قم بتعريف سجل في type كالاتي
type TOprationRec = record NO,Prix,Mt,Reste:integer; Date:TDate; Designation,Ch,Idd,Mp:string; end;
ثم قم بتعريف متغير من السجل كالاتي:
var Opration:TOprationRec;
واخيرا استخدام ال dbnavigator في مثل هذه البرامج غير محبذ
قمت باضافة بسيطة على الفورم تجدها في المرفقات
الق نظرة واي مزيد استفسارات انا حاضر
تقبل تحياتي
تم تعديل هذه المشاركة بواسطة c_vita في 15 أغسطس 2012 في 14:22
السلام عليكم
اشكرك اخي على المجهود,,,,,,,,,,,,,
ماذا تعني بهذه العبارات
TOperation.Last;
Opration.Reste:=TOperationReste.Value;
Bachirsoft كتب:السلام عليكم
اشكرك اخي على المجهود,,,,,,,,,,,,,
ماذا تعني بهذه العبارات
TOperation.Last;
جدول العمليات
Opration.Reste:=TOperationReste.Value;
حقل الناتج
متغير ضمن السجل الذي تم انشائه في ال type
والعملية تعني اسناد قيمة الحقل للمتغير