Ukryte spacje

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

Moderator: mikey

jan480
Posty: 13
Rejestracja: 02 gru 2020, 19:26
Rola: Użytkownik CDN XL

Ukryte spacje

Post autor: jan480 »

Siema. Potrzebuje pomocy z wyłowieniem ukrytych spacji na końcu kodu kart towarowych. Długość kodu to 35 znaków. Nowe które importujemy z plików xml tyle mają (Ecod nie pozwala chyba na więcej), ale te które zostały przeniesione ze starego systemu wyłamują się ze schematu i sprawiają problemy.
Próbowałem zrobić 'case' przy użyciu takich warunków

Kod: Zaznacz cały

when len(cdn.TwrKarty.Twr_Kod) > 35 then 'kod niepoprawny'
when right(left(cdn.TwrKarty.Twr_Kod,36),1)  = ' ' then 'kod niepoprawny'
when cdn.TwrKarty.Twr_Kod like '% ' then 'kod niepoprawny'
Żaden z powyższych nie działa.

sebek
Posty: 248
Rejestracja: 16 sty 2012, 23:21
Rola: Konsultant CDN XL
Lokalizacja: Łódź/Częstochowa
Kontakt:

Re: Ukryte spacje

Post autor: sebek »

Cześć,

A może zrób tak, że weź w where wpisz:

Kod: Zaznacz cały

count(replace(Twr_Kod, ' ' , ''))<>count(Twr_Kod)

Wtedy będziesz wiedział w których kartotekach masz spacje.

Ale jeszcze jedna rzecz do tego. Poza spacjami mogą być białe znaki. Może warto napisać kursor, który usunie białe znaki na końcu i na początku przy użyciu LTRIM i RTRIM?

Pozdrawiam.
Sebek

marceynowa
Posty: 341
Rejestracja: 29 lut 2008, 11:27
Rola: Administrator CDN XL
Wersja: 2022
Lokalizacja: Gdynia

Re: Ukryte spacje

Post autor: marceynowa »

Przy wklejaniu z np. plików pdf powstają ukryte spacje i wtedy kod na "zwykłą" spację nie zadziała.
Ja wyszukuję takim kodem:

Kod: Zaznacz cały

SELECT Twr_Kod FROM cdn.TwrKarty WHERE (Twr_Kod LIKE '%' + CHAR(160) + '%')

ODPOWIEDZ