hareketleri nasıl birleştirebilirim
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
- muhittin_turmus
- Üye
- Mesajlar: 27
- Kayıt: 09 Ağu 2003 10:30
- Konum: izmir
hareketleri nasıl birleştirebilirim
(kullandığım veritabanı dbase)
yaptığım çalışmamda x table var bu table da müşteri kodu ve adı tutuluyor
y table da ise hareketleri tutuluyor.. içinde alım tarihi,stok adı vealınan miktar değişkeni var
ben x table ile y table bağladım index ile örneğin musteri kodunu getirince o müşteriye ait alınan stoğu ve miktarını gosteriyor.. diğer müşteriyide çağırınca onun bilgilerini ayrı gosteriyor.. (cari ve hareketi mantığı)
3. table ise z table lım. bu table ise sadece alım tarihi,stok adı ve bakiye stok miktarı var..
yapamadığım olay şu:aynı tarihte alınan z tabla ındaki stok bakiye kısmına o tarihte alınan a stoğunun toplam miktarını yazsın..
örneğin a müşterisinden b tarihli 3 adet mause aldım..b müşterisindende aynı tarihli 10 adet mause aldım istiyorumki z table na o tarihli aldığım stoğun toplam bakiyesini yazsın.. ve şimdiye kadar alınan a stoğunun miktarını yazsın mantığını çozemedim yardımcı olursanız sevinirim..
yaptığım çalışmamda x table var bu table da müşteri kodu ve adı tutuluyor
y table da ise hareketleri tutuluyor.. içinde alım tarihi,stok adı vealınan miktar değişkeni var
ben x table ile y table bağladım index ile örneğin musteri kodunu getirince o müşteriye ait alınan stoğu ve miktarını gosteriyor.. diğer müşteriyide çağırınca onun bilgilerini ayrı gosteriyor.. (cari ve hareketi mantığı)
3. table ise z table lım. bu table ise sadece alım tarihi,stok adı ve bakiye stok miktarı var..
yapamadığım olay şu:aynı tarihte alınan z tabla ındaki stok bakiye kısmına o tarihte alınan a stoğunun toplam miktarını yazsın..
örneğin a müşterisinden b tarihli 3 adet mause aldım..b müşterisindende aynı tarihli 10 adet mause aldım istiyorumki z table na o tarihli aldığım stoğun toplam bakiyesini yazsın.. ve şimdiye kadar alınan a stoğunun miktarını yazsın mantığını çozemedim yardımcı olursanız sevinirim..
gençliğine güvenip
erken derken...
belki
elveda bile diyemessin
giderken...
erken derken...
belki
elveda bile diyemessin
giderken...
Merhaba,
b Satıcısından da 23/04/2004 tarihinde 10 adet mouse aldık diyelim.
Stoğu bulmak için Giriş ten Çıkışı çıkartmalıyız Stoğumuz 7 şu anda.
Örneğimizi Genişletelim.
ilk önce Sql kullanarak 23/04/2004 tarihi ve tarihinden önce satılan Mouse ları bir toplamını alalım.
Burada yapmış olduğumuz SQL işlemi IslemTuru nun SATIS olması ve Urun'un Mouse olması son olarakta Tarih in 23 nisan 2004 ve o tarhiten küçük olan tarihlerdeki şart ları belirten bir sorgulamadır. SUM komutu ile de CIKIS ların toplamını alırız. Bu SQL işlemini bir değişkene attıktan sonra bu işlemi GIRIS olan bolum ile de yaparsan ardından GIRIS ten CIKIS'I cıkartırsan neticeye ulaşırsın.
Kolay Gelsin...
İyi Geceler.
Örneğin a müşterisine 23/04/2004 tarihinde 3 adet mouse satışı oldu.örneğin a müşterisinden b tarihli 3 adet mause aldım..b müşterisindende aynı tarihli 10 adet mause aldım istiyorumki z table na o tarihli aldığım stoğun toplam bakiyesini yazsın.. ve şimdiye kadar alınan a stoğunun miktarını yazsın mantığını çozemedim yardımcı olursanız sevinirim..
b Satıcısından da 23/04/2004 tarihinde 10 adet mouse aldık diyelim.
Stoğu bulmak için Giriş ten Çıkışı çıkartmalıyız Stoğumuz 7 şu anda.
Örneğimizi Genişletelim.
ilk önce Sql kullanarak 23/04/2004 tarihi ve tarihinden önce satılan Mouse ları bir toplamını alalım.
Kod: Tümünü seç
Select SUM(CIKIS) From Tablo1 Where IslemTuru = 'SATIS' and Urun = 'MOUSE' and Tarih <= '23/04/2003'
Kolay Gelsin...
İyi Geceler.
Gazete manşetleri
* DİKKAT :Lütfen forum kurallarını okuyalım ve uyalım...!
* Warez,crack vs. paylaşımı kesinlikle yasaktır.
- muhittin_turmus
- Üye
- Mesajlar: 27
- Kayıt: 09 Ağu 2003 10:30
- Konum: izmir
huseyin abi sağolda ....
abisağol yazmıssında anlamadım burda yanlızca giriş olcak çıkış yok
gençliğine güvenip
erken derken...
belki
elveda bile diyemessin
giderken...
erken derken...
belki
elveda bile diyemessin
giderken...
Merhaba
Burada sadece giriş olacak diyorsan SQL 'i ni yazdığım gibi düzenleyebilirsin.
Tablolarının yapısı farklı olabilir. SQL kullanırsan buna benzer bir yapıyla ulaşabilirsin. Bunu SQL kodunu size fikir vermesi açısından yazdım.
Birde anlamadığınız noktalar nelerdir. Belki ben de anlamamış olabilirim
Kolay Gelsin...
Burada sadece giriş olacak diyorsan SQL 'i ni yazdığım gibi düzenleyebilirsin.
Kod: Tümünü seç
Select SUM(GIRIS) From Tablo1 Where IslemTuru = 'ALIS' and Urun = 'MOUSE' and Tarih = '23/04/2003'

