create Procedure spInsertInvoiceICV ( @DocNo nvarchar(500)=NULL, @DOCTYPE nvarchar(500)=NULL, @DocDate datetime=NULL, @invsubstatus nvarchar(400)=NULL, @invsubdetails nvarchar(4000)=NULL, @invsubWarningMsg nvarchar(4000)=NULL, @invsubErrorMsg nvarchar(4000)=NULL, @invsubClearanceStatus nvarchar(4000)=NULL, @invsubValidationStatus nvarchar(4000)=NULL, @invsubinfoMessagesType nvarchar(4000)=NULL, @invsubinfoMessagesCode nvarchar(4000)=NULL, @invsubinfoMessagesCATEGORY nvarchar(4000)=NULL, @invsubinfoMessagesMESSAGE nvarchar(4000)=NULL, @invsubinfoMessagesStatus nvarchar(4000)=NULL, @invsubWarningMessagesType nvarchar(4000)=NULL, @invsubWarningMessagesCode nvarchar(4000)=NULL, @invsubWarningMessagesCATEGORY nvarchar(4000)=NULL, @invsubWarningMessagesMESSAGE nvarchar(4000)=NULL, @invsubWarningMessagesStatus nvarchar(4000)=NULL, @invsubErrorMessagesType nvarchar(4000)=NULL, @invsubErrorMessagesCode nvarchar(4000)=NULL, @invsubErrorMessagesCATEGORY nvarchar(4000)=NULL, @invsubErrorMessagesMESSAGE nvarchar(4000)=NULL, @invsubErrorMessagesStatus nvarchar(4000)=NULL, @INVOICEHASH nvarchar(4000)=NULL, @PREVIOUSHASH nvarchar(4000)=NULL, @Submitedxml nvarchar(max)=NULL, @Finalxml nvarchar(max)=NULL, @errMessage VARCHAR(MAX) = '' OUTPUT, @return int = null OUTPUT ) AS BEGIN BEGIN TRY BEGIN TRANSACTION insert_InvoiceICV update InvoiceICV set ReUploaded = 1 where DocNo = @DocNo and DOCTYPE = @DOCTYPE insert into InvoiceICV(DocNo, DOCTYPE, DocDate, invsubstatus, invsubdetails, invsubWarningMsg, invsubErrorMsg, invsubClearanceStatus, invsubValidationStatus, invsubinfoMessagesType, invsubinfoMessagesCode, invsubinfoMessagesCATEGORY, invsubinfoMessagesMESSAGE, invsubinfoMessagesStatus, invsubWarningMessagesType, invsubWarningMessagesCode, invsubWarningMessagesCATEGORY, invsubWarningMessagesMESSAGE, invsubWarningMessagesStatus, invsubErrorMessagesType, invsubErrorMessagesCode, invsubErrorMessagesCATEGORY, invsubErrorMessagesMESSAGE, invsubErrorMessagesStatus, INVOICEHASH, PREVIOUSHASH, Submitedxml, Finalxml ) values(@DocNo, @DOCTYPE, @DocDate, @invsubstatus, @invsubdetails, @invsubWarningMsg, @invsubErrorMsg, @invsubClearanceStatus, @invsubValidationStatus, @invsubinfoMessagesType, @invsubinfoMessagesCode, @invsubinfoMessagesCATEGORY, @invsubinfoMessagesMESSAGE, @invsubinfoMessagesStatus, @invsubWarningMessagesType, @invsubWarningMessagesCode, @invsubWarningMessagesCATEGORY, @invsubWarningMessagesMESSAGE, @invsubWarningMessagesStatus, @invsubErrorMessagesType, @invsubErrorMessagesCode, @invsubErrorMessagesCATEGORY, @invsubErrorMessagesMESSAGE, @invsubErrorMessagesStatus, @INVOICEHASH, @PREVIOUSHASH, @Submitedxml, @Finalxml ) set @return = SCOPE_IDENTITY() select @return COMMIT TRANSACTION insert_InvoiceICV END TRY BEGIN CATCH ROLLBACK TRANSACTION insert_InvoiceICV; SELECT @errMessage = ERROR_MESSAGE() END CATCH END