Strona 1 z 1

Ukryte spacje

: 11 maja 2022, 22:09
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.

Re: Ukryte spacje

: 11 maja 2022, 23:16
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

Re: Ukryte spacje

: 16 maja 2022, 12:00
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) + '%')