AccessTr.neT

Tam Versiyon: tabloda olmayan bir alan forma nasıl eklenir
Şu anda arşiv modunu görüntülemektesiniz. Tam versiyonu görüntülemek için buraya tıklayınız.
sn.sledgeab

size birşey sormam gerekiyor. sizin yaptığınız uygulamayı aldım süper çalışıyor.personel ve eş için yapmışsınız. yanında çocuk hanesine yapmaya çalıştım.kod yazmışsınız ya o kodları çocuk1 için aynısını kopyaladım.eş yazan yeri çocuk1 yaptım.form ekranında resim yolu diye bir metin kutucuğu varya hani. onu inceledim personel ve eş sayfasındaki resim yolu kutucuğu tabloda öyle bir şey olmadığı halde nasıl ekleyebildiniz. çocuk1 sayfasına metin kutucuğu koyuyorum.denetim kaynağına bakıyorum RESIM diye birşey yok.tabloda olmayan bir kutu nasıl görünüyor ki.
diyelim ki tablonuzda iki tane alan var alan1 ve alan2 bu alanları toplayıp bir yere yazmanız gerektiğinde ne yaparsınız. ilişkisiz bir alan ( textbox ) ekleyip içine formülle ( kod yardımı ile ) işlem yaparsınız.

Örnek:
me.toplam = me.alan1 + me.alan2

toplam ilişkisiz bir textbox'tır.
yani sedgleabın gönderdiği RESIM öyle birşey. çalışan formdaki kodları kopyaladım
o kodda yazıysa neden gelmedi peki o da. visual da göster diyorya kodları açtım.orda personel diye birşey var kodlar yazılmış. eş diye var kodlar yazılmış.çalışıyor diye kodları kopyaladım.çocuk1 deyken kod yazma yeri geldi kpyaladım aynısını.eş yazan yeride çocuk1 yaptım.kaydettim. sonra çocuk1 formuna eş formundaki resim yolunu kopyaladım tepesinde yeşil bir renk belirdi.eş formundakine baktım.tabloda olmayan RESIM var.ama çocuk1 formunda RESIM diye birşey bulamıyorum ki ekleyeyim.balıt tutmayı öğrenmek istiyorum beynimide zorluyorum ama anlamıyorum işte
kopyala yapıştır herzaman netice vermez text alanlara verdiğiniz isimler önemlidir. yani bir formda metin1 alanında adı çıkıyorsa diğer formda metin1 isimli text belkide doğum tarihine geliyordur. genelde bütün kullanıcıların yaptığı hataların başında gelir. kod yazarkende çok uğraşırlar.
kendiniz tablo harici text alan eklemek isterseniz. resideki Toolbox'taki [ab (dik çizgi)] olan ikona basıp formda bir yeri tıklamalısınız.
Önceki konuya eklediğim örnekte PERSONEL tablosunda RESIM adında alan yok.

Fakat formun kayıt kaynağında sorgu var.

SELECT PERSONEL.[PER ADI VE SOYADI], Convert(Mid([PER ADI VE SOYADI],InStr(1,[PER ADI VE SOYADI]," ")+1) & "_" & Left([PER ADI VE SOYADI],InStr(1,[PER ADI VE SOYADI]," ")-1)) & ".jpg" AS RESIM, *
FROM PERSONEL;

Yukarıdaki koddan da anlaşılacağı üzere sorguya

RESIM: Convert(Mid([PER ADI VE SOYADI];InStr(1;[PER ADI VE SOYADI];" ")+1) & "_" & Left([PER ADI VE SOYADI];InStr(1;[PER ADI VE SOYADI];" ")-1)) & ".jpg"

şeklinde alan eklenmiş. Yani,

Form üzerinden "PER ADI VE SOYADI" alanına "Osman Tunç" isminde kişi kaydederseniz

Convert(Mid([PER ADI VE SOYADI];InStr(1;[PER ADI VE SOYADI];" ")+1)
koduyla tablodaki "PER ADI VE SOYADI" alanındaki verideki boşluk karakterinden sonrasını alır ve modüldeki Convert fonksiyonuyla ğ,i,ü,ş,ö,ç harglerini sırasıyla G,I,U,S,O,C harflerine çevrilerek tümü büyük harf yapılır.
Yani "Tunç", "TUNC" olur, "Gülşen", GULSEN" olur.


Left([PER ADI VE SOYADI];InStr(1;[PER ADI VE SOYADI];" ")-1))

koduyla boşluk karakterinden öncesini tümü büyük harfe çevirir ve türkçe karakterleri değiştirir. "Osman", "OSMAN" olur, "Gülçin", "GULCIN" olur.

Kodun tamamı olan

[vb]RESIM: Convert(Mid([PER ADI VE SOYADI];InStr(1;[PER ADI VE SOYADI];" ")+1) & "_" & Left([PER ADI VE SOYADI];InStr(1;[PER ADI VE SOYADI];" ")-1)) & ".jpg"
[/vb] koduyla da her iki alan arasına "_", sonuna ise ".jpg" eklenerek
"TUNC_OSMAN.jpg", "KAYA_GULHAN.jpg" şeklinde birleştirilir.
Sorgudaki alana "RESIM" olarak tanımlandığı için formda bu alanı kullanabilirsiniz.

Umarım açıklayıcı olmuştur.
evet anladım şimdi.ve de eklediğim benzer form alanlarına da yapabildim sayenizde. çok sabırlısınız... teşekkür ederim, çok sağolun.teşekkürler.