Birde anlamadığınız noktalar nelerdir. Belki ben de anlamamış olabilirim

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.
- muhittin_turmus
- Üye
- Mesajlar: 27
- Kayıt: 09 Ağu 2003 10:30
- Konum: izmir
huseyın abi umarım anlarsın
hüseyin abi yapmak istediğim şu inan ki çok basit ama ben,m bilgim zayıf olduğu için yapamıyorum
ve senin verdiğim kodlardan da birsey anlamadım ok komutu anladım ama nerde neyin içinde nasıl kullananacağını bilmiyorum..
abi ben şunu yaptım cari table ım var.bu taybelda adısoyadı,kodu var..
2.table ım alım tableı..bundada stok adı, miktarı ,bakiye ve ındx adında bir değişkenim var
şunu yapıyorum carıtable ile alım tablenı master sourc ile bağladım bir cariyi çağırdığım zaman o cariye ait
alım hareketleri geliyor...yani hangi cariye ne kaydettiysem o bilgiler geliyor...
ben kaydederkende table1.post metodunu kullanıyorum..her kaydet dediğimde alta ki grid ekranınabilgileri atıyor...
bende formun altına bir yere 2. grid ekranı koydum bu grid ekranını içindede alım tarihi ve bakiye var..
istiyorumki istenilen müşteriyi çağırıp alınan stoğu yazıp kaydet dediğin zaman nasıl alttaki grid ekranına bilgileri kaydediyor diğer 2.grid ekranınada o tarihte alınan bakiyeyi hesaplasın..
örneğin:a müşterisi 15.04.2004 tarihinde 3 adet kalem sattı. yine aynı tarihte aynı müşteri 2 saat sonra yine geldi 5 adet klaem daha sattı..
her alım yaptığımda bakiye otomatik olarak artsın.
abi yaptığım programda hep alım var satış yok sen sağol demişşin sql kullan demişşin su kodu vermişşin Select SUM(GIRIS) From Tablo1 Where IslemTuru = 'ALIS' and Urun = 'MOUSE' and Tarih = '23/04/2003'
mesala burda sum(giriş) demişşin bu giris ne tanımlamamı değişkenmi,bu direk boyle yazsan hata verir zanedersem
işlem turu alış demişşin burdaki alısı direkt boyle yazarsam hata vermezmi yanı bunları anlamadım zan edersem bunları tanımlamamk lazım nasıl nerde tanımlayacağız..,ne olarak tanımlamamız gerekiyo
eğer dataylı anlatırsan çok sevinirim benim 1 kere mantığını anlamam yeterli olur inan ..yardımcı olursanız sevinirim..çok şıkıstım..
ve senin verdiğim kodlardan da birsey anlamadım ok komutu anladım ama nerde neyin içinde nasıl kullananacağını bilmiyorum..
abi ben şunu yaptım cari table ım var.bu taybelda adısoyadı,kodu var..
2.table ım alım tableı..bundada stok adı, miktarı ,bakiye ve ındx adında bir değişkenim var
şunu yapıyorum carıtable ile alım tablenı master sourc ile bağladım bir cariyi çağırdığım zaman o cariye ait
alım hareketleri geliyor...yani hangi cariye ne kaydettiysem o bilgiler geliyor...
ben kaydederkende table1.post metodunu kullanıyorum..her kaydet dediğimde alta ki grid ekranınabilgileri atıyor...
bende formun altına bir yere 2. grid ekranı koydum bu grid ekranını içindede alım tarihi ve bakiye var..
istiyorumki istenilen müşteriyi çağırıp alınan stoğu yazıp kaydet dediğin zaman nasıl alttaki grid ekranına bilgileri kaydediyor diğer 2.grid ekranınada o tarihte alınan bakiyeyi hesaplasın..
örneğin:a müşterisi 15.04.2004 tarihinde 3 adet kalem sattı. yine aynı tarihte aynı müşteri 2 saat sonra yine geldi 5 adet klaem daha sattı..
her alım yaptığımda bakiye otomatik olarak artsın.
abi yaptığım programda hep alım var satış yok sen sağol demişşin sql kullan demişşin su kodu vermişşin Select SUM(GIRIS) From Tablo1 Where IslemTuru = 'ALIS' and Urun = 'MOUSE' and Tarih = '23/04/2003'
mesala burda sum(giriş) demişşin bu giris ne tanımlamamı değişkenmi,bu direk boyle yazsan hata verir zanedersem
işlem turu alış demişşin burdaki alısı direkt boyle yazarsam hata vermezmi yanı bunları anlamadım zan edersem bunları tanımlamamk lazım nasıl nerde tanımlayacağız..,ne olarak tanımlamamız gerekiyo
eğer dataylı anlatırsan çok sevinirim benim 1 kere mantığını anlamam yeterli olur inan ..yardımcı olursanız sevinirim..çok şıkıstım..
gençliğine güvenip
erken derken...
belki
elveda bile diyemessin
giderken...
erken derken...
belki
elveda bile diyemessin
giderken...
Tekrar Merhaba,abi yaptığım programda hep alım var satış yok sen sağol demişşin sql kullan demişşin su kodu vermişşin Select SUM(GIRIS) From Tablo1 Where IslemTuru = 'ALIS' and Urun = 'MOUSE' and Tarih = '23/04/2003'
mesala burda sum(giriş) demişşin bu giris ne tanımlamamı değişkenmi,bu direk boyle yazsan hata verir zanedersem
işlem turu alış demişşin burdaki alısı direkt boyle yazarsam hata vermezmi yanı bunları anlamadım zan edersem bunları tanımlamamk lazım nasıl nerde tanımlayacağız..,ne olarak tanımlamamız gerekiyo
eğer dataylı anlatırsan çok sevinirim benim 1 kere mantığını anlamam yeterli olur inan ..yardımcı olursanız sevinirim..çok şıkıstım..
Bakın Yazdığım SQL kodudur. Bu SQL kodunu Query bileşenleri ile kullanabilirsin.
SUM(GIRIS) ibaresi GIRIS alanlarının toplamıdır. Giriş alanı Tablonda Stok miktarları ilgilendiren kısımdır. Burayı kendi tablonda ki alan ismine göre düzenleyebilrsin.
SQL bilgin zayıfsa ipucu kısmında detaylı derecede örnekler. Var.
Bu SQL işlemleri datandaki tablolarla alakalıdır. Dışardan sorgulama işlemi yazdığın zaman değişken kullanmalısın. Örnek olarak tarih kısmını değişken olarak tanımlayabilirsin.
SQL işlemlerinde veriye erişmek için direkt olarak dataset in Field'ından yararlanabilirsin.
Kod: Tümünü seç
var
StokToplam : Integer;
Begin
StokToplam := Query1.Fields[0].AsInteger;
ShowMessage(IntTostr(StokToplam));
End;
İyi Geceler.
Gazete manşetleri
* DİKKAT :Lütfen forum kurallarını okuyalım ve uyalım...!
* Warez,crack vs. paylaşımı kesinlikle yasaktır.
- muhittin_turmus
- Üye
- Mesajlar: 27
- Kayıt: 09 Ağu 2003 10:30
- Konum: izmir
bakiyeyi toplama(hüseyin abi)
huseyin abi yaptım olmadı program hata veriyor ben sana basit bir örnek program yolluyorum her kayıtta bakiyeyide yazsın onu yapamadım bakarsansevinirim abi yolladığım örnekte cariyi kaydediyon sonra o cariyi çağırıp hareketine mal alımı işliyon ama her işlediğinde bakiyeyi toplasında yazsın sen onu sql den yapamadım olmadı programı mail attım
gençliğine güvenip
erken derken...
belki
elveda bile diyemessin
giderken...
erken derken...
belki
elveda bile diyemessin
giderken...
Arkadaşım Olayını hallettim mail adresine postaladım. Yalnız Sql in Sum olayını kullanamadım Dbase Tablolarında problem olabilir. (DBase tecrübem yok)
After Post olayına yazdığım kod çalışıyor.
Kolay Gelsin...
After Post olayına yazdığım kod çalışıyor.
Kod: Tümünü seç
procedure TForm2.Table2AfterPost(DataSet: TDataSet);
var
Bak:Integer;
begin
Bak:= 0;
with Query1 Do
Begin
Close;
Sql.Clear;
Sql.Add('Select * From Har Where MAL = :Mal');
Params[0].AsString := DBEdit3.Text;
Open;
End;
if Query1.RecordCount > 0 Then
Begin
Query1.First;
While not Query1.eof Do
Begin
Bak := Bak + Query1MIK.AsInteger;
Query1.Next;
End;
with Query1 do
Begin
Close;
Sql.Clear;
Sql.Add('Update HAR Set TOPLAM = '''+IntToStr(Bak)+'''Where Mal = :Mal1');
Params[0].AsString := DBEdit3.Text;
ExecSql;
End;
End;
Table2.Refresh;
end;
Gazete manşetleri
* DİKKAT :Lütfen forum kurallarını okuyalım ve uyalım...!
* Warez,crack vs. paylaşımı kesinlikle yasaktır.
Arkadaşlar araştırdım BDE de Sql in SUM ve MAX vb..komutlarında problem oluyormuş bu BDE den kaynaklanıyormuş.
Bu problemi aşabilen varmı veya deniyen Merak ettim de
İyi Çalışmalar.
Bu problemi aşabilen varmı veya deniyen Merak ettim de

İyi Çalışmalar.
Gazete manşetleri
* DİKKAT :Lütfen forum kurallarını okuyalım ve uyalım...!
* Warez,crack vs. paylaşımı kesinlikle yasaktır.
Recep Abi
Database DBase
Editör Delphi6
Kullanılan Bileşen Query
Çok basit bir Sql uygulamasın
Select Sum(MIK) from HAR.DBF
Hata mesajı ise
Query1:Field 'MAL' not Found.
Teşekkürler.
Database DBase
Editör Delphi6
Kullanılan Bileşen Query
Çok basit bir Sql uygulamasın
Select Sum(MIK) from HAR.DBF
Hata mesajı ise
Query1:Field 'MAL' not Found.
Teşekkürler.
Gazete manşetleri
* DİKKAT :Lütfen forum kurallarını okuyalım ve uyalım...!
* Warez,crack vs. paylaşımı kesinlikle yasaktır.
Hocam SqlExplorer de denedim. Problem yok tahminim Query bileşeninde problem olabilir. Güncellemesini nasıl yapıp deneyebilirim acaba ?
Teşekkür Ederim.
Teşekkür Ederim.
Gazete manşetleri
* DİKKAT :Lütfen forum kurallarını okuyalım ve uyalım...!
* Warez,crack vs. paylaşımı kesinlikle yasaktır.
valla Query bilesen kodlarından kaynaklanmıyordur buyuk ihtimalle
yani boyle bir olay olsa farkedilmeden cozulurdu
ben d5 te query bileseni ile denemedim ama vaktim olursa deneyip bildiririm
eger delphi sp yuklemissen guncelleme icin yeterli
mesela bende sp2 yuklu daha baska yok sanırım d5 icin
kolay gelsin
yani boyle bir olay olsa farkedilmeden cozulurdu
ben d5 te query bileseni ile denemedim ama vaktim olursa deneyip bildiririm
eger delphi sp yuklemissen guncelleme icin yeterli
mesela bende sp2 yuklu daha baska yok sanırım d5 icin
kolay gelsin
ÜŞENME,ERTELEME,VAZGEÇME
Hocam Delphi 6 orjinal halini kullanıyorum hiçbir güncelleme yapmadım sadece IBX bileşenlerimi güncellemiştim. SP güncellemesi Delphi 6 içinde geçerli olabilirmi?
Teşekkür Ederim...
Teşekkür Ederim...
Gazete manşetleri
* DİKKAT :Lütfen forum kurallarını okuyalım ve uyalım...!
* Warez,crack vs. paylaşımı kesinlikle yasaktır.