Warunek w funkcji działa wadliwie

0

Cześć,
napisałem funkcję, której przyjmuje następujące argumenty:

create function dbo.GetSaldoWS(@nr_konta nvarchar(50), @saldo_na_dzien datetime, @typ_salda nvarchar(10))

W ciele funkcji mam m.in. następujący warunek:

IF (@typ_salda = 'ObrotyWnZnak' OR @typ_salda = 'ObWnZnak'  OR @typ_salda = 'ObrotyAbsWn')
BEGIN
...
END

Problem jest następujący:
Gdy wywołam funkcję w stylu:

select dbo.GetSaldoWS('905-3-1', '2017-02-28', 'ObWnZnak')

To wszystko działa prawidłowo. Jednak gdy wywołam funkcję tak:

select dbo.GetSaldoWS('905-3-1', '2017-02-28', 'ObrotyWnZnak')

lub tak:

select dbo.GetSaldoWS('905-3-1', '2017-02-28', 'ObrotyAbsWn')

To funkcja zwraca 0.0 - mimo, że powinna zwrócić wynik taki sam jak wtedy, gdy przyjmuje trzeci argument 'ObWnZnak'...
Czy ktoś się orientuje co może być powodem tego dziwacznego zjawiska?
Z góry dziękuję za pomoc!

5

Zmień 3 parametr funkcji na VARCHAR(20)

0

Hehe, głupi błąd...
Dziękować bardzo!!! :-)

1 użytkowników online, w tym zalogowanych: 0, gości: 1