İlişkisiz Tablodan Formdaki Liste Kutusuna Kişileri Alarak Alt Forma Göndermek

31/03/2020, 19:07

SeferŞANLI

İlişkisiz tablolarımdan (1. tbl_ogrenci 2. tbl_ogretmen) olan tablolarımdan aldığım kişi bilgilerini (öğretmen için ad soyad, branş, görev-ogrenci için  ad soyad, okul no, sınıfı) bilgilerini frm_savunmadavetformu ndaki liste kisilere alarak, kişi ekle butonuyla alt forma aktarmak istiyorum.

Kısacası ilişkisiz iki tablodan kişi bilgilerini liste kutusuna nasıl alabiliriz.
02/04/2020, 12:34

berduş

1 - bahsettiğiniz formda sadece öğrenci tablosu var öğretmenle ilgili herhangi bir tablo yok
2 - tabloları oluştururken yine aynı hatayı yapmışsınız galiba, öğrenci tablosunda: öğrenci bilgileri -adı sınıfı nosu-, öğretmen tablosunda : öğretmen bilgileri zaten var yeniden neden savunma tablosuna ekleniyor?
savunma tablosunda öğretmen yada öğrenci ayrımı yapıldıktan sonra sadece tanımlayıcı kimlik (TCNo) yeterli geriye kalan bilgiler asıl tablolarından çekilebilir, ilişkili tablo kurmanın mantığı aynı bilgilerin defalarza farklı yerlere kaydedilmesinin önüne geçmektir. savunma tablosunda kişilere atfen 2 alan tek olmalı öğretmen/öğrenci olduğunu gösteren alan ve TC kimlik No
1 olay Id
2 savunmatarihi
3 savunmasaati
4 yeri
5 belgetarih
6 konumu: bu alan eklenmeli :kişi öğretmen tablosunda mı yoksa öğrenci tablosunda mı anlamak için Öğretmen/Öğrenci yazmasını sağlar
7 TC Kimlik

kişinin TC bilgisi ve hangi tabloda olduğu bilindikten sonra diğer bilgiler oradan alınabilir yeniden savunma tablosuna eklemeye gerek yok,
tekrar ve tekrar vurgulayarak söylüyorum:
ilişkili tabloların mantığı; bir bilgi bir tabloda varsa onu tekrar takrar eklemeye gerek duyulmamasını sağlamaktır
02/04/2020, 12:53

SeferŞANLI

Sayın berduş; Anlamaya çalışıyorum.
* İlişkili tablolarda rapor almak ve kayıt tutmak için ilişkili alanı sayı olarak atmak yeterli. Kusura kalmayın anca anlıyorum;)
* Öğretmen ve öğrenci tablosunda ilişki yok. Kayıt edilecek rapora ayrım yaptık diyelim.
* Peki Öğretmen ve öğrencileri iki farklı tablodan bir liste kutusuna nasıl alırım.? Rapordaki sorguya Sadece ogr_id ve ogretmen_id getirip tablolarıda ekleyerek verileri istediğim mentin kutularına getirebilir miyim? Öğrenmek için soruyorum.
02/04/2020, 13:32

berduş

2 farklı ilişkisiz tabloyu Union All komutuyla birleştirebilirsiniz. ekleyeceğiniz sütun sayısı ve türü aynı/uyumlu olmalı diye biliyorum.
ama sizin eklediğiniz savunma tablosunda yanlış hatırlamıyorsam sadece öğrenciye uygun bir yapı kurgulamışsınız
ifade tutanağının gerçek yapısını bilmediğim için tam olarak şunu yapın yada bunu yapın diyemem ama sorguyu oluştururken sadece TCyi kullanıp diğer alanlar birleştirilip tek bir alanda gösterilebilir
mesela savunmaya çağrı tablosunda
yer,tarih vs vs gibi genel alanların dışında TC ye bağlı 1 alan olması yeterli gerisi tek sorgu altında birleştirmek olur
mesela aşağıdaki kodu örnek olarak kullanırsak daha iyi anlayabilirsiniz burada hepsi listelenmiş ama kriterle istediğimiz değerleri de alabilirdik
SELECT tbl_ogrenci.ogr_id , 'Öğrenci', tbl_ogrenci.tckimlik, [tbl_ogrenci]![adi_soyadi] & " / " & [tbl_ogrenci]![sinifi] & " / " & [tbl_ogrenci]![okul_no] AS bilgiler
FROM tbl_ogrenci
union all
SELECT tbl_ogretmen.ogr_id, 'Öğretmen',tbl_ogretmen.ogretkod, [tbl_ogretmen]![adi_soyadi] & " / " & [tbl_ogretmen]![bransı] & " / " & [tbl_ogretmen]![gorevi] & " / " & [tbl_ogretmen]![reh_sınıfı] AS Bilgi
FROM tbl_ogretmen;
04/04/2020, 01:54

SeferŞANLI

Kusura kalmayın. Malum okullar tatil olunca bilgisayar anca elime geçti. Teşekkür etmeyi unutmuşum