USE [FastMoneyPro_Remit] GO /****** Object: StoredProcedure [dbo].[INBOUND_PROC_EXCHANGE_RATE] Script Date: 9/27/2019 1:30:13 PM ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO /*/ EXEC INBOUND_PROC_EXCHANGE_RATE @agentCode = 'GMKOR403226',@userName = 'inmyr' ,@receivingCurrency = 'KRW',@sendingCountry = 'MY',@receivingCountry = 'KR' ,@processIdentifier = 'sdfsads' SELECT @exRate=ROUND(ISNULL(pRate,0.0)-ISNULL(pMargin,0.0),2),@pRate=pRate,@pMargin=pMargin FROM dbo.INBOUND_COSTRATE(NOLOCK) WHERE baseCurrency='USD' AND pCurrency=@receivingCurrency AND sAgent=@sSuperAgent AND sCountry=@sCountry AND ISNULL(isEnable,0)=1 AND ISNULL(isActive,0)=1 */ CREATE PROCEDURE [dbo].[INBOUND_PROC_EXCHANGE_RATE]( @agentCode VARCHAR(20) = NULL ,@userName VARCHAR(20) = NULL ,@receivingCurrency VARCHAR(3) = NULL ,@sendingCountry VARCHAR(2) = NULL ,@receivingCountry VARCHAR(2) = NULL ,@processIdentifier VARCHAR(36) = NULL )AS BEGIN TRY DECLARE @exRate float,@pRate float,@pMargin FLOAT,@forex VARCHAR(36),@sCountry BIGINT,@sAgent BIGINT,@sSuperAgent BIGINT, @factor VARCHAR(1) SELECT @sCountry=countryId FROM dbo.countryMaster(NOLOCK) WHERE countryCode=@sendingCountry SELECT @sAgent=agentId FROM dbo.applicationUsers(NOLOCK) WHERE agentCode=@agentCode SELECT @sSuperAgent=parentId FROM dbo.agentMaster(NOLOCK) WHERE agentId=@sAgent SELECT @exRate = ROUND(ISNULL(pRate,0.0) - ISNULL(pMargin,0.0),2) ,@pRate = pRate ,@pMargin = pMargin ,@factor = factor FROM dbo.INBOUND_COSTRATE(NOLOCK) WHERE baseCurrency='USD' AND pCurrency=@receivingCurrency AND sAgent=@sSuperAgent AND sCountry=@sCountry AND ISNULL(isEnable,0)=1 AND ISNULL(isActive,0)=1 SET @forex=NEWID() IF(@exRate>0.0) BEGIN INSERT INTO dbo.INBOUND_EXRATE_CALC_HISTORY( forexSessionId,partnerTranRefNo,agentCode,userName,pCurrCostRate,pCurrHoMargin,createdDate,isExpired,controlNo )SELECT @forex,@processIdentifier,@agentCode,@userName,@pRate,@pMargin,GETDATE(),0,'' SELECT '0' AS ErrorCode,'Success' AS Msg,@forex AS forexSessionId,@exRate AS exRate RETURN END SELECT '1' AS ErrorCode, dbo.GetMessage('en','IBST0002') Msg, NULL AS forexSessionId,NULL AS exRate RETURN END TRY BEGIN CATCH IF @@ERROR>0 SELECT '999' AS ErrorCode, ERROR_MESSAGE() Msg, NULL AS forexSessionId,NULL AS exRate RETURN END CATCH GO