Like Kullanımı Hakkında

1 2 3
21/06/2020, 15:56

husem

merhaba arkadaşlar,
kullanmış olduğum bu kod ile kritere göre filtreleme yapıyorum.

RENK NO kısmına renk noyu tam değilde sadece 8000 (başındaki K-'yi yazmadan) arama ya eklemek istiyorum.

like komutunu nerede ve nasıl kullanacağım acaba, 
yardımcı olabilirmisiniz?
[img]





kullandığım kod:
If IsNull(Me.SUZMUSTERI) Then MADI = "[SIPARIS_LISTESI].MUSTERI" Else MADI = "'" & Me.SUZMUSTERI & "'"
If IsNull(Me.EKISLEM) Then EKIS = "[EK_ISLEMLER].EK_ISLEM_ADI" Else EKIS = "'" & Me.EKISLEM & "'"
If IsNull(Me.SUZMAMULCINSI) Then MCINSI = "[SIPARIS_LISTESI].CINSI" Else MCINSI = "'" & Me.SUZMAMULCINSI & "'"
If IsNull(Me.SUZRENKNO) Then RNO = "[SIPARIS_LISTESI].RENK_NO" Else RNO = "'" & Me.SUZRENKNO & "'"
If IsNull(Me.SUZRENK) Then RENK = "[SIPARIS_LISTESI].RENK" Else RENK = "'" & Me.SUZRENK & "'"
If IsNull(Me.SUZMUSSIPNO) Then MSIPNO = "[SIPARIS_LISTESI].SIPNO" Else MSIPNO = "'" & Me.SUZMUSSIPNO & "'"

        If IsNull(Me.ILKTARIH) Then Me.ILKTARIH = Date
        If IsNull(Me.SONTARIH) Then Me.SONTARIH = Date
        If CDate(Me.ILKTARIH) > CDate(Me.SONTARIH) Then
                Response = MsgBox("Son Tarih, İlk Tarihten Büyük Olmalıdır..", 48, "Hata!")
                DoCmd.GoToControl "ILKTARIH"
        Exit Sub
        End If
ILKTAR = ">=#" & Month(Me.ILKTARIH) & " / " & Day(Me.ILKTARIH) & " / " & Year(Me.ILKTARIH) & "#"
SONTAR = "<=#" & Month(Me.SONTARIH) & " / " & Day(Me.SONTARIH) & " / " & Year(Me.SONTARIH) & "#"

Me.Liste60.RowSource = "SELECT SIPARIS_LISTESI.ID, SIPARIS_LISTESI.SIPARISNO, SIPARIS_LISTESI.TARIH, SIPARIS_LISTESI.MUSTERI, SIPARIS_LISTESI.IRSALIYE_NO, SIPARIS_LISTESI.SIPNO, SIPARIS_LISTESI.EBAT, SIPARIS_LISTESI.DESEN_ADI, SIPARIS_LISTESI.CINSI, SIPARIS_LISTESI.RENK_NO, SIPARIS_LISTESI.RENK, SIPARIS_LISTESI.TOP_METRE, SIPARIS_LISTESI.KALAN_KG, SIPARIS_LISTESI.ACIKLAMA,Yan_yana('SELECT EK_ISLEM_KISALTMA FROM EK_ISLEMLER WHERE SIPARIS_NO= ' & [SIPARISNO]) AS ekislem FROM SIPARIS_LISTESI WHERE (SIPARIS_LISTESI.TARIH" & ILKTAR & ") And (SIPARIS_LISTESI.TARIH" & SONTAR & ") AND (SIPARIS_LISTESI.MUSTERI=" & MADI & ") AND (SIPARIS_LISTESI.CINSI=" & MCINSI & ") AND (SIPARIS_LISTESI.RENK_NO=" & RNO & ") AND (SIPARIS_LISTESI.RENK=" & RENK & ") AND (SIPARIS_LISTESI.SIPNO=" & MSIPNO & ") AND (SIPARIS_LISTESI.KALAN_KG<>0)"

Me.Liste60.Requer
21/06/2020, 16:09

berduş

Mid(SIPARIS_LISTESI.RENK_NO,3)=" & RNO  şeklinde dener misiniz?
Kodlamanizin mantığını aslında tam olarak anlamadım, mesela eğer renk kodu girilmemişse neden kriter kısmına ekliyor?  Isterseniz kodu 2 kısma ayirabilirsiniz: ilk kısımda gösterilmesini istediğiniz tüm alanlar olur 2. kısımda ise where kısmi olur, sadece dolu alanlar bu kısma eklenir. Yanlış mı yorumladım kodunuzu?

Yukardaki kod renk alanı dışın da doğru sonucu veriyor mu?
21/06/2020, 16:41

husem

sn üstad merhaba,
renk no kısmı
k-8000
kt-5000
org-300
gibi olabiliyor
ben sadece renk no kısmında rakamlı alanı yazarak aramaya eklemeyi düşünüyorum.

like komutuyla olibilir mi acaba?
exceldeki içerir filtrelemesi gibi
21/06/2020, 16:45

berduş

 (SIPARIS_LISTESI.RENK_NO like '*" & RNO & "*')
şeklinde deneyebilirsiniz.

Ama sorgunuz sanki hatalı gibi geliyor? Tum alanları boş bıraktığınızda tüm kayıtları gösteriyor mu?
21/06/2020, 18:17

husem

sn üstad, bahsettiğiniz şekilde olmadı

(SIPARIS_LISTESI.RENK_NO=like '%" & RNO & "%')
bu şekilde yaptım yine olmadı.

[img]
[/img]
21/06/2020, 18:26

berduş

şimdilik renk kodunu devre dışı bırakıp öyle deneyin, renk kodu olmadan tüm alanları boş bıraktığınızda kod hata veriyor mu?
1 2 3