[SORGU] YANYANA (CONCAT RELATED) SORUNU
#1
HERKESE SELAM,

SAYIN TARUZ ÜSTADIN GELİŞTİRMİŞ OLDUĞU CONCAT RELATED UYGULAMASINI EKTEKİ ÖRNEĞİME EKLEDİM. SORGU ALANINDA "İŞLEMSOR" SORGUSUNDA ÜÇ ALANIM ([TARİH], [KİŞİ] VE [MALZEME]) VAR. CONCAT RELATED BU ALANLARDAN BİRİNİN ÜZERİNDEN HESAPLAMA YAPIP KİŞİ ADINA FARKLI TARİHLERDE AÇILAN KAYITLARIN MALZEME BİLGİSİ ALANINA DAHA ÖNCE GİRİLEN TÜM VERİLERİN TOPLAMINI YANYANA YAPMAKTADIR. BENİM İSTEDİĞİM İSE TARİH VE KİŞİYE GÖRE MALZEME ALANINI YANYANA SIRALAMA YAPMASIDIR. YARDIMLARINIZI BEKLİYORUM. TŞKLER.


Eklenti Dosyaları
.rar   Yanyana.rar (Boyut: 22,55 KB / İndirilme: 98)



  Alıntı
Bu mesajı beğenenler:
#2
Sorunu Çözdüm;
1-)
modül aynı :

Public Function ConcatRelated(strField As String, _
strTable As String, _
Optional strWhere As String, _
Optional strOrderBy As String, _
Optional strSeparator = " ") As Variant
On Error GoTo Err_Handler
Dim rs As DAO.Recordset
Dim rsMV As DAO.Recordset
Dim strSql As String
Dim strOut As String
Dim lngLen As Long
Dim bIsMultiValue As Boolean
ConcatRelated = Null
strSql = "SELECT " & strField & " FROM " & strTable
If strWhere <> vbNullString Then
strSql = strSql & " WHERE " & strWhere
End If
If strOrderBy <> vbNullString Then
strSql = strSql & " ORDER BY " & strOrderBy
End If
Set rs = DBEngine(0)(0).OpenRecordset(strSql, dbOpenDynaset)
bIsMultiValue = (rs(0).Type > 100)
Do While Not rs.EOF
If bIsMultiValue Then
Set rsMV = rs(0).Value
Do While Not rsMV.EOF
If Not IsNull(rsMV(0)) Then
strOut = strOut & rsMV(0) & strSeparator
End If
rsMV.MoveNext
Loop
Set rsMV = Nothing
ElseIf Not IsNull(rs(0)) Then
strOut = strOut & rs(0) & strSeparator
End If
rs.MoveNext
Loop
rs.Close
lngLen = Len(strOut) - Len(strSeparator)
If lngLen > 0 Then
ConcatRelated = Left(strOut, lngLen)
End If
Exit_Handler:
Set rsMV = Nothing
Set rs = Nothing
Exit Function
Err_Handler:
MsgBox "Error " & Err.Number & ": " & Err.Description, vbExclamation, "ConcatRelated()"
Resume Exit_Handler
End Function

2-)
İŞLEMSOR SORGUSUNU SQL Göster ile açıp;
SELECT İŞLEM.TARİH, İŞLEM.KİŞİ, ConcatRelated("MALZEME","İŞLEM","KİŞİ='" & [KİŞİ] & "' and Day([TARİH]) =" & Day([TARİH]) & " ","",",") AS MALZEME
FROM İŞLEM
GROUP BY İŞLEM.TARİH, İŞLEM.KİŞİ
ORDER BY İŞLEM.TARİH, İŞLEM.KİŞİ;

bu kodu yarıştırılırsa işlem tamamdır.



  Alıntı
Bu mesajı beğenenler:
#3

.rar   Yanyana.rar (Boyut: 26,58 KB / İndirilme: 134) VBA kodlari ile bir baska yontem.



  Alıntı
Bu mesajı beğenenler:
#4
Tesekkürler sayın dsezgin üstad, yarın ilk fırsatta yönteminizi inceleyeceğim. Saygılarımla



  Alıntı
Bu mesajı beğenenler:
#5
Sayın Üstad dsezgin83260,

VBA kodlari ile sunduğunuz yönteminiz çalışmam ve değişik tasarımlar için ilave güzel bir paylaşım olmuş. Bir kez daha teşekkürler. İşime yarayacak ilave kodları hemen arşivledim Smile Teşekkürler. İyi çalışmalar.



  Alıntı
Bu mesajı beğenenler:


Benzer Konular...
Konu: Yazar Cevaplar: Gösterim: Son Mesaj
  [FORM] Alan Genişliği Sorunu, Kayda Gitme Sorunu aliaslans 11 1.897 04-10-2019, 13:13
Son Mesaj: halily
  [FONKSiYON] Görev Formunda Ekli Olan Resimleri Yanyana Göstermek Nasıl Yapılır yb16 4 946 03-10-2019, 03:21
Son Mesaj: dsezgin
  Yanyana yazılmış alanda distinct uygulama dixus 6 1.106 30-08-2019, 00:35
Son Mesaj: dixus
  [SORGU] Sorguda 3 olayın yanyana getirilmesi milasanamur 3 949 25-02-2019, 00:37
Son Mesaj: dsezgin
  [RAPOR] Benzersiz kayıtları yanyana gruplandırma danke 20 5.087 03-08-2017, 23:37
Son Mesaj: danke
  Sutunlarda Yazili veriyi Yanyana yazdirma Pagandesign 17 5.365 24-06-2016, 12:57
Son Mesaj: dsezgin
  yanyana fonksiyonunu uygulayamadım. husem 1 1.080 22-05-2014, 19:19
Son Mesaj: dsezgin
  [SORGU] Tarihleri Aylık Yanyana Sorgulamak ertu8276 8 3.427 03-03-2014, 14:41
Son Mesaj: ertu8276

Foruma Git:


Bu konuyu görüntüleyen kullanıcı(lar):