17-03-2024, 08:52 PM
(آخر تعديل لهذه المشاركة: 17-03-2024, 08:55 PM بواسطة Ougrouti Mustafa.)
مرحبا شباب رمضان كريم تقبل الله منا و منكم
اواجه مشكلة حساب مجموعة فاتورة شراء من جدولين قمت بإنشاء جدول للمنتجات و جدول للفواتير و جدول أخر مربوط بجدول الفواتير اسم اسطر الشراء
حيث يتم جلب المنتج من جدول السلع بناءا على معرفه لجدول فاتورة الشراء ثم يقوم المستخدم بإدراج كمية المنتج و يتم حساب جميع السلع المدرجة
المشكل هو مجموع الفاتورة لا يعمل بشكل سليم كل النتائج خاطئة
انظر الصور المشروع
صيغة الاستعلام المستعمل :
Select
Round ( sum(a.qttAchat*p.PrixAchat) ,2) as TotalFacture
From Prouduit p, LigneAchat a
Where ( p.IdPruduit = a.idProud) and (a.idAchat = :p);
كود حسابي على جدول اسطر الشراء
procedure TDM.tLigneAchatCalcFields(DataSet: TDataSet);
begin
tLigneAchat.FieldByName('PrixAchat').AsCurrency :=
tProduit.FieldByName('PrixAchat').AsCurrency;
tLigneAchat.FieldByName('Total').AsCurrency :=
tProduit.FieldByName('PrixAchat').AsCurrency *
tLigneAchat.FieldByName('qttAchat').AsInteger;
FFactAchat.QTotalFactAchat.Close;
FFactAchat.QTotalFactAchat.Parameters.ParamByName('p').Value := tLigneAchat['idAchat'];
FFactAchat.QTotalFactAchat.Active := True;
end;
اواجه مشكلة حساب مجموعة فاتورة شراء من جدولين قمت بإنشاء جدول للمنتجات و جدول للفواتير و جدول أخر مربوط بجدول الفواتير اسم اسطر الشراء
حيث يتم جلب المنتج من جدول السلع بناءا على معرفه لجدول فاتورة الشراء ثم يقوم المستخدم بإدراج كمية المنتج و يتم حساب جميع السلع المدرجة
المشكل هو مجموع الفاتورة لا يعمل بشكل سليم كل النتائج خاطئة
انظر الصور المشروع
صيغة الاستعلام المستعمل :
Select
Round ( sum(a.qttAchat*p.PrixAchat) ,2) as TotalFacture
From Prouduit p, LigneAchat a
Where ( p.IdPruduit = a.idProud) and (a.idAchat = :p);
كود حسابي على جدول اسطر الشراء
procedure TDM.tLigneAchatCalcFields(DataSet: TDataSet);
begin
tLigneAchat.FieldByName('PrixAchat').AsCurrency :=
tProduit.FieldByName('PrixAchat').AsCurrency;
tLigneAchat.FieldByName('Total').AsCurrency :=
tProduit.FieldByName('PrixAchat').AsCurrency *
tLigneAchat.FieldByName('qttAchat').AsInteger;
FFactAchat.QTotalFactAchat.Close;
FFactAchat.QTotalFactAchat.Parameters.ParamByName('p').Value := tLigneAchat['idAchat'];
FFactAchat.QTotalFactAchat.Active := True;
end;