Ortalama alma (bölme işlemi)

Firebird ve Interbase veritabanları ve SQL komutlarıyla ilgli sorularınızı sorabilirsiniz. Delphi tarafındaki sorularınızı lütfen Programlama forumunda sorunuz.
Cevapla
meren
Üye
Mesajlar: 71
Kayıt: 20 Ara 2004 03:44

Ortalama alma (bölme işlemi)

Mesaj gönderen meren »

arkada$lar merhaba, bir bölme işlemi yaptıracam bir türlü yaptıramadım sürekli hata mesajı alıyoprum.. olay $u $ekilde

begin
Table1.Edit;
asatis := Table1.FieldByName('asatis').AsInteger;
rsatis := Table1.FieldByName('rsatis').AsInteger;
aciro := Table1.FieldByName('aciro').AsCurrency;
rciro := Table1.FieldByName('rciro').AsCurrency;
cirotop := Table1.FieldByName('cirotop').AsCurrency;
topadet := Table1.FieldByName('topadet').AsInteger;
Table1.FieldByName('topadet').AsInteger := asatis + rsatis;
Table1.FieldByName('cirotop').AsCurrency := aciro + rciro;
If CiroTop > 0 then
Table1.FieldByName('ortfiyat').AsCurrency := Trunc(cirotop / topadet); *** burası
Table1.Next;
end;

burada bölme işlemi aldığımda sürekli boş değer veriyor.. aslında cirotop ve topadet kısımları dolu bunları bölüm doğru değeri almam gerekiyor ama alamıyorum bunu nasıl yapabilirim ? yardımcı olursanız çok sevinirim. iyi çalışmalar
Kullanıcı avatarı
husonet
Admin
Mesajlar: 2962
Kayıt: 25 Haz 2003 02:14
Konum: İstanbul
İletişim:

Mesaj gönderen husonet »

'/' bunun yerine 'div' kullanmayı denedinizmi?

Kolay Gelsin...

Gazete manşetleri
* DİKKAT :Lütfen forum kurallarını okuyalım ve uyalım...!
* Warez,crack vs. paylaşımı kesinlikle yasaktır.
meren
Üye
Mesajlar: 71
Kayıt: 20 Ara 2004 03:44

Mesaj gönderen meren »

evet div kullanıyorum ama hata mesajı alıyorum


[Error] Unit1.pas(218): Operator not applicable to this operand type
[Fatal Error] Project1.dpr(6): Could not compile used unit 'Unit1.pas'

gibi..
Kullanıcı avatarı
nitro
Üye
Mesajlar: 1112
Kayıt: 23 Ağu 2004 01:18
Konum: Çanakkale
İletişim:

şöyle dene

Mesaj gönderen nitro »

cirotop := Table1.FieldByName('cirotop').AsCurrency;
topadet := Table1.FieldByName('topadet').AsInteger;

yerine :
cirotop: integer;
topadet: integer;

cirotop:= strtoint64(Table1.FieldByName('cirotop').text);
topladet := strtoint64(Table1.FieldByName('topadet').text);
Table1.FieldByName('ortfiyat').text := inttostr(cirotop div topadet);

kesin çalışır.
bu arada çanakkale onsekiz mart üniv.bilg. müh. ile bir alakanız var mı sayın meren?
meren
Üye
Mesajlar: 71
Kayıt: 20 Ara 2004 03:44

Mesaj gönderen meren »

merhaba dostum.. hayır çanakkale üniversitesi ile ilgim yok.. bu arada dediğin yöntemlede olay çözülmedi

burada
CIROTOP = NUMERIC
ORTFIYAT = NUMERIC
TOPADET = NUMERIC
$eklinde databasede tanımlı ben nasıl bölme işlemi sonucunu doğru alacağım arkadæ$lar???
Cevapla