Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 SQL 2008 R2- проблема с созданием функции  [new]
Tauzer
Member

Откуда:
Сообщений: 114
Добрый день.
Пытаюсь создать функцию, которая возвращает табличное значение.

USE [MyDataBase]
GO

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

CREATE function [dbo].[MyFunctionName](@startdate datetime,@enddate datetime)
RETURNS @ReportTable TABLE
(CNT int not null,
AnsweredStatus varchar(20) not null)
AS
BEGIN

DECLARE @TmpTable TABLE
(AST varchar(20) not null);

INSERT INTO @TmpTable
SELECT AST = CASE disposition
			WHEN 8 THEN 'Отвеченные'
			ELSE 'Не отвеченные'
		     END
		FROM cdr 
		WHERE (LEN(src)>4 or src='') AND dst='1114' AND calldate>@startdate AND calldate<@enddate

INSERT INTO @ReportTable
SELECT COUNT(*),AST FROM @TmpTable 
GROUP BY AST

RETURN;
END
GO


В результате получаю ошибку:

Сообщение 2010, уровень 16, состояние 1, процедура MyFunctionName, строка 24
Невозможно выполнить процедуру изменения для "dbo.MyFunctionName" из-за несовместимого типа объекта.


Строка 24 это
FROM cdr 
.
Вне функции этот запрос выполняется без ошибок.
Подскажите, где собака зарыта?
4 апр 12, 09:11    [12361699]     Ответить | Цитировать Сообщить модератору
 Re: SQL 2008 R2- проблема с созданием функции  [new]
Tauzer
Member

Откуда:
Сообщений: 114
Все.Разобрался.
4 апр 12, 09:16    [12361715]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить