- Katılım
- 17 Ocak 2006
- Mesajlar
- 241
- Excel Vers. ve Dili
- excel xp türkçe
Merhaba arkadaşlar!...
Bu sefer sıkıntım visual basic dilinde belki yeri değil ama diğe formlardan yanıt alamadım.
Kod aşağıda:
'----------------------------------------------------------
Private Sub Command16_Click()
'On Error Resume Next
Dim Deneme1 As ADODB.Recordset
Set Deneme1 = New ADODB.Recordset
Dim SSK As Integer
Dim AklindaTut
'On Error GoTo Halen
Dim TBaglanti
Dim Trs
Dim TSQL
Dim TID
Dim TTakipDene
'bu kısımı değiştirme
Set TBaglanti = New ADODB.Connection
TBaglanti.Open "Provider=SQLOLEDB.1;Password=baris;Persist Security Info=True;User ID=baris;Initial Catalog=nebim2004;Data Source=DATABASE"
With Deneme1
.ActiveConnection = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Documents and Settings\bim5\Desktop\KART SİSTEMİ\veri tabanı\KARTLAR.mdb;Persist Security Info=False"
.LockType = adLockOptimistic
.CacheSize = 1
.CursorLocation = adUseClient
.CursorType = adOpenStatic
.Source = "select * from KARTLAR where Aktif='+' and Posta='+' Union select * from GOLD where Aktif='+' and Posta='+' Union select * from SİLVER where Aktif='+' and Posta='+' Union select * from ZİYLAN where Aktif='+' and Posta='+' "
.Open
End With
Dim TsKCee As ADODB.Recordset
Set TsKCee = New ADODB.Recordset
For SSK = 0 To Deneme1.RecordCount - 1
ProgressBar7.Max = Deneme1.RecordCount
Label33.Caption = "İşlem Yapılıyor!..."
AklindaTut = Deneme1.Fields(1).Value
Label47.Caption = Deneme1.Fields(1).Value
Label34.Caption = Deneme1.Fields(2).Value
TSQL = "select * from tbmusteri where lKodu ='" & AklindaTut & "'"
Set Trs = TBaglanti.Execute(TSQL)
TTakipDene = Trs("nmusteriID")
Label48.Caption = TTakipDene
With TsKCee
.ActiveConnection = "Provider=SQLOLEDB.1;Password=baris;Persist Security Info=True;User ID=baris;Initial Catalog=nebim2004;Data Source=DATABASE"
.LockType = adLockOptimistic
.CacheSize = 1
.CursorLocation = adUseClient
.CursorType = adOpenStatic
.Source = "select sum(lBrutFiyat) as BrutIslem,sum(lIskontoTutari) as IskontoIslem from tbstokfisidetayi where nmusteriID='" & TTakipDene & "'"
.Open
If Not IsNull(TsKCee.Fields!BrutIslem) Then
Deneme1.Fields!Satis = TsKCee.Fields!BrutIslem
Label54.Caption = TsKCee.Fields!BrutIslem
Else
Label54.Caption = "0"
Deneme1.Fields!Satis = "0"
End If
If Not IsNull(TsKCee.Fields!IskontoIslem) Then
Deneme1.Fields!Iskonto = TsKCee.Fields!IskontoIslem
Label55.Caption = TsKCee.Fields!IskontoIslem
Else
Label55.Caption = "0"
Deneme1.Fields!Iskonto = "0"
End If
Deneme1.MoveNext
ProgressBar7.Value = Deneme1.AbsolutePosition
End With
Next SSK
Set TBaglanti = Nothing
Set TsKCee = Nothing
Set Deneme1 = Nothing
Label33.Caption = "İşlem Tamamlandı."
End Sub
'------------------------------------------------------------
Yukarıda yapmak istediğim.:
Benim kendime ait 4 tablom var. bu 4 tabloyu union komutuyla birleştiriyorum.
4 tabloda ortak alan Müşteri kodları var.
SQL tablomda ortak alan MusID ve NMusID alanı var.
TSQL = "select * from tbmusteri where lKodu ='" & AklindaTut & "'"
Set Trs = TBaglanti.Execute(TSQL)
TTakipDene = Trs("nmusteriID")
koduyla TTakipDene Değeri tutup
.Source = "select sum(lBrutFiyat) as BrutIslem,sum(lIskontoTutari) as IskontoIslem from tbstokfisidetayi where nmusteriID='" & TTakipDene & "'"
Bu kodlada SQL deki müşterinin yapmuş olduğu alışverişleri ve yapılan iskontoyu
If Not IsNull(TsKCee.Fields!BrutIslem) Then
Deneme1.Fields!Satis = TsKCee.Fields!BrutIslem
Label54.Caption = TsKCee.Fields!BrutIslem
Else
Label54.Caption = "0"
Deneme1.Fields!Satis = "0"
End If
If Not IsNull(TsKCee.Fields!IskontoIslem) Then
Deneme1.Fields!Iskonto = TsKCee.Fields!IskontoIslem
Label55.Caption = TsKCee.Fields!IskontoIslem
Else
Label55.Caption = "0"
Deneme1.Fields!Iskonto = "0"
End If
işliyorum.
Bu kısımlarda problem yok.
Tek problemim Kendi tablomdaki ilerleme komutu
Deneme1.MoveNext
hata veriyor..
Bi türlü çözemedim fikri olan arkadaşlar bi el atsın...
Bu sefer sıkıntım visual basic dilinde belki yeri değil ama diğe formlardan yanıt alamadım.
Kod aşağıda:
'----------------------------------------------------------
Private Sub Command16_Click()
'On Error Resume Next
Dim Deneme1 As ADODB.Recordset
Set Deneme1 = New ADODB.Recordset
Dim SSK As Integer
Dim AklindaTut
'On Error GoTo Halen
Dim TBaglanti
Dim Trs
Dim TSQL
Dim TID
Dim TTakipDene
'bu kısımı değiştirme
Set TBaglanti = New ADODB.Connection
TBaglanti.Open "Provider=SQLOLEDB.1;Password=baris;Persist Security Info=True;User ID=baris;Initial Catalog=nebim2004;Data Source=DATABASE"
With Deneme1
.ActiveConnection = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Documents and Settings\bim5\Desktop\KART SİSTEMİ\veri tabanı\KARTLAR.mdb;Persist Security Info=False"
.LockType = adLockOptimistic
.CacheSize = 1
.CursorLocation = adUseClient
.CursorType = adOpenStatic
.Source = "select * from KARTLAR where Aktif='+' and Posta='+' Union select * from GOLD where Aktif='+' and Posta='+' Union select * from SİLVER where Aktif='+' and Posta='+' Union select * from ZİYLAN where Aktif='+' and Posta='+' "
.Open
End With
Dim TsKCee As ADODB.Recordset
Set TsKCee = New ADODB.Recordset
For SSK = 0 To Deneme1.RecordCount - 1
ProgressBar7.Max = Deneme1.RecordCount
Label33.Caption = "İşlem Yapılıyor!..."
AklindaTut = Deneme1.Fields(1).Value
Label47.Caption = Deneme1.Fields(1).Value
Label34.Caption = Deneme1.Fields(2).Value
TSQL = "select * from tbmusteri where lKodu ='" & AklindaTut & "'"
Set Trs = TBaglanti.Execute(TSQL)
TTakipDene = Trs("nmusteriID")
Label48.Caption = TTakipDene
With TsKCee
.ActiveConnection = "Provider=SQLOLEDB.1;Password=baris;Persist Security Info=True;User ID=baris;Initial Catalog=nebim2004;Data Source=DATABASE"
.LockType = adLockOptimistic
.CacheSize = 1
.CursorLocation = adUseClient
.CursorType = adOpenStatic
.Source = "select sum(lBrutFiyat) as BrutIslem,sum(lIskontoTutari) as IskontoIslem from tbstokfisidetayi where nmusteriID='" & TTakipDene & "'"
.Open
If Not IsNull(TsKCee.Fields!BrutIslem) Then
Deneme1.Fields!Satis = TsKCee.Fields!BrutIslem
Label54.Caption = TsKCee.Fields!BrutIslem
Else
Label54.Caption = "0"
Deneme1.Fields!Satis = "0"
End If
If Not IsNull(TsKCee.Fields!IskontoIslem) Then
Deneme1.Fields!Iskonto = TsKCee.Fields!IskontoIslem
Label55.Caption = TsKCee.Fields!IskontoIslem
Else
Label55.Caption = "0"
Deneme1.Fields!Iskonto = "0"
End If
Deneme1.MoveNext
ProgressBar7.Value = Deneme1.AbsolutePosition
End With
Next SSK
Set TBaglanti = Nothing
Set TsKCee = Nothing
Set Deneme1 = Nothing
Label33.Caption = "İşlem Tamamlandı."
End Sub
'------------------------------------------------------------
Yukarıda yapmak istediğim.:
Benim kendime ait 4 tablom var. bu 4 tabloyu union komutuyla birleştiriyorum.
4 tabloda ortak alan Müşteri kodları var.
SQL tablomda ortak alan MusID ve NMusID alanı var.
TSQL = "select * from tbmusteri where lKodu ='" & AklindaTut & "'"
Set Trs = TBaglanti.Execute(TSQL)
TTakipDene = Trs("nmusteriID")
koduyla TTakipDene Değeri tutup
.Source = "select sum(lBrutFiyat) as BrutIslem,sum(lIskontoTutari) as IskontoIslem from tbstokfisidetayi where nmusteriID='" & TTakipDene & "'"
Bu kodlada SQL deki müşterinin yapmuş olduğu alışverişleri ve yapılan iskontoyu
If Not IsNull(TsKCee.Fields!BrutIslem) Then
Deneme1.Fields!Satis = TsKCee.Fields!BrutIslem
Label54.Caption = TsKCee.Fields!BrutIslem
Else
Label54.Caption = "0"
Deneme1.Fields!Satis = "0"
End If
If Not IsNull(TsKCee.Fields!IskontoIslem) Then
Deneme1.Fields!Iskonto = TsKCee.Fields!IskontoIslem
Label55.Caption = TsKCee.Fields!IskontoIslem
Else
Label55.Caption = "0"
Deneme1.Fields!Iskonto = "0"
End If
işliyorum.
Bu kısımlarda problem yok.
Tek problemim Kendi tablomdaki ilerleme komutu
Deneme1.MoveNext
hata veriyor..
Bi türlü çözemedim fikri olan arkadaşlar bi el atsın...