덕분에 나는이테이블 함수에서 "DECLARE"를 사용할 수 없습니까? 당신의 메시지를
ALTER FUNCTION [VEZNE].[fnMakbuzIslemGetir]
(
@refNo as int
)
RETURNS @tablename TABLE (kontrol1 char(1),key0 numeric(18,0) ,tarih datetime ,hizkod char(12),hizad char(75),ytlhizfiyat decimal(18,2) ,hizmiktar numeric(18,2),ytlhiztutar decimal(18,2))
AS
BEGIN
DECLARE @durum AS VARCHAR
DECLARE @hastaTuru AS VARCHAR
DECLARE @makTipi AS VARCHAR
SET @durum = (SELECT durum FROM TH_RefKart WHERE RefNo = @refNo)
SET @hastaturu = (SELECT HastaTuru FROM TH_Dosya WHERE DosyaNo in (SELECT DosyaNo FROM TH_RefKart WHERE RefNo = @refNo))
SET @makTipi = (SELECT maktipi FROM TH_Islem WHERE refNo = @refNo)
IF ((@hastaTuru = 'Ücretli') AND (@durum = 'AYAKTA')) OR @makTipi = '0'
BEGIN
INSERT @tablename SELECT kontrol1, key0, tarih, hizkod, hizad, ytlhizfiyat, hizmiktar, ytlhiztutar
FROM TH_Islem
WHERE refno= @refNo and DekontNo = '0' and anahtar<> -1
END
RETURN
END
처럼 내 문제를 해결하지만,이 선택은 다중 행 값을 반환하기 때문에 지금은이 행
SET @makTipi = (SELECT maktipi FROM TH_Islem WHERE refNo = @refNo)
에서 또 다른 문제가있다. 내가 지금 무엇을 할 수 있을까?
어떤 RDBMS를 사용하고 있습니까? – Welbog
내가 마이크로 소프트 SQL Server Management Studio를 사용 \t \t \t \t \t \t 10.0.1600.22 ((SQL_PreRelease) 0.080709-1414) 마이크로 소프트 분석 서비스 클라이언트 도구 \t \t \t \t \t \t 2007.0100.1600.022 ((SQL_PreRelease) .080709- 1414) Microsoft 데이터 액세스 구성 요소 (MDAC) \t \t \t \t \t \t 2000.085.1132.00 (xpsp.080413-0852) 마이크로 소프트 MSXML \t \t \t \t \t \t 2.6 3.0 4.0 5.0 6.0 마이크로 소프트 인터넷 익스플로러 \t \t \t \t \t \t 8.0.6001.18702 마이크로 소프트 .NET 프레임 워크 \t \t \t \t \t \t 2.0.50727.3082 운영 체제 \t \t \t \t \t \t 5.1.2600 – Rapunzo