Forum Użytkownikow Subiekt GT

InsERT GT => Dodatki - zestawienia - sfera => Wątek zaczęty przez: pit3rek w Luty 21, 2018, 12:59:03

Tytuł: Wyświetlanie faktur zawierających produkt w którego nazwie jest dane wyrażenie
Wiadomość wysłana przez: pit3rek w Luty 21, 2018, 12:59:03
Witam wszystkich serdecznie :-)

Drodzy forumowicze, mam problem z którym już trochę walczę i niestety nie mogę wygrać więc zwracam się do was z prośbą o pomoc.

Potrzebuję napisać kod SQL który podświetli lub wybierze faktury które zawierają pozycje w których nazwie jest wyrażenie "lut".
Na chłopski rozum powinno działać (tabele przykładowe nie mające niestety odzwierciedlenia w bazie Subiekta GT):

SELECT * FROM faktury_przyjecia AS f_p
JOIN pozycje_fp AS p_fp
ON p_fp.id_faktury = f_p.id
WHERE p_fp.nazwa LIKE "%lut%"
GROUP BY f_p.id

Niestety, nie wiem jak przełożyć to na bazę danych Subiekta GT. Jest ona strasznie zawiła. Dostałem od firmy InsERT opis ale nie ogarniam go wystarczająco :(
Dziękuję wszystkim za pomoc.
Tytuł: Odp: Wyświetlanie faktur zawierających produkt w którego nazwie jest dane wyrażenie
Wiadomość wysłana przez: pir w Luty 21, 2018, 13:44:01
Czy nie lepiej jest będąc w dziale z FZ wcisnąć F8, przestawić wyszukiwanie na "Wybierz według instynktu towaru na pozycji" i wpisać "lut", lub nawet "%lut"?
Tytuł: Odp: Wyświetlanie faktur zawierających produkt w którego nazwie jest dane wyrażenie
Wiadomość wysłana przez: dkozlowski w Luty 22, 2018, 11:31:38
Niestety, nie wiem jak przełożyć to na bazę danych Subiekta GT. Jest ona strasznie zawiła. Dostałem od firmy InsERT opis ale nie ogarniam go wystarczająco :(
Dziękuję wszystkim za pomoc.

Po pierwsze nie wiem po co pisałeś do Insertu i co dostałeś skoro opis bazy danych znajduje się w pomocy do programu ? Tak informację i inne pomocne przy tworzeniu zestawień znajdziesz w dziale, do którego przeniosłem wątek. Zawsze możesz też poprosić o takie zestawienie dostawcę programu jeśli rzeczywiście będzie potrzebne.
Tytuł: Odp: Wyświetlanie faktur zawierających produkt w którego nazwie jest dane wyrażenie
Wiadomość wysłana przez: pit3rek w Luty 22, 2018, 15:37:57
Chodzi mi dokładnie o zrobienie Formatowania warunkowego SQL na liście faktur sprzedaży.
Póki co zrobiłem coś takiego:

CASE WHEN (SELECT COUNT (*) FROM dok_Pozycja
INNER JOIN tw__Towar
ON tw__Towar.tw_Id = dok_Pozycja.ob_TowId
WHERE tw_Nazwa LIKE ('%lut%')  AND dok_Pozycja.ob_DokHanId = dok_Id) > 0 THEN 1 ELSE 0 END

Niestety, nie zaznacza żadnej faktury :(
Tytuł: Odp: Wyświetlanie faktur zawierających produkt w którego nazwie jest dane wyrażenie
Wiadomość wysłana przez: candy w Luty 22, 2018, 16:11:45
SOA: u mnie zaznacza
1. Nie szukasz w fakturach z usługami jednorazowymi?
2. Nie masz tam innego formatowania warunkowego na tej liście?
3. Zamiast warunku WHEN (SELECT COUNT (*) FROM dok_Pozycja
INNER JOIN tw__Towar
ON tw__Towar.tw_Id = dok_Pozycja.ob_TowId
WHERE tw_Nazwa LIKE ('%lut%')  AND dok_Pozycja.ob_DokHanId = dok_Id) > 0

dałbym WHEN EXISTS (SELECT * FROM dok_Pozycja
INNER JOIN tw__Towar
ON tw__Towar.tw_Id = dok_Pozycja.ob_TowId
WHERE tw_Nazwa LIKE ('%lut%')  AND dok_Pozycja.ob_DokHanId = dok_Id)

W końcu nie jest istotne ile razy tylko czy w ogóle występuje takie wyrażenie
Tytuł: Odp: Wyświetlanie faktur zawierających produkt w którego nazwie jest dane wyrażenie
Wiadomość wysłana przez: pit3rek w Luty 23, 2018, 12:00:20
Działa, zapomniałem dodać odniesienie do tabeli z dokumentami. Dla potomnych:

CASE WHEN (SELECT COUNT (*) FROM dok_Pozycja
INNER JOIN tw__Towar
ON tw__Towar.tw_Id = dok_Pozycja.ob_TowId
WHERE tw_Nazwa LIKE ('%lut%')  AND dok_Pozycja.ob_DokHanId = Dok.dok_Id) > 0 THEN 1 ELSE 0 END

Czyli, było:
dok_Pozycja.ob_DokHanId = dok_Ida być powinno:
dok_Pozycja.ob_DokHanId = Dok.dok_Id
Dziękuję wszystkim :)
Tytuł: Odp: Wyświetlanie faktur zawierających produkt w którego nazwie jest dane wyrażenie
Wiadomość wysłana przez: candy w Luty 23, 2018, 12:07:53
U mnie zadziałało bez tego, więc gdybyś odpowiedział na moje pytania (szególnie nr 2) wnioski mogłyby być bardziej kompletne.
Tytuł: Odp: Wyświetlanie faktur zawierających produkt w którego nazwie jest dane wyrażenie
Wiadomość wysłana przez: pit3rek w Luty 23, 2018, 12:18:58
U mnie zadziałało bez tego, więc gdybyś odpowiedział na moje pytania (szególnie nr 2) wnioski mogłyby być bardziej kompletne.
Nie miałem innego formatowania warunkowego na liście.