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.
70 lines
4.8 KiB
70 lines
4.8 KiB
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
|