You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

230 lines
5.3 KiB

USE [FastMoneyPro_Remit]
GO
/****** Object: StoredProcedure [dbo].[proc_txnMessageSetup] Script Date: 7/4/2019 11:35:48 AM ******/
DROP PROCEDURE [dbo].[proc_txnMessageSetup]
GO
/****** Object: StoredProcedure [dbo].[proc_txnMessageSetup] Script Date: 7/4/2019 11:35:48 AM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROC [dbo].[proc_txnMessageSetup]
@flag VARCHAR(50) = NULL
,@user VARCHAR(30) = NULL
,@id INT = NULL
,@country NVARCHAR(MAX) = NULL
,@service NVARCHAR(MAX) = NULL
,@codeDescription NVARCHAR(MAX) = NULL
,@paymentMethodDesc NVARCHAR(MAX) = NULL
,@msgFlag VARCHAR(200) = NULL
,@isActive VARCHAR(200) = NULL
,@sortBy VARCHAR(50) = NULL
,@sortOrder VARCHAR(5) = NULL
,@pageSize INT = NULL
,@pageNumber INT = NULL
AS
SET NOCOUNT ON
SET XACT_ABORT ON
BEGIN TRY
CREATE TABLE #msg(errorCode INT, msg VARCHAR(100), id INT)
DECLARE
@sql VARCHAR(MAX)
,@oldValue VARCHAR(MAX)
,@newValue VARCHAR(MAX)
,@module VARCHAR(10)
,@tableAlias VARCHAR(100)
,@logIdentifier VARCHAR(50)
,@logParamMod VARCHAR(100)
,@logParamMain VARCHAR(100)
,@table VARCHAR(MAX)
,@select_field_list VARCHAR(MAX)
,@extra_field_list VARCHAR(MAX)
,@sql_filter VARCHAR(MAX)
,@functionId INT
,@modType VARCHAR(6)
,@ApprovedFunctionId INT
SELECT
--@functionId = 20231200
@logIdentifier = 'id'
,@logParamMain = 'txnMessageSetup'
,@module = '20'
,@tableAlias = 'Transaction Message Setup'
IF @country ='Nnull'
SET @country=NULL
IF @service ='Nnull'
SET @service=NULL
IF @codeDescription ='Nnull'
SET @codeDescription=NULL
IF @paymentMethodDesc ='Nnull'
SET @paymentMethodDesc=NULL
IF @flag = 's'
BEGIN
SET @table = '(
SELECT id
,country
,service
,codeDescription
,paymentMethodDesc
,flag
,isActive
,createdBy
,createdDate
FROM txnMessageSetup WHERE ISNULL(isDeleted,''N'')<>''Y''
) '
END
IF @flag = 'i'
BEGIN
IF EXISTS(SELECT 'X' FROM txnMessageSetup WHERE id = @id AND ISNULL(isDeleted, 'N') = 'N')
BEGIN
EXEC proc_errorHandler 1, 'Record already exists', NULL
RETURN
END
BEGIN TRANSACTION
INSERT INTO txnMessageSetup(
country
,service
,codeDescription
,paymentMethodDesc
,flag
,isActive
,createdBy
,createdDate
)
SELECT
@country
,@service
,@codeDescription
,@paymentMethodDesc
,@msgFlag
,@isActive
,@user
,GETDATE()
SET @id = SCOPE_IDENTITY()
COMMIT TRANSACTION
EXEC proc_errorHandler 0, 'Record has been added successfully.', @id
END
ELSE IF @flag = 'a'
BEGIN
SELECT * FROM txnMessageSetup WITH(NOLOCK) WHERE id = @id
END
ELSE IF @flag = 'u'
BEGIN
BEGIN TRANSACTION
UPDATE txnMessageSetup SET
country = @country
,service = @service
,codeDescription = @codeDescription
,paymentMethodDesc = @paymentMethodDesc
,flag = @msgFlag
,isActive = @isActive
,modifiedBy = @user
,modifiedDate = GETDATE()
WHERE id = @id
COMMIT TRANSACTION
EXEC proc_errorHandler 0, 'Record updated successfully.', @id
END
ELSE IF @flag = 'd'
BEGIN
UPDATE txnMessageSetup SET isDeleted='Y',modifiedBy=@user,modifiedDate=GETDATE() WHERE id=@id
EXEC proc_errorHandler 0, 'Record deleted successfully', @id
END
ELSE IF @flag = 's'
BEGIN
IF @sortBy IS NULL
SET @sortBy = 'id'
IF @sortOrder IS NULL
SET @sortOrder = 'ASC'
SET @table = '(
SELECT id
,country
,service
,codeDescription
,paymentMethodDesc
,flag
,isActive
,createdBy
,createdDate
,modifiedBy
,'''' hasChanged
FROM txnMessageSetup WHERE ISNULL(isDeleted,''N'')<>''Y''
)X '
SET @sql_filter = ''
PRINT (@table)
IF @country IS NOT NULL
SET @sql_filter = @sql_filter + ' AND country LIKE ''%' + @country + '%'''
IF @service IS NOT NULL
SET @sql_filter = @sql_filter + ' AND service LIKE ''%' + @service + '%'''
IF @codeDescription IS NOT NULL
SET @sql_filter = @sql_filter + ' AND codeDescription LIKE ''%' + @codeDescription + '%'''
SET @select_field_list ='
id
,country
,service
,codeDescription
,paymentMethodDesc
,flag
,isActive
,createdBy
,createdDate
,modifiedBy
,hasChanged
'
EXEC dbo.proc_paging
@table
,@sql_filter
,@select_field_list
,@extra_field_list
,@sortBy
,@sortOrder
,@pageSize
,@pageNumber
END
ELSE IF @flag='display'
BEGIN
SELECT country [COUNTRY NAME]
,service [SERVICE]
,codeDescription [IME CODE DESCRIPTION]
,paymentMethodDesc [PAYMENT METHOD]
FROM txnMessageSetup WHERE flag=@msgFlag
order by id desc
END
END TRY
BEGIN CATCH
IF @@TRANCOUNT > 0
ROLLBACK TRANSACTION
DECLARE @errorMessage VARCHAR(MAX)
SET @errorMessage = ERROR_MESSAGE()
EXEC proc_errorHandler 1, @errorMessage, @id
END CATCH
GO