Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 как исключить во функции "The isnull function requires 2 arguments."  [new]
Mari-Salt
Member

Откуда:
Сообщений: 367
CREATE FUNCTION dbo.usp_GetPropDOCTax(@id bigint)
RETURNS VARCHAR(1000)
AS
BEGIN
DECLARE @Result VARCHAR(1000)
SET @Result = ''
SELECT
@Result= @Result + ISNULL(S_doctypes.DOCNAME,'')+'№ '+ isnull(T_documents.DocNum,'')+'от '
+isnull(T_documents.DocDate,'') +'выдан' +isnull(T_documents.Organ)
FROM T_Tab1 INNER JOIN T_TabProp ON T_Tab1.code = T_TabProp.code
Left join T_documents on T_Tab1.code=T_documents.code
left join S_doctypes on T_documents.DocType=S_doctypes.code
where (T_TabProp.propstatus is null or T_TabProp.propstatus<>10)
AND T_Tab1.termdate is null AND T_TabProp.code = @id
RETURN '"' + RTRIM(@Result) + '"'
END
Когда сохраняю функция выходит сл. сообщение. Помогите пожалуйста.
The isnull function requires 2 arguments.
Помогите пожалуйста.
7 сен 09, 10:56    [7625104]     Ответить | Цитировать Сообщить модератору
 Re: как исключить во функции "The isnull function requires 2 arguments."  [new]
Glory
Member

Откуда:
Сообщений: 104760
Mari-Salt

Когда сохраняю функция выходит сл. сообщение. Помогите пожалуйста.
The isnull function requires 2 arguments.
Помогите пожалуйста.

И что непонятного в сообщении сервера ?
7 сен 09, 10:58    [7625119]     Ответить | Цитировать Сообщить модератору
 Re: как исключить во функции "The isnull function requires 2 arguments."  [new]
Mari-Salt
Member

Откуда:
Сообщений: 367
Понятно конечно, но я могу это выправить, может поможете, может где то я ошиблась. В итоге функция должна возвращать в одном поле все документы (Если несколько документов имеет запись, то ф-я сформировать должна в одно поле)
7 сен 09, 11:01    [7625133]     Ответить | Цитировать Сообщить модератору
 Re: как исключить во функции "The isnull function requires 2 arguments."  [new]
tpg
Member

Откуда: Novosibirsk
Сообщений: 23902
isnull(T_documents.Organ)
7 сен 09, 11:03    [7625143]     Ответить | Цитировать Сообщить модератору
 Re: как исключить во функции "The isnull function requires 2 arguments."  [new]
Glory
Member

Откуда:
Сообщений: 104760
Mari-Salt
Понятно конечно, но я могу это выправить, может поможете, может где то я ошиблась. В итоге функция должна возвращать в одном поле все документы (Если несколько документов имеет запись, то ф-я сформировать должна в одно поле)

У вас так много в тексте функций isnull, что вы не можете проверить сколько аргументов вы задали при каждом ее вызове ?
7 сен 09, 11:03    [7625154]     Ответить | Цитировать Сообщить модератору
 Re: как исключить во функции "The isnull function requires 2 arguments."  [new]
Mari-Salt
Member

Откуда:
Сообщений: 367
В T_documents - может быть так что любой из этих полей может быть пустым.
7 сен 09, 11:09    [7625188]     Ответить | Цитировать Сообщить модератору
 Re: как исключить во функции "The isnull function requires 2 arguments."  [new]
Glory
Member

Откуда:
Сообщений: 104760
Mari-Salt
В T_documents - может быть так что любой из этих полей может быть пустым.

И поэтому вам можно в isnull указывать меньше параметров, чем нужно ?
7 сен 09, 11:11    [7625204]     Ответить | Цитировать Сообщить модератору
 Re: как исключить во функции "The isnull function requires 2 arguments."  [new]
Mikle83
Member

Откуда: Санкт-Петербург
Сообщений: 629
Mari-Salt, функция IsNull подразумевает, что ей передается два аргумента - значение, которое проверяется на Null и через запятую значение, которое подставляется в случае Null.

Сервер Вам как раз и говорит, что в IsNull обязательно должно быть 2 аргумента. Соотв. где-то в коде вы задали IsNull с некорректным количеством параметров. В частности, в приведенном Вами коде есть строка

+isnull(T_documents.DocDate,'') +'выдан' +isnull(T_documents.Organ)

и здесь у второго IsNull не указан необходимый параметр...
7 сен 09, 11:13    [7625217]     Ответить | Цитировать Сообщить модератору
 Re: как исключить во функции "The isnull function requires 2 arguments."  [new]
Mari-Salt
Member

Откуда:
Сообщений: 367
Ой! такая я невнимательная!!!!!! извините! спасибо !
7 сен 09, 11:21    [7625283]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить