2011-01-19 5 views
1

SQL Server Management Studio에서 결과를 볼 수는 있지만 모델 브라우저에서 함수 가져 오기에서 열 정보를 가져올 수 없습니다. StoredProcedure를 Model Browser의 StoredProcedures 섹션에 추가했습니다. 함수 가져 오기를 추가 할 때 GetColumnInformation을 치는 중 "선택한 저장 프로 시저가 열을 반환하지 않습니다."라는 메시지가 나타납니다. 하지만 결과를 볼 수있는 저장 프로 시저를 실행하고 있습니다. 내 프로젝트가 ASP.NET MVC2입니다. ADO.NET 엔터티 모델을 사용하고 있습니다. ModelBrowser에서 FunctionImport를 추가 할 때 열 정보를 가져올 수 없습니다.

내가

을 만든 저장된 프로 시저 이 이

ALTER PROCEDURE [dbo가]. [내 저장된 프로 시저의 이름 GO ON SET의 QUOTED_IDENTIFIER를 이동

사용이 [하여 MyDatabase 이름] 가
SET의 ANSI_NULLS를 GO이다 ] @StartDate 날짜, @endDate 날짜, @accountId INT, @healthPlanId INT
,536 ASBEGIN
SET NOCOUNT ON; DECLARE @variableId as int; 표 #TempAuditEvent을 (CREATE [AuditEvent_Id [INT] NULL NOT, [TABLEID [INT] NULL NOT, [Original_record [XML] NULL NOT, [Current_record [XML] NULL NOT, [의 actionId] [INT] NULL NOT, [OccuredOn [날짜] NULL NOT, [TriggeredBy] VARCHAR NULL NOT, [이 isActive] TINYINT] NOT NULL, [DateTime_Added [날짜] NULL NOT, [Added_By] VARCHAR NOT NULL, [DateTime_Updated] [datetime] NULL, [Updated_By] varchar NULL, );
FOR DECLARE의 variable_cursor 커서 bas.ba_variable_Id = bao.ba_Object_id 여기서 (bao.ba_Object_Type_Id = 4 바오에 baObject 바오 가입 p.Product_Id = bas.ba_BLID 에 baSelection의 BAS 가입 인 ProductInfo 피 구별 bao.ba_Object_id를 선택한다. ba_Object_Type_Id = 6 또는 bao.ba_Object_Type_Id = 22) 및 p.AccountId = @accountId 및 p.IsProduct = 1 및 bas.Health_Plan_ID = @healthPlanId; OPEN variable_cursor;

FETCH NEXT FROM variable_cursor INTO @variableId;

WHILE @@ FETCH_STATUS = 0

은 AuditEvent FROM INSERT INTO #TempAuditEvent SELECT *를 BEGIN WHERE AuditEvent_Id ( 는 ( ae.DateTime_Added> = @ startDate를 AND AE AE vwProductChangesReport FROM ae.AuditEvent_Id를 선택에 .DateTime_Updated < @endDate
AND ((ae.TableId = 12 및 ae.TableId < = 14) 또는 ae.TableId = 9 또는 ae.TableId = 40 또는 ae.TableId = 50 또는 ae.TableId = 64 또는 ae .TableId = 65) AND (ae.strCurrent LIKE '% Variable_Id = "'+ CAST (@variableId AS varchar (20)) + '"%' 또는 ae.strCurrent LIKE '% VariableId = "'+ CAST (@variarId varchar (20)) + '"%' 또는 ae.strCurrent LIKE '% BaObjectId = "'+ CAST (@variableId varchar (20)) + ' "%' 또는 ae.strCurrent LIKE '% ObnId = "'+ CAST (@variarId varchar (20)) + '"% ParentBaObjectId = "'+ CAST (@variableId varchar (20)) + '"%' 또는 ae.strCurrent LIKE ' % ' OR ae.strCurrent LIKE'% Benefit_Variable_Id = " '+ CAST (@variableId AS VARCHAR (20)) +' '%' ))

) 가 variable_cursor FROM @variableId INTO FETCH NEXT; END CLOSE variable_cursor; DEALLOCATE variable_cursor;

SELECT * FROM #TempAuditEvent; DROP TABLE #TempAuditEvent;

END 것은

답변

1

내 저장된 프로 시저를 OFF FMTONLY SET를 추가하여 문제를 해결할 수 있습니다. 그것은 위대한 작품.

관련 문제