Hatam Nerede? Artık bunalım geçiriyorum!

30/12/2008, 11:43

assenucler

Dostlar, herkese günaydın.

Sayın Ayhan2122'nin eklediği aşağıdaki dosyadaki "Form1"'e 2 adet tarih metin kutusu ekledim.

Şablon tabloları seçeneklerini kullanarak "YonetimGelirleri" tablosuna kayıt ekleyemiyorum.

6 saattir, aynı konuda onu yap, bunu boz, kafam karıştı...

Sizden yardım istiyorum.

Teşekkürler.
30/12/2008, 13:13

accessman

YonetimGelirleri_YoneticiSablon_1 tablosundaki son tarihlere uygun tarih aralığını girdiğinde ekleme yapıyor
30/12/2008, 13:58

assenucler

Sayın accesman;

Hatanın etiket kutusu genişliğinin, "ekle" komut kutusunu kaplaması dolayısıyla oluştuğunu farkettim.

İlginiz için teşekkürler.
30/12/2008, 14:06

esrefigit

böyle bir şey için bu kadar sorguya gerek yok sanırım
öncelikle oturanlar tablosunda kişinin dairemi küçük dükkanmı büyük dükkanmı olduğunu belirten bir alan ekleyeceksin

sonra forma bir adet son ödeme tarihi bir adet işlem türünü seçeğin bir açılan kutu birde daire küçük dükkan büyük dükkan seçimi yapacağın açılan kutu birde ödeme miktarı

şimdi önce son ödeme tarihini girdin=15.02.2008 sonra işlem türünü seçtin=Aidat sonra tipi seçtin =küçük dükkan sonra ödeme miktarıonı yazdın=15,62 ve düğmeye tıkladın kutuları kontrol etti boş olan varsa uyardı yoksa

ado kodu
önce oturanlar tablosundan küçük dükkanları ayıracak
sonra bu ayırdığı kayıtları tek tek dolanmaya başlayacak her kayıtta YonetimGelirleri tablosuna oturan adı olarak oturanlar tablsoundaki geldiği kayıttaki id yi sonodemetarihi alanına formdaki yazdığın son ödeme miktarını odeyecegi alnına forma yazdığın ödeme miktarını
IslemTurü alanıaa formdan seçtiğin işlem türünü
Odemetarihi alanını bo ş bırakacak
odedigi alanını boş bırakacak
neyse diğer alanlar boş kalacak
rs1=oturanlar tablsosu
rs=yönetim gelirleri tablosu
ado olarak
rs.addnew
rs("oturanadı")=rs1("oturanid")
rs("işlemtürü)=formdaki işlem türü alanı
bu şekilde oturanlar tablosundan süzülmüş küçük dükakan kayıtlarını dolanarak her kayıtta yönetim gelirleri tablosuna bir kayıt ekler

sanırım anladın

bunun benzeri örnekler kod deposunda var
tık tıkla her şeyi hallet
30/12/2008, 14:27

assenucler

Sayın esrefigit hocam;

Verdiğiniz bilgiler için çok teşekkürler.

Bir etiket genişliğinin komut düğmesine kadar taşması dolayısıyla, 6 saat uğraştım ve çaresiz kaldım ve sitemize yazdım.

İnşaallah şu denetim işlerini bitirdikten sonra, zaman ayırıp ortaya bir şeyler çıkarmaya çalışırım.

Bu arada, yeni yılınızı kutlar; sağlıklı, huzurlu, mutlu, başarılı ve bol kazançlı bir yeni yıl dilerim.

Sevgi ve saygılar.
30/12/2008, 18:47

esrefigit

sanırım sen çözmüşsün lakin ben yinede konuyu açıp cevap vereyim dedim
bu senin sorunun tam çözümü

Private Sub Komut1_Click()
On Error GoTo Err_Komut1_Click
Dim kontrol As Integer
Dim kontrol1 As Integer
kontrol1 = 1
For kontrol = 1 To 4
If IsNull(Me("I" & kontrol).Value) Then
MsgBox Me("I" & kontrol) & "şimdi gideceğiniz alanı boş geçemezseniz", , "UYARI"
Me("I" & kontrol).SetFocus
Exit Sub
End If
Next kontrol
ekle
Exit_Komut1_Click:
Exit Sub

Err_Komut1_Click:
MsgBox Err.Description
Resume Exit_Komut1_Click
End Sub

Function ekle()
Dim msg, Style, Title, Help, Ctxt, Response, MyString
Style = vbYesNo + vbCritical + vbDefaultButton2
Title = "UYARI"
Help = "DEMO.HLP"
Ctxt = 1000
Dim rs As New ADODB.Recordset
Dim rs1 As New ADODB.Recordset
Dim strsql As String
strsql = "SELECT * From Oturanlar "
strsql = strsql & "WHERE tür Like '" & Me.I1.Column(0) & "' "
rs.Open strsql, CurrentProject.Connection, adOpenKeyset, adLockOptimistic
rs1.Open "YonetimGelirleri", CurrentProject.Connection, adOpenKeyset, adLockOptimistic
If rs.EOF = True Then
MsgBox "seçtiğiniz türe ait oturanlar tablsounda kayıt yok başka bir tür seçin."
Else
msg = "Seçtiğiniz" & vbCrLf & Me.I1.Column(0) & " Adlı Türden" & vbCrLf & rs.RecordCount & " " & "Kişiye ekleme yapacaksınız kabul ediyormusunuz"
Response = MsgBox(msg, Style, Title, Help, Ctxt)
If Response = vbYes Then
If rs.EOF <> True Then
Do
rs1.AddNew
rs1("kapino") = rs("OKNo")
rs1("sonodemetarihi") = Me.I3
rs1("odeyecegi") = Me.I2
rs1("IslemTur") = Me.I4.Column(0)
rs1.Update
rs.MoveNext
Loop Until rs.EOF
End If
Set rs1 = Nothing
Set rs = Nothing
Set conn = Nothing
End If
End If
If Response = vbNo Then '
Exit Function
End If
End Function

bu işlemi tersine çevirirsen yönetimgelirleri tablosundaki verileri başka bir tabloya aktararak bu tabloyu siler amma neden böyle bir şeye ihtiyaç duyuyorsun anlamadım bu gelirler yıllık toplanmıyormu zaten bu tabloya son ödeme tarihi diye bir alnda yokmu o alan sana gerekli tüm süzmeleri sağlar yani bunu sil onu al oraya götür gerek yok zaten kişilerin borçlarınıda id sine göre alıyorsun buna birde year(sonödemetarihi) diye bir alan eklersin
oda sana yıllarına göre kayıtları ayırmana yarar