Filtr po fragmencie atrybutu

Zapytania SQL, widoki, Crystal, definicje filtrów, szybkich raportów, wydruków, API, Hydra, .NET

Moderator: mikey

DorotaB
Posty: 56
Rejestracja: 03 mar 2023, 10:29
Rola: Użytkownik CDN XL
Wersja: 2023

Filtr po fragmencie atrybutu

Post autor: DorotaB »

Jak ustawić filtr na Towarach, aby uzytkownik mógł wpisac fragment tekstu atrybuty (id 173) np. HE i wyszukał wszystkie towary, które w tym atrybucie mają fragment HE?

Awatar użytkownika
praiser
Posty: 720
Rejestracja: 02 lip 2014, 12:22
Rola: Handlowiec CDN XL
Wersja: 2023

Re: Filtr po fragmencie atrybutu

Post autor: praiser »

Kod: Zaznacz cały

exists (select 1 from cdn.Atrybuty where atr_atkid = 173 and atr_wartosc LIKE  '%' + ?@S100|Szukaj_ciag:'{}' + '%' and atr_obiNumer = Twr_gidNumer)
--------------------------------
Pozdrawiam
WW

DorotaB
Posty: 56
Rejestracja: 03 mar 2023, 10:29
Rola: Użytkownik CDN XL
Wersja: 2023

Re: Filtr po fragmencie atrybutu

Post autor: DorotaB »

Coś jest nie tak, bo nie znajduje. Mam wartość atrybutu RU. Filtr pyta, podaję RU albo R albo %RU% i nic,.. nie znajduje

Awatar użytkownika
praiser
Posty: 720
Rejestracja: 02 lip 2014, 12:22
Rola: Handlowiec CDN XL
Wersja: 2023

Re: Filtr po fragmencie atrybutu

Post autor: praiser »

może id atrybutu do warunkowania to nie 173
--------------------------------
Pozdrawiam
WW

DorotaB
Posty: 56
Rejestracja: 03 mar 2023, 10:29
Rola: Użytkownik CDN XL
Wersja: 2023

Re: Filtr po fragmencie atrybutu

Post autor: DorotaB »

Doszłam do przyczyny ale nie wiem jak to rozwiązać. To zapytanie działa ale jak utworzę nowy atrybut o nowym id. dla istniejących działa wybiórczo- niektóre id widzi, niektóre nie. widzę na stronie, że problem znany ale da się to rozwiązać bez tworzenia nowych atrybutów?

Awatar użytkownika
praiser
Posty: 720
Rejestracja: 02 lip 2014, 12:22
Rola: Handlowiec CDN XL
Wersja: 2023

Re: Filtr po fragmencie atrybutu

Post autor: praiser »

jest post z takim problemem ? wklej link.
--------------------------------
Pozdrawiam
WW

elmiq
Posty: 1025
Rejestracja: 23 sie 2010, 10:04
Rola: Administrator CDN XL
Lokalizacja: Warszawa

Re: Filtr po fragmencie atrybutu

Post autor: elmiq »

Myślę, że to nie jest problem, tylko ewentualny bałagan w bazie, bo zapytanie jest poprawne. Proszę wziąć ID towaru, który rzekomo ma wartość RU w pożądanym atrybucie i wykonać dla niego zapytanie podstawiając ID pod zmienną:

Kod: Zaznacz cały

SELECT * 
FROM CDN.Atrybuty WHERE Atr_OBITyp = 16 AND Atr_OBINumer = @ID 
Jeśli jest tam atrybut z identyfikatorem klasy 173, to przekazany Pani filtr powinien go zwracać, chyba że są jakieś ukryte znaki ASCII, które psują jego działanie.
Mateusz Świerkosz

http://elmiq.blogspot.com/

Awatar użytkownika
wacek
Posty: 709
Rejestracja: 27 paź 2008, 18:04
Rola: Administrator CDN XL
Lokalizacja: Łódzkie

Re: Filtr po fragmencie atrybutu

Post autor: wacek »

Może nie widzieć wszystkich atrybutów jeżeli atrybut jest typy "Wielowartościowy". Wtedy wartości są w tabeli CDN.AtrybutyHist.

Cześć Mateusz :)
Pozdrawiam,
Robert

select convert(varchar(100),0x637a6173616d69207069737aea2074752067b375706f7479203a29)

DorotaB
Posty: 56
Rejestracja: 03 mar 2023, 10:29
Rola: Użytkownik CDN XL
Wersja: 2023

Re: Filtr po fragmencie atrybutu

Post autor: DorotaB »

To jest atrybut wielowartosciowy..To jak wtedy zbudować taki filtr?
i drugie pytanie- jak zbudować filtr, który pyta o np.3 atrybuty- uzytkownik pierw podaje fragment 1, potem 2 itd albo za jednym razem?

elmiq
Posty: 1025
Rejestracja: 23 sie 2010, 10:04
Rola: Administrator CDN XL
Lokalizacja: Warszawa

Re: Filtr po fragmencie atrybutu

Post autor: elmiq »

wacek pisze:
14 gru 2023, 20:24
Może nie widzieć wszystkich atrybutów jeżeli atrybut jest typy "Wielowartościowy". Wtedy wartości są w tabeli CDN.AtrybutyHist.

Cześć Mateusz :)
Hej :)

Zgadza się, ale to już inna sytuacja, bo wtedy w Atr_Wartość powinien być timestamp z datą modyfikacji, co sprowadza nas do tego, że w bazie są śmieci, których admin nie uporządkował.

Pani Doroto, filtr będzie w zasadzie identyczny, tylko trzeba zmienić nazwę tabeli i przedrostki Atr_ na Ath_. Dobrze też dorzucić do wiązania typ obiektu.
Mateusz Świerkosz

http://elmiq.blogspot.com/

ODPOWIEDZ