27/08/2011, 21:53
28/08/2011, 09:10
konu benim sorum dışında mı devam ediyor anlamadım ?
çözüm varsa lütfen paylaşın
çözüm varsa lütfen paylaşın
28/08/2011, 09:24
Sizin soru eksenli gibi devam ediyor ama sanki biraz kayma oldu.
28/08/2011, 09:33
bir üstadın önerisini paylaşmak istiyorum buradan umarım cevap açısından faydalı olur, zira kodun içeriği bizim sorguyu verecek gibi ama ben yapamadım..
'*********************-----
Sub TEST()
MsgBox CreateReportSource(1)
End Sub
Function CreateReportSource(musteri_no As Long) As String
Dim rs As New Recordset
Dim fld As ADODB.Field
Dim s As String
Dim i As Integer
s = "select * from [tblürün] where [müşterino] = " & musteri_no
rs.Open s, CurrentProject.Connection, adOpenKeyset, adLockOptimistic
ReDim arr(1 To 1)
For Each fld In rs.Fields
If (Not IsNull(fld) Or Len(fld) > 0) Then
i = i + 1
ReDim Preserve arr(1 To i)
arr(i) = "[" & fld.Name & "]"
End If
Next
rs.Close
CreateReportSource = _
"SELECT " & Join(arr, ", ") & Chr(13) & _
"FROM [tblürün] " & Chr(13) & "WHERE [müşterino] = " & musteri_no
End Function
'**********************************
'*********************-----
Sub TEST()
MsgBox CreateReportSource(1)
End Sub
Function CreateReportSource(musteri_no As Long) As String
Dim rs As New Recordset
Dim fld As ADODB.Field
Dim s As String
Dim i As Integer
s = "select * from [tblürün] where [müşterino] = " & musteri_no
rs.Open s, CurrentProject.Connection, adOpenKeyset, adLockOptimistic
ReDim arr(1 To 1)
For Each fld In rs.Fields
If (Not IsNull(fld) Or Len(fld) > 0) Then
i = i + 1
ReDim Preserve arr(1 To i)
arr(i) = "[" & fld.Name & "]"
End If
Next
rs.Close
CreateReportSource = _
"SELECT " & Join(arr, ", ") & Chr(13) & _
"FROM [tblürün] " & Chr(13) & "WHERE [müşterino] = " & musteri_no
End Function
'**********************************
28/08/2011, 15:40
Bu verilen kod ile sorguyu msgbox'ta görebilirsiniz. Bunun için bir butonun tıklama yordamına TEST yazın. Verilen kodu da uygun bir boşluğa yapıştırın, o zaten kendi sözdizmini bulacaktır. Bir de hata uyarısı alırsanız referanslarda ADO'yu DAO'nun üstüne taşıyın. Önce DAO yorumlamaya çalıştığı için hata alırsınız. Bunları yaptıktan sonra düğmeye bastığınızda bir mesaj kutusu içinde Sql cümleciğini göreceksiniz. Zaten bu test amaçlı bir çalışma. Burda sonuç aldıysanız artık bu Sql cümleciğini işleterek bir Sql sorgusu oluşturup kullanacaksınız. Gördüğüm kadarıyla oluşan sorguda boş alanlar yok. Ama bu cümlecikten nasıl Sql sorgusu oluşturacaksınız onu ben de bilmiyorum. Sql bilgim fazla değil. Sql konusunda uzman arkadaşlar var sitemizde, onlar yardımcı olacaklardır.
28/08/2011, 16:53
sorgu tamam ise şimdi birde esnek rapor kaldı geriye.