select içinde select
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
select içinde select
arkadaşlar merhaba
şimdi benim şöyle bi sorunum var
müşterinin adi seçildiği zaman o müşteriye ait butun hareketleri bi gridde nasıl gosterebilirim.
bi mşterinin hem mesela faturanın başlık bilgileri ve satır bilgileri gozukecek
nasıl bir sorgu yazmalıyım
firebird ve d7 kullanıyorum..
şimdi benim şöyle bi sorunum var
müşterinin adi seçildiği zaman o müşteriye ait butun hareketleri bi gridde nasıl gosterebilirim.
bi mşterinin hem mesela faturanın başlık bilgileri ve satır bilgileri gozukecek
nasıl bir sorgu yazmalıyım
firebird ve d7 kullanıyorum..
بِسْمِ اللهِ الرَّحْمنِ الرَّحِيمِ
Forumun 365. Üyesi
Hiç Bir Şey İnsan Kadar Yükselemez ve Alçalamaz
Erkan ÇAĞLAR
Forumun 365. Üyesi
Hiç Bir Şey İnsan Kadar Yükselemez ve Alçalamaz
Erkan ÇAĞLAR
Sizin bulunduğunuz ortamın bilgilerine sahip olmadam sorunuzu cevaplamak çok zor. Onlarca karşı sorarak çözüme yaklaşabiliriz. Biraz daha açık yazmanız sanırım tüm arkadaşlara faydalı olur.
1. Girid gerekiyor mu ?
Gerekmiyorsa hepsini bir raporlama aracıyla raporlayıp sayfayı ekranda gösterebilirsiniz.
2. Grid Gerekiyorsa:
Müşteriyi temsil eden anahtar alanı, ilgili diğer detay tablolarda sorgulatıp elde ettiğiniz sonuç setlerini uygun bir şekilde araya getirerek sonucu gride alabilirsiniz.
Eğer dosya yapıları çok farklı ise :
2.a ) bunları farklı girdlerde gösterebilirsiniz. birisinin üzerinde dolaşınca diğerleri de ona uyabilir.
2. b) Sonucun görünmesi gerekn biçim her ne ise onu temsil eden bir tablo hazılayıp, sorgularınızı sonuçlarını bu tabloya taşıyıp, varsa tablo üzerinde düzenleme işlemlerini yaptıktan sonra gride taşıyabilirsiniz.
Genel bir öneri aktarmak istiyorum:
Programların tasarımına en sondan da başlayarak bakmayı ihmal etmeniyiniz. Yani sonuçta hangi raporlar çıkacaksa onları sağlayacak şekilde database yapısını hazırlarsanız, zaten kavramsal bir sorununuz oluşmaz. Teknik sorunlar ise kolaylıkla aşılabilir.
Kolay Gelsin,
1. Girid gerekiyor mu ?
Gerekmiyorsa hepsini bir raporlama aracıyla raporlayıp sayfayı ekranda gösterebilirsiniz.
2. Grid Gerekiyorsa:
Müşteriyi temsil eden anahtar alanı, ilgili diğer detay tablolarda sorgulatıp elde ettiğiniz sonuç setlerini uygun bir şekilde araya getirerek sonucu gride alabilirsiniz.
Eğer dosya yapıları çok farklı ise :
2.a ) bunları farklı girdlerde gösterebilirsiniz. birisinin üzerinde dolaşınca diğerleri de ona uyabilir.
2. b) Sonucun görünmesi gerekn biçim her ne ise onu temsil eden bir tablo hazılayıp, sorgularınızı sonuçlarını bu tabloya taşıyıp, varsa tablo üzerinde düzenleme işlemlerini yaptıktan sonra gride taşıyabilirsiniz.
Genel bir öneri aktarmak istiyorum:
Programların tasarımına en sondan da başlayarak bakmayı ihmal etmeniyiniz. Yani sonuçta hangi raporlar çıkacaksa onları sağlayacak şekilde database yapısını hazırlarsanız, zaten kavramsal bir sorununuz oluşmaz. Teknik sorunlar ise kolaylıkla aşılabilir.
Kolay Gelsin,
satır bilgileri
baaslık
buda baslık ddl si birbirlerine
şeklinde bağlılar
ben genelde DOMAIN kullandım.
bunun gibi 3 - 4 tane daha tablo var
buna gore bir sql cumlesi cıkarmam lazım
veriler gridde de gosterilmeli zaten gridde gordukten sonra rapora atması zor olmasa gerek.
Kod: Tümünü seç
CREATE TABLE FATURASATIR (
ID INTEGER NOT NULL,
FIRMA_NO INTEGER NOT NULL,
FATURA_ID INTEGER NOT NULL,
FATURANO VARCHAR(50) NOT NULL COLLATE PXW_TURK,
STOK_ID INTEGER NOT NULL,
STOKADI VARCHAR(50) NOT NULL COLLATE PXW_TURK,
MIKTAR SAYI /* INTEGER */ NOT NULL,
BIRIM KARAKTER /* VARCHAR(50) */,
BIRIMFIYAT PARABIRIMI /* DOUBLE PRECISION */,
KDV YUZDELIK_ORANLAR /* INTEGER */,
KDVTUTARI PARABIRIMI /* DOUBLE PRECISION */,
TUTAR PARABIRIMI /* DOUBLE PRECISION */,
ACIKLAMA VARCHAR(250) DEFAULT 1 COLLATE PXW_TURK,
KDVOK "BOOLEAN ALAN" /* CHAR(1) DEFAULT 'F' */,
KONTROL "BOOLEAN ALAN" /* CHAR(1) DEFAULT 'F' */,
ISKONTO PARABIRIMI /* DOUBLE PRECISION */,
ISKONTOORAN YUZDELIK_ORANLAR /* INTEGER */
);
Kod: Tümünü seç
CREATE TABLE FATURABASLIK (
ID INTEGER NOT NULL,
FIRMA_NO SAYI /* INTEGER */ NOT NULL,
FATURANO KARAKTER /* VARCHAR(50) */ NOT NULL COLLATE PXW_TURK,
KASIYER KARAKTER /* VARCHAR(50) */ COLLATE PXW_TURK,
TARIH TARIH_ALANLAR /* DATE */ NOT NULL,
SAAT SAAT_ALANLAR /* TIME */,
CH_ID INTEGER,
CH_KOD KARAKTER /* VARCHAR(50) */ COLLATE PXW_TURK,
CH_AD KARAKTER /* VARCHAR(50) */ COLLATE PXW_TURK,
CH_UNVAN KARAKTER /* VARCHAR(50) */ COLLATE PXW_TURK,
CD_ADRES VARCHAR(255) COLLATE PXW_TURK,
INDIRIM PARABIRIMI /* DOUBLE PRECISION */,
TOPLAM PARABIRIMI /* DOUBLE PRECISION */,
TOPLAMKDV PARABIRIMI /* DOUBLE PRECISION */,
GENELTOPLAM PARABIRIMI /* DOUBLE PRECISION */,
ARATOPLAM PARABIRIMI /* DOUBLE PRECISION */,
ODEME KARAKTER /* VARCHAR(50) */ DEFAULT 'Yapıldı' COLLATE PXW_TURK,
KDV KISA_YAZI /* VARCHAR(15) */ DEFAULT 'Dahil' COLLATE PXW_TURK,
KDVORANI YUZDELIK_ORANLAR /* INTEGER */,
ODEMETARIHI TARIH_ALANLAR /* DATE */,
SEVKTARIHI TARIH_ALANLAR /* DATE */,
SATISELEMANI KARAKTER /* VARCHAR(50) */ COLLATE PXW_TURK,
KUR_USD PARABIRIMI /* DOUBLE PRECISION */,
KUR_EURO PARABIRIMI /* DOUBLE PRECISION */,
USD PARABIRIMI /* DOUBLE PRECISION */,
EURO PARABIRIMI /* DOUBLE PRECISION */
);
Kod: Tümünü seç
baslik. ID -> satir.fatura_id
ben genelde DOMAIN kullandım.
bunun gibi 3 - 4 tane daha tablo var
buna gore bir sql cumlesi cıkarmam lazım
veriler gridde de gosterilmeli zaten gridde gordukten sonra rapora atması zor olmasa gerek.
بِسْمِ اللهِ الرَّحْمنِ الرَّحِيمِ
Forumun 365. Üyesi
Hiç Bir Şey İnsan Kadar Yükselemez ve Alçalamaz
Erkan ÇAĞLAR
Forumun 365. Üyesi
Hiç Bir Şey İnsan Kadar Yükselemez ve Alçalamaz
Erkan ÇAĞLAR
Siz bunu Raporlama içinmi kullanacaksınız?
Gazete manşetleri
* DİKKAT :Lütfen forum kurallarını okuyalım ve uyalım...!
* Warez,crack vs. paylaşımı kesinlikle yasaktır.
hem raporlama için hemde gridde gorebilmek için
بِسْمِ اللهِ الرَّحْمنِ الرَّحِيمِ
Forumun 365. Üyesi
Hiç Bir Şey İnsan Kadar Yükselemez ve Alçalamaz
Erkan ÇAĞLAR
Forumun 365. Üyesi
Hiç Bir Şey İnsan Kadar Yükselemez ve Alçalamaz
Erkan ÇAĞLAR
zaten yazmışsın neden soruyorsun anlamadımbaslik. ID -> satir.fatura_id

