InsERT GT => Subiekt GT => Wątek zaczęty przez: vodnik w Grudzień 12, 2017, 16:37:45

Tytuł: Formatowanie warunkowe SQL w Fakturach Sprzedaż (po NIP)
Wiadomość wysłana przez: vodnik w Grudzień 12, 2017, 16:37:45
Witam,
Chciałbym wyróżnić (kolorem) w Formatowaniu Warunkowym, Faktury Sprzedaży, które posiadają NIP.

Da się to zrobić w Formatowanie Warunkowe -> Dodaj Formatowanie SQL
Ładnie pokazuje całe zapytanie SQL, ale nie ma w nim NIP-u.
Dlatego należy Kolumnę NIP dodać przez Dodatkową Tabelę.

Wpisałem coś takiego, ale nie działa (mało się znam):

Warunek SQL:
case when ISNULL(adr_NIP,0 ) <> 0 then 'Jest NIP' else 0 end
Dodatkowe tabele (opcjonalnie)
left join adr__Ewid on adr_NIP

Mógłby ktoś pomóc w problemie?
Tytuł: Odp: Formatowanie warunkowe SQL w Fakturach Sprzedaż (po NIP)
Wiadomość wysłana przez: candy w Grudzień 12, 2017, 16:45:03
Ale pokręciłeś!
Help:
Cytuj
Warunek decydujący o wyróżnieniu danego wiersza tworzy się za pomocą wyrażenia zapisanego w języku SQL w formacie: CASE WHEN (warunek) THEN 1 ELSE 0 END
A u Ciebie:
Cytuj
then 'Jest NIP' else 0 end

'Jest NIP' to nie całkiem to samo co 1  ;)

Dodatkowe tabele też słabo wyszły bo
left join adr__Ewid on adr_NIP ... i co dalej?
Łączenie tabel musi się opierać na jakimś warunku, a Ty go przerwałeś w połowie.

Polecam najpierw coś o łączeniu tabel, np: http://www.sqlpedia.pl/laczenie-tabel-sql/
Tytuł: Odp: Formatowanie warunkowe SQL w Fakturach Sprzedaż (po NIP)
Wiadomość wysłana przez: birds22 w Grudzień 12, 2017, 16:45:31
case when ISNULL(Adres.adrh_NIP,'' ) <> '' then 1 else 0 end

bez dodatkowych tabel
Tytuł: Odp: Formatowanie warunkowe SQL w Fakturach Sprzedaż (po NIP)
Wiadomość wysłana przez: vodnik w Grudzień 12, 2017, 16:54:09
birds22,
Bardzo dziękuję, działa :)
Tytuł: Formatowanie warunkowe SQL w Fakturach Sprzedaż (po NIP)
Wiadomość wysłana przez: candy w Grudzień 12, 2017, 17:40:46
Na przyszłość,
Przy formatowaniu warunkowym CASE ma dawać w wyniku 1 albo 0, czyli warunek spelniony/niespełniony w tym wypadku.
U Ciebie było albo 0 (liczba) albo tekst czyli inne typy danych.

Jeśli łączysz tabele (JOIN... ON) to po ON podajesz warunek łączący, a nie tylko pole jedno pole.