Hi dear,
Even i faced the same problem, you can get a lot of help from the below code...
Check once and let me know,
set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
GO
ALTER Procedure [dbo].[RegisterDetails]
(
@statecode varchar(2),
@districtCode varchar(2),
@TPAID varchar(2),
@IC varchar(2),
@HospitalCode varchar(MAX),
@AuthorityID varchar(8),
@HospitalName varchar(MAX),
@HospitalType bit,
@AcknowLetter bit,
@KeyActDate varchar(max),
@InstallDate varchar(max),
@InstalledBy Varchar(MAX),
@KitStatus bit,
@PaymentStatus bit,
@ReceivedAmt varchar(MAX),
@ModeOfPayment varchar(MAX),
@PaymentDetails Varchar(MAX)
)
as begin
begin Transaction
declare @AuthoId varchar(8)
if not exists(select * from HospitalDetails where AuthorityID=@AuthorityID)
Begin
Insert into HospitalDetails([HospitalCode],[HospitalName],[AuthorityID],[StateCode],[DistrictCode],
[TPAId],[InsuranceCode],[HospitalType]) values(@HospitalCode,@HospitalName,@AuthorityID,@statecode,
@districtCode,@TPAID,@IC,@HospitalType)
end
select @AuthoId=AuthorityID from HospitalDetails where HospitalCode=@HospitalCode
if not exists (select * from InstallationDetails where AuthorityID=@AuthoId )
begin
Insert into InstallationDetails([AuthorityID],[HospitalCode],[KeyActivationDate],[InstallationDate],[InstalledBy],[KitStatus])
values(@AuthorityID,@HospitalCode,@KeyActDate,@InstallDate,@InstalledBy,@KitStatus)
end
select @AuthoId=AuthorityId from PaymentDetails where HospitalCode=@HospitalCode
if not exists(select * from PaymentDetails where AuthorityId=@AuthoId)
begin
Insert into PaymentDetails([AuthorityId],[HospitalCode],[PaymentStatus],[ModeOfPayment],[ReceivedAmount],[PaymentDetails],[AcknowledgementLetter])
Values(@AuthorityID,@HospitalCode,@PaymentStatus,@ModeOfPayment,@ReceivedAmt,@PaymentDetails,@AcknowLetter)
end
if @@ERROR<>0
begin
rollback transaction
return 1
end
else
begin
commit transaction
return 0
end
end