Dinamik, Çapraz Sorgu İle Oluşturulan Form - Baskı Önizleme +- AccessTr.neT (https://accesstr.net) +-- Forum: Microsoft Access (https://accesstr.net/forum-microsoft-access.html) +--- Forum: Access Örnekleri ve Uygulamaları (https://accesstr.net/forum-access-ornekleri-ve-uygulamalari.html) +--- Konu Başlığı: Dinamik, Çapraz Sorgu İle Oluşturulan Form (/konu-dinamik-capraz-sorgu-ile-olusturulan-form.html) |
Cvp: Dinamik, Çapraz Sorgu İle Oluşturulan Form - feraz - 14/02/2020 Kıda alttaki kırmızı olanları eklemediğiniz için donuyormuş. Transform olayını açıklarsanız seviniriz. Application.Echo False If IsNull(Metin1.Value) Then MsgBox "Başlangıç Tarihi Giriniz." Application.Echo True Metin1.SetFocus Exit Sub End If If IsNull(Metin3.Value) Then MsgBox "Başlangıç Tarihi Giriniz." Application.Echo True Metin3.SetFocus Exit Sub End If If CDbl(Metin1.Value) > CDbl(Metin3.Value) Then MsgBox "Başlangıç Tarihi Bitiş Tarihinden büyük olamaz" Application.Echo True Metin1.Value = "" Metin3.Value = "" Metin1.SetFocus Exit Sub End If Cvp: Dinamik, Çapraz Sorgu İle Oluşturulan Form - feraz - 14/02/2020 (14/02/2020, 20:31)feraz yazdı: Kıda alttaki kırmızı olanları eklemediğiniz için donuyormuş. Ayrıca alttaki kod ilede Listboxun seçili olup olmadığını kontrol edebilirsiniz. Kod:
If Liste5.ListIndex = -1 Then Cvp: Dinamik, Çapraz Sorgu İle Oluşturulan Form - alicimri - 14/02/2020 Sayın feraz haklısınız, dosyanın donma sorunun halledilmiş şeklini ilk mesajda güncelledim. TRANSFORM çapraz sorgu oluşturma deyimi Cvp: Dinamik, Çapraz Sorgu İle Oluşturulan Form - feraz - 14/02/2020 Sağolunuz. Alttaki kırmızı yeri eklememişsiniz yani listbox seçili olayını. TRANSFORM bunun mantığını anlatabilirmisiniz nasıl çalışır.Accesse özgü birşey midir? Option Compare Database Private Sub Form_Load() Metin1.SetFocus End Sub Private Sub Komut0_Click() Application.Echo False If IsNull(Metin1.Value) Then MsgBox "Baþlangýç Tarihi Giriniz." Application.Echo True Metin1.SetFocus Exit Sub End If If IsNull(Metin3.Value) Then MsgBox "Baþlangýç Tarihi Giriniz." Application.Echo True Metin3.SetFocus Exit Sub End If If CDbl(Metin1.Value) > CDbl(Metin3.Value) Then MsgBox "Baþlangýç Tarihi Bitiþ Tarihinden büyük olamaz" Application.Echo True Metin1.Value = "" Metin3.Value = "" Metin1.SetFocus Exit Sub End If If Liste5.ListIndex = -1 Then MsgBox "ADI secilmedi...", vbCritical, "Hata" Application.Echo True Exit Sub End If Const strForm = "Rapor" Const strCtl = "txtTest" Dim frm As Form Dim ctl As Control Dim lbl As Control DoCmd.OpenForm FormName:="Rapor", View:=acDesign Set frm = Forms("Rapor") frm.RecordSource = "" If IsNull(Liste5.Value) Then ek = "" Else ek = " AND adý='" & Liste5.Value & "'" End If Sql = "TRANSFORM Sum(Tablo1.say) AS Toplasay SELECT Tablo1.adý FROM Tablo1 WHERE (((Tablo1.tarih)>=" & CDbl(Metin1.Value) & ") AND ((Tablo1.tarih)<=" & CDbl(Metin3.Value) & "))" & ek & " GROUP BY Tablo1.adý PIVOT Tablo1.tarih;" frm.RecordSource = SQL For x = 0 To Forms("Rapor").Controls.Count - 1 DeleteControl frm.Name, frm.Controls(0).Name DoEvents Next sol = 0 Dim ys As New ADODB.Recordset ys.Open SQL, CurrentProject.Connection, adOpenKeyset, adLockOptimistic If ys.Fields.Count > 32 Then RunCommand acCmdSave DoCmd.Close acForm, "Rapor" MsgBox "Tarih aralýðý 31 gün ile sýnýrlýdýr." Metin3.Value = "" Metin3.SetFocus Application.Echo True Exit Sub Else For i = 0 To ys.Fields.Count - 1 Set ctl = CreateControl(FormName:=strForm, ControlType:=acTextBox, ColumnName:=ys.Fields(i).Name, Left:=sol, Top:=0, Width:=750, Height:=288) ctl.Name = ys.Fields(i).Name ctl.TextAlign = 2 Set lbl = CreateControl(FormName:=strForm, ControlType:=acLabel, Section:=acHeader, Left:=sol, Top:=0, Width:=750, Height:=450) lbl.Name = ys.Fields(i).Name & "x" lbl.TextAlign = 2 lbl.FontSize = 8 If i <> 0 Then lbl.Caption = Replace(ys.Fields(i).Name, "_", " ") Else lbl.Caption = ys.Fields(i).Name End If sol = sol + 750 Next RunCommand acCmdFormView RunCommand acCmdSave DoCmd.Close acForm, "StrForm" End If Application.Echo True End Sub Cvp: Dinamik, Çapraz Sorgu İle Oluşturulan Form - alicimri - 14/02/2020 Ben tasarımı, Listbox istenirse seçilecek tek "adı" gelecek yoksa tüm liste gelecek şekilde yaptım. Cvp: Dinamik, Çapraz Sorgu İle Oluşturulan Form - feraz - 14/02/2020 O halde gifteki gibi hata veriyor.Bu hata olmaması için listbox olayını yazmıştım. |