Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ALTER PROCEDURE [dbo].[usp_SC_AnswerMsg](
- @deviceIP nvarchar(20), @yearRef smallint, @year int,@mainMsg nvarchar(50),@modifier int
- )
- AS
- SET NOCOUNT OFF;
- DECLARE @Msg nvarchar(50),@fIndex int
- SET @Msg = @mainMsg
- SET @fIndex = CHARINDEX('$',@Msg)
- DECLARE @Hex nvarchar(30)
- SET @Hex = SUBSTRING(@Msg,1,@fIndex - 1)
- SET @Msg = RIGHT(@Msg,LEN(@Msg) - @fIndex + 1)
- DECLARE @Dec nvarchar(30)
- SET @Dec = @Msg
- DECLARE @devID int
- SET @devID = (SELECT S.StationID FROM vw_Station S WHERE S.IP = @deviceIP)
- DECLARE @cardID int
- SET @cardID = (SELECT TOP 1 ISNULL(C.CardID,0) FROM vw_Card C WHERE C.CardDec = @Dec AND C.CardHex = @Hex)
- DECLARE @retTable Table(response nvarchar(30))
- IF @cardID IS NULL OR @cardID = 0 BEGIN
- INSERT INTO @retTable
- SELECT 'D_0$0'
- SELECT * FROM @retTable
- RETURN 1
- END
- DECLARE @inf bit, @cardActive bit,@ownerActive bit
- SET @inf = (SELECT C.InfiniteMoney FROM vw_Card C WHERE CardID = @cardID)
- SET @cardActive = (SELECT C.CardStatus FROM vw_Card C WHERE CardID = @cardID)
- SET @ownerActive = (SELECT C.IndvStatus FROM vw_Card C WHERE CardID = @cardID)
- if @cardActive = 0 OR @ownerActive = 0 BEGIN
- INSERT INTO @retTable
- SELECT 'D_0$0'
- SELECT * FROM @retTable
- RETURN 1
- END
- if @inf = 1 BEGIN
- INSERT INTO @retTable
- SELECT 'A_99999$99:99'
- SELECT * FROM @retTable
- END
- DECLARE @cPrice money
- SET @cPrice = (SELECT S.StationPPM FROM vw_Station S WHERE S.StationID = @devID)
- DECLARE @remain money
- DECLARE @junkTbl table (cardIDs bigint,yearx int,totalPay money,totalTicket money,totalPlay money,totalCredit money,totalRemain money)
- INSERT INTO @junkTbl
- EXEC [dbo].[usp_vw_CardTotals]
- SET @remain = (SELECT j.totalRemain FROM @junkTbl j WHERE j.cardIDs = @cardID AND j.yearx = @year)
- DECLARE @remainTime int
- SET @remainTime = (@remain / @cPrice) * 60
- DECLARE @remTF nvarchar(11)
- DECLARE @h nvarchar(5),@m nvarchar(5)
- IF @remainTime > 59 BEGIN
- SET @h = CONVERT(nvarchar(5),CONVERT(int, (@remainTime / 60)))
- IF LEN(@h) = 1 BEGIN
- SET @h = '0' + @h
- END
- SET @m = CONVERT(nvarchar(5),CONVERT(int,@remainTime % 60))
- IF LEN(@m) = 1 BEGIN
- SET @m = '0' + @m
- END
- SET @remTF = @h + ':' + @m
- END
- ELSE
- BEGIN
- SET @m = CONVERT(nvarchar(5),@remainTime)
- IF LEN(@m) = 1 BEGIN
- SET @m = '0' + @m
- END
- SET @remTF = '00:' + @m
- END
- DECLARE @remP nvarchar(11)
- IF LEN(@remain) > 0 BEGIN
- SET @remP = SUBSTRING(CONVERT(nvarchar(11),@remain),1,LEN(@remain) - 3)
- END
- DECLARE @modd decimal(5,2)
- IF @modifier = 0 BEGIN
- SET @modd = 0
- END
- ELSE BEGIN
- SET @modd = (SELECT M.ModValue FROM vw_Modifier M WHERE M.ModID = @modifier)
- END
- DECLARE @tod int
- SET @tod = (DATEPART(HOUR,GETDATE()) * 60) + (DATEPART(MINUTE,GETDATE()))
- DECLARE @gameCost money
- IF @modd = 0 BEGIN
- SET @gameCost = (@cPrice / 60)
- END
- IF @modd <> 0 BEGIN
- SET @gameCost = @modd * (@cPrice / 60)
- END
- INSERT INTO GameLog ([GLDate],[GLTOD],[GLDur],[GLCardRef],[GLStationRef],[GLDetail],[GLGameCost],[YearRef])
- SELECT GETDATE(),@tod,1,@cardID,@devID,'',@gameCost,@yearRef
- IF @remain > 0 BEGIN
- INSERT INTO @retTable
- SELECT 'A_' + @remP + '$' + @remTF
- END
- ELSE BEGIN
- INSERT INTO @retTable
- SELECT 'D_' + @remP + '$' + @remTF
- END
- SELECT * FROM @retTable
- RETURN 1
- Specified cast is not valid
- Dim nd As String = lastMsg.Substring(2, lastMsg.Length - 2)
- Dim dt As New DataTable
- dt = ATA.GetData(myInfo.ip, thisYear.yearID, thisYear.yearNumber, nd, ComboBox1.SelectedValue) ' <<< ERROR LINE
- Dim ans As String = dt.Rows(0).Item(0)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement