Sorgu Koşulu
#1
Visual Basic
  1.    Rs.Open "SELECT * FROM BOYAMA_RECETE_VERITABANI WHERE (PARTI_NO=" & RsParti("PARTI_NO") & ") AND (RECETE_ID=" & IntReceteID & ")", CurrentProject.Connection, adOpenKeyset, adLockOptimistic
  2.    For Sayac = 1 To Rs.RecordCount
  3.  
  4.        StrSQL = "SELECT * FROM BOYAMA_KMBM_MADDE_KOSUL " & _
  5.        "WHERE (PROSES_ID=" & Rs("PROSES_ID") & ")" & _
  6.        " AND (MUSTERI like '%" & RsParti("MUSTERI") & "%' OR BOYAMA_KMBM_MADDE_KOSUL.MUSTERI IS NULL)" & _
  7.        " AND (MUSTERI_1 Not like'%" & RsParti("MUSTERI") & "%' OR BOYAMA_KMBM_MADDE_KOSUL.MUSTERI_1 IS NULL)" & _
  8.        " AND (RENK_NO like '%" & RsParti("RENK_NO") & "%' OR BOYAMA_KMBM_MADDE_KOSUL.RENK_NO IS NULL)" & _
  9.        " AND (RENK_NO_1 Not like '%" & RsParti("RENK_NO") & "%' OR BOYAMA_KMBM_MADDE_KOSUL.RENK_NO_1 IS NULL)" & _
  10.        " AND (BOYAMA_TURU='" & RsParti("BOYAMA_TURU") & "' OR BOYAMA_KMBM_MADDE_KOSUL.BOYAMA_TURU IS NULL)" & _
  11.        " AND (RENK_TONU='" & RsParti("RENK_TONU") & "' OR BOYAMA_KMBM_MADDE_KOSUL.RENK_TONU IS NULL)" & _
  12.        " AND (ON_ISLEM='" & RsParti("ON_ISLEM") & "' OR BOYAMA_KMBM_MADDE_KOSUL.ON_ISLEM IS NULL)" & _
  13.        " AND (MAKINA_NO=" & RsParti("MAK_NO") & " OR BOYAMA_KMBM_MADDE_KOSUL.MAKINA_NO IS NULL)" & _
  14.        " AND (MAKINA_NO_1<>" & RsParti("MAK_NO") & " OR BOYAMA_KMBM_MADDE_KOSUL.MAKINA_NO_1 IS NULL)" & _
  15.        " AND (MAKINA_TURU='" & RsParti("TURU") & "' OR BOYAMA_KMBM_MADDE_KOSUL.MAKINA_TURU IS NULL)" & _
  16.        " AND (BOYAMA_DERECESI=" & RsParti("BOYAMA_DERECESI") & " OR BOYAMA_KMBM_MADDE_KOSUL.BOYAMA_DERECESI IS NULL)" & _
  17.        " AND (BORDUR='" & RsParti("BORDUR") & "' OR BOYAMA_KMBM_MADDE_KOSUL.BORDUR IS NULL)" & _
  18.        " AND (CINSI like '%" & RsParti("CINSI") & "%' OR BOYAMA_KMBM_MADDE_KOSUL.CINSI IS NULL)" & _
  19.        " AND (CINSI_1 not like '%" & RsParti("CINSI") & "%' OR BOYAMA_KMBM_MADDE_KOSUL.CINSI_1 IS NULL)" & _
  20.        " AND ((EK_ISLEM IN (SELECT EK_ISLEM_ADI FROM EK_ISLEMLER WHERE (SIPARIS_NO=" & RsParti("SIPARISNO") & ") )) OR BOYAMA_KMBM_MADDE_KOSUL.EK_ISLEM IS NULL)" & _
  21.        " AND ((EK_ISLEM_1 NOT IN (SELECT EK_ISLEM_ADI FROM EK_ISLEMLER WHERE (SIPARIS_NO=" & RsParti("SIPARISNO") & ") )) OR BOYAMA_KMBM_MADDE_KOSUL.EK_ISLEM_1 IS NULL)" & _
  22.        " ORDER BY MUSTERI DESC,RENK_NO DESC"




bu kod ile: ek işlem alanında ek işlem koşulu var ise veriyor.
" AND ((EK_ISLEM IN (SELECT EK_ISLEM_ADI FROM EK_ISLEMLER WHERE (SIPARIS_NO=" & RsParti("SIPARISNO") & ") )) OR BOYAMA_KMBM_MADDE_KOSUL.EK_ISLEM IS NULL)" & _


bu alanda da seçilen ek işleme uymayanları veriyor.
" AND ((EK_ISLEM_1 NOT IN (SELECT EK_ISLEM_ADI FROM EK_ISLEMLER WHERE (SIPARIS_NO=" & RsParti("SIPARISNO") & ") )) OR BOYAMA_KMBM_MADDE_KOSUL.EK_ISLEM_1 IS NULL)" & _



GÖRSELDE DE BELİRTTİĞİM GİBİ,
tablodaki: EK_ISLEM ve EK_ISLEM_1 alanına birden fazla kayıt girmek istiyorum. girdiğim kayıtlardan herhangi birini sağlıyorsa kuralın çalışmasını istiyorum.
1-girilecek kural: HİDROFİL, SİLİKON, ENZİM gibi.
2-parti no'da ise istenilen ek işlem: ENZİM

eğer 2 de istenilen ek işlem 1 de varsa ise kuralın çalışmasını istiyorum.

[Resim: attachment.php?aid=25844]

mesela
aşağıdaki kod da çalışıyor.
" AND (MUSTERI like '%" & RsParti("MUSTERI") & "%' OR BOYAMA_KMBM_MADDE_KOSUL.MUSTERI IS NULL)" & _

" AND (MUSTERI_1 Not like'%" & RsParti("MUSTERI") & "%' OR BOYAMA_KMBM_MADDE_KOSUL.MUSTERI_1 IS NULL)" & _


Eklenti Dosyaları
.png   Ekran Alıntısı.PNG (Boyut: 26,57 KB / İndirilme: 106)



  Alıntı
Bu mesajı beğenenler:
#2
Sn husem; VBA da ki StrSQL, görsel kayıtlarını mi veriyor?



  Alıntı
Bu mesajı beğenenler:
#3
evet görseldeki verileri getiriyor,



  Alıntı
Bu mesajı beğenenler:
#4
Sub aa()
Dim Ekler As String, i As Log
Rs.Open "SELECT * FROM BOYAMA_RECETE_VERITABANI WHERE (PARTI_NO=" & RsParti("PARTI_NO") & ") AND (RECETE_ID=" & IntReceteID & ")", CurrentProject.Connection, adOpenKeyset, adLockOptimistic
   For Sayac = 1 To Rs.RecordCount
       StrSQL = "SELECT * FROM BOYAMA_KMBM_MADDE_KOSUL WHERE (...."
      RsStrSQL.Open StrSQL, CurrentProject.Connection, adOpenKeyset, adLockOptimistic
       If RsStrSQL.RecordCount = 0 Then Exit For
       Do Until RsStrSQL.EOF
       For i = 0 To 1
               Ekler = Ekler & "-" & RsStrSQL.Fields("EK_ISLEM" & IIf(i = 0, vbNullString), "_1")
       Next i
       RsStrSQL.MoveNext
       Loop
       RsStrSQL.Close
      Ekler = Mid(Ekler, 2)
      MsgBox IIf(UBound(Split(Ekler, "ENZIM")) > 0, "VAR", "YOK")

       i = 0
  Next Sayac
       
Set RsStrSQL = Nothing
End Sub

strSQL verisini Ekler değişkenine aktarıp, split ile EK_ISLEM + EK_ISLEM_1 alanlarındaki verileri kontrol ettirilebilir.


Veriler olmayınca görsel ile konuyu anlamadığımdan, öneri kısa kalıyor.

BOYAMA_KMBM_MADDE_KOSUL tablo araması PROSES_ID ve MUSTERI olan or sonrası koşula etkisi yok gıbı duruyor.



  Alıntı
Bu mesajı beğenenler:
#5
sn dsezgin üstadım,  öncelikle yardımınız için çok teşekkür ederim.
eklediğiniz kodu entegre edemedim,

dosyayı yükledim, dosya üzerinde yardımcı olabilirmisiniz?

[Resim: attachment.php?aid=25846]


Eklenti Dosyaları
.rar   coklu ek işlem çıkmıyor.rar (Boyut: 210,17 KB / İndirilme: 39)
.png   Ekran Alıntısı.PNG (Boyut: 100,35 KB / İndirilme: 99)



  Alıntı
Bu mesajı beğenenler:
#6
prosedür de Burada kimyasallara bakılacak bolümdeki EK_ISLEM  ve EK_ISLEM_1 koşulunu kaldırıp dener misiniz.
SELECT.. IN olanı bire bir istiyor sanırım.
[Resim: attachment.php?aid=25847]

Visual Basic
  1. Dim BULDUM As String
  2. BULDUM = IIf(UBound(Split(EKISLEMBUL, Nz(RsKosul("EK_ISLEM"), "Yok"))) > 0, RsKosul("EK_ISLEM"), IIf(UBound(Split(EKISLEMBUL, Nz(RsKosul("EK_ISLEM_1"), "Yok"))) > 0, RsKosul("EK_ISLEM_1"), vbNullString))



ile EKISLEMBUL içinde EK_ISLEM veri araması yapılır veya EK_ISLEM_1, rapora yansıtılması nasıl olmalı bilemedim.


Eklenti Dosyaları
.jpg   Husemı.JPG (Boyut: 181,3 KB / İndirilme: 96)



  Alıntı
Bu mesajı beğenenler:


Benzer Konular...
Konu: Yazar Cevaplar: Gösterim: Son Mesaj
  [SORGU] çapraz Sorgu Koşulu Sağlayamayan Görülmüyor snapper 5 536 26-05-2022, 13:56
Son Mesaj: snapper
  [SORGU] Sorgu Içinde Birden Fazla Sorgu Oluşturmak footprinting 2 1.053 04-02-2020, 11:45
Son Mesaj: footprinting
  [SORGU] sorgu da tarih koşulu conquerora 4 1.330 17-03-2018, 22:47
Son Mesaj: dsezgin
  [FORM] Sorgu ölçütünde IIf komutuya sorgu coyote79 2 1.895 27-12-2017, 14:03
Son Mesaj: alperalper
  [VBA] Liste Kutusu Satır Kaynağı WHERE koşulu EminA 2 2.257 20-03-2017, 14:11
Son Mesaj: EminA
  [SORGU] if koşulu yardım lütfen.. gitarist34 2 1.470 12-10-2016, 12:36
Son Mesaj: gitarist34
  [SORGU] 2 tablo/sorgu ile her kayda ait son değerden oluşan tablo yada sorgu oluşturma Gurselgu 5 3.064 02-09-2016, 15:29
Son Mesaj: Gurselgu
access-sql-3 [SORGU] Birçok tablodan çoklu sorgu hazırlayıp bir sorgu ile birçok bilgiye ulaşabilir miy nonexistent 1 2.288 17-06-2013, 23:34
Son Mesaj: onur_can

Foruma Git:


Bu konuyu görüntüleyen kullanıcı(lar): 1 Ziyaretçi