Kod: Tümünü seç
select * from FATURASATIR
where FATURASATIR.FATURA_ID = :Baslik_id
Kolay gele
ZAGOR TENAY TÜRK'tür... TÜRK kalacak...
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5
Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5
Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!
Bu kayıtları harici bir tabloda toplayıp işlem yapsa daha kolay olur ben bu şekilde yapıyorum mesala Alış Fatu. veya Satış Fatu eklediğim zaman Hareket tablosunada yapılan işlemi ekliyorum değiştirme işlemlerinde silme işlemlerindede Hareket tablosunu yapılan işlemleri güncelliyorum Tek bir tablodon istediğim gibi grid e ve Quick Rep ten çok rahat döküm alabiliyorum.
Gazete manşetleri
* DİKKAT :Lütfen forum kurallarını okuyalım ve uyalım...!
* Warez,crack vs. paylaşımı kesinlikle yasaktır.
kayıtları eklerken kodla alanları eşitleyerek mni yoksa başka nasıl bir eşitleme kullandınız...
بِسْمِ اللهِ الرَّحْمنِ الرَّحِيمِ
Forumun 365. Üyesi
Hiç Bir Şey İnsan Kadar Yükselemez ve Alçalamaz
Erkan ÇAĞLAR
Forumun 365. Üyesi
Hiç Bir Şey İnsan Kadar Yükselemez ve Alçalamaz
Erkan ÇAĞLAR
Belirli özelliklerini baz alarak raporlama için gerekli olabilecek bilgiler mesala Cari Kodu Fiş Türü Meblağ tutarları Fiş Numarası vb... Update lerdede Fiş Numarası FişTürü Cari Kod kısmı ile ulaşıp gerekli güncellemeleri yaparım vb...
Kolay Gelsin...
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.