işlemin ücretini alamıyorum

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
must_sargin
Üye
Mesajlar: 216
Kayıt: 14 Şub 2004 03:13
Konum: Gebze
İletişim:

işlemin ücretini alamıyorum

Mesaj gönderen must_sargin »

iyi çalışmalar,
programımda araçların sanayii firmasına gidip yaptırdığı işlemleri tutmak için master-detail yapı kullanarak ortak fisno kısmını kullanarak yapıyı kurdum. tablolar şu şekilde

sfirmaislem table:
---------------------
islemno + *
ano I
sfirmano I
fisno n
tarih d

sec.ind:ano,sfirmano

sfirmaislemalt
-----------------
yapilanislem a 50 *
fisno n *
adet n
fiyat $

sec.ind: fisno

query1'e : select sum(adet*fiyat) as tutar1 from sfirmaislemalt
where sfirmaislem.fisno = :fisno

şeklinde girip sonucu HusoDbEdit'e veya DBText'e aktardığım zaman sadece ilk kayıtın toplamını veriyor. kayıtlar arası gezerken veya yeni kayıt girerken 0 değeri veriyor.

yardımcı olursanız sevinirim. şimdiden teşekkürler.
must_sargin
Üye
Mesajlar: 216
Kayıt: 14 Şub 2004 03:13
Konum: Gebze
İletişim:

Mesaj gönderen must_sargin »

iyi çalışmalar,
yazmayı unutmuşum, sfirmaislemalttable'nin mastersource : sfirmaislemsource, masterfield : fisno, indexname : fisno_x şeklinde yaptım ve gridde düzgün olarak yukarıdan seçtiğin arac ve firma ya göre alttableye girip sadece o numaradaki kaydı gösteriyorum.
Kullanıcı avatarı
mussimsek
Admin
Mesajlar: 7603
Kayıt: 10 Haz 2003 12:26
Konum: İstanbul
İletişim:

Mesaj gönderen mussimsek »

Query'nin datasource özelliğini ayarladın mı? Ayarlamadı isen Datasource özelliğine sfirmaislemalt'ın datasourceunu ata.

Kolay gelsin.
must_sargin
Üye
Mesajlar: 216
Kayıt: 14 Şub 2004 03:13
Konum: Gebze
İletişim:

Mesaj gönderen must_sargin »

iyi çalışmalar,
iki query ile yapmayıda denedim ancak olmadı

query1 :
select * from sfirmaislem

d.s.-boş d.b.-nakliye
-------------------------------
query2 :
select fisno, sum(adet*fiyat) as tutar1 from sfirmaislemalt
where sfirmaislemalt.fisno = :fisno
group by fisno

d.s.-query1source d.b.-nakliye
must_sargin
Üye
Mesajlar: 216
Kayıt: 14 Şub 2004 03:13
Konum: Gebze
İletişim:

Mesaj gönderen must_sargin »

iyi çalışmalar,
yaptığım şekil master-detail ilişkisi doğru mu?
Kullanıcı avatarı
mussimsek
Admin
Mesajlar: 7603
Kayıt: 10 Haz 2003 12:26
Konum: İstanbul
İletişim:

Mesaj gönderen mussimsek »

şimdi baktım da master-detail ilişkiyi tam sağlamamışsın.

SQL için master-detail olayı şu şekilde :

Kod: Tümünü seç

select M.alan1, D.Alan1
from Master_Tablo M, Detail_Tablo D
where M.alan1=D.alan1
and M.alan2=D.alan2 
burda alan1 ve alan2 iki tabloyu birbirine bağlayan primary key'ler olacak. Sende bu şekilde bir ilişki kurup en sona

sfirmaislem.fisno = :fisno

satırını eklemen lazım.

Kolay gelsin.
must_sargin
Üye
Mesajlar: 216
Kayıt: 14 Şub 2004 03:13
Konum: Gebze
İletişim:

Mesaj gönderen must_sargin »

iyi çalışmalar,
admin ; dediğinize göre galiba iki tabloda da ilk alanı fisno yapıp alttablosunda sec.index'i fisno mu belirtmem gerekecek?
must_sargin
Üye
Mesajlar: 216
Kayıt: 14 Şub 2004 03:13
Konum: Gebze
İletişim:

Mesaj gönderen must_sargin »

iyi çalışmalar,
admin, dediğiniz şekilde yapılar kurdum sfirmaislemalt tablosu fisno ile sfirmaislem'e bağlı ve şu şekilde query ile halloldu:

select sfirmaislemalt.fisno, sum(sfirmaislemalt.fiyat*sfirmaislemalt.adet)tutar1 from sfirmaislemalt
where sfirmaislemalt.fisno = :fisno
group by sfirmaislemalt.fisno

query'nin DS.'u sfirmaislemSource

ama sfirmaislemalt tablosuna kayıt girdikçe yani o fişno üzerine kayıt ekledikçe query sonucu ile ilişkilendirdiğin DBText'in değişmesi için nasıl bir yol izlemem gerekir. çünkü kayıtlar arası gezerken sadece toplam değerini yazıyor. yardımcı olursanız sevinirim.
must_sargin
Üye
Mesajlar: 216
Kayıt: 14 Şub 2004 03:13
Konum: Gebze
İletişim:

Mesaj gönderen must_sargin »

iyi çalışmalar,
sfirmaislemalt tablosunun afterinsert olayına dm.sfirmaislem.last; komutunu girince kayıt ekledikçe eklenen kayıt tutarı ekleniyor. bu şekilde yapmak istediğim yapıyı kurdum. yardımlarınız için teşekkürler :)
Cevapla