|
jogin malathi
Posting Yak Master
117 Posts |
Posted - 2007-07-16 : 23:59:54
|
| ALTER PROC usp_t_insup_cpa1 @Id int, @SupervisorId int, @BookmarkerId int, @PreparerId int, @FirmNo varchar(20), @FirmName varchar(30), @FirstName varchar(20), @MiddleName varchar(20), @LastName varchar(20), @TaxYear varchar(20), @TaxSoftware varchar(20), @HomePhone varchar(20), @WorkPhone varchar(20), @Fax varchar(20), @PrimaryEmail varchar(30), @SecondaryEmail varchar(30), @CountryId int, @State varchar(20), @Zipcode varchar(20), @Status int, @Operator Char(1) = '', @RESULT INT OUTPUT ------------------------- AS IF @Operator = 'I'BEGIN IF NOT EXISTS(SELECT * FROM CPA WHERE PrimaryEmail=@PrimaryEmail or PrimaryEmail=@SecondaryEmail or SecondaryEmail=@PrimaryEmail or SecondaryEmail=@SecondaryEmail ) BEGIN --select * from o_login Begin transaction InsCPA INSERT INTO CPA(SupervisorId,BookmarkerId,PreparerId,FirmNo,FirmName,FirstName,MiddleName,LastName,TaxYear,TaxSoftware,HomePhone,WorkPhone,Fax,PrimaryEmail,SecondaryEmail,CountryId,State,Zipcode,Status) VALUES(@SupervisorId,@BookmarkerId,@PreparerId,@FirmNo,@FirmName,@FirstName,@MiddleName,@LastName,@TaxYear,@TaxSoftware,@HomePhone,@WorkPhone,@Fax,@PrimaryEmail,@SecondaryEmail,@CountryId,@State,@Zipcode,@Status) --Error handling IF @@ERROR <> 0 BEGIN -- Returns 0 to the calling program to indicate failure. ROLLBACK TRAN InsCPA SET @RESULT = 0 END ELSE BEGIN --DECLARE @ID1 INTEGER -- Returns 1 to the calling program to indicate success. COMMIT TRAN InsCPA SET @RESULT = 1 END END ELSE BEGIN -- Return 2 to the calling program to indicate record already exists. set @RESULT = 2 END ENDELSE IF(@Operator='U')BEGINdeclare @pemail as varchar(30)declare @semail as varchar(30)declare @firm as varchar(20)select @pemail=PrimaryEmail,@semail=SecondaryEmail,@firm=FirmNo from CPA WHERE Id = @Id --select * from CPA if(@pemail=@PrimaryEmail) or(@semail=@PrimaryEmail)--or((@semail=@SecondaryEmail)and (@semail=@PrimaryEmail))) begin print 'prim1' if(@semail=@SecondaryEmail)or (@pemail=@SecondaryEmail) begin print 'sec1' if(@firm=@FirmNo) begin print'firm' BEGIN TRANSACTION UpdateCPA UPDATE CPA SET SupervisorId=@SupervisorId, BookmarkerId=@BookmarkerId, PreparerId=@PreparerId, FirmNo=@FirmNo, FirmName=@FirmName, FirstName=@FirstName, MiddleName=@MiddleName, LastName=@LastName, TaxYear=@TaxYear, TaxSoftware=@TaxSoftware, HomePhone=@HomePhone, WorkPhone=@WorkPhone, Fax=@Fax, PrimaryEmail=@PrimaryEmail, SecondaryEmail=@SecondaryEmail, CountryId=@CountryId, State=@State, Zipcode=@Zipcode, Status=@Status WHERE Id = @Id UPDATE EMPLOYEE SET FirmNo=@FirmNo WHERE FirmNo=@firm IF @@ERROR <> 0 BEGIN -- Returns 0 to the calling program to indicate failure. ROLLBACK TRAN UpdateCPA SET @RESULT = 0 END ELSE BEGIN -- Returns 1 to the calling program to indicate success. print'1' COMMIT TRAN UpdateCPA SET @RESULT = 1 END END else begin IF NOT EXISTS(SELECT * FROM CPA WHERE FirmNo=@FirmNo) BEGIN print'fd' BEGIN TRANSACTION UpdateCPA UPDATE CPA SET SupervisorId=@SupervisorId, BookmarkerId=@BookmarkerId, PreparerId=@PreparerId, FirmNo=@FirmNo, FirmName=@FirmName, FirstName=@FirstName, MiddleName=@MiddleName, LastName=@LastName, TaxYear=@TaxYear, TaxSoftware=@TaxSoftware, HomePhone=@HomePhone, WorkPhone=@WorkPhone, Fax=@Fax, PrimaryEmail=@PrimaryEmail, SecondaryEmail=@SecondaryEmail, CountryId=@CountryId, State=@State, Zipcode=@Zipcode, Status=@Status WHERE Id = @Id UPDATE EMPLOYEE SET FirmNo=@FirmNo WHERE FirmNo=@firm IF @@ERROR <> 0 BEGIN -- Returns 0 to the calling program to indicate failure. ROLLBACK TRAN UpdateCPA SET @RESULT = 0 END ELSE BEGIN -- Returns 1 to the calling program to indicate success. print'1' COMMIT TRAN UpdateCPA SET @RESULT = 1 END end ELSE BEGIN -- Returns 1 to the calling program to indicate success. print'4' --COMMIT TRAN UpdateCPA SET @RESULT = 4 END end end else begin IF NOT EXISTS(SELECT * FROM CPA WHERE PrimaryEmail=@SecondaryEmail or SecondaryEmail=@SecondaryEmail) BEGIN if(@firm=@FirmNo) begin BEGIN TRANSACTION UpdateCPA UPDATE CPA SET SupervisorId=@SupervisorId, BookmarkerId=@BookmarkerId, PreparerId=@PreparerId, FirmNo=@FirmNo, FirmName=@FirmName, FirstName=@FirstName, MiddleName=@MiddleName, LastName=@LastName, TaxYear=@TaxYear, TaxSoftware=@TaxSoftware, HomePhone=@HomePhone, WorkPhone=@WorkPhone, Fax=@Fax, PrimaryEmail=@PrimaryEmail, SecondaryEmail=@SecondaryEmail, CountryId=@CountryId, State=@State, Zipcode=@Zipcode, Status=@Status WHERE Id = @Id UPDATE EMPLOYEE SET FirmNo=@FirmNo WHERE FirmNo=@firm IF @@ERROR <> 0 BEGIN -- Returns 0 to the calling program to indicate failure. ROLLBACK TRAN UpdateCPA SET @RESULT = 0 END ELSE BEGIN -- Returns 1 to the calling program to indicate success. print'1' COMMIT TRAN UpdateCPA SET @RESULT = 1 END END else begin IF NOT EXISTS(SELECT * FROM CPA WHERE FirmNo=@FirmNo) BEGIN BEGIN TRANSACTION UpdateCPA UPDATE CPA SET SupervisorId=@SupervisorId, BookmarkerId=@BookmarkerId, PreparerId=@PreparerId, FirmNo=@FirmNo, FirmName=@FirmName, FirstName=@FirstName, MiddleName=@MiddleName, LastName=@LastName, TaxYear=@TaxYear, TaxSoftware=@TaxSoftware, HomePhone=@HomePhone, WorkPhone=@WorkPhone, Fax=@Fax, PrimaryEmail=@PrimaryEmail, SecondaryEmail=@SecondaryEmail, CountryId=@CountryId, State=@State, Zipcode=@Zipcode, Status=@Status WHERE Id = @Id UPDATE EMPLOYEE SET FirmNo=@FirmNo WHERE FirmNo=@firm IF @@ERROR <> 0 BEGIN -- Returns 0 to the calling program to indicate failure. ROLLBACK TRAN UpdateCPA SET @RESULT = 0 END ELSE BEGIN -- Returns 1 to the calling program to indicate success. print'1' COMMIT TRAN UpdateCPA SET @RESULT = 1 END end ELSE BEGIN -- Returns 1 to the calling program to indicate success. print'44' --COMMIT TRAN UpdateCPA SET @RESULT = 4 END end /* --select * from o_login Begin transaction InsCPA UPDATE CPA SET SupervisorId=@SupervisorId, BookmarkerId=@BookmarkerId, PreparerId=@PreparerId, FirmNo=@FirmNo, FirmName=@FirmName, FirstName=@FirstName, MiddleName=@MiddleName, LastName=@LastName, TaxYear=@TaxYear, TaxSoftware=@TaxSoftware, HomePhone=@HomePhone, WorkPhone=@WorkPhone, Fax=@Fax, PrimaryEmail=@PrimaryEmail, SecondaryEmail=@SecondaryEmail, CountryId=@CountryId, State=@State, Zipcode=@Zipcode, Status=@Status WHERE Id = @Id --Error handling IF @@ERROR <> 0 BEGIN -- Returns 0 to the calling program to indicate failure. ROLLBACK TRAN InsCPA SET @RESULT = 0 END ELSE BEGIN --DECLARE @ID1 INTEGER -- Returns 1 to the calling program to indicate success. print'11' COMMIT TRAN InsCPA SET @RESULT = 1 END */END ELSE BEGIN print 'sec same' -- Return 2 to the calling program to indicate record already exists. set @RESULT = 3 END endendelsebeginIF NOT EXISTS(SELECT * FROM CPA WHERE PrimaryEmail=@PrimaryEmail or SecondaryEmail=@PrimaryEmail) BEGIN /*--select * from o_login Begin transaction InsCPA UPDATE CPA SET SupervisorId=@SupervisorId, BookmarkerId=@BookmarkerId, PreparerId=@PreparerId, FirmNo=@FirmNo, FirmName=@FirmName, FirstName=@FirstName, MiddleName=@MiddleName, LastName=@LastName, TaxYear=@TaxYear, TaxSoftware=@TaxSoftware, HomePhone=@HomePhone, WorkPhone=@WorkPhone, Fax=@Fax, PrimaryEmail=@PrimaryEmail, SecondaryEmail=@SecondaryEmail, CountryId=@CountryId, State=@State, Zipcode=@Zipcode, Status=@Status WHERE Id = @Id --Error handling IF @@ERROR <> 0 BEGIN -- Returns 0 to the calling program to indicate failure. ROLLBACK TRAN InsCPA SET @RESULT = 0 END ELSE BEGIN --DECLARE @ID1 INTEGER -- Returns 1 to the calling program to indicate success. print'111' COMMIT TRAN InsCPA SET @RESULT = 1 END */ if(@firm=@FirmNo) begin BEGIN TRANSACTION UpdateCPA UPDATE CPA SET SupervisorId=@SupervisorId, BookmarkerId=@BookmarkerId, PreparerId=@PreparerId, FirmNo=@FirmNo, FirmName=@FirmName, FirstName=@FirstName, MiddleName=@MiddleName, LastName=@LastName, TaxYear=@TaxYear, TaxSoftware=@TaxSoftware, HomePhone=@HomePhone, WorkPhone=@WorkPhone, Fax=@Fax, PrimaryEmail=@PrimaryEmail, SecondaryEmail=@SecondaryEmail, CountryId=@CountryId, State=@State, Zipcode=@Zipcode, Status=@Status WHERE Id = @Id UPDATE EMPLOYEE SET FirmNo=@FirmNo WHERE FirmNo=@firm IF @@ERROR <> 0 BEGIN -- Returns 0 to the calling program to indicate failure. ROLLBACK TRAN UpdateCPA SET @RESULT = 0 END ELSE BEGIN -- Returns 1 to the calling program to indicate success. print'1' COMMIT TRAN UpdateCPA SET @RESULT = 1 END END else begin IF NOT EXISTS(SELECT * FROM CPA WHERE FirmNo=@FirmNo) BEGIN BEGIN TRANSACTION UpdateCPA UPDATE CPA SET SupervisorId=@SupervisorId, BookmarkerId=@BookmarkerId, PreparerId=@PreparerId, FirmNo=@FirmNo, FirmName=@FirmName, FirstName=@FirstName, MiddleName=@MiddleName, LastName=@LastName, TaxYear=@TaxYear, TaxSoftware=@TaxSoftware, HomePhone=@HomePhone, WorkPhone=@WorkPhone, Fax=@Fax, PrimaryEmail=@PrimaryEmail, SecondaryEmail=@SecondaryEmail, CountryId=@CountryId, State=@State, Zipcode=@Zipcode, Status=@Status WHERE Id = @Id UPDATE EMPLOYEE SET FirmNo=@FirmNo WHERE FirmNo=@firm IF @@ERROR <> 0 BEGIN -- Returns 0 to the calling program to indicate failure. ROLLBACK TRAN UpdateCPA SET @RESULT = 0 END ELSE BEGIN -- Returns 1 to the calling program to indicate success. print'1' COMMIT TRAN UpdateCPA SET @RESULT = 1 END end ELSE BEGIN -- Returns 1 to the calling program to indicate success. print'2' --COMMIT TRAN UpdateCPA SET @RESULT = 2 END endEND ELSE BEGIN print 'prim same' -- Return 2 to the calling program to indicate record already exists. set @RESULT = 2 END endendAbove procedure has many if else conditions Is there any way to writeprocs other than this processMalathi Rao |
|