2 gündür formun altını üstüne getirdim ancak aradığımın tam karşılığını bulamadım. FB 2.0 da hazırlamış olduğum table in ALACAK ve BORC adında 2 alanı var İstenilen cari hesaba ait durumunu görmek için toplamborc ve toplamalacağı bularak geri döndüren bir SP hazırladım Ardından delphi tarafından bu TIBQuery nesnesi ile bu SP yi çağırıyorum. Yine aynı IBQuerynesnesinde BAKIYE adında TCurrencyField oluşturyor ve OnCalcFields olayında BAKIYE=BORC-ALACAK diyerek bakiyeyi hesaplatıyor ve program da kullnıyoyorum.
Yapmak istediğim şey ise bakiye hesaplamasını delphi tarafında değilde SP 'de yapmak ancak bir türlü beceremedim.
SP ye ait DLL kodları aşağıdadır.
Kod: Tümünü seç
REATE PROCEDURE SP_CARIHESAPLAR
RETURNS(
TOPLAMALACAK DECIMAL(18, 2),
TOPLAMBORC DECIMAL(18, 2),
PARAKODU SMALLINT,
CARIKODU VARCHAR(50) CHARACTER SET WIN1254)
AS
BEGIN
FOR
SELECT Sum(Fatura.ALACAK) AS TOPLAMALACAK, Sum(Fatura.BORC) AS ToplamBORC, Fatura.ParaKodu,CariKartlar.CariKodu
FROM CariKartlar RIGHT JOIN Fatura ON CariKartlar.CariKodu = Fatura.CariKod
WHERE CariKartlar.CariKodu =:CARIKODU
group by Fatura.ParaKodu,CariKartlar.CariKodu
INTO :TOPLAMALACAK, :TOPLAMBORC, :PARAKODU, :CARIKODU
DO
SUSPEND;
